[CEDEC 2016]顔色を窺い,雰囲気を読むAI「俺の嫁」はいかにして作られたか
そんなNTTPCコミュニケーションズがCEDEC 2016で,同社のクラウドを活用した機械学習型AIに関するセッション「『俺の嫁』、人工無能やめるってよ。」を実施したので,今回はその模様をレポートしたい。登壇したのは,NTTPCコミュニケーションズでサービスクリエイションを担当する高橋敬祐氏だ。
「人間の表情を読むAI」を目指して
昨今では,「ディープラーニングによるAI」を使ったキャラクターというのもいろいろ出てきている。
この手のAIは単一の個性で反応が画一的だというのが一般的な評価なのだが,高橋氏らのチームはそれだとAIの個性として物足りないと感じ,「俺専用」の反応を示すAIを目指したのだという。また,言語に頼ることなく「顔色を窺う」「雰囲気を察する」ようなものを作ろうと試みているそうである。
そうしてできあがったAIにキャラクターを“被せ”れば,「俺の嫁」のできあがりというわけだ。
出展の内容が固まったのがCEDEC 2016の3週間前ということもあって,デモはいろいろと突貫工事になっており,「データも一巡して一通りの機能は実装したものの,まだまだ学習は十分ではない」と高橋氏は述べていた。
今回のブース展示は,学習強化を兼ねての公開だったが,今後はもっと精度を上げてくるのであろう。キャラクターは「中野シスターズの姉妹2人分のモーションデータを用意することができなかったので,今回は妹の鷺宮カノちゃんだけに絞って実装した」とのことである。
どうでもいいことだが,中野区民としては,「中野区のキャラで苗字が鷺宮」というのは,東京都のキャラで苗字が町田とか小笠原だと聞かされたときにも似た違和感が少しある。
さて,今回のデモにあたっては,グループ会社から騒音に強いマイク機材などを調達してはいたようだが,会場では騒音が激しいことが懸念されたため,マイクを使った会話によるコミュニケーションは中止となり,キーボードの[Y/N]キーのみでやり取りすることになったという。ただ,「言語に依存しないコミュニケーションを進めるという意味ではよかったのではないか」と高橋氏は語っている。
今回,会話せずにやり取りするうえで重視されているのが,言語によらない,ノンバーバルコミュニケーションだ。
人間同士のコミュニケーションでも,大半はノンバーバルな仕草や雰囲気など,言語によらない部分を使っているという。機械学習を使った人工知能キャラの多くが言語的な会話を軸にしているのに対し,こういったノンバーバルなコミュニケーションを重視したのが今回のプロジェクトの特徴ともいえるだろう。
具体的には,見た目から第一印象を取得し,会話しながらそれを補正していくといった感じだ。表情の変化などを読み取ることで,「金髪でチャラそうだと思ったけど,実は真面目な人だった」といった感じに,印象の変化を感じ取れるようなAIの実装を目指していると,高橋氏は語っていた。
画像から何かを判断する場合の機械学習というのは,たとえば大量の果物の画像を用意し,画像と「これはリンゴ」といった情報をペアにして大量に流し込むことにより,どういった特徴を持った画像がリンゴであるかということをAIが自分で判断できるようにしていくイメージだ。特徴を自動抽出するにはいくつかの方法があるが,今回のプロジェクトでは色の勾配データを用いているとのこと。さすがに生データのままでは処理できないので,あらかじめ適切にデータを整理して与えねばならない。
ただそうすることで,人間が「どこの色が」とか「どういう形だったら」といった指定を直接与えずとも,多くのデータから指定された方法で自動的に特徴を抽出して判断してくれるようになる。
今回のAIは顔(の画像)から性格を割り出すわけだが,まず,第一印象を得る部分は,カメラから取り込んだ顔データを128×128ドット解像度で用意し,それと別途行った性格診断結果とを組み合わせて機械学習させることで,顔の特徴から性格を推定するという方法を採用している。
ちなみに,性格判定には5因子モデルが採用されており,
- 情動性
- 外向性
- 開放性
- 調和性
- 勤勉性
といった要素の割合で性格を判定する。今回の実装では,5要素の数値中,登録されている各要素の平均数値から最も大きく乖離しているものを,「特徴的な性格要素」としてピックアップする手法を用いているそうだ。
なお,顔情報は3万次元ものデータとなり,「Excel」で喩えるなら3万カラムのデータに相当するため,データを減らす必要がある。
そこで採用しているのは,業界でもよく使われるアルゴリズムで,主要な要素だけを抜き出す主成分解析(PCF)によって相関の薄い要素をそぎ落とした結果,データ量を0.1%に圧縮した時点で元データに対して70%の精度を保持できているという。
そもそも顔と性格で相関関係があるのかといったところからちょっと疑問はあったのだが,できあがったモデルから予測された値と実際の値との平均誤差は7〜16%程度とのことで,むしろかなり高い相関関係が得られていることが分かる。「第一印象」といったものは顔の造作自体よりも会話や仕草などの雰囲気が占める部分が大きいと思っていたのだが,特徴点抽出でこれだけ有意に抽出できるということには驚きだ。
実際のデモの様子は,以下のようなものになっている。
デモの様子を見ていると,人によって第一印象はさまざまなのだが,会話後の結果ではどうも「近寄りがたい」「真面目」「コンサバ」などの堅めな評価が多くなっていた。これは,事前の学習材料としてサンプルで使用した社員に30代40代が多かったことや,音声入力をやめて,キーボードの[Y/N]キーだけを使うようにしたことの影響ではないかとのことだった。
ただ,聞いた範囲では,平均からの違いをもって性格を割り出しているとのことなので,みんな真面目と判定されてしまうということは,母集団のデータがよほどはっちゃけていないとおかしくなってしまう。どちらかといえば,音声入力がなくなったので,表情の入力が不十分になったということなのだろう。
なお今回のデモは,第一印象での顔画像からの性格判定と,会話を行ってからの補正が行われた判定の2つが得られるものとなっており,具体的に相手に合わせて会話するようなことはまだ実装されていない。将来的には判定結果の有効利用によって,非言語情報から多くのことを判断できるAIに成長していくのだろう。
キャラクターは,NTTグループの音声認識・合成ソフトウェアを利用して音声を出している。確か,NTT系の音声合成技術はパラメータとして感情などを与えることもできたはずなので,そのうちもっとエモーショナルな会話が繰り広げられるようになる可能性もありそうだ。
同社では,このような技術の応用に際してパートナーを募集しているので,キャラクタービジネスに新展開がもたらされるのも遠いことではないのかもしれない。