LoginSignup
5

More than 3 years have passed since last update.

NLP準備運動 : 分かち書き環境の構築 Mecab , Juman++ver2

Last updated at Posted at 2019-03-17

この記事では、windows10 64bit環境でNLPを行うための環境構築について記載します。

NLPの入力用データを準備として、まずは分かち書きを行う環境を構築します。
分かち書きの微妙な違いによりNLPの結果が異なっているかどうかを比較可能にするために、ソフトウェアは、MeCabとJuman++ version2の2つを用いることにしました。

1. 前提となる環境

Windows10 64bit
Anaconda (Python3.6)
文字コードは「UTF-8」を用います。

※Juman++ Version.2の使用のためには「Visual Studio2017」と「cmake」が必要になります。(後述)

2. MeCab環境の構築

Windows10(64bit)でMeCab-Pythonを使えるようにするシンプルな方法(2018/6)
にまとめられています。
少しだけ私の場合と違ったので、念のため、以下に記載しました。

2.1. ファイルの用意

Mecab(64bit版)をダウンロードしインストールします。
インストール時の文字コードの選択は「utf-8」を使用します。

perl/ruby/python/java バインディング リンク先のダウンロード(Google Drive)からmecab-python-0.996.tar.gzをダウンロードします。

2.2. Pathの設定

  1. PCのプロパティを開き、「システムの詳細設定」をクリックします。
  2. 開いたWindowの一番下にある「環境設定(N)」をクリックします。
  3. 変数Pathを選択し、「編集(E)」をクリックして、開いたWindowの「新規(N)」をクリックし、「C:\Program Files\MeCab\bin」を追加して、OKします。 (注意:MeCabのインストール先が異なる場合は、適宜修正してください。)
  4. ユーザの環境変数の画面から「新規(N)」をクリックします。
  5. 「変数名:MECABRC」、「値:C:\Program Files\MeCab\etc\mecabrc」としてOKをクリックします。

2.3. pythonバインディングのインストール

  1. AnacondaでPython3.6の環境(NLPという名前にしました)を構築します。
  2. AnacondaからTerminalを開き、mecab-python-0.996.tar.gzを解凍します。
  3. mecab-python-0.996フォルダ内にあるsetup.pyを下記の内容で上書きします。
  4. Terminalからのmecab-python-0.996フォルダで「python setup.py build」を実行します
  5. 正常にbuildが完了したら、「python setup.py install」でインストールします。
  6. Pythonを立ち上げ「import MeCab」が実行できることを確認します。
setup.py
#!/usr/bin/env python

from distutils.core import setup, Extension

setup(name = "mecab-python",
    version = '0.996',
    py_modules=["MeCab"],
    ext_modules = [
        Extension("_MeCab",
            ["MeCab_wrap.cxx",],
            include_dirs=[r'C:\Program Files\MeCab\sdk'],
            library_dirs=[r'C:\Program Files\MeCab\sdk'],
            libraries=['libmecab'])
            ])

3. Juman++ Version.2の環境構築

Juman++のVersion.2は開発中でありインストールスクリプトも2019年3月時点では未整備な状況です。
以下の内容は、あくまで2019年3月時点のものであることを前提としてください。
最新の情報はGitHubのリポジトリを参考にしてください。

3.1. ソフトウェアの準備

  1. Cmakeをインストールします。
  2. Visual Studio 2017 Communityをインストールします。いろいろオプションが出てきますが「C++によるデスクトップ開発環境」にチェックが入っていることを確認してください。 ##3.2. ファイルの用意
  3. Juman++ Ver.2をダウンロードします。

3.3. ビルド

  1. AnacondaからTerminalを開き、ダウンロードしたファイルを解凍します。
  2. 解凍したフォルダ(jumanpp-2.0.0-rc2)の中に移動し、以下のコマンドを実行してファイルをビルドします。
> mkdir build-dir
> cd build-dir
> cmake -G "Visual Studio 15 2017 Win64" ..
> cmake --build . --config Release
> ctest -C Release --output-on-failure

3.4. インストール

現在のJuman++ version.2の設定ファイルは、半角スペースを取り扱うことができません
インストール先は、「C:\jumanpp」などパスに半角スペースが含まれないフォルダにしてください。
1. インストール先にファイルをコピー
- jumanpp-2.0.0-rc2\build-dir\src\jumandic\Release\jumanpp_v2.exe を C:\jumanppにコピーします。
- jumanpp-2.0.0-rc2\model\jumandic.jppmdl と jumandic.conf.inを C:\jumanpp\libexec\jumanppにコピーします。
2.設定ファイルの用意
C:\jumanpp\libexec\jumanpp\jumandic.conf.inをjumandic.confにリネームし、以下の内容を記載します。

jumandic.conf
--model=C:/jumanpp/libexec/jumanpp/jumandic.jppmdl
--rnn-nce-bias=5.62844432562
--rnn-unk-constant=-3.4748115191
--rnn-unk-length=-2.92994951022
--feature-weight-perceptron=1
--feature-weight-rnn=0.0176

3.5. Pathの設定

  1. PCのプロパティを開き、「システムの詳細設定」をクリックします。
  2. 開いたWindowの一番下にある「環境設定(N)」をクリックします。
  3. 変数Pathを選択し、「編集(E)」をクリックして、開いたWindowの「新規(N)」をクリックし、「C:\jumanpp」を追加して、OKします。 (注意:Juman++ Version.2のインストール先が異なる場合は、適宜修正してください。)

4. 動作確認

最後にTerminalからの動作確認をしておきます。
これはあくまで動作確認です。プログラムの性能の良し悪しは評価していません。

3.1. 入力ファイルの準備

適当な内容のテキストファイルを用意します。ここでは、以下のようにします。文字コードをUTF-8にすることを忘れないでください。

sample.txt
きしゃのきしゃがきしゃできしゃした。

3.2. コマンドラインでの実行

下記のコマンドを実行し、出力されたファイルが半角で区切られていれば動作確認完了です。

3.2.1. Mecab

> mecab sample.txt  -Owakati -o mecab_sample.txt

3.2.2. Juman++ version.2

> jumanpp_v2.exe -c C:\jumanpp\libexec\jumanpp\jumandic.conf sample.txt --segment -o jumanpp_v2_sample.txt

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5