(57)【要約】【課題】複数のデータから潜在的要因、具体的には感情を推定する際に、ラベリング作業を削減することができ、たとえいずれかのデータに欠損が生じても感情を推定することができる技術を提供する。【解決手段】情報処理装置は、データ取得部１０，１２と、処理部１４と、出力部１６を備える。処理部１４は、データ取得部１０，１２の訓練データを用いて半教師あり学習の機械学習を実行し、学習済みのモデルを用いてデータ取得部１０，１２の観測データからその潜在要因としての人物の感情を推定して出力する。処理部１４は、再帰型ニューラルネットワーク（ＲＮＮ）と変分オートエンコーダ（ＶＡＥ）との組合せにより機械学習を実行する。【選択図】図１
2018152004.tif 000002
【特許請求の範囲】
【請求項１】
第１観測データを取得する第１データ取得部と、
第２観測データを取得する第２データ取得部と、
前記第１観測データと前記第２観測データの訓練データを用いて潜在要因としての人物の感情を出力すべく半教師あり学習で機械学習し、学習済みのモデルを用いて前記第１観測データと前記第２観測データの少なくともいずれかから前記感情を推定して出力する処理部と、
を備える情報処理装置。
【請求項２】
前記処理部は、再帰型ニューラルネットワーク（ＲＮＮ）と変分オートエンコーダ（ＶＡＥ）との組合せにより前記機械学習を実行する
請求項１に記載の情報処理装置。
【請求項３】
前記処理部は、前記第１観測データと前記第２観測データの訓練データを用いて前記潜在要因を推定し、推定して得られたラベルと、教師データとして与えられたラベルを比較することで前記機械学習を実行する
請求項１に記載の情報処理装置。
【請求項４】
前記処理部は、前記第１観測データと前記第２観測データの訓練データを用いて前記潜在要因を推定し、推定して得られた前記潜在要因から前記第１観測データと前記第２観測データを生成し、生成された第１観測データ及び第２観測データを、前記第１データ取得部及び前記第２データ取得部で取得された前記第１観測データ及び前記第２観測データと比較することで前記機械学習を実行する
請求項１に記載の情報処理装置。
【請求項５】
前記処理部は、さらに、推定して得られた前記潜在要因から前記第１観測データと前記第２観測データを生成し、生成された第１観測データ及び第２観測データの少なくともいずれかを用いて、前記第１データ取得部及び前記第２データ取得部で取得された前記第１観測データ及び前記第２観測データの少なくともいずれかの欠損部分を補間して出力する
請求項１に記載の情報処理装置。
【請求項６】
前記処理部は、前記第１データ取得部で取得された前記第１観測データの第１特徴量、及び前記第２データ取得部で取得された前記第２観測データの第２特徴量を算出し、前記第１特徴量と前記第２特徴量とに基づいて前記潜在要因を推定するものであり、前記第１特徴量と前記第２特徴量とが相互に相関するように前記第１特徴量及び前記第２特徴量を算出する
請求項５に記載の情報処理装置。
【請求項７】
前記処理部は、前記再帰型ニューラルネットワークを用いて前記第１データ取得部で取得された前記第１観測データの第１特徴量、及び前記第２データ取得部で取得された前記第２観測データの第２特徴量を算出し、前記変分オートエンコーダを用いて前記第１特徴量及び前記第２特徴量を用いて前記潜在要因を推定する
請求項２に記載の情報処理装置。
【請求項８】
前記第１観測データは人物の動きデータであり、
前記第２観測データは前記人物の音声データである
請求項１〜７のいずれかに記載の情報処理装置。
【請求項９】
前記第１観測データは人物の動きデータであり、
前記第２観測データは前記人物の音声データであり、
前記処理部は、前記第２観測データの欠損部分を補間して出力する
請求項５に記載の情報処理装置。
【請求項１０】
前記処理部は、補間された前記第２観測データをテキストデータに変換して出力する
請求項９に記載の情報処理装置。
【請求項１１】
コンピュータに、
第１観測データ及び第２観測データを入力するステップと、
前記第１観測データと前記第２観測データの訓練データを用いて潜在要因としての人物の感情を出力すべく半教師あり学習で機械学習するステップと、
学習済みのモデルを用いて前記第１観測データと前記第２観測データの少なくともいずれかから前記感情を推定して出力するステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。  
【背景技術】
【０００２】
従来から、ある状態を推定する際に、データ欠損や推定精度を向上させるべく複数のデータソースを収集する技術が知られている。
【０００３】
特許文献１には、時間当たりの人口密度を把握することを目的として、ＧＰＳと併用して時間当たりの端末の移動距離を収集し、ＧＰＳが欠損した場合に移動距離から密度分布を推測することが記載されている。
【０００４】
特許文献２には、生体情報と体動情報に基づいて心的状態情報を推定し、推定された心的状態情報をインデックスとしてライフログ情報に付与することが記載されている。具体的には、心拍や血圧、体温等の生体情報から、緊張状態、リラックス状態、覚醒状態等の精神状態を推定し、同じ精神状態であっても運動強度が大きくなると精神状態の心拍に対する影響が小さくなることを考慮して運動強度の影響を特定の関数で表現し、心的状態の推定に用いることが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−０１１１０７号公報
【特許文献２】特開２０１６−１１５０５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、処理対象が人間の感情である場合、直接的に感情を知り得るデータはないため、得られたデータから推定する必要があるところ、データが欠損してしまうと推定が不可能となる。欠損したデータ自体の補間も不可能である。
【０００７】
また、近年では、ディープラーニング等の機械学習を用いて情報を処理する技術が急速に進展しており、これにより感情を推定することも考えられるが、機械学習のモデル化には一般にラベルデータが必要で、感情のようなデータにラベリングする作業は非常に面倒で高コストである。
【０００８】
本発明の第１の目的は、複数のデータから潜在的要因、具体的には感情を推定する際に、ラベリング作業を削減できる技術を提供することにある。また、本発明の第２の目的は、いずれかのデータに欠損が生じても感情推定を継続することができ、さらに、欠損したデータを補間することができる技術を提供することにある。  
【課題を解決するための手段】
【０００９】
請求項１に記載の発明は、第１観測データを取得する第１データ取得部と、第２観測データを取得する第２データ取得部と、前記第１観測データと前記第２観測データの訓練データを用いて潜在要因としての人物の感情を出力すべく半教師あり学習で機械学習し、学習済みのモデルを用いて前記第１観測データと前記第２観測データの少なくともいずれかから前記感情を推定して出力する処理部とを備える情報処理装置である。
【００１０】
請求項２に記載の発明は、前記処理部は、再帰型ニューラルネットワーク（ＲＮＮ）と変分オートエンコーダ（ＶＡＥ）との組合せにより前記機械学習を実行する請求項１に記載の情報処理装置である。
【００１１】
請求項３に記載の発明は、前記処理部は、前記第１観測データと前記第２観測データの訓練データを用いて前記潜在要因を推定し、推定して得られたラベルと、教師データとして与えられたラベルを比較することで前記機械学習を実行する請求項１に記載の情報処理装置である。
【００１２】
請求項４に記載の発明は、前記処理部は、前記第１観測データと前記第２観測データの訓練データを用いて前記潜在要因を推定し、推定して得られた前記潜在要因から前記第１観測データと前記第２観測データを生成し、生成された第１観測データ及び第２観測データを、前記第１データ取得部及び前記第２データ取得部で取得された前記第１観測データ及び前記第２観測データと比較することで前記機械学習を実行する請求項１に記載の情報処理装置である。
【００１３】
請求項５に記載の発明は、前記処理部は、さらに、推定して得られた前記潜在要因から前記第１観測データと前記第２観測データを生成し、生成された第１観測データ及び第２観測データの少なくともいずれかを用いて、前記第１データ取得部及び前記第２データ取得部で取得された前記第１観測データ及び前記第２観測データの少なくともいずれかの欠損部分を補間して出力する請求項１に記載の情報処理装置である。
【００１４】
請求項６に記載の発明は、前記処理部は、前記第１データ取得部で取得された前記第１観測データの第１特徴量、及び前記第２データ取得部で取得された前記第２観測データの第２特徴量を算出し、前記第１特徴量と前記第２特徴量とに基づいて前記潜在要因を推定するものであり、前記第１特徴量と前記第２特徴量とが相互に相関するように前記第１特徴量及び前記第２特徴量を算出する請求項５に記載の情報処理装置である。
【００１５】
請求項７に記載の発明は、前記処理部は、前記再帰型ニューラルネットワークを用いて前記第１データ取得部で取得された前記第１観測データの第１特徴量、及び前記第２データ取得部で取得された前記第２観測データの第２特徴量を算出し、前記変分オートエンコーダを用いて前記第１特徴量及び前記第２特徴量を用いて前記潜在要因を推定する請求項２に記載の情報処理装置である。
【００１６】
請求項８に記載の発明は、前記第１観測データは人物の動きデータであり、前記第２観測データは前記人物の音声データである請求項１〜７のいずれかに記載の情報処理装置である。
【００１７】
請求項９に記載の発明は、前記第１観測データは人物の動きデータであり、前記第２観測データは前記人物の音声データであり、前記処理部は、前記第２観測データの欠損部分を補間して出力する請求項５に記載の情報処理装置である。
【００１８】
請求項１０に記載の発明は、前記処理部は、補間された前記第２観測データをテキストデータに変換して出力する請求項９に記載の情報処理装置である。
【００１９】
請求項１１に記載の発明は、コンピュータに、第１観測データ及び第２観測データを入力するステップと、前記第１観測データと前記第２観測データの訓練データを用いて潜在要因としての人物の感情を出力すべく半教師あり学習で機械学習するステップと、学習済みのモデルを用いて前記第１観測データと前記第２観測データの少なくともいずれかから前記感情を推定して出力するステップとを実行させるプログラムである。
【発明の効果】
【００２０】
請求項１〜４，７，１１に記載の発明によれば、ラベリング作業を削減しつつ潜在要因としての人物の感情を推定して出力することができる。
【００２１】
請求項５，６に記載の発明によれば、さらに、いずれかの観測データが欠損しても他の観測データから人物の感情を推定して出力することができるとともに、欠損したデータを補間することができる。
【００２２】
請求項８に記載の発明によれば、さらに、動きデータと音声データから感情を推定して
出力することができる。
【００２３】
請求項９に記載の発明によれば、さらに、音声データが欠損してもこれを補間して出力することができる。
【００２４】
請求項１０に記載の発明によれば、さらに、音声データが欠損してもこれを補間してテキストデータとして出力することができる。
【図面の簡単な説明】
【００２５】
【図１】情報処理装置の構成ブロック図である。
【図２】情報処理装置の具体的な構成図である。
【図３】情報処理装置での処理の模式的説明図（その１）である。
【図４】情報処理装置での処理の模式的説明図（その２）である。
【図５】潜在空間上へのプロット説明図である。
【図６】学習処理の処理フローチャートである。
【図７】半教師あり学習サブルーチンの処理フローチャートである。
【図８】感情推定及びデータ補間の処理フローチャートである。
【図９】データ補間サブルーチンの処理フローチャートである。
【図１０】学習処理の模式的説明図（その１）である。
【図１１】学習処理の模式的説明図（その２）である。
【図１２】学習処理の詳細説明図である。
【図１３】エラー伝播説明図である。
【図１４】モーダル間の相関説明図（その１）である。
【図１５】モーダル間の相関説明図（その２）である。
【図１６】複数モーダルによる学習処理の模式的説明図である。
【図１７】複数モーダルによる学習処理の詳細説明図である。
【発明を実施するための形態】
【００２６】
以下、図面に基づき本発明の実施形態について説明する。
【００２７】
図１は、実施形態における情報処理装置の構成ブロック図を示す。情報処理装置は、データ取得部１０，１２と、処理部１４と、出力部１６を備える。
【００２８】
データ取得部１０，１２は、それぞれ異なるデータ（観測データ）を取得して処理部１４に供給する。データ取得部１０，１２で取得される観測データは、処理部１４での推定処理の精度向上の観点からは互いに関連していることが望ましい。例えば、データ取得部１０で人物の関節の動きに関するデータを取得し、データ取得部１２で当該人物の音声データを取得する等である。
【００２９】
データ取得部１０，１２から処理部１４への観測データの供給は、有線、無線のいずれでもよく、インターネット等の通信回線を介してもよい。すなわち、データ取得部１０，１２と処理部１４は物理的に近接、あるいは単一筐体内に設けられている必要はなく、互いに離間していてもよい。図では、データ取得部１０，１２を示しているが、さらに他のデータ取得部があってもよい。
【００３０】
処理部１４は、データ取得部１０，１２からの観測データを入力し、これらの観測データを処理して潜在要因としての人物の感情を推定する。処理部１４は、機能ブロックとして、学習部１４１、推定部１４２、及びデータ補間部１４３を備える。
【００３１】
学習部１４１は、データ取得部１０，１２で取得した観測データから訓練データを収集し、当該訓練データを用いて機械学習する。機械学習のアルゴリズムとしては、
（１）教師あり学習
入力とそれに対応すべき出力（ラベル）を写像する関数を近似的に生成する
（２）教師なし学習
入力のみ（ラベルなしの例）からモデルを構築する
（３）半教師あり学習
ラベルありの例とラベルなしの例をどちらも扱えるようにしたもの
があるが、実施形態では特に上記（３）の半教師あり学習により機械学習する。なお、学習とは、モデルにおける重みＷを調整しながら最適値を探索することを意味する。
【００３２】
推定部１４２は、学習部１４１により学習して得られたモデルを用いて、データ取得部１０，１２で取得した観測データを用いて人物の潜在要因としての感情を推定する。推定部１４２は、推定結果を出力部１６に出力する。推定部１４２は、基本的にはデータ取得部１０，１２で取得した観測データをともに用いて感情を推定するが、データ取得部１０，１２のいずれかの観測データが欠損しても、欠損していない残りの観測データを用いて感情推定を継続して実行する。これは、観測データから潜在要因としての感情を推定する際に、観測データからその特徴量を算出し、当該特徴量から潜在要因を算出する一連のプロセスにおいて、観測データから算出される特徴量同士が互いに相関を持つように特徴量を算出することによって可能となるが、これについては後述する。推定部１４２は、データ取得部１０，１２のいずれかの観測データが欠損しても、欠損していない残りの観測データを用いて感情推定を継続して実行するから、データ取得部１０，１２の少なくともいずれかの観測データを用いて潜在要因としての感情を推定するものといえる。具体的には、
（ａ）データ取得部１０，１２の観測データがいずれも欠損していない場合には、両観測データを用いて感情を推定する
（ｂ）データ取得部１０の観測データが欠損した場合、データ取得部１２の観測データを用いて感情を推定する
（ｃ）データ取得部１２の観測データが欠損した場合、データ取得部１０の観測データを用いて感情を推定する
【００３３】
データ補間部１４３は、推定部１４２で得られた推定結果を用いてデータ取得部１０，１２のいずれかでデータ欠損が生じた場合にこれを補間する。データ補間は、推定部１４２で得られた推定結果、すなわち推定された潜在要因としての感情を用いて観測データを生成するプロセスと、生成した観測データで欠損箇所を補間するプロセスからなる。データ補間部１４３は、データ補間した結果を出力部１６に出力する。
【００３４】
処理部１４から出力部１６への推定結果やデータ補間結果の供給は、有線、無線のいずれでもよく、インターネット等の通信回線を介してもよい。すなわち、処理部１４と出力部１６は物理的に近接、あるいは単一筐体内に設けられている必要はなく、互いに離間していてもよい。
【００３５】
図１における構成ブロックは、例えばデータ取得部１０，１２及び出力部１６をサーバクライアントシステムにおけるクライアント側、処理部１４をサーバ側に設置することで実現され得るが、これに限定されない。
【００３６】
図２は、図１に示される構成ブロックの具体的な構成図を示す。データ取得部１０，１２を各種のセンサで構成し、処理部１４及び出力部１６をコンピュータで構成する場合である。
【００３７】
潜在要因としての人物の感情を推定するコンピュータは、ＣＰＵ１８、ＲＯＭ２０、ＲＡＭ２２、インターフェイス２４、ＨＤＤ（ハードディスクドライブ）２６、表示部２８を備える。なお、これ以外にも、キーボードやマウス等の入力デバイス、インターネットに接続するための通信インターフェイス等も備えるが、周知の構成であるため省略する。
【００３８】
動きセンサ３０は、データ取得部１０として機能し、人物の関節の動きを取得してコンピュータに供給する。動きセンサ３０は、例えばカメラで構成される。関節の動きデータは観測データとしてインターフェイス２４を介してＣＰＵ１８に供給される。
【００３９】
マイク３２は、データ取得部１２として機能し、当該人物の音声を取得してコンピュータに供給する。音声データは観測データとしてインターフェイス２４を介してＣＰＵ１８に供給される。なお、動きセンサ３０とマイク３２は一体化されていてもよく、市販のKinect（キネクト）等を用いることもできる。
【００４０】
ＣＰＵ１８は、ＲＯＭ２０あるいはＨＤＤ２６に記憶された処理プログラムを読み出し、ＲＡＭ２２をワーキングメモリとして用いて学習部１４１，推定部１４２，及びデータ補間部１４３の各機能を実行する。すなわち、半教師あり学習により機械学習してモデルを学習し、学習して得られたモデルを用いて人物の潜在要因としての感情を推定し、推定した潜在要因を用いてデータ補間する。ＣＰＵ１８は、推定結果やデータ補間結果を出力部１６としての表示部２８に表示する。
【００４１】
なお、学習部１４１，推定部１４２，データ補間部１４３の各機能は、単一のプロセッサで実行してもよく、複数のプロセッサで分散処理してもよい。
【００４２】
図３及び図４は、処理部１４での処理を模式的に示す。処理部１４は、時系列で取得した動きデータと、時系列で取得した音声データを用いて人物の感情を推定する。推定すべき感情は、楽しい、悲しい、恐れ、怒り、嫌悪、軽蔑等であるが、これらに限定されない。感情等の潜在要因を推定する技術としては、ＨＭＭ（隠れマルコフモデル）ＲＮＮ（再帰型ニューラルネットワーク）、ＡＥ（オートエンコーダ）、ＶＡＥ（変分オートエンコーダ）等が知られているが、実施形態ではＲＮＮとＶＡＥの組合せを基本として推定する。因みに、ＨＭＭでは観測した系列データの潜在的要因を推定できるが、シンボルの種類を予め定義しておく必要があり、全訓練データにラベリングが必要である。ＲＮＮでは隠れ層として観測データの特徴を連続的な値で表現できるが、同様に全訓練データにラベリングが必要である。ＡＥは観測データを再現し得る特徴を抽出でき、ラベリングなしでも学習できるが、観測データを再現し得る特徴が必ずしもその観測データの潜在要因とは限らず、不要な情報も特徴として含む可能性がある。ＶＡＥは観測データと潜在要因をペアとして推定でき、ラベリングなしでも学習できる。処理部１４は、ＲＮＮとＶＡＥを組合せ、半教師あり学習によりモデルを学習する。
【００４３】
また、処理部１４は、動きデータと音声データのいずれか、例えば音声データが何らかの原因で一時的に欠損した場合においても、感情推定処理を継続して実行し、かつ、推定した感情を用いることで欠損した音声データを補間する。感情を推定できるのであれば、必ずしも欠損した音声データを補間する必要はないとも考えられるが、例えば取得した音声データをテキストデータに変換し、このテキストデータを利用する等の場合には、欠損している音声データを補間する必要性が生じ得るので、このような事情を考慮して欠損データを補間する。
【００４４】
図５は、感情等の潜在要件の推定処理を模式的に示す。処理部１４は、収集した観測データを潜在空間上にプロットしていく。似た形の観測データは、その発生の起源（原因）も似ているはずであると推定できるから、潜在空間上において近い位置にプロットされる。
【００４５】
図５において、互いに近い位置にプロットされるデータ群がクラスタ１００，１０２，１０４として示されている。それぞれのクラスタに特定の感情が関連しているものとすると、観測データがどのクラスタに属しているかを判定することで感情を推定できる。
【００４６】
以下、学習部１４１における学習処理、推定部１４２における推定処理、データ補間部１４３におけるデータ補間処理について、より詳しく説明する。
【００４７】
＜学習処理＞
図６は、処理部１４の処理フローチャートを示す。学習部１４１の処理フローチャートであり、ＣＰＵ１８で実行される処理である。
【００４８】
まず、処理部１４は、訓練データを収集する（Ｓ１０１）。訓練データは、動きデータと音声データから構成される。具体的には、インターフェイス２４を介して動きセンサ３０とマイク３２から時系列の動きデータ及び音声データを収集する。動きセンサ３０及びマイク３２から収集する時系列の動きデータ及び音声データのサンプリング周波数は任意であり、例えば１Ｈｚである。
【００４９】
次に、ラベル付けするデータを選択し（Ｓ１０２）、訓練データにラベリングする（Ｓ１０３）。データの選択、及びラベリングは、例えばオペレータがキーボードやマウス等の入力デバイスを操作して手動で行う。
【００５０】
次に、処理部１４は、「ラベルのあり／なし」でデータを仕分けし（Ｓ１０４）、仕分けされたデータを用いて学習サブルーチンを実行する（Ｓ１０５）。この学習サブルーチンは、ラベルありのデータとラベルなしのデータを用いた半教師あり学習サブルーチンである。
【００５１】
図７は、図６におけるＳ１０５の処理、すなわち半教師あり学習サブルーチンの処理フローチャートを示す。
【００５２】
まず、学習の繰り返し回数ｓを指定する（Ｓ２０１）。繰り返し回数ｓは、オペレータが手動で設定してもよく、あるいは予めデフォルト値を設定してＲＯＭ２０等のメモリに記憶してもよい。繰り返し回数ｓは任意であるが、例えばｓ＝５００に設定する。
【００５３】
次に、繰り返し回数ｓがｓ＞０を満たすか否かを判定する（Ｓ２０２）。ｓ＞０の場合（Ｓ２０２でＹＥＳ）、つまり未だ繰り返し回数が残っている場合には、ラベルなしのデータを用いた教師なし学習を行い（Ｓ２０３）、その後、ラベルありのデータを用いた教師あり学習を行う（Ｓ２０４）。Ｓ２０３とＳ２０４の処理を入れ替え、まずはラベルありのデータを用いた教師あり学習を行い、その後、ラベルなしのデータを用いた教師なし学習を行ってもよい。そして、繰り返し回数ｓを１だけ減じ（Ｓ２０５）、Ｓ２０２〜Ｓ２０５の処理を繰り返し実行する。
【００５４】
他方、繰り返し回数ｓを順次減じ、最終的にｓ＝０となった場合には（Ｓ２０２でＮＯ）、必要な回数だけ学習を行ったとして処理を終了する。
【００５５】
＜推定処理＞
図８は、処理部１４の処理フローチャートを示す。推定部１４２の処理フローチャートであり、ＣＰＵ１８で実行される処理である。図８の処理に先立って、図６及び図７に示すモデル学習処理は完了しているものとする。
【００５６】
まず、テスト対象のデータ（テストデータ）、すなわち推定の対象となるデータを学習済みモデルに入力する（Ｓ３０１）。
【００５７】
次に、入力したテストデータを学習済みモデルで処理し、潜在空間上に転写（プロット）する（Ｓ３０２）。潜在空間は図６に例示した空間である。
【００５８】
次に、テストデータのプロットに最も近いクラスタをそのテストデータが示す感情として判定する（Ｓ３０３）。例えば、テストデータを、楽しい、悲しい、恐れ、怒り、嫌悪、軽蔑のいずれかとして判定する。判定結果は表示部２８に表示される。
【００５９】
次に、テストデータの補間を行うか否かを判定する（Ｓ３０４）。この判定は、テストデータに欠損が生じているか否かで行われ、欠損が生じていればテストデータの補間を行う必要があるとして（Ｓ３０４でＹＥＳ）、データ補間サブルーチンを実行する（Ｓ３０５）。例えば、動きデータと音声データで感情を推定する場合であって、音声データが一時的に欠損しているときに当該音声データの欠損部分を補間する。
【００６０】
＜データ補間＞
図９は、図８におけるＳ３０５の処理、すなわちデータ補間サブルーチンの処理フローチャートを示す。データ補間部１４３の処理であり、ＣＰＵ１８で実行される処理である。
【００６１】
図８のＳ３０３で示すように、テストデータのプロットに最も近いクラスタをそのテストデータの感情として判定すると、これとは逆に、判定した感情（潜在要因）からテストデータを生成する。テストデータが動きデータと音声データである場合、判定した感情から動きデータと音声データを生成する（Ｓ４０１）。勿論、欠損したデータだけを生成してもよい。そして、生成したデータで欠損箇所を補間する（Ｓ４０２）。すなわち、判定した感情から動きデータ及び音声データを生成し、実際に入力した動きデータ及び音声データと比較し、データの欠損箇所を生成したデータで置換することで補間する。
【００６２】
図１０及び図１１は、学習部１４１の学習処理を模式的に示す。学習部１４１は、収集した観測データ（動きデータや音声データ）をｘ、観測データの特徴量をＨ、潜在変数（感情）をｚ、ラベルをｙとすると、収集した観測データｘｇｉｖｅｎから特徴量Ｈを算出する学習にはＲＮＮを用い、特徴量Ｈから潜在変数（感情）ｚを算出（エンコード）する学習にはラベルなしデータを用いる学習としてＶＡＥを用いる。また、これに加えて、潜在変数（感情）ｚの算出精度を確保するためにラベル付きデータを用い、算出された潜在変数ｚに対応するラベルｙｉｎｆｅｒｅｄと教師データとしてのラベルｙｇｉｖｅｎとを比較する。さらに、潜在変数ｚから逆に特徴量Ｈ及び観測データｘを生成し、収集された観測データｘｇｉｖｅｎと生成した観測データｘｇｅｎｅｒａｔｅｄを比較する。
【００６３】
図１１に、比較の様子を示す。収集された観測データｘｇｉｖｅｎと生成された観測データｘｇｅｎｅｒａｔｅｄとを比較し、そのずれ（誤差）が最小となるように重みを調整して学習する。これとともに、推定された潜在変数ｚに対応するラベルｙｉｎｆｅｒｅｄと、教師データとしてのラベル（正解ラベル）ｙｇｉｖｅｎとを比較し、そのずれ（誤差）が最小となるように重みを調整して学習する。基本となるＶＡＥは教師なし学習（ラベルなしデータでの学習）であるためその機能を維持しつつも、小量のラベル付きデータで潜在変数ｚの誤差を最小化すべく学習するので、小量のラベル付きデータで推定精度を確保できる。
【００６４】
＜学習処理の詳細＞
図１２は、学習部１４１での学習処理の詳細を示す。図において、変数を以下のように定義する。
Ｎ：モーダルの識別番号（２モーダルの場合はＮ＝１，２）
Ｔ：時間ウィンドウ幅であり、センサが１Ｈｚでデータを送信する場合、ある時刻ｔにおけるｚの推定は、ｔ−Ｔ秒前からのＴ秒間のデータを用いて行われる。
ｘＮ：モーダルＮで観測したＴ個分の時系列データであり、｛ｘＮ＿１，ｘＮ＿２，・・・，ｘＮ＿Ｔ｝である。
ｈＮ：モーダルＮのデータのＴ個分の特徴量であり、｛ｈＮ＿１，ｈＮ＿２，・・・，ｈＮ＿Ｔ｝である。
ｘＮ＿ｔ：ｔステップ時のｘＮ
ｈＮ＿ｔ：ｔステップ時のｈＮ
ｈ：ｈ１〜ｈＮの結合であり、２モーダルでｈ１が４次元、ｈ２が３次元の場合、ｈは７次元となる。
Ｗ＿ＡＢ：ＡからＢへの変換に用いられる重みＷ
μ：ｈからＷ＿ｈμで非線形変換された値
σ：ｈからＷ＿ｈσで非線形変換された値
ε：微小量のランダム値であり、例えば平均０、分散０．０１の正規分布で生成される。
ｚ：潜在変数であり、ｚ＝μ＋σεで定義される。
ｙinfered：推定したラベルであり、感情を表すカテゴリである。
ｙｇｉｖｅｎ：正解ラベル（教師ラベル）
ｈＮ〜：ｚから生成された、モーダルＮのデータのＴ個の特徴量
ｘＮ〜：ｈＮ〜から生成された、モーダルＮのＴ個分の時系列データ
Σ：非線形関数であり、例えばｔａｎｈ関数ｔａｎｈ（）やｓｉｇｍｏｉｄ関数ｓｉｇｍｏｉｄ（）等である。
【００６５】
ここで、ｈＮやｚの次元は学習の開始に先立ってオペレータが指定し、例えばｈ１，ｈ２の次元を１５０次元とし、ｚの次元を３０次元等とする。予めデフォルト値の次元を設定してメモリに記憶してもよい。また、非線形関数Σも学習の開始に先立ってオペレータが指定しておく。予めデフォルトの関数を設定してメモリに記憶してもよい。
【００６６】
学習は、重みＷを調整しながら最適解を探索することにより実行され、ＮＮ（ニューラルネットワーク）で一般的に用いられる勾配法等を用いることができる。
【００６７】
観測データｘから特徴量ｈの算出は、非線形関数Σと重みＷを用いて
ｈＮ＿ｔ＝Σ（Ｗ＿ｘＮｈＮ・ｘＮ＋Ｗ＿ｈＮｈＮ・ｈＮ＿ｔ−１）
により実行される。ｈ＿Ｔは、Ｔステップ分の観測データｘの、履歴としての特徴量であり、ＲＮＮで実行される。
また、特徴量ｈから潜在変数ｚの算出は、重みＷを用いて
μ＝Ｗ＿ｈμ・ｈＮ＿Ｔ
σ＝Ｗ＿ｈσ・ｈＮ＿Ｔ
ｚ＝μ＋σε
により実行される。μ及びσは、ｈ＿Ｔの写像として算出されるものであり、どのように写像するかはＶＡＥの学習により決定される。潜在変数ｚは、μ及びσと、ランダム変数であるεから算出される。算出された潜在変数ｚは潜在空間上にプロットされる。潜在変数ｚは推定されたラベルｙｉｎｆｅｒｅｄに対応する。
【００６８】
他方、潜在変数ｚからｈ〜の生成は、
ｈ０〜＝Ｗ＿ｚｈ・ｚ
ｈＮ〜＿ｔ＝Σ（Ｗ＿ｘＮｈＮ・ｘＮ〜＋Ｗ＿ｈＮｈＮ・ｈＮ〜＿ｔ−１）
により実行される。算出されたｈ〜からｘ〜の生成は、
ｘＮ〜＿ｔ＝Σ（Ｗ＿ｈＮｘＮ・ｈＮ＿ｔ）
により実行される。生成されたｘ〜はｘｇｅｎｅｒａｔｅｄに対応する。
【００６９】
重みＷの学習は、ｘｇｉｖｅｎとｘｇｅｎｅｒａｔｅｄの値の差であるエラー（Ｅｒｒｏｒ）、及びｙｇｉｖｅｎとｙｉｎｆｅｒｅｄの値の差であるエラー（Ｅｒｒｏｒ）を最小化するように進む。
【００７０】
図１３は、エラーの伝播の様子を示す。ｙｇｉｖｅｎとｙｉｎｆｅｒｅｄの差であるエラーは、図中一点鎖線で示すようにラベル有りデータの場合のみ伝播される。他方、ｘｇｉｖｅｎとｘｇｅｎｅｒａｔｅｄの差であるエラーは、図中二点鎖線で示すようにラベル有りデータの場合とラベル無しデータの場合の両方の場合で伝播される。これらのエラーを最小化することで、ラベルｙinferedの推定精度（すなわち潜在変数ｚの推定精度）、及びｘｇｅｎｅｒａｔｅｄの生成精度が向上していく。
【００７１】
ここで、一点鎖線で示すエラーの伝播は、潜在変数ｚには伝播していない。これにより、ラベル情報がデータの生成、すなわちｘｇｅｎｅｒａｔｅｄに関与しないように設定できる。このことは、ラベル無しデータでも二点鎖線の部分の学習が可能であることを意味し、教師あり学習と教師なし学習の両方を実行する半教師あり学習が可能なモデルとなる。
【００７２】
＜データ補間処理の詳細＞
以上のようにして潜在変数（感情）ｚを推定し、かつ、潜在変数ｚを用いて観測データｘｇｅｎｅｒａｔｅｄを生成するが、複数のモーダルのいずれか、すなわち複数の観測データのいずれかに欠損が生じた場合に、欠損が生じていない観測データのみで推定を継続し、さらに欠損データを補間するためには、潜在変数ｚに複数のモーダル間を繋ぐ役割が求められる。
【００７３】
図１４は、複数のモーダル（例としてモーダル１及びモーダル２）と潜在変数ｚとの関係を模式的に示す。図１４（ａ）に示すように、潜在変数ｚがモーダル１、２のうちモーダル１の変数にのみ反応する場合、モーダル１に欠損が生じてしまうと潜在変数ｚの推定の継続は困難となり、また、モーダル２に欠損が生じても潜在変数ｚからモーダル２の欠損部分を補間できない。潜在変数ｚがモーダル１にのみ反応する以上、その潜在変数ｚから仮にモーダル２の観測データを生成したとしても元のモーダル２の観測データとの関連がないからである。これに対し、図１４（ｂ）に示すように、潜在変数ｚがモーダル１に反応するとともにモーダル２にも反応するのであれば、モーダル１，２のいずれかに欠損が生じたとしても欠損が生じていない残りのモーダルから潜在要因を推定でき、かつ、モーダル２に欠損が生じたとしても潜在変数ｚからモーダル２の欠損部分を補間できる。モーダル１に欠損が生じた場合についても同様である。これを実現するためには、機械学習時において、モーダルの特徴表現に対して複数のモーダル間で相間を持たせるように強制（条件付け）すればよい。ここで留意すべきは、相間を持たせるのはあくまでモーダルの特徴表現（特徴量）であって、潜在変数ｚ自体に制限を課すのではない点である。これにより、潜在変数ｚにより表現される感情の推定精度が維持される。
【００７４】
図１５は、学習時に複数のモーダル間で相間を持つように、モーダルの特徴表現に対して強制する方法を模式的に示す。図において、Ｘはモーダル１からＲＮＮで算出した特徴量であり、Ｙはモーダル２からＲＮＮで算出した特徴量である。特徴量Ｘを例として４次元で示し、特徴量Ｙを例として３次元で示す。
【００７５】
特徴量Ｘと特徴量Ｙの相間は、図に示すように行列として表現でき、右上がりの対角線で示す成分２００の値を相対的に大きくし、左上がりの対角線で示す成分（対角成分）２０２の値を１に近づけ、それ以外の成分２０４の値を相対的に小さくするように設定することで、特徴量Ｘのモーダル１と特徴量Ｙのモーダル２との間に相間を持たせる。具体的には、目的関数として、
【００７６】
【数１】
2018152004.tif 000003
【００７７】
【数２】
2018152004.tif 000004
【００７８】
【数３】
2018152004.tif 000005
を用い、これが最大となるように特徴量Ｘ，Ｙを算出する。ここで、Ｘ＾、Ｙ＾はそれぞれの平均、Ｖａｒ（Ｘ），Ｖａｒ（Ｙ）はそれぞれの分散を示す。
【００７９】
図１６及び図１７は、複数のモーダルを用いた学習処理を模式的に示す。それぞれ１個のモーダルの処理を示す図１０及び図１２に対応するものである。
【００８０】
モーダル１の観測データｘｍｏｄａｌ１から特徴量Ｈｍｏｄａｌ１が算出され、モーダル２の観測データｘｍｏｄａｌ２から特徴量Ｈｍｏｄａｌ２が算出され、これらの特徴量から２つの特徴量に共通する潜在変数ｚが算出される。また、潜在変数ｚからモーダル１の観測データｘｍｏｄａｌ１が生成されるとともに、モーダル２の観測データｘｍｏｄａｌ２が生成される。生成されたこれらの観測データがモーダル１あるいはモーダル２の欠損箇所の補間に用いられる。
【００８１】
図１７に示すように、モーダル１について観測データｘから特徴量ｈの算出は、非線形関数Σと重みＷを用いて
ｈＮ＿ｔ＝Σ（Ｗ＿ｘＮｈＮ・ｘＮ＋Ｗ＿ｈＮｈＮ・ｈＮ＿ｔ−１）
により実行され、同様にモーダル２についても観測データｘから特徴量ｈを算出する。それぞれの特徴量ｈは、上記の目的関数Ｌを最大化するように算出される。
【００８２】
モーダル１の特徴量ｈをｈｍｏｄａｌ＿１，Ｔ、モーダル２の特徴量ｈをｈｍｏｄａｌ＿２，Ｔとすると、これら２つの特徴量から共通する潜在変数ｚの算出は、重みＷを用いて
μ＝Ｗ＿ｈμ・ｈＮ＿Ｔ
σ＝Ｗ＿ｈσ・ｈＮ＿Ｔ
ｚ＝μ＋σε
により実行される。ここで、特徴量ｈにはｈｍｏｄａｌ＿１，Ｔ及びｈｍｏｄａｌ＿２，Ｔが用いられる。
【００８３】
他方、潜在変数ｚからモーダル１の特徴量の生成は、
ｈ０〜＝Ｗ＿ｚｈ・ｚ
ｈＮ〜＿ｔ＝Σ（Ｗ＿ｘＮｈＮ・ｘＮ〜＋Ｗ＿ｈＮｈＮ・ｈＮ〜＿ｔ−１）
により実行される。図において、算出されたモーダル１の特徴量をｈｍｏｄａｌ＿１，０等と示す。算出されたモーダル１の特徴量からモーダル１の観測データの生成は、
ｘＮ〜＿ｔ＝Σ（Ｗ＿ｈＮｘＮ・ｈＮ＿ｔ）
により実行される。図において、算出されたモーダル１の観測データをｘ１ｇｅｎｅｒａｔｅｄ等と示す。モーダル２についても同様である。
【００８４】
潜在変数ｚはモーダル１及びモーダル２に共通する、すなわち相関する潜在変数であり、これらの生成された観測データを用いてモーダル１あるいはモーダル２の欠損箇所を補間できる。既述したように、モーダル１は例えば人物の関節の動き、モーダル２は音声データ等である。
【００８５】
なお、実施形態で用いられるＶＡＥ（変分オートエンコーダ）は公知であり、以下に簡単に説明しておく。詳細は、例えば、D. P. Kingma and M.Welling, “Auto-encoding variational Bayes,” in Proceedings of the International Conference on Learning Representations (ICLR-14), 2014.等に記載されている。
【００８６】
変分オートエンコーダの変数と潜在変数をそれぞれｘ,ｚとし、その確率モデルが
【数４】
2018152004.tif 000006
で定義されるものとする。ここで、θは確率モデルのパラメータである。
【００８７】
周辺尤度
【数５】
2018152004.tif 000007
を最大にするパラメータθを求める際に、事後分布
【数６】
2018152004.tif 000008
を近似する、パラメータφを持つ確率分布
【数７】
2018152004.tif 000009
を用いる。
【００８８】
この確率分布を用いると、周辺尤度は
【数８】
2018152004.tif 000010
と表すことができる。
【００８９】
ここで、右辺第一項
【数９】
2018152004.tif 000011
はＫＬダイバージェンスで、第二項は
【数１０】
2018152004.tif 000012
と定義され、周辺尤度の変分下限である。パラメータθ,φについて変分下限を最大化することで、周辺尤度も大きくなる。
【００９０】
事前分布
【数１１】
2018152004.tif 000013
はパラメータを持たない多変量標準ガウス分布
【数１２】
2018152004.tif 000014
として、条件付き分布を次のように与える。
【００９１】
【数１３】
2018152004.tif 000015
【００９２】
ここで、
【数１４】
2018152004.tif 000016
と
【数１５】
2018152004.tif 000017
はzを入力とする多層パーセプトロンによって決まる値である。
【００９３】
近似分布
【数１６】
2018152004.tif 000018
も同様に、多層パーセプトロンを用いて表現する。
【００９４】
【数１７】
2018152004.tif 000019
【００９５】
このように定義したモデルのパラメータに関して変分下限を最大化する。
【００９６】
変分下限は、
【数１８】
2018152004.tif 000020
と表すことができる。第一項はガウス分布同士のKLダイバージェンスである。第二項は例えばモンテカルロ法により推定する。第二項の計算では、観測xに対してノイズが加えられた潜在変数がエンコードされる。
【００９７】
エンコードされたzは、
【数１９】
2018152004.tif 000021
を通してデコードされ、観測データと比較される。つまり、第二項は復元精度を表す。他方、第一項は潜在変数の事前分布と事後分布のKLダイバージェンスであり、正則化項として働く。
【００９８】
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、種々の変形が可能である。以下に変形例について説明する。
【００９９】
＜変形例１＞
例えば、実施形態では複数のモーダルとして２個のモーダル、すなわち人物の関節の動きと音声データを例示したが、３個以上のモーダル、例えば人物の関節の動きと人物の顔の筋肉の動きと音声データとを用いて潜在要因（感情）を推定することもできる。なお、これら３つのモーダル間には何らかの相関があると考えられるので、実施形態のように一つのモデルで同時に学習することにより、その相関関係も把握することができる。
【０１００】
＜変形例２＞
また、人物の関節の動きと顔の筋肉の動きはともにカメラで撮影することが可能であるが、これらのカメラの撮影範囲が異なってもよい。この場合には、いずれかのデータの収集に失敗することも想定され得るが、いずれかのデータのみでも潜在要因（感情）の推定が可能であり、ロバスト性に優れた装置といえる。
【０１０１】
＜変形例３＞
また、実施形態では、音声データを補間することで、たとえ音声データが欠損した場合であっても音声データのテキストデータへの変換を可能としているが、これ以外にも補間したデータを他の用途に使用することも可能である。具体的には、観測データとして、関節の動きデータと顔の動きデータと音声データから潜在要因としての感情を推定する場合において、顔の動きデータに欠損が生じたときに、推定した感情から欠損した顔の動きを補間して出力する等であり、これは顔の動きを人工的に合成してシミュレーションするものといえる。
【０１０２】
＜変形例４＞
また、実施形態では、図１に示すように、処理部１４が学習部１４１，推定部１４２，データ補間部１４３を備えるものとしているが、観測データに欠損が生じても潜在要因を推定できればよい場合、データ補間部１４３はなくてもよい。勿論、データ補間部１４３は機能モジュールとして存在するものの、用途に応じて当該データ補間機能モジュールをバイパスあるいは無効化してもよい。
【０１０３】
＜変形例５＞
また、実施形態では、ＣＰＵ１８が処理部１４として機能して学習、推定、データ補間の各処理を、ＲＯＭあるいはＨＤＤ２６に記憶された処理プログラムを実行することで実現しているが、これらの機能の一部は、処理プログラムの実行によるソフトウェア処理ではなく、ハードウェア処理により実現してもよい。ハードウェア処理は、例えばＡＳＩＣやＦＰＧＡ（フィールドプログラマブルゲートアレイ）などの回路を用いて行っても良い。なお、これらのハードウェア回路には、画像処理を担当するＧＰＵ（グラフィックスプロセッシングユニット）も含まれ得る。
【０１０４】
＜変形例６＞
また、本実施形態では、感情として楽しい、悲しい、恐れ、怒り、嫌悪、軽蔑等を例示したが、うつ状態等、いわゆる精神疾患に関する内的状態も含まれ得る。
【０１０５】
＜変形例７＞
さらに、本実施形態における情報処理装置は、人物の感情を推定し、推定した感情に基づいて適切な行動を行うことができるロボットに組み込むことも可能である。
【符号の説明】
【０１０６】
１０，１２  データ取得部、１４  処理部、１６  出力部、１８  ＣＰＵ、２０  ＲＯＭ、２２  ＲＡＭ、２４  インターフェイス、２６  ＨＤＤ、２８  表示部、３０  動きセンサ、３２  マイク。
【図１】
2018152004.tif 000022
【図２】
2018152004.tif 000023
【図３】
2018152004.tif 000024
【図４】
2018152004.tif 000025
【図５】
2018152004.tif 000026
【図６】
2018152004.tif 000027
【図７】
2018152004.tif 000028
【図８】
2018152004.tif 000029
【図９】
2018152004.tif 000030
【図１０】
2018152004.tif 000031
【図１１】
2018152004.tif 000032
【図１２】
2018152004.tif 000033
【図１３】
2018152004.tif 000034
【図１４】
2018152004.tif 000035
【図１５】
2018152004.tif 000036
【図１６】
2018152004.tif 000037
【図１７】
2018152004.tif 000038