見出し画像

AIが感情を理解する、あるいは感受性の獲得 - 言語からの Sentiment Analysis, 非言語からの Affective Computing

本記事では、AI が人の感情を理解する手法について書きます。



導入

AI(人工知能)とは一般的に「人間の知的活動を代替・模倣するソフトウエア・ハードウェアの処理」という風に捉えることができますが、これを「弱いAI」と呼ぶことがあります。一方、「強いAI」とは、「適切にプログラムされたコンピューターは心となる」(Seale,1980)というものです。「AIは知的活動の模倣」「AIは心そのものになる」と、AIについての主張の強弱があります。AIが人の感情を理解するというのは、この「弱いAI」から「強いAI」へ橋渡しするための重要なステップかもしれません。


コンピューターによる感受性の獲得

これまでに、コンピュータービジョンについてと、音声認識について、それぞれ記事を書きました。


それぞれの領域における、人間がコンピューターに何が見えているか、何が聞こえているかを教えるという研究は、多くの研究者・技術者たちの貢献に支えられて長足の進歩を遂げました。現代、コンピュータは目や耳を獲得し、世界の有りようを認識しています。我々人とコンピューターの関係は新しいステージに入りました。やがてコンピューター、つまりAIは物理的な情報解析としての視覚や聴覚による認識だけではなく、人が今どう感じているか、今どういう気持ちなのかを理解し、それに対して配慮する感受性を獲得するでしょう。


感情とは

気持ち、感情、またそれに関連した様々な知性的かつ情緒的要素は、人間が持つ際立った特徴の一つでもあります。あるときに喜び、あるときに、悲しみ、怒りを感じ、哀れみを覚え、人や生き物に共感を持つ。人間はその感情を伝える手段として言語を用い、表情にあらわし、多彩なコミュニケーションを行ってきました。
感情を伝える手段として、言語のもつウェイトは大変大きいのですが、言葉やそれによる表現のみでの伝達は時に不十分です。ある言語で表現される感情の機微に当たる言葉が、他の言語ではそれに該当する表現がないようなケースがあります。例えば、日本語の「もったいない」はよく引用される言葉ですね。「もったいない」の気持ち、精神を共有し、表現するために、国際的にもそのまま “Mottainai” として使われていたりします。他にも「もののあわれ」も、「森羅万象の非永続性に対する気づきとそれに寄り添う感情」みたいな概念をあらわしている言葉ですが、英語に置き換えるのが難しい言葉の一つです。
こういう説明ができます。つまり、感情とは個人の気持ちだけでなく、文化的背景や社会的コンテキストも含む、広がりと深さのある何かなのです。それゆえ複雑であり、言葉でストレートに表現し、そして解釈することが難しいときがあります。


ビジネスにおいての感情を理解する大切さ

ビジネスにおいても感情を理解するということはとても大事です。顧客や従業員の気持ちや感情を理解することで、自分たちが正しくサービスを提供しているのか、会社のオペレーションを行えているのかを測る助けになります。

例えば、カスタマーサポート部門に寄せられる問い合わせや評判、Twitterやブログやレビューサイトの商品レビューコメントを分析することで、自社製品へのフィードバックを適切に把握することができ、プロダクトを改善したり、顧客体験を向上させたりすることができます。ですが、インターネットを通して得ることができるお客様の声や意見は、ときにあまりにも大量なデータの奔流となってしまい、人手で一つ一つそのコメントを分析していくことは不可能です。だからこそ、感情を解析していくことにおいてAI を使うことは重要な助けとなります。

では、AI に感情を解析、理解させていくにはどのような手法があり得るでしょうか。大きく分けて2つの方向性があります。一つは言語情報からのアプローチ。もう一つは非言語情報からのアプローチです。


NLP的なアプローチ

まず一つ目として、言語からの感情の理解があります。自然言語処理(NLP)の方法を用いる、Sentiment Analysis、評判解析と呼ばれる分野です。
様々なテキストデータから、記載されている内容は、客観的な情報なのか、主観的な意見なのかを識別し、主観的な部分に関しては、その感情的意味合いを判定します。例えば、「嬉しい」のか「悲しい」のかを分類したり、「満足」なのか「不満」なのかを判定したりする等です。場合によっては細かく分類を定め、喜怒哀楽のどれに当てはまるか表現を割り振っていくこともあるでしょう。例えば、ユーザーローカル社が提供する感情認識AIは、入力されたテキスト情報から感情を、「喜び」、「好き」、「悲しみ」、「恐れ」、「怒り」の5項目で評価し、レーダーチャートを提示します。

