Plutchikの感情の輪に基づいた感情推定モデルによる言語的返答システムの構築
【背景と目的】
我々が日常において他者やシステムと行う対話は、タスク指向型対話(ある目的を達成させる為の対話)と非タスク指向型対話(明確な目的を持たない対話)に分けることができる。従来の人ーシステム間の対話は、この内前者が一般的であった。しかし近年、ロボットやエージェントを人間社会に参加させる試みが盛んに行われており、今後非タスク指向型対話のような、システムとの対話そのものが目的となるようなケースが多々出現すると予測される。
そこで本プロジェクトでは、非タスク指向型対話システムの一例を、感情推定からのアプローチによって実現させることを目的とする。
【概要】
文章の係り受け解析・データベース照合によって感情を推定し、感情に応じた返答を出力する。
【手法】
(1)感情モデルの構築
Plutchikの感情の輪を基に感情モデルを構築した。近い性質を持つ感情同士が隣り合うように円状に配置されており、計16感情の極座標表現が可能である。この際、絶対値を推定結果への信頼度、角度を感情の種類として取り扱っている。実質、角度の1次元のみで感情を表現できる他に、180度反転させることで反対の感情を示せるという利点がある。
(2)データベースを利用した感情推定
感情推定は、まず係り受け解析によって文章中の名詞+動詞のセットと否定語を抽出する。続いて、データベースと単語のセットを照らし合わせ、角度を取得する。ヒットしない場合にはワイルドカードを適用する。最後に、取得した角度から16感情のどれに該当するかを確認する。
データベースは、コーパスを利用した大規模低精度な方法と、手入力による小規模高精度な方法を用いて作成した。名詞+動詞のセットに対して、「信頼度r」「角度rad」「角度の標準偏差」「単語のセットの出現頻度」を与えている。
(4)返答方法
角度から求めた推定感情の他に、信頼度と標準偏差も返答の指標として用いる。信頼度が低い、もしくは角度の標準偏差が大きいとき、感情の推定結果への確信度が低いと言える。そこで、推定結果への確信度が低い場合には、抽象度の高い曖昧な返答を行うようにする。
またこれに加えて、簡単な挨拶や相槌も用意し、全76通りの返答パターンを実装した。
【実験】※プログラムに誤りがあったため、以降の内容は信憑性に欠ける。
本システムの返答の精度について、評価実験を行った。入力と返答結果を100パターン用意し、それぞれ三段階で適切か否かの評価をしてもらう。結果は以下の表を参照。
また、内訳は標準偏差小・中・高、信頼度小がそれぞれ25パターンずつ用意されており、各分類におけるアンケート結果は以下を参照。
結果として、違和感のない返答は55%、許容できる範囲まで含めると73%の精度を得た。また、返答の指標に信頼度、標準偏差を利用することによって、確信度の低い推定結果に対しても、それぞれ同程度の精度で返答が行えていることが確認できる。
【結論】
許容できる範囲内であれば、7割程度の精度を得ることできた。今後の課題としては、他の品詞も利用したより高精度な感情推定方法の考案と、返答内容が抽象度毎に適切に設定されているかの検討が挙げられる。
【最後に】
プログラムの誤りに気付いたのは発表直前であり、実験のやり直しを行うことは不可能であった。そのため、当時は酷く忸怩たる思いに駆られた。
しかし短い期間ではあったものの、一つの研究開発を独力で完遂したことにより、研究への取り組み方について多くのことを学ぶことができた。特に、ソフトウェア関係であればどれほどデバッグ作業が重要であるか、身を以て学習した。