(57)【要約】【課題】学習済みの学習器による推論の精度を低減させることなく、当該学習済みの学習器による推論結果の妥当性を適切に評価可能な手法を提供する。【解決手段】本発明の一側面に係る評価装置は、訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するデータ取得部と、前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価する妥当性評価部と、を備える。【選択図】図１
2019139277.tif 000002
【特許請求の範囲】
【請求項１】
訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するデータ取得部と、
前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価する妥当性評価部と、
を備える、
評価装置。
【請求項２】
前記妥当性評価部は、前記第２の学習器から得られる出力と所定の閾値とを比較することにより、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを判定する、
請求項１に記載の評価装置。
【請求項３】
前記妥当性評価部は、前記評価の結果として、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られる程度を示す評価値を出力する、
請求項１に記載の評価装置。
【請求項４】
前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られないと評価した場合に、前記入力データを前記第１の学習器に入力することで前記入力データに対する推論結果として前記第１の学習器から得られる出力に関する警告を行う警告部を更に備える、
請求項１から３のいずれか１項に記載の評価装置。
【請求項５】
前記第１の学習器に前記入力データを入力し、前記第１の学習器からの出力を得ることで、前記入力データに対して所定の推論を行う推論部を更に備える、
請求項１から４のいずれか１項に記載の評価装置。
【請求項６】
前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られると評価した場合に、前記推論の結果に基づいて所定の動作を実行する動作実行部であって、前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データの推論結果として妥当な出力を前記第１の学習器から得られないと評価した場合には、前記推論の結果に基づく前記所定の動作の実行を停止する動作実行部を更に備える、
請求項５に記載の評価装置。
【請求項７】
前記入力データは、車両の運転席に着いた運転者の写り得る画像データを含み、
前記入力データを前記第１の学習器に入力することで前記第１の学習器から得られる出力は、前記運転者の状態を示す情報を含む、
請求項１から６のいずれか１項に記載の評価装置。
【請求項８】
前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られないと評価した場合に、前記入力データを所定の記憶場所に送信するデータ送信部を更に備える、
請求項１から７のいずれか１項に記載の評価装置。
【請求項９】
前記第１の学習器は、前記入力データをエンコードする第１のエンコーダにより構成され、
前記第２の学習器は、前記入力データをエンコードする第２のエンコーダ、及び前記第２のエンコーダの出力をデコードするデコーダにより構成される、
請求項１から８のいずれか１項に記載の評価装置。
【請求項１０】
前記第１のエンコーダと前記第２のエンコーダとは同一である、
請求項９に記載の評価装置。
【請求項１１】
前記第１のエンコーダは、前記訓練データを入力すると、入力した前記訓練データと対の前記正解データに対応する値を出力するように構築され、
前記第２のエンコーダは、前記第１のエンコーダと同一、又は前記第１のエンコーダのコピーであり、
前記デコーダは、前記第１のエンコーダの出力を入力すると、入力した出力を得るのに前記第１のエンコーダに入力した前記訓練データに対応する値を出力するように構築されている、
請求項９に記載の評価装置。
【請求項１２】
訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するデータ取得部と、
前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価する妥当性評価部と、
前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られると評価した場合に、前記第１の学習器に前記入力データを入力し、前記第１の学習器からの出力を得ることで、前記入力データに対して行われた所定の推論の結果に基づいて所定の動作の実行を制御する動作実行部であって、前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データの推論結果として妥当な出力を前記第１の学習器から得られないと評価した場合には、前記推論の結果に基づく前記所定の動作の実行を停止するように制御する動作実行部と、
を備える、
動作制御装置。
【請求項１３】
コンピュータが、
訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するステップと、
前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価するステップと、
を実行する、
評価方法。
【請求項１４】
コンピュータに、
訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するステップと、
前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価するステップと、
実行させるための、
評価プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、評価装置、動作制御装置、評価方法、及び評価プログラムに関する。
【背景技術】
【０００２】
近年、画像認識、音声認識、言語解析等の様々な分野で機械学習が利用されている。機械学習とは、与えられたデータ（訓練データ）に潜むパターンをコンピュータにより見つけ出す手法のことであり、機械学習を実施することで得られる学習済みの学習器は、未知の入力データに対して所定の推論を行う能力を獲得することができる。推論の結果は、上記画像認識、音声認識、言語解析等に利用される。
【０００３】
ただし、機械学習後に与えられる入力データの全ての種類を想定して訓練データを用意することは困難である。例えば、画像認識の分野で機械学習を利用する場合に、画像認識の対象となるあらゆる事象を想定して画像データを用意することは困難である。機械学習の際に用意された訓練データとはかけ離れた種類の入力データが与えられた場合には、学習済みの学習器による入力データに対する推論の妥当性が損なわれてしまう、すなわち、誤った推論を行ってしまう可能性がある。
【０００４】
そこで、特許文献１では、入力データに対する所定の推論を行う問題解決用ニューラルネットワークとは別のニューラルネットワークを利用して、当該問題解決用ニューラルネットワークの出力の信頼性を評価する手法が提案されている。具体的には、問題解決用ニューラルネットワークの学習に利用した学習データとは異なる未学習データを利用して、未学習事例判別用ニューラルネットワークの機械学習を実施する。これにより、未学習事例判別用ニューラルネットワークは、入力データが未学習データに類似するか否かを判別する能力を獲得することができる。
【０００５】
当該手法では、このように構築された未学習事例判別用ニューラルネットワークにより、問題解決用ニューラルネットワークの出力の信頼性を評価する。すなわち、推論を行う際に、問題解決用ニューラルネットワークに入力される入力データをこの未学習事例判別用ニューラルネットワークにも入力する。そして、未学習事例判別用ニューラルネットワークから得られる出力に基づいて、当該入力データが未学習データに類似するか否かを判別する。これによって、入力データが、問題解決用ニューラルネットワークの学習に利用した学習データとはかけ離れた種類のものであるか否かを判定し、当該入力データを入力したときに問題解決用ニューラルネットワークから得られる出力（すなわち、推論結果）の信頼性を評価する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０５−２２５１６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本件発明者らは、上記特許文献１で提案されている手法に対して次のような問題点を見出した。すなわち、機械学習では、基本的には、学習に利用する訓練データの数が多ければ多いほど、学習済みの学習器による推論の精度を高めることができる。しかしながら、特許文献１で提案されている手法では、機械学習のために用意した訓練データを、問題解決用ニューラルネットワークの学習に利用する学習データと、未学習事例判別用ニューラルネットワークの学習に利用する未学習データとに分けることになる。つまり、用意した全ての訓練データを、問題解決用ニューラルネットワークの学習に利用することができなくなってしまうため、学習済みの問題解決用ニューラルネットワークによる推論の精度が低減してしまう可能性がある。
【０００８】
また、上記のとおり、推論の対象となるあらゆる事象を想定して訓練データを用意することは困難である。そのため、問題解決用ニューラルネットワークに入力されるあらゆる種類の入力データを想定して、未学習事例判別用ニューラルネットワークの学習に利用する未学習データを用意することはそもそも困難である。つまり、機械学習の際に用意された訓練データとはかけ離れた種類の入力データが与えられる可能性があるという根本的な原因を取り除くことができない。したがって、特許文献１で提案されている手法では、問題解決用ニューラルネットワークによる推論結果の信頼性を適切に評価可能な未学習事例判別用ニューラルネットワークを構築することは困難である。
【０００９】
本発明は、一側面では、このような実情を鑑みてなされたものであり、その目的は、学習済みの学習器による推論の精度を低減させることなく、当該学習済みの学習器による推論結果の妥当性を適切に評価可能な手法を提供する。
【課題を解決するための手段】
【００１０】
本発明は、上述した課題を解決するために、以下の構成を採用する。
【００１１】
すなわち、本発明の一側面に係る評価装置は、訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するデータ取得部と、前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価する妥当性評価部と、を備える。
【００１２】
上記構成に係る評価装置では、２つの学習済みの学習器が用意される。まず、学習済みの第１の学習器は、訓練データと正解データとの対で構成されたデータセットを利用して教師あり学習を実施することにより構築される。訓練データは、推論の対象となるデータであり、正解データは、訓練データに対する推論結果の正解を示すデータである。教師あり学習は、訓練データを入力すると正解データに対応する出力値を出力するように学習器を学習させる機械学習の手法である。そのため、学習済みの第１の学習器は、当該教師あり学習によって、所定の推論を行う能力を有するように構築される。
【００１３】
一方、学習済みの第２の学習器は、第１の学習器の機械学習に利用した訓練データを利用して教師なし学習を実施することで構築される。教師なし学習は、教師あり学習とは異なり、正解データを用いずに、訓練データの構造、法則、傾向、分類等の統計的な特徴を導き出す機械学習の手法であり、訓練データを入力すると、訓練データの統計的な特徴の識別結果に対応する出力値を出力するように学習器を学習させる機械学習の手法である。学習済みの第２の学習器は、当該教師なし学習によって、対象のデータが訓練データに類似するか否かを識別する能力を有するように構築される。
【００１４】
そして、上記構成に係る評価装置では、学習済みの第２の学習器を用いて、学習済みの第１の学習器による推論結果の妥当性を評価する。すなわち、上記構成に係る評価装置は、学習済みの第１の学習器に入力される入力データを取得し、取得した入力データを学習済みの第２の学習器に入力する。上記のとおり、学習済みの第２の学習器は、教師なし学習によって、入力データが訓練データに類似するか否かを識別する能力を獲得している。そのため、上記構成に係る評価装置は、第２の学習器に入力データを入力することで当該第２の学習器から得られる出力に基づいて、第１の学習器の機械学習に利用した訓練データに入力データが類似するか否かを識別することができる。この能力を利用して、上記構成に係る評価装置は、入力データを第１の学習器に入力したときに、当該入力データに対する推論結果として妥当な出力を当該第１の学習器から得られるか否かを評価する。
【００１５】
したがって、上記構成によれば、機械学習のために用意した訓練データを、第１の学習器及び第２の学習器の学習の両方に共通して利用可能であるため、第１の学習器の学習に利用するものと第２の学習器の学習に利用するものとに分けなくてもよい。そのため、第１の学習器の機械学習に利用する訓練データの数が過度に少なくなるのを防止することができる。また、上記構成によれば、教師なし学習の特性を活用することで、機械学習の際に用意された訓練データとはかけ離れた種類の入力データが与えられる可能性があるという根本的な原因を取り除くことができる。すなわち、学習済みの第２の学習器は、第１の学習器の学習に利用した訓練データから導き出された統計的な特徴に基づいて、与えられた入力データが当該訓練データとかけ離れた種類のものであるか否かを評価可能に構成される。そのため、第２の学習器の学習のために、第１の学習器に入力されるあらゆる種類の入力データを想定して訓練データを用意しなくてもよい。よって、上記構成によれば、学習済みの第１の学習器による推論の精度を低減させることなく、当該学習済みの第１の学習器による推論結果の妥当性を適切に評価することができる。
【００１６】
なお、「訓練データ」は、「学習データ」と称されてもよい。「正解データ」は、「ラベル」又は「教師データ」と称されてもよい。「データセット」は、「訓練データセット」又は「学習データセット」と称されてもよい。「学習済みの学習器」は、「識別器」又は「分類器」と称されてもよい。
【００１７】
また、「学習器」は、機械学習により所定のパターンを識別する能力を獲得可能な学習モデルにより構成されればよい。第１の学習器は、教師あり学習に利用可能な学習モデルにより構成されればよく、例えば、ニューラルネットワーク、線形回帰モデル、サポートベクタマシン等により構成されてよい。一方、第２の学習器は、教師なし学習に利用可能な学習モデルにより構成されればよく、例えば、自己符号化器（オートエンコーダ）、マハラノビス距離を算出する演算モデル、１クラスサポートベクタマシン（1-class SVM）等により構成されてよい。
【００１８】
更に、第１の学習器による推論の種類は、実施の形態に応じて適宜選択されてよい。例えば、第１の学習器による推論の種類は、画像認識、音声認識、言語解析等であってもよい。この推論の種類に応じて、訓練データ、正解データ、及び入力データの種類は適宜選択されてよい。例えば、訓練データ及び入力データは、画像データ、音声データ、テキストデータ、数値データ等であってよし、これらの組み合わせであってもよい。また、例えば、正解データは、画像データに対する画像認識の結果を示すデータ、音声データに対する音声認識の結果を示すデータ、テキストデータに対する言語解析の結果を示すデータ、数値データに対する所定の判定結果を示すデータ等であってよい。
【００１９】
上記一側面に係る評価装置において、前記妥当性評価部は、前記第２の学習器から得られる出力と所定の閾値とを比較することにより、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを判定してもよい。当該構成によれば、入力データに対する第１の学習器による推論結果の妥当性を適切に評価することができる。
【００２０】
上記一側面に係る評価装置において、前記妥当性評価部は、前記評価の結果として、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られる程度を示す評価値を出力してもよい。当該構成によれば、出力された評価値に基づいて、入力データに対する第１の学習器による推論結果の妥当性を適切に評価することができる。
【００２１】
上記一側面に係る評価装置は、前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られないと評価した場合に、前記入力データを前記第１の学習器に入力することで前記入力データに対する推論結果として前記第１の学習器から得られる出力に関する警告を行う警告部を更に備えてもよい。当該構成によれば、入力データに対する第１の学習器による推論結果の妥当性が低いことをユーザ等に警告することができる。
【００２２】
上記一側面に係る評価装置は、前記第１の学習器に前記入力データを入力し、前記第１の学習器からの出力を得ることで、前記入力データに対して所定の推論を行う推論部を更に備えてもよい。当該構成によれば、入力データに対して所定の推論を行うと共に、当該推論の結果の妥当性を評価可能な評価装置を提供することができる。
【００２３】
上記一側面に係る評価装置は、前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られると評価した場合に、前記推論の結果に基づいて所定の動作を実行する動作実行部であって、前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データの推論結果として妥当な出力を前記第１の学習器から得られないと評価した場合には、前記推論の結果に基づく前記所定の動作の実行を停止する動作実行部を更に備えてもよい。当該構成では、入力データに対する第１の学習器による推論結果が妥当であると評価した場合に、当該推論結果に基づいて所定の動作を実行するのに対して、当該推論結果が妥当ではないと評価した場合には、当該推論結果に基づく所定の動作の実行を停止する。これにより、当該構成によれば、第１の学習器による推論結果に基づく動作制御の信頼性を高めることができる。なお、「所定の動作の実行を停止する」ことは、所定の動作の実行を維持しないあらゆる態様を含んでもよい。すなわち、「所定の動作の実行を停止する」ことは、所定の動作を完全に停止することの他、例えば、速度、加速度、力等の所定の動作の属性を変更することを含んでもよい。
【００２４】
上記一側面に係る評価装置において、前記入力データは、車両の運転席に着いた運転者の写り得る画像データを含んでもよく、前記入力データを前記第１の学習器に入力することで前記第１の学習器から得られる出力は、前記運転者の状態を示す情報を含んでもよい。当該構成によれば、画像データを含む入力データに基づいて運転者の状態を判定する推論の妥当性を評価する評価装置を提供することができる。
【００２５】
上記一側面に係る評価装置は、前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られないと評価した場合に、前記入力データを所定の記憶場所に送信するデータ送信部を更に備えてもよい。第１の学習器による推論結果の妥当性が低いと評価された場合、与えられた入力データは、第１の学習器の機械学習に利用した訓練データとはかけ離れた種類のものであると想定される。当該構成によれば、そのような入力データを所定の記憶場所に収集することができる。これによって、収集した入力データを新たな訓練データとして利用し、第１の学習器により推論可能な対象の範囲を拡げることができる。
【００２６】
上記一側面に係る評価装置において、前記第１の学習器は、前記入力データをエンコードする第１のエンコーダにより構成されてよく、前記第２の学習器は、前記入力データをエンコードする第２のエンコーダ、及び前記第２のエンコーダの出力をデコードするデコーダにより構成されてよい。各エンコーダ及びデコーダは、例えば、ニューラルネットワークにより構築されてよい。エンコーダ及びデコーダを備える第２の学習器として、自己符号化器が用いられてよい。デコーダは、第２のエンコーダの出力をデコードするように、すなわち、第２のエンコーダに入力された入力データを復元するように構築される。そのため、デコーダから得られた出力が第２のエンコーダに入力した入力データに類似するほど、その入力データは訓練データに類似していると識別することができる。反対に、デコーダから得られた出力が、第２のエンコーダに入力した入力データとは類似しないほど、その入力データは訓練データに類似しないと識別することができる。したがって、当該構成によれば、第１の学習器による推論結果の妥当性を適切に評価することができる。
【００２７】
上記一側面に係る評価装置において、前記第１のエンコーダと前記第２のエンコーダとは同一であってよい。当該構成によれば、第１の学習器と第２の学習器との間でエンコーダを共有させることで、第１の学習器及び第２の学習器のトータルの計算コストを抑えることができ、かつ、第２の学習器の演算速度を高めることができる。
【００２８】
上記一側面に係る評価装置において、前記第１のエンコーダは、前記訓練データを入力すると、入力した前記訓練データと対の前記正解データに対応する値を出力するように構築され、前記第２のエンコーダは、前記第１のエンコーダと同一、又は前記第１のエンコーダのコピーであり、前記デコーダは、前記第１のエンコーダの出力を入力すると、入力した出力を得るのに前記第１のエンコーダに入力した前記訓練データに対応する値を出力するように構築されていてよい。当該構成によれば、第１の学習器と第２の学習器との間でエンコーダを共有させることで、第１の学習器及び第２の学習器のトータルの計算コストを抑えることができ、かつ、第２の学習器の演算速度を高めることができる。
【００２９】
なお、上記各形態に係る評価装置に上記動作実行部を組み合わせることで、動作制御装置を構築してもよい。例えば、本発明の一側面に係る動作制御装置は、訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するデータ取得部と、前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価する妥当性評価部と、前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られると評価した場合に、前記第１の学習器に前記入力データを入力し、前記第１の学習器からの出力を得ることで、前記入力データに対して行われた所定の推論の結果に基づいて所定の動作の実行を制御する動作実行部であって、前記妥当性評価部が、前記入力データを前記第１の学習器に入力したときに前記入力データの推論結果として妥当な出力を前記第１の学習器から得られないと評価した場合には、前記推論の結果に基づく前記所定の動作の実行を停止するように制御する動作実行部と、を備える。なお、所定の動作を実行する装置は、動作制御装置自身であってもよいし、動作制御装置とは異なる他の装置であってもよい。所定の動作を他の装置が実行する場合、動作制御装置は、その指令を他の装置に送信することで、所定の動作の実行を制御する。
【００３０】
また、上記各形態に係る評価装置又は動作制御装置の別の態様として、以上の各構成を実現する情報処理方法であってもよいし、プログラムであってもよいし、このようなプログラムを記憶した、コンピュータその他装置、機械等が読み取り可能な記憶媒体であってもよい。ここで、コンピュータ等が読み取り可能な記憶媒体とは、プログラム等の情報を、電気的、磁気的、光学的、機械的、又は、化学的作用によって蓄積する媒体である。
【００３１】
例えば、本発明の一側面に係る評価方法は、コンピュータが、訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するステップと、前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価するステップと、を実行する、情報処理方法である。
【００３２】
また、例えば、本発明の一側面に係る評価プログラムは、コンピュータに、訓練データ及び当該訓練データに対する推論結果の正解を示す正解データの対で構成されたデータセットを利用して教師あり学習を行った学習済みの第１の学習器に入力される入力データを取得するステップと、前記訓練データを利用して教師なし学習を行った学習済みの第２の学習器に前記入力データを入力することで当該第２の学習器から得られる出力に基づいて、前記入力データを前記第１の学習器に入力したときに前記入力データに対する推論結果として妥当な出力を前記第１の学習器から得られるか否かを評価するステップと、
実行させるための、プログラムである。
【発明の効果】
【００３３】
本発明によれば、学習済みの学習器による推論の精度を低減させることなく、当該学習済みの学習器による推論結果の妥当性を適切に評価可能な手法を提供することができる。
【図面の簡単な説明】
【００３４】
【図１】図１は、本発明の基本的な構成の一例を模式的に例示する。
【図２】図２は、本発明が適用される場面の一例を模式的に例示する。
【図３】図３は、実施の形態に係る自動車運転支援装置のハードウェア構成の一例を模式的に例示する。
【図４】図４は、実施の形態に係る学習装置のハードウェア構成の一例を模式的に例示する。
【図５】図５は、実施の形態に係る自動車運転支援装置のソフトウェア構成の一例を模式的に例示する。
【図６Ａ】図６Ａは、実施の形態に係る注視状態情報の一例を模式的に例示する。
【図６Ｂ】図６Ｂは、実施の形態に係る即応性情報の一例を模式的に例示する。
【図７Ａ】図７Ａは、実施の形態に係るニューラルネットワークの構成の一例を模式的に例示する。
【図７Ｂ】図７Ｂは、実施の形態に係る自己符号化器のデコーダの構成の一例を模式的に例示する。
【図８】図８は、実施の形態に係る学習装置のソフトウェア構成の一例を模式的に例示する。
【図９Ａ】図９Ａは、実施の形態に係る学習装置によりニューラルネットワークの機械学習過程の一例を模式的に例示する。
【図９Ｂ】図９Ｂは、実施の形態に係る学習装置による自己符号化器のデコーダの機械学習過程の一例を模式的に例示する。
【図１０Ａ】図１０Ａは、実施の形態に係る自動運転支援装置の処理手順の一例を例示する。
【図１０Ｂ】図１０Ｂは、実施の形態に係る自動運転支援装置の処理手順の一例を例示する。
【図１１】図１１は、実施の形態に係る学習装置の処理手順の一例を例示する。
【図１２】図１２は、本発明が適用される他の場面の一例を模式的に例示する。
【図１３】図１３は、他の形態に係る診断装置のソフトウェア構成の一例を模式的に例示する。
【図１４】図１４は、他の形態に係る学習装置のソフトウェア構成の一例を模式的に例示する。
【図１５】図１５は、本発明が適用される他の場面の一例を模式的に例示する。
【図１６】図１６は、他の形態に係る予測装置のソフトウェア構成の一例を模式的に例示する。
【図１７】図１７は、他の形態に係る学習装置のソフトウェア構成の一例を模式的に例示する。
【図１８】図１８は、他の形態に係る自動運転支援装置の処理手順の一例を例示する。
【発明を実施するための形態】
【００３５】
以下、本発明の一側面に係る実施の形態（以下、「本実施形態」とも表記する）を、図面に基づいて説明する。ただし、以下で説明する本実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
【００３６】
§１  適用例
まず、図１を用いて、本発明の基本的な構成の一例を説明する。本実施形態では、２つの学習済みの学習器（２、４）が用意される。
【００３７】
まず、学習済みの第１の学習器２は、訓練データ３１と正解データ３２との対で構成された訓練（学習）用のデータセット３を利用して教師あり学習を実施することで構築される。訓練データ３１は、推論の対象となるデータであり、正解データ３２は、訓練データ３１に対する推論結果の正解を示すデータである。例えば、画像認識のために推論を行う場合、訓練データ３１は画像データであり、正解データ３２は、画像データに対して画像認識の正解を示すデータである。教師あり学習は、訓練データを入力すると正解データに対応する出力値を出力するように学習器を学習させる機械学習の手法である。そのため、学習済みの第１の学習器２は、当該教師あり学習によって、所定の推論を行う能力を有するように構築される。すなわち、学習済みの第１の学習器２に入力データ５を入力すると、当該入力データ５に対する所定の推論の結果に対応する出力２１を当該学習済みの第１の学習器２から得ることができる。
【００３８】
一方、学習済みの第２の学習器４は、第１の学習器２の機械学習に利用した訓練データ３１を利用して教師なし学習を実施することで構築される。教師なし学習は、教師あり学習とは異なり、正解データを用いずに、訓練データの構造、法則、傾向、分類等の統計的な特徴を導き出す機械学習の手法であり、訓練データを入力すると、訓練データの統計的な特徴の識別結果に対応する出力値を出力するように学習器を学習させる機械学習の手法である。そのため、学習済みの第２の学習器４は、当該教師なし学習によって、対象のデータが訓練データ３１に類似するか否かを識別する能力を有するように構築される。この学習済みの第２の学習器４は、例えば、訓練データ３１をエンコードして、そのエンコードした結果をデコードすることで訓練データ３１を復元するように構築されてもよいし、訓練データ３１を所定の分類に識別するように構築されてもよい。
【００３９】
評価装置１は、学習済みの第２の学習器４を用いて、学習済みの第１の学習器２による推論結果の妥当性を評価する。すなわち、評価装置１は、学習済みの第１の学習器２に入力される入力データ５を取得し、取得した入力データ５を学習済みの第２の学習器４に入力する。上記のとおり、学習済みの第２の学習器４は、教師なし学習によって、入力データ５が訓練データ３１に類似するか否かを識別する能力を獲得している。そのため、学習済みの第２の学習器４に入力データ５を入力すると、入力データ５が訓練データ３１に類似するか否かを識別した結果に関連する出力４１を当該第２の学習器４から得ることができる。そこで、評価装置１は、第２の学習器４に入力データ５を入力することで当該第２の学習器４から得られる出力４１に基づいて、入力データ５を第１の学習器２に入力したときに入力データ５に対する推論結果として妥当な出力を第１の学習器２から得られるか否かを評価する。
【００４０】
したがって、本実施形態によれば、機械学習のために用意した訓練データ３１を、第１の学習器２及び第２の学習器４の学習の両方に共通して利用可能であるため、第１の学習器２の学習に利用するものと第２の学習器４の学習に利用するものとに分けなくてもよい。そのため、第１の学習器２の機械学習に利用する訓練データ３１の数が過度に少なくなるのを防止することができる。また、本実施形態によれば、学習済みの第２の学習器４は、第１の学習器２の学習に利用した訓練データ３１から導き出された統計的な特徴に基づいて、与えられた入力データ５が当該訓練データ３１とかけ離れた種類のものであるか否かを評価可能に構成される。そのため、第２の学習器４の学習のために、第１の学習器２に入力されるあらゆる種類の入力データ５を想定して訓練データ３１を用意しなくてもよい。よって、本実施形態によれば、学習済みの第１の学習器２による推論の精度を低減させることなく、当該学習済みの第１の学習器２による推論結果の妥当性を適切に評価することができる。
【００４１】
なお、図１では、第１の学習器２は、評価装置１の外部（例えば、ネットワークを介して評価装置１とアクセス可能な等の外部装置）に保持され、第２の学習器４は、評価装置１の内部に保持されている。しかしながら、各学習器（２、４）の保持される場所は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてもよい。例えば、第１の学習器２は、評価装置１の内部に保持されてもよい。また、例えば、第２の学習器４は、ネットワークを介して評価装置１とアクセス可能な外部装置（例えば、サーバ）に保持されてもよい。
【００４２】
また、各学習器（２、４）は、機械学習により所定のパターンを識別する能力を獲得可能な学習モデルにより構成されればよい。第１の学習器２は、教師あり学習に利用可能な学習モデルにより構成されればよく、例えば、ニューラルネットワーク、線形回帰モデル、サポートベクタマシン等により構成されてよい。一方、第２の学習器４は、教師なし学習に利用可能な学習モデルにより構成されればよく、例えば、自己符号化器（オートエンコーダ）、マハラノビス距離を算出する演算モデル、１クラスサポートベクタマシン（1-class SVM）等により構成されてよい。教師あり学習及び教師なし学習それぞれの具体的な手法は、各学習器（２、４）に利用する学習モデルに応じて公知の手法が適宜選択されてよい。
【００４３】
更に、第１の学習器２による推論の種類は、実施の形態に応じて適宜選択されてもよい。例えば、第１の学習器２による推論の種類は、画像認識、音声認識、言語解析等であってもよい。この推論の種類に応じて、訓練データ３１、正解データ３２、及び入力データ５の種類は適宜選択されてもよい。例えば、訓練データ３１及び入力データ５は、画像データ、音声データ、テキストデータ、数値データ等であってよし、これらの組み合わせであってもよい。例えば、正解データ３２は、画像データに対する画像認識の結果を示すデータ、音声データに対する音声認識の結果を示すデータ、テキストデータに対する言語解析の結果を示すデータ、数値データに対する所定の判定結果を示すデータ等であってよい。
【００４４】
また、第１の学習器２の教師あり学習に利用する訓練データと第２の学習器４の教師なし学習に利用する訓練データとは完全に一致していることが好ましい。ただし、第１の学習器２の教師あり学習に利用する訓練データと第２の学習器４の教師なし学習に利用する訓練データとは、少なくとも一部が重複していれば、完全に一致していなくてもよい。第１の学習器２の教師あり学習に利用する訓練データと第２の学習器４の教師なし学習に利用する訓練データとが少なくとも一部で重複しているもののその他の部分で相違しているケースも、第１の学習器２の教師あり学習に利用した訓練データ３１を利用して第２の学習器４の教師なし学習を行ったものとする。
【００４５】
次に、図２を用いて、本発明が適用される場面の一例について説明する。上記評価装置１は、教師あり学習を利用した様々な分野で適用可能である。図２は、本実施形態の一例として、自動車の自動運転を支援する自動運転支援装置１Ａに本発明を適用した例を示す。すなわち、本実施形態に係る自動運転支援装置１Ａは、上記評価装置１の一例であり、また、本発明の「動作制御装置」の一例でもある。
【００４６】
図２に示されるとおり、本実施形態に係る自動運転支援装置１Ａは、カメラ７１を利用して運転者Ｄを監視しながら、車両の自動運転を支援するコンピュータである。具体的には、自動運転支援装置１Ａは、車両の運転席に着いた運転者Ｄを撮影するように配置されたカメラ７１から撮影画像を取得する。また、自動運転支援装置１Ａは、運転者Ｄの顔の挙動に関する顔挙動情報を含む運転者Ｄの観測情報（後述する観測情報５１）を取得する。
【００４７】
そして、自動運転支援装置１Ａは、撮影画像（後述する低解像度撮影画像５２）及び観測情報を含む入力データ（後述する入力データ５Ａ）を学習済みの第１の学習器（後述するニューラルネットワーク２Ａ）に入力することで、運転者Ｄの運転状態を示す運転状態情報を当該第１の学習器から取得する。これにより、自動運転支援装置１Ａは、第１の学習器を利用して、車両の運転席に着いた運転者Ｄの写り得る画像データ（撮影画像）を含む入力データに対して運転者Ｄの状態を推定する推論を実施する。
【００４８】
更に、自動運転支援装置１Ａは、入力データを学習済みの第２の学習器（後述する自己符号化器４Ａ）に入力することで当該第２の学習器から得られる出力に基づいて、入力データを第１の学習器に入力したときに入力データに対する推論結果として妥当な出力を第１の学習器から得られるか否かを評価する。これにより、自動運転支援装置１Ａは、第２の学習器を利用して、入力データに対する第１の学習器による推論の妥当性を評価する。
【００４９】
一方、本実施形態に係る学習装置６は、自動運転支援装置１Ａで利用する第１の学習器及び第２の学習器それぞれを構築する、すなわち、教師あり学習及び教師なし学習による機械学習を実施するコンピュータである。具体的には、学習装置６は、訓練データ（後述する訓練データ３１Ａ）及び正解データ（後述する正解データ３２Ａ）の対で構成されたデータセット（後述するデータセット３Ａ）を利用して第１の学習器の教師あり学習を実施する。また、学習装置６は、訓練データ（後述する訓練データ３１Ａ）を利用して第２の学習器の教師なし学習を実施する。これにより、学習装置６は、自動運転支援装置１Ａで利用する第１の学習器及び第２の学習器を生成する。自動運転支援装置１Ａは、例えば、ネットワークを介して、学習装置６により生成された学習済みの第１及び第２の学習器を取得することができる。なお、ネットワークの種類は、例えば、インターネット、無線通信網、移動通信網、電話網、専用網等から適宜選択されてよい。
【００５０】
以上のとおり、本実施形態の一例では、学習済みの第１の学習器を利用して、撮影画像及び観測情報を含む入力データに対して運転者Ｄの状態を推定する推論を実施すると共に、学習済みの第２の学習器を利用して、入力データに対する第１の学習器による当該推論の妥当性を評価する。これにより、自動運転支援装置１Ａにおいて、運転者Ｄの状態を推定する推論結果に誤りが生じている可能性の高い場合に、そのことを知らせるための警告を出力したり、推論結果を利用した動作制御等の情報処理を停止したりすることができる。そのため、第１の学習器による運転者Ｄの状態の推定の誤りに起因する自動運転支援装置１Ａの誤動作の発生を抑制することができる。
【００５１】
§２  構成例
［ハードウェア構成］
＜自動運転支援装置＞
次に、図３を用いて、本実施形態に係る自動運転支援装置１Ａのハードウェア構成の一例について説明する。図３は、本実施形態に係る自動運転支援装置１Ａのハードウェア構成の一例を模式的に例示する。
【００５２】
図３に示されるとおり、本実施形態に係る自動運転支援装置１Ａは、制御部１１、記憶部１２、及び外部インタフェース１３が電気的に接続されたコンピュータである。なお、図３では、外部インタフェースを「外部Ｉ／Ｆ」と記載している。
【００５３】
制御部１１は、ハードウェアプロセッサであるＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等を含み、情報処理に応じて各構成要素の制御を行う。制御部１１は、例えば、ＥＣＵ（Electronic Control Unit）により構成されてもよい。記憶部１２は、例えば、ＲＡＭ、ＲＯＭ等で構成され、プログラム１２１、第１学習結果データ１２２、第２学習結果データ１２３等の各種情報を記憶する。記憶部１２は、「メモリ」の一例である。
【００５４】
プログラム１２１は、第１の学習器を利用して、運転者Ｄの状態を推定するための推論を実施すると共に、第２の学習器を利用して、第１の学習器による推論の妥当性を評価するための情報処理（図１０Ａ及び図１０Ｂ）を自動運転支援装置１Ａに実行させるためのプログラムである。当該プログラム１２１は、本発明の「評価プログラム」の一例である。第１学習結果データ１２２は、学習済みの第１の学習器の設定を行うためのデータである。第２学習結果データ１２３は、学習済みの第２の学習器の設定を行うためのデータである。詳細は後述する。
【００５５】
外部インタフェース１３は、外部装置と接続するためのインタフェースであり、接続する外部装置に応じて適宜構成される。本実施形態では、外部インタフェース１３は、例えば、ＣＡＮ（Controller Area Network）を介して、ナビゲーション装置７０、カメラ７１、生体センサ７２、及びスピーカ７３に接続される。
【００５６】
ナビゲーション装置７０は、車両の走行時に経路案内を行うコンピュータである。ナビゲーション装置７０には、公知のカーナビゲーション装置が用いられてよい。ナビゲーション装置７０は、ＧＰＳ（Global Positioning System）信号に基づいて自車位置を測定し、地図情報及び周辺の建物等に関する周辺情報を利用して、経路案内を行うように構成される。なお、以下では、ＧＰＳ信号に基づいて測定される自車位置を示す情報を「ＧＰＳ情報」と称する。
【００５７】
カメラ７１は、車両の運転席に着いた運転者Ｄを撮影するように配置される。例えば、図２の例では、カメラ７１は、運転席の前方上方に配置されている。しかしながら、カメラ７１の配置場所は、このような例に限定されなくてもよく、運転席に着いた運転者Ｄを撮影可能であれば、実施の形態に応じて適宜選択されてよい。なお、カメラ７１には、一般のデジタルカメラ、ビデオカメラ等が用いられてよい。
【００５８】
生体センサ７２は、運転者Ｄの生体情報を測定するように構成される。測定対象となる生体情報は、特に限定されなくてもよく、例えば、脳波、心拍数等であってよい。生体センサ７２は、測定対象となる生体情報を測定可能であれば特に限定されなくてもよく、例えば、公知の脳波センサ、脈拍センサ等が用いられてよい。生体センサ７２は、測定対象となる生体情報に応じた運転者Ｄの身体部位に装着される。
【００５９】
スピーカ７３は、音声を出力するように構成される。スピーカ７３は、車両の走行中に運転者Ｄが当該車両の運転に適した状態ではない場合に、当該車両の運転に適した状態をとるように当該運転者Ｄに対して警告するのに利用される。詳細は後述する。
【００６０】
なお、外部インタフェース１３には、上記以外の外部装置が接続されてよい。例えば、外部インタフェース１３には、ネットワークを介してデータ通信を行うための通信モジュールが接続されてもよい。外部インタフェース１３に接続する外部装置は、上記の各装置に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。
【００６１】
また、図３の例では、自動運転支援装置１Ａは、１つの外部インタフェース１３を備えている。しかしながら、外部インタフェース１３は、接続する外部装置毎に設けられてもよい。外部インタフェース１３の数は、実施の形態に応じて適宜選択可能である。
【００６２】
なお、自動運転支援装置１Ａの具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部１１は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、ＦＰＧＡ（field-programmable gate array）等で構成されてよい。記憶部１２は、制御部１１に含まれるＲＡＭ及びＲＯＭにより構成されてもよい。記憶部１２は、ハードディスクドライブ、ソリッドステートドライブ等の補助記憶装置で構成されてもよい。自動運転支援装置１Ａは、ネットワークを介して外部装置とデータ通信するための通信インタフェースを備えてもよい。自動運転支援装置１Ａは、入力装置及び出力装置を備えてもよい。また、自動運転支援装置１Ａには、提供されるサービス専用に設計された情報処理装置の他、スマートフォン等の携帯端末、タブレットＰＣ（Personal Computer）等の汎用のコンピュータが用いられてもよい。自動運転支援装置１Ａは、ナビゲーション装置７０と一体のコンピュータで構成されてもよい。
【００６３】
＜学習装置＞
次に、図４を用いて、本実施形態に係る学習装置６のハードウェア構成の一例を説明する。図４は、本実施形態に係る学習装置６のハードウェア構成の一例を模式的に例示する。
【００６４】
図４に示されるとおり、本実施形態に係る学習装置６は、制御部６１、記憶部６２、通信インタフェース６３、入力装置６４、出力装置６５、及びドライブ６６が電気的に接続されたコンピュータである。なお、図４では、通信インタフェースを「通信Ｉ／Ｆ」と記載している。
【００６５】
制御部６１は、上記制御部１１と同様に、ハードウェアプロセッサであるＣＰＵ、ＲＡＭ、ＲＯＭ等を含み、プログラム及びデータに基づいて各種情報処理を実行するように構成される。記憶部６２は、例えば、ハードディスクドライブ、ソリッドステートドライブ等で構成される。記憶部６２は、制御部６１で実行される学習プログラム６２１、学習器の学習に利用するためのデータセット３Ａ、学習プログラム６２１を実行することで生成した各学習結果データ（１２２、１２３）等を記憶する。
【００６６】
学習プログラム６２１は、学習装置６に後述する機械学習の処理（図１１）を実行させるためのプログラムである。データセット３Ａは、後述する訓練データ３１Ａ及び正解データ３２Ａの対で構成され（図８）、第１の学習器の教師あり学習に利用される。また、データセット３Ａの訓練データ３１Ａは、第２の学習器の教師なし学習に利用される。データセット３Ａは、上記データセット３の一例である。詳細は後述する。
【００６７】
通信インタフェース６３は、例えば、有線ＬＡＮ（Local Area Network）モジュール、無線ＬＡＮモジュール等であり、ネットワークを介した有線又は無線通信を行うためのインタフェースである。学習装置６は、当該通信インタフェース６３を介して、作成した各学習結果データ（１２２、１２３）を、自動運転支援装置１Ａ等の外部装置に配信することができる。
【００６８】
入力装置６４は、例えば、マウス、キーボード等の入力を行うための装置である。また、出力装置６５は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。オペレータは、入力装置６４及び出力装置６５を介して、学習装置６を操作することができる。
【００６９】
ドライブ６６は、例えば、ＣＤドライブ、ＤＶＤドライブ等であり、記憶媒体９２に記憶されたプログラムを読み込むためのドライブ装置である。ドライブ６６の種類は、記憶媒体９２の種類に応じて適宜選択されてよい。上記学習プログラム６２１及びデータセット３Ａの少なくとも一方は、この記憶媒体９２に記憶されていてもよい。
【００７０】
記憶媒体９２は、コンピュータその他装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的又は化学的作用によって蓄積する媒体である。学習装置６は、この記憶媒体９２から、上記学習プログラム６２１及びデータセット３Ａの少なくとも一方を取得してもよい。
【００７１】
ここで、図４では、記憶媒体９２の一例として、ＣＤ、ＤＶＤ等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体９２の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
【００７２】
なお、学習装置６の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部６１は、複数のハードウェアプロセッサを含んでもよい。ハードウェアプロセッサは、マイクロプロセッサ、ＦＰＧＡ等で構成されてよい。学習装置６は、複数台の情報処理装置で構成されてもよい。また、学習装置６は、提供されるサービス専用に設計された情報処理装置の他、汎用のサーバ装置、汎用のＰＣ等であってもよい。
【００７３】
［ソフトウェア構成］
＜自動運転支援装置＞
次に、図５を用いて、本実施形態に係る自動運転支援装置１Ａのソフトウェア構成の一例を説明する。図５は、本実施形態に係る自動運転支援装置１Ａのソフトウェア構成の一例を模式的に例示する。
【００７４】
自動運転支援装置１Ａの制御部１１は、記憶部１２に記憶されたプログラム１２１をＲＡＭに展開する。そして、制御部１１は、ＲＡＭに展開されたプログラム１２１をＣＰＵにより解釈及び実行して、各構成要素を制御する。これによって、図５に示されるとおり、本実施形態に係る自動運転支援装置１Ａは、ソフトウェアモジュールとして、データ取得部１１１、状態推定部１１２、妥当性評価部１１３、第１警告部１１４、第２警告部１１５、運転制御部１１６、及びデータ送信部１１７を備えるコンピュータとして構成される。
【００７５】
データ取得部１１１は、学習済みのニューラルネットワーク２Ａに入力される入力データ５Ａを取得する。ニューラルネットワーク２Ａは、上記学習済みの第１の学習器２の一例であり、入力データ５Ａは、上記入力データ５の一例である。本実施形態では、データ取得部１１１は、車両の運転席に着いた運転者Ｄを撮影するように配置されたカメラ７１から撮影画像７１１を取得する。また、データ取得部１１１は、運転者Ｄの顔の挙動に関する顔挙動情報７１２及び生体センサ７２により測定された生体情報７２１を含む観測情報５１を取得する。本実施形態の一例では、顔挙動情報７１２は、撮影画像７１１を画像解析することで得られる。更に、データ取得部１１１は、取得した撮影画像７１１の解像度を低下させることで、低解像度撮影画像５２を形成する。これにより、データ取得部１１１は、観測情報５１及び低解像度撮影画像５２を含む入力データ５Ａを取得する。なお、低解像度撮影画像５２は、本発明の「車両の運転席に着いた運転者の写り得る画像データ」の一例である。
【００７６】
状態推定部１１２は、後述するデータセット３Ａを利用して、運転者の状態を推定するための教師あり学習を行った学習済みのニューラルネットワーク２Ａを含んでいる。状態推定部１１２は、学習済みのニューラルネットワーク２Ａに入力データ５Ａを入力し、当該ニューラルネットワーク２Ａから出力を得る。これにより、状態推定部１１２は、入力データ５Ａに対して運転者の状態を推定する推論を行う。状態推定部１１２は、本発明の「推論部」の一例である。
【００７７】
本実施形態では、学習済みのニューラルネットワーク２Ａに入力データ５Ａを入力することで当該学習済みのニューラルネットワーク２Ａから得られる出力は、運転者の状態を示す運転状態情報２１Ａを含む。この運転状態情報２１Ａは、上記出力２１の一例である。本実施形態では、運転状態情報２１Ａは、運転者Ｄの注視の状態を示す注視状態情報２１１、及び運転者Ｄの運転に対する即応性の程度を示す即応性情報２１２を含む。
【００７８】
ここで、図６Ａ及び図６Ｂを用いて、注視状態情報２１１及び即応性情報２１２を説明する。図６Ａ及び図６Ｂは、注視状態情報２１１及び即応性情報２１２の一例を示す。図６Ａに示されるとおり、本実施形態に係る注視状態情報２１１は、運転者Ｄが運転に必要な注視を行っているか否かを２つのレベルで段階的に示す。また、図６Ｂに示されるとおり、本実施形態に係る即応性情報２１２は、運転に対する即応性が高い状態であるか低い状態であるかを２つのレベルで段階的に示す。なお、即応性の程度は、運転に対する準備状態の程度、換言すると、運転者が車両の運転を手動で行える状態にあるか否かの度合いを示す。より詳細には、即応性の程度は、車両の動作モードを自動運転から手動運転に切り替える際に、運転者が車両の手動運転に直ちに対応可能か否かの度合いを示す。そのため、即応性情報２１２により、例えば、運転者Ｄが手動で車両を運転する状態に復帰可能な度合を表すことができる。
【００７９】
運転者Ｄの行動状態と注視状態及び即応性との関係は適宜設定可能である。例えば、運転者Ｄが、「前方注視」、「計器確認」及び「ナビゲーション確認」の行動状態にある場合には、当該運転者Ｄは、運転に必要な注視を行っており、かつ運転に対する即応性が高い状態にあると推定可能である。そこで、本実施形態では、運転者Ｄが、「前方注視」、「計器確認」及び「ナビゲーション確認」の行動状態にあるのに対応して、注視状態情報２１１は、運転者Ｄが運転に必要な注視を行っていることを示すように設定され、即応性情報２１２は、運転者Ｄが運転に対する即応性の高い状態にあることを示すように設定されている。なお、「前方注視」は、運転者Ｄが車両の走行方向を注視している状態を指す。「計器確認」は、車両のスピードメータ等の計器を運転者Ｄが確認している状態を指す。「ナビゲーション確認」は、ナビゲーション装置７０の経路案内を運転者Ｄが確認している状態を指す。
【００８０】
また、例えば、運転者Ｄが、「喫煙」、「飲食」及び「通話」の行動状態にある場合には、当該運転者Ｄは、運転に必要な注視は行っているが、運転に対する即応性は低い状態にあると推定可能である。そこで、本実施形態では、運転者Ｄが、「喫煙」、「飲食」及び「通話」の行動状態にあるのに対応して、注視状態情報２１１は、運転者Ｄが運転に必要な注視を行っていることを示すように設定され、即応性情報２１２は、運転者Ｄが運転に対する即応性の低い状態にあることを示すように設定されている。なお、「喫煙」は、運転者Ｄが喫煙している状態を指す。「飲食」は、運転者Ｄが飲食物を飲食している状態を指す。「通話」は、運転者Ｄが携帯電話等の電話機で通話を行っている状態を指す。
【００８１】
また、例えば、運転者Ｄが、「脇見」、「後方振り返り」及び「眠気」の行動状態にある場合には、当該運転者Ｄは、運転に必要な注視は行っていないが、運転に対する即応性は比較的に高い状態にあると推定可能である。そこで、本実施形態では、運転者Ｄが、「脇見」、「後方振り返り」及び「眠気」の行動状態にあることに対応して、注視状態情報２１１は、運転者Ｄが運転に必要な注視を行っていないことを示すように設定され、即応性情報２１２が、運転者Ｄが運転に対する即応性の高い状態にあることを示すように設定されている。なお、「脇見」は、運転者Ｄが前方から視線を外している状態を指す。「後方振り返り」は、運転者Ｄが後部座席の方に振り返っている状態を指す。「眠気」は、運転者Ｄが眠気に襲われた状態を指す。
【００８２】
また、例えば、運転者Ｄが、「居眠り」、「携帯電話操作」及び「パニック」の行動状態にある場合には、当該運転者Ｄは、運転に必要な注視を行っておらず、運転に対する即応性は低い状態にあると推定可能である。そこで、本実施形態では、運転者Ｄが、「居眠り」、「携帯電話操作」及び「パニック」の行動状態にあることに対応して、注視状態情報２１１は、運転者Ｄが運転に必要な注視を行っていないことを示すように設定され、即応性情報２１２は、運転者Ｄが運転に対する即応性の低い状態にあることを示すように設定されている。なお、「居眠り」は、運転者Ｄが眠っている状態を指す。「携帯電話操作」は、運転者Ｄが携帯電話を操作している状態を指す。「パニック」は、運転者Ｄが体調の急変等によりパニックに陥っている状態を指す。
【００８３】
妥当性評価部１１３は、学習済みの自己符号化器４Ａを含んでいる。妥当性評価部１１３は、この学習済みの自己符号化器４Ａに入力データ５Ａを入力することで当該自己符号化器４Ａから得られる出力４１Ａに基づいて、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られるか否かを評価する。学習済みの自己符号化器４Ａは、上記第２の学習器４の一例である。
【００８４】
自己符号化器は、出力を入力に近付けるように機械学習されたニューラルネットワークであり、エンコーダ及びデコーダからなる。エンコーダは、入力に対して何らかの変換（エンコード）を行うように機械学習されたニューラルネットワークであり、デコーダは、エンコーダの出力から入力を再現（デコード）するように機械学習されたニューラルネットワークである。
【００８５】
本実施形態では、学習済みの第１の学習器であるニューラルネットワーク２Ａが、学習済みの第２の学習器である自己符号化器４Ａのエンコーダとしても動作し、本発明の「第１のエンコーダ」及び「第２のエンコーダ」の一例に相当する。そのため、本実施形態に係る自己符号化器４Ａは、ニューラルネットワーク２Ａ（エンコーダ）と、ニューラルネットワーク２Ａの出力から入力を再現するように構築されたデコーダ４０１とにより構成される。本実施形態に係るデコーダ４０１には、入力データ５Ａをニューラルネットワーク２Ａに入力することで当該ニューラルネットワーク２Ａから得られる出力（運転状態情報２１Ａ）が入力される。本実施形態に係るデコーダ４０１に、ニューラルネットワーク２Ａの出力（運転状態情報２１Ａ）が入力されると、入力データ５Ａに含まれる観測情報５１に対応する対応情報４１１、及び低解像度撮影画像５２に対応する対応画像４１２を含む出力４１Ａがデコーダ４０１から得られる。そこで、本実施形態に係る妥当性評価部１１３は、入力データ５Ａと出力４１Ａとを比較することで、ニューラルネットワーク２Ａによる推論結果の妥当性を評価する。なお、この出力４１Ａは、上記出力４１の一例である。
【００８６】
第１警告部１１４は、妥当性評価部１１３が、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られないと評価した場合に、入力データ５Ａをニューラルネットワーク２Ａに入力することで当該入力データ５Ａに対する推論結果としてニューラルネットワーク２Ａから得られる出力に関する警告を行う。第１警告部１１４は、本発明の「警告部」の一例である。
【００８７】
第２警告部１１５は、運転状態情報２１Ａに基づいて、運転者Ｄが車両の運転に適した状態にあるか否かを判定する。そして、第２警告部１１５は、運転者Ｄが車両の運転に適した状態にないと判定した場合に、車両の運転に適した状態をとるように運転者Ｄに促す警告を行う。
【００８８】
運転制御部１１６は、車両の駆動系及び制御系にアクセスすることで、運転者Ｄによらず自動的に運転操作を行う自動運転モードと運転者Ｄの手動により運転操作を行う手動運転モードとを選択的に実施するように車両の動作を制御する。本実施形態では、運転制御部１１６は、運転状態情報２１Ａ等に応じて、自動運転モードと手動運転モードとを切り替えるように構成される。
【００８９】
その一例として、運転制御部１１６は、自動運転モードが実施されている際に、運転状態情報２１Ａにより示される運転者Ｄの状態が、車両の運転を許可する条件を定めた基準を満たすか否かを判定する。そして、運転制御部１１６は、運転状態情報２１Ａにより示される運転者Ｄの状態が当該基準を満たすと判定した場合に、自動運転モードから手動運転モードへの切り替えを許可し、当該切り替えの指示を車両に対して出力する。一方で、運転状態情報２１Ａにより示される運転者Ｄの状態が当該基準を満たさないと判定した場合には、運転制御部１１６は、自動運転モードから手動運転モードへの切り替えを許可しない。この場合、運転制御部１１６は、自動運転モードを継続する、所定の停車区間に車両を停車する、等のように手動運転モード以外のモードで車両の動作を制御する。なお、この運転状態情報２１Ａに基づく運転制御部１１６の一動作は、本発明の「動作実行部」の動作に相当する。
【００９０】
データ送信部１１７は、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力を当該ニューラルネットワーク２Ａから得られないと妥当性評価部１１３が評価した場合に、当該入力データ５Ａを所定の記憶場所に送信する。なお、所定の記憶場所は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、所定の記憶場所は、学習装置６の記憶部６２、ＮＡＳ（Network Attached Storage）等であってよい。
【００９１】
（第１の学習器）
次に、図７Ａを更に用いて、第１の学習器の一例であるニューラルネットワーク２Ａについて説明する。図７Ａは、本実施形態に係るニューラルネットワーク２Ａの構成の一例を模式的に例示する。図７Ａに示されるとおり、本実施形態に係るニューラルネットワーク２Ａは、複数種類のニューラルネットワークを組み合わせることで構成されている。
【００９２】
具体的には、ニューラルネットワーク２Ａは、全結合ニューラルネットワーク２５、畳み込みニューラルネットワーク２６、結合層２７、及びＬＳＴＭ（Long short-term memory）ネットワーク２８の４つの部分に分かれている。全結合ニューラルネットワーク２５及び畳み込みニューラルネットワーク２６は入力側に並列に配置されており、全結合ニューラルネットワーク２５には観測情報５１が入力され、畳み込みニューラルネットワーク２６には低解像度撮影画像５２が入力される。結合層２７は、全結合ニューラルネットワーク２５及び畳み込みニューラルネットワーク２６の出力を結合する。ＬＳＴＭネットワーク２８は、結合層２７からの出力を受けて、注視状態情報２１１及び即応性情報２１２を出力する。
【００９３】
（ａ）全結合ニューラルネットワーク
全結合ニューラルネットワーク２５は、いわゆる多層構造のニューラルネットワークであり、入力側から順に、入力層２５１、中間層（隠れ層）２５２、及び出力層２５３を備えている。ただし、全結合ニューラルネットワーク２５の層の数は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。
【００９４】
各層２５１〜２５３は、１又は複数のニューロン（ノード）を備えている。各層２５１〜２５３に含まれるニューロンの個数は、実施の形態に応じて適宜設定されてよい。各層２５１〜２５３に含まれる各ニューロンが、隣接する層に含まれる全てのニューロンに結合されていることで、全結合ニューラルネットワーク２５は構成される。各結合には、重み（結合荷重）が適宜設定されている。
【００９５】
（ｂ）畳み込みニューラルネットワーク
畳み込みニューラルネットワーク２６は、畳み込み層２６１及びプーリング層２６２を交互に接続した構造を有する順伝播型ニューラルネットワークである。本実施形態に係る畳み込みニューラルネットワーク２６では、複数の畳み込み層２６１及びプーリング層２６２が入力側に交互に配置されている。そして、最も出力側に配置されたプーリング層２６２の出力が全結合層２６３に入力され、全結合層２６３の出力が出力層２６４に入力される。
【００９６】
畳み込み層２６１は、画像の畳み込みの演算を行う層である。画像の畳み込みとは、画像と所定のフィルタとの相関を算出する処理に相当する。そのため、画像の畳み込みを行うことで、例えば、フィルタの濃淡パターンと類似する濃淡パターンを入力される画像から検出することができる。
【００９７】
プーリング層２６２は、プーリング処理を行う層である。プーリング処理は、画像のフィルタに対する応答の強かった位置の情報を一部捨て、画像内に現れる特徴の微小な位置変化に対する応答の不変性を実現する。
【００９８】
全結合層２６３は、隣接する層の間のニューロン全てを結合した層である。すなわち、全結合層２６３に含まれる各ニューロンは、隣接する層に含まれる全てのニューロンに結合される。畳み込みニューラルネットワーク２６は、２層以上の全結合層２６３を備えてもよい。また、全結合層２６３に含まれるニューロンの個数は、実施の形態に応じて適宜設定されてよい。
【００９９】
出力層２６４は、畳み込みニューラルネットワーク２６の最も出力側に配置される層である。出力層２６４に含まれるニューロンの個数は、実施の形態に応じて適宜設定されてよい。なお、畳み込みニューラルネットワーク２６の構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜設定されてよい。
【０１００】
（ｃ）結合層
結合層２７は、全結合ニューラルネットワーク２５及び畳み込みニューラルネットワーク２６とＬＳＴＭネットワーク２８との間に配置される。結合層２７は、全結合ニューラルネットワーク２５の出力層２５３からの出力及び畳み込みニューラルネットワーク２６の出力層２６４からの出力を結合する。結合層２７に含まれるニューロンの個数は、全結合ニューラルネットワーク２５及び畳み込みニューラルネットワーク２６の出力の数に応じて適宜設定されてよい。
【０１０１】
（ｄ）ＬＳＴＭネットワーク
ＬＳＴＭネットワーク２８は、ＬＳＴＭ（Long short-term memory）ブロック２８２を備える再起型ニューラルネットワークである。再帰型ニューラルネットワークは、例えば、中間層から入力層への経路のように、内部にループを有するニューラルネットワークのことである。ＬＳＴＭネットワーク２８は、一般的な再起型ニューラルネットワークの中間層をＬＳＴＭブロック２８２に置き換えた構造を有する。
【０１０２】
本実施形態では、ＬＳＴＭネットワーク２８は、入力側から順に、入力層２８１、ＬＳＴＭブロック２８２、及び出力層２８３を備えており、順伝播の経路の他、ＬＳＴＭブロック２８２から入力層２８１に戻る経路を有している。入力層２８１及び出力層２８３に含まれるニューロンの個数は、実施の形態に応じて適宜設定されてよい。
【０１０３】
ＬＳＴＭブロック２８２は、入力ゲート及び出力ゲートを備え、情報の記憶及び出力のタイミングを学習可能に構成されたブロックである（S.Hochreiter and J.Schmidhuber, "Long short-term memory" Neural Computation, 9(8):1735-1780, November 15, 1997）。また、ＬＳＴＭブロック２８２は、情報の忘却のタイミングを調節する忘却ゲートを備えてもよい（Felix A. Gers, Jurgen Schmidhuber and Fred Cummins, "Learning to Forget: Continual Prediction with LSTM" Neural Computation, pages 2451-2471, October 2000）。ＬＳＴＭネットワーク２８の構成は、実施の形態に応じて適宜設定可能である。
【０１０４】
（ｅ）小括
各ニューロンには閾値が設定されており、基本的には、各入力と各重みとの積の和が閾値を超えているか否かによって各ニューロンの出力が決定される。自動運転支援装置１Ａは、全結合ニューラルネットワーク２５に観測情報５１を入力し、畳み込みニューラルネットワーク２６に低解像度撮影画像５２を入力する。そして、自動運転支援装置１Ａは、入力側から順に、各層に含まれる各ニューロンの発火判定を行う。これにより、自動運転支援装置１Ａは、入力データ５Ａに対する推論結果として、注視状態情報２１１及び即応性情報２１２に対応する出力値をニューラルネットワーク２Ａの出力層２８３から取得する。
【０１０５】
なお、このようなニューラルネットワーク２Ａの構成（例えば、各ネットワークの層数、各層におけるニューロンの個数、ニューロン同士の結合関係、各ニューロンの伝達関数）、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報は、第１学習結果データ１２２に含まれている。自動運転支援装置１Ａは、第１学習結果データ１２２を参照して、運転者Ｄの運転状態を推定する処理に用いる学習済みニューラルネットワーク２Ａの設定を行う。
【０１０６】
（第２の学習器）
次に、図７Ｂを更に用いて、第２の学習器の一例である自己符号化器４Ａについて説明する。上記のとおり、自己符号化器４Ａは、ニューラルネットワーク２Ａ（エンコーダ）とデコーダ４０１とにより構成される。図７Ｂは、これらのうちデコーダ４０１の構成を模式的に例示する。図７Ｂに示されるとおり、本実施形態に係るデコーダ４０１は、上記ニューラルネットワーク２Ａの入力側と出力側とを反転させた構造を有している。
【０１０７】
具体的には、デコーダ４０１は、第１〜第４部分４５〜４８に分かれている。入力側に配置される第１部分４５は、上記ＬＳＴＭネットワーク２８の入力側と出力側とを反転させた構造を有している。第２部分４６は、上記結合層２７に対応している。第２部分４６は、第１部分４５からの出力を受け付け、各ニューロンの発火判定の結果を第３部分４７及び第４部分４８に分けて出力する。第３部分４７及び第４部分４８は、出力側で並列に配置されており、上記全結合ニューラルネットワーク２５及び畳み込みニューラルネットワーク２６に対応している。第３部分４７は、上記全結合ニューラルネットワーク２５の入力側と出力側とを反転させた構造を有している。第３部分４７は、第２部分４６からの出力を受けて、対応情報４１１を出力する。第４部分４８は、上記畳み込みニューラルネットワーク２６の入力側と出力側とを反転させた構造を有している。第４部分４８は、第２部分４６からの出力を受けて、対応画像４１２を出力する。
【０１０８】
上記ニューラルネットワーク２Ａと同様に、デコーダ４０１の各部分４５〜４８を構成する各ニューロンには閾値が設定されており、基本的には、各入力と各重みとの積の和が閾値を超えているか否かによって各ニューロンの出力が決定される。自動運転支援装置１Ａは、ニューラルネットワーク２Ａの出力（運転状態情報２１Ａ）を第１部分４５に入力する。そして、自動運転支援装置１Ａは、入力側から順に、各層に含まれる各ニューロンの発火判定を行う。これにより、自動運転支援装置１Ａは、対応情報４１１及び対応画像４１２を含む出力４１Ａをデコーダ４０１の出力層から取得する。
【０１０９】
ここで、上記のとおり、自己符号化器のデコーダは、エンコーダの出力から入力を再現するように機械学習されたニューラルネットワークである。そのため、自己符号化器４Ａのデコーダ４０１は、上記ニューラルネットワーク２Ａの入力側と出力側とを反転させた構造と完全に一致した構造を有するように構成されるのが好ましい。ただし、デコーダ４０１の構成は、このような例に限定されなくてもよく、対応情報４１１及び対応画像４１２を出力可能であれば、実施の形態に応じて適宜決定されてよい。デコーダ４０１の構造は、上記ニューラルネットワーク２Ａの入力側と出力側とを反転させた構造と完全には一致していなくてもよい。
【０１１０】
なお、本実施形態では、エンコーダであるニューラルネットワーク２Ａの構成等を示す情報は、第１学習結果データ１２２に含まれている。そこで、本実施形態に係る第２学習結果データ１２３は、デコーダ４０１の構成（例えば、各部分の層数、各層におけるニューロンの個数、ニューロン同士の結合関係、各ニューロンの伝達関数）、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を含む。エンコーダであるニューラルネットワーク２Ａの構成等を示す情報は、第２学習結果データ１２３から省略されてよい。自動運転支援装置１Ａは、上記第１学習結果データ１２２を参照して、ニューラルネットワーク２Ａの設定を行うと共に、第２学習結果データ１２３を参照して、デコーダ４０１の設定を行う。これにより、ニューラルネットワーク２Ａによる推論結果の妥当性を評価する処理に用いる学習済み自己符号化器４Ａの設定が行われる。ただし、第２学習結果データ１２３の内容は、このような例に限定されなくてもよい。第２学習結果データ１２３は、デコーダの構成等を示す情報と共に、エンコーダの構成等を示す情報を含んでもよい。
【０１１１】
＜学習装置＞
次に、図８を用いて、本実施形態に係る学習装置６のソフトウェア構成の一例を説明する。図８は、本実施形態に係る学習装置６のソフトウェア構成の一例を模式的に例示する。
【０１１２】
学習装置６の制御部６１は、記憶部６２に記憶された学習プログラム６２１をＲＡＭに展開する。そして、制御部６１は、ＲＡＭに展開された学習プログラム６２１をＣＰＵにより解釈及び実行して、各構成要素を制御する。これによって、図８に示されるとおり、本実施形態に係る学習装置６は、ソフトウェアモジュールとして、学習データ取得部６１１、及び学習処理部６１２を備えるコンピュータとして構成される。
【０１１３】
学習データ取得部６１１は、機械学習に利用するデータセット３Ａを取得する。データセット３Ａは、訓練データ３１Ａ及び正解データ３２Ａの対で構成される。訓練データ３１Ａは、上記訓練データ３１の一例であり、正解データ３２Ａは、上記正解データ３２の一例である。本実施形態では、訓練データ３１Ａは、観測情報３１１及び低解像度撮影画像３１２を含む。観測情報３１１及び低解像度撮影画像３１２は、上記観測情報５１及び低解像度撮影画像５２に対応する。一方、正解データ３２Ａは、訓練データ３１Ａに対する運転者の状態の推定結果の正解を示すように、注視状態情報３２１及び即応性情報３２２を含む。注視状態情報３２１及び即応性情報３２２は、上記注視状態情報２１１及び即応性情報２１２に対応する。
【０１１４】
学習処理部６１２は、データセット３Ａを構成する訓練データ３１Ａ及び正解データ３２Ａを利用して、ニューラルネットワーク８１の教師あり学習を実施する。具体的には、学習処理部６１２は、観測情報３１１及び低解像度撮影画像３１２を入力すると、注視状態情報３２１及び即応性情報３２２に対応する出力値を出力するようにニューラルネットワーク８１を学習させる。また、学習処理部６１２は、データセット３Ａに含まれる訓練データ３１Ａを利用して、自己符号化器８２の教師なし学習を実施する。具体的には、学習処理部６１２は、ニューラルネットワーク８１の出力を入力すると、観測情報３１１及び低解像度撮影画像３１２に対応する出力値を出力するように自己符号化器８２のデコーダ８２０を学習させる。
【０１１５】
図９Ａ及び図９Ｂはそれぞれ、ニューラルネットワーク８１及び自己符号化器８２のデコーダ８２０の学習過程の一例を模式的に例示する。図９Ａに示されるとおり、本実施形態に係るニューラルネットワーク８１は、全結合ニューラルネットワーク８１１、畳み込みニューラルネットワーク８１２、結合層８１３、及びＬＳＴＭネットワーク８１４を備え、上記ニューラルネットワーク２Ａと同様に構成される。全結合ニューラルネットワーク８１１、畳み込みニューラルネットワーク８１２、結合層８１３、及びＬＳＴＭネットワーク８１４はそれぞれ、上記全結合ニューラルネットワーク２５、畳み込みニューラルネットワーク２６、結合層２７、及びＬＳＴＭネットワーク２８それぞれと同様である。また、図９Ｂに示されるとおり、本実施形態に係るデコーダ８２０は、第１〜第４部分８２１〜８２４を備え、上記デコーダ４０１と同様に構成される。各部分８２１〜８２４は、上記各部分４５〜４８と同様である。これにより、本実施形態に係る自己符号化器８２は、上記自己符号化器４Ａと同様に構成される。
【０１１６】
学習処理部６１２は、ニューラルネットワークの学習処理により、全結合ニューラルネットワーク８１１に観測情報３１１を入力し、畳み込みニューラルネットワーク８１２に低解像度撮影画像３１２を入力すると、注視状態情報３２１及び即応性情報３２２に対応する出力値をＬＳＴＭネットワーク８１４から出力するニューラルネットワーク８１を構築する。そして、学習処理部６１２は、構築したニューラルネットワーク８１の構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を第１学習結果データ１２２として記憶部６２に格納する。
【０１１７】
同様に、学習処理部６１２は、ニューラルネットワークの学習処理により、ニューラルネットワーク８１の出力を第１部分８２１に入力すると、観測情報３１１に対応する出力値を第３部分８２３から出力し、低解像度撮影画像３１２に対応する出力値を第４部分８２４から出力するデコーダ８２０を構築する。そして、学習処理部６１２は、構築したデコーダ８２０の構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を第２学習結果データ１２３として記憶部６２に格納する。
【０１１８】
＜その他＞
自動運転支援装置１Ａ及び学習装置６の各ソフトウェアモジュールに関しては後述する動作例で詳細に説明する。なお、本実施形態では、自動運転支援装置１Ａ及び学習装置６の各ソフトウェアモジュールがいずれも汎用のＣＰＵによって実現される例について説明している。しかしながら、以上の各ソフトウェアモジュールの一部又は全部が、１又は複数の専用のプロセッサにより実現されてもよい。また、自動運転支援装置１Ａ及び学習装置６それぞれのソフトウェア構成に関して、実施形態に応じて、適宜、ソフトウェアモジュールの省略、置換及び追加が行われてもよい。
【０１１９】
§３  動作例
［自動運転支援装置］
次に、図１０Ａ及び図１０Ｂを用いて、自動運転支援装置１Ａの動作例を説明する。図１０Ａ及び図１０Ｂは、自動運転支援装置１Ａの処理手順の一例を例示するフローチャートである。以下で説明するニューラルネットワーク２Ａによる推定結果の妥当性を評価する処理手順は、本発明の「評価方法」の一例である。ただし、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
【０１２０】
（起動）
まず、運転者Ｄは、車両のイグニッション電源をオンにすることで、自動運転支援装置１Ａを起動し、起動した自動運転支援装置１Ａにプログラム１２１を実行させる。これにより、自動運転支援装置１Ａの制御部１１は、以下の処理手順に従って、運転者Ｄの状態を監視すると共に、車両の運転モードを制御する。なお、プログラム１２１の実行のトリガは、このような車両のイグニッション電源をオンにすることに限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、プログラム１２１の実行は、入力装置（不図示）を介した運転者Ｄの指示をトリガとして開示されてよい。
【０１２１】
（ステップＳ１０１）
ステップＳ１０１では、制御部１１は、運転制御部１１６として動作し、車両の自動運転を開始する。例えば、制御部１１は、ナビゲーション装置７０から地図情報、周辺情報、及びＧＰＳ情報を取得して、取得した地図情報、周辺情報、及びＧＰＳ情報に基づいて車両の自動運転を実施する。自動運転の制御方法には、公知の制御方法が利用可能である。車両の自動運転モードを開始すると、制御部１１は、次のステップＳ１０２に処理を進める。
【０１２２】
（ステップＳ１０２）
ステップＳ１０２では、制御部１１は、運転制御部１１６として動作し、自動運転モードから手動運転モードに車両の動作の切り替えの指示を受け付けたか否かを判定する。手動運転モードへの切り替えの指示を受け付けたと判定した場合、制御部１１は、次のステップＳ１０３に処理を進める。一方、手動運転モードへの切り替えの指示を受け付けていないと判定した場合には、制御部１１は、所定時間経過後、本ステップＳ１０２の処理を再度実行する。
【０１２３】
なお、自動運転モードから手動運転モードへの切り替えを指示するトリガは、実施の形態に応じて適宜設定されてよい。例えば、自動運転支援装置１Ａの入力装置（不図示）を介した運転者Ｄからの指示をトリガとしてもよい。この場合、手動運転モードへの切り替えの操作を運転者Ｄが行ったことに応じて、制御部１１は、手動運転モードへの切り替えの指示を受け付けたと判定する。一方、そのような操作が行われていない場合には、制御部１１は、手動運転モードへの切り替えの指示を受け付けていないと判定し、本ステップＳ１０２の処理を繰り返し実行する。
【０１２４】
（ステップＳ１０３）
ステップＳ１０３では、制御部１１は、データ取得部１１１として動作し、学習済みのニューラルネットワーク２Ａに入力される入力データ５Ａを取得する。入力データ５Ａを取得すると、制御部１１は、次のステップＳ１０４に処理を進める。
【０１２５】
入力データ５Ａを取得する方法は、実施の形態に応じて適宜決定されてよい。一例として、まず、制御部１１は、車両の運転席に着いた運転者Ｄを撮影するように配置されたカメラ７１から撮影画像７１１を取得する。撮影画像７１１は、動画像であってもよいし、静止画像であってもよい。次に、制御部１１は、運転者Ｄの顔の挙動に関する顔挙動情報７１２及び生体センサ７２により測定された生体情報７２１を含む観測情報５１を取得する。また、制御部１１は、取得した撮影画像７１１の解像度を低下させることで、低解像度撮影画像５２を形成する。これにより、制御部１１は、観測情報５１及び低解像度撮影画像５２を含む入力データ５Ａを取得することができる。
【０１２６】
なお、顔挙動情報７１２は適宜取得可能である。例えば、制御部１１は、撮影画像７１１に対して顔検出等の公知の画像解析を行うことで、運転者Ｄの顔の検出可否、顔の位置、顔の向き、顔の動き、視線の方向、顔の器官の位置、及び目の開閉の少なくともいずれか１つに関する情報を顔挙動情報７１２として取得可能である。
【０１２７】
具体例として、まず、制御部１１は、撮影画像７１１から運転者Ｄの顔を検出し、検出した顔の位置を特定する。これにより、制御部１１は、顔の検出可否及び位置に関する情報を取得することができる。また、継続的に顔の検出を行うことで、制御部１１は、顔の動きに関する情報を取得することができる。次に、制御部１１は、検出した顔の画像内において、運転者Ｄの顔に含まれる各器官（眼、口、鼻、耳等）を検出する。これにより、制御部１１は、顔の器官の位置に関する情報を取得することができる。そして、制御部１１は、検出した各器官（眼、口、鼻、耳等）の状態を解析することで、顔の向き、視線の方向、及び目の開閉に関する情報を取得することができる。顔の検出、器官の検出、及び器官の状態の解析には、公知の画像解析方法が用いられてよい。
【０１２８】
取得される撮影画像７１１が、動画像又は時系列に並んだ複数の静止画像である場合、制御部１１は、これらの画像解析を撮影画像７１１の各フレームに実行することで、時系列に沿って各種情報を取得することができる。これにより、制御部１１は、ヒストグラム又は統計量（平均値、分散値等）で表された各種情報を時系列データで取得することができる。
【０１２９】
また、制御部１１は、生体センサ７２にアクセスすることで、例えば、脳波、心拍数等の生体情報７２１を取得することができる。生体情報７２１は、例えば、ヒストグラム又は統計量（平均値、分散値等）で表されてよい。顔挙動情報７１２と同様に、制御部１１は、生体センサ７２に継続的にアクセスすることで、生体情報７２１を時系列データで取得することができる。
【０１３０】
また、撮影画像７１１を低解像度化する処理方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部１１は、ニアレストネイバー法、バイリニア補間法、バイキュービック法等の公知の画像処理を撮影画像７１１に適用することにより、低解像度撮影画像５２を形成することができる。
【０１３１】
（ステップＳ１０４及びＳ１０５）
ステップＳ１０４では、制御部１１は、状態推定部１１２として動作し、学習済みのニューラルネットワーク２Ａに入力データ５Ａを入力して、当該ニューラルネットワーク２Ａの演算処理を実行する。これにより、ステップＳ１０５では、制御部１１は、引き続き状態推定部１１２として動作し、運転状態情報２１Ａの注視状態情報２１１及び即応性情報２１２それぞれに対応する出力値を当該ニューラルネットワーク２Ａから取得する。
【０１３２】
具体的には、制御部１１は、ステップＳ１０３で取得した入力データ５Ａのうち、全結合ニューラルネットワーク２５の入力層２５１に観測情報５１を入力し、畳み込みニューラルネットワーク２６の最も入力側に配置された畳み込み層２６１に低解像度撮影画像５２を入力する。そして、制御部１１は、入力側から順に、各層に含まれる各ニューロンの発火判定を行う。これにより、制御部１１は、入力データ５Ａに対して運転者Ｄの状態を推定する推論を行った結果として、注視状態情報２１１及び即応性情報２１２それぞれに対応する出力値をＬＳＴＭネットワーク２８の出力層２８３から取得する。注視状態情報２１１及び即応性情報２１２を含む運転状態情報２１Ａを取得すると、制御部１１は、次のステップＳ１０６に処理を進める。なお、制御部１１は、スピーカ７３、ディスプレイ（不図示）等の出力装置を介して、取得した運転状態情報２１Ａの内容を運転者Ｄ等に通知してもよい。
【０１３３】
（ステップＳ１０６）
ステップＳ１０６では、制御部１１は、妥当性評価部１１３として動作し、入力データ５Ａを自己符号化器４Ａに入力して、自己符号化器４Ａの演算処理を実行する。本実施形態では、自己符号化器４Ａのエンコーダとして動作するニューラルネットワーク２Ａの出力（運転状態情報２１Ａ）は、上記ステップＳ１０５で得られている。そこで、本ステップＳ１０６では、制御部１１は、ニューラルネットワーク２Ａに入力することで当該ニューラルネットワーク２Ａから得られた運転状態情報２１Ａを自己符号化器４Ａのデコーダ４０１に入力する。そして、制御部１１は、当該デコーダ４０１の演算処理を実行する。これにより、制御部１１は、対応情報４１１及び対応画像４１２それぞれに対応する出力値を出力４１Ａとして当該自己符号化器４Ａのデコーダ４０１から取得する。
【０１３４】
具体的には、上記ステップＳ１０４と同様に、制御部１１は、運転状態情報２１Ａに含まれる注視状態情報２１１及び即応性情報２１２それぞれに対応する出力値を第１部分４５の入力側の層に入力する。そして、制御部１１は、入力側から順に、各層に含まれる各ニューロンの発火判定を行う。これにより、制御部１１は、第３部分４７の出力側の層から対応情報４１１に対応する出力値を取得し、第４部分４８の出力側の層から対応画像４１２に対応する出力値を取得する。対応情報４１１及び対応画像４１２を含む出力４１Ａを取得すると、制御部１１は、次のステップＳ１０７に処理を進める。
【０１３５】
（ステップＳ１０７）
ステップＳ１０７では、制御部１１は、引き続き妥当性評価部１１３として動作し、自己符号化器４Ａから得られた出力４１Ａに基づいて、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られるか否かを評価する。
【０１３６】
上記のとおり、自己符号化器４Ａのデコーダ４０１は、エンコーダであるニューラルネットワーク２Ａの出力から入力を再現する。対応情報４１１は観測情報５１に対応し、対応画像４１２は低解像度撮影画像５２に対応する。ニューラルネットワーク２Ａの教師あり学習に利用されたデータセット３Ａの訓練データ３１Ａに入力データ５Ａが類似するほど、対応情報４１１及び対応画像４１２それぞれは、入力データ５Ａに含まれる観測情報５１及び低解像度撮影画像５２それぞれに類似する。一方、訓練データ３１Ａに入力データ５Ａが相違するほど、対応情報４１１及び対応画像４１２それぞれは、観測情報５１及び低解像度撮影画像５２それぞれから乖離する。
【０１３７】
そこで、制御部１１は、自己符号化器４Ａから得られた出力４１に含まれる対応情報４１１及び対応画像４１２それぞれと、ニューラルネットワーク２Ａに入力される入力データ５Ａに含まれる観測情報５１及び低解像度撮影画像５２との差分を算出する。この算出された差分も、本発明の「第２の学習器から得られる出力」に含まれるものとする。そして、制御部１１は、算出した差分に基づいて、ニューラルネットワーク２Ａの出力（運転状態情報２１Ａ）の妥当性を評価する。
【０１３８】
具体的には、算出された差分の値が大きいほど、入力データ５Ａは、ニューラルネットワーク２Ａの機械学習に利用された訓練データ３１Ａとはかけ離れた種類のものであり、ニューラルネットワーク２Ａは、入力データ５Ａに対して誤った推論を行う可能性が高いと想定される。そのため、制御部１１は、算出された差分の値が大きいほど、ニューラルネットワーク２Ａの出力の妥当性は低いと評価する。一方、算出された差分の値が小さいほど、入力データ５Ａは、ニューラルネットワーク２Ａの機械学習に利用された訓練データ３１Ａと一致しており、ニューラルネットワーク２Ａは、入力データ５Ａに対して誤った推論を行う可能性が低いと想定される。そのため、制御部１１は、算出された差分の値が小さいほど、ニューラルネットワーク２Ａの出力の妥当性は高いと評価する。
【０１３９】
なお、ニューラルネットワーク２Ａの出力（運転状態情報２１Ａ）の妥当性を評価した結果を表現する方法は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、制御部１１は、算出された差分と所定の閾値をと比較することにより、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られるか否かを判定してもよい。所定の閾値は、任意に設定されてよい。そして、制御部１１は、妥当性の評価結果として、当該判定の結果を示す値（例えば、「０」及び「１」の二値）を出力してもよい。
【０１４０】
また、例えば、制御部１１は、評価の結果として、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られる程度を示す評価値を出力してもよい。この場合、制御部１１は、算出された上記差分をそのまま評価値として出力してもよい。また、制御部１１は、算出された上記差分に、スケールを変換する等の所定の演算処理を適用することで得られる値を評価値として出力してもよい。
【０１４１】
なお、上記判定の結果を示す値、評価値等の評価結果の出力先は、特に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、評価結果は、本ステップＳ１０７以降の処理で利用するために、ＲＡＭ、記憶部１２等のメモリに出力されてもよい。また、例えば、評価結果は、ディスプレイ（不図示）、スピーカ７３等の出力装置に出力されてもよい。ニューラルネットワーク２Ａの出力（運転状態情報２１Ａ）の妥当性を評価した後、制御部１１は、次のステップＳ１０８に処理を進める。
【０１４２】
（ステップＳ１０８）
ステップＳ１０８では、制御部１１は、ステップＳ１０７による評価の結果に基づいて、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られるか否かを判定する。
【０１４３】
ステップＳ１０７において、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られないと評価した場合（図１０ＢのＮＯ）、制御部１１は、ステップＳ１１１に処理を進める。一方、ステップＳ１０７において、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られると評価した場合（図１０ＢのＹＥＳ）、制御部１１は、ステップＳ１０９に処理を進める。
【０１４４】
（ステップＳ１０９）
ステップＳ１０９では、制御部１１は、第２警告部１１５として動作し、ステップＳ１０５で取得した運転状態情報２１Ａに基づいて、運転者Ｄが車両の運転に適した状態にあるか否かを判定する。運転者Ｄが車両の運転に適した状態にあると判定した場合には（図１０ＢのＹＥＳ）、制御部１１は、ステップＳ１１０に処理を進める。一方、運転者Ｄが車両の運転に適した状態にないと判定した場合には、制御部１１は、ステップＳ１１３に処理を進める。
【０１４５】
運転者Ｄが車両の運転に適した状態にないと判定する基準は、実施の形態に応じて適宜設定されてよい。例えば、制御部１１は、運転者Ｄが運転に必要な注視を行っていないと注視状態情報２１１が示す、又は運転者Ｄの運転に対する即応性が低い状態であると即応性情報２１２が示す場合に、運転者Ｄが車両の運転に適した状態にないと判定してもよい。このケースでは、制御部１１は、運転者Ｄが運転に必要な注視を行っていると注視状態情報２１１が示し、かつ運転者Ｄの運転に対する即応性が高い状態であると即応性情報２１２が示す場合に、運転者Ｄが車両の運転に適した状態にあると判定する。
【０１４６】
また、例えば、制御部１１は、運転者Ｄが運転に必要な注視を行っていないと注視状態情報２１１が示し、かつ運転者Ｄの運転に対する即応性が低い状態であると即応性情報２１２が示す場合に、運転者Ｄが車両の運転に適した状態にないと判定してもよい。このケースでは、制御部１１は、運転者Ｄが運転に必要な注視を行っていると注視状態情報２１１が示す、又は運転者Ｄの運転に対する即応性が高い状態であると即応性情報２１２が示す場合に、運転者Ｄが車両の運転に適した状態にあると判定する。
【０１４７】
（ステップＳ１１０）
ステップＳ１１０では、制御部１１は、運転制御部１１６として動作し、自動運転モードから手動運転モードに車両の動作を切り替える。これにより、制御部１１は、車両において手動運転モードの動作を開始し、本動作例に係る処理を終了する。なお、この手動運転モードの開始に際して、制御部１１は、スピーカ７３を介して、車両の動作を手動運転モードに切り替えるため、ハンドルを握る等の運転操作を開始するように運転者Ｄにアナウンスをしてもよい。
【０１４８】
（ステップＳ１１１）
ステップＳ１１１では、制御部１１は、第１警告部１１４として動作し、入力データ５Ａに対する推論結果としてニューラルネットワーク２Ａから得られる出力（運転状態情報２１Ａ）に関する警告を行う。警告の内容及び方法は、実施の形態に応じて適宜設定されてよい。例えば、制御部１１は、スピーカ７３、ディスプレイ（不図示）等の出力装置を介して、ニューラルネットワーク２Ａから得られる運転状態情報２１Ａの妥当性が低いことを運転者Ｄ等に知らせる警告を行ってもよい。当該警告を行うと、制御部１１は、次のステップＳ１１２に処理を進める。
【０１４９】
（ステップＳ１１２）
ステップＳ１１２では、制御部１１は、データ送信部１１７として動作し、推論結果として妥当な出力をニューラルネットワーク２Ａから得られないと評価した対象の入力データ５Ａを未知の訓練データとして所定の記憶場所に送信する。所定の記憶場所は、実施の形態に応じて適宜設定されてよい。例えば、所定の記憶場所は、学習装置６の記憶部６２、ＮＡＳ等の外部の記憶装置であってもよい。この場合、制御部１１は、ネットワークを介して、対象の入力データ５Ａを外部の記憶装置に送信してもよい。対象の入力データ５Ａを所定の記憶場所に送信すると、制御部１１は、ステップＳ１０３に戻り、上記一連の処理を繰り返す。
【０１５０】
（ステップＳ１１３）
ステップＳ１１３では、制御部１１は、第２警告部１１５として動作し、スピーカ７３、ディスプレイ（不図示）等の出力装置を介して、車両の運転に適した状態をとるように運転者Ｄに促す警告を行う。警告の内容及び方法は、実施の形態に応じて適宜設定されてよい。当該警告を行うと、制御部１１は、ステップＳ１０３に戻り、上記一連の処理を繰り返す。
【０１５１】
なお、本実施形態では、注視状態情報２１１は、運転者Ｄが運転に必要な注視を行っているか否かを２つのレベルで段階的に示し、即応性情報２１２は、運転に対する即応性が高い状態であるか低い状態であるかを２つのレベルで段階的に示す。そのため、制御部１１は、注視状態情報２１１の示す運転者Ｄの注視のレベル及び即応性情報２１２の示す運転者Ｄの即応性のレベルに応じて、段階的に警告を行ってもよい。
【０１５２】
例えば、運転者Ｄが運転に必要な注視を行っていないと注視状態情報２１１が示す場合に、制御部１１は、運転に必要な注視を行うように運転者Ｄに促す音声を警告としてスピーカ７３から出力してもよい。また、運転者Ｄの運転に対する即応性が低い状態であると即応性情報２１２が示す場合に、制御部１１は、運転に対する即応性を高めるように運転者Ｄに促す音声を警告としてスピーカ７３から出力してもよい。更に、運転者Ｄが運転に必要な注視を行っていないと注視状態情報２１１が示し、かつ運転者Ｄの運転に対する即応性が低い状態であると即応性情報２１２が示す場合に、制御部１１は、上記２つのケースよりも強い警告（例えば、音量を上げる、ビープ音を鳴らす、等）を実施してもよい。
【０１５３】
（その他）
以上により、自動運転支援装置１Ａは、車両の自動運転を実施している間に、ニューラルネットワーク２Ａを利用して運転者Ｄの運転状態を監視すると共に、自己符号化器４Ａを利用して、当該ニューラルネットワーク２Ａによる推論結果を評価することができる。なお、自動運転支援装置１Ａは、上記ステップＳ１０９において、運転者Ｄが車両の運転に適した状態にないと複数回連続して判定した場合に（図１０ＢのＮＯ）、ステップＳ１０３に戻らずに、自動運転を停止してもよい。この場合、例えば、制御部１１は、地図情報、周辺情報及びＧＰＳ情報を参照して、車両を安全に停止可能な場所に停車区間を設定してもよい。そして、制御部１１は、車両を停止する旨を運転者Ｄに伝えるための警告を実施し、設定した停車区間に車両を自動停車させてもよい。これにより、運転者Ｄが継続的に運転に適さない状態にあるときに、車両の走行を停止することができる。
【０１５４】
更に、自動運転支援装置１Ａは、上記ステップＳ１０８において、推論結果として妥当な出力をニューラルネットワーク２Ａから得られないと１回又は複数回連続して判定した場合（図１０ＢのＮＯ）、ステップＳ１０３ではなく、ステップＳ１０２に戻ってもよい。または、自動運転支援装置１Ａは、上記ステップＳ１０８において、推論結果として妥当な出力をニューラルネットワーク２Ａから得られないと１回又は複数回連続して判定した場合（図１０ＢのＮＯ）、ステップＳ１０２に戻らずに、自動運転を停止してもよい。この場合、上記と同様に、制御部１１は、地図情報、周辺情報及びＧＰＳ情報を参照して、車両を安全に停止可能な場所に設定した停車区間に車両を自動停車させてもよい。
【０１５５】
［学習装置］
次に、図１１を用いて、学習装置６の動作例を説明する。図１１は、学習装置６の処理手順の一例を例示するフローチャートである。なお、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
【０１５６】
（ステップＳ２０１）
ステップＳ２０１では、学習装置６の制御部６１は、学習データ取得部６１１として動作し、訓練データ３１Ａ及び正解データ３２Ａの対で構成されたデータセット３Ａを取得する。
【０１５７】
データセット３Ａは適宜収集されてよい。例えば、カメラ７１を備える車両を用意し、運転者に生体センサ７２を装着して、運転席に着いた運転者を様々な条件で撮影する。そして、得られた撮影画像に、注視の状態及び即応性の程度を含む撮影条件を紐付けることで作成することができる。このとき、訓練データ３１Ａを構成する観測情報３１１及び低解像度撮影画像３１２は、上記ステップＳ１０３で入力データ５Ａを取得した方法と同様の方法により得ることができる。また、制御部６１は、ステップＳ１１２の処理により送信される入力データ５Ａを訓練データ３１Ａとして取得してもよい。一方、正解データ３２Ａを構成する注視状態情報３２１及び即応性情報３２２は、撮影画像に表れる運転者の状態の入力を適宜受け付けることで得ることができる。これにより、データセット３Ａを作成することができる。
【０１５８】
なお、このデータセット３Ａの収集は、オペレータ等が入力装置６４を用いて手動で行ってもよいし、プログラムの処理により自動的に行われてもよい。データセット３Ａは、例えば、上記ステップＳ１１２の処理の結果として、運用されている車両から随時収集されてもよい。本ステップＳ２０１で取得するデータセット３Ａの件数は、ニューラルネットワーク８１及び自己符号化器８２の機械学習を実施可能な程度に適宜決定されてよい。
【０１５９】
また、データセット３Ａの作成は、学習装置６以外の他の情報処理装置により行われてもよい。学習装置６がデータセット３Ａを作成する場合、制御部６１は、本ステップＳ２０１において、データセット３Ａの上記作成処理を実行することで、データセット３Ａを取得することができる。一方、学習装置６以外の他の情報処理装置がデータセット３Ａを作成する場合には、学習装置６は、ネットワーク、記憶媒体９２等を介して、他の情報処理装置により作成されたデータセット３Ａを取得してもよい。データセット３Ａを取得すると、制御部６１は、次のステップＳ２０２に処理を進める。
【０１６０】
（ステップＳ２０２）
ステップＳ２０２では、制御部６１は、学習処理部６１２として動作し、ステップＳ２０１で取得したデータセット３Ａを用いて、観測情報３１１及び低解像度撮影画像３１２を入力すると、入力した観測情報３１１及び低解像度撮影画像３１２と対の注視状態情報３２１及び即応性情報３２２それぞれに対応する出力値を出力するように、ニューラルネットワーク８１の教師あり学習を実施する。
【０１６１】
具体的には、まず、制御部６１は、学習処理を行う対象となるニューラルネットワーク８１を用意する。用意するニューラルネットワーク８１の構成、各ニューロン間の結合の重みの初期値、及び各ニューロンの閾値の初期値は、テンプレートにより与えられてもよいし、オペレータの入力により与えられてもよい。また、再学習を行う場合には、制御部６１は、再学習を行う対象となる第１学習結果データ１２２に基づいて、ニューラルネットワーク８１を用意してもよい。
【０１６２】
次に、制御部６１は、ステップＳ２０１で取得したデータセット３Ａに含まれる訓練データ３１Ａ及び正解データ３２Ａを用いて、ニューラルネットワーク８１の学習処理を行う。このニューラルネットワーク８１の学習処理には、確率的勾配降下法等の公知の学習方法が用いられてもよい。
【０１６３】
例えば、制御部６１は、全結合ニューラルネットワーク８１１の入力層に観測情報３１１を入力し、畳み込みニューラルネットワーク８１２の最も入力側に配置された畳み込み層に低解像度撮影画像３１２を入力する。そして、制御部６１は、入力側から順に、各層に含まれる各ニューロンの発火判定を行う。これにより、制御部６１は、ＬＳＴＭネットワーク８１４の出力層から出力値を得る。次に、制御部６１は、ＬＳＴＭネットワーク８１４の出力層から取得した出力値それぞれと、正解データ３２Ａを構成する注視状態情報３２１及び即応性情報３２２それぞれに対応する値との誤差を算出する。続いて、制御部６１は、通時的誤差逆伝搬（Back propagation through time）法により、算出した出力値の誤差を用いて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの誤差を算出する。そして、制御部６１は、算出した各誤差に基づいて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの値の更新を行う。
【０１６４】
制御部６１は、各件のデータセット３Ａについて、ニューラルネットワーク８１から出力される出力値それぞれが、注視状態情報３２１及び即応性情報３２２それぞれに対応する値と一致するまでこの一連の処理を繰り返す。これにより、制御部６１は、訓練データ３１Ａを入力すると、入力した訓練データ３１Ａと対の正解データ３２Ａに対応する出力値を出力するニューラルネットワーク８１を構築することができる。
【０１６５】
また、制御部６１は、データセット３Ａに含まれる訓練データ３１Ａを用いて、自己符号化器８２の教師なし学習を実施する。ここで、自己符号化器８２のエンコーダは、上記ニューラルネットワーク８１と同一、又は上記ニューラルネットワーク８１のコピーであってよい。本実施形態では、自己符号化器８２のエンコーダは、上記ニューラルネットワーク８１と同一であるとする。そのため、自己符号化器８２のエンコーダは、上記ニューラルネットワーク８１の学習処理により構築されている。そこで、制御部６１は、ニューラルネットワーク８１の出力を入力すると、入力した出力を得るのにニューラルネットワーク８１に入力した観測情報３１１及び低解像度撮影画像３１２に対応する出力値を出力するように、自己符号化器８２のデコーダ８２０の機械学習を実施する。
【０１６６】
デコーダ８２０の機械学習は、訓練データ３１Ａをニューラルネットワーク８１の出力に置き換え、正解データ３２Ａを訓練データ３１Ａに置き換えることで、上記ニューラルネットワーク８１と同様に実施することができる。すなわち、制御部６１は、訓練データ３１Ａをニューラルネットワーク８１に入力し、当該ニューラルネットワーク８１から出力を得る。次に、制御部６１は、ニューラルネットワーク８１から得た出力をデコーダ８２０の第１部分８２１に入力し、入力側から順に、各層に含まれる各ニューロンの発火判定を行うことで、第３部分８２３及び第４部分８２４それぞれから出力値を得る。次に、制御部６１は、第３部分８２３及び第４部分８２４それぞれから得た出力値と訓練データ３１Ａの観測情報３１１及び低解像度撮影画像３１２それぞれに対応する値との誤差を算出する。次に、制御部６１は、通時的誤差逆伝搬（Back propagation through time）法により、算出した出力値の誤差を用いて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの誤差を算出する。そして、制御部６１は、算出した各誤差に基づいて、各ニューロン間の結合の重み及び各ニューロンの閾値それぞれの値の更新を行う。制御部６１は、各件の訓練データ３１Ａについて、デコーダ８２０の第３部分８２３及び第４部分８２４それぞれから出力される出力値それぞれが、観測情報３１１及び低解像度撮影画像３１２それぞれに対応する値と一致するまでこの一連の処理を繰り返す。これにより、制御部６１は、ニューラルネットワーク８１の出力を入力すると、入力した出力を得るのにニューラルネットワーク８１に入力した訓練データ３１Ａに対応する出力値を出力するデコーダ８２０を構築することができる。
【０１６７】
このとき、自己符号化器８２のデコーダ８２０の機械学習は、ニューラルネットワーク８１の機械学習と一連で行われてもよいし、ニューラルネットワーク８１の機械学習と別個に行われてもよい。自己符号化器８２及びニューラルネットワーク８１の機械学習を一連で行う場合、制御部６１は、学習済みの自己符号化器８２を構築するのと同時に、学習済みのニューラルネットワーク８１を構築することができる。ニューラルネットワーク８１及び自己符号化器８２の機械学習が完了すると、制御部６１は、次のステップＳ２０３に処理を進める。
【０１６８】
なお、上記のように、自己符号化器の学習処理は、ニューラルネットワークの学習処理と同様であるため、一見、教師あり学習に分類することも可能である。しかしながら、自己符号化器の学習処理では、エンコーダへの入力とデコーダからの出力とを同じにするために、エンコーダに入力する訓練データを、デコーダの出力に対する正解データとしても利用する。そのため、この自己符号化器の学習処理のように訓練データを正解データとしても利用する機械学習は、教師あり学習ではなく、教師なし学習に分類されるものとする。
【０１６９】
（ステップＳ２０３）
ステップＳ２０３では、制御部６１は、学習処理部６１２として動作し、構築したニューラルネットワーク８１の構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を第１学習結果データ１２２として記憶部６２に格納する。また、制御部６１は、構築した自己符号化器８２のデコーダ８２０の構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を第２学習結果データ１２３として記憶部６２に格納する。これにより、制御部６１は、本動作例に係るニューラルネットワーク８１及び自己符号化器８２の学習処理を終了する。
【０１７０】
なお、制御部６１は、上記ステップＳ２０３の処理が完了した後に、作成した各学習結果データ（１２２、１２３）を自動運転支援装置１Ａに転送してもよい。また、制御部６１は、上記ステップＳ２０１〜Ｓ２０３の学習処理を定期的に実行することで、各学習結果データ（１２２、１２３）を更新してもよい。そして、制御部６１は、作成した各学習結果データ（１２２、１２３）を当該学習処理の実行毎に自動運転支援装置１Ａに転送することで、自動運転支援装置１Ａの保持する各学習結果データ（１２２、１２３）を定期的に更新してもよい。また、例えば、制御部６１は、作成した各学習結果データ（１２２、１２３）をＮＡＳ等のデータサーバに保管してもよい。この場合、自動運転支援装置１Ａは、このデータサーバから各学習結果データ（１２２、１２３）を取得してもよい。
【０１７１】
［特徴］
以上のように、本実施形態によれば、ステップＳ２０１により取得した訓練データ３１Ａを、ニューラルネットワーク８１及び自己符号化器８２の学習の両方に共通して利用可能である。そのため、ニューラルネットワーク８１の機械学習に利用する訓練データ３１Ａの数が過度に少なくなるのを防止することができる。また、教師なし学習の特性上、ニューラルネットワーク２Ａ（８１）の学習に利用した訓練データ３１Ａにより、与えられた入力データ５Ａが当該訓練データ３１Ａとかけ離れた種類のものであるか否かを評価可能な学習済みの自己符号化器４Ａ（８２）を構築することができる。そのため、ステップＳ２０１において、自己符号化器８２の学習のために、ニューラルネットワーク２Ａに入力されるあらゆる種類の入力データ５Ａを想定して訓練データ３１Ａを用意しなくてもよい。よって、本実施形態によれば、ステップＳ１０５における学習済みのニューラルネットワーク２Ａによる運転者Ｄの状態を推定する推論の精度を低減させることなく、ステップＳ１０７において、当該ニューラルネットワーク２Ａによる推論結果の妥当性を適切に評価することができる。
【０１７２】
また、本実施形態に係る自動運転支援装置１Ａは、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られると評価した場合（ステップＳ１０８でＹＥＳ）、運転状態情報２１Ａに基づく、自動運転モードから手動運転モードへの切り替えに関する動作（ステップＳ１０９及びＳ１１０）を実行する。これに対して、本実施形態に係る自動運転支援装置１Ａは、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られないと評価した場合（ステップＳ１０８でＮＯ）、運転状態情報２１Ａに基づく、自動運転モードから手動運転モードへの切り替えに関する動作（ステップＳ１０９及びＳ１１０）の実行を停止する。これにより、本実施形態では、ニューラルネットワーク２Ａによる推論結果に基づく動作制御の信頼性を高めることができる。
【０１７３】
また、本実施形態では、ニューラルネットワーク２Ａは、第１の学習器２として動作すると共に、自己符号化器４Ａのエンコーダとしても動作する。つまり、第１の学習器２と第２の学習器４との間でエンコーダを共有させることができる。これにより、ステップＳ１０４及びＳ１０６の処理にかかるトータルの計算コストを抑えることができ、また、ステップＳ１０６の演算速度を高めることができる。
【０１７４】
また、本実施形態に係る自動運転支援装置１Ａは、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られないと評価した場合に、ステップＳ１１２により、当該入力データ５Ａを所定の記憶場所に送信する。これにより、学習済みのニューラルネットワーク２Ａを構築する際に用意した訓練データ３１Ａとはかけ離れた種類のものと想定される入力データ５Ａが与えられた場合に、当該入力データ５Ａを未知の訓練データ３１Ａとして収集することができる。これによって、収集した入力データ５Ａを新たな訓練データとして利用し、ステップＳ１０５においてニューラルネットワーク２Ａにより推論可能な対象の範囲を拡げることができる。
【０１７５】
§４  変形例
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
【０１７６】
＜４．１＞
上記実施形態では、自動車の自動運転を支援する自動運転支援装置１Ａに本発明を適用した例を示す。自動運転支援装置１Ａは、本発明の「評価装置」の一例であり、「動作制御装置」の一例でもある。また、上記実施形態では、第１の学習器による所定の推論の一例として、観測情報５１及び低解像度撮影画像５２を含む入力データ５Ａに対してニューラルネットワーク２Ａにより運転者Ｄの状態を推定する例を示す。しかしながら、本発明を適用可能な範囲は、このような自動運転支援装置１Ａの例に限られない。また、第１の学習器により実施する所定の推論は、上記のような運転者Ｄの状態の推定に限られず、実施の形態に応じて適宜決定されてよい。
【０１７７】
（診断装置）
まず、図１２〜図１４は、上記実施形態の変形例として、対象者Ｐの診断を行う診断装置１Ｂに本発明を適用した例を示す。図１２は、本変形例に係る診断装置１Ｂ及び学習装置６Ｂの適用場面の一例を模式的に例示する。図１３は、本変形例に係る診断装置１Ｂのソフトウェア構成の一例を模式的に例示する。図１４は、本変形例に係る学習装置６Ｂのソフトウェア構成の一例を模式的に例示する。なお、本変形例に係る診断装置１Ｂ及び学習装置６Ｂそれぞれのハードウェア構成は、上記自動運転支援装置１Ａ及び学習装置６それぞれのハードウェア構成と同様であってよい。
【０１７８】
図１３に示されるとおり、診断装置１Ｂの制御部は、記憶部に記憶されたプログラムをＲＡＭに展開し、ＲＡＭに展開されたプログラムをＣＰＵにより解釈及び実行する。これにより、診断装置１Ｂは、ソフトウェアモジュールとして、データ取得部１１１Ｂ、診断部１１２Ｂ、及び妥当性評価部１１３Ｂを備えるコンピュータとして構成される。
【０１７９】
データ取得部１１１Ｂは、上記データ取得部１１１と同様に、ニューラルネットワーク２Ｂに入力される入力データ５Ｂを取得する。ニューラルネットワーク２Ｂは、第１の学習器２の一例である。入力データ５Ｂは、入力データ５の一例である。本変形例では、入力データ５Ｂは、対象者Ｐから得られた測定データ５４及び問診データ５５を含む。測定データ５４は、例えば、体温、血圧、脈拍等の測定結果を示す。また、問診データ５５は、咳の有無、頭痛の有無等の問診結果を示す。測定データ５４及び問診データ５５は、公知の方法により取得されてよい。
【０１８０】
診断部１１２Ｂは、対象者Ｐの健康状態を診断する。具体的には、診断部１１２Ｂは、上記状態推定部１１２と同様に、学習済みのニューラルネットワーク２Ｂに入力データ５Ｂを入力して、当該ニューラルネットワーク２Ｂの演算処理を実行する。これにより、診断部１１２Ｂは、入力データ５Ｂに対して対象者Ｐの健康状態を推定する推論を行った結果として、対象者Ｐの健康状態を示す診断情報２１Ｂに対応する出力値をニューラルネットワーク２Ｂから取得する。診断部１１２Ｂは、本発明の「推論部」の一例である。
【０１８１】
妥当性評価部１１３Ｂは、上記妥当性評価部１１３と同様に、自己符号化器４Ｂを利用して、推論結果として妥当な出力をニューラルネットワーク２Ｂから得られるか否かを評価する。自己符号化器４Ｂは、第２の学習器４の一例である。具体的に、妥当性評価部１１３Ｂは、ニューラルネットワーク２Ｂから得られる出力（診断情報２１Ｂ）を自己符号化器４Ｂのデコーダ４０１Ｂに入力して、当該デコーダ４０１Ｂの演算処理を実行する。これにより、妥当性評価部１１３Ｂは、測定データ５４に対応する第１対応データ４１４、及び問診データ５５に対応する第２対応データ４１５を含む出力４１Ｂを自己符号化器４Ｂから取得する。そこで、妥当性評価部１１３Ｂは、入力データ５Ｂと出力４１Ｂとを比較することで、ニューラルネットワーク２Ｂによる推論結果の妥当性を評価する。
【０１８２】
これにより、診断装置１Ｂは、与えられた測定データ５４及び問診データ５５に対してニューラルネットワーク２Ｂにより対象者Ｐの健康状態を推定する推論を実施すると共に、自己符号化器４Ｂを利用して、当該ニューラルネットワーク２Ｂによる推論結果の妥当性を評価することができる。なお、ニューラルネットワーク２Ｂの設定は、第１学習結果データ１２２Ｂに基づいて行われる。また、自己符号化器４Ｂのデコーダ４０１Ｂの設定は、第２学習結果データ１２３Ｂに基づいて行われる。
【０１８３】
また、図１４に示されるとおり、学習装置６Ｂの制御部は、記憶部に記憶されたプログラムをＲＡＭに展開し、ＲＡＭに展開されたプログラムをＣＰＵにより解釈及び実行する。これにより、学習装置６Ｂは、ソフトウェアモジュールとして、学習データ取得部６１１Ｂ及び学習処理部６１２Ｂを備えるコンピュータとして構成される。
【０１８４】
学習データ取得部６１１Ｂは、機械学習に利用するデータセット３Ｂを取得する。データセット３Ｂは、訓練データ３１Ｂ及び正解データ３２Ｂの対で構成される。訓練データ３１Ｂは上記訓練データ３１の一例であり、正解データ３２Ｂは上記正解データ３２の一例である。本実施形態では、訓練データ３１Ｂは、測定データ３１４及び問診データ３１５を含む。測定データ３１４及び問診データ３１５は、上記測定データ５４及び問診データ５５に対応する。一方、正解データ３２Ｂは、訓練データ３１Ｂに対する対象者の健康状態の推定結果の正解を示すように診断情報３２４を含む。診断情報３２４は、上記診断情報２１Ｂに対応する。
【０１８５】
学習データ取得部６１１Ｂは、上記ステップＳ２０１と同様の処理により、訓練データ３１Ｂ及び正解データ３２Ｂを含むデータセット３Ｂを取得してもよい。例えば、学習データ取得部６１１Ｂは、様々な健康状態の対象者Ｐから測定データ３１４及び問診データ３１５を取得する。そして、学習データ取得部６１１Ｂは、取得した測定データ３１４及び問診データ３１５に、対象者Ｐの健康状態を示す診断情報３２４を紐付ける。これにより、学習データ取得部６１１Ｂは、訓練データ３１Ｂ及び正解データ３２Ｂを含むデータセット３Ｂを取得することができる。
【０１８６】
学習処理部６１２Ｂは、測定データ３１４及び問診データ３１５を入力すると、診断情報３２４に対応する出力値を出力するようにニューラルネットワーク８１Ｂを学習させる。また、学習処理部６１２Ｂは、ニューラルネットワーク８１Ｂの出力を入力すると、測定データ３１４及び問診データ３１５それぞれに対応する出力値を出力するように自己符号化器８２Ｂのデコーダ８２０Ｂを学習させる。ニューラルネットワーク８１Ｂは上記ニューラルネットワーク２Ｂに対応し、自己符号化器８２Ｂは上記自己符号化器４Ｂに対応し、デコーダ８２０Ｂは上記デコーダ４０１Ｂに対応する。
【０１８７】
そして、学習処理部６１２Ｂは、構築したニューラルネットワーク８１Ｂの構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を第１学習結果データ１２２Ｂとして記憶部に格納する。また、学習処理部６１２Ｂは、構築した自己符号化器８２Ｂのデコーダ８２０Ｂの構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を第２学習結果データ１２３Ｂとして記憶部に格納する。これにより、学習装置６Ｂは、診断装置１Ｂで利用する学習済みのニューラルネットワーク２Ｂ及び自己符号化器４Ｂを生成することができる。
【０１８８】
（予測装置）
次に、図１５〜図１７は、上記実施形態の変形例として、太陽光発電所等の発電所における発電量を予測する予測装置１Ｃに本発明を適用した例を示す。図１５は、本変形例に係る予測装置１Ｃ及び学習装置６Ｃの適用場面の一例を模式的に例示する。図１６は、本変形例に係る予測装置１Ｃのソフトウェア構成の一例を模式的に例示する。図１７は、本変形例に係る学習装置６Ｃのソフトウェア構成の一例を模式的に例示する。なお、本変形例に係る予測装置１Ｃ及び学習装置６Ｃそれぞれのハードウェア構成は、上記自動運転支援装置１Ａ及び学習装置６それぞれのハードウェア構成と同様であってよい。
【０１８９】
図１６に示されるとおり、予測装置１Ｃの制御部は、記憶部に記憶されたプログラムをＲＡＭに展開し、ＲＡＭに展開されたプログラムをＣＰＵにより解釈及び実行する。これにより、診断装置１Ｂは、ソフトウェアモジュールとして、データ取得部１１１Ｃ、発電量予測部１１２Ｃ、及び妥当性評価部１１３Ｃを備えるコンピュータとして構成される。
【０１９０】
データ取得部１１１Ｃは、上記データ取得部１１１と同様に、ニューラルネットワーク２Ｃに入力される入力データ５Ｃを取得する。ニューラルネットワーク２Ｃは、第１の学習器２の一例である。入力データ５Ｃは、入力データ５の一例である。本変形例では、入力データ５Ｃは、天候データ５７を含む。天候データ５７は、発電量を予測する日の天候を示す。この天候データ５７は、例えば、天気予報の情報を提供する公知のウェブサイト等から取得されてよい。
【０１９１】
発電量予測部１１２Ｃは、対象の発電所における発電量を予測する。具体的には、発電量予測部１１２Ｃは、上記状態推定部１１２と同様に、学習済みのニューラルネットワーク２Ｃに入力データ５Ｃを入力して、当該ニューラルネットワーク２Ｃの演算処理を実行する。これにより、発電量予測部１１２Ｃは、入力データ５Ｃに対して発電量を予測する推論を行った結果として、対象の発電量の予測値を示す発電量情報２１Ｃに対応する出力値をニューラルネットワーク２Ｃから取得する。発電量予測部１１２Ｃは、本発明の「推論部」の一例である。
【０１９２】
妥当性評価部１１３Ｃは、上記妥当性評価部１１３と同様に、自己符号化器４Ｃを利用して、推論結果として妥当な出力をニューラルネットワーク２Ｃから得られるか否かを評価する。自己符号化器４Ｃは、第２の学習器の一例である。具体的に、妥当性評価部１１３Ｃは、ニューラルネットワーク２Ｃから得られる出力（発電量情報２１Ｃ）を自己符号化器４Ｃのデコーダ４０１Ｃに入力して、当該デコーダ４０１Ｃの演算処理を実行する。これにより、妥当性評価部１１３Ｃは、天候データ５７に対応する対応データ４１７を含む出力４１Ｃを自己符号化器４Ｃから取得する。そこで、妥当性評価部１１３Ｃは、入力データ５Ｃと出力４１Ｃとを比較することで、ニューラルネットワーク２Ｃによる推論結果の妥当性を評価する。
【０１９３】
これにより、予測装置１Ｃは、与えられた天候データ５７に対してニューラルネットワーク２Ｃにより発電量を予測する推論を実施すると共に、自己符号化器４Ｃを利用して、当該ニューラルネットワーク２Ｃによる推論結果の妥当性を評価することができる。なお、ニューラルネットワーク２Ｃの設定は、第１学習結果データ１２２Ｃに基づいて行われる。また、自己符号化器４Ｃのデコーダ４０１Ｃの設定は、第２学習結果データ１２３Ｃに基づいて行われる。
【０１９４】
また、図１７に示されるとおり、学習装置６Ｃの制御部は、記憶部に記憶されたプログラムをＲＡＭに展開し、ＲＡＭに展開されたプログラムをＣＰＵにより解釈及び実行する。これにより、学習装置６Ｃは、ソフトウェアモジュールとして、学習データ取得部６１１Ｃ及び学習処理部６１２Ｃを備えるコンピュータとして構成される。
【０１９５】
学習データ取得部６１１Ｃは、機械学習に利用するデータセット３Ｃを取得する。データセット３Ｃは、訓練データ３１Ｃ及び正解データ３２Ｃの対で構成される。訓練データ３１Ｃは上記訓練データ３１の一例であり、正解データ３２Ｃは上記正解データ３２の一例である。本実施形態では、訓練データ３１Ｃは、天候データ３１７を含む。天候データ３１７は、上記天候データ５７に対応する。一方、正解データ３２Ｃは、訓練データ３１Ｃに対する発電量の予測結果の正解を示すように発電量情報３２７を含む。発電量情報３２７は、上記発電量情報２１Ｃに対応する。
【０１９６】
学習データ取得部６１１Ｃは、上記ステップＳ２０１と同様の処理により、訓練データ３１Ｃ及び正解データ３２Ｃを含むデータセット３Ｃを取得してもよい。例えば、学習データ取得部６１１Ｃは、所定のウェブサイトから天候データ３１７を取得すると共に、天候データ３１７により天候が示される日の発電量を示す発電量情報３２７を取得する。発電量情報３２７は、公知のウェブサイトから取得されてもよいし、オペレータにより入力されてもよい。そして、学習データ取得部６１１Ｃは、取得した天候データ３１７と発電量情報３２７とを紐付ける。これにより、学習データ取得部６１１Ｃは、訓練データ３１Ｃ及び正解データ３２Ｃを含むデータセット３Ｃを取得することができる。
【０１９７】
学習処理部６１２Ｃは、天候データ３１７を入力すると、発電量情報３２７に対応する出力値を出力するようにニューラルネットワーク８１Ｃを学習させる。また、学習処理部６１２Ｃは、ニューラルネットワーク８１Ｃの出力を入力すると、天候データ３１７に対応する出力値を出力するように自己符号化器８２Ｃのデコーダ８２０Ｃを学習させる。ニューラルネットワーク８１Ｃは上記ニューラルネットワーク２Ｃに対応し、自己符号化器８２Ｃは上記自己符号化器４Ｃに対応し、デコーダ８２０Ｃは上記デコーダ４０１Ｃに対応する。
【０１９８】
そして、学習処理部６１２Ｃは、構築したニューラルネットワーク８１Ｃの構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を第１学習結果データ１２２Ｃとして記憶部に格納する。また、学習処理部６１２Ｃは、構築した自己符号化器８２Ｃのデコーダ８２０Ｃの構成、各ニューロン間の結合の重み、及び各ニューロンの閾値を示す情報を第２学習結果データ１２３Ｃとして記憶部に格納する。これにより、学習装置６Ｃは、予測装置１Ｃで利用する学習済みのニューラルネットワーク２Ｃ及び自己符号化器４Ｃを生成することができる。
【０１９９】
（その他）
以上のとおり、本発明は、教師あり学習を利用した様々な分野に適用可能である。第１の学習器により実施する所定の推論の種類は、本発明を適用する分野に応じて適宜決定されてよい。すなわち、本発明を適用する分野に応じて、様々な推論部を構成してもよい。
【０２００】
また、上記実施形態では、本発明の「動作実行部」による「推論の結果に基づく所定の動作」の一例として、運転状態情報２１Ａに基づく、自動運転モードから手動運転モードへの切り替えに関する動作（ステップＳ１０９及びＳ１１０）を例示する。しかしながら、「推論の結果に基づく所定の動作」は、このような例に限定されなくてもよく、本発明を適用する分野に応じて適宜決定されてよい。動作実行部は、入力データを第１の学習器に入力したときに当該入力データに対する推論結果として妥当な出力を第１の学習器から得られると評価した場合に、当該推論の結果に基づいて所定の動作の実行を制御するのに対して、当該入力データに対する推論結果として妥当な出力を第１の学習器から得られないと評価した場合には、当該推論の結果に基づく所定の動作の実行を停止するように制御するように構成されればよい。
【０２０１】
なお、「所定の動作の実行を停止する」ことは、所定の動作の実行を維持しないあらゆる態様を含んでもよい。すなわち、「所定の動作の実行を停止する」ことは、所定の動作を完全に停止することの他、例えば、速度、加速度、力等の所定の動作の属性を変更することを含んでもよい。また、所定の動作を実行する装置は、動作実行部を備える動作制御装置自身であってもよいし、動作制御装置とは異なる他の装置であってもよい。所定の動作を他の装置が実行する場合、動作制御装置は、その指令を他の装置に送信することで、所定の動作の実行を制御する。この場合、推論部は、動作制御装置ではなく、他の装置に存在してもよい。
【０２０２】
＜４．２＞
上記実施形態では、自動運転支援装置１Ａは、ニューラルネットワーク２Ａ及び自己符号化器４Ａを保持している。しかしながら、自動運転支援装置１Ａの構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、ニューラルネットワーク２Ａ及び自己符号化器４Ａの少なくとも一方は、自動運転支援装置１Ａ以外の外部装置に保持されてもよい。
【０２０３】
ニューラルネットワーク２Ａが外部装置に保持される場合、ニューラルネットワーク２Ａによる推論に関する一連の処理は、外部装置により実行されてよい。この場合、ニューラルネットワーク２Ａによる推論に関する一連の処理は、自動運転支援装置１Ａの処理手順から省略されてよい。また、状態推定部１１２は省略されてよい。
【０２０４】
また、自己符号化器４Ａのデコーダ４０１が外部装置に保持される場合、ステップＳ１０６の処理は、学部装置により実行されてよい。この場合、ステップＳ１０６の処理は、自動運転支援装置１Ａの処理手順から省略されてよい。制御部１１は、ステップＳ１０３で取得した入力データ５Ａ又はニューラルネットワーク２Ａの出力を外部装置に送信することで、デコーダ４０１の演算処理を当該外部装置に要求してもよい。そして、制御部１１は、当該外部装置による演算結果として、自己符号化器４Ａの出力４１Ａを外部装置から取得してもよい。
【０２０５】
更に、ニューラルネットワーク２Ａが自動運転支援装置１Ａに保持されるケース及び外部装置に保持されるケースのいずれのケースにおいても、ニューラルネットワーク２Ａによる推論に関する一連の処理の実行の有無を問わず、自動運転支援装置１Ａは、ステップＳ１０６及びＳ１０７の処理を実行してもよい。これにより、ニューラルネットワーク２Ａによる推論を実行する前に、自動運転支援装置１Ａは、入力データ５Ａをニューラルネットワーク２Ａに入力したときに入力データ５Ａに対する推論結果として妥当な出力をニューラルネットワーク２Ａから得られるか否かを評価してもよい。
【０２０６】
＜４．３＞
上記実施形態では、第１の学習器２にはニューラルネットワークにより構成され、第２の学習器４は自己符号化器により構成されている。しかしながら、各学習器（２、４）の種類は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、第１の学習器２は、線形回帰モデル、サポートベクタマシン等により構成されてもよい。また、例えば、第２の学習器４は、マハラノビス距離を算出する演算モデル、１クラスサポートベクタマシン等により構成されてもよい。
【０２０７】
例えば、第１の学習器２は、線形回帰モデルにより構成されてもよい。この場合、第２の学習器４は、マハラノビス距離を算出する演算モデルにより構成されてもよい。入力をｘ、出力をｙ、パラメータをθとすると、第１の学習器２（線形回帰モデル）は、以下の数１により表現することができる。
【０２０８】
【数１】
2019139277.tif 000003
この第１の学習器２によれば、入力データ５をｘに入力することで、入力データ５に対する所定の推論結果（ｙ）を得ることができる。入力ｘから出力ｙを推定するパラメータθは、以下の数２により算出することができる。
【０２０９】
【数２】
2019139277.tif 000004
【０２１０】
そこで、数２の関係式において、訓練データ３１を入力Ｘに入力し、正解データ３２を出力ｙに入力することで、パラメータθを算出することができる。このパラメータθを算出する処理が、第１の学習器２の教師あり学習の処理の一例である。
【０２１１】
一方、マハラノビス距離を算出する演算モデルｄ（ｘ）は、以下の数３により定義することができる。
【０２１２】
【数３】
2019139277.tif 000005
そこで、訓練データ３１の平均値μを算出することで、マハラノビス距離を算出する演算モデルを導出することができる。このマハラノビス距離を算出する演算モデルを導出する処理が、第２の学習器４の教師なし学習の処理の一例である。
【０２１３】
このとき、評価装置１は、第２の学習器４の出力（ｄ（ｘ））に基づいて、入力データ５に対する第１の学習器２による推論結果（ｙ）の妥当性を評価することができる。例えば、評価装置１は、以下の数４に示すｖ（ｘ）により、入力データ５に対する第１の学習器２による推論結果の妥当性の程度を表現してもよい。
【０２１４】
【数４】
2019139277.tif 000006
入力データ５が訓練データ３１に類似するほど、ｖ（ｘ）の値は１に近付き、入力データ５が訓練データ３１から乖離するほど、ｖ（ｘ）の値は０に近付く。そこで、評価装置１は、ｖ（ｘ）の値と所定の閾値とを比較することで、入力データ５に対する第１の学習器２による推論結果の妥当性を評価してもよい。すなわち、ｖ（ｘ）の値が所定の閾値以上である場合に、評価装置１は、入力データ５に対する第１の学習器２による推論結果の妥当性が高いと評価してもよい。また、ｖ（ｘ）の値が所定の閾値未満である場合に、評価装置１は、入力データ５に対する第１の学習器２による推論結果の妥当性が低いと評価してもよい。なお、所定の閾値は、実施の形態に応じて適宜設定されてよい。
【０２１５】
また、例えば、第１の学習器２は、サポートベクタマシンにより構成されてもよい。この場合、第２の学習器４は、１クラスサポートベクタマシンにより構成されてもよい。サポートベクタマシンの教師あり学習は、公知の方法により実施されてよい。このとき、各クラスの訓練データ３１に対する１クラスサポートベクタマシンＳａ（ｘ）は、以下の数５により表現することができる。また、全ての訓練データ３１に対する１クラスサポートベクタマシンＳｂ（ｘ）は、以下の数６により表現することができる。第２の学習器４として、いずれの１クラスサポートベクタマシンを採用してよい。
【０２１６】
【数５】
2019139277.tif 000007
【数６】
2019139277.tif 000008
φは、カーネル関数を示す。ｗi、ｗ、ｂi、及びｂは、学習により得られるパラメータである。いずれかの１クラスサポートベクタマシンを導出する処理が、第２の学習器４の教師なし学習の処理の一例である。
【０２１７】
入力データ５が訓練データ３１に類似するほど、Ｓａ（ｘ）及びＳｂ（ｘ）それぞれの値は１に近付き、入力データ５が訓練データ３１から乖離するほど、Ｓａ（ｘ）及びＳｂ（ｘ）それぞれの値は−１に近付く。そこで、評価装置１は、いずれかの１クラスサポートベクタマシンのｘに入力データ５を入力することで得られる値と所定の閾値とを比較することで、入力データ５に対する第１の学習器２による推論結果の妥当性を評価してもよい。すなわち、１クラスサポートベクタマシンから得られる値が所定の閾値以上である場合に、評価装置１は、入力データ５に対する第１の学習器２による推論結果の妥当性が高いと評価してもよい。また、１クラスサポートベクタマシンから得られる値が所定の閾値未満である場合に、評価装置１は、入力データ５に対する第１の学習器２による推論結果の妥当性が低いと評価してもよい。なお、所定の閾値は、実施の形態に応じて適宜設定されてよい。
【０２１８】
＜４．４＞
上記実施形態において、ステップＳ１１１及びＳ１１２の少なくとも一方の処理は省略されてもよい。これに応じて、自動運転支援装置１Ａのソフトウェア構成において、第１警告部１１４及びデータ送信部１１７の少なくとも一方は省略されてもよい。ステップＳ１１１及びＳ１１２を省略する場合、ステップＳ１０８は省略されてもよい。
【０２１９】
また、上記実施形態において、ステップＳ１０９及びＳ１１３の処理は省略されてもよい。これに応じて、自動運転支援装置１Ａのソフトウェア構成において、第２警告部１１５は省略されてもよい。
【０２２０】
上記実施形態では、自動運転を実施可能な車両に本発明を適用した例を示した。しかしながら、本発明を適用可能な車両は、このような例に限定されなくてもよく、自動運転を実施しない車両に本発明が適用されてもよい。この場合、ステップＳ１０１、Ｓ１０２、及びＳ１１０の処理は省略されてもよい。また、運転制御部１１６は、省略されてもよい。
【０２２１】
＜４．５＞
上記実施形態では、注視状態情報２１１は、運転者Ｄが運転に必要な注視を行っているか否かを２つのレベルで示し、即応性情報２１２は、運転に対する即応性が高い状態であるか低い状態であるかを２つのレベルで示す。しかしながら、注視状態情報２１１及び即応性情報２１２の表現形式は、このような例に限定されなくてもよく、注視状態情報２１１は、運転者Ｄが運転に必要な注視を行っているか否かを３つ以上のレベルで示してよく、即応性情報２１２は、運転に対する即応性が高い状態であるか低い状態であるかを３つ以上のレベルで示してよい。
【０２２２】
この場合、上記ステップＳ１０９では、制御部１１は、注視状態情報及び即応性情報のスコア値に基づいて、運転者Ｄが車両の運転に適した状態にあるか否かを判定してもよい。例えば、制御部１１は、注視状態情報のスコア値が所定の閾値よりも高いか否かに基づいて、運転者Ｄが車両の運転に適した状態にあるか否かを判定してもよい。また、例えば、制御部１１は、即応性情報のスコア値が所定の閾値よりも高いか否かに基づいて、運転者Ｄが車両の運転に適した状態にあるか否かを判定してもよい。また、例えば、制御部１１は、注視状態情報のスコア値及び即応性情報のスコア値の合計値が所定の閾値よりも高いか否かに基づいて、運転者Ｄが車両の運転に適した状態にあるか否かを判定してもよい。このとき、閾値は、適宜設定されてよい。更に、上記ステップＳ１１３では、制御部１１は、注視状態情報及び即応性情報それぞれのスコア値に応じて、警告する内容を変更してもよい。
【０２２３】
また、上記実施形態では、ニューラルネットワーク２Ａから出力される運転状態情報２１Ａは、注視状態情報２１１及び即応性情報２１２により構成されている。しかしながら、運転状態情報２１Ａの内容は、このような例に限定されなくてもよく、実施の形態に応じて適宜設定されてよい。例えば、注視状態情報２１１及び即応性情報２１２のうちいずれか一方は省略されてもよい。また、例えば、運転状態情報２１Ａは、注視状態情報２１１及び即応性情報２１２以外の情報を含んでもよい。具体例として、運転状態情報２１Ａは、運転者Ｄが運転席にいるか否かを示す情報、運転者Ｄの手がハンドルに置かれているか否かを示す情報、運転者Ｄの足がペダルに置かれているか否かを示す情報、運転者Ｄの運転に対する集中度を示す情報、運転者Ｄの行動状態を示す情報等を含んでもよい。
【０２２４】
＜４．６＞
上記実施形態では、ステップＳ１０４において、ニューラルネットワーク２Ａの入力として、撮影画像７１１をそのまま用いるのではなく、低解像度撮影画像５２を用いている。これにより、ステップＳ１０４におけるニューラルネットワーク２Ａの演算処理の計算量を低減することができる。同様に、ステップＳ２０２において、ニューラルネットワーク８１の学習処理の計算量を低減することができる。したがって、上記実施形態によれば、ステップＳ１０４及びＳ２０２における各制御部（１１、６１）（プロセッサ）の負荷を低減することができる。ただし、各ニューラルネットワーク（２Ａ、８１）に入力する撮影画像は、このような例に限定されなくてもよい。各ニューラルネットワーク（２Ａ、８１）には、カメラ７１から得られた撮影画像がそのまま入力されてもよい。なお、低解像度撮影画像（５２、３１２）の解像度は、運転者の顔の挙動は判別できないが、運転者の姿勢に関する特徴を抽出可能な程度であるのが好ましい。
【０２２５】
＜４．７＞
上記実施形態では、図７Ａに示されるとおり、運転者Ｄの状態を推定する推論に利用する学習済みのニューラルネットワーク２Ａは、全結合ニューラルネットワーク２５、畳み込みニューラルネットワーク２６、結合層２７、及びＬＳＴＭネットワーク２８を備えている。しかしながら、学習済みのニューラルネットワーク２Ａの構成は、このような例に限定されなくてもよく、実施の形態に応じて適宜決定されてよい。例えば、ＬＳＴＭネットワーク２８は省略されてもよい。ニューラルネットワーク８１についても同様である。また、各自己符号化器（４Ａ、８２）の構成も、実施の形態に応じて適宜決定されてよい。各自己符号化器（４Ａ、８２）のエンコーダは、ニューラルネットワーク（２Ａ、８１）と異なるニューラルネットワークにより構成されてもよい。
【０２２６】
＜４．８＞
上記実施形態では、運転者Ｄの状態を推定に利用する第１の学習器としてニューラルネットワークを用いている。また、そのような第１の学習器による推論結果の妥当性を評価する第２の学習器として自己符号化器を用いている。しかしながら、各学習器の種類は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。観測情報５１及び低解像度撮影画像５２を入力として利用可能であれば、第１の学習器は、ニューラルネットワーク以外の学習モデルで構成されてもよい。また、第２の学習器は、自己符号化器以外の学習モデルで構成されてもよい。
【０２２７】
＜４．９＞
上記実施形態では、制御部１１は、ステップＳ１０４において、観測情報５１及び低解像度撮影画像５２をニューラルネットワーク２Ａに入力している。しかしながら、ニューラルネットワーク２Ａの入力は、このような例に限定されなくてもよく、実施の形態に応じて適宜選択されてよい。例えば、観測情報５１及び低解像度撮影画像５２以外の情報が、ニューラルネットワーク２Ａに入力されてもよい。また、例えば、観測情報５１及び低解像度撮影画像５２のいずれか一方は省略されてもよい。また、例えば、観測情報５１において、生体情報７２１は省略されてもよい。この場合、生体センサ７２は省略されてもよい。
【０２２８】
＜４．１０＞
また、上記実施形態では、各学習結果データ（１２２、１２３）は、ニューラルネットワーク２Ａ及び自己符号化器４Ａのデコーダ４０１それぞれの構成を示す情報を含んでいる。しかしながら、各学習結果データ（１２２、１２３）の構成は、このような例に限定されなくてもよい。例えば、利用するニューラルネットワーク及び自己符号化器の構成が各装置で共通化されている場合には、各学習結果データ（１２２、１２３）は、ニューラルネットワーク２Ａ及び自己符号化器４Ａのデコーダ４０１それぞれの構成を示す情報を含んでいなくてもよい。
【０２２９】
＜４．１１＞
また、上記実施形態では、自動運転モードから手動運転モードへの切り替えの指示があった場合に、ニューラルネットワーク２Ａを利用して、運転者Ｄの状態を推定している。しかしながら、運転者Ｄの監視は、このようなタイミングだけではなく、その他のタイミングでも実施されてもよい。例えば、自動運転モードで車両が走行している間、手動運転モードへの切り替えの指示の有無を問わず、運転者Ｄの監視が行われてもよい。
【０２３０】
図１８は、本変形例に係る自動運転支援装置１Ａの処理手順の一例を例示するフローチャートである。制御部１１は、上記ステップＳ１０１により自動運転モードを開始した後、ステップＳ３０１から処理を開始する。なお、ステップＳ３０１〜Ｓ３０７の処理は、上記ステップＳ１０３〜Ｓ１０９の処理と同様である。また、ステップＳ３０８〜Ｓ３１０の処理は、上記ステップＳ１１１〜Ｓ１１３の処理と同様である。これにより、自動運転支援装置１Ａは、自動運転モードで車両が走行している間、運転者Ｄの状態を監視しつつ、その監視の内容（すなわち、ニューラルネットワーク２Ａによる推論）が妥当か否かを評価することができる。
【０２３１】
＜４．１２＞
上記実施形態では、第２の学習器４（自己符号化器４Ａ）の第２のエンコーダは、第１の学習器２の第１のエンコーダ（ニューラルネットワーク２Ａ）と同一、又は第１の学習器２の第１のエンコーダ（ニューラルネットワーク２Ａ）のコピーである。しかしながら、第２の学習器４の第２のエンコーダは、第１の学習器２の第１のエンコーダと異なっていてもよい。また、各エンコーダ及びデコーダは、上記実施形態の例に限定されなくてもよく、各エンコーダは、入力データをエンコードするように適宜構築されてよく、デコーダは、第２のエンコーダの出力をデコードするように適宜構築されてよい。
【符号の説明】
【０２３２】
１…評価装置、
２…第１の学習器、２１…出力、
３…データセット、３１…訓練データ、３２…正解データ、
４…第２の学習器、４１…出力、
５…入力データ、
１Ａ・自動運転支援装置、
１１…制御部、１２…記憶部、１３…外部インタフェース、
１１１…データ取得部、１１２…状態推定部（推論部）、
１１３…妥当性評価部、１１４…第１警告部（警告部）、
１１５…第２警告部、１１６…運転制御部（動作実行部）、
１１７…データ送信部、
１２１…プログラム（評価プログラム）、
１２２…第１学習結果データ、１２３…第２学習結果データ、
２Ａ…ニューラルネットワーク、
２１Ａ…出力、
２１１…注視状態情報、２１２…即応性情報、
２５…全結合ニューラルネットワーク、
２５１…入力層、２５２…中間層（隠れ層）、２５３…出力層、
２６…畳み込みニューラルネットワーク、
２６１…畳み込み層、２６２…プーリング層、
２６３…全結合層、２６４…出力層、
２７…結合層、
２８…ＬＳＴＭネットワーク（再帰型ニューラルネットワーク）、
２８１…入力層、２８２…ＬＳＴＭブロック、２８３…出力層、
３Ａ…データセット、
３１Ａ…訓練データ、
３１１…観測情報、３１２…低解像度撮影画像、
３２Ａ…正解データ、
３２１…注視状態情報、３２２…即応性情報、
４Ａ…自己符号化器、４０１…デコーダ、
４１Ａ…出力、
４１１…対応情報、４１２…対応画像、
４５…第１部分、４６…第２部分、
４７…第３部分、４８…第４部分、
５Ａ…入力データ、
５１…観測情報、５２…低解像度撮影画像（画像データ）、
６…学習装置、
６１…制御部、６２…記憶部、６３…通信インタフェース、
６４…入力装置、６５…出力装置、６６…ドライブ、
６１１…学習データ取得部、６１２…学習処理部、
６２１…学習プログラム、
７０…ナビゲーション装置、
７１…カメラ、
７１１…撮影画像、７１２…顔挙動情報、
７２…生体センサ、７２１…生体情報、
７３…スピーカ、
８１…ニューラルネットワーク、
８１１…全結合ニューラルネットワーク、
８１２…畳み込みニューラルネットワーク、
８１３…結合層、８１４…ＬＳＴＭネットワーク、
８２…自己符号化器、８２０…デコーダ、
８２１…第１部分、８２２…第２部分、
８２３…第３部分、８２４…第４部分、
９２…記憶媒体、
１Ｂ…診断装置、
１１１Ｂ…データ取得部、１１２Ｂ…診断部、１１３Ｂ…妥当性評価部、
１２２Ｂ…第１学習結果データ、
１２３Ｂ…第２学習結果データ、
２Ｂ…ニューラルネットワーク、
２１Ｂ…診断情報（出力）、
３Ｂ…データセット、
３１Ｂ…訓練データ、３１４…測定データ、３１５…問診データ、
３２Ｂ…正解データ、３２４…診断情報、
４Ｂ…自己符号化器、４０１Ｂ…デコーダ、
４１Ｂ…出力、
４１４…第１対応データ、４１５…第２対応データ、
５Ｂ…入力データ、
５４…測定データ、５５…問診データ、
６Ｂ…学習装置、
６１１Ｂ…学習データ取得部、６１２Ｂ…学習処理部、
８１Ｂ…ニューラルネットワーク、８２Ｂ…自己符号化器、
８２０Ｂ…デコーダ、
１Ｃ…予測装置、
１１１Ｃ…データ取得部、１１２Ｃ…発電量予測部、
１１３Ｃ…妥当性評価部、
１２２Ｃ…第１学習結果データ、
１２３Ｃ…第２学習結果データ、
２Ｃ…ニューラルネットワーク、
２１Ｃ…発電量情報（出力）、
３Ｃ…データセット、
３１Ｃ…訓練データ、３１７…天候データ、
３２Ｃ…正解データ、３２７…発電量情報、
４Ｃ…自己符号化器、４０１Ｃ…デコーダ、
４１Ｃ…出力、４１７…対応データ、
５Ｃ…入力データ、５７…天候データ、
６Ｃ…学習装置、
６１１Ｃ…学習データ取得部、６１２Ｃ…学習処理部、
８１Ｃ…ニューラルネットワーク、８２Ｃ…自己符号化器、
８２０Ｃ…デコーダ
【図１】
2019139277.tif 000009
【図２】
2019139277.tif 000010
【図３】
2019139277.tif 000011
【図４】
2019139277.tif 000012
【図５】
2019139277.tif 000013
【図６Ａ】
2019139277.tif 000014
【図６Ｂ】
2019139277.tif 000015
【図７Ａ】
2019139277.tif 000016
【図７Ｂ】
2019139277.tif 000017
【図８】
2019139277.tif 000018
【図９Ａ】
2019139277.tif 000019
【図９Ｂ】
2019139277.tif 000020
【図１０Ａ】
2019139277.tif 000021
【図１０Ｂ】
2019139277.tif 000022
【図１１】
2019139277.tif 000023
【図１２】
2019139277.tif 000024
【図１３】
2019139277.tif 000025
【図１４】
2019139277.tif 000026
【図１５】
2019139277.tif 000027
【図１６】
2019139277.tif 000028
【図１７】
2019139277.tif 000029
【図１８】
2019139277.tif 000030