5

apache tika ツールキットでペルシア語の Web ページを検出するのに役立つサンプル コードが必要です。

 LanguageIdentifier identifier = new LanguageIdentifier("فارسی");
        String language = identifier.getLanguage();

apache.tika jar ファイルをダウンロードして、クラスパスに追加しました。しかし、このコードはペルシャ語ではエラーになりますが、英語では機能します。tika の languageIdentifier パッケージにペルシア語を追加するにはどうすればよいですか?

4

1 に答える 1

9

Tika には、まだペルシャ語の言語プロファイルが同梱されていません。バージョン 1.0 の時点で、27 の言語がすぐにサポートされます。

languages=be,ca,da,de,eo,et,el,en,es,fi,fr,gl,hu,is,it,lt,nl,no,pl,pt,ro,ru,sk,sl,sv,th,uk

liあなたの例では、入力は0.41の距離で(リトアニア語)として誤検出され、0.022の確実性しきい値を超えています。の内部作業の詳細については、ソース コードを参照してくださいLanguageIdentifier

デフォルトでは、ペルシャ語 (ペルシャ語、ISO 639-1 2 文字コード) は認識されません。faTika に別の言語を認識させたい場合は、最初に言語プロファイルを作成する必要があります。

これには、次の手順が必要です。

  1. あなたの言語のテキストコーパスを見つけてください。ハムシャーリ コレクションを見つけました。これで十分です。コーパスまたはその一部をダウンロードし、XML からプレーン テキスト ファイルを作成します。

  2. 言語識別子の ngram ファイルを作成します。これはTikaCLIを使用して実行できます。

    java -jar tika-app-1.0.jar --create-profile=fa -eUTF-8 fa-corpus.txtfa.ngpこれは、n-gram を含む ファイルと呼ばれます。

  3. 新しい言語を認識するように Tika を構成します。プログラムを使用してこれを行うLanguageIdentifier.initProfiles()か、プロパティ ファイルを名前tika.language.override.propertiesとともにクラスパスに配置します。ngram ファイルがクラスパスにもあることを確認してください。

Tika を実行すると、言語が正しく検出されるはずです。

更新: 言語プロファイルを作成するために必要な手順の詳細。

于 2012-01-28T12:56:38.460 に答える