2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[環境構築] Python 2.7 で CaboCha を使用して係り受け解析

Last updated at Posted at 2016-12-20

Ubuntu 14.04 向け、日本語の自然文係り受け解析を行う CaboCha を Python 2.7 から使用できるようにするための環境構築をメモ書き。

まず CaboCha の下層で形態素解析を行う MeCab が先に必要。Ubuntu 14.04 であれば apt-get で MeCab 0.996 をインストールできる。

$ sudo apt-get install build-essential mecab libmecab-dev mecab-ipadic mecab-ipadic-utf8 python-mecab
$ mecab --version
mecab of 0.996
$ mecab-config --version
0.996
$ mecab
すもももももももものうち
すもも  名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も      助詞,係助詞,*,*,*,*,も,モ,モ
もも    名詞,一般,*,*,*,*,もも,モモ,モモ
も      助詞,係助詞,*,*,*,*,も,モ,モ
もも    名詞,一般,*,*,*,*,もも,モモ,モモ
の      助詞,連体化,*,*,*,*,の,ノ,ノ
うち    名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS

続いて CRF++-0.58.tar.gz のビルド。CaboCha のライブラリが参照するらしく先に CRF++ をインストールしておく必要がある。MeCab が 条件付き確率場 (CRF) を使用している影響で内部的に crf_learn コマンドを使用しているのか、コンパイル用のヘッダか lib が必要なのかな?

$ tar zxvf CRF++-0.58.tar.gz
$ cd CRF++-0.58/
$ ./configure
$ make
$ sudo make install
$ sudo ldconfig

公式サイトから cabocha-0.69.tar.gz をダウンロードして CaboCha 0.69 + cabocha-python をビルドする。

$ tar zxvf cabocha-0.69.tar.gz
$ cd cabocha-0.69
$ ./configure --with-mecab-config=`which mecab-config` --with-charset=UTF8
$ make
$ sudo make install
$ cabocha --version
cabocha of 0.69
$ cabocha
すもももももももものうち
すももも-D
    ももも---D
      ももの-D
          うち
EOS
$ cd python
$ python setup.py install  # sudo すると /usr の方に入るかも
$ python -c "import CaboCha; p=CaboCha.Parser(); print(p.parseToString('すもももももももものうち'))"
すももも-D
    ももも---D
      ももの-D
          うち
EOS

なお setup.py が Python 3 の構文制約に対応していないので Python 3 に言える場合は修正が必要 (検索すれば出てくる)。

以上。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?