ユーザーの声を分析するにあたっては、ユーザーの自社サービスや製品に対する見解が良いのか(ポジティブ)、悪いのか(ネガティブ)を判定していくことが最初の入口です。そのためには、どのような手法がありうるのか。基本的には、二つの手法に大別されます。

最初の一つは、Lexicon Based Approach あるいは極性辞書による判定です。Lexicon とは辞書のことを指します。ここでは、単語がポジティブな意味合いなのかネガティブな意味合いなのかという極性の度合い(極性値といいます)が登録された辞書(極性辞書)を用い、それに照らし合わせることで判定をします。
与えられたテキストを、節や語等の小さい塊に分割し(トークナイゼーション)、そして出現しているそれぞれの語をカウントします。集計された結果は、Bag of Words モデルと言われます。次に、極性辞書を用い、それぞれの語に対する感情の極性値を把握します。一度それぞれの極性値がわかってしまえば、文章における全体の極性を計算することができます。

極性辞書ですが、日本語のものとしては、東北大学 乾・岡崎研究室の日本語評価極性辞書が有名です。これらをベースに、行いたいコメント分析がどの分野・業界のものかというドメイン特性も踏まえ、辞書を必要があれば修正し、極性判定を行っていきます。

もう一つの手法は機械学習です。通常は、極性(ポジティブやネガティブ)や感情評価のラベルがつけられたテキスト、データを大量にあつめ、トレーニングを行うことで判定機を作っていくことになります。
入手可能な極性辞書をそのまま利用する辞書ベースの手法の方が、もちろん簡単です。ですが、辞書ベースのアプローチだと、一見ポジティブな単語を多く並べつつも、少ないネガティブな言い回しによって全体として否定的意見を述べるというような意見表明について適切に解釈できないということがおこります。それにより、褒め殺しなどの相手を蔑む皮肉や風刺も、ポジティブに判定してしまう脆弱性をもちえます。

そのようなときは、機械学習の中でも、構造学習的なテクニックを使うというのは一つのオプションです。例えば、個々の単語ごとにバラバラにポジティブかネガティブかを推定するよりも、文章にあるそれぞれの語の極性を、文章全体の構成を意識しながら一緒に考えて一括出力し、それをもって全体を判断した方が精度が高くなるケースもあります。そういう時に使うのが構造学習です。構造化SVMや、条件付き確率場(CRF)等がよく使われます。

構造学習はサンプルデータのある教師ありが基本ですが、教師なし・半教師の手法もあります。更にCRFでは、データを推定して分類するだけでなく、あるラベルに分類されるかどうかの確率値も算出し、より高度な推定を可能にします。(それもあってか、CRFは形態素解析や固有表現抽出によく使われます。)実際のECでの使用例としては、楽天技術研究所で商品レビュー文からレビューにおける評価観点やその評価を抽出するために、トピックモデルの手法であるLDAに構造学習の手法であるCRFを組み合わせて適用したりしています。

更に昨今は、RNN、LSTM 等、現代的な深層学習手法がよく使われます。これらであれば多層につまれたレイヤーの中で個々の具体的な言葉の意味だけではなく、文章の流れによる抽象的なニュアンスも獲得しているので、文脈や反意も含めたポジティブなのかネガティブなのかの確信度を導出できます。それにより、よりロバストな判定機をつくることができます。


非言語的なアプローチ

AIが感情を理解するための、他のアプローチとして、言語以外からの感情の理解、具体的には、表情や声色等からの感情の識別があります。Affective Computing と言われる領域です。

Affective Computing はインターネットの普及によってマルチメディアデータ獲得のコストが下がり、動画像に対する機械学習の適用が広がってきたことにより開拓されてきた領域といえます。ラベルのついたトレーニングデータを用いてモデルを学習させていき、音声や画像からの感情の識別を実現していきます。

画像1

