投稿の背景
「つくりながら学ぶ!PyTorchによる発展ディープラーニング」を読んでいて、MeCabを用いた自然言語処理の話が出てきました。しかし、当該書籍は開発環境にLinuxを想定しており、Windows用のコマンドが記載されていなかったので、Windows, Pythonで動くMeCab, NEologdのインストール手順を書き残しておきます。
MeCabインストール
金子邦彦研究室のWebページに従ってインストールを進めてください。念のため、私が取り組んだ行動を記します。
- MeCabのWebページからmecab-xxx.exeをダウンロードし、実行してMeCabをインストールする(文字コードはUTF-8を選択した)
- Windowsのシステム環境変数に
c:\Program Files (x86)\Mecab\bin
を追加し、パスを通す
エディタの文字コードとMeCabの文字コードを合わせないと文字化けが起こるので要注意。今回はUTF-8で合わせてある。
MeCabに辞書を追加する
WindowsでNEologd辞書を比較的簡単に入れる方法ーユーザー辞書編に従って作業を進めてください。念のため、私が取り組んだ行動を記します。
1
適当なディレクトリfooで以下のコマンドを実行する。そうすると、foo直下にmecab-ipadic-neologdフォルダが生成される。
$ git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git
2
7zipのWebページから7zipをダウンロードする。
Windowsのシステム環境変数にC:\Program Files\7-Zip
を追加し、パスを通す。
以下のコマンドを実行する。
# .../seed
$ 7z X *.xz
3
以下のコマンドを実行する。そうすると、c:\Program Files (x86)\MeCab\dic\ipadic
フォルダ直下にNEologd.20200910-u.dicファイルが生成される。文字コードはUTF-8で合わせる必要がある。「20200910」の部分は適宜変更。
# .../seed
$ mecab-dict-index -d "c:\Program Files (x86)\MeCab\dic\ipadic" -u NEologd.20200910-u.dic -f utf-8 -t utf-8 mecab-user-dict-seed.20200910.csv
4
C:\Program Files (x86)\MeCab\dic\NEologd
フォルダを作成し、seedフォルダ直下にあるNEologd.20190128-u.dicファイルをNEologdフォルダ直下に移す。管理者権限が必要。
5
C:\Program Files (x86)\MeCab\etc\mecabrc
ファイルに次の行を追加する。行頭に「;」が含まれるとコメントアウト扱いになる(?)ので注意する。これも管理者権限が必要。
dicdir = $(rcpath)\..\dic\ipadic
userdic = C:\Program Files (x86)\MeCab\dic\NEologd\Neologd.20200910-u.dic
確認
まずは辞書を指定しないで実行する。
import MeCab
m_t = MeCab.Tagger('-Ochasen')
text = '機械学習が好きです。'
print(m_t.parse(text))
# 機械 キカイ 機械 名詞-一般
# 学習 ガクシュウ 学習 名詞-サ変接続
# が ガ が 助詞-格助詞-一般
# 好き スキ 好き 名詞-形容動詞語幹
# です デス です 助動詞 特殊・デス 基本形
# 。 。 。 記号-句点
# EOS
次に、辞書NEologdを指定して実行する。
import MeCab
m_t = MeCab.Tagger('-Ochasen -r "C:\Program Files (x86)\MeCab\etc\mecabrc"') # -d ではなく -r
text = '機械学習が好きです。'
print(m_t.parse(text))
# 機械学習 キカイガクシュウ 機械学習 名詞-固有名詞-一般
# が ガ が 助詞-格助詞-一般
# 好き スキ 好き 名詞-形容動詞語幹
# です デス です 助動詞 特殊・デス 基本形
# 。 。 。 記号-句点
# EOS
辞書未指定だと機械学習という単語は「機械」「学習」と認識されてしまうが、辞書NEologdを指定すると「機械学習」という1つの単語として認識されている。
参考
- つくりながら学ぶ!PyTorchによる発展ディープラーニング(Amazonページにリンクしています)
- 金子邦彦研究室のWebページ
- WindowsでNEologd辞書を比較的簡単に入れる方法ーユーザー辞書編