(57)【要約】      （修正有）【課題】入力データ中のノイズの影響を抑制できるように、モデルパラメータを学習できるモデルパラメータ学習装置などを提供する。【解決手段】モデルパラメータ学習装置１は、第１学習処理と第２学習処理を交互に実行する。第１学習処理では、画像データＸｏｒｇにノイズＸｎｏｉを付加した入力データＸｉｎをデータ処理部５に備えられた画像処理ＮＮモデルに入力したときの出力データＸｏｕｔと画像データＸｏｒｇとの誤差が最小になるように、画像処理ＮＮモデルのモデルパラメータＷ１，ｂ１,Ｗ２,ｂ２が学習される。第２学習処理では、入力データＸｉｎをデータ処理部５に備えられた制御処理ＮＮモデルに入力したときの出力データＱを独立変数とする損失関数ＬＡＥが最小になるように、制御処理ＮＮモデルのモデルパラメータＷ１,ｂ１,Ｗｍ,ｂｍ,Ｗｑ,ｂｑが学習される。【選択図】図１
2020052513.tif 000002
【特許請求の範囲】
【請求項１】
対象の物理的特性及び視覚的特性の少なくとも一方を表すパラメータのデータである特性データを取得する特性データ取得手段と、
前記特性データに所定の第１ノイズデータを付加することにより、第１ノイズ付加データを作成する第１ノイズ付加データ作成手段と、
第１モデル及び第２モデルを有し、前記第１ノイズ付加データが当該第１モデルに入力されたときに、当該第１モデルの出力データを前記第２モデルに入力するとともに、当該第２モデルから出力される第２モデルデータを取得するモデルデータ取得手段と、
前記特性データに相当する教師データを取得する教師データ取得手段と、
前記第２モデルデータと前記教師データとの誤差が最小になるように、前記第１モデル及び前記第２モデルの少なくとも一方のモデルパラメータを学習する第１学習処理を実行する第１学習手段と、
を備えることを特徴とするモデルパラメータ学習装置。
【請求項２】
請求項１に記載のモデルパラメータ学習装置において、
前記第１学習処理の実行回数が第１所定値に達したときに、前記第１ノイズ付加データの前記第１モデルへの入力と前記第１学習処理を停止する実行停止手段と、
前記特性データに所定の第２ノイズデータを付加したデータ又は前記特性データを、入力用特性データとして設定する入力用特性データ設定手段と、
をさらに備え、
前記モデルデータ取得手段は、前記第２モデルと別個の第３モデルをさらに有し、前記第１学習処理が停止されている場合において前記入力用特性データが前記第１モデルに入力されたときに、当該第１モデルの出力データを前記第３モデルに入力するとともに、当該第３モデルから出力される第３モデルデータを取得し、
当該第３モデルデータを独立変数として含む損失関数が最小になるように、前記第１モデル及び前記第３モデルの少なくとも一方のモデルパラメータを学習する第２学習処理を実行する第２学習手段をさらに備えることを特徴とするモデルパラメータ学習装置。
【請求項３】
請求項２に記載のモデルパラメータ学習装置において、
前記実行停止手段は、前記第２学習処理の実行回数が第２所定値に達したときに、前記入力用特性データの前記第１モデルへの入力と前記第２学習処理を停止すると同時に、前記第１ノイズ付加データの前記第１モデルへの入力と前記第１学習処理を実行し、当該第１学習処理の実行以降、前記第１学習処理の前記実行回数が前記第１所定値に達する毎、及び前記第２学習処理の前記実行回数が前記第２所定値に達する毎に、前記第１学習処理及び前記第２学習処理の一方の停止と他方の実行を交互に実施することを特徴とするモデルパラメータ学習装置。
【請求項４】
請求項１ないし３のいずれかに記載のモデルパラメータ学習装置において、
前記特性データは、前記対象の画像データであることを特徴とするモデルパラメータ学習装置。
【請求項５】
請求項１ないし４のいずれかに記載のモデルパラメータ学習装置において、
前記特性データ取得手段及び前記教師データ取得手段はそれぞれ、前記特性データ及び前記教師データを仮想空間におけるデータとして取得することを特徴とするモデルパラメータ学習装置。
【請求項６】
請求項４に記載のモデルパラメータ学習装置において、
前記教師データ取得手段は、前記対象を画像に含むとともに前記画像データと同等以上の解像度又は画質を有する第２画像データ、及び、前記対象との距離を表す距離データの一方に基づき、前記教師データを取得することを特徴とするモデルパラメータ学習装置。
【請求項７】
請求項６に記載のモデルパラメータ学習装置において、
前記特性データ取得手段は、第１カメラであり、
前記教師データ取得手段は、前記第１カメラ以上の画素数を有する第２カメラであることを特徴とするモデルパラメータ学習装置。
【請求項８】
請求項６に記載のモデルパラメータ学習装置において、
前記特性データ取得手段は、カメラであり、
前記教師データ取得手段は、ＬＩＤＡＲ及びレーダの一方の検出データに基づいて、前記教師データを取得することを特徴とするモデルパラメータ学習装置。
【請求項９】
請求項３に記載のモデルパラメータ学習装置において、
前記第１学習処理では、少なくとも前記第１モデルのモデルパラメータが学習され、
前記第２学習処理では、少なくとも前記第３モデルのモデルパラメータが学習されることを特徴とするモデルパラメータ学習装置。
【請求項１０】
請求項９に記載のモデルパラメータ学習装置において前記第１学習処理及び前記第２学習処理が交互に実行された回数が第３所定値に達したときの前記第１モデル及び前記第３モデルの前記モデルパラメータと、前記第１モデル及び前記第３モデルとを記憶する記憶手段と、
当該記憶手段に記憶された前記モデルパラメータと、前記第１モデル及び前記第３モデルとを用いて、車両を制御する制御手段と、
を備えることを特徴とする制御装置。
【請求項１１】
対象の物理的特性及び視覚的特性の少なくとも一方を表すパラメータのデータである特性データを取得し、
当該特性データに所定の第１ノイズデータを付加することにより、第１ノイズ付加データを作成し、
前記第１ノイズ付加データを第１モデルに入力し、
当該第１モデルの出力データを第２モデルに入力し、
当該第２モデルの出力データである第２モデルデータを取得し、
前記特性データに相当する教師データを取得し、
前記第２モデルデータと前記教師データとの誤差が最小になるように、前記第１モデル及び前記第２モデルの少なくとも一方のモデルパラメータを学習する第１学習処理を実行することを特徴とするモデルパラメータ学習方法。
【請求項１２】
請求項１１に記載のモデルパラメータ学習方法において、
前記第１学習処理の実行回数が第１所定値に達したときに、前記第１ノイズ付加データの前記第１モデルへの入力と前記第１学習処理を停止し、
前記特性データに所定の第２ノイズデータを付加したデータ又は前記特性データを、入力用特性データとして設定し、
当該入力用特性データを前記第１モデルに入力し、
当該第１モデルの出力データを前記第２モデルと別個の第３モデルに入力し、
当該第３モデルから出力される第３モデルデータを取得し、
当該第３モデルデータを独立変数として含む損失関数が最小になるように、前記第１モデル及び前記第３モデルの少なくとも一方のモデルパラメータを学習する第２学習処理を実行することを特徴とするモデルパラメータ学習方法。
【請求項１３】
請求項１２に記載のモデルパラメータ学習方法において、
前記第２学習処理の実行回数が第２所定値に達したときに、前記入力用特性データの前記第１モデルへの入力と前記第２学習処理を停止すると同時に、前記第１ノイズ付加データの前記第１モデルへの入力と前記第１学習処理を実行し、
当該第１学習処理の実行以降、前記第１学習処理の前記実行回数が前記第１所定値に達する毎、及び前記第２学習処理の前記実行回数が前記第２所定値に達する毎に、前記第１学習処理及び前記第２学習処理の一方の停止と他方の実行を交互に実施することを特徴とするモデルパラメータ学習方法。
【請求項１４】
請求項１１ないし１３のいずれかに記載のモデルパラメータ学習方法において、
前記特性データは、前記対象の画像データであることを特徴とするモデルパラメータ学習方法。
【請求項１５】
請求項１１ないし１４のいずれかに記載のモデルパラメータ学習方法において、
前記特性データ及び前記教師データは仮想空間におけるデータとして取得されることを特徴とするモデルパラメータ学習方法。
【請求項１６】
請求項１４に記載のモデルパラメータ学習方法において、
前記対象を画像に含むとともに前記画像データと同等以上の解像度又は画質を有する第２画像データ、及び、前記対象との距離を表す距離データの一方に基づき、前記教師データを取得することを特徴とするモデルパラメータ学習方法。
【請求項１７】
請求項１６に記載のモデルパラメータ学習方法において、
第１カメラによって、前記画像データを取得し、
前記第１カメラ以上の画素数を有する第２カメラによって、前記教師データを取得することを特徴とするモデルパラメータ学習方法。
【請求項１８】
請求項１６に記載のモデルパラメータ学習方法において、
カメラによって、前記画像データを取得し、
ＬＩＤＡＲ及びレーダの一方の検出データに基づいて、前記教師データを取得することを特徴とするモデルパラメータ学習方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モデルパラメータを学習するモデルパラメータ学習装置などに関する。
【背景技術】
【０００２】
従来、モデルパラメータ学習装置として、特許文献１に記載されたものが知られている。このモデルパラメータ学習装置では、入力用訓練画像と出力用訓練画像の平均二乗誤差を損失関数とする誤差逆伝播法により、ニューラルネットワークモデルのモデルパラメータが学習される。この場合、入力用訓練画像は、目的物を含む生体画像であり、出力用訓練画像は、目的物を含まない生体画像である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−８９３０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、例えば、自動運転車両において、撮像装置によって撮像した画像データをニューラルネットワークモデルに入力し、その出力データを用いて、自動運転車両の走行状態を制御することが実施されている。このような自動運転車両に対して、特許文献１のモデルパラメータ学習装置によってモデルパラメータが学習されたニューラルネットワークモデルを用いた場合、以下に述べるような問題が発生する。
【０００５】
すなわち、自動運転車両の場合、その周辺環境条件が変化することによって、画像データ中のノイズ成分が増大することがある。これに対して、特許文献１のニューラルネットワークモデルの場合、入力用訓練画像と出力用訓練画像の平均二乗誤差を損失関数とする誤差逆伝播法により、モデルパラメータが学習されるものに過ぎない。そのため、画像データ中のノイズ成分が増大した場合、ニューラルネットワークモデルの出力データが、ノイズの影響を受けやすいことで、自動運転車両の走行状態が不安定になってしまう。この点は、自動運転車両以外の産業機器や、ニューラルネットワークモデル以外のモデルを用いる場合においても同様である。また、画像データ以外の入力データを用いる場合にも同様にノイズの影響を受けやすくなる。
【０００６】
本発明は、上記課題を解決するためになされたもので、入力データ中のノイズの影響を抑制できるように、モデルパラメータを学習できるモデルパラメータ学習装置などを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明のモデルパラメータ学習装置１は、対象の物理的特性及び視覚的特性の少なくとも一方を表すパラメータのデータである特性データ（画像データＸｏｒｇ)  を取得する特性データ取得手段（画像データ取得部２）と、特性データ(画像データＸｏｒｇ)  に所定の第１ノイズデータ（ノイズＸｎｏｉ）を付加することにより、第１ノイズ付加データ（入力データＸｉｎ）を作成する第１ノイズ付加データ作成手段（加算器４）と、第１モデル（画像処理ＮＮモデル１０の入力層１１から隠れ層１２までの部分）及び第２モデル（画像処理ＮＮモデル１０の隠れ層１２から出力層１３までの部分）を有し、第１ノイズ付加データが第１モデルに入力されたときに、第１モデルの出力データを第２モデルに入力するとともに、第２モデルから出力される第２モデルデータ（出力データＸｏｕｔ）を取得するモデルデータ取得手段（データ処理部５）と、特性データ(画像データＸｏｒｇ)  に相当する教師データ（画像データＸｏｒｇ）を取得する教師データ取得手段（画像データ取得部２）と、第２モデルデータと教師データとの誤差が最小になるように、第１モデル及び第２モデルの少なくとも一方のモデルパラメータＷ１，ｂ１，Ｗ２，ｂ２を学習する第１学習処理を実行する第１学習手段（第１学習処理部７）と、を備えることを特徴とする。
【０００８】
このモデルパラメータ学習装置によれば、特性データに所定の第１ノイズデータを付加することにより、第１ノイズ付加データが作成される。また、教師データが、特性データに相当するものとして取得される。そして、第１ノイズ付加データが第１モデルに入力されたときに第２モデルから出力される第２モデルデータと教師データとの誤差が最小になるように、第１モデル及び第２モデルの少なくとも一方のモデルパラメータを学習する第１学習処理が実行される。したがって、この第１学習処理が繰り返し実行されるのに伴い、モデルパラメータは、第２モデルデータが教師データに近づくように学習されることになる。この教師データは、特性データに相当するものであるので、第２モデルデータが第１ノイズ付加データにおけるノイズの影響が抑制された値になるように、モデルパラメータを学習することができる。
【０００９】
本発明のモデルパラメータ学習装置において、第１学習処理の実行回数が第１所定値（値１）に達したときに、第１ノイズ付加データの第１モデルへの入力と第１学習処理を停止する実行停止手段（データ処理部５）と、特性データ（画像データＸｏｒｇ）に所定の第２ノイズデータ（ノイズＸｎｏｉ）を付加したデータ又は、特性データ（画像データＸｏｒｇ）を、入力用特性データ（入力データＸｉｎ）として設定する入力用特性データ設定手段（加算器４）と、をさらに備え、モデルデータ取得手段は、第２モデルと別個の第３モデル（制御処理ＮＮモデル２０の隠れ層１２から出力層２２までの部分）をさらに有し、第１学習処理が停止されている場合において入力用特性データが第１モデルに入力されたときに、第１モデルの出力データを第３モデルに入力するとともに、第３モデルから出力される第３モデルデータ（出力データＱ）を取得し、第３モデルデータを独立変数として含む損失関数ＬＲＬが最小になるように、第１モデル及び第３モデルの少なくとも一方のモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑを学習する第２学習処理を実行する第２学習手段（第２学習処理部８）をさらに備えることが好ましい。
【００１０】
このモデルパラメータ学習装置によれば、第１学習処理の実行回数が第１所定値に達したときに、第１ノイズ付加データの第１モデルへの入力と第１学習処理が停止される。さらに、特性データに所定の第２ノイズデータを付加したデータ又は特性データが、入力用特性データとして設定される。そして、そのような入力用特性データが第１モデルに入力されたときに第３モデルから出力される第３モデルデータを独立変数として含む損失関数が最小になるように、第１モデル及び第３モデルの少なくとも一方のモデルパラメータを学習する第２学習処理が実行される。したがって、この第２学習処理が実行されるのに伴い、モデルパラメータは、損失関数が最小になるように学習されることになる。それにより、特性データに所定の第２ノイズデータを付加した入力用特性データが第１モデルに入力される場合には、第３モデルデータが入力用特性データにおけるノイズの影響が抑制された値になるように、モデルパラメータを学習することができる。
【００１１】
本発明のモデルパラメータ学習装置において、実行停止手段は、第２学習処理の実行回数が第２所定値（値１）に達したときに、入力用特性データの第１モデルへの入力と第２学習処理を停止すると同時に、第１ノイズ付加データの第１モデルへの入力と第１学習処理を実行し、第１学習処理の実行以降、第１学習処理の実行回数が第１所定値に達する毎、及び第２学習処理の実行回数が第２所定値に達する毎に、第１学習処理及び第２学習処理の一方の停止と他方の実行を交互に実施することが好ましい。
【００１２】
このモデルパラメータ学習装置によれば、第２学習処理の実行回数が第２所定値に達したときに、入力用特性データの第１モデルへの入力と第２学習処理を禁止すると同時に、第１ノイズ付加データの第１モデルへの入力と第１学習処理が実行される。さらに、第１学習処理の実行以降、第１学習処理の実行回数が第１所定値に達する毎、及び第２学習処理の実行回数が第２所定値に達する毎に、第１学習処理及び第２学習処理の一方の停止と他方の実行が交互に実施される。このように、ノイズの影響が抑制されるように、第１モデル及び第２モデルの少なくとも一方のモデルパラメータを学習する処理と、ノイズの影響が抑制されるように、第１モデル及び第３モデルの少なくとも一方のモデルパラメータを学習する処理とを交互に実行することができる。それにより、２つの異なる学習方法を用いて、モデルパラメータを十分に学習することができる。
【００１３】
本発明のモデルパラメータ学習装置において、特性データは、対象の画像データであることが好ましい。
【００１４】
このモデルパラメータ学習装置によれば、特性データとして、対象の画像データを用いることにより、前述した作用効果を得ることができる。
【００１５】
本発明のモデルパラメータ学習装置において、特性データ取得手段及び教師データ取得手段はそれぞれ、特性データ（画像データＸｏｒｇ）及び教師データを仮想空間におけるデータとして取得することが好ましい。
【００１６】
このモデルパラメータ学習装置によれば、特性データ及び教師データが仮想空間におけるデータとして取得されるので、これらのデータを実空間においてセンサなどを用いて実際に取得する必要がなくなることで、その分、コストを削減することができる。また、ノイズを付加したデータを用いることにより、ノイズの少ない仮想空間の環境下でも、ノイズの影響が抑制されるように、モデルパラメータを学習することができる。
【００１７】
本発明のモデルパラメータ学習装置において、教師データ取得手段は、対象を画像に含むとともに画像データと同等以上の解像度又は画質を有する第２画像データ、及び、対象との距離を表す距離データの一方に基づき、教師データを取得することが好ましい。
【００１８】
このモデルパラメータ学習装置によれば、対象を画像に含むとともに画像データと同等以上の解像度又は画質を有する第２画像データ、及び、対象との距離を表す距離データの一方に基づき、教師データが取得される。したがって、例えば、教師データとして画像データよりも高い解像度又は画質（高Ｓ／Ｎ比、高感度、ハイダイナミックレンジ）のデータを用いた場合には、同等の解像度又は画質の画像データを用いた場合と比べて、より高い学習効果を得ることができる。また、対象との距離を表す距離データに基づき、教師データが取得された場合には、対象の距離データを反映させながら、モデルパラメータの学習を実行することができる。
【００１９】
本発明のモデルパラメータ学習装置において、特性データ取得手段は、第１カメラであり、教師データ取得手段は、第１カメラ以上の画素数を有する第２カメラであることが好ましい。
【００２０】
このモデルパラメータ学習装置によれば、２つのカメラを用いて、モデルパラメータを学習することができる。特に、第２カメラの画素数が第１カメラよりも大きいときには、教師データとして画像データよりも高い解像度又は画質のデータを用いることができる。それにより、同等の画素数のカメラを用いた場合と比べて、より高い学習効果を得ることができる。
【００２１】
本発明のモデルパラメータ学習装置において、特性データ取得手段は、カメラであり、教師データ取得手段は、ＬＩＤＡＲ及びレーダの一方の検出データに基づいて、教師データを取得することが好ましい。
【００２２】
このモデルパラメータ学習装置によれば、ＬＩＤＡＲ及びレーダの一方に基づいて、教師データが取得されるので、教師データとして距離画像データを取得することができる。それにより、対象の距離データを反映させながら、モデルパラメータの学習を実行することができる。
【００２３】
本発明のモデルパラメータ学習装置において、第１学習処理では、少なくとも第１モデルのモデルパラメータが学習され、第２学習処理では、少なくとも第３モデルのモデルパラメータが学習されることが好ましい。
【００２４】
このモデルパラメータ学習装置によれば、少なくとも第１モデル及び第３モデルのモデルパラメータを十分に学習することができる。
【００２５】
本発明の制御装置５０は、上記のモデルパラメータ学習装置１において第１学習処理及び第２学習処理が交互に実行された回数が第３所定値に達したときの第１モデル及び第３モデルのモデルパラメータと、第１モデル及び第３モデルとを記憶する記憶手段（ＥＣＵ５２）と、記憶手段に記憶されたモデルパラメータと、第１モデル及び第３モデルとを用いて、車両を制御する制御手段（ＥＣＵ５２）と、を備えることを特徴とする。
【００２６】
この制御装置によれば、記憶手段に記憶されたモデルパラメータと、第１モデル及び第３モデルとを用いて、車両が制御される。この場合、第１モデル及び第３モデルのモデルパラメータは第１学習処理及び第２学習処理が交互に実行された回数が第３所定値に達したときの値であるので、モデルパラメータは、前述したように、第１ノイズ付加データ及び第２ノイズ付加データにおけるノイズの影響、又は第１ノイズ付加データにおけるノイズの影響を抑制できるように十分に学習されていることになる。したがって、そのようなモデルパラメータ、第１モデル及び第３モデルを用いることにより、車両の制御において、高いロバスト性を確保することができる。
【００２７】
本発明のモデルパラメータ学習方法は、対象の物理的特性及び視覚的特性の少なくとも一方を表すパラメータのデータである特性データ（画像データＸｏｒｇ)  を取得し、特性データ（画像データＸｏｒｇ)  に所定の第１ノイズデータ（ノイズＸｎｏｉ）を付加することにより、第１ノイズ付加データ（入力データＸｉｎ）を作成し、第１ノイズ付加データを第１モデル（画像処理ＮＮモデル１０の入力層１１から隠れ層１２までの部分）に入力し、第１モデルの出力データを第２モデル（画像処理ＮＮモデル１０の隠れ層１２から出力層１３までの部分）に入力し、第２モデルの出力データである第２モデルデータ（出力データＸｏｕｔ）を取得し、特性データ（画像データＸｏｒｇ)  に相当する教師データ（画像データＸｏｒｇ）を取得し、第２モデルデータと教師データとの誤差が最小になるように、第１モデル及び第２モデルの少なくとも一方のモデルパラメータＷ１，ｂ１，Ｗ２，ｂ２を学習する第１学習処理を実行することを特徴とする。
【００２８】
本発明のモデルパラメータ学習方法において、第１学習処理の実行回数が第１所定値（値１）に達したときに、第１ノイズ付加データの第１モデルへの入力と第１学習処理を停止し、特性データ（画像データＸｏｒｇ)  に所定の第２ノイズデータ（ノイズＸｎｏｉ）を付加したデータ又は特性データ（画像データＸｏｒｇ)  を、入力用特性データ（入力データＸｉｎ）として設定し、入力用特性データを第１モデル（制御処理ＮＮモデル２０の入力層１１から隠れ層１２までの部分）に入力し、第１モデルの出力データを第２モデルと別個の第３モデル（制御処理ＮＮモデル２０の隠れ層１２から出力層２２までの部分）に入力し、第３モデルから出力される第３モデルデータ（出力データＱ）を取得し、第３モデルデータを独立変数として含む損失関数ＬＲＬが最小になるように、第１モデル及び第３モデルの少なくとも一方のモデルパラメータを学習する第２学習処理を実行することが好ましい。
【００２９】
本発明のモデルパラメータ学習方法において、第２学習処理の実行回数が第２所定値（値１）に達したときに、第２ノイズ付加データの第１モデルへの入力と第２学習処理を停止すると同時に、第１ノイズ付加データの第１モデルへの入力と第１学習処理を実行し、第１学習処理の実行以降、第１学習処理の実行回数が第１所定値に達する毎、及び第２学習処理の実行回数が第２所定値に達する毎に、第１学習処理及び第２学習処理の一方の停止と他方の実行を交互に実施することが好ましい。
【００３０】
本発明のモデルパラメータ学習方法において、特性データは、対象の画像データＸｏｒｇであることが好ましい。
【００３１】
本発明のモデルパラメータ学習方法において、特性データ（画像データＸｏｒｇ)  及び教師データ（画像データＸｏｒｇ）は仮想空間におけるデータとして取得されることが好ましい。
【００３２】
本発明のモデルパラメータ学習方法において、画像データを、対象の画像を含むように取得し、対象を画像に含むとともに画像データと同等以上の解像度又は画質を有する第２画像データ、及び、対象との距離を表す距離データの一方に基づき、教師データを取得することが好ましい。
【００３３】
本発明のモデルパラメータ学習方法において、第１カメラによって、画像データを取得し、第１カメラ以上の画素数を有する第２カメラによって、教師データを取得することが好ましい。
【００３４】
本発明のモデルパラメータ学習方法において、カメラによって、画像データを取得し、ＬＩＤＡＲ及びレーダの一方の検出データに基づいて、教師データを取得することが好ましい。
【図面の簡単な説明】
【００３５】
【図１】本発明の第１実施形態に係るモデルパラメータ学習装置の構成を示すブロック図である。
【図２】データ処理部における画像処理用のニューラルネットワークモデルの順伝播演算を実行したときの入出力を示す図である。
【図３】データ処理部における制御処理用のニューラルネットワークモデルの順伝播演算を実行したときの入出力を示す図である。
【図４】本発明の制御装置及びこれを適用した自動運転車両を示す図である。
【図５】制御装置による学習制御処理を示すフローチャートである。
【図６】制御装置による自動運転制御処理を示すフローチャートである。
【発明を実施するための形態】
【００３６】
以下、図面を参照しながら、本発明の第１実施形態に係るモデルパラメータ学習装置について説明する。本実施形態のモデルパラメータ学習装置は、以下に述べるように、モデルパラメータの学習処理を含む各種の演算処理を所定の制御周期ΔＴで実行するものであり、具体的にはコントローラ（図示せず）によって構成されている。このコントローラは、プロセッサ、ストレージ及びメモリ（いずれも図示せず）などを備えている。
【００３７】
図１に示すように、本実施形態のモデルパラメータ学習装置１は、画像データ取得部２、ノイズ発生部３、加算器４、データ処理部５、出力切換部６、第１学習処理部７及び第２学習処理部８を備えている。なお、以下の説明において取得／算出される各種の値は、コントローラのメモリ内に記憶されるものとする。
【００３８】
まず、画像データ取得部２は、画像データＸｏｒｇを上述した制御周期ΔＴで取得し、これを加算器４に出力する。この画像データＸｏｒｇは、１つ以上の撮像素子から取得されたピクセルのＮａ（Ｎａは複数）個の値Ｘｏｒｇ＿ｊ（ｊ＝１〜Ｎａ）を要素とするベクトルとして、動画データのフレームから取得される。例えば、動画データとしては、仮想空間内の道路上を仮想車両が走行する際の、車両を中心として全周囲の風景の推移を表すように作成されたものが用いられる。
【００３９】
なお、本実施形態では、画像データ取得部２が特性データ取得手段及び教師データ取得手段に相当し、画像データＸｏｒｇが特性データ及び教師データに相当する。
【００４０】
また、ノイズ発生部３は、ノイズＸｎｏｉを上述した制御周期ΔＴで発生し、これを加算器４に出力する。このノイズＸｎｏｉは、インパルスノイズ、ガウシアンノイズ及びホワイトノイズなどを成分とするＮａ個の要素のベクトルとして出力される。なお、本実施形態では、ノイズＸｎｏｉが所定の第１ノイズデータ及び所定の第２ノイズデータに相当する。
【００４１】
さらに、加算器４は、下式（１）に示すように、上述した画像データＸｏｒｇ及びノイズＸｎｏｉの和として、入力データＸｉｎを算出し、これをデータ処理部５に入力する。この入力データＸｉｎは、Ｎａ個の値Ｘｉｎ＿ｊ（ｊ＝１〜Ｎａ）を要素とするベクトルとして算出される。
【数１】
2020052513.tif 000003
【００４２】
なお、本実施形態では、加算器４が第１ノイズ付加データ作成手段及び入力用特性データ設定手段に相当し、入力データＸｉｎが第１ノイズ付加データ及び入力用特性データに相当する。
【００４３】
次に、データ処理部５について説明する。このデータ処理部５は、図２及び図３に示すように、画像処理用のニューラルネットワークモデル（以下「画像処理ＮＮモデル」という）１０と、制御処理用のニューラルネットワークモデル（以下「制御処理ＮＮモデル」という）２０とを備えている。なお、本実施形態では、データ処理部５がモデルデータ取得手段及び実行停止手段に相当する。
【００４４】
このデータ処理部５では、以下に述べるように、前述した制御周期ΔＴで、画像処理ＮＮモデル１０による順伝播演算と、制御処理ＮＮモデル２０による順伝播演算とが１回ずつ交互に実行される。この場合、画像処理ＮＮモデル１０による順伝播演算の実行中は、制御処理ＮＮモデル２０による順伝播演算が停止される一方、制御処理ＮＮモデル２０による順伝播演算の実行中は、画像処理ＮＮモデル１０による順伝播演算が停止される。
【００４５】
まず、図２を参照しながら、画像処理ＮＮモデル１０について説明する。同図に示すように、画像処理ＮＮモデル１０は、Ｎａ個のユニットを有する入力層１１と、これに接続されたＮｂ（Ｎｂは複数）個のユニットを有する隠れ層（中間層）１２と、これに接続されたＮｃ（Ｎｃは複数）個のユニットを有する出力層１３を備えている。
【００４６】
画像処理ＮＮモデル１０では、以下に述べるように、順伝播演算が実行される。すなわち、図２に示すように、前述した入力データＸｉｎのＮａ個の要素Ｘｉｎ＿ｊ（ｊ＝１〜Ｎａ）が入力層１１のＮａ個のユニットにそれぞれ入力されると、隠れ層１２において、下式（２）,（３）により、中間データＸｈ１がＮｂ個の値を要素とするベクトルとして算出され、これが出力層１３に出力される。
【００４７】
【数２】
2020052513.tif 000004
【００４８】
【数３】
2020052513.tif 000005
【００４９】
上式（２）において、ｙ１はＮｂ個の値を要素とするベクトルである。また、Ｗ１は重み項であり、Ｎｂ×Ｎａ個の値を要素とする行列で構成される。また、ｂ１はバイアス項であり、Ｎｂ個の値を要素とするベクトルで構成される。また、式（３）のｆ１は、活性化関数（例えば、シグモイド関数）であり、ベクトルｙ１のＮｂ個の要素の各々に対して作用することで、ベクトルｙ１をＮｂ個の要素のベクトルである中間データＸｈ１に変換する。
【００５０】
また、出力層１３では、上記の中間データＸｈ１が隠れ層１２から入力されると、下式（４）,（５）により、出力データＸｏｕｔがＮｃ個の値Ｘｏｕｔ＿ｊ（ｊ＝１〜Ｎｃ）を要素とするベクトルとして算出される。
【００５１】
【数４】
2020052513.tif 000006
【００５２】
【数５】
2020052513.tif 000007
【００５３】
上式（４）において、ｙ２はＮｃ個の値を要素とするベクトルである。また、Ｗ２は重み項であり、Ｎｃ×Ｎｂ個の要素の行列で構成される。また、ｂ２はバイアス項であり、Ｎｃ個の要素のベクトルで構成される。また、式（５）のｆ２は、活性化関数（例えば、シグモイド関数）であり、ベクトルｙ２のＮｃ個の要素の各々に対して作用することで、ベクトルｙ２を、Ｎｃ個の要素のベクトルである出力データＸｏｕｔに変換する。
【００５４】
画像処理ＮＮモデル１０において、出力データＸｏｕｔ（第２モデルデータ）が以上のように算出された場合、この出力データＸｏｕｔがデータ処理部５から出力切換部６に出力される。
【００５５】
以上の画像処理ＮＮモデル１０の場合、入力層１１から隠れ層１２までの部分は、入力データＸｉｎの特徴量を抽出する機能を備えており、隠れ層１２から出力層１３の部分は、抽出された特徴量から画像データを復元する機能を備えている。なお、本実施形態では、入力層１１から隠れ層１２までの部分が第１モデルに相当し、隠れ層１２から出力層１３の部分が第２モデルに相当する。
【００５６】
次に、図３を参照しながら、制御処理ＮＮモデル２０について説明する。同図に示すように、制御処理ＮＮモデル２０は、前述した画像処理ＮＮモデル１０と共通の入力層１１及び隠れ層１２と、隠れ層１２に接続されたＮｄ（Ｎｄは複数）個のユニットの隠れ層２１と、この隠れ層２１に接続されたＮｅ（Ｎｅは複数）個のユニットの出力層２２を備えている。
【００５７】
この制御処理ＮＮモデル２０では、以下に述べるように、順伝播演算が実行される。すなわち、図３に示すように、前述した入力データＸｉｎのＮａ個の要素Ｘｉｎ＿ｊ（ｊ＝１〜Ｎａ）が入力層１１のＮａ個のユニットにそれぞれ入力されると、隠れ層１２において、前述した式（２）,（３）より、中間データＸｈ１がＮｂ個の要素のベクトルとして算出され、これが隠れ層２１に出力される。
【００５８】
隠れ層２１では、上記の中間データＸｈ１が隠れ層１２から入力されると、下式（６）,（７）により、中間データＸｍがＮｄ個の要素のベクトルとして算出され、これが出力層２２に出力される。
【００５９】
【数６】
2020052513.tif 000008
【００６０】
【数７】
2020052513.tif 000009
【００６１】
上式（６）において、ｙｍは、Ｎｄ個の要素のベクトルである。また、Ｗｍは重み項であり、Ｎｄ×Ｎｂ個の要素の行列で構成される。また、ｂｍはバイアス項であり、Ｎｄ個の要素のベクトルで構成される。また、式（７）のｆｍは、活性化関数（例えば、シグモイド関数）であり、ベクトルｙｍのＮｄ個の要素の各々に対して作用することで、ベクトルｙｍを、Ｎｄ個の要素のベクトルである中間データＸｍに変換する。
【００６２】
さらに、出力層２２では、上記の中間データＸｍが隠れ層２１から入力されると、下式（８）,（９）により、出力データＱがＮｅ個の値Ｑｎ（ｎ＝１〜Ｎｅ）を要素とするベクトルとして算出される。
【００６３】
【数８】
2020052513.tif 000010
【００６４】
【数９】
2020052513.tif 000011
【００６５】
上式（８）において、ｙｑはＮｅ個の要素のベクトルである。また、Ｗｑは重み項であり、Ｎｅ×Ｎｄ個の要素の行列で構成される。また、ｂｑはバイアス項であり、Ｎｅ個の要素のベクトルで構成される。また、式（９）のｆｑは、活性化関数（例えば、シグモイド関数）であり、ベクトルｙｑのＮｅ個の要素の各々に対して作用することで、ベクトルｙｑを、Ｎｅ個の要素のベクトルである出力データＱｎ（ｎ＝１〜Ｎｅ）に変換する。
【００６６】
制御処理ＮＮモデル２０において、順伝播演算により、出力データＱ（第３モデルデータ）が以上のように算出された場合、この出力データＱがデータ処理部５から出力切換部６に出力される。
【００６７】
なお、本実施形態では、制御処理ＮＮモデル２０における入力層１１から隠れ層１２までの部分が第１モデルに相当し、隠れ層１２から出力層２２の部分が第３モデルに相当する。
【００６８】
次に、出力切換部６について説明する。この出力切換部６は、出力データＸｏｕｔがデータ処理部５から入力されたときには、これを第１学習処理部７に出力する。一方、出力データＱがデータ処理部５から入力されたときには、これを第２学習処理部８に出力する。
【００６９】
次に、第１学習処理部７について説明する。この第１学習処理部７では、以下に述べるように、第１学習処理が実行される。この第１学習処理は、前述した制御周期ΔＴで、誤差逆伝播演算により、画像処理ＮＮモデル１０のモデルパラメータＷ２，ｂ２，Ｗ１，ｂ１を算出（学習）するものである。
【００７０】
また、この第１学習処理は、出力データＸｏｕｔが出力切換部６から第１学習処理部７に入力されたとき、すなわち、画像処理ＮＮモデル１０による順伝播演算が実行されたときに実行され、それ以外のときには停止される。なお、本実施形態では、第１学習処理部７が第１学習手段及び実行停止手段に相当する。
【００７１】
第１学習処理では、まず、下式（１０）により、損失関数ＬＡＥが平均２乗和誤差として算出される。
【００７２】
【数１０】
2020052513.tif 000012
【００７３】
次いで、下式（１１）により、重み項Ｗ２が算出される。
【００７４】
【数１１】
2020052513.tif 000013
【００７５】
上式（１１）において、Ｗ２’は重み項の前回値であり、ηは学習率である。また、右辺の∂ＬＡＥ／∂Ｗ２は誤差勾配であり、その算出式はここでは省略するが、周知の連鎖律によって算出される。
【００７６】
また、下式（１２）により、バイアス項ｂ２が算出される。
【００７７】
【数１２】
2020052513.tif 000014
【００７８】
上式（１２）において、ｂ２’はバイアス項の前回値である。また、∂ＬＡＥ／∂ｂ２は誤差勾配であり、周知の連鎖律によって算出される。
【００７９】
さらに、下式（１３）により、重み項Ｗ１が算出される。
【００８０】
【数１３】
2020052513.tif 000015
【００８１】
上式（１３）において、Ｗ１’は重み項の前回値である。また、∂ＬＡＥ／∂Ｗ１は誤差勾配であり、周知の連鎖律によって算出される。
【００８２】
また、下式（１４）により、バイアス項ｂ１が算出される。
【００８３】
【数１４】
2020052513.tif 000016
【００８４】
上式（１４）において、ｂ１’はバイアス項の前回値である。また、∂ＬＡＥ／∂ｂ１は誤差勾配であり、周知の連鎖律によって算出される。
【００８５】
第１学習処理部７は、以上のように、モデルパラメータＷ２，ｂ２，Ｗ１，ｂ１を算出すると、これらの値をデータ処理部５に出力する。以上のように算出／学習されたモデルパラメータＷ１，ｂ１は、制御処理ＮＮモデル２０での次回の順伝播演算で用いられ、モデルパラメータＷ２，ｂ２は、画像処理ＮＮモデル１０での次回の順伝播演算で用いられる。
【００８６】
次に、第２学習処理部８について説明する。この第２学習処理部８では、以下に述べるように、第２学習処理が実行される。この第２学習処理は、前述した制御周期ΔＴで、勾配法により、制御処理ＮＮモデル２０のモデルパラメータＷｑ，ｂｑ，Ｗｍ，ｂｍ，Ｗ１，ｂ１を算出（学習）するものである。
【００８７】
また、この第２学習処理は、出力データＱが出力切換部６から第２学習処理部８に入力されているとき、すなわち、制御処理ＮＮモデル２０による順伝播演算が実行されているときに実行され、それ以外のときには停止される。したがって、第２学習処理と第１学習処理は、１回ずつ交互に実行される。なお、本実施形態では、第２学習処理部８が第２学習手段及び実行停止手段に相当する。
【００８８】
第２学習処理では、まず、下式（１５）により、損失関数ＬＲＬが算出される。この損失関数ＬＲＬは、出力データＱを行動価値関数としたときのＴＤ誤差の２乗項に値１／２を乗算したものに相当する。
【００８９】
【数１５】
2020052513.tif 000017
【００９０】
上式（１５）において、ｒは、報酬であり、状態としての入力データＸｉｎに基づき、所定の報酬算出アルゴリズムを用いて算出される。また、γは、０＜γ≦１が成立するように設定される割引率であり、Ｑａは、出力データＱの要素Ｑｎ（ｎ＝１〜Ｎｅ）のうち、ｎ＝ａという行動を選択した際に期待される行動価値関数の値を表している。さらに、Ｑ’は、入力データＸｉｎを制御処理ＮＮモデル２０に入力し、ａという行動を選択した後、次回の制御処理ＮＮモデル２０による順伝播演算の実行時、入力データＸｉｎ’が制御処理ＮＮモデル２０に入力されたときに、制御処理ＮＮモデル２０から出力される出力データＱの要素Ｑｎのうちの最大値である。
【００９１】
次いで、下式（１６）により、重み項Ｗｑが算出される。
【００９２】
【数１６】
2020052513.tif 000018
【００９３】
上式（１６）において、Ｗｑ’は重み項の前回値である。また、右辺の∂ＬＬＲ／∂Ｗｑは誤差勾配であり、周知の連鎖律によって算出される。
【００９４】
また、下式（１７）により、バイアス項ｂｑが算出される。
【００９５】
【数１７】
2020052513.tif 000019
【００９６】
上式（１７）において、ｂｑ’はバイアス項の前回値である。また、∂ＬＬＲ／∂ｂｑは誤差勾配であり、周知の連鎖律によって算出される。
【００９７】
さらに、下式（１８）により、重み項Ｗｍが算出される。
【００９８】
【数１８】
2020052513.tif 000020
【００９９】
上式（１８）において、Ｗｍ’は重み項の前回値である。また、∂ＬＬＲ／∂Ｗｍは誤差勾配であり、周知の連鎖律によって算出される。
【０１００】
また、下式（１９）により、バイアス項ｂｍが算出される。
【０１０１】
【数１９】
2020052513.tif 000021
【０１０２】
上式（１９）において、ｂｍ’はバイアス項の前回値である。また、∂ＬＬＲ／∂ｂｍは誤差勾配であり、周知の連鎖律によって算出される。
【０１０３】
さらに、下式（２０）により、重み項Ｗ１が算出される。
【０１０４】
【数２０】
2020052513.tif 000022
【０１０５】
上式（２０）において、Ｗ１’は重み項の前回値である。また、∂ＬＬＲ／∂Ｗ１は誤差勾配であり、周知の連鎖律によって算出される。
【０１０６】
また、下式（２１）により、バイアス項ｂ１が算出される。
【０１０７】
【数２１】
2020052513.tif 000023
【０１０８】
上式（２１）において、ｂ１’はバイアス項の前回値である。また、∂ＬＬＲ／∂ｂ１は誤差勾配であり、周知の連鎖律によって算出される。
【０１０９】
第２学習処理部８では、以上のように、モデルパラメータＷｑ，ｂｑ，Ｗｍ，ｂｍ，Ｗ１，ｂ１が算出されたときに、これらの値がデータ処理部５に出力される。それにより、以上のように算出／学習されたモデルパラメータＷ１，ｂ１は、画像処理ＮＮモデル１０での次回の順伝播演算に用いられ、モデルパラメータＷｑ，ｂｑ，Ｗｍ，ｂｍは、制御処理ＮＮモデル２０での次回の順伝播演算に用いられる。
【０１１０】
以上のように、第１実施形態のモデルパラメータ学習装置１によれば、画像データＸｏｒｇにノイズＸｎｏｉを付加することにより、入力データＸｉｎが作成され、これがデータ処理部５に入力される。それに伴い、データ処理部５では、画像処理ＮＮモデル１０による順伝播演算［式（２）〜（５）］と、制御処理ＮＮモデル２０による順伝播演算［式（２）〜（３），（６）〜（９）］とが１回ずつ交互に実行される。
【０１１１】
その場合、画像処理ＮＮモデル１０での順伝播演算によって、出力データＸｏｕｔが算出されたときには、第１学習処理部７において、誤差逆伝播演算［式（１０）〜（１４）］によって、画像処理ＮＮモデル１０のモデルパラメータＷ１，ｂ１，Ｗ２，ｂ２が算出される。すなわち、損失関数ＬＡＥが最小になるように、モデルパラメータＷ１，ｂ１，Ｗ２，ｂ２が算出される。
【０１１２】
この損失関数ＬＡＥは、教師データである画像データＸｏｒｇと出力データＸｏｕｔとの平均２乗和誤差であるので、画像データＸｏｒｇと出力データＸｏｕｔとの誤差が最小になるように、モデルパラメータＷ１，ｂ１，Ｗ２，ｂ２が算出されることになる。したがって、第１学習処理を繰り返し実行することにより、出力データＸｏｕｔが入力データＸｉｎにおけるノイズＸｎｏｉの影響が抑制された値になるように、モデルパラメータＷ１，ｂ１，Ｗ２，ｂ２を学習することができる。
【０１１３】
一方、制御処理ＮＮモデル２０による順伝播演算によって、出力データＱが算出されたときには、これに基づき、第２学習処理部８において、誤差逆伝播演算［式（１５）〜（２１）］によって、制御処理ＮＮモデル２０のモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑが算出される。すなわち、損失関数ＬＲＬが最小になるように、モデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑが算出される。
【０１１４】
この損失関数ＬＲＬは、出力データＱを行動価値関数としたときのＴＤ誤差の２乗項に値１／２を乗算したものであるので、ＴＤ誤差が最小になるように、モデルパラメータＷｑ，ｂｑ，Ｗｍ，ｂｍ，Ｗ１，ｂ１が算出されることになる。したがって、第２学習処理を繰り返し実行することにより、出力データＸｏｕｔが入力データＸｉｎにおけるノイズＸｎｏｉの影響が抑制された値になるように、モデルパラメータＷｑ，ｂｑ，Ｗｍ，ｂｍ，Ｗ１，ｂ１を学習することができる。特に、第１学習処理と第２学習処理が交互に繰り返し実行されるので、モデルパラメータＷ１，ｂ１，Ｗ２，ｂ２，Ｗｍ，ｂｍ，Ｗｑ，ｂｑを十分に学習することができる。
【０１１５】
また、入力用のデータ及び教師データとして用いられる画像データＸｏｒｇが、仮想空間におけるデータとして取得されるので、これらのデータを実空間においてセンサなどを用いて実際に取得する必要がなくなり、その分、コストを削減することができる。また、画像データＸｏｒｇにノイズＸｎｏｉを付加した入力データＸｉｎを用いることにより、ノイズの少ない仮想空間の環境下でも、ノイズＸｎｏｉの影響が抑制されるように、モデルパラメータＷ１，ｂ１，Ｗ２，ｂ２，Ｗｍ，ｂｍ，Ｗｑ，ｂｑを学習することができる。
【０１１６】
なお、第１実施形態は、特性データとして画像データＸｏｒｇを用いた例であるが、本発明の特性データはこれに限らず、対象の物理的特性及び視覚的特性の少なくとも一方を表すパラメータのデータであればよい。例えば、特性データとして、距離センサ及び物標認識モジュール（ＬＩＤＡＲ、レーダ及びソナーなど）を用いて、他の交通参加者（歩行者及び他車両など）や、物標（道路境界、白線、交差点及び信号など）の属性と距離を表す距離・物標データを用いてもよい。
【０１１７】
その場合には、例えば、以下のように構成すればよい。すなわち、前述した図１の構成において、画像データ取得部２に代えて、距離・物標データ取得部を設け、この距離・物標データ取得部により、距離センサ及び物標認識モジュールを用いて、他の交通参加者及び物標などの距離・物標データを取得する。そして、この距離・物標データにノイズを付加したデータを入力データとしてデータ処理部５に入力する。さらに、この距離・物標データを教師データとして、前述したように、第１学習処理を実行するとともに、前述したように、第２学習処理を実行すればよい。このように構成した場合でも、第１実施形態と同様の作用効果を得ることができる。
【０１１８】
また、第１実施形態は、所定の第１ノイズデータとして、インパルスノイズやガウシアンノイズなどを成分とするノイズＸｎｏｉを用いた例であるが、本発明の所定の第１ノイズデータはこれに限らず、画像データに対してノイズとして付加されるものであればよい。例えば、所定の第１ノイズデータとして、第１学習処理部７に対する敵対的摂動を用いてもよい。すなわち、式（１０）で示される損失関数ＬＡＥを大きくするベクトルと同じ方向を有するノイズベクトルを用いてもよい。
【０１１９】
さらに、第１実施形態は、所定の第２ノイズデータとして、インパルスノイズやガウシアンノイズなどを成分とするノイズＸｎｏｉを用いた例であるが、本発明の所定の第２ノイズデータはこれに限らず、画像データに対してノイズとして付加されるものであればよい。例えば、所定の第２ノイズデータとして、後述する式（２２），（２３）で示されるような、第２学習処理部８に対する敵対的摂動を用いてもよい。
【０１２０】
また、第１実施形態は、第１モデル及び第２モデルとして、画像処理ＮＮモデル１０の入力層１１から隠れ層１２までの部分及び隠れ層１２から出力層１３の部分をそれぞれ用いた例であるが、本発明の第１モデル及び第２モデルはこれらに限らず、第１ノイズ付加データが第１モデルに入力されたときに、第１モデルの出力データが第２モデルに入力されるとともに、第２モデルから第２モデルデータが出力されるものであればよい。例えば、畳み込みニューラルネットワーク及び逆畳み込みニューラルネットワークをそれぞれ、第１モデル及び第２モデルとして用いることにより、第１モデルと第２モデルを接続したモデルとして、オートエンコーダアーキテクチャ（下記の文献１参照）を採用してもよい。
【０１２１】
文献１：Ian Goodfellow, Yoshua Bengio and Aaron Courville, Deep Learning, MIT Press
【０１２２】
一方、第１実施形態は、第１モデル及び第３モデルとして、制御処理ＮＮモデル２０の入力層１１から隠れ層１２までの部分及び隠れ層１２から出力層２２までの部分をそれぞれ用いた例であるが、本発明の第１モデル及び第３モデルはこれに限らず、入力用画像データが第１モデルに入力されたときに、第１モデルの出力データが第３モデルに入力されるとともに、第３モデルから第３モデルデータが出力されるものであればよい。
【０１２３】
例えば、畳み込みニューラルネットワーク及びＱネットワークをそれぞれ、第１モデル及び第３モデルとして用いることにより、第１モデルと第３モデルを接続したモデルとして、深層Ｑネットワークアーキテクチャ（下記の文献２参照）を採用してもよい。
【０１２４】
文献２：Volodymyr Mnih, Koray Kavukcuoglu, David Silver, Andrei A. Rusu, Joel Veness, Marc G. Bellemare, Alex Graves, Martin Riedmiller, Andreas K. Fidjeland, Georg Ostrovski, Stig Petersen, Charles Beattie, Amir Sadik, Ioannis Antonoglou, Helen King, Dharshan Kumaran, Daan Wierstra, Shane Legg & Demis Hassabis, Human-level control through deep reinforcement learning, Nature, 518, 529-533.
【０１２５】
また、第１実施形態では、画像処理ＮＮモデル１０として、１層の隠れ層１２を備えたニューラルネットワークモデルを用いたが、これに代えて、画像処理ＮＮモデル１０として、２層以上の隠れ層を備えた多層ニューラルネットワークモデルを用いてもよい。
【０１２６】
さらに、第１実施形態では、制御処理ＮＮモデル２０として、２層の隠れ層１２，２１を備えたニューラルネットワークモデルを用いたが、これに代えて、制御処理ＮＮモデル２０として、３層以上の隠れ層を備えた深層ニューラルネットワークモデルを用いてもよい。
【０１２７】
また、第１実施形態は、第１学習処理において、第１モデル及び第２モデルのモデルパラメータＷ１，ｂ１，Ｗ２，ｂ２を学習した例であるが、本発明の第１学習処理はこれに限らず、第１モデル及び第２モデルの少なくとも一方のモデルパラメータを学習するものであればよい。例えば、モデルパラメータＷ１，ｂ１及びモデルパラメータＷ２，ｂ２の一方を学習するように構成してもよい。
【０１２８】
さらに、第１実施形態は、第２習処理において、第１モデル及び第３モデルのモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑを学習した例であるが、本発明の第２学習処理はこれに限らず、第１モデル及び第３モデルの少なくとも一方のモデルパラメータを学習するものであればよい。例えば、モデルパラメータＷ１，ｂ１及びモデルパラメータＷｍ，ｂｍ，Ｗｑ，ｂｑの一方を学習するように構成してもよい。
【０１２９】
一方、第１実施形態は、第２学習処理における損失関数として、式（１５）に示す損失関数ＬＡＥを用いた例であるが、本発明の第２学習処理における損失関数はこれに限らず、第３モデルパラメータを独立変数として含むものであればよい。例えば、行動価値関数Ｑに代えて、Target Q-Networkの出力値ＴをＴＤ誤差の期待報酬に含むように定義されたものを用いてもよい。
【０１３０】
また、第１実施形態は、特性データとしての画像データＸｏｒｇを仮想空間の動画データから取得した例であるが、これに代えて、カメラを用いて実空間から画像データＸｏｒｇを取得するように構成してもよい。
【０１３１】
さらに、第１実施形態は、教師データ取得手段として、画像データ取得部２を用いた例であるが、本発明の教師データ取得手段はこれに限らず、特性データに相当する教師データを取得できるものであればよい。
【０１３２】
例えば、教師データ取得手段として、カメラを用いて実空間から教師データを取得するように構成してもよい。その場合、特性データ取得手段がカメラであるときに、これと同程度の画素数のカメラを用いてよく、特性データ取得手段よりも高画素数のカメラや、ＬＩＤＡＲ及びレーダの一方を用いてもよい。
【０１３３】
その場合、教師データ取得手段として、特性データ取得手段のカメラよりも高画素数のカメラを用いたときには、２つのカメラによって取得された２つの画像データの画素数が互いに異なることで、２つの画像データの画素位置がずれた状態になる可能性がある。その場合には、両者の画素位置が一致するように、２つの画像データの一方を補間演算（例えばバイリニア補間演算）すればよい。このように構成した場合、教師データとして画像データよりも高画素数のデータを用いることで、同一の画素数の画像データを用いた場合と比べて、より高い学習効果を得ることができる。
【０１３４】
また、教師データ取得手段として、ＬＩＤＡＲ及びレーダの一方を用いた場合には、これらの検出データに基づき、距離画像データを教師データとして作成すればよい。このように構成した場合、対象の距離データを反映させながら、モデルパラメータの学習を実行することができる。
【０１３５】
また、第１実施形態は、第１学習処理と第２学習処理を１回ずつ交互に実行した例であるが、これに代えて、第１学習処理の実行回数が第１所定値（例えば値２〜５）に達する毎、及び、第２学習処理の実行回数が第２所定値（例えば値２〜５）に達する毎、２つの学習処理を切り換えて実行するように構成してもよい。
【０１３６】
次に、本発明の第２実施形態に係るモデルパラメータ学習装置について説明する。このモデルパラメータ学習装置の場合、第１実施形態のモデルパラメータ学習装置１と比較して、前述したアルゴリズムの一部が異なっている点を除けば、同一の構成を備えているので、以下異なる点についてのみ説明する。
【０１３７】
このモデルパラメータ学習装置では、ノイズ発生部３、データ処理部５、第１学習処理部７及び第２学習処理部８において、以下に述べるように、（Ａ１）〜（Ａ５）の順に各種の演算処理が繰り返し実行される。
【０１３８】
（Ａ１）まず、データ処理部５の制御処理ＮＮモデル２０において、以下に述べるように、順伝播演算が実行される。この順伝播演算では、前述した式（２）において、入力データＸｉｎに代えて画像データＸｏｒｇが用いられるとともに、前述した式（３），（６）〜（９）により、出力データＱが算出される。
【０１３９】
（Ａ２）次いで、第２学習処理部８では、前述した式（１５）〜（２１）により、モデルパラメータＷｑ，ｂｑ，Ｗｍ，ｂｍ，Ｗ１，ｂ１が算出される。
【０１４０】
（Ａ３）また、ノイズ発生部３では、下式（２２），（２３）に示す逆伝播演算により、敵対的摂動Ｘｎｏｉ’が算出される。
【０１４１】
【数２２】
2020052513.tif 000024
【０１４２】
【数２３】
2020052513.tif 000025
【０１４３】
上式（２２）において、Ｊはクロスエントロピーコスト関数であり、tｉは、Ｑｉの最大値のみが値１となり、それ以外は値０となるone-hotベクトルである。また、softmaxは、ソフトマックス関数である。さらに、上式（２３）において、εはノイズのサイズを決定する定数である。また、∇ｘｏｒｇＪ(Ｘｏｒｇ，Ｑ)は、∂Ｊ／∂Ｘｏｒｇに相当する誤差勾配であり、周知の連鎖律によって算出される。さらに、sign（∇ｘｏｒｇＪ(Ｘｏｒｇ，Ｑ)）は、符号関数であり、誤差勾配∇ｘｏｒｇＪ(Ｘｏｒｇ，Ｑ)が正値のときに値１を、誤差勾配∇ｘｏｒｇＪ(Ｘｏｒｇ，Ｑ)が負値のときに値−１をそれぞれ示す。
【０１４４】
（Ａ４）次に、加算器４では、前述した式（１）において、ノイズＸｎｏｉに代えて敵対的摂動Ｘｎｏｉ’を用いて、入力データＸｉｎが算出され、データ処理部５の画像処理ＮＮモデル１０では、この入力データＸｉｎを用いて、前述した式（２）〜（５）の順伝播演算により、出力データＱが算出される。
【０１４５】
（Ａ５）次いで、第１学習処理部７では、前述した式（１０）〜（１４）の逆伝播演算により、モデルパラメータＷ２，ｂ２，Ｗ１，ｂ１が算出される。このように、（Ａ１）から（Ａ５）までの演算を実行した後、（Ａ１）に戻り、（Ａ１）から（Ａ５）までの演算が繰り返し実行される。
【０１４６】
以上のように、この敵対的摂動Ｘｎｏｉ’は、誤差勾配の符号関数と定数εの積として算出されるので、この敵対的摂動Ｘｎｏｉ’の影響が抑制されるように、第１学習処理部７で、モデルパラメータＷ１，ｂ１，Ｗ２，ｂ２が算出されることになる。それにより、制御処理ＮＮモデル２０において、出力データＱを算出する際、そのようなモデルパラメータＷ１，ｂ１を用いることによって、出力データＱの誤差を迅速に低減することができる。その結果、第２学習処理部８における、モデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑの学習速度を高めることができる。
【０１４７】
また、制御処理の結果が大きく変動する摂動が付加された入力データを学習することによって、取得データにはない入力に対しても所望の出力が得られることになる。それにより、このような制御処理ＮＮモデル２０を制御器に適用した場合には、制御器の汎化・ロバスト化を実現することができる。
【０１４８】
なお、第２実施形態は、出力Ｑの要素Ｑｎの中からの行動選択を実施した例であるが、出力値として連続値を用いる場合には、上述した式（２２）のコスト関数Ｊに代えて、下式（２４）に示すコスト関数Ｊを用いることにより、敵対的摂動を算出することができる。
【０１４９】
【数２４】
2020052513.tif 000026
【０１５０】
上式（２４）のδ（Ｘ−Ｘｑ）は、Ｘ＝Ｘｑのときには値１となり、Ｘ≠Ｘｑのときには値０となる関数である。また、上式（２４）のｐ（Ｘｑ）は、制御処理ＮＮモデル２０の連続値の出力が取り得る確率分布を表す値で、Ｘｑは制御処理ＮＮモデルの出力値である。
【０１５１】
また、本発明において、第１モデルとして、特徴量の抽出アルゴリズム（例えば、ＨＯＧアルゴリズム、Ｈｏｕｇｈ変換アルゴリズム、Ｃａｎｎｙ変換アルゴリズム、Ｓｏｂｅｌ変換アルゴリズム）及び２次曲線フィッテングアルゴリズムを用い、第２モデルとして、情報を復元する情報復元アルゴリズムを用いるとともに、第３モデルとして、ＰＩＤ制御アルゴリズム、モデル予測制御アルゴリズム、分類器及び決定木のいずれかを用いるように構成してもよい。
【０１５２】
例えば、第１モデルとして、Ｓｏｂｅｌ変換アルゴリズム及び２次曲線フィッテングアルゴリズムを用い、第２モデルとして、情報を復元する情報復元アルゴリズムを用いるとともに、第３モデルとして、ＰＩＤ制御アルゴリズムを用いた場合には、モデルパラメータが以下に述べるように学習される。
【０１５３】
まず、第１モデル及び第２モデルのモデルパラメータは、以下のように学習される。すなわち、第１モデルでは、Ｓｏｂｅｌ変換アルゴリズムによって、以下に述べるように、特徴量として道路の白線が抽出される。
【０１５４】
まず、摂動を含んだ画像データを所定サイズ（ピクセル）にリサイズして、グレースケールで読み込む。次に、各ピクセルの特定方向への輝度勾配量を求めた後に、閾値を越えた勾配量のピクセルを抽出する。抽出されたピクセルを前時刻（前回の制御時刻）の白線データ位置、自車移動量を加味し、白線を構成する候補のピクセルのみ抽出する。
【０１５５】
また、それらピクセルに対して２次曲線フィッテングアルゴリズムによって、２次曲線の係数が算出される。次いで、第２モデルでは、情報復元アルゴリズムによって、第１モデルで算出された２次曲線データから白線画像データが復元される。
【０１５６】
この後、第２モデルで復元した白線画像データと、摂動を含まない画像データである教師データとの誤差が最小になるように、第１モデルにおけるＳｏｂｅｌ変換アルゴリズムのフィルタパラメータ(カーネルサイズ、勾配方向、検出閾値など)、前時刻データとの平滑化パラメータ、及び／又は２次曲線フィッテングアルゴリズムにおける２次曲線の係数がモデルパラメータとして学習される。これと同時に、上記の誤差が最小になるように、情報復元アルゴリズムのパラメータ（例えば、白線をピクセル上に展開するときの設定パラメータ）が学習される。
【０１５７】
一方、第１モデル及び第３モデルのモデルパラメータは、以下のように学習される。まず、第１モデルでは、上記のように、２次曲線の係数が算出される。次いで、第３モデルでは、第１モデルで算出された２次曲線データを用いて、走行レーンの中心位置を算出し、この中心位置を目標値として、ＰＩＤ制御アルゴリズムにより、車両５１が走行レーンをキープするように、操舵制御を実行する。
【０１５８】
この後、実際の走行軌道と走行レーンの中心位置との誤差（又は２乗誤差）を損失関数として、この損失関数が減少するように、ＰＩＤ制御アルゴリズムのフィードバックゲインすなわちモデルパラメータが学習されるとともに、第１モデルにおけるＳｏｂｅｌ変換アルゴリズムのフィルタパラメータ(カーネルサイズ、勾配方向、検出閾値など)、前時刻データとの平滑化パラメータ、及び／又は２次曲線の係数が学習される。
【０１５９】
以上のように、第１モデル、第２モデル及び第３モデルのモデルパラメータの学習を実行した場合でも、前述した第１実施形態及び第２実施形態と同じ作用効果を得ることができる。
【０１６０】
次に、本発明の制御装置について説明する。図４に示すように、この制御装置５０は、四輪タイプの自動運転車両５１に適用されたものであり、ＥＣＵ５２を備えている。なお、以下の説明では、この自動運転車両５１を「車両５１」という。
【０１６１】
このＥＣＵ５２には、状況検出装置５３、原動機５４及びアクチュエータ５５が電気的に接続されている。この状況検出装置５３は、カメラ、ミリ波レーダ、ＬＩＤＡＲ、ソナー、ＧＰＳ及び各種のセンサなどで構成されており、自車両５１の周辺状況を表す周辺状況データｄａｔａ＿ｓをＥＣＵ５２に出力する。
【０１６２】
この場合、周辺状況データｄａｔａ＿ｓは、周辺画像、車速、操舵角、ヨーレート、加速度、躍度、道路端の座標、他車両との相対位置及び他車両との相対速度などを含む数十種類のデータで構成されている。
【０１６３】
原動機５４は、例えば、電気モータなどで構成されており、後述するように、ＥＣＵ５２によって自動運転制御が実行される際、原動機５４の動作状態が制御される。
【０１６４】
また、アクチュエータ５５は、制動用アクチュエータ及び操舵用アクチュエータなどで構成されており、後述するように、自動運転制御を実行するときに、アクチュエータ５５の動作が制御される。
【０１６５】
一方、ＥＣＵ５２は、ＣＰＵ、ＲＡＭ、ＲＯＭ、Ｅ２ＰＲＯＭ、Ｉ／Ｏインターフェース及び各種の電気回路（いずれも図示せず）などからなるマイクロコンピュータで構成されている。このＥ２ＰＲＯＭ内には、前述した制御処理ＮＮモデル２０と、前述したモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑとが記憶されている。なお、この制御装置５０では、ＥＣＵ５２が記憶手段及び制御手段に相当する。
【０１６６】
この場合、ＥＣＵ５２が自動運転車両５１に搭載された時点では、モデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑとして、前述したモデルパラメータ学習装置１において、第１学習処理と第２学習処理とを交互に切り換えて実行した回数が第３所定値（例えば値10000〜100000）に達したときの値がＥ２ＰＲＯＭ内に記憶されている。
【０１６７】
ＥＣＵ５２は、以下に述べるように、状況検出装置５３からの状況データｄａｔａ＿ｓなどに基づき、制御処理ＮＮモデル２０及びモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑを用いて、学習制御処理及び自動運転制御処理などを実行する。
【０１６８】
次に、図５を参照しながら、学習制御処理について説明する。この学習制御処理は、行動ａを算出するとともに、前述した第２学習処理の出手法によって、制御処理ＮＮモデル２０のモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑを更新するものであり、ＥＣＵ２によって、所定の制御周期で実行される。
【０１６９】
なお、以下の説明において算出される各種の値は、ＥＣＵ２のＥ２ＰＲＯＭ内に記憶されるものとする。
【０１７０】
まず、入力データＸｉｎ”を取得する（図５／ＳＴＥＰ１）。この入力データＸｉｎ”は、状況検出装置５３のうちのカメラの検出信号から画像データとして取得される。
【０１７１】
次いで、入力データＸｉｎ”に基づき、制御処理ＮＮモデル２０を用いて、出力データＱを算出する（図５／ＳＴＥＰ２）。すなわち、前述した式（２）における入力データＸｉｎを入力データＸｉｎ”に置き換えた式と、前述した式（３），（６）〜（９）とを用いて、出力データＱを算出する。
【０１７２】
次に、出力データＱに基づいて、ε-greedy法により、最適な行動ａを決定する（図５／ＳＴＥＰ３）。この場合の行動ａは、車両５１の操舵量及び加減速度の指令値として決定される。
【０１７３】
次いで、所定の報酬算出アルゴリズムを用いて、報酬ｒを算出する（図５／ＳＴＥＰ４）。
【０１７４】
次に、前述した式（１５）により、損失関数ＬＲＬを算出する（図５／ＳＴＥＰ５）
【０１７５】
そして、この損失関数ＬＲＬに基づき、前述したように、式（１６）〜（２１）に示す誤差逆伝播演算により、制御処理ＮＮモデル２０のモデルパラメータを更新（算出）する（図５／ＳＴＥＰ６）。以上のように、モデルパラメータを更新した後、本処理を終了する。
【０１７６】
次に、図６を参照しながら、自動運転制御について説明する。この自動運転制御は、車両５１の運転状態を制御するものであり、ＥＣＵ２によって、所定の制御周期で実行される。なお、以下の説明では、先行車の追い越しを実行するときの自動運転制御の一例について説明する。
【０１７７】
まず、前述した図５のＳＴＥＰ１〜３と同様に、入力データＸｉｎ”を取得し（図６／ＳＴＥＰ２０）、出力データＱを算出するとともに（図６／ＳＴＥＰ２１）、最適な行動ａすなわち車両５１の操舵量の指令値及び加減速度の指令値を決定する（図６／ＳＴＥＰ２２）。
【０１７８】
次いで、車両５１の加減速度が決定した加減速度の指令値になるように、原動機５４を駆動する（図６／ＳＴＥＰ２３）。
【０１７９】
次に、車両５１の操舵量が決定した操舵量の指令値になるように、アクチュエータ５５を駆動する（図６／ＳＴＥＰ２４）。その後、本処理を終了する。
【０１８０】
以上のように、この制御装置５０によれば、Ｅ２ＰＲＯＭ内に記憶された制御処理ＮＮモデル２０とモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑとを用いて、車両５１の自動運転制御が実行される。この場合、制御処理ＮＮモデル２０のモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑは、ＥＣＵ５２が自動運転車両５１に搭載された時点では、第１学習処理及び第２学習処理を交互に実行した回数が第３所定値に達したときの値であるので、前述したように、ノイズの影響を抑制できるように十分に学習されていることになる。したがって、そのようなモデルパラメータＷ１，ｂ１，Ｗｍ，ｂｍ，Ｗｑ，ｂｑと制御処理ＮＮモデル２０を用いることにより、車両５１の自動運転制御において、ノイズに対して高いロバスト性を確保することができる。
【０１８１】
なお、ＥＣＵ２において、図５の学習制御処理を省略し、図６の自動運転制御処理を実行するように構成してもよい。
【符号の説明】
【０１８２】
１  モデルパラメータ学習装置
２  画像データ取得部（特性データ取得手段、教師データ取得手段）
４  加算器（第１ノイズ付加データ作成手段、入力用特性データ設定手段）
５  データ処理部（モデルデータ取得手段、実行停止手段）
７  第１学習処理部（第１学習手段、実行停止手段）
８  第２学習処理部（第２学習手段、実行停止手段）
１０  画像処理ＮＮモデル（第１モデル、第２モデル）
１１  入力層（第１モデル）
１２  隠れ層（第１モデル、第２モデル）
１３  出力層（第２モデル）
２０  制御処理ＮＮモデル（第１モデル、第３モデル）
２１  隠れ層（第３モデル）
２２  出力層（第３モデル）
５０  制御装置
５２  ＥＣＵ（記憶手段、制御手段）
Ｘｏｒｇ  画像データ（特性データ、教師データ）
Ｘｎｏｉ  ノイズ（所定の第１ノイズデータ、所定の第２ノイズデータ）
Ｘｉｎ  入力データ（第１ノイズ付加データ、入力用特性データ）
Ｘｏｕｔ  出力データ（第２モデルデータ）
Ｗ１  重み項、モデルパラメータ
ｂ１  バイアス項、モデルパラメータ
Ｗ２  重み項、モデルパラメータ
ｂ２  バイアス項、モデルパラメータ
Ｗｍ  重み項、モデルパラメータ
ｂｍ  バイアス項、モデルパラメータ
Ｗｑ  重み項、モデルパラメータ
ｂｑ  バイアス項、モデルパラメータ
Ｑ  出力データ（第３モデルデータ）
ＬＲＬ  損失関数
【図１】
2020052513.tif 000027
【図２】
2020052513.tif 000028
【図３】
2020052513.tif 000029
【図４】
2020052513.tif 000030
【図５】
2020052513.tif 000031
【図６】
2020052513.tif 000032