Deep Learning for Emotion Recognition on Small Datasets Using Transfer Learning http://vintage.winklerbros.net/Publications/emotiw2015.pdf より


画像ベースの Affective Computing ソリューションでは、主に顔表情の認識によって感情を識別します。一般的なやり方としては、顔画像を背景から抽出し、顔のパーツ(目、鼻、口など)の位置を推定。そして、パーツの位置情報に基づき、顔の向き・角度も考慮しつつ、顔の表情の正確な分類を行うことになります。

画像2

Image by Imperial College London Intelligent Behavior Understanding Group

もちろん、顔表情だけでなく、心理学の知見を応用しながら、姿勢やジェスチャーから心理状態を推定することもよく行われます。

また、音声、声色から心理状態を推定する技術の研究も進んでいます。ここにおいても機械学習、特に深層学習のCNN、RNNを用い、分析する方法が盛んです。

更には、画像・音声だけでなく、生体信号をセンシングすることで感情を推定しようというアプローチもあります。MITが発表した「EQ-Radio」と呼ばれるデバイスは、無線信号を人に向けて発信して心拍数を測定。感情を推定します。


ユースケース

このような非言語データからの感情の識別技術には、どのようなビジネス上のユースケースがありうるのでしょうか。

まず最初にマーケティングやパーソナライズサービスでの活用というのが考えられます。例えば、以下の楽天技術研究所のソリューションにおいては、レストランの店舗等において、来店客一人ひとりにおすすめのメニューを提示するのに、心理状態の推定も活用し精度を高めるという試みをしています。


他には、カスタマーサポートセンターにおける自社のカスタマーサービスや問い合わせ対応の効果測定のために、顧客との膨大な通話記録を解析し、感情レスポンスを分析する活用はありうるでしょう。HR領域での、従業員のコンディション把握と、その対応というユースケースもありえます。教育領域において、教材コンテンツに対する反応を分析することで、学習者のつまずきや集中力の途切れを把握し、教材の適切な繰り返しや更にわかりやすいコンテンツの提示など、よりインタラクティブなラーニングを実現することができるでしょう。
意外なところでは、心理状態の把握による不正検知という活用もあります。InsurTech企業の Lemonade は、保険加入の手続きや保険金支払い請求をスマホで完結させるサービスを提供しています。保険金支払い請求の際にカスタマーは自分のスマホに向かって請求内容を説明するのですが、顔表情から虚偽の内容かどうかを見抜くソリューションを導入しているとしており、Affective Computing の事例の一つといえます。


まとめ

以上、AIに感情を解析、理解させていく大きな2つの方向性について概観しました。今後は、様々な自動化が前提となっているプロダクトやサービスで、この感情の理解を行う機能の活用は試されていくでしょう。またAIによって様々なデータを分析し、今まで拾えきれなかった人々のレスポンスをビジネスの改善にいかしていくことができるでしょう。そして、人が介入しないことの無機質さや、気持ちが理解されないもどかしさといったものは徐々に解消されていくかもしれません。

コンピューターは、そしてAIは、目や耳を獲得し、そして、我々の気持ちを理解する仕組みも持とうとしています。感受性を獲得しようとしています。AI が我々や世界を物理的な情報として識別するだけでなく、その気持ち、感情、ときには「もったいない」や「もののあわれ」にも思い遣ることができるようになったら、より我々に寄り添う人間のパートナーとしての AI の誕生の日も近いのかもしれません。


補足:バイアスについて

様々なユースケースが開拓されている反面、言語・非言語問わず、感情識別を行っていくAI技術の実用化は危険だという意見が、AI研究者の中においても出てきています。使っている言葉の表現、表情や音声の心理状態を類型化してラベリングしたモデルを構築することは、バイアスを強化し、アプリケーションの適用ケースによっては差別を助長する可能性がありえます。例えば、教育領域で生徒の集中度合いの測定によってインタラクティブにコンテンツを提供していくことそれ自体は好ましいのですが、集中度合いの測定を学業成績に反映するとした場合、多くの問題を生じさせることが想像されます。この問題に関しては、近く「人の持つバイアス」と「AIとバイアス」というシリーズ記事を執筆し、取り扱っていきたいと考えています。



この記事が気に入ったらサポートをしてみませんか?