ここではMecabを用いた形態素解析について解説しています。
Mecabとは
Mecabは形態素解析の定番ツールの一つです。他には「Janome」というものもあります。
CRF(Conditional Random Fields)を用いたパラメータ推定による形態素解析エンジンです。
「Janome」と比較すると実行速度が速い特徴があります。
Mecabのインストール
DockerにおけるUbuntuでのインストール方法を紹介します。
#Mecabのインストール
$ apt-get install -y mecab libmecab-dev mecab-ipadic
$ apt-get install -y mecab-ipadic-utf8
#ライブラリのビルドに必要なツールのインストール
$ apt-get install -y libc6-dev build-essential
#Python用のライブラリをインストール
$ pip3 install mecab-python3
Mecabを用いた使用例
import sys
import MeCab
#1---オブジェクト生成
mecab = MeCab.Tagger("-Ochasen")
#2---形態素解析
m_out = mecab.parse("吾輩は猫である。名前はまだ無い。")
print(m_out)
上記がプログラムとなります。
それでは解説していきます。
#1---オブジェクト生成
mecab = MeCab.Tagger("-Ochasen")
1の部分では、Tagger というクラスのインスタンスを生成しています。「Ochasen」は出力モードを指定しています。
項目 | 内容 |
mecabrc | 引数なし |
-Ochasen | ChaSen互換 |
-Owakati | 分かち書きのみ出力 |
-Oyomi | 読みのみ出力 |
-Odump | 単語に含まれる全情報の出力 |
#2---形態素解析
m_out = mecab.parse("吾輩は猫である。名前はまだ無い。")
2の部分では、parse というメソッドを呼ぶことで, 解析結果を文字列として取得しています。
最後に結果を出力しています。
結果
上記が結果です。
きれいに解析されていることが分かります。
その他、Mecabを用いた使用例
項目 | 内容 |
Under construction . . . | Under construction . . . |