<< NAIST-JDic for MeCabのPreprocessorの実装に関する備忘録 | top | 第1回 データ構造と情報検索と言語処理勉強会に参加しました。 >>

スポンサーサイト

一定期間更新がないため広告を表示しています

スポンサードリンク | - | | - | - | - | - |

Kuromojiを調べてみた

以前から春山さんのブログ(リンク)や勉強会で耳にはしていたのですがソースは読んでいませんでした。
先日、Luceneにcontributeされた(リンク)ので軽くソースを読んでみました。

公式サイトはこちら

まずはMeCabのページにある比較表(リンク)を基準に特徴を調べてみました。せっかくなので、lucene-gosenも隣に。

  Kuromoji lucene-gosen
解析モデル なし(学習機能なし) なし(学習機能なし)
コスト推定 なし(学習機能なし) なし(学習機能なし)
学習モデル なし(学習機能なし) なし(学習機能なし)
辞書引きアルゴリズム Double Array Trie Double Array Trie
解探索アルゴリズム Viterbi Viterbi
連接表の実装 2次元 Table 3次元 Table
品詞の階層 無制限多階層品詞?
ipadic、unidic形式に対応
無制限多階層品詞
未知語処理 字種 (動作定義を変更可能)(おそらく。) 字種(変更不可能)
制約つき解析 たぶん、不可? たぶん、不可?
N-best解 不可能 不可能

こうやって比較してみるとlucene-gosen(Sen)とあまりかわりはありませんが、lucene-gosenが少し古いのがわかりますね。。。

Kuromojiで利用出来る辞書は現時点ではMeCab IPADIC、UNIDICの2種類のようです。

ソースを読んでの感想ですが、やはりMeCabが偉大だということがよくわかりました。
Senよりも新しいMeCabの処理に似ている点が多いです。解探索アルゴリズムや連接コスト表が特に。
MeCab向けの辞書を利用しているためというのもあるかと思います。

Kuromojiが特徴的なのは「searchモード」と呼ばれるモードが用意されていることです。
公式サイトにある例ですと、「関西国際空港」が「関西」「国際」「空港」というTokenで出力されます。
ソースを見たところViterbiアルゴリズムで辞書を探索しているときに特定の条件でコストをカサ増しすることで、結果を変えるという処理を行っているようです。
  • 全て漢字の単語:3文字以上の場合に「(単語の長さ-3)*10000」をコストに加算
  • その他の単語:7文字以上の場合に「(単語の長さ-7)*10000」をコストに加算

このようにコストを変化させることで「空港」でも「関西国際空港」という文字を含む文章が検索できる仕組みになっています。
また、「拡張searchモード」と呼ばれるモードも存在し、こちらは、未知語をuni-gramで区切って出力を行うようです。

ソース上で確認しただけで、未確認ですが、GraphvizFormatterというクラスがあるので、Graphvizで読み込める形式で形態素解析の結果が出力されるかもしれません。(すみません、確認してなくて。)

未知語の処理やsearchモードなど面白い機能があるので、試してみるのもいいかもしれません。lucene-gosenを考えていく上でも参考になりそうです。

最後に余談ですが、FAQのページ(リンク)が面白いです。。。
johtani | 形態素解析 | 12:29 | comments(0) | trackbacks(0) | - | - |

スポンサーサイト

スポンサードリンク | - | 12:29 | - | - | - | - |
Comment









Trackback
URL:

09
--
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
--
>>
<<
--
PR
RECOMMEND
[改訂新版] Apache Solr入門 ~オープンソース全文検索エンジン (Software Design plus)
[改訂新版] Apache Solr入門 ~オープンソース全文検索エンジン (Software Design plus) (JUGEMレビュー »)
大谷 純,阿部 慎一朗,大須賀 稔,北野 太郎,鈴木 教嗣,平賀 一昭
Solr 4系に対応した改訂版を出しました!興味ある方はぜひ。
RECOMMEND
Apache Solr入門 ―オープンソース全文検索エンジン
Apache Solr入門 ―オープンソース全文検索エンジン (JUGEMレビュー »)
関口 宏司,三部 靖夫,武田 光平,中野 猛,大谷 純
RECOMMEND
RECENT COMMENT
  • ポモドーロ回してます。(ポモドーロテクニック入門読みました)
    おーたに (05/07)
  • Lucene 4.3.0のChangesにあるChanges in backwards compatibility policyが気になったので訳してみた。
    おーたに (04/26)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    おーたに (09/04)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    m_nori (09/03)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    おーたに (09/03)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    ho4kawa (09/03)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    おーたに (09/03)
  • メインMBAをMountain Lionにアップデート(いろいろ確認中)
    まろか (09/03)
  • Lucene/Solr 3.6.0リリース / 「Apache Solr入門」のサンプルのKuromojiとlucene-gosen対応(1章)
    おーたに (08/07)
  • Lucene/Solr 3.6.0リリース / 「Apache Solr入門」のサンプルのKuromojiとlucene-gosen対応(1章)
    moco (08/07)
RECENT TRACKBACK
MOBILE
qrcode
OTHERS