LoginSignup
2
5

More than 5 years have passed since last update.

Cabocha環境をWindowsでDockerを使ってお手軽構築

Last updated at Posted at 2018-10-16

言語処理100本ノック 2015の第4章: 形態素解析を解くためにCabochaを使えるようにしました。係り受け解析に使います。

最初はWindows上に直に構築しようとしたのですが、64bitのWindowsでは挫折しました(可能かもしれませんが、時間をかけたくなかったのでDocker使いました)。Cabochaが32bitのMecabを参照してしまい、エラーとなるからです。
ちなみに他PCのWindows10環境ではWSL上にCabochaをインストールしました。WSLに直接インストールするよりDockerでpullした方が簡単ですね。

参考リンク

環境

種類 バージョン 内容
OS Windows8 64bit 自宅PCなのでWindows8.1です
Docker Docker Toolbox インストールは「Windows 8.1でDocker ToolboxをインストールしてDockerを動かす」参照

インストール手順

1. Docker HubからPull

Docker Hubのdockeryama/docker.cabochaを使わせていただきました。いろいろなRepositoryを精査して決めたわけではなく、環境構築を早く終わらせたかったので適当に選んでいます。もっと最適なRepositoryがあるかもしれません。
Docker Quickstart Terminalを起動してRepositoryをpullします。

docker pull dockeryama/docker.cabocha

イメージを確認します。

docker images

2. Docker containerを作成

Pullしたイメージ"dockeryama/docker.cabocha"から"cabocha"という名前のcontainerを作成し、container一覧を表示。

docker container create -it --name cabocha dockeryama/docker.cabocha
docker container ls -a

3. 確認

Windows10未満のDocker Quickstart Terminalでは日本語表示できないらしいのでファイルを使ってcabochaを動かします。

3.1. ファイルコピー

面倒ですが、ローカルPCのファイルをcontainerにコピーします。ファイル内には以下の文章を書いています。
「私は電車が好きです。」

docker container cp sample.txt cabocha:tmp

3.2. Cabocha実行による係り受け解析

まずはcontainer起動しbash実行。

docker container start cabocha
docker container exec -it cabocha bash

tmpフォルダに移動してcabochaを実行します。

cd tmp
cabocha <sample.txt> sample_out.txt

3.3. Cabocha解析結果確認

exitでcontainerを抜けます。

exit

DockerのファイルをローカルPCのtmpフォルダにコピーします。面倒くさい。

docker container cp cabocha:tmp/sample_out.txt /tmp

ファイルをWindows上で見ると、形態素解析され係り受けができていることを確認できます(例文が少し悪くてわかりにくい:sweat:)。
10.cabocha_result01.JPG

cabocha実行オプション

ちなみにcabocha実行時にf1オプションを付加すると詳しく結果が出てくれます。オプションについては「CaboCha/南瓜: Yet Another Japanese Dependency Structure Analyzer」を参照ください。

cabocha -f1 <sample.txt> sample_out_f1.txt

10.cabocha_result02.JPG

2
5
0

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
2
5