日本語のテキストデータを解析する際に、係り受けを抽出したいときがある。係り受けを行うことができるフリーのソフトウェアの一つにCaboChaがある。CaboChaは, Support Vector Machinesに基づく日本語係り受け解析器である。

ここでは、CaboChaをインストールする手順を示した後で、CaboChaを使った簡単な係り受けを見てみる。
CaboChaのインストールの手順はコンパイル環境を構築して、mecabとCRF++をインストールした後に行う。

コンパイル環境

mecabはaptからインストールできるが、CRF++とCaboChaはソースコードからコンパイルを行う必要があるため、以下のコマンドを実行しておく。


$ sudo apt-get install build-essential

mecabのインストール

mecabのインストールはaptから行うことができるので、ここではaptから行う。また、辞書はIPAのUTF8を使うことにする。


$ sudo apt-get install mecab libmecab-dev mecab-ipadic mecab-ipadic-utf8

CRF++のインストール

次に、CRF++をインストールする。
crfpp – CRF++: Yet Another CRF toolkit – Google Project Hostingより「CRF++-0.58.tar.gz」をダウンロードしておく。


# ファイルを解凍する
$ tar zxvf CRF++-0.58.tar.gz

# カレントディレクトリの移動
$ cd CRF++-0.58

CRF++のインストールは以下のコマンドを実行する。


$ ./configure
$ make
$ sudo make install

インストールされたライブラリは「/usr/local/lib/」に配置されるため、パスを通す必要がある。

Ubuntuでは、「/etc/ld.so.conf.d」ディレクトリ内のファイル内に「/usr/local/lib」の記述があればよい。
記述がない場合は、適当なファイルを作成し「/usr/local/lib」を記述および保存して、以下のコマンドを実行する。


# キャッシュの再作成
$ sudo ldconfig

cabochaのインストール

cabocha – Yet Another Japanese Dependency Structure Analyzer – Google Project Hostingより「cabocha-0.68.tar.bz2」をダウンロードしておく。


# ファイルを解凍する
$ bzip2 -dc cabocha-0.68.tar.bz2 | tar xvf -

# カレントディレクトリの移動
$ cd cabocha-0.68
$ make check
$ sudo make install

cabochaの確認

簡易的なツリー表示で実行してみる。


$ cabocha
太郎は花子が読んでいる本を次郎に渡した
    太郎は---------D
      花子が-D     |
    読んでいる-D   |
            本を---D
            次郎に-D
              渡した
EOS

計算機に処理しやすいフォーマットで実行してみる。


$ cabocha -f1
太郎は花子が読んでいる本を次郎に渡した
* 0 5D 0/1 -0.742125
太郎	名詞,固有名詞,人名,名,*,*,太郎,タロウ,タロー
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
* 1 2D 0/1 1.700175
花子	名詞,固有名詞,人名,名,*,*,花子,ハナコ,ハナコ
が	助詞,格助詞,一般,*,*,*,が,ガ,ガ
* 2 3D 0/2 1.825019
読ん	動詞,自立,*,*,五段・マ行,連用タ接続,読む,ヨン,ヨン
で	助詞,接続助詞,*,*,*,*,で,デ,デ
いる	動詞,非自立,*,*,一段,基本形,いる,イル,イル
* 3 5D 0/1 -0.742125
本	名詞,一般,*,*,*,*,本,ホン,ホン
を	助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
* 4 5D 1/2 -0.742125
次	名詞,一般,*,*,*,*,次,ツギ,ツギ
郎	名詞,一般,*,*,*,*,郎,ロウ,ロー
に	助詞,格助詞,一般,*,*,*,に,ニ,ニ
* 5 -1D 0/1 0.000000
渡し	動詞,自立,*,*,五段・サ行,連用形,渡す,ワタシ,ワタシ
た	助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
EOS

関連する記事

  • アンケートの自由記述からニーズを抽出する方法アンケートの自由記述からニーズを抽出する方法 アンケートは様々な場面で有効活用されていると思うが、特に、「年齢」などの数量回答や、「男性・女性」、「満足度の5段階評価」などの単一回答、「購入動機を3つまで回答してください」などの複数回答は、集計や分析がしやすいため、重点的に活用していることだろう。 回答者の立場で考えると、数量回答・単一回答・複数回答は、設問者からの問いかけに対し、返答があらかじめ用意されていること […]
  • R 文字列ベクトルで文字列を指定して要素を削除する方法R 文字列ベクトルで文字列を指定して要素を削除する方法 Rの文字列ベクトルで、文字列を指定して要素を削除する方法をお伝えする。 通常、ベクトルの要素を削除する場合は、次のように添字にマイナスを付加して削除する。 > s # 1番目の要素を削除 > s[-1] [1] "猫である。" "名前は" "まだ無い。" > # 1番目から2番目の要素を削除 > s[-1:-2] [1] "名前は" […]
  • 顧客満足度調査から重要な改善点を導く方法顧客満足度調査から重要な改善点を導く方法 顧客満足度調査とは、顧客に対して提供している商品やサービスに対して、顧客がどれだけ満足しているか、または不満を持っているか、満足している点はどこか、不満を持っている点はどこかなどをアンケートなどにより調査することだ。 顧客満足度調査の結果は、各項目ごとに平均値を出したり、棒グラフやレーダーチャートにすることが多い。 もし、あなたが顧客満足度調査の結果を見て、「ある […]
  • matplotlibで箱ひげ図を表示する方法matplotlibで箱ひげ図を表示する方法 Python3でmatplotlibを用いて、箱ひげ図を表示する方法をお伝えする。 Ubuntu14.04環境で動作することを確認している。 一つ注意点として、日本語に対応させるために、ここでは「IPAexGothic」を用いている。 import matplotlib as mpl import matplotlib.pyplot as […]
  • Ubuntu20.04にRをインストールする方法Ubuntu20.04にRをインストールする方法 Ubuntu 20.04 LTSにRをインストールする方法についてお伝えします。 作業は端末上で行うため、端末を起動しておきます(ショートカットキー:Ctrl+Alt+t)。 Ubuntuのバージョンを確認 Ubuntuのバージョンを確認するために、以下のコマンドを実行します。 Ubuntu 20.04と表記されていることを確認します。 $ cat […]
Ubuntuに日本語係り受け解析器CaboChaをインストールする手順

Ubuntuに日本語係り受け解析器CaboChaをインストールする手順」への1件のフィードバック

コメントは受け付けていません。