Your 3D

MeCabインストール時のエラー対処法:Windows10

形態素解析をしたい…
pythonを使ってmecabをwindowsにインストールできない…
mecab ipadic neologdがインストールできない…

 

こんな悩みを解消できるかもしれません。形態素解析をするためにMeCabをインストールしてみました。この記事では、私が躓いたところ、MeCabの具体的なインストールまでの手順について書いていきます。各手順で参考にさせていただいた記事を紹介していきます。

pythonを使ってMeCabをインストールする手順はネット上にたくさんありますが、各々やり方、環境が違うので、自分の環境に合った方法を自身で見つけ出してインストールしなければなりません。私は丸2日かかってしまいました。。。私と同じような失敗を起こした人のために、エラーの解消法についてまとめておきます。

 

 

スポンサーリンク

■環境

今回MeCabインストール時の私の環境は以下の通りです。

・OS:Windows10(64bit)

・Python3.7.2

・WSL:Ubuntu18.04

・MeCab0.996

 

スポンサーリンク

■MeCabインストールの流れとエラー対処法

MeCabのインストールの具体的な流れ、インストール時のエラーを書いてきます。

□MeCab本体をインストール

MeCab本体のインストールについては。あれこれさんの64Bit版Windows10でMecabをインストールする方法

をみればできます。 注意点としては、この記事を書いている時点(2019/01/13)で、mecab-python-windowsのパッケージが更新されて、mecab_python_windows-0.996.1-cp37-cp37m-win_amd64.whlが使えるようになっています。Python3.7を使っている方は、こちらのファイルをpipでインストールしましょう。

Python3.6を使っている方は、以前のバージョンのもの(mecab-python-windows 0.996.0)を使えばMeCabをインストールできます。

この時点で、MeCab本体を使えるようになっています。

MeCabでエラーがでてしまう場合は、環境変数を編集からPathを上記記事でインストールしたMeCab\binにPathを通してみてください。

 

□WSLでUbuntuを導入

MeCabが利用できるようになりましたが、辞書が古いので、固有名詞を解析するのが難しいです。例えば、アイドルマスターをアイドル・マスターと分割してしまいます。分割数が増えるとより多くの処理が必要になるため、辞書を強化する必要があります。

そこでMeCabを開発した方が、mecab-ipadic-neologdという新しい辞書を世に出してくれています。ところがこのneologdはWindowsから直接インストールすることができません。そのため、WSLを使ってneologdをインストール、ビルドといった手順を踏む必要がでてきます。

以下の記事をみながらWSLでUbuntuをインストールできます。

Windows 10でLinuxプログラムを利用可能にするWSLをインストールする(バージョン1803以降対応版)

Ubuntu自体の導入はエラーが発生しなかったので、説明はリンク先の記事を参照してください。

 

□neologdをインストール、ビルド

ここからが鬼門です。Ubuntuでneologdをインストール、ビルドしていきます。

mecab64bit版をつくってくれたyukino itagakiさんのQuiitaがわかりやすいです。

MeCab NEologd辞書をWindows Subsystem for LinuxでビルドしてWindowsで使うための手順

この記事を参考に進めていきます。gitをインストールしておかないとエラーが出てた記憶があるので、以下のコードを実行してから記事へ飛んでください。

 

 

私がneologdをインストールする際に起きたのが以下のエラーです。まだまだ私自身が初心者なのでエラーの詳しい説明はできませんが、解決法を載せておきます。

 

・unable to locate package

これはパッケージが古い状態のために出るエラーっぽい。

以下のコマンドを実行で、aptがアップデートされ、パッケージをインストールできるようになります。

 

・make is nof found

対処法は、以下のコードを実行

build-essentialを再インストールすることで、解決できます。

 

・curl is not found

curlをインストールすれば解決。

上記コード実行で解決します。

 

dicdirのパスをいじるとエラーになる方は、応急的な対応ですが、以下の方法も使えます。

既存の辞書データ(MeCab\dir\ipadic)へビルドしたneologdディレクトリ内のファイルをipadicへ上書き

これにより、neologdのデータがipadicに上書きされ、辞書が強化されます。

 

 

スポンサーリンク

■まとめ

MeCabをインストールする手順は以下の通りです。

MeCabインストールの流れとエラー対処法
MeCab本体をインストール
WSLでUbuntuを導入
neologdをインストール、ビルド

MeCabをwindowsで動かすには、大変なことがわかりましたね。おとなしく別の方法からやればよかったかもと反省。

Windowsじゃなきゃだめなんだという強いこだわりがない人(特に初心者で)は、Windowsよりも仮想デスクトップとかを使って別のOSを使った方が無難だと思います。

また、知識がないうちはjanomeという形態素解析を行えるパッケージもあるので、そちらを使うのもありだと思います。

janomeは解析速度がMeCabの10倍かかると作者がおっしゃっていますが、初心者のうちはそもそも莫大な量の解析は行わない(行わないほうがいい)と思うので十分選択肢に入るかと思います。

 

最後まで読んでいただきありがとうございました。