テキストマイニングするときに、日本語の場合はまず文章を名詞や形容詞などの品詞単位に分解する必要がある。それをすることを形態素解析と言い、形態素解析エンジンのひとつがMecab。Raspberry PiのPython3でMecabを利用して形態素解析をしてみる。
Raspberry PiとRaspbian Jessie。
MecabのインストールはMeCab: Yet Another Part-of-Speech and Morphological Analyzerの方法に従って行う。ここでは/etc/src/にソースファイルをダウンロードしてインストールする。
Mecabで使うIPA辞書をインストールする。こちらも/etc/src/にソースファイルをダウンロードするが、デフォルト文字コードはeucなので、configureのオプションでutf-8を指定する。
しかし、libmecab.so.2が開けないと言われてmakeが失敗する。
libmecab.so.2を探すと、存在はしている。
makeの共有ライブラリへの依存関係を表示。/lib/arm-linux-gnueabihf/にlibmecab.so.2があればうまくいきそう。
シンボリックリンクを作成。
再度makeするとエラーなく完了。
文章をかわち書き(語と語を空白で区切った書き方)してみる。まずは以下のコマンドを入力。
さらに「隣の客はよく柿食う客だ」と入力すると、以下のような結果が得られる。
MecabをPython3で利用するのに必要なラッパーをインストールする。
以下のコードを用意。
Python3で実行する。
環境
Raspberry PiとRaspbian Jessie。
Mecabのインストール
MecabのインストールはMeCab: Yet Another Part-of-Speech and Morphological Analyzerの方法に従って行う。ここでは/etc/src/にソースファイルをダウンロードしてインストールする。
IPA辞書のインストール
Mecabで使うIPA辞書をインストールする。こちらも/etc/src/にソースファイルをダウンロードするが、デフォルト文字コードはeucなので、configureのオプションでutf-8を指定する。
しかし、libmecab.so.2が開けないと言われてmakeが失敗する。
libmecab.so.2を探すと、存在はしている。
makeの共有ライブラリへの依存関係を表示。/lib/arm-linux-gnueabihf/にlibmecab.so.2があればうまくいきそう。
シンボリックリンクを作成。
再度makeするとエラーなく完了。
Mecabの動作確認
文章をかわち書き(語と語を空白で区切った書き方)してみる。まずは以下のコマンドを入力。
さらに「隣の客はよく柿食う客だ」と入力すると、以下のような結果が得られる。
Pythonラッパーのインストール
MecabをPython3で利用するのに必要なラッパーをインストールする。
Python3でMecabを使う
以下のコードを用意。
import MeCab m = MeCab.Tagger() print(m.parse('隣の客はよく柿食う客だ'))
Python3で実行する。
0 件のコメント:
コメントを投稿