我正在使用 Lucene 7.x 和 ItalianStemmer??催^ItalianStemmer類的代碼,好像要花很長時間才能理解。因此,我正在尋找一種快速(可能是標準的)方式來自定義意大利語詞干分析器,而不需要擴展 ItalianStemmer 或 SnowballProgram,因為我只有幾天時間。關鍵是我不明白為什么“saluto”(問候)這個名字來源于“sal”。它應該詞干為“salut”,因為動詞“salutare”(問候)詞根為“salut”。而且,“sala”(房間)和“sale”(房間)也都源于“sal”,這很容易混淆,因為它們的含義不同。
1 回答

開心每一天1111
TA貢獻1836條經驗 獲得超13個贊
標準方法是復制源代碼,然后創建自己的源代碼。
Stemming 是一個基于規則的啟發式過程。它旨在生成雖然不完美,但通常足以促進搜索的詞干。它沒有共軛詞及其詞干詞典供您修改。-uto 是意大利雪球詞干分析器從單詞中刪除的動詞后綴之一,如此處所述。您可以創建自己的版本,從列表中刪除該后綴,但總而言之,您可能會創造出比解決的更多的問題。
返回正確詞根的工具通常稱為lemmatizer,我不相信 Lucene 附帶任何開箱即用的工具。形態學分析往往更慢且更復雜。如果這對您的用例很重要,您可能需要查找意大利詞形還原器,并將其處理到自定義過濾器中,或者在將其傳遞給分析器之前預處理您的文本。
添加回答
舉報
0/150
提交
取消