言語処理100本ノック 2015 第4章 30〜34


言語処理100本ノック 2015」の「第4章: 形態素解析」、30〜34。

30. 形態素解析結果の読み込み

形態素解析結果(neko.txt.mecab)を読み込むプログラムを実装せよ.ただし,各形態素は表層形(surface),基本形(base),品詞(pos),品詞細分類1(pos1)をキーとするマッピング型に格納し,1文を形態素(マッピング型)のリストとして表現せよ.第4章の残りの問題では,ここで作ったプログラムを活用せよ.

「マッピング型」というのがよくわからなかったものの、「をキーとする」という記載から辞書にしておけば良さそうなので、1文を辞書リストにするようにコードを書いてみました。

31. 動詞

動詞の表層形をすべて抽出せよ.

先程の「read_morphemes」を使用する形で以下のように書いてみました。

ポイントは「chain.from_iterable」使ってC#で言うところのSelectManyみたいなことをやれる、ということでしょうか。

32. 動詞の原形

動詞の原形をすべて抽出せよ.

先の課題のget_wordsを書き換えただけ。

33. サ変名詞

サ変接続の名詞をすべて抽出せよ.

これもget_wordsのみ書き換えで対応。

34. 「AのB」

2つの名詞が「の」で連結されている名詞句を抽出せよ.

これも基本的にget_words部分の書き換えですが、言語処理100本ノック 2015 第1章 05〜09で作ったngramを流用してみます。

スポンサーリンク

フォローする

スポンサーリンク