MeCabとNattoを使った形態素解析入門
Bài đăng này đã không được cập nhật trong 9 năm
Rubyを使って形態素解析をしたいと思います。
自然言語処理について学んでおくのは良いことだと思ったので1年を通して関わっていこうかなと思っています。
今回はMeCabとNattoを利用します。
実行環境
- OS X Yosemite
- ruby 2.0.0p195
- natto 2.4.6
- mecab-0.996
- mecab-ipadic-2.7.0-20070801
MeCabとNattoはbrewとgemでインストールします。
brew install mecab mecab-ipadic
gem install natto
Mecabは有名な形態素解析器です。 rubyで書かれたコードを解釈してMeCabの関数を呼び出すのがNattoの役割です。
NattoはMeCabライブラリの場所を知らないので、MECAB_PATHという環境変数を利用してパスを通します。
OS Xでは以下のようにします。
export MECAB_PATH=/usr/local/Cellar/mecab/0.996/lib/libmecab.dylib
これで準備が整いましたので実際に動かしてみます。test.rbを作ってみました。
require 'natto'
nm=Natto::MeCab.new
puts nm.parse('僕の名前は三城です')
自己紹介をパースします。
ruby test.rb
実行結果です。
僕 名詞,代名詞,一般,*,*,*,僕,ボク,ボク
の 助詞,連体化,*,*,*,*,の,ノ,ノ
名前 名詞,一般,*,*,*,*,名前,ナマエ,ナマエ
は 助詞,係助詞,*,*,*,*,は,ハ,ワ
三城 名詞,固有名詞,組織,*,*,*,三城,ミキ,ミキ
です 助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
EOS
うまく解析されました。 ひとまず今日のところはRubyからMeCabを利用できたので良しとします。 これから何ができるのか探りながら触っていきたいです。
All rights reserved