MeCabはオープンソースの日本語の形態素解析ソフトウェア。ちょっと自然言語処理を勉強しようと思って、、そのときの作業メモ。
Ubuntu Server 16.04.2 LTS に構築していきます。


** インストール [#a0f921f6]
 $ sudo apt install mecab
 $ sudo apt install libmecab-dev
 $ sudo apt install mecab-ipadic-utf8
 
  ...
 done!
 update-alternatives: /var/lib/mecab/dic/debian (mecab-dictionary) を提供するために自動モードで /var/lib/mecab/dic/ipadic-utf8 を使います

インストール完了です。インストール時、足りないライブラリがあったらエラーになるっぽいですが、適宜エラーを見ながらやっていけばOKかと。


*** 稼働確認 [#w26a4441]
定番の文章で分かち書きできるか確認。

 $ mecab
 すもももももももものうち    ← 入力してReturn
 すもも	名詞,一般,*,*,*,*,すもも,スモモ,スモモ
 も	助詞,係助詞,*,*,*,*,も,モ,モ
 もも	名詞,一般,*,*,*,*,もも,モモ,モモ
 も	助詞,係助詞,*,*,*,*,も,モ,モ
 もも	名詞,一般,*,*,*,*,もも,モモ,モモ
 の	助詞,連体化,*,*,*,*,の,ノ,ノ
 うち	名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
 EOS

分かち書きできましたねー。。


** 辞書をmecab-ipadic-NEologdを使うようにする [#y7715f3d]
Mecabなどの形態素解析ソフトウェアは分かち書きに使うための辞書を切り替える事が出来ます。どうやら、
[[新語・固有表現に強い「mecab-ipadic-NEologd」の効果を調べてみた : LINE Engineering Blog>https://engineering.linecorp.com/ja/blog/detail/109]] 
この辞書がよいっぽいので、その辞書を使用するように変更してみます。

 $ git clone  https://github.com/neologd/mecab-ipadic-neologd.git
 $ cd mecab-ipadic-neologd/
 $ sudo ./bin/install-mecab-ipadic-neologd
 
 ...
 [install-mecab-ipadic-NEologd] : Do you want to install mecab-ipadic-NEologd? Type yes or no.
 yes   ← こたえる
 
 ...
 [install-mecab-ipadic-NEologd] : Install completed.
 [install-mecab-ipadic-NEologd] : When you use MeCab, you can set '/usr/lib/mecab/dic/mecab-ipadic-neologd' as a value of '-d' option of MeCab.
 [install-mecab-ipadic-NEologd] : Usage of mecab-ipadic-NEologd is here.
 Usage:
     $ mecab -d /usr/lib/mecab/dic/mecab-ipadic-neologd ...

 $

インストールできました。

***確認 [#i9b8584d]
辞書を切り替えた効果を試してみます。先のサイトの例で「恋ダンス」を入れてみます。

通常だと、
 $ mecab
 恋ダンス
 恋	名詞,一般,*,*,*,*,恋,コイ,コイ
 ダンス	名詞,サ変接続,*,*,*,*,ダンス,ダンス,ダンス

と別の単語扱いになってしまいますが、

 $ mecab -d /usr/lib/mecab/dic/mecab-ipadic-neologd
 恋ダンス
 恋ダンス	名詞,固有名詞,一般,*,*,*,恋ダンス,コイダンス,コイダンス
 EOS

固有名詞扱いしてくれました。使用する辞書を変えると結果が変わるという事ですね。


*** デフォルトの辞書を切り替え [#d7aecde7]
というわけで、辞書をオプションで指定しなくてもよいように、デフォルトの辞書を切り替えます。下記の設定ファイルを修正します。

 $ sudo cp -pfr /etc/mecabrc /etc/mecabrc20180617
 $ sudo vi /etc/mecabrc
 $ diff /etc/mecabrc /etc/mecabrc20180617
 6,7c6
 < ;dicdir = /var/lib/mecab/dic/debian
 < dicdir = /usr/lib/mecab/dic/mecab-ipadic-neologd
 ---
 > dicdir = /var/lib/mecab/dic/debian

修正しました。では試してみます。

 $ mecab
 恋ダンス
 恋ダンス	名詞,固有名詞,一般,*,*,*,恋ダンス,コイダンス,コイダンス
 EOS

切り替わってそうですね。


**関連リンク [#d0d1c2cf]

https://qiita.com/tsuruchan/items/7d3af5c5e9182230db4e


http://taku910.github.io/mecab/#install

https://qiita.com/ekzemplaro/items/c98c7f6698f130b55d53


https://www.blog.umentu.work/ubuntu-word2vec%E3%81%A7%E6%97%A5%E6%9C%AC%E8%AA%9E%E7%89%88wikipedia%E3%82%92%E8%87%AA%E7%84%B6%E8%A8%80%E8%AA%9E%E5%87%A6%E7%90%86%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F/


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS