22
MeCab/CabCha ににに にににににに 工工 工

MeCab/CabCha による 言語解析演習

Embed Size (px)

DESCRIPTION

MeCab/CabCha による 言語解析演習. 工藤 拓. あらすじ. コマンドプロンプトと慣れ親しむ MeCab を用いた形態素解析 CaboCha を用いた係り受け解析. コマンドプロンプトと慣れ親しむ. コマンドプロンプト スタート → アクセサリ → コマンドプロンプト コマンドを直接タイピングすることで対話的に処理を行う コマンドの例 cd ディレクトリ名 → ディレクトリに移動 dir → ファイル名一覧を取得 type ファイル名 → ファイル名の中身を表示 more ファイル名 → ファイル名の中身を表示 - PowerPoint PPT Presentation

Citation preview

Page 1: MeCab/CabCha による 言語解析演習

MeCab/CabCha による言語解析演習

工藤 拓

Page 2: MeCab/CabCha による 言語解析演習

あらすじ

コマンドプロンプトと慣れ親しむ MeCab を用いた形態素解析 CaboCha を用いた係り受け解析

Page 3: MeCab/CabCha による 言語解析演習

コマンドプロンプトと慣れ親しむ コマンドプロンプト

スタート → アクセサリ → コマンドプロンプト コマンドを直接タイピングすることで対話的に処理を行う

コマンドの例 cd ディレクトリ名 → ディレクトリに移動 dir → ファイル名一覧を取得 type ファイル名 → ファイル名の中身を表示 more ファイル名 → ファイル名の中身を表示 notepad ファイル名 → メモ帳でファイルを開く copy ファイル 1 ファイル 2 → ファイルのコピー rename ファイル 1 ファイル 2 → ファイル名変更 del ファイル名 → ファイルの削除 help → コマンドの一覧

Page 4: MeCab/CabCha による 言語解析演習

注意 Windows Vista ユーザへの注意:

本演習は文字コード SJIS のテキストを扱う Windows Vista のデフォルトの notepad.exe

( メモ帳 ) は、文字コード UTF-16 でファイルを編集する

notepad.exe を用いる際(ファイルを編集する際)には、 TeraPad もしくは sakura editor などのエディタを利用し、文字コード SJIS でファイルを保存するようにすること

Page 5: MeCab/CabCha による 言語解析演習

プログラムの停止

プログラムの緊急停止の方法 コントロールキーを押しながら「 c 」を押

すことで、プログラムを強制停止

Page 6: MeCab/CabCha による 言語解析演習

MeCab による形態素解析デスクトップ上の NAIST-Tutorial をダブルクリック

C:\NAIST>mecab私の名前は中野です私 名詞 , 代名詞 , 一般 ,*,*,*, 私 , ワタシ , ワタシの 助詞 , 連体化 ,*,*,*,*, の , ノ , ノ名前 名詞 , 一般 ,*,*,*,*, 名前 , ナマエ , ナマエは 助詞 , 係助詞 ,*,*,*,*, は , ハ , ワ中野 名詞 , 固有名詞 , 地域 , 一般 ,*,*, 中野 , ナカノ , ナカノです 助動詞 ,*,*,*, 特殊・デス , 基本形 , です , デス , デスEOS

コントロール + c で終了

Page 7: MeCab/CabCha による 言語解析演習

テキストファイルの解析C:\NAIST>notepad sample.txt

メモ帳が起動するので、適当な文を入力して保存

( 例 : 今日はいい天気です )

C:\NAIST>mecab sample.txt今日 名詞 , 副詞可能 ,*,*,*,*, 今日 , キョウ , キョーは 助詞 , 係助詞 ,*,*,*,*, は , ハ , ワいい 形容詞 , 自立 ,*,*, 形容詞・イイ , 基本形 , いい , イイ , イイ天気 名詞 , 一般 ,*,*,*,*, 天気 , テンキ , テンキです 助動詞 ,*,*,*, 特殊・デス , 基本形 , です , デス , デス。 記号 , 句点 ,*,*,*,*, 。 , 。 , 。EOS

ファイルの内容を変えて解析してみましょう

Page 8: MeCab/CabCha による 言語解析演習

結果をテキストファイルに出力C:\NAIST>mecab sample.txt –o result.txt

もしくは

C:\NAIST>mecab sample.txt > result.txt

ファイルの確認

C:\NAIST>notepad result.txt

mecab 解析したいファイル -o 結果ファイル

Page 9: MeCab/CabCha による 言語解析演習

三四郎 /こころの解析解析したいファイルの確認C:\NAIST>notepad sanshiro.txt C:\NAIST>notepad kokoro.txt

MeCab による解析C:\NAIST>mecab sanshiro.txt –o sanshiro-result.txtC:\NAIST>mecab kokoro.txt –o kokoro-result.txt

解析結果の確認C:\NAIST>notepad sanshiro-result.txtC:\NAIST>notepad korkoro-result.txt

