nysol良いよね。
自然言語処理をする上でとっても便利。
Mコマンド使うんだけど、その前に形態素解析してくれるMecabも入れるよね。
てことで、コピペ一発で
CentOS7にmecabインストールして、Neologdインストールしていきます。
Ubuntuだとapt-getでパッケージを簡単にインストールできるんだけど
CentOSだとそれはいまいち。yum頑張ってくれ笑
出回っている記事も、Ubutuだったり情報が古かったり。
複数のマシンに入れる時を考えるとコード化しておきたいよね。
書き溜めとして残しておきます。
コピペすればオッケーらっくちん。
Chef&Ansible化してあるから時間があるときに公開します。(すでにあるかも?)
もしちゃんとインストールする人は/tmp配下ではなく/optや/usr/localなどの下に書き換えてくださいな。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# install libs sudo yum install -y bzip2 bzip2-devel gcc gcc-c++ git make wget curl openssl-devel readline-devel zlib-devel # install mecab sudo mkdir -p /tmp/install_mecab cd /tmp/install_mecab wget 'https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7cENtOXlicTFaRUE' -O mecab-0.996.tar.gz tar zxvf mecab-0.996.tar.gz && cd mecab-0.996 && ./configure --with-charset=utf8 --enable-utf8-only && make && sudo make install # install ipadic sudo mkdir -p /tmp/install_mecab cd /tmp/install_mecab wget 'https://drive.google.com/uc?export=download&id=0B4y35FiV1wh7MWVlSDBCSXZMTXM' -O mecab-ipadic-2.7.0-20070801.tar.gz && tar zxvf mecab-ipadic-2.7.0-20070801.tar.gz && cd mecab-ipadic-2.7.0-20070801 && ./configure --with-charset=utf8 && make && sudo make install # install neologd sudo rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm && sudo yum -y install mecab mecab-devel mecab-ipadic xz && cd /usr/local/src/ && sudo su - root # 一度ユーザーが切り替わるので、ここから再度コピペしてね git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git && cd mecab-ipadic-neologd echo "yes" | ./bin/install-mecab-ipadic-neologd -n ./libexec/make-mecab-ipadic-neologd.sh #最近必要になった echo "yes" | ./bin/install-mecab-ipadic-neologd -n |
Neologdは頻繁に更新されるから時々更新するようにすると良いよ。
通常の辞書じゃなくてneologdを使うときは引数で-dを使うよ。
辞書の配置先が/usr/local/lib/ のときと /usr/lib64/のときがあるから確認してみてね。
通常の辞書だとこんな感じ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
$ echo "ピコ太郎さんはカナブンに角をつけてカブトムシとして売るバイトをしている" | mecab #ピコ 名詞,固有名詞,一般,*,*,*,ピコ,ピコ,ピコ #太郎 名詞,固有名詞,人名,名,*,*,太郎,タロウ,タロー #さん 名詞,接尾,人名,*,*,*,さん,サン,サン #は 助詞,係助詞,*,*,*,*,は,ハ,ワ #カナブン 名詞,一般,*,*,*,*,カナブン,カナブン,カナブン #に 助詞,格助詞,一般,*,*,*,に,ニ,ニ #角 名詞,一般,*,*,*,*,角,カク,カク #を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ #つけ 動詞,自立,*,*,一段,連用形,つける,ツケ,ツケ #て 助詞,接続助詞,*,*,*,*,て,テ,テ #カブトムシ 名詞,一般,*,*,*,*,カブトムシ,カブトムシ,カブトムシ #として 助詞,格助詞,連語,*,*,*,として,トシテ,トシテ #売る 動詞,自立,*,*,五段・ラ行,基本形,売る,ウル,ウル #バイト 名詞,一般,*,*,*,*,バイト,バイト,バイト #を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ #し 動詞,自立,*,*,サ変・スル,連用形,する,シ,シ #て 助詞,接続助詞,*,*,*,*,て,テ,テ #いる 動詞,非自立,*,*,一段,基本形,いる,イル,イル EOS |
Neologdだとこんな感じ。ピコ太郎いけるのか!!笑
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# Neologdだとピコ太郎がいける!! $ echo "ピコ太郎さんはカナブンに角をつけてカブトムシとして売るバイトをしている" | mecab -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd/ #ピコ太郎 名詞,固有名詞,人名,一般,*,*,ピコ太郎,ピコタロウ,ピコタロー #さん 名詞,接尾,人名,*,*,*,さん,サン,サン #は 助詞,係助詞,*,*,*,*,は,ハ,ワ #カナブン 名詞,一般,*,*,*,*,カナブン,カナブン,カナブン #に 助詞,格助詞,一般,*,*,*,に,ニ,ニ #角 名詞,一般,*,*,*,*,角,カク,カク #を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ #つけ 動詞,自立,*,*,一段,連用形,つける,ツケ,ツケ #て 助詞,接続助詞,*,*,*,*,て,テ,テ #カブトムシ 名詞,一般,*,*,*,*,カブトムシ,カブトムシ,カブトムシ #として 助詞,格助詞,連語,*,*,*,として,トシテ,トシテ #売る 動詞,自立,*,*,五段・ラ行,基本形,売る,ウル,ウル #バイト 名詞,一般,*,*,*,*,* #を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ #し 動詞,自立,*,*,サ変・スル,連用形,する,シ,シ #て 助詞,接続助詞,*,*,*,*,て,テ,テ #いる 動詞,非自立,*,*,一段,基本形,いる,イル,イル EOS |
Neologdについて詳しく調べたいときは本家です
https://github.com/neologd/mecab-ipadic-neologd/blob/master/README.ja.md