kivantium活動日記

プログラムを使っていろいろやります

mecab-ipadic-neologdがすごいという話

[O] MeCab 用の新語辞書 mecab-ipadic-neologd を公開しましたという記事が話題になっていたのでmecab-ipadic-neologdを試してみました。

インストール

READMEを見れば分かりますが一応メモ

sudo apt-get install mecab libmecab-dev mecab-ipadic-utf8 git make curl xz-utils
git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git
cd mecab-ipadic-neologd
./bin/install-mecab-ipadic-neologd

でインストールできます。

インストール先は

echo `mecab-config --dicdir`"/mecab-ipadic-neologd"

で確認できます。私の環境では/usr/lib/mecab/dic/mecab-ipadic-neologd/でした。

ipadicとの比較使用例

オタク形態素解析で難関となる「なのは」で試してみました。

従来のipadic

mecab
なのはちゃんかわいい
な	助動詞,*,*,*,特殊・ダ,体言接続,だ,ナ,ナ
の	名詞,非自立,一般,*,*,*,の,ノ,ノ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
ちゃん	名詞,一般,*,*,*,*,ちゃん,チャン,チャン
かわいい	形容詞,自立,*,*,形容詞・イ段,基本形,かわいい,カワイイ,カワイイ
EOS

「なのは」を名詞として認識できませんでした。

mecab-ipadic-neologd

 mecab -d /usr/lib/mecab/dic/mecab-ipadic-neologd/
なのはちゃんかわいい
なのは	名詞,固有名詞,一般,*,*,*,なのは,ナノハ,ナノハ
ちゃん	名詞,接尾,人名,*,*,*,ちゃん,チャン,チャン
かわいい	形容詞,自立,*,*,形容詞・イ段,基本形,かわいい,カワイイ,カワイイ
EOS

なのはちゃんかわいいよ!!
ちなみに「なのは完売」も固有名詞として登録されていました。

「なのは」を辞書に登録すると「○○なのは〜」という通常の用法の「なのは」が解析できなくなることが問題として知られています。これを試してみます。

形態素解析で問題なのはなのはのような解析が難しい単語です
形態素解析	名詞,固有名詞,一般,*,*,*,形態素解析,ケイタイソカイセキ,ケイタイソカイセキ
で	助詞,格助詞,一般,*,*,*,で,デ,デ
問題	名詞,ナイ形容詞語幹,*,*,*,*,問題,モンダイ,モンダイ
な	助動詞,*,*,*,特殊・ダ,体言接続,だ,ナ,ナ
の	名詞,非自立,一般,*,*,*,の,ノ,ノ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
なのは	名詞,固有名詞,一般,*,*,*,なのは,ナノハ,ナノハ
の	助詞,連体化,*,*,*,*,の,ノ,ノ
よう	名詞,非自立,助動詞語幹,*,*,*,よう,ヨウ,ヨー
な	助動詞,*,*,*,特殊・ダ,体言接続,だ,ナ,ナ
解析	名詞,サ変接続,*,*,*,*,解析,カイセキ,カイセキ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
難しい	形容詞,自立,*,*,形容詞・イ段,基本形,難しい,ムズカシイ,ムズカシイ
単語	名詞,一般,*,*,*,*,単語,タンゴ,タンゴ
です	助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
EOS

文句のつけようがない素晴らしい結果が返ってきました。


これを参考に「がをられ」「はがない」あたりをやってみます。

※一般人向けの注


従来の辞書

はがないは「僕は友達が少ない」の略称です。
はが	動詞,自立,*,*,五段・ガ行,未然形,はぐ,ハガ,ハガ
ない	助動詞,*,*,*,特殊・ナイ,基本形,ない,ナイ,ナイ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
「	記号,括弧開,*,*,*,*,「,「,「
僕	名詞,代名詞,一般,*,*,*,僕,ボク,ボク
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
友達	名詞,一般,*,*,*,*,友達,トモダチ,トモダチ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
少ない	形容詞,自立,*,*,形容詞・アウオ段,基本形,少ない,スクナイ,スクナイ
」	記号,括弧閉,*,*,*,*,」,」,」
の	助詞,連体化,*,*,*,*,の,ノ,ノ
略称	名詞,サ変接続,*,*,*,*,略称,リャクショウ,リャクショー
です	助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
。	記号,句点,*,*,*,*,。,。,。
EOS

mecab-ipadic-neologd

はがないは「僕は友達が少ない」の略称です。
はがない	名詞,固有名詞,一般,*,*,*,はがない,ハガナイ,ハガナイ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
「	記号,括弧開,*,*,*,*,「,「,「
僕は友達が少ない	名詞,固有名詞,一般,*,*,*,僕は友達が少ない,ボクハトモダチガスクナイ,ボクハトモダチガスクナイ
」	記号,括弧閉,*,*,*,*,」,」,」
の	助詞,連体化,*,*,*,*,の,ノ,ノ
略称	名詞,サ変接続,*,*,*,*,略称,リャクショウ,リャクショー
です	助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
。	記号,句点,*,*,*,*,。,。,。
EOS

タイトル含めて正しく解析できました。これはすごい。(なおタイトルをカギカッコでくくらない場合は固有名詞と判定されませんでした)


従来の辞書

がをられはとても面白いアニメです
が	接続詞,*,*,*,*,*,が,ガ,ガ
を	助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
られ	動詞,接尾,*,*,一段,連用形,られる,ラレ,ラレ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
とても	副詞,助詞類接続,*,*,*,*,とても,トテモ,トテモ
面白い	形容詞,自立,*,*,形容詞・アウオ段,基本形,面白い,オモシロイ,オモシロイ
アニメ	名詞,一般,*,*,*,*,アニメ,アニメ,アニメ
です	助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
EOS