Page 10: MeCab/CabCha による 言語解析演習

N-best 解析C:\NAIST>mecab -N2 sample.txt今日 名詞 , 副詞可能 ,*,*,*,*, 今日 , キョウ , キョーは 助詞 , 係助詞 ,*,*,*,*, は , ハ , ワいい 形容詞 , 自立 ,*,*, 形容詞・イイ , 基本形 , いい , イイ , イイ天気 名詞 , 一般 ,*,*,*,*, 天気 , テンキ , テンキです 助動詞 ,*,*,*, 特殊・デス , 基本形 , です , デス , デス。 記号 , 句点 ,*,*,*,*, 。 , 。 , 。EOS今日 名詞 , 副詞可能 ,*,*,*,*, 今日 , キョウ , キョーは 助詞 , 係助詞 ,*,*,*,*, は , ハ , ワいい 動詞 , 自立 ,*,*, 五段・ワ行促音便 , 連用形 , いう , イイ , イイ天気 名詞 , 一般 ,*,*,*,*, 天気 , テンキ , テンキです 助動詞 ,*,*,*, 特殊・デス , 基本形 , です , デス , デス。 記号 , 句点 ,*,*,*,*, 。 , 。 , 。EOS

入力をかえたり – N20 等数字を大きくしたり、結果をファイルに出力したりしてみましょう

Page 11: MeCab/CabCha による 言語解析演習

出力フォーマット変更C:\NAIST>mecab -Owakati sample.txt

今日 は いい 天気 です 。

C:\NAIST>mecab -Oyomi sample.txtキョウハイイテンキデス。

C:\NAIST>mecab -Ochasen sample.txt 今日 キョウ 今日 名詞 - 副詞可能

は ハ は 助詞 - 係助詞 いい イイ いい 形容詞 - 自立 形容詞・イイ 基本形 天気 テンキ 天気 名詞 - 一般 です デス です 助動詞 特殊・デス 基本形

。 。 。 記号 - 句点EOS

Page 12: MeCab/CabCha による 言語解析演習

出力フォーマット変更

C:\NAIST>mecab -F"%m|" sample.txt今日 | は | いい | 天気 | です | 。 |EOS

C:\NAIST>mecab -F"%m," sample.txt今日 , は , いい , 天気 , です , 。 ,EOS

C:\NAIST>mecab -F"%m(%f[0])" sample.txt今日 ( 名詞 ) は ( 助詞 ) いい ( 形容詞 ) 天気 ( 名詞 ) です ( 助動詞 ) 。

( 記号 )EOS

カスタムフォーマットのマクロの詳細はマニュアルをご覧ください

Page 13: MeCab/CabCha による 言語解析演習

辞書引きされた全単語を出力C:\NAIST>mecab -a sample.txt今日 名詞 , 副詞可能 ,*,*,*,*, 今日 , キョウ , キョー今 接頭詞 , 名詞接続 ,*,*,*,*, 今 , コン , コン今 名詞 , 固有名詞 , 地域 , 一般 ,*,*, 今 , イマ , イマ今 名詞 , 固有名詞 , 人名 , 姓 ,*,*, 今 , イマ , イマ今 名詞 , 副詞可能 ,*,*,*,*, 今 , イマ , イマ日 名詞 , 接尾 , 一般 ,*,*,*, 日 , ビ , ビ日 名詞 , 接尾 , 助数詞 ,*,*,*, 日 , ニチ , ニチ日 名詞 , 固有名詞 , 地域 , 国 ,*,*, 日 , ニチ , ニチ日 名詞 , 固有名詞 , 地域 , 一般 ,*,*, 日 , ヒ , ヒ日 名詞 , 非自立 , 副詞可能 ,*,*,*, 日 , ヒ , ヒ日 名詞 , 非自立 , 一般 ,*,*,*, 日 , ヒ , ヒ

Page 14: MeCab/CabCha による 言語解析演習

ソフト分かち書きC:\NAIST>mecab -l2 -a -F“%m %H %pP %pb\n” sample.txt今日 名詞 , 副詞可能 ,*,*,*,*, 今日 , キョウ , キョー 0.977144 *今 接頭詞 , 名詞接続 ,*,*,*,*, 今 , コン , コン 0.009195今 名詞 , 固有名詞 , 地域 , 一般 ,*,*, 今 , イマ , イマ 0.000087今 名詞 , 固有名詞 , 人名 , 姓 ,*,*, 今 , イマ , イマ 0.000129今 名詞 , 副詞可能 ,*,*,*,*, 今 , イマ , イマ 0.013446日 名詞 , 接尾 , 一般 ,*,*,*, 日 , ビ , ビ 0.007952日 名詞 , 接尾 , 助数詞 ,*,*,*, 日 , ニチ , ニチ 0.002709日 名詞 , 固有名詞 , 地域 , 国 ,*,*, 日 , ニチ , ニチ 0.001335日 名詞 , 固有名詞 , 地域 , 一般 ,*,*, 日 , ヒ , ヒ 0.000011日 名詞 , 非自立 , 副詞可能 ,*,*,*, 日 , ヒ , ヒ 0.001421..

