AIによる感情認識について説明します

皆さん、「AI」という単語を耳にすることが最近増えてきたのではないかと思います。しかし、その仕組みについて知りたいと感じても、「私には難しそう...」と敬遠してしまっている方も多いのではないでしょうか?

ここでは、AIの研究分野である「感情認識」について、説明していきたいと思います!

大まかな仕組み

AIを構成する重要な要素として、ご存知の方もおられると思いますが、「CNN」というものがあります。

CNNは、ディープラーニングで用いられるネットワークの中で最も有名なものです。元々は画像認識の分野で大きな成果を収めたネットワークだったのですが、近頃はその応用が音声の方面でも進んできています。

そこに、人の発話音声と感情ラベルが紐付けられたデータセットを入力させることで学習を行います。

感情認識

AIに感情を認識させることができればそれはとても素晴らしいことです。

しかし、一口に「感情」と言っても、それをどのようにしてコンピューターと結びつけるかを考えるのはなかなか難しいものです。

AIによる感情認識は、マルチモーダルで行われることが多いです。

モーダルというのは、言ってしまえば人間の五感のことを指していると考えて良いでしょう。それがマルチになる、すなわち、2つ以上の感覚器官からの入力を併用するという意味になります。

代表的な組み合わせは、視覚と聴覚でしょう。それに対応するように、コンピュータは入力デバイスとして、カメラ、マイクを利用することが出来ます。

弊社では、音と言語によるマルチモーダル深層学習を行っております。

「音と言語となら、言語も音で伝わるものだから違いが良く分からない!」

と思ってしまう人もいらっしゃるかもしれませんが、言語の音韻、つまり、音波自体と、その意味内容は異なるものですよね?

例えばですが、この記事を読んでいらっしゃる方は、日本語を母語とする人がほぼ全員だと思われます。

そこで、人が荒げた声で電話してきたとします。

・日本語で「バカ」

・英語で「stupid」

同じようなトーンで話している場合、日本語で相手が怒っていそうなのが分かるのは当然ですが、もしあなたが英語を理解できないとしても、英語で喋っている相手の怒りのニュアンスはなんとなく伝わってくると思います。

この時点で、意味内容が分からなくても音の情報だけで感情が伝わってしまうものだと分かるでしょうか?

しかし、これも当然の話ですが、日本語で言われた場合のほうが怒っているというニュアンスはより直接的に感じられるでしょう。

よって、この部分が言語情報に依存していると考える事が出来ます。

このような2つの異なる情報を、ディープラーニングによって学習させているのなら、それはマルチモーダルと言えるでしょう。実際に、音のトーンのみを学習させるようなネットワークよりも、音と自然言語処理(=意味内容を噛み砕く)を組み合わせたようなネットワークの方がより精度が高くなることが知られています。

従来、日本語でのAIの研究が進んでいなかったためか、公開されている日本語のデータセットの量が限られており、このような活用は進んでいなかったようです。

弊社では、その問題に対処するため、ネット上に広がる日本語テキストから独自にデータセットを作成し、学習を行いました。それにより、感情認識のクラス分類で75.5%の精度を達成し、音単体の学習よりも精度を10%ほど上げることに成功しました。