mecab-ipadic-neologd

がをられはとても面白いアニメです
が	接続詞,*,*,*,*,*,が,ガ,ガ
を	助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
られ	動詞,接尾,*,*,一段,連用形,られる,ラレ,ラレ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
とても	副詞,助詞類接続,*,*,*,*,とても,トテモ,トテモ
面白い	形容詞,自立,*,*,形容詞・アウオ段,基本形,面白い,オモシロイ,オモシロイ
アニメ	名詞,一般,*,*,*,*,アニメ,アニメ,アニメ
です	助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
EOS

「がをられ」は辞書登録されていないのかもしれません……


先ほどのツイート本文を解析してみます。
従来の辞書

形態素	名詞,一般,*,*,*,*,形態素,ケイタイソ,ケイタイソ
解析	名詞,サ変接続,*,*,*,*,解析,カイセキ,カイセキ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
難しい	形容詞,自立,*,*,形容詞・イ段,基本形,難しい,ムズカシイ,ムズカシイ
の	名詞,非自立,一般,*,*,*,の,ノ,ノ
に	助詞,格助詞,一般,*,*,*,に,ニ,ニ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
な	助動詞,*,*,*,特殊・ナイ,ガル接続,ない,ナ,ナ
の	名詞,非自立,一般,*,*,*,の,ノ,ノ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
の	助詞,連体化,*,*,*,*,の,ノ,ノ
ほか	名詞,副詞可能,*,*,*,*,ほか,ホカ,ホカ
に	助詞,格助詞,一般,*,*,*,に,ニ,ニ
はが	動詞,自立,*,*,五段・ガ行,未然形,はぐ,ハガ,ハガ
ない	助動詞,*,*,*,特殊・ナイ,基本形,ない,ナイ,ナイ
とか	助詞,並立助詞,*,*,*,*,とか,トカ,トカ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
を	助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
られ	動詞,接尾,*,*,一段,連用形,られる,ラレ,ラレ
とか	助詞,並立助詞,*,*,*,*,とか,トカ,トカ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
あり	動詞,自立,*,*,五段・ラ行,連用形,ある,アリ,アリ
これら	名詞,代名詞,一般,*,*,*,これら,コレラ,コレラ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
に	助詞,格助詞,一般,*,*,*,に,ニ,ニ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
にやけ	動詞,自立,*,*,一段,連用形,にやける,ニヤケ,ニヤケ
より	助詞,格助詞,一般,*,*,*,より,ヨリ,ヨリ
なから	形容詞,自立,*,*,形容詞・アウオ段,未然ヌ接続,ない,ナカラ,ナカラ
の	助詞,連体化,*,*,*,*,の,ノ,ノ
伝統	名詞,一般,*,*,*,*,伝統,デントウ,デントー
だ	助動詞,*,*,*,特殊・ダ,基本形,だ,ダ,ダ
そう	名詞,特殊,助動詞語幹,*,*,*,そう,ソウ,ソー
です	助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
。	記号,句点,*,*,*,*,。,。,。
EOS

mecab-ipadic-neologd

形態素解析	名詞,固有名詞,一般,*,*,*,形態素解析,ケイタイソカイセキ,ケイタイソカイセキ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
難しい	形容詞,自立,*,*,形容詞・イ段,基本形,難しい,ムズカシイ,ムズカシイ
の	名詞,非自立,一般,*,*,*,の,ノ,ノ
に	助詞,格助詞,一般,*,*,*,に,ニ,ニ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
なのは	名詞,固有名詞,一般,*,*,*,なのは,ナノハ,ナノハ
の	助詞,連体化,*,*,*,*,の,ノ,ノ
ほか	名詞,副詞可能,*,*,*,*,ほか,ホカ,ホカ
に	助詞,格助詞,一般,*,*,*,に,ニ,ニ
はが	動詞,自立,*,*,五段・ガ行,未然形,はぐ,ハガ,ハガ
ない	助動詞,*,*,*,特殊・ナイ,基本形,ない,ナイ,ナイ
とか	助詞,並立助詞,*,*,*,*,とか,トカ,トカ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
を	助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
られ	動詞,接尾,*,*,一段,連用形,られる,ラレ,ラレ
とか	助詞,並立助詞,*,*,*,*,とか,トカ,トカ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
あり	名詞,固有名詞,一般,*,*,*,あり,アリ,アリ
これら	名詞,代名詞,一般,*,*,*,これら,コレラ,コレラ
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
はにはに	名詞,固有名詞,一般,*,*,*,はにはに,ハニハニ,ハニハニ
や	助詞,並立助詞,*,*,*,*,や,ヤ,ヤ
けよりな	名詞,固有名詞,一般,*,*,*,けよりな,ケヨリナ,ケヨリナ
から	助詞,格助詞,一般,*,*,*,から,カラ,カラ
の	助詞,連体化,*,*,*,*,の,ノ,ノ
伝統	名詞,一般,*,*,*,*,伝統,デントウ,デントー
だ	助動詞,*,*,*,特殊・ダ,基本形,だ,ダ,ダ
そう	名詞,特殊,助動詞語幹,*,*,*,そう,ソウ,ソー
です	助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
。	記号,句点,*,*,*,*,。,。,。
EOS

「はがない」「がをられ」の解析に失敗していますが、「なのは」「はにはに」「けよりな」が正しく解析できるようになりました。

というわけで、mecab-ipadic-neologdはオタク形態素解析にも有効そうです。ありがたく使わせてもらいます。