%m: 単語 %H: 素性 , %pP 周辺確率 , %pb: 最適の時は *

Page 15: MeCab/CabCha による 言語解析演習

現在の辞書情報の表示C:\NAIST>mecab -Dfilename: C:\Program Files\MeCab\etc\..\dic\ipadic\sys.dicversion: 102charset: SHIFT-JIStype: 0size: 378914left size: 1316right size: 1316

378914 単語登録されていることがわかります。

Page 16: MeCab/CabCha による 言語解析演習

ユーザ辞書の作成c:\NAIST>notepad user.csv

メモ帳が起動するので、以下の単語を登録

辞書のコンパイル ( 最後の user.csv まで 1行で入力 )

C:\NAIST>mecab-dict-index -f SHIFT-JIS -t SHIFT_JIS –d “C:\Program Files\mecab\dic\ipadic” -u user.dic user.csv

reading user.csv ... 1emitting double-array: 100% |

###########################################|

done!

mecab_dict_index -f SHIFT-JIS –t SHIFT-JIS –d システム辞書があるディレクトリ – u 作成する辞書ファイル名 テキスト辞書ファイル名

ピラティス ,-1,-1,1000, 名詞 , 一般 ,*,*,*,*, ピラティス , ピラティス , ピラティス , ユーザ辞書

Page 17: MeCab/CabCha による 言語解析演習

ユーザ辞書の作成- ユーザ辞書を使って解析

C:\NAIST>mecab -u user.dicピラティス

ピラティス 名詞 , 一般 ,*,*,*,*, ピラティス , ピラティス , ピラティス , ユーザ辞書

EOS

- ユーザ辞書無し辞書が無い場合

C:\NAIST>mecabピラティス

ピラティス 名詞 , 固有名詞 ,組織 ,*,*,*,*EOS

Page 18: MeCab/CabCha による 言語解析演習

ユーザ辞書情報の表示C:\NAIST>mecab -u user.dic -Dfilename: C:\Program Files\MeCab\etc\..\dic\ipadic\sys.dicversion: 102charset: SHIFT-JIStype: 0size: 378914left size: 1316right size: 1316

filename: user.dicversion: 102charset: SHIFT_JIStype: 1size: 1left size: 1316right size: 1316

Page 19: MeCab/CabCha による 言語解析演習

ユーザ辞書情報をデフォルトで使う

C:\NAIST>notepad c:\Program Files\mecab\dic\ipadic\dicrc

メモ帳が起動するので、辞書の設定ファイルに

userdic = c:\NAIST\user.dic

を追加

-u を指定しなくても解析可能になる

C:\NAIST>mecabピラティス

ピラティス 名詞 , 一般 ,*,*,*,*, ピラティス , ピラティス , ピラティス , ユーザ辞書EOS

Page 20: MeCab/CabCha による 言語解析演習

CaboCha による係り受け解析デスクトップ上の NAIST-Tutorial をダブルクリック

C:\NAIST>cabocha太郎は次郎が持っている本を花子に渡した。 <PERSON>太郎 </PERSON> は ---------D <PERSON>次郎 </PERSON> が -D | 持っている -D | 本を -D | <PERSON>花子</PERSON> に -D 渡した。EOS

コントロール + c で終了

Page 21: MeCab/CabCha による 言語解析演習

テキストファイルの解析C:\NAIST>notepad sample.txt

メモ帳が起動するので、適当な文を入力して保存

( 例 :太郎は京都で買った本を次郎に渡した。 )

C:\NAIST>cabocha sample.txt <PERSON>太郎 </PERSON> は ---D <LOCATION>京都</LOCATION> で -D 買った -D 本を -D 次郎に -D 渡した。EOS

ファイルの内容を変えて解析してみましょう

Page 22: MeCab/CabCha による 言語解析演習

計算機に扱いやすいフォーマット

C:\NAIST>cabocha -f1 sample.txt* 0 2D 1/1 0.030901太郎 名詞 , 固有名詞 , 人名 , 名 ,*,*,太郎 , タロウ , タロー B-PERSONは 助詞 , 係助詞 ,*,*,*,*, は , ハ , ワ O* 1 2D 1/1 2.218163京都 名詞 , 固有名詞 , 地域 , 一般 ,*,*,京都 , キョウト , キョート B-LOCATIONで 助詞 ,格助詞 , 一般 ,*,*,*, で , デ , デ O* 2 3D 1/1 2.060807買っ 動詞 , 自立 ,*,*, 五段・ワ行促音便 , 連用タ接続 ,買う , カッ , カッ Oた 助動詞 ,*,*,*, 特殊・タ , 基本形 , た , タ , タ O…

ファイルの内容を変えて解析してみましょう