言語処理100本ノック 2015 第5章 45

言語処理100本ノック 2015」の「第5章: 係り受け解析」、45。
下の記事の続きです。

「言語処理100本ノック 2015」の「第5章: 係り受け解析」、40〜44。 夏目漱石の小説『吾輩は猫である』の文章(neko....

ここまでは課題5個ごとに記事にしていたのですが、5個単位だと長くなってきているので、今回は1つだけで記事にしてみます。

45. 動詞の格パターンの抽出

今回用いている文章をコーパスと見なし,日本語の述語が取りうる格を調査したい. 動詞を述語,動詞に係っている文節の助詞を格と考え,述語と格をタブ区切り形式で出力せよ. ただし,出力は以下の仕様を満たすようにせよ.

  • 動詞を含む文節において,最左の動詞の基本形を述語とする
  • 述語に係る助詞を格とする
  • 述語に係る助詞(文節)が複数あるときは,すべての助詞をスペース区切りで辞書順に並べる

「吾輩はここで始めて人間というものを見た」という例文(neko.txt.cabochaの8文目)を考える. この文は「始める」と「見る」の2つの動詞を含み,「始める」に係る文節は「ここで」,「見る」に係る文節は「吾輩は」と「ものを」と解析された場合は,次のような出力になるはずである.

このプログラムの出力をファイルに保存し,以下の事項をUNIXコマンドを用いて確認せよ.

  • コーパス中で頻出する述語と格パターンの組み合わせ
  • 「する」「見る」「与える」という動詞の格パターン(コーパス中で出現頻度の高い順に並べよ)

まず43の課題に対して、Chunkクラスにメソッド追加。助詞の有無取得、最左の動詞の基本形取得、助詞の基本形取得を以下のように追加。

main関数の方も変更。

これでの出力はこんな感じ。

「コーパス中で頻出する述語と格パターンの組み合わせ」に関しては以下のコマンドで実現可能。

出力はこんな感じ。

「『する』『見る』『与える』という動詞の格パターン(コーパス中で出現頻度の高い順に並べよ)」に関しては以下のようなコマンドで確認可能。

「する」の結果

「見る」の結果

「与える」の結果

スポンサーリンク

フォローする

スポンサーリンク