(57)【要約】【課題】車両において学習されたニューラルネットワークモデルを集約して車両の外部の記憶装置に記憶させる場合に、記憶装置の記憶容量が不足することを抑制する。【解決手段】モデル集約装置２は、ニューラルネットワークモデルの学習が行われる複数の車両と通信可能な通信装置２１と、複数の車両から送信されたニューラルネットワークモデルの一部を記憶する記憶装置２２と、制御装置２４とを備える。ニューラルネットワークモデルは複数の入力パラメータから少なくとも一つの出力パラメータを出力する。制御装置は、通信装置を介して複数の車両のうちの一つの車両から新たなモデルを受信した場合、新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲と、記憶装置に記憶されている現在のモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲とを比較することによって、現在のモデルを新たなモデルに置き換えるか否かを決定する。【選択図】図４
2020144775.tif 000002
【特許請求の範囲】
【請求項１】
ニューラルネットワークモデルの学習が行われる複数の車両と通信可能な通信装置と、
前記複数の車両から送信されたニューラルネットワークモデルの一部を記憶する記憶装置と、
制御装置と
を備え、
前記ニューラルネットワークモデルは複数の入力パラメータから少なくとも一つの出力パラメータを出力し、
前記制御装置は、前記通信装置を介して前記複数の車両のうちの一つの車両から新たなニューラルネットワークモデルを受信した場合、該新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲と、前記記憶装置に記憶されている現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲とを比較することによって、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換えるか否かを決定する、モデル集約装置。
【請求項２】
前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲よりも広く、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数よりも少なく、且つ、前記新たなニューラルネットワークモデルの学習が完了した日時が、前記現在のニューラルネットワークモデルの学習が完了した日時よりも遅い場合には、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換える、請求項１に記載のモデル集約装置。
【請求項３】
前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲よりも狭く、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数よりも多く、且つ、前記新たなニューラルネットワークモデルの学習が完了した日時が、前記現在のニューラルネットワークモデルの学習が完了した日時よりも遅い場合には、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換える、請求項１又は２に記載のモデル集約装置。
【請求項４】
前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲よりも広い場合には、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換える、請求項１に記載のモデル集約装置。
【請求項５】
前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲と等しい場合には、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数よりも多い場合に、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換える、請求項１から４のいずれか１項に記載のモデル集約装置。
【請求項６】
前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの少なくとも一つの値が異常である場合には、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換えない、請求項１から５のいずれか１項に記載のモデル集約装置。
【請求項７】
サーバ及び複数の車両を備えるモデル集約システムであって、
前記複数の車両は、それぞれ、
前記サーバと通信可能な第１通信装置と、
複数の入力パラメータから少なくとも一つの出力パラメータを出力するニューラルネットワークモデルの学習を行う第１制御装置とを備え、
前記サーバは、
前記複数の車両と通信可能な第２通信装置と、
前記複数の車両から送信されたニューラルネットワークモデルの一部を記憶する記憶装置と、
第２制御装置とを備え、
前記第２制御装置は、前記第１通信装置及び前記第２通信装置を介して前記複数の車両のうちの一つの車両から新たなニューラルネットワークモデルを受信した場合、該新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲と、前記記憶装置に記憶されている現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲とを比較することによって、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換えるか否かを決定する、モデル集約システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はモデル集約装置及びモデル集約システムに関する。
【背景技術】
【０００２】
従来、所定の入力パラメータから所定の出力パラメータを出力するニューラルネットワークモデルを車両の制御のために用いることが知られている。例えば、特許文献１には、学習済みのニューラルネットワークモデルを用いて、車両に搭載された内燃機関の燃焼室に吸入される吸入ガスの流量を推定することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１１２２７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ニューラルネットワークモデルの精度を向上させるためには、ニューラルネットワークモデルの学習を予め行う必要がある。ニューラルネットワークモデルの学習では、入力パラメータの実測値と出力パラメータの実測値との組合せから成る訓練データセットが用いられる。
【０００５】
入力パラメータ及び出力パラメータの実測値は車両の実際の走行中にセンサ等を用いて取得可能である。このため、車両において訓練データセットを作成し、車両においてニューラルネットワークモデルの学習を行うことが考えられる。また、ニューラルネットワークモデルを他の車両等に適用するためには、車両において学習されたニューラルネットワークモデルを集約して車両の外部の記憶装置に記憶させることが望ましい。
【０００６】
しかしながら、複数の車両から送信された全てのニューラルネットワークモデルを記憶装置に記憶させようとすると、記憶装置の記憶容量が早期に不足し、新たなニューラルネットワークモデルを記憶装置に記憶させることができなくなる。
【０００７】
そこで、上記課題に鑑みて、本発明の目的は、車両において学習されたニューラルネットワークモデルを集約して車両の外部の記憶装置に記憶させる場合に、記憶装置の記憶容量が不足することを抑制することにある。
【課題を解決するための手段】
【０００８】
本開示の要旨は以下のとおりである。
【０００９】
（１）ニューラルネットワークモデルの学習が行われる複数の車両と通信可能な通信装置と、前記複数の車両から送信されたニューラルネットワークモデルの一部を記憶する記憶装置と、制御装置とを備え、前記ニューラルネットワークモデルは複数の入力パラメータから少なくとも一つの出力パラメータを出力し、前記制御装置は、前記通信装置を介して前記複数の車両のうちの一つの車両から新たなニューラルネットワークモデルを受信した場合、該新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲と、前記記憶装置に記憶されている現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲とを比較することによって、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換えるか否かを決定する、モデル集約装置。
【００１０】
（２）前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲よりも広く、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数よりも少なく、且つ、前記新たなニューラルネットワークモデルの学習が完了した日時が、前記現在のニューラルネットワークモデルの学習が完了した日時よりも遅い場合には、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換える、上記（１）に記載のモデル集約装置。
【００１１】
（３）前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲よりも狭く、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数よりも多く、且つ、前記新たなニューラルネットワークモデルの学習が完了した日時が、前記現在のニューラルネットワークモデルの学習が完了した日時よりも遅い場合には、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換える、上記（１）又は（２）に記載のモデル集約装置。
【００１２】
（４）前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲よりも広い場合には、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換える、上記（１）に記載のモデル集約装置。
【００１３】
（５）前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲と等しい場合には、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数が、前記現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの組合せの数よりも多い場合に、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換える、上記（１）から（４）のいずれか１つに記載のモデル集約装置。
【００１４】
（６）前記制御装置は、前記新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータの少なくとも一つの値が異常である場合には、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換えない、上記（１）から（５）のいずれか１つに記載のモデル集約装置。
【００１５】
（７）サーバ及び複数の車両を備えるモデル集約システムであって、前記複数の車両は、それぞれ、前記サーバと通信可能な第１通信装置と、複数の入力パラメータから少なくとも一つの出力パラメータを出力するニューラルネットワークモデルの学習を行う第１制御装置とを備え、前記サーバは、前記複数の車両と通信可能な第２通信装置と、前記複数の車両から送信されたニューラルネットワークモデルの一部を記憶する記憶装置と、第２制御装置とを備え、前記第２制御装置は、前記第１通信装置及び前記第２通信装置を介して前記複数の車両のうちの一つの車両から新たなニューラルネットワークモデルを受信した場合、該新たなニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲と、前記記憶装置に記憶されている現在のニューラルネットワークモデルの学習に用いられた前記複数の入力パラメータのそれぞれの範囲とを比較することによって、前記現在のニューラルネットワークモデルを前記新たなニューラルネットワークモデルに置き換えるか否かを決定する、モデル集約システム。
【発明の効果】
【００１６】
本発明によれば、車両において学習されたニューラルネットワークモデルを集約して車両の外部の記憶装置に記憶させる場合に、記憶装置の記憶容量が不足することを抑制することができる。
【図面の簡単な説明】
【００１７】
【図１】図１は、本発明の第一実施形態に係るモデル集約システムの概略的な構成図である。
【図２】図２は、車両の構成の一部を概略的に示す図である。
【図３】図３は、単純な構成を有するニューラルネットワークモデルの一例を示す。
【図４】図４は、第一実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。
【図５】図５は、ニューラルネットワークモデルの学習に用いられた複数の入力パラメータの範囲を示す図である。
【図６】図６は、第二実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。
【図７】図７は、第三実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。
【図８Ａ】図８Ａは、第四実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。
【図８Ｂ】図８Ｂは、第四実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。
【図８Ｃ】図８Ｃは、第四実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下の説明では、同様な構成要素には同一の参照番号を付す。
【００１９】
＜第一実施形態＞
最初に、図１〜図５を参照して、本発明の第一実施形態について説明する。図１は、本発明の第一実施形態に係るモデル集約システムの概略的な構成図である。モデル集約システム１はサーバ２及び複数の車両３を備える。
【００２０】
図１に示されるように、サーバ２は、複数の車両３の外部に設けられ、通信インターフェース２１、ストレージ装置２２、メモリ２３及びプロセッサ２４を備える。なお、サーバ２は、キーボード及びマウスのような入力装置、ディスプレイのような出力装置等を更に備えていてもよい。また、サーバ２は複数のコンピュータから構成されていてもよい。サーバ２はモデル集約装置の一例である。
【００２１】
通信インターフェース２１は、複数の車両３と通信可能であり、サーバ２が複数の車両３と通信することを可能とする。具体的には、通信インターフェース２１は、サーバ２を通信ネットワーク５に接続するためのインターフェース回路を有する。サーバ２は、通信インターフェース２１、通信ネットワーク５及び無線基地局６を介して複数の車両３と通信する。通信インターフェース２１は通信装置の一例である。
【００２２】
ストレージ装置２２は、例えば、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）又は光記録媒体を有する。ストレージ装置２２は、各種データを記憶し、例えば、車両情報、プロセッサ２４が各種処理を実行するためのコンピュータプログラム等を記憶する。ストレージ装置２２は記憶装置の一例である。
【００２３】
メモリ２３は、例えばランダムアクセスメモリ（ＲＡＭ）のような半導体メモリを有する。メモリ２３は、例えばプロセッサ２４によって各種処理が実行されるときに使用される各種データ等を記憶する。
【００２４】
通信インターフェース２１、ストレージ装置２２及びメモリ２３は、信号線を介してプロセッサ２４に接続されている。プロセッサ２４は、一つ又は複数のＣＰＵ及びその周辺回路を有し、各種処理を実行する。なお、プロセッサ２４は、論理演算ユニット又は数値演算ユニットのような演算回路を更に有していてもよい。プロセッサ２４は制御装置の一例である。
【００２５】
図２は、車両３の構成の一部を概略的に示す図である。車両３は電子制御ユニット（ＥＣＵ（Electronic Control Unit））３０を備える。ＥＣＵ３０は、通信インターフェース３１、メモリ３２及びプロセッサ３３を含み、車両３の各種制御を実行する。なお、本実施形態では、一つのＥＣＵ３０が設けられているが、機能毎に複数のＥＣＵが設けられていてもよい。ＥＣＵ３０は制御装置の一例である。
【００２６】
通信インターフェース３１は、ＣＡＮ（Controller Area Network）等の規格に準拠した車内ネットワークにＥＣＵ３０を接続するためのインターフェース回路を有する。ＥＣＵ３０は通信インターフェース３１を介して他の車載機器と通信する。
【００２７】
メモリ３２は、例えば、揮発性の半導体メモリ（例えば、ＲＡＭ）及び不揮発性の半導体メモリ（例えば、ＲＯＭ）を有する。メモリ３２は、プロセッサ３３によって実行されるプログラム、プロセッサ３３によって各種処理が実行されるときに使用される各種データ等を記憶する。
【００２８】
通信インターフェース３１及びメモリ３２は信号線を介してプロセッサ３３に接続されている。プロセッサ３３は、一つ又は複数のＣＰＵ(Central Processing Unit)及びその周辺回路を有し、各種処理を実行する。なお、プロセッサ３３は、論理演算ユニット又は数値演算ユニットのような演算回路を更に有していてもよい。
【００２９】
また、車両３はサーバ２と通信可能な通信モジュール３６を備える。通信モジュール３６は、信号線を介してＥＣＵ３０に接続され、例えばデータ通信モジュール（ＤＣＭ（Data communication module)）として構成される。車両３は、通信モジュール３６、無線基地局６及び通信ネットワーク５を介してサーバ２と通信する。通信モジュール３６は通信装置の一例である。
【００３０】
モデル集約システム１は、上述したような構成を有し、複数の車両３からニューラルネットワークモデルを集約する。最初に、図３を参照して、ニューラルネットワークモデルの概要について説明する。図３は、単純な構成を有するニューラルネットワークモデルの一例を示す。
【００３１】
図３における丸印は人工ニューロンを表す。人工ニューロンは、通常、ノード又はユニットと称される（本明細書では、「ノード」と称す）。図３において、Ｌ＝１は入力層を示し、Ｌ＝２及びＬ＝３は隠れ層を示し、Ｌ＝４は出力層を示している。なお、隠れ層は中間層とも称される。
【００３２】
図３において、ｘ1及びｘ2は入力層（Ｌ＝１）の各ノード及びそのノードからの出力値を示しており、ｙは出力層（Ｌ＝４）のノード及びその出力値を示している。同様に、ｚ1(L=2)、ｚ2(L=2)及びｚ3(L=2)は隠れ層（Ｌ＝２）の各ノード及びそのノードからの出力値を示しており、ｚ1(L=3)及びｚ2(L=3)は隠れ層（Ｌ＝３）の各ノード及びそのノードからの出力値を示している。
【００３３】
入力層の各ノードでは入力がそのまま出力される。一方、隠れ層（Ｌ＝２）の各ノードには、入力層の各ノードの出力値ｘ1及びｘ2が入力され、隠れ層（Ｌ＝２）の各ノードでは、それぞれ対応する重みｗ及びバイアスｂを用いて総入力値ｕが算出される。例えば、図３において隠れ層（Ｌ＝２）のｚk(L=2)（ｋ＝１、２、３）で示される各ノードにおいて算出される総入力値ｕk(L=2)は、次式のようになる（Ｍは入力層のノードの数）。
【数１】
2020144775.tif 000003
次いで、この総入力値ｕk(L=2)は活性化関数ｆにより変換され、隠れ層（Ｌ＝２）のｚk(L=2)で示されるノードから、出力値ｚk(L=2)（＝ｆ（ｕk(L=2)））として出力される。一方、隠れ層（Ｌ＝３）の各ノードには、隠れ層（Ｌ＝２）の各ノードの出力値ｚ1(L=2)、ｚ2(L=2)及びｚ3(L=2)が入力され、隠れ層（Ｌ＝３）の各ノードでは、それぞれ対応する重みｗ及びバイアスｂを用いて総入力値ｕ（＝Σｚ・ｗ＋ｂ）が算出される。この総入力値ｕは同様に活性化関数により変換され、隠れ層（Ｌ＝３）の各ノードから、出力値ｚ1(L=3)、ｚ2(L=3)として出力される、活性化関数は例えばシグモイド関数σである。
【００３４】
また、出力層（Ｌ＝４）のノードには、隠れ層（Ｌ＝３）の各ノードの出力値ｚ1(L=3)及びｚ2(L=3)が入力され、出力層のノードでは、それぞれ対応する重みｗ及びバイアスｂを用いて総入力値ｕ（Σｚ・ｗ＋ｂ）が算出され、又はそれぞれ対応する重みｗのみを用いて総入力値ｕ（Σｚ・ｗ）が算出される。例えば、出力層のノードでは活性化関数として恒等関数が用いられる。この場合、出力層のノードにおいて算出された総入力値ｕが、そのまま出力値ｙとして出力層のノードから出力される。
【００３５】
本実施形態では、複数の入力パラメータ（入力値）から少なくとも一つの出力パラメータ（出力値）を出力するニューラルネットワークモデルが車両３の制御のために車両３において用いられる。斯かるニューラルネットワークモデルの入力パラメータ及び出力パラメータとして、車両３に搭載された内燃機関に関するパラメータ、車両３の走行環境に関するパラメータ等が用いられる。例えば、入力パラメータとして、機関回転数、スロットル弁の開度、吸入空気量（新気量とＥＧＲガス量との合計）又は吸入空気圧、内燃機関の冷却水の温度、カムシャフトの角度、吸気温度、車速及び混合気の目標空燃比が用いられ、出力パラメータとして目標空燃比の補正量が用いられる。
【００３６】
また、車両３が、動力源として内燃機関及びモータを備えるハイブリッド車両（ＨＶ）又はプラグインハイブリッド車両（ＰＨＶ）である場合、以下のような入力パラメータ及び出力パラメータが用いられる。例えば、入力パラメータとして、バッテリの充電率（ＳＯＣ：Ｓｔａｔｅ  Ｏｆ  Ｃｈａｒｇｅ）、車速、アクセル開度、内燃機関の冷却水の温度、バッテリの温度、エアコン等の使用による電気負荷、大気圧又は高度、緯度、経度、曜日、及び時間帯が用いられ、出力パラメータとしてＨＶモードにおけるバッテリの目標充放電量が用いられる。なお、ＨＶモードでは、バッテリのＳＯＣが目標値になるように内燃機関及びモータが駆動される。また、曜日が入力パラメータとして用いられる場合、曜日が数値化される。例えば、月曜〜日曜に１〜７が割り当てられる。
【００３７】
また、入力パラメータとして、バッテリのＳＯＣ、車速、アクセル開度、モータの温度又はインバータの温度、緯度及び経度が用いられ、出力パラメータとしてＥＶモードにおける内燃機関の始動判定結果が用いられてもよい。なお、ＥＶモードでは、動力源としてモータのみが駆動される。この場合、例えば、ニューラルネットワークモデルからゼロが出力された場合に内燃機関が停止され、ニューラルネットワークモデルから１が出力された場合に内燃機関が始動される。
【００３８】
また、車両３が、動力源として内燃機関及びモータを備え且つ外部電源によってバッテリを充電可能なプラグインハイブリッド車両（ＰＨＶ）である場合、以下のような入力パラメータ及び出力パラメータが用いられる。例えば、入力パラメータとして、バッテリのＳＯＣ、車速、アクセル開度、外気温、内燃機関の冷却水の温度、内燃機関を循環するオイルの温度、緯度、経度、曜日及び時間帯が用いられ、出力パラメータとして走行モード（ＥＶモード又はＨＶモード）が用いられる。この場合、例えば、ニューラルネットワークモデルからゼロが出力された場合に走行モードがＥＶモードに設定され、ニューラルネットワークモデルから１が出力された場合に走行モードがＨＶモードに設定される。
【００３９】
車両３において用いられるニューラルネットワークモデルはＥＣＵ３０のメモリ３２又は車両３に設けられた他の制御装置に記憶される。ＥＣＵ３０は、入力パラメータをニューラルネットワークモデルに入力することによってニューラルネットワークモデルに出力パラメータを出力させる。このとき、各入力パラメータの値として、例えば、車両３に設けられたセンサ等によって検出された値又はＥＣＵ３０において算出された値が用いられる。ニューラルネットワークモデルを用いることによって、所定値の入力パラメータに対応する適切な出力パラメータの値を得ることができる。
【００４０】
ニューラルネットワークモデルの精度を向上させるためには、ニューラルネットワークモデルの学習を予め行う必要がある。本実施形態では、車両３のＥＣＵ３０がニューラルネットワークモデルの学習を行う。すなわち、サーバ２ではなく車両３においてニューラルネットワークモデルの学習が行われる。
【００４１】
ニューラルネットワークモデルの学習では、複数の入力パラメータの実測値と、これら実測値に対応する少なくとも一つの出力パラメータの実測値（正解データ）との組合せから成る訓練データセットが用いられる。このため、ＥＣＵ３０は、複数の入力パラメータの実測値と、これら実測値に対応する少なくとも一つの出力パラメータの実測値とを取得する。入力パラメータ及び出力パラメータの実測値は、例えば、車両３に設けられたセンサ等によって検出された値又はＥＣＵ３０において算出又は決定された値として取得される。これら実測値を組み合わせることによって作成された訓練データセットは、ＥＣＵ３０のメモリ３２又は車両３に設けられた他の制御装置に記憶される。
【００４２】
ＥＣＵ３０は多数の訓練データセットを用いてニューラルネットワークモデルの学習を行う。例えば、ＥＣＵ３０は、ニューラルネットワークモデルの出力値と出力パラメータの実測値との差が小さくなるように、公知の誤差逆伝播法によってニューラルネットワークモデルにおける重みｗ及びバイアスｂを繰り返し更新する。この結果、ニューラルネットワークモデルが学習され、学習済みのニューラルネットワークモデルが生成される。学習済みのニューラルネットワークモデルの情報（モデルの構造、重みｗ、バイアスｂ等）は、ＥＣＵ３０のメモリ３２又は車両３に設けられた他の制御装置に記憶される。
【００４３】
ニューラルネットワークモデルを他の車両等に適用するためには、車両において学習されたニューラルネットワークモデルを集約してサーバ２のストレージ装置２２に記憶させることが望ましい。このため、学習済みのニューラルネットワークモデル（具体的には学習済みのニューラルネットワークモデルの情報）が車両３からサーバ２に送信される。その後、サーバ２は学習済みのニューラルネットワークモデルを他の車両に送信する。このことによって、ニューラルネットワークモデルの学習が行われない車両においても、ニューラルネットワークモデルを効果的に利用することができる。また、車両において用いられるニューラルネットワークモデルを、サーバ２から送信された高精度のニューラルネットワークモデルに置き換えることができる。
【００４４】
しかしながら、複数の車両３から送信された全てのニューラルネットワークモデルをサーバ２のストレージ装置２２に記憶させようとすると、ストレージ装置２２の記憶容量が早期に不足し、新たなニューラルネットワークモデルをストレージ装置２２に記憶させることができなくなる。このため、本実施形態では、複数の車両３において学習が行われたニューラルネットワークモデルの一部をストレージ装置２２に記憶させる。
【００４５】
具体的には、サーバ２のプロセッサ２４は、車両３の通信モジュール及びサーバ２の通信インターフェース２１を介して複数の車両３のうちの一つの車両から新たなニューラルネットワークモデルを受信した場合、新たなニューラルネットワークモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲と、ストレージ装置２２に記憶されている現在のニューラルネットワークモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲とを比較することによって、現在のニューラルネットワークモデルを新たなニューラルネットワークモデルに置き換えるか否かを決定する。このことによって、ストレージ装置２２に記憶されるニューラルネットワークモデルが選別されるため、ストレージ装置２２の記憶容量が不足することを抑制することができる。
【００４６】
また、ストレージ装置２２に記憶されるニューラルネットワークモデルとして、高精度のニューラルネットワークモデルを選別することが望ましい。通常、ニューラルネットワークモデルを用いて様々な値の入力パラメータから適切な出力パラメータの値を出力させるためには、広い範囲の入力パラメータを含む訓練データセットを用いてニューラルネットワークモデルの学習を行う必要がある。このため、ニューラルネットワークモデルの学習に用いられた入力パラメータの範囲が広いほど、ニューラルネットワークモデルの精度が高いと考えられる。
【００４７】
そこで、本実施形態では、サーバ２のプロセッサ２４は、新たなニューラルネットワークモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲が、現在のニューラルネットワークモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲よりも広い場合には、現在のニューラルネットワークモデルを新たなニューラルネットワークモデルに置き換える。このことによって、ストレージ装置２２の記憶容量が不足することを抑制しつつ、ストレージ装置２２に記憶されるニューラルネットワークモデルの精度を向上させることができる。
【００４８】
＜モデル置換処理＞
以下、図４のフローチャートを参照して、上述した制御について詳細に説明する。図４は、第一実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。本制御ルーチンはサーバ２のプロセッサ２４によって繰り返し実行される。本制御ルーチンでは、サーバ２のストレージ装置２２に記憶されている現在のニューラルネットワークモデル（以下、「現在のモデル」と称する）を、車両３から受信した新たなニューラルネットワークモデル（以下、「新たなモデル」と称する）に置き換えるか否かが判定される。
【００４９】
最初に、ステップＳ１０１において、車両３から新たなモデルを受信したか否かが判定される。車両３から新たなモデルを受信していないと判定された場合、本制御ルーチンは終了する。一方、車両３から新たなモデルを受信したと判定された場合、本制御ルーチンはステップＳ１０２に進む。
【００５０】
ステップＳ１０２では、新たなモデルの入力パラメータ番号ｋが１に設定され、現在のモデルの入力パラメータ番号ｍが１に設定される。
【００５１】
次いで、ステップＳ１０３では、新たなモデルの学習に用いられた第ｋ入力パラメータの範囲ＲＮＧ（ｋ）が、現在のモデルの学習に用いられた第ｍ入力パラメータの範囲ＲＮＧ（ｍ）よりも広いか否かが判定される。本制御ルーチンにおいて、ｋ及びｍの値は等しくなる。したがって、ステップＳ１０３では、新たなモデルと現在のモデルとの間で、入力パラメータ毎に、学習に用いられた入力パラメータの範囲が比較される。
【００５２】
図５は、ニューラルネットワークモデルの学習に用いられた複数の入力パラメータの範囲を示す図である。図５の例では、ニューラルネットワークモデルにおいて、第１入力パラメータ〜第６入力パラメータの六つの入力パラメータが用いられる。すなわち、ニューラルネットワークモデルの入力層のノードの数は六つである。なお、新たなモデル及び現在のモデルでは、同一の入力パラメータ及び出力パラメータが用いられる。
【００５３】
各入力パラメータの範囲は、ニューラルネットワークモデルの学習に用いられた訓練データセットに含まれる入力パラメータの実測値の最小値と最大値との差として算出される。例えば、第１入力パラメータが車速であり、３０ｋｍ／ｈ〜８０ｋｍ／ｈの実測値が学習に用いられた場合、第１入力パラメータの範囲は、５０（＝８０−３０）となり、（３０，８０）のように表される。
【００５４】
ニューラルネットワークモデルの学習に用いられた各入力パラメータの最小値及び最大値又は範囲は、学習済みのニューラルネットワークモデルの情報の一つとして、ＥＣＵ３０のメモリ３２又は車両３に設けられた他の制御装置に記憶される。このため、サーバ２のプロセッサ２４は、車両３から新たなモデルを受信するとき、新たなモデルの学習に用いられた各入力パラメータの範囲を取得することができる。
【００５５】
また、新たなモデルがストレージ装置２２に記憶されるとき、新たなモデルの学習に用いられた各入力パラメータの最小値及び最大値又は範囲がストレージ装置２２に記憶される。このため、サーバ２のプロセッサ２４は、現在のモデルの学習に用いられた各入力パラメータの範囲を取得することができる。
【００５６】
ステップＳ１０３において新たなモデルの学習に用いられた第ｋ入力パラメータの範囲ＲＮＧ（ｋ）が、現在のモデルの学習に用いられた第ｍ入力パラメータの範囲ＲＮＧ（ｍ）以下であると判定された場合、本制御ルーチンはステップＳ１０７に進む。ステップＳ１０７では、新たなモデルがストレージ装置２２から削除される。すなわち、現在のモデルが維持され、新たなモデルがストレージ装置２２に記憶されない。ステップＳ１０７の後、本制御ルーチンは終了する。
【００５７】
一方、新たなモデルの学習に用いられた第ｋ入力パラメータの範囲ＲＮＧ（ｋ）が、現在のモデルの学習に用いられた第ｍ入力パラメータの範囲ＲＮＧ（ｍ）よりも広いと判定された場合、本制御ルーチンはステップＳ１０４に進む。ステップＳ１０４では、新たなモデルの入力パラメータ番号ｋに１が加算され、現在のモデルの入力パラメータ番号ｍに１が加算される。
【００５８】
次いで、ステップＳ１０５では、新たなモデルの入力パラメータ番号ｋがＮ＋１であるか否かが判定される。Ｎは、ニューラルネットワークモデルに入力される入力パラメータの数であり、図５の例では６である。このため、ステップＳ１０５では、新たなモデルと現在のモデルとの間で全ての入力パラメータの範囲が比較されたか否かが判定される。新たなモデルの入力パラメータ番号ｋがＮ以下であると判定された場合、本制御ルーチンはステップＳ１０３に戻り、次の入力パラメータの範囲が比較される。
【００５９】
一方、ステップＳ１０５において新たなモデルの入力パラメータ番号ｋがＮ＋１であると判定された場合、本制御ルーチンはステップＳ１０６に進む。この場合、新たなモデルの学習に用いられた全ての入力パラメータのそれぞれの範囲が現在のモデルの学習に用いられた全ての入力パラメータのそれぞれの範囲よりも広い。このため、ステップＳ１０６において現在のモデルが新たなモデルに置き換えられる。すなわち、現在のモデルがストレージ装置２２から削除され、新たなモデルがストレージ装置２２に記憶される。ステップＳ１０６の後、本制御ルーチンは終了する。
【００６０】
なお、新たなモデルと同一の入力パラメータ及び出力パラメータを有する現在のモデルが存在しない場合には、新たなモデルがストレージ装置２２に記憶される。
【００６１】
＜第二実施形態＞
第二実施形態に係るモデル集約システム及びモデル集約装置の構成及び制御は、以下に説明する点を除いて、基本的に第一実施形態に係るモデル集約システム及びモデル集約装置の構成及び制御と同様である。このため、以下、本発明の第二実施形態について、第一実施形態と異なる部分を中心に説明する。
【００６２】
第一実施形態では、新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲が、現在のモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲と等しい場合、新たなモデルがストレージ装置２２から削除される。しかしながら、この場合に必ずしも新たなモデルの精度が現在のモデルの精度以下であるとは限らない。
【００６３】
通常、学習に用いられた複数の入力パラメータのそれぞれの範囲が等しい場合、学習に用いられた複数の入力パラメータの組合せの数、すなわち訓練データセットの数が多いほど、学習済みのニューラルネットワークモデルの精度は高くなる。
【００６４】
このため、第二実施形態では、サーバ２のプロセッサ２４は、新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲が、現在のモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲と等しい場合には、新たなモデルの学習に用いられた複数の入力パラメータの組合せの数が、現在のモデルの学習に用いられた複数の入力パラメータの組合せの数よりも多い場合に、現在のモデルを新たなモデルに置き換える。このことによって、ストレージ装置２２の記憶容量が不足することを抑制しつつ、ストレージ装置２２に記憶されるニューラルネットワークモデルの精度をより効果的に向上させることができる。
【００６５】
＜モデル置換処理＞
図６は、第二実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。本制御ルーチンはサーバ２のプロセッサ２４によって繰り返し実行される。
【００６６】
ステップＳ２０１〜ステップＳ２０５は図４のステップＳ１０１〜ステップＳ１０５と同様であることから説明を省略する。ステップＳ２０５において新たなモデルの入力パラメータ番号ｋがＮ＋１であると判定された場合、本制御ルーチンはステップＳ２０６に進む。
【００６７】
ステップＳ２０６では、新たなモデルと現在のモデルとの間で全ての入力パラメータの範囲が等しいか否かが判定される。新たなモデルの学習に用いられた全ての入力パラメータのそれぞれの範囲が現在のモデルの学習に用いられた全ての入力パラメータのそれぞれの範囲よりも広い場合、ステップＳ２０６において全ての入力パラメータの範囲が等しくないと判定され、本制御ルーチンはステップＳ２０８に進む。
【００６８】
ステップＳ２０８では、現在のモデルが新たなモデルに置き換えられる。すなわち、現在のモデルがストレージ装置２２から削除され、新たなモデルがストレージ装置２２に記憶される。ステップＳ２０８の後、本制御ルーチンは終了する。
【００６９】
一方、ステップＳ２０６において全ての入力パラメータの範囲が等しいと判定された場合、本制御ルーチンはステップＳ２０７に進む。ステップＳ２０７では、新たなモデルの学習に用いられた複数の入力パラメータの組合せの数ＣＮｋが、現在のモデルの学習に用いられた複数の入力パラメータの組合せの数ＣＮｍよりも多いか否かが判定される。すなわち、新たなモデルの学習に用いられた訓練データセットの数が、現在のモデルの学習に用いられた訓練データセットの数よりも多いか否かが判定される。
【００７０】
第二実施形態では、ニューラルネットワークモデルの学習に用いられた複数の入力パラメータの組合せの数が、学習済みのニューラルネットワークモデルの情報の一つとして、ＥＣＵ３０のメモリ３２又は車両３に設けられた他の制御装置に記憶される。このため、サーバ２のプロセッサ２４は、車両３から新たなモデルを受信するとき、新たなモデルの学習に用いられた複数の入力パラメータの組合せの数を取得することができる。
【００７１】
また、新たなモデルがストレージ装置２２に記憶されるとき、新たなモデルの学習に用いられた複数の入力パラメータの組合せの数がストレージ装置２２に記憶される。このため、サーバ２のプロセッサ２４は、現在のモデルの学習に用いられた複数の入力パラメータの組合せの数を取得することができる。
【００７２】
ステップＳ２０７において複数の入力パラメータの組合せの数ＣＮｋが複数の入力パラメータの組合せの数ＣＮｍ以下であると判定された場合、本制御ルーチンはステップＳ２０９に進む。ステップＳ２０９では、新たなモデルがストレージ装置２２から削除される。すなわち、現在のモデルが維持され、新たなモデルがストレージ装置２２に記憶されない。ステップＳ２０９の後、本制御ルーチンは終了する。
【００７３】
一方、ステップＳ２０７において複数の入力パラメータの組合せの数ＣＮｋが複数の入力パラメータの組合せの数ＣＮｍよりも多いと判定された場合、本制御ルーチンはステップＳ２０８に進む。ステップＳ２０８では現在のモデルが新たなモデルに置き換えられ、ステップＳ２０８の後、本制御ルーチンは終了する。
【００７４】
＜第三実施形態＞
第三実施形態に係るモデル集約システム及びモデル集約装置の構成及び制御は、以下に説明する点を除いて、基本的に第一実施形態に係るモデル集約システム及びモデル集約装置の構成及び制御と同様である。このため、以下、本発明の第三実施形態について、第一実施形態と異なる部分を中心に説明する。
【００７５】
上述したように、ニューラルネットワークモデルの学習では、多数の訓練データセットが用いられる。しかしながら、センサの劣化等によって入力パラメータの実測値として異常な値が取得された場合、異常な値を含む訓練データセットを用いてニューラルネットワークモデルの学習が行われる。この場合、ニューラルネットワークモデルが異常な値に適合され、学習済みのニューラルネットワークモデルの精度が低下する。
【００７６】
また、ニューラルネットワークモデルの学習に用いられた入力パラメータが異常な値を含む場合、ニューラルネットワークモデルの学習に用いられた入力パラメータの範囲は広くなる傾向にある。このため、入力パラメータの範囲が広い新たなモデルを現在のモデルに置き換えることによってニューラルネットワークモデルの精度が低下するおそれがある。
【００７７】
そこで、第三実施形態では、サーバ２のプロセッサ２４は、新たなモデルの学習に用いられた複数の入力パラメータの少なくとも一つの値が異常である場合には、現在のモデルを新たなモデルに置き換えない。具体的には、プロセッサ２４は、新たなモデルの学習に用いられた複数の入力パラメータの少なくとも一つの値が異常である場合には、新たなモデルと現在のモデルとの間で入力パラメータの範囲を比較することなく新たなモデルをストレージ装置２２から削除する。このことによって、ストレージ装置２２の記憶容量が不足することを抑制しつつ、ストレージ装置２２に記憶されるニューラルネットワークモデルの精度をより効果的に向上させることができる。
【００７８】
＜モデル置換処理＞
図７は、第三実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。本制御ルーチンはサーバ２のプロセッサ２４によって繰り返し実行される。
【００７９】
最初に、ステップＳ３０１において、車両３から新たなモデルを受信したか否かが判定される。車両３から新たなモデルを受信していないと判定された場合、本制御ルーチンは終了する。一方、車両３から新たなモデルを受信したと判定された場合、本制御ルーチンはステップＳ３０２に進む。
【００８０】
ステップＳ３０２では、新たなモデルの学習に用いられた複数の入力パラメータの少なくとも一つの値が異常であるか否かが判定される。例えば、複数の入力パラメータのそれぞれについて正常な範囲が予め定められ、新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの最大値及び最小値が正常な範囲に含まれるか否かが判定される。この場合、全ての入力パラメータの最大値及び最小値が正常な範囲に含まれている場合には、新たなモデルの学習に用いられた複数の入力パラメータの全ての値が異常ではないと判定される。一方、少なくとも一つの入力パラメータの最大値又は最小値が正常な範囲に含まれていない場合には、新たなモデルの学習に用いられた複数の入力パラメータの少なくとも一つの値が異常であると判定される。
【００８１】
ステップＳ３０２において複数の入力パラメータの少なくとも一つの値が異常であると判定された場合、本制御ルーチンはステップＳ３０８に進む。ステップＳ３０８では、新たなモデルがストレージ装置２２から削除される。すなわち、現在のモデルが維持され、新たなモデルがストレージ装置２２に記憶されない。ステップＳ３０８の後、本制御ルーチンは終了する。
【００８２】
一方、ステップＳ３０２において新たなモデルの学習に用いられた複数の入力パラメータの全ての値が異常ではないと判定された場合、本制御ルーチンはステップＳ３０３に進む。ステップＳ３０３〜ステップＳ３０８は図４のステップＳ１０２〜ステップＳ１０７と同様であることから説明を省略する。
【００８３】
＜第四実施形態＞
第四実施形態に係るモデル集約システム及びモデル集約装置の構成及び制御は、以下に説明する点を除いて、基本的に第一実施形態に係るモデル集約システム及びモデル集約装置の構成及び制御と同様である。このため、以下、本発明の第四実施形態について、第一実施形態と異なる部分を中心に説明する。
【００８４】
上述したように、ニューラルネットワークモデルの学習に用いられた入力パラメータの範囲が広いほど、学習済みのニューラルネットワークモデルの精度は高くなる傾向にある。また、ニューラルネットワークモデルの学習に用いられた複数の入力パラメータの組合せが多いほど、すなわちニューラルネットワークモデルの学習に用いられた訓練データセットの数が多いほど、学習済みのニューラルネットワークモデルの精度は高くなる傾向にある。
【００８５】
しかしながら、新たなモデルと現在のモデルとが比較されるとき、一方のモデルの学習に用いられた複数の入力パラメータの範囲が他方のモデルよりも広くなり、他方のモデルの学習に用いられた訓練データセットの数が一方のモデルよりも多くなる場合がある。この場合には、学習が完了した日時が遅いモデルが車両のより最新の状態を反映していると考えられる。すなわち、学習が完了した日時が遅いモデルが、学習が完了した日時が早いモデルよりも高精度であると考えられる。
【００８６】
このため、第四実施形態では、サーバ２のプロセッサ２４は、新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲が、現在のモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲よりも広く、新たなモデルの学習に用いられた複数の入力パラメータの組合せの数が、現在のモデルの学習に用いられた複数の入力パラメータの組合せの数よりも少なく、且つ、新たなモデルの学習が完了した日時が、現在のモデルの学習が完了した日時よりも遅い場合には、現在のモデルを新たなモデルに置き換える。
【００８７】
また、プロセッサ２４は、新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲が、現在のモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲よりも狭く、新たなモデルの学習に用いられた複数の入力パラメータの組合せの数が、現在のモデルの学習に用いられた複数の入力パラメータの組合せの数よりも多く、且つ、新たなモデルの学習が完了した日時が、現在のモデルの学習が完了した日時よりも遅い場合には、現在のモデルを新たなモデルに置き換える。
【００８８】
上記のようにストレージ装置２２に記憶されるニューラルネットワークモデルを選別することによって、ストレージ装置２２の記憶容量が不足することを抑制しつつ、ストレージ装置２２に記憶されるニューラルネットワークモデルの精度をより効果的に向上させることができる。
【００８９】
＜モデル置換処理＞
図８Ａ〜図８Ｃは、第四実施形態におけるモデル置換処理の制御ルーチンを示すフローチャートである。本制御ルーチンはサーバ２のプロセッサ２４によって繰り返し実行される。
【００９０】
最初に、ステップＳ４０１において、車両３から新たなモデルを受信したか否かが判定される。車両３から新たなモデルを受信していないと判定された場合、本制御ルーチンは終了する。一方、車両３から新たなモデルを受信したと判定された場合、本制御ルーチンはステップＳ４０２に進む。
【００９１】
ステップＳ４０２では、新たなモデルの入力パラメータ番号ｋが１に設定され、現在のモデルの入力パラメータ番号ｍが１に設定され、ＫフラグＦｋがゼロに設定され、ＭフラグＦｍがゼロに設定される。
【００９２】
次いで、ステップＳ４０３において、新たなモデルの学習に用いられた第ｋ入力パラメータの範囲ＲＮＧ（ｋ）が、現在のモデルの学習に用いられた第ｍ入力パラメータの範囲ＲＮＧ（ｍ）以上であるか否かが判定される。第ｋ入力パラメータの範囲ＲＮＧ（ｋ）が第ｍ入力パラメータの範囲ＲＮＧ（ｍ）以上であると判定された場合、本制御ルーチンはステップＳ４０４に進む。ステップＳ４０４では、ＫフラグＦｋが１に設定される。
【００９３】
次いで、ステップＳ４０５においてＭフラグＦｍが１であるか否かが判定される。ＭフラグＦｍがゼロであると判定された場合、本制御ルーチンはステップＳ４０６に進む。ステップＳ４０６では、新たなモデルの入力パラメータ番号ｋに１が加算され、現在のモデルの入力パラメータ番号ｍに１が加算される。
【００９４】
次いで、ステップＳ４０７では、新たなモデルの入力パラメータ番号ｋがＮ＋１であるか否かが判定される。Ｎは、ニューラルネットワークモデルに入力される入力パラメータの数であり、図５の例では６である。新たなモデルの入力パラメータ番号ｋがＮ以下であると判定された場合、本制御ルーチンはステップＳ４０３に戻り、次の入力パラメータの範囲が比較される。
【００９５】
一方、ステップＳ４０３において第ｍ入力パラメータの範囲ＲＮＧ（ｍ）が第ｋ入力パラメータの範囲ＲＮＧ（ｋ）よりも広いと判定された場合、本制御ルーチンはステップＳ４０９に進む。ステップＳ４０９では、ＭフラグＦｍが１に設定される。
【００９６】
次いで、ステップＳ４１０においてＫフラグＦｋが１であるか否かが判定される。ＫフラグＦｋがゼロであると判定された場合、本制御ルーチンはステップＳ４０６に進む。ステップＳ４０６では、新たなモデルの入力パラメータ番号ｋに１が加算され、現在のモデルの入力パラメータ番号ｍに１が加算される。
【００９７】
次いで、ステップＳ４０７では、新たなモデルの入力パラメータ番号ｋがＮ＋１であるか否かが判定される。新たなモデルの入力パラメータ番号ｋがＮ以下であると判定された場合、本制御ルーチンはステップＳ４０３に戻り、次の入力パラメータの範囲が比較される。
【００９８】
一方、ステップＳ４０５においてＭフラグＦｍが１であると判定された場合、又はステップＳ４１０においてＫフラグＦｋが１であると判定された場合、本制御ルーチンはステップＳ４１１に進む。この場合、一部の入力パラメータの範囲が一方のモデルにおいて広く、一部の入力パラメータの範囲が他方のモデルにおいて広い。このため、ステップＳ４１１では、新たなモデルがストレージ装置２２から削除される。すなわち、現在のモデルが維持され、新たなモデルがストレージ装置２２に記憶されない。ステップＳ４１１の後、本制御ルーチンは終了する。
【００９９】
また、ステップＳ４０７において、新たなモデルの入力パラメータ番号ｋがＮ＋１であると判定された場合、本制御ルーチンはステップＳ４０８に進む。ステップＳ４０８では、ＭフラグＦｍが１であるか否かが判定される。現在のモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲が新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲よりも広い場合、ＭフラグＦｍが１であると判定され、本制御ルーチンはステップＳ４１２に進む。
【０１００】
ステップＳ４１２では、図６のステップＳ２０７と同様に、新たなモデルの学習に用いられた複数の入力パラメータの組合せの数ＣＮｋが、現在のモデルの学習に用いられた複数の入力パラメータの組合せの数ＣＮｍよりも多いか否かが判定される。複数の入力パラメータの組合せの数ＣＮｋが複数の入力パラメータの組合せの数ＣＮｍよりも多いと判定された場合、本制御ルーチンはステップＳ４１３に進む。
【０１０１】
ステップＳ４１３では、新たなモデルの学習が完了した日時が、現在のモデルの学習が完了した日時よりも遅いか否か否かが判定される。第四実施形態では、ニューラルネットワークモデルの学習が完了した日時が、学習済みのニューラルネットワークモデルの情報の一つとして、ＥＣＵ３０のメモリ３２又は車両３に設けられた他の制御装置に記憶される。このため、サーバ２のプロセッサ２４は、車両３から新たなモデルを受信するとき、新たなモデルの学習が完了した日時を取得することができる。
【０１０２】
また、新たなモデルがストレージ装置２２に記憶されるとき、新たなモデルの学習が完了した日時がストレージ装置２２に記憶される。このため、サーバ２のプロセッサ２４は、現在のモデルの学習が完了した日時を取得することができる。
【０１０３】
ステップＳ４１３において新たなモデルの学習が完了した日時が、現在のモデルの学習が完了した日時よりも遅いと判定された場合、すなわち新たなモデルが最新のモデルであると判定された場合、本制御ルーチンはステップＳ４１４に進む。ステップＳ４１４では、現在のモデルが新たなモデルに置き換えられる。すなわち、現在のモデルがストレージ装置２２から削除され、新たなモデルがストレージ装置２２に記憶される。ステップＳ４１４の後、本制御ルーチンは終了する。
【０１０４】
一方、ステップＳ４１２において複数の入力パラメータの組合せの数ＣＮｋが複数の入力パラメータの組合せの数ＣＮｍ以下であると判定された場合、又はステップＳ４１３において新たなモデルの学習が完了した日時が現在のモデルの学習が完了した日時よりも遅くないと判定された場合、本制御ルーチンはステップＳ４１５に進む。
【０１０５】
ステップＳ４１５では、新たなモデルがストレージ装置２２から削除される。すなわち、現在のモデルが維持され、新たなモデルがストレージ装置２２に記憶されない。ステップＳ４１５の後、本制御ルーチンは終了する。
【０１０６】
一方、新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲が現在のモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲よりも広い場合、ステップＳ４０８においてＭフラグＦｍがゼロであると判定され、本制御ルーチンはステップＳ４１６に進む。なお、この場合、ＫフラグＦｋは１に設定されている。
【０１０７】
ステップＳ４１６では、新たなモデルと現在のモデルとの間で全ての入力パラメータの範囲が等しいか否かが判定される。全ての入力パラメータの範囲が等しいと判定された場合、本制御ルーチンはステップＳ４２０に進む。
【０１０８】
ステップＳ４２０では、新たなモデルがストレージ装置２２から削除される。すなわち、現在のモデルが維持され、新たなモデルがストレージ装置２２に記憶されない。ステップＳ４２０の後、本制御ルーチンは終了する。
【０１０９】
一方、新たなモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲が現在のモデルの学習に用いられた複数の入力パラメータのそれぞれの範囲よりも広い場合、ステップＳ４１６において全ての入力パラメータの範囲が等しくないと判定され、本制御ルーチンはステップＳ４１７に進む。
【０１１０】
ステップＳ４１７では、新たなモデルの学習に用いられた複数の入力パラメータの組合せの数ＣＮｋが、現在のモデルの学習に用いられた複数の入力パラメータの組合せの数ＣＮｍ以上であるか否かが判定される。複数の入力パラメータの組合せの数ＣＮｋが複数の入力パラメータの組合せの数ＣＮｍよりも少ないと判定された場合、本制御ルーチンはステップＳ４１９に進む。
【０１１１】
ステップＳ４１９では、図８ＢのステップＳ４１３と同様に、新たなモデルの学習が完了した日時が、現在のモデルの学習が完了した日時よりも遅いか否かが判定される。新たなモデルの学習が完了した日時が、現在のモデルの学習が完了した日時よりも遅くないと判定された場合、本制御ルーチンはステップＳ４２０に進む。
【０１１２】
ステップＳ４２０では、新たなモデルがストレージ装置２２から削除される。すなわち、現在のモデルが維持され、新たなモデルがストレージ装置２２に記憶されない。ステップＳ４２０の後、本制御ルーチンは終了する。
【０１１３】
一方、ステップＳ４１７において複数の入力パラメータの組合せの数ＣＮｋが複数の入力パラメータの組合せの数ＣＮｍ以上であると判定された場合、又はステップＳ４１９において新たなモデルの学習が完了した日時が現在のモデルの学習が完了した日時よりも遅いと判定された場合、本制御ルーチンはステップＳ４１８に進む。
【０１１４】
ステップＳ４１８では、現在のモデルが新たなモデルに置き換えられる。すなわち、現在のモデルがストレージ装置２２から削除され、新たなモデルがストレージ装置２２に記憶される。ステップＳ４１８の後、本制御ルーチンは終了する。
【０１１５】
＜その他の実施形態＞
以上、本発明に係る好適な実施形態を説明したが、本発明はこれら実施形態に限定されるものではなく、特許請求の範囲の記載内で様々な修正及び変更を施すことができる。例えば、ニューラルネットワークモデルの入力パラメータ及び出力パラメータは、上述した例に限定されず、車両において取得可能な任意のパラメータを含むことができる。
【０１１６】
また、複数のニューラルネットワークモデルがサーバ２のストレージ装置２２に記憶されてもよい。例えば、異なる入力パラメータ及び出力パラメータを有する複数のニューラルネットワークモデルがサーバ２のストレージ装置２２に記憶されてもよい。この場合、車両から新たなモデルがサーバ２に送信されたとき、新たなモデルと同一の入力パラメータ及び出力パラメータを有する現在のモデルが新たなモデルと比較される。
【０１１７】
また、同一の入力パラメータ及び出力パラメータを有する複数のニューラルネットワークモデルがサーバ２のストレージ装置２２に記憶されてもよい。例えば、同一の入力パラメータ及び出力パラメータを有する複数のニューラルネットワークモデルは、車両の型式、入力パラメータ及び出力パラメータの実測値が取得された地域等によって分類される。この場合、車両から新たなモデルがサーバ２に送信されたとき、新たなモデルと対応する現在のモデルが新たなモデルと比較される。また、新たなモデルと対応する現在のモデルが複数存在する場合、複数の現在のモデルがそれぞれ新たなモデルと比較される。
【０１１８】
また、上述した実施形態は、任意に組み合わせて実施可能である。例えば、第二実施形態は第三実施形態と組合せ可能である。この場合、図７の制御ルーチンにおいて、ステップＳ３０７の代わりに図６のステップＳ２０６〜ステップＳ２０９が実行される。
【０１１９】
また、第二実施形態は第四実施形態と組合せ可能である。この場合、図８Ａ〜図８Ｃの制御ルーチンにおいて、図８ＣのステップＳ４１６の判定が肯定された後、ステップＳ４２０の代わりに図６のステップＳ２０７〜ステップＳ２０９が実行される。
【０１２０】
また、第三実施形態は第四実施形態と組合せ可能である。この場合、図７の制御ルーチンにおいて、ステップＳ３０２の判定が否定された後、ステップＳ３０３〜ステップＳ３０８の代わりに図８Ａ〜図８ＣのステップＳ４０２〜ステップＳ４２０が実行される。同様に、第二実施形態、第三実施形態及び第四実施形態も組合せ可能である。
【符号の説明】
【０１２１】
１    モデル集約システム
２    サーバ
２１    通信インターフェース
２２    ストレージ装置
２４    プロセッサ
３    車両
３０    電子制御ユニット（ＥＣＵ）
３６    通信モジュール
【図１】
2020144775.tif 000004
【図２】
2020144775.tif 000005
【図３】
2020144775.tif 000006
【図４】
2020144775.tif 000007
【図５】
2020144775.tif 000008
【図６】
2020144775.tif 000009
【図７】
2020144775.tif 000010
【図８Ａ】
2020144775.tif 000011
【図８Ｂ】
2020144775.tif 000012
【図８Ｃ】
2020144775.tif 000013