mecab+単語感情極性対応表で文章の感情分析

画像は高校の自由研究みたない発表で作ったレジュメ()
これ読んでもらえばだいたい分かるかも → pdf版
夏休み最後の2日でやったから初歩的なことしかしてないけど、これから自然言語処理を始める人に参考になれば
cabochaとかmecab辞書とか日本語評価極性辞書とかword2vecとか使ってない基本的な処理しかしてません

レジュメにほとんどのこと書いてるんでこの記事ではプログラムの解説をします
単語感情極性対応表 → http://www.lr.pi.titech.ac.jp/~takamura/pndic_ja.html

以下が今回のプログラムです

処理の流れ
単語感情極性対応表をpythonのリストに読み込む
mecabで文章を品詞分解する
品詞別に対応表を照らしあわせていく
ポイントを平均を算出

pythonでphpみたいな二次元配列どうやるのか分からなかったんで汚いコードです
単語感情極性対応表はセミコロンで区切られているのでsplitで分解してリストに入れます
対応表を照らしあわせた後は合計ポイントをポイントがある単語数で割って平均スコアを算出します

実際に動かしてみて単語感情極性対応表が不正確なことが分かりました
感情に関係のない名詞がネガティブと判定されたりしてしまいます
そこでポイントの絶対値が0.8以下の単語は無視するなどの処理を入れると少し精度が上がると思います

自然言語処理は先人たちのソフトウェア資産を活用すれば意外と簡単に実装できるので面白いです
最後に面白そうな自然言語処理の研究を紹介します
Word2Vecを用いた顔文字の感情分類