Drafts

@cm3 の草稿置場 / 少々Wikiっぽく使っているので中身は適宜追記修正されます。

NLPのライブラリ、プラットフォーム

Pythonista にはNatural Language Toolkit (NLTK)が定番だろう。

Apache UIMAUIMA は Unstructured Information Management Architecture の略らしい)はフレームワークとして提供されていて、DKPro CoreU-Compareといった形でそれぞれの目的に特化したUIMA準拠の環境が存在する。その他の環境については UIMA Components のページを見ると良い。元々独立していた Apache OpenNLPUIMAの上に乗る形になっているようだ。

General Architecture for Text Engineering (GATE)はシェフィールド大学が継続して続けている大規模プロジェクトで、こちらもプラットフォーム化している。動植物名をタギングする The OrganismTagger Systemなんかも GATE のプラグインとして構築されている。

UIMA と GATE の関係はイマイチ分かっていない。LREC 2012 のサーベイ論文 A Survey of Text Mining Architectures and the UIMA Standardあたりを精読してみると分かってくるかもしれないが、1大学が精力的に頑張ってる GATE と、規格化に力を入れて Apache 傘下で分散的に頑張ってる UIMA は相容れないため、似たようなツールを内包し互いに連携しつつも、統合はされないという状況なのではないかと勝手に推測している。

他に大学ベースでやっているのは、スタンフォード大のものカルフォルニア大学バークレー校のものがあって、NLP関係の論文で良く見かけるが、これらはそれぞれのツールの独立性が強く、プラットフォーム感は無い。個々の先端的な成果を研究グループとしてまとめているといったところだろう。

学会ベースでやってるもので、TETDM というのがある。人工知能学会の近未来チャレンジでの成果物で今でもメンテされている。

あと、日本で文系の方々の間で絶大な人気を誇るものにKH Coderがある。使ったことは無いが、なぜ文系でここまで利用されるに至ったかという点について興味がある。インタフェースの問題、ドキュメンテーションの問題、コミュニティの問題、言語の問題(今まで挙げたソフトウェアはプログラミング言語以前に英語が普通に扱えないと敷居が高い)などなどが理由だと思うが。

その他参考: