読者です 読者をやめる 読者になる 読者になる

プログラマでありたい

おっさんになっても、プログラマでありつづけたい

これはセンスが良い。Lingua::JA::TFIDF

自然言語処理

手軽にTF/IDFを計算するモジュール

情報検索の分野でよく使われるアルゴリズムで「TF/IDF」というものがあります。

ドキュメントの中から「特徴語」を抽出する、といったような用途でよく使われています。

TF/IDFアルゴリズムのくわしい解説はこことかここを見てください。

今回はこのTF/IDFの計算を「簡単」に実現するためのperlモジュールをCPANに上げましたので、ご紹介します。なまえはLingua::JA::TFIDFといいます。

 TF/IDFのネックは、製作者の指摘の通り「ある程度のボリュームもったドキュメントセット」というところ。これに対しての解は、wikipediaを使う、もしくは、検索エンジンを使うといったものです。が、確かに面倒くさい。
 これに対して、予めドキュメントセットを用意しましたというのが、Lingua::JA::TFIDFの凄いところ。この場合、未知語の対応どうするのという問題が残ります。これに対して、割り切って対応しています。ここがセンス良いなぁと思います。

じつは勘の鋭い人にはすぐにばれてしまいますが、

MeCabが辞書として持っていない「未知語」に対してはどうやってDFを計算しているのか?

、、じ、じつはそれは、、「既知語」の平均値を使ってます。。。

 さらには、オプションで都度未知語のDFの数値を調べにいくオプションもあるようです。これをフィードバックする仕組みがあれば完璧ですね。


後で、遊んでみよう