HaskellとMeCabで長門(その2)

精度改善のために

とりあえずMeCabの出力を使って品詞が名詞である単語のみをフィルタした状態で訓練するように修正しました。

結果

まず全エントリの3つの文を。
f:id:haru2036:20140111020759p:plain
f:id:haru2036:20140111020807p:plain
f:id:haru2036:20140111020812p:plain

結果としては残念なことに全部艦これになってる……

考察

長門有希の文章に関しては、「戦艦と間違われやすそうなやつ」の「戦艦」の1語の影響で、他の2つのクラスの尤度が上がってしまったことが原因だと思います。
ふつうの戦艦に関しては、そもそもが艦これの方の説明文と同じような単語がたくさん出てくるのでそもそも判別が難しいのではないかと。

まとめ

実を言うと他の文章に関してもそれなりに試したものの、ちゃんとデータをとってなかったので暇な時にいろいろ試してみようと思ってます。
ただ、個人的な感触(含プラシーボ)としては、何故か長門有希に間違われまくっていた文章が正常に艦これだったり戦艦だったりになるようにはなったイメージです。

ちょっと残念だったこと

HaskellはMaybeとかそこら辺の"失敗を明示的に表現する"(個人的なイメージ、間違ってたらおしえて)型があるにも関わらずList操作関連のheadやら!!やらで空リストだったりそのインデックスが対象のListになかったりするとExceptionが発生するの、非常に残念だと思いました。(もっといい方法あるかもしれないけどそのせいでわざわざif使ってチェックしてしまった)