クロアチア語の単語ステミングアルゴリズムの実装を探しています。理想的にはJavaですが、他の言語も受け入れます。
クロアチア語の検索アプリケーションを開発している英語を話す開発者のコミュニティはどこかにありますか?
ありがとう、
クロアチア語の単語ステミングアルゴリズムの実装を探しています。理想的にはJavaですが、他の言語も受け入れます。
クロアチア語の検索アプリケーションを開発している英語を話す開発者のコミュニティはどこかにありますか?
ありがとう、
スラブ語は非常に屈折力があります。最も正確で高速なアプローチは、ルールと大規模なマッピング/辞書の組み合わせです。
作業は完了しましたが、差し控えられています。クロアチア語の形態学的辞書は役に立ちますが、遅いAPIの背後にあります。ボスニア語、セルビア語、クロアチア語の間では、クロアチア語だけでなく、より多くの仕事を見つけることができます。
大規模なマッピングは必ずしも便利ではありません(そして、マッピング/辞書/コーパスからより良いルールトランスフォーマーを効果的に構築することができます)。
Hunspellファイルと接辞ファイルを使用して実装することは、コミュニティとJavaのサポートを得るのに最適な方法です。例えば。Google検索:hr_hr.aff
テストされていません:すべての単語を逆にし、終了文字のトライを作成し、いくつかのルール(LCSなど)を使用してトラバースし、コーパステキストを使用して正確な統計トランスフォーマーを作成できる必要があります。
私ができる最善のことはいくつかのPythonです:
import hunspell
hs = hunspell.HunSpell(
'/usr/share/myspell/hr_HR.dic',
'/usr/share/myspell/hr_HR.aff')
# The following should return ['hrvatska']:
print hs.stem('hrvatski')
ここでは、python-stemmer for croatian の ffzg で行われた最近の実装を見つけることができます。
形容詞と名詞の精度 0.986、再現率 0.961 (F1 0.973) のゴールド スタンダードとして、見出し語化された新聞コーパスでステマーの基本的な評価を行いました。すべての品詞で、精度 0.98、再現率 0.92 (F1 0.947) が得られました。
これは GNU ライセンスの下でリリースされていますが、さらなる支援が必要な場合は作者に気軽に連絡してください (私は元の作者 Nikola しか知りませんが、彼の学生は知りません)。