形態素解析器のMeCabに、「MeCab-ipadic-NEologd」という素晴らしい新語辞書がありますので、その使い方について記します。
MeCab-ipadic-NEologd : https://github.com/neologd/mecab-ipadic-neologd
MeCab-ipadic-NEologdのインストールは下記で可能。
[user@host]# git clone https://github.com/neologd/mecab-ipadic-neologd.git [user@host]# cd mecab-ipadic-neologd/ [user@host]# ./bin/install-mecab-ipadic-neologd --create_user_dic
私はCentOSで動かしていて、MeCabはyumからインストールしており、最初はmecab-configが見つからないと言われてしまいましたが、mecab-develをyumでインストールすれば大丈夫でした。
[user@host]# which mecab-config /usr/bin/which: no mecab-config in (/root/.pyenv/shims:/root/.pyenv/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin:/usr/local/rbenv/bin:/usr/local/rbenv/shims) [user@host]# yum -y install mecab-devel [user@host]# which mecab-config /usr/bin/mecab-config
MeCab-ipadic-NEologdが正常にインストールできましたら、辞書を指定してMeCabを実行します。
デフォルトと比べるとこんな感じに、今風の単語は固有名詞として認識してくれます。
[user@host]# echo 魔法少女まどか☆マギカ | mecab 魔法 名詞,一般,*,*,*,*,魔法,マホウ,マホー 少女 名詞,一般,*,*,*,*,少女,ショウジョ,ショージョ まどか 名詞,固有名詞,人名,名,*,*,まどか,マドカ,マドカ ☆ 記号,一般,*,*,*,*,☆,☆,☆ マギカ 名詞,固有名詞,組織,*,*,*,* EOS [user@host]# echo 魔法少女まどか☆マギカ | mecab -d /usr/lib64/mecab/dic/mecab-ipadic-neologd 魔法少女まどか☆マギカ 名詞,固有名詞,一般,*,*,*,魔法少女まどか☆マギカ,マホウショウジョマドカマギカ,マホーショージョマドカマギカ EOS [user@host]# echo とある科学の超電磁砲 | mecab とある 連体詞,*,*,*,*,*,とある,トアル,トアル 科学 名詞,一般,*,*,*,*,科学,カガク,カガク の 助詞,連体化,*,*,*,*,の,ノ,ノ 超 接頭詞,名詞接続,*,*,*,*,超,チョウ,チョー 電磁 名詞,一般,*,*,*,*,電磁,デンジ,デンジ 砲 名詞,接尾,一般,*,*,*,砲,ホウ,ホー EOS [user@host]# echo とある科学の超電磁砲 | mecab -d /usr/lib64/mecab/dic/mecab-ipadic-neologd とある科学の超電磁砲 名詞,固有名詞,一般,*,*,*,とある科学の超電磁砲,トアルカガクノレールガン,トアルカガクノレールガン EOS
「超電磁砲」も「レールガン」という風に、読み方も補完されています!
辞書も更新されていくみたいなので、下記コマンドでアップデートします。
[user@host]# ./bin/install-mecab-ipadic-neologd -n
毎月更新をしていくとのことなので、月末にcronで自動アップデートするようにしておきました。
50 23 28-31 * * /usr/bin/test $( date -d '+1 day' +\%d ) -eq 1 && /root/mecab-ipadic-neologd/bin/install-mecab-ipadic-neologd -n -y > /dev/null 2>&1
コメント