web-dev-qa-db-ja.com

品詞タグ付けに適したJavaライブラリ)とは何ですか?

私はJavaで良いオープンソース POS Tagger を探しています。これが私がこれまでに思いついたものです。

誰かが何かお勧めがありますか?

29
Glenn

特定のドメインでPOSにタグを付けることを検討していますか?汎用タガーのほとんどは、ニュースワイヤーテキストで訓練されています。通常、特定のドメイン(生物医学テキストなど)で使用している場合は、うまく機能しません。生物医学テキスト用の dTagger (Java)など、このようなドメイン用に特別にトレーニングされた他のタガーがあります。

ニュースワイヤーテキストの場合、Adwait Ratnaparkhiの [〜#〜] mxpost [〜#〜] は非常に優れており、私がお勧めするものです。

その他のJava実装には次のものが含まれます。

  1. MontyLingua
  2. Berkeley Parser (実際にはPOSタガーではありませんが、すべての本格的なパーサーには通常POSタガーが含まれます。GoogleforJava構文パーサーと多数あります。)
  3. QTag
  4. [〜#〜] lbj [〜#〜]

OpenNLP および Lingpipe 他のポスターによって投稿されたものもかなりまともです。

POSタグ付けの最新情報については、 ここ を参照してください。ご覧のとおり、 LTAG-Spinal (別のポスターでも言及されています)は現時点で最高のランクですが、さまざまなタガー間のばらつきはそれほど大きくありません。私自身はLTAGを使用していません。

また、POSタグ付けのベースラインパフォーマンスは約90%であることに注意してください。ベースラインとは、(a)レキシコンからの最も頻繁なPOSタグですべての単語にタグを付け、(b)すべての未知の単語に名詞としてタグを付けることを意味します。

16
hashable

OpenNLP を使用しましたが、良い結果が得られました。 MorphAdorner もチェックアウトできます。

3
Shashikant Kore

私はLingPipeとStanfordのPOSTaggerの両方を使用しました。後者は 最先端 POS Taggerですが、私の経験からすると、遅すぎます(ただし、モデルの精度は低く、適度に高速です)。もちろん、それは常にあなたが達成しようとしていることに依存し、速度と精度の間には常にトレードオフがあります。

私もかつてLBJベースのNERソフトウェアを使用したことがあり、それはかなり正確でしたが、ソースコードは完全に混乱していました。 LingPipeとStanfordのソースはどちらも非常にクリーンで、十分に文書化されています。

LTAG-spinal もご覧ください。私はまだそれを使用していませんが、アルゴリズムの説明とリストされた精度から、これまでの選択肢よりも確かに優れているようです。

それが役に立てば幸い。

3
João Silva