HYT MachineWorks

やったこととか思いついたことをメモしておくブログです。

Python3の環境でmecab-pythonを使い、さらにWindows7 64bitで、mecab-ipadic-neologdを使う

windows7のPython3でmecab-pythonを入れたのでメモ。

mecab-pythonをpython3用にビルドしインストール。さらに、辞書を標準のipadicの不具合修正と最新の新語に強いmecab-ipadic-neologdをインストールした。

基本的に以下のサイトを参照

pop365.cocolog-nifty.com

qiita.com

ここでの注意点

先に公式のバイナリをインストールしてから上書きする形でインストール。(ipa dicのコンパイルの為)そのときに、文字コードutf-8を指定した。もちろんこの後のmecab-ipadic-neologdのためだ。

また、リンク先のサイトでは、コンパイラとしてVisualStudioを使っているが、Visual C++ Build toolsでも問題なくコンパイル出来る。ただ、VC++Build Toolsのインストールの際にカスタムを選択肢てWindows8.1と10のSDKにチェックを入れること。

リンク先のサイトもmecab-pythonについてくるtest.pyもすべてpython2系で書かれているので動かないのでprint関係を修正すること。

あと、Mecabのビルドの際に修正する行の最後にスペースがあるとエラーになるので注意。

mecab-ipadic-neologdとは

分かち書きをするとブチブチ切れていたので凄いと話題なmecab-ipadic-neologdを入れる。mecabにデフォルトで使っているipadicに新語を超たくさん登録してくれている(追加だけじゃなくって修正もしてるみたいで)サイコーな辞書なんですが、作者のサイトにあるようにwidows7には対応してません。

github.com

mecab-ipadic-neologdをLinuxマシンでコンパイルする

そのため、何らかの*nixが入ったマシンを用意します。僕は、LinuxMint18.1が入ったマシンがあったのでそれで入れました。(Windows10であればBash on Ubuntu on Windowsを使っても入れられるみたいです。)

 

2017/06/18注記 仮想環境を構築してコンパイルする方法を書いたので合わせて参照

hytmachineworks.hatenablog.com

 

公式サイトの手順通りに実行するとインストール先がデフォルトでは以下のディレクトリになります

/usr/lib/mecab/dic/

mecab-ipadic-neologdという名前のディレクトリで保存されています。そのディレクトリごとUSBメモリや共有フォルダ、DVD-Rにコピーします。

Linuxマシンでコンパイルしたmecab-ipadic-neologdをWindowsへコピー

windowsマシンの以下のディレクトリにコピーします。

\Mecabインストーディレクトリ\dic\

MeCab本体のmecabrcの設定変更

新しい辞書を認識させるためにetc内にあるmecabrcを

変更前:dicdir = $(rcpath)\..\dic\ipadic
変更後:dicdir = $(rcpath)\..\dic\mecab-ipadic-neologd

 と編集すればOKです。

テスト動作

mecab-ipadic-neologdでの例文を分かち書きしてみる。

結果

10日 トオカ 10日 名詞-固有名詞-一般
放送 ホウソウ 放送 名詞-サ変接続
の ノ の 助詞-連体化
「 「 「 記号-括弧開
中居正広のミになる図書館 ナカイマサヒロノミニナルトショカン 中居正広のミになる図書館 名詞-固有名詞-一般
」 」 」 記号-括弧閉
( ( ( 記号-括弧開
テレビ朝日 テレビアサヒ テレビ朝日 名詞-固有名詞-組織
系 ケイ 系 名詞-接尾-一般
) ) ) 記号-括弧閉
で デ で 助詞-格助詞-一般
、 、 、 記号-読点
SMAP スマップ SMAP 名詞-固有名詞-一般
の ノ の 助詞-連体化
中居正広 ナカイマサヒロ 中居正広 名詞-固有名詞-人名-一般
が ガ が 助詞-格助詞-一般
、 、 、 記号-読点
篠原信一 シノハラシンイチ 篠原信一 名詞-固有名詞-人名-一般
の ノ の 助詞-連体化
過去 カコ 過去 名詞-副詞可能
の ノ の 助詞-連体化
勘違い カンチガイ 勘違い 名詞-サ変接続
を ヲ を 助詞-格助詞-一般
明かす アカス 明かす 動詞-自立 五段・サ行 基本形
一幕 ヒトマク 一幕 名詞-一般
が ガ が 助詞-格助詞-一般
あっ アッ ある 動詞-自立 五段・ラ行 連用タ接続
た タ た 助動詞 特殊・タ 基本形
。 。 。 記号-句点

 出来た。

これも、windows10になればBoW上でできるようなので少しの間の対応かもしれませんね。