JP2022076257A - Machine learning system, vehicle, and server - Google Patents

Machine learning system, vehicle, and server Download PDF

Info

Publication number
JP2022076257A
JP2022076257A JP2020186591A JP2020186591A JP2022076257A JP 2022076257 A JP2022076257 A JP 2022076257A JP 2020186591 A JP2020186591 A JP 2020186591A JP 2020186591 A JP2020186591 A JP 2020186591A JP 2022076257 A JP2022076257 A JP 2022076257A
Authority
JP
Japan
Prior art keywords
learning
model
vehicle
machine learning
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020186591A
Other languages
Japanese (ja)
Inventor
大樹 横山
Daiki Yokoyama
亮 中林
Akira Nakabayashi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2020186591A priority Critical patent/JP2022076257A/en
Publication of JP2022076257A publication Critical patent/JP2022076257A/en
Pending legal-status Critical Current

Links

Images

Abstract

To reduce calculation load in a server due to machine learning.SOLUTION: A machine learning system 1 includes: a vehicle 2 having a machine learning model to be used for controlling a device mounted thereon; and a server 3 which can communicate with the vehicle. The vehicle includes: a pre-learning unit 145 which pre-learns values of some of model parameters on the basis of a pre-learning dataset; and a vehicle-side transmission unit 146 which transmits the pre-learned model parameter values to the server after the pre-learning is completed. The server includes: a learning unit 332 which executes machine learning on the model parameter values in a method different from the pre-learning by using the pre-learned model parameter values; and a server-side transmission unit 333 which transmits the machine-learned model parameter values to the vehicle. The vehicle controls the device with the machine learning model using the model parameter values transmitted from the server.SELECTED DRAWING: Figure 10

Description

本開示は、機械学習モデルを構成するモデルパラメータの値を機械学習する機械学習システム、機械学習モデルを有する車両、及び斯かる車両と通信可能なサーバに関する。 The present disclosure relates to a machine learning system for machine learning the values of model parameters constituting a machine learning model, a vehicle having a machine learning model, and a server capable of communicating with such a vehicle.

車両に関連する状態パラメータの値を取得すると共に、取得した状態パラメータの値を訓練データセットとしてその車両に特有の機械学習モデルを構成するモデルパラメータの値の機械学習を行うことが知られている(例えば、特許文献1)。特に、特許文献1には、車両において取得された状態パラメータの値がサーバに送信されると共に、サーバにおいて送信された状態パラメータの値に基づいて機械学習モデルを構成するモデルパラメータの値の機械学習が行われ、機械学習後のモデルパラメータの値が車両に送信されて、車両のモデルパラメータの値が更新されることが開示されている。 It is known to acquire the value of the state parameter related to the vehicle and to perform machine learning of the value of the model parameter constituting the machine learning model peculiar to the vehicle by using the acquired state parameter value as a training data set. (For example, Patent Document 1). In particular, in Patent Document 1, the value of the state parameter acquired in the vehicle is transmitted to the server, and the machine learning of the value of the model parameter constituting the machine learning model based on the value of the state parameter transmitted in the server. Is performed, the value of the model parameter after machine learning is transmitted to the vehicle, and the value of the model parameter of the vehicle is updated.

特許第6477951号公報Japanese Patent No. 6477951

ところで、サーバに複数の車両から状態パラメータの値が送信されて、サーバにおいて複数の車両の機械学習モデルについてモデルパラメータの値の機械学習が行われると、サーバにおける演算負荷が高くなる。一方で、機械学習モデルを構成するモデルパラメータの値の機械学習全てを各車両において行わせるためには、各車両の機械学習に用いる演算処理装置を大容量のものにする必要があり、各車両の製造コストが高くなる。 By the way, when the value of the state parameter is transmitted from a plurality of vehicles to the server and the machine learning of the value of the model parameter is performed for the machine learning model of the plurality of vehicles in the server, the calculation load on the server becomes high. On the other hand, in order for each vehicle to perform all machine learning of the values of the model parameters constituting the machine learning model, it is necessary to make the arithmetic processing device used for machine learning of each vehicle a large capacity, and each vehicle must have a large capacity. The manufacturing cost is high.

上記課題に鑑みて、本開示の目的は、サーバにおいて各車両の機械学習モデルを構成するモデルパラメータの値を機械学習させつつサーバにおける機械学習に伴う演算負荷を低減させることにある。 In view of the above problems, an object of the present disclosure is to reduce the calculation load associated with machine learning in the server while machine learning the values of the model parameters constituting the machine learning model of each vehicle in the server.

本開示の要旨は以下のとおりである。 The gist of this disclosure is as follows.

(1) 搭載された機器を制御するのに用いられる機械学習モデルを有する車両と、該車両と通信可能なサーバとを備え、該サーバにて前記機械学習モデルを構成するモデルパラメータの値を機械学習する、機械学習システムであって、
前記車両は、
前記機械学習モデルの入力パラメータの実測値を含む事前学習用データセットに基づいて、前記モデルパラメータのうちの一部の値を事前学習する事前学習部と、
前記事前学習が完了した後に、前記機械学習モデルの入力パラメータ及び出力パラメータの実測値を含む本学習用データセット並びに前記事前学習されたモデルパラメータの値を前記サーバに送信する車両側送信部と、を備え、
前記サーバは、
前記車両から受信した本学習用データセット及び前記事前学習されたモデルパラメータの値を用いて、前記事前学習とは異なる手法で前記機械学習モデルを構成する全ての前記モデルパラメータの値を本機械学習する本学習部と、
前記本機械学習されたモデルパラメータの値を前記車両に送信するサーバ側送信部と、を備え、
前記車両は前記サーバから送信されたモデルパラメータの値を用いた前記機械学習モデルにより前記機器を制御する、機械学習システム。
(2)前記サーバは、前記事前学習部において行われるべき事前学習の要求量を前記車両に送信する要求量送信部を更に備え、
前記事前学習部は、前記要求量が多いほど、前記モデルパラメータのうち該事前学習部によって機械学習されるモデルパラメータの数を多くする、上記(1)に記載の機械学習システム。
(3)前記機械学習モデルは複数の層を有するニューラルネットワークモデルであり、
前記事前学習部はオートエンコーダとして機能し、
前記事前学習部は、前記要求量に基づいて、前記オートエンコーダによって事前学習される層の数を変更する、上記(2)に記載の機械学習システム。
(4)前記サーバは、該サーバにおける演算負荷が高いほど、前記事前学習の要求量を大きくする、上記(2)又は(3)のいずれか1つに記載の機械学習システム。
(5)搭載された機器を制御するのに用いられる機械学習モデルを有し且つサーバと通信が可能な車両であって、
前記機械学習モデルの入力パラメータの実測値を含む事前学習用データセットに基づいて、前記機械学習モデルを構成するモデルパラメータのうちの一部の値を事前学習する事前学習部と、
前記事前学習が完了した後に、前記機械学習モデルの入力パラメータ及び出力パラメータの実測値を含む本学習用データセット及び前記事前学習されたモデルパラメータの値を前記サーバに送信する車両側送信部と、
前記車両から受信した本学習用データセット及び前記事前学習されたモデルパラメータの値を用いて、前記事前学習とは異なる手法で前記サーバによって本機械学習された、全ての前記モデルパラメータの値を、前記サーバから受信する車両側受信部と、
前記サーバから受信したモデルパラメータの値を使用した機械学習モデルを用いて前記機器を制御する制御部とを備える、車両。
(6)搭載された機器を制御するのに用いられる機械学習モデルを有する車両と通信可能であり、前記機械学習モデルを構成するモデルパラメータの値を機械学習する、サーバであって、
前記機械学習モデルの入力パラメータの実測値を含む事前学習用データセットに基づいて前記車両において事前学習された前記モデルパラメータのうちの一部の値と、前記機械学習モデルの入力パラメータ及び出力パラメータの実測値を含む本学習用データセットとを前記車両から受信する受信部と、
前記車両から受信した本学習用データセット及び前記事前学習されたモデルパラメータの値を用いて、前記事前学習とは異なる手法で全ての前記モデルパラメータの値を本機械学習する本学習部と、
前記本機械学習されたモデルパラメータの値を前記車両に送信するサーバ側送信部と、を備える、サーバ。
(1) A vehicle having a machine learning model used to control the mounted equipment and a server capable of communicating with the vehicle are provided, and the value of the model parameter constituting the machine learning model is set by the machine on the server. It ’s a machine learning system that learns.
The vehicle
A pre-learning unit that pre-learns some values of the model parameters based on a pre-learning data set including actual measurement values of the input parameters of the machine learning model.
After the pre-learning is completed, the vehicle-side transmission unit that transmits the data set for main learning including the measured values of the input parameters and the output parameters of the machine learning model and the values of the pre-learned model parameters to the server. And, with
The server
Using the data set for main learning received from the vehicle and the values of the pre-learned model parameters, the values of all the model parameters constituting the machine learning model by a method different from the pre-learning are used. This learning department for machine learning and
A server-side transmitter that transmits the value of the machine-learned model parameter to the vehicle is provided.
The vehicle is a machine learning system in which the device is controlled by the machine learning model using the values of model parameters transmitted from the server.
(2) The server further includes a request amount transmission unit that transmits a request amount of pre-learning to be performed in the pre-learning unit to the vehicle.
The machine learning system according to (1) above, wherein the pre-learning unit increases the number of model parameters machine-learned by the pre-learning unit among the model parameters as the required amount increases.
(3) The machine learning model is a neural network model having a plurality of layers.
The pre-learning unit functions as an autoencoder and
The machine learning system according to (2) above, wherein the pre-learning unit changes the number of layers pre-learned by the autoencoder based on the required amount.
(4) The machine learning system according to any one of (2) and (3) above, wherein the server increases the required amount of pre-learning as the computational load on the server increases.
(5) A vehicle that has a machine learning model used to control the installed equipment and can communicate with the server.
A pre-learning unit that pre-learns some values of the model parameters constituting the machine learning model based on a pre-learning data set including actual measurement values of input parameters of the machine learning model.
After the pre-learning is completed, the vehicle-side transmission unit that transmits the data set for main learning including the measured values of the input parameters and the output parameters of the machine learning model and the values of the pre-learned model parameters to the server. When,
The values of all the model parameters trained by the server by the server by a method different from the pre-learning using the data set for main learning received from the vehicle and the values of the pre-learned model parameters. With the vehicle-side receiver that receives from the server,
A vehicle including a control unit that controls the device using a machine learning model using the values of model parameters received from the server.
(6) A server capable of communicating with a vehicle having a machine learning model used to control an mounted device and machine learning the values of model parameters constituting the machine learning model.
A part of the model parameters pre-learned in the vehicle based on the pre-learning data set including the measured values of the input parameters of the machine learning model, and the input parameters and output parameters of the machine learning model. A receiver that receives the learning data set including the measured values from the vehicle, and
With the main learning unit that machine-learns all the values of the model parameters by a method different from the pre-learning using the data set for main learning received from the vehicle and the values of the pre-learned model parameters. ,
A server including a server-side transmission unit that transmits the value of the machine-learned model parameter to the vehicle.

本開示によれば、サーバにおいて各車両の機械学習モデルを構成するモデルパラメータの値を機械学習させつつサーバにおける機械学習に伴う演算負荷を低減させることができる。 According to the present disclosure, it is possible to reduce the calculation load associated with machine learning in the server while machine learning the values of the model parameters constituting the machine learning model of each vehicle in the server.

図1は、第一実施形態に係る機械学習システムの概略的な構成図である。FIG. 1 is a schematic configuration diagram of a machine learning system according to the first embodiment. 図2は、車両のハードウェア構成を概略的に示す図である。FIG. 2 is a diagram schematically showing a hardware configuration of a vehicle. 図3は、車両のプロセッサの機能ブロック図である。FIG. 3 is a functional block diagram of a vehicle processor. 図4は、サーバのハードウェア構成を概略的に示す図である。FIG. 4 is a diagram schematically showing the hardware configuration of the server. 図5は、サーバのプロセッサの機能ブロック図である。FIG. 5 is a functional block diagram of a server processor. 図6は、単純な構成を有するNNモデルの一例を示す。FIG. 6 shows an example of an NN model having a simple configuration. 図7は、事前学習に用いられるオートエンコーダモデルの一例を示す。FIG. 7 shows an example of an autoencoder model used for pre-learning. 図8は、事前学習に用いられるオートエンコーダモデルの一例を示す。FIG. 8 shows an example of an autoencoder model used for pre-learning. 図9は、機械学習システムによって行われる通常の機械学習における、学習処理の動作シーケンス図である。FIG. 9 is an operation sequence diagram of learning processing in normal machine learning performed by a machine learning system. 図10は、機械学習システムよって行われる異常時の機械学習における、学習処理の動作シーケンス図である。FIG. 10 is an operation sequence diagram of learning processing in machine learning at the time of abnormality performed by a machine learning system.

以下、図面を参照して実施形態について詳細に説明する。なお、以下の説明では、同様な構成要素には同一の参照番号を付す。 Hereinafter, embodiments will be described in detail with reference to the drawings. In the following description, similar components are given the same reference numbers.

<機械学習システムの構成>
まず、図1~図5を参照して、一つの実施形態に係る機械学習システム1について説明する。図1は、一つの実施形態に係る機械学習システム1の概略的な構成図である。機械学習システム1は、各車両に特有の機械学習モデルを、各車両の状態を表す複数の状態パラメータの値を含む訓練データセットを用いて機械学習させる。機械学習モデルは、車両に搭載された機器を制御するのに用いられる。
<Configuration of machine learning system>
First, the machine learning system 1 according to one embodiment will be described with reference to FIGS. 1 to 5. FIG. 1 is a schematic configuration diagram of a machine learning system 1 according to an embodiment. The machine learning system 1 trains a machine learning model peculiar to each vehicle by using a training data set including values of a plurality of state parameters representing the states of each vehicle. Machine learning models are used to control equipment mounted on vehicles.

図1に示したように、機械学習システム1は、通信可能な複数の車両2と、サーバ3とを備える。複数の車両2のそれぞれとサーバ3とは、光通信回線などで構成される通信ネットワーク4と、通信ネットワーク4にゲートウェイ(図示せず)を介して接続される無線基地局5とを介して、相互に通信可能に構成される。車両2と無線基地局5との通信は、任意の通信規格に準拠した通信である。 As shown in FIG. 1, the machine learning system 1 includes a plurality of communicable vehicles 2 and a server 3. Each of the plurality of vehicles 2 and the server 3 are connected to a communication network 4 composed of an optical communication line or the like via a radio base station 5 connected to the communication network 4 via a gateway (not shown). It is configured to be able to communicate with each other. The communication between the vehicle 2 and the radio base station 5 is a communication conforming to an arbitrary communication standard.

図2は、車両2のハードウェア構成を概略的に示す図である。図2に示したように、車両2は、電子制御ユニット(ECU)11を備える。ECU11は、車内通信インターフェース12と、記憶装置13と、プロセッサ14とを有する。車内通信インターフェース12及び記憶装置13は信号線を介してプロセッサ14に接続されている。なお、本実施形態では、車両2には、一つのECU11が設けられているが、機能毎に分かれた複数のECUが設けられてもよい。 FIG. 2 is a diagram schematically showing a hardware configuration of the vehicle 2. As shown in FIG. 2, the vehicle 2 includes an electronic control unit (ECU) 11. The ECU 11 has an in-vehicle communication interface 12, a storage device 13, and a processor 14. The in-vehicle communication interface 12 and the storage device 13 are connected to the processor 14 via a signal line. In the present embodiment, the vehicle 2 is provided with one ECU 11, but a plurality of ECUs divided for each function may be provided.

車内通信インターフェース12は、CAN(Controller Area Network)等の規格に準拠した車内ネットワーク15にECU11を接続するためのインターフェース回路を有する。ECU11は車内通信インターフェース12を介して他の車載機器と通信する。 The in-vehicle communication interface 12 has an interface circuit for connecting the ECU 11 to the in-vehicle network 15 conforming to a standard such as CAN (Controller Area Network). The ECU 11 communicates with other in-vehicle devices via the in-vehicle communication interface 12.

記憶装置13は、データを記憶する記憶部の一例である。記憶装置13は、例えば、揮発性の半導体メモリ(例えば、RAM)、不揮発性の半導体メモリ(例えば、ROM)、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)又は光記録媒体を備える。記憶装置13は、プロセッサ14において各種処理を実行するためのコンピュータプログラムや、プロセッサ14によって各種処理が実行されるときに使用される各種データ等を記憶する。したがって、記憶装置13は、各車両特有の機械学習モデルを記憶する。 The storage device 13 is an example of a storage unit that stores data. The storage device 13 includes, for example, a volatile semiconductor memory (for example, RAM), a non-volatile semiconductor memory (for example, ROM), a hard disk drive (HDD), a solid state drive (SSD), or an optical recording medium. The storage device 13 stores a computer program for executing various processes in the processor 14, various data used when various processes are executed by the processor 14, and the like. Therefore, the storage device 13 stores a machine learning model peculiar to each vehicle.

プロセッサ14は、一つ又は複数のCPU(Central Processing Unit)及びその周辺回路を有する。プロセッサ14は、更にGPU(Graphics Processing Unit)、又は論理演算ユニット若しくは数値演算ユニットのような演算回路を有していてもよい。プロセッサ14は、ECU11の記憶装置13に記憶されたコンピュータプログラムに基づいて、各種の演算処理を実行する。したがって、プロセッサ14は、機械学習モデルの入力パラメータの値が入力されると、機械学習モデルに従った演算処理を行って、出力パラメータの値を出力する。 The processor 14 has one or more CPUs (Central Processing Units) and peripheral circuits thereof. The processor 14 may further have a GPU (Graphics Processing Unit), or an arithmetic circuit such as a logical operation unit or a numerical operation unit. The processor 14 executes various arithmetic processes based on the computer program stored in the storage device 13 of the ECU 11. Therefore, when the value of the input parameter of the machine learning model is input, the processor 14 performs arithmetic processing according to the machine learning model and outputs the value of the output parameter.

図3は、車両2のプロセッサ14の機能ブロック図である。図3に示したように、プロセッサ14は、機械学習モデルを用いて車両2の制御機器22を制御する制御部141と、機械学習モデルの学習条件が成立しているか否かを判定する学習条件成否判定部142と、事前学習用データセット及び本学習用データセットを生成するデータセット生成部143と、サーバ3への機械学習の依頼を送信する学習依頼送信部144と、機械学習モデルを構成するモデルパラメータの一部の値を事前学習する事前学習部145と、事前学習されたモデルパラメータの値と機械学習モデルを構成するモデルパラメータの値の本機械学習に用いる本学習用データセットとをサーバ3に送信する車両側送信部146と、制御部141において用いられる機械学習モデルを更新するモデル更新部147と、サーバ3から様々なデータを受信する車両側受信部148とを備える。プロセッサ14が有するこれら機能ブロックは、例えば、プロセッサ14上で動作するコンピュータプログラムにより実現される機能モジュールである。或いは、プロセッサ14が有するこれら機能ブロックは、プロセッサ14に設けられる専用の演算回路であってもよい。車両2のプロセッサ14の各機能ブロックの詳細については後述する。 FIG. 3 is a functional block diagram of the processor 14 of the vehicle 2. As shown in FIG. 3, the processor 14 has a control unit 141 that controls the control device 22 of the vehicle 2 using the machine learning model, and learning conditions for determining whether or not the learning conditions of the machine learning model are satisfied. A machine learning model is configured by a success / failure determination unit 142, a data set generation unit 143 that generates a pre-learning data set and a main learning data set, and a learning request transmission unit 144 that transmits a machine learning request to the server 3. The pre-learning unit 145 that pre-learns a part of the values of the model parameters to be used, and the data set for the main learning used for the machine learning of the values of the pre-learned model parameters and the values of the model parameters constituting the machine learning model. It includes a vehicle-side transmission unit 146 that transmits to the server 3, a model update unit 147 that updates the machine learning model used in the control unit 141, and a vehicle-side reception unit 148 that receives various data from the server 3. These functional blocks included in the processor 14 are, for example, functional modules realized by a computer program running on the processor 14. Alternatively, these functional blocks included in the processor 14 may be a dedicated arithmetic circuit provided in the processor 14. Details of each functional block of the processor 14 of the vehicle 2 will be described later.

また、図2に示したように、車両2は、更に、車外通信モジュール21、複数の制御機器22及び複数のセンサ23を備える。車外通信モジュール21、制御機器22及びセンサ23は、車内ネットワーク15を介してECU11に接続される。 Further, as shown in FIG. 2, the vehicle 2 further includes an external communication module 21, a plurality of control devices 22, and a plurality of sensors 23. The out-of-vehicle communication module 21, the control device 22, and the sensor 23 are connected to the ECU 11 via the in-vehicle network 15.

車外通信モジュール21は、車外の機器と通信を行う通信部の一例である。車外通信モジュール21は、例えば、サーバ3と通信を行うための機器である。車外通信モジュール21は、例えば、データ通信モジュール(DCM:Data communication module)を含む。データ通信モジュールは無線基地局5及び通信ネットワーク4を介してサーバ3と通信する。 The out-of-vehicle communication module 21 is an example of a communication unit that communicates with an out-of-vehicle device. The out-of-vehicle communication module 21 is, for example, a device for communicating with the server 3. The out-of-vehicle communication module 21 includes, for example, a data communication module (DCM). The data communication module communicates with the server 3 via the radio base station 5 and the communication network 4.

制御機器22は、車両2に関する様々な制御を行う機器である。具体的には、制御機器22は、例えば、内燃機関の吸気通路に設けられたスロットル弁の開度を調整するスロットル弁の駆動アクチュエータ、内燃機関の燃焼室に燃料を供給するインジェクタ、燃焼室内の燃料に点火する点火プラグ、内燃機関のEGR率を制御するEGR弁の駆動アクチュエータ、空調装置のブロワ、空調装置の空気の流れを制御するエアミックスドアの駆動アクチュエータなどを含む。これら制御機器22は、車内ネットワーク15を介してECU11に接続され、ECU11からの駆動信号に応じて作動せしめられる。 The control device 22 is a device that performs various controls related to the vehicle 2. Specifically, the control device 22 includes, for example, a throttle valve drive actuator for adjusting the opening degree of the throttle valve provided in the intake passage of the internal combustion engine, an injector for supplying fuel to the combustion chamber of the internal combustion engine, and a combustion chamber. It includes an ignition plug that ignites fuel, an EGR valve drive actuator that controls the EGR rate of an internal combustion engine, a blower of an air conditioner, an air mix door drive actuator that controls an air flow of the air conditioner, and the like. These control devices 22 are connected to the ECU 11 via the in-vehicle network 15 and are activated in response to a drive signal from the ECU 11.

センサ23は、車両2に関する様々な状態パラメータの値(状態量)を検出する検出器の一例である。センサ23は、例えば、内燃機関に供給される吸入空気量を検出する空気量センサ、内燃機関のインジェクタからの燃料噴射圧を検出する噴射圧センサ、排気ガスの温度を検出する排気温度センサ、タッチパネルなどにおけるドライバの入力を検出する入力検出センサ、車両2の自己位置を検出する自己位置センサ(例えば、GPS)などを含む。さらに、センサ23は、例えば、車両2の周りの空気の温度(外気温度)を検出する外気温度センサ、車両2の周りの空気の湿度(外気湿度)を検出する外気湿度センサ、車両2の周りの大気圧を検出する大気圧センサ、車両2の室内の温度(車内温度)を検出する車内温度センサ、車両2の室内の湿度(車内湿度)を検出する車内湿度センサ、及び日射量を検出する日射センサなどを含む。これらセンサ23は、車内ネットワーク15を介してECU11に接続され、ECU11へ出力信号を送信する。 The sensor 23 is an example of a detector that detects values (state quantities) of various state parameters related to the vehicle 2. The sensor 23 is, for example, an air amount sensor that detects the amount of intake air supplied to the internal combustion engine, an injection pressure sensor that detects the fuel injection pressure from the injector of the internal combustion engine, an exhaust temperature sensor that detects the temperature of the exhaust gas, and a touch panel. It includes an input detection sensor that detects the input of the driver in the vehicle 2, a self-position sensor that detects the self-position of the vehicle 2, and the like (for example, GPS). Further, the sensor 23 is, for example, an outside air temperature sensor that detects the temperature of the air around the vehicle 2 (outside air temperature), an outside air humidity sensor that detects the humidity of the air around the vehicle 2 (outside air humidity), and the surroundings of the vehicle 2. An atmospheric pressure sensor that detects the atmospheric pressure in the vehicle, an in-vehicle temperature sensor that detects the indoor temperature (in-vehicle temperature) of the vehicle 2, an in-vehicle humidity sensor that detects the indoor humidity (in-vehicle humidity) of the vehicle 2, and a solar radiation amount detection. Including solar radiation sensor and so on. These sensors 23 are connected to the ECU 11 via the in-vehicle network 15 and transmit an output signal to the ECU 11.

サーバ3は、車両2の外部に設けられ、通信ネットワーク4及び無線基地局5を介して、走行中の車両2と通信を行う。サーバ3は、走行中の車両2から各種情報を受信する。 The server 3 is provided outside the vehicle 2 and communicates with the running vehicle 2 via the communication network 4 and the radio base station 5. The server 3 receives various information from the moving vehicle 2.

図4は、サーバ3のハードウェア構成を概略的に示す図である。サーバ3は、図4に示したように、外部通信モジュール31と、記憶装置32と、プロセッサ33とを備える。また、サーバ3は、キーボード及びマウスといった入力装置、及び、ディスプレイといった出力装置を有していてもよい。 FIG. 4 is a diagram schematically showing a hardware configuration of the server 3. As shown in FIG. 4, the server 3 includes an external communication module 31, a storage device 32, and a processor 33. Further, the server 3 may have an input device such as a keyboard and a mouse, and an output device such as a display.

外部通信モジュール31は、サーバ3外の機器と通信を行う通信部の一例である。外部通信モジュール31は、サーバ3を通信ネットワーク4に接続するためのインターフェース回路を備える。外部通信モジュール31は、通信ネットワーク4及び無線基地局5を介して、複数の車両2それぞれと通信可能に構成される。 The external communication module 31 is an example of a communication unit that communicates with a device outside the server 3. The external communication module 31 includes an interface circuit for connecting the server 3 to the communication network 4. The external communication module 31 is configured to be able to communicate with each of the plurality of vehicles 2 via the communication network 4 and the radio base station 5.

記憶装置32は、データを記憶する記憶部の一例である。サーバ3の記憶装置32も、揮発性の半導体メモリ(例えば、RAM)、不揮発性の半導体メモリ(例えば、ROM)、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)又は光記録媒体を備える。記憶装置32は、プロセッサ33によって各種処理を実行するためのコンピュータプログラムや、プロセッサ33によって各種処理が実行されるときに使用される各種データを記憶する。 The storage device 32 is an example of a storage unit that stores data. The storage device 32 of the server 3 also includes a volatile semiconductor memory (for example, RAM), a non-volatile semiconductor memory (for example, ROM), a hard disk drive (HDD), a solid state drive (SSD), or an optical recording medium. The storage device 32 stores a computer program for executing various processes by the processor 33 and various data used when various processes are executed by the processor 33.

プロセッサ33は、一つ又は複数のCPU及びその周辺回路を有する。プロセッサ33は、更にGPU、又は論理演算ユニット若しくは数値演算ユニットのような演算回路を有していてもよい。プロセッサ33は、サーバ3の記憶装置32に記憶されたコンピュータプログラムに基づいて、各種の演算処理を実行する。本実施形態では、サーバ3のプロセッサ33が、機械学習モデルを機械学習させる機械学習装置として機能する。 The processor 33 has one or more CPUs and peripheral circuits thereof. The processor 33 may further have a GPU, or an arithmetic circuit such as a logical operation unit or a numerical operation unit. The processor 33 executes various arithmetic processes based on the computer program stored in the storage device 32 of the server 3. In the present embodiment, the processor 33 of the server 3 functions as a machine learning device for machine learning a machine learning model.

図5は、サーバ3のプロセッサ33の機能ブロック図である。図5に示したように、プロセッサ33は、車両2の事前学習部145において行われるべき機械学習の要求量を車両2に送信する要求量送信部331と、機械学習モデルを構成する全てのモデルパラメータの値を本機械学習する本学習部332と、本機械学習された機械学習モデルを構成するモデルパラメータの値を車両2に送信するサーバ側送信部333と、車両2から様々なデータを受信するサーバ側受信部334とを備える。プロセッサ33が有するこれら機能ブロックは、例えば、プロセッサ33上で動作するコンピュータプログラムにより実現される機能モジュールである。或いは、プロセッサ33が有するこれら機能ブロックは、プロセッサ33に設けられる専用の演算回路であってもよい。サーバ3のプロセッサ33の各機能ブロックの詳細については後述する。 FIG. 5 is a functional block diagram of the processor 33 of the server 3. As shown in FIG. 5, the processor 33 includes a request amount transmission unit 331 that transmits a request amount of machine learning to be performed in the pre-learning unit 145 of the vehicle 2 to the vehicle 2, and all the models constituting the machine learning model. Various data are received from the main learning unit 332 that learns the value of the parameter by the machine learning unit 332, the server side transmission unit 333 that sends the value of the model parameter constituting the machine learning machine learning model to the vehicle 2, and the vehicle 2. A server-side receiving unit 334 is provided. These functional blocks included in the processor 33 are, for example, functional modules realized by a computer program running on the processor 33. Alternatively, these functional blocks included in the processor 33 may be a dedicated arithmetic circuit provided in the processor 33. Details of each functional block of the processor 33 of the server 3 will be described later.

<機械学習モデル>
本実施形態では、車両2の制御部141において、車両2に搭載された制御機器22を制御するにあたり、機械学習された機械学習モデルが用いられる。本実施形態では、機械学習モデルとして、ニューラルネットワークモデル(以下、「NNモデル」という)が用いられる。以下、図6を参照して、NNモデルの概要について説明する。図6は、単純な構成を有するNNモデルの一例を示す。
<Machine learning model>
In the present embodiment, a machine-learned machine learning model is used in the control unit 141 of the vehicle 2 to control the control device 22 mounted on the vehicle 2. In this embodiment, a neural network model (hereinafter referred to as "NN model") is used as a machine learning model. Hereinafter, an outline of the NN model will be described with reference to FIG. FIG. 6 shows an example of an NN model having a simple configuration.

図6における丸印は人工ニューロンを表す。人工ニューロンは、通常、ノード又はユニットと称される(本明細書では、「ノード」と称す)。図6において、L=1は入力層を示し、L=2及びL=3は隠れ層(又は中間層)を示し、L=4は出力層を示している。本実施形態では、隠れ層(L=2及びL=3)のノードの数は入力層(L=1)のノードの数よりも少なく、下位の隠れ層のノード数は上位の隠れ層のノード数よりも少ない(例えば、隠れ層(L=3)のノード数は隠れ層(L=2)のノード数よりも少ない)。 The circles in FIG. 6 represent artificial neurons. Artificial neurons are commonly referred to as nodes or units (referred to herein as "nodes"). In FIG. 6, L = 1 indicates an input layer, L = 2 and L = 3 indicate a hidden layer (or an intermediate layer), and L = 4 indicates an output layer. In the present embodiment, the number of nodes in the hidden layer (L = 2 and L = 3) is smaller than the number of nodes in the input layer (L = 1), and the number of nodes in the lower hidden layer is the number of nodes in the upper hidden layer. Less than the number (for example, the number of nodes in the hidden layer (L = 3) is less than the number of nodes in the hidden layer (L = 2)).

図6において、xm(m=1、2、・・・、M。図6に示した例ではM=4)は入力層(L=1)の各ノード及びそのノードからの出力値を示しており、yは出力層(L=4)のノード及びその出力値を示している。同様に、L=2の隠れ層におけるzk (L=2)(k=1、2、・・・、K(L=2)。図6に示した例ではK(L=2)=3)は隠れ層(L=2)の各ノード及びそのノードからの出力値を示しており、L=3の隠れ層におけるzk (L=3)(k=1、2、・・・、K(L=3)。図6に示した例ではK(L=3)=2)は隠れ層(L=3)の各ノード及びそのノードからの出力値を示している。 In FIG. 6, x m (m = 1, 2, ..., M. In the example shown in FIG. 6, M = 4) indicates each node of the input layer (L = 1) and the output value from the node. Y indicates a node of the output layer (L = 4) and its output value. Similarly, z k (L = 2) (k = 1, 2, ..., K (L = 2) in the hidden layer of L = 2. K (L = 2) = 3 in the example shown in FIG. ) Indicates each node of the hidden layer (L = 2) and the output value from that node, and z k (L = 3) (k = 1, 2, ..., K) in the hidden layer of L = 3. (L = 3) . In the example shown in FIG. 6, K (L = 3) = 2) indicates each node of the hidden layer (L = 3) and the output value from that node.

入力層の各ノードでは入力がそのまま出力される。一方、隠れ層(L=2)の各ノードには、入力層の各ノードの出力値xm(m=1、2、3、4)が入力され、隠れ層(L=2)の各ノードでは、それぞれ対応する重みw及びバイアスbを用いて総入力値uが算出される。例えば、図6において隠れ層(L=2)のzk (L=2)(k=1、2、3)で示される各ノードにおいて算出される総入力値uk (L=2)は、次式(1)のようになる。

Figure 2022076257000002
次いで、この総入力値uk (L=2)は活性化関数fにより変換され、隠れ層(L=2)のzk (L=2)で示されるノードから、出力値zk (L=2)(=f(uk (L=2)))として出力される。一方、隠れ層(L=3)の各ノードには、隠れ層(L=2)の各ノードの出力値zk (L=2) (k=1、2、3)が入力され、隠れ層(L=3)の各ノードでは、それぞれ対応する重みw及びバイアスbを用いて総入力値u(=Σz・w+b)が算出される。この総入力値uは同様に活性化関数により変換され、隠れ層(L=3)の各ノードから、出力値zk (L=3)(k=1、2)として出力される。活性化関数は例えばReLU関数σである。 The input is output as it is at each node of the input layer. On the other hand, the output value x m (m = 1, 2, 3, 4) of each node of the input layer is input to each node of the hidden layer (L = 2), and each node of the hidden layer (L = 2) is input. Then, the total input value u is calculated using the corresponding weights w and bias b, respectively. For example, in FIG. 6, the total input value uk (L = 2) calculated at each node represented by z k (L = 2) (k = 1, 2, 3) of the hidden layer (L = 2) is It becomes like the following equation (1).
Figure 2022076257000002
Next, this total input value u k (L = 2) is transformed by the activation function f, and the output value z k ( L = 2) is output from the node represented by z k (L = 2) of the hidden layer (L = 2). 2) It is output as (= f ( uk (L = 2) )). On the other hand, the output value z k (L = 2) (k = 1, 2, 3) of each node of the hidden layer (L = 2) is input to each node of the hidden layer (L = 3), and the hidden layer is input. At each node of (L = 3), the total input value u (= Σz · w + b) is calculated using the corresponding weight w and bias b, respectively. This total input value u is similarly converted by the activation function, and is output as an output value z k (L = 3) (k = 1, 2) from each node of the hidden layer (L = 3). The activation function is, for example, the ReLU function σ.

また、出力層(L=4)のノードには、隠れ層(L=3)の各ノードの出力値zk (L=3)(k=1、2)が入力され、出力層のノードでは、それぞれ対応する重みw及びバイアスbを用いて総入力値u(Σz・w+b)が算出され、又はそれぞれ対応する重みwのみを用いて総入力値u(Σz・w)が算出される。例えば、出力層のノードでは活性化関数として恒等関数が用いられる。この場合、出力層のノードにおいて算出された総入力値uが、そのまま出力値yとして出力層のノードから出力される。 Further, the output value z k (L = 3) (k = 1, 2) of each node of the hidden layer (L = 3) is input to the node of the output layer (L = 4), and the node of the output layer has the output value z k (L = 3) (k = 1, 2). , The total input value u (Σz · w + b) is calculated using the corresponding weights w and the bias b, respectively, or the total input value u (Σz · w) is calculated using only the corresponding weights w. For example, the node of the output layer uses an identity function as the activation function. In this case, the total input value u calculated in the node of the output layer is directly output from the node of the output layer as the output value y.

このようにNNモデルは、入力層と、隠れ層と、出力層とを備え、複数の入力パラメータの値が入力層から入力されると、入力パラメータに対応する一又は複数の出力パラメータの値を出力層から出力する。 As described above, the NN model includes an input layer, a hidden layer, and an output layer, and when the values of a plurality of input parameters are input from the input layer, the values of one or a plurality of output parameters corresponding to the input parameters are input. Output from the output layer.

本実施形態では、このような機械学習モデルとして、例えば外気温度、吸入空気量、燃料噴射量、燃料噴射時期、燃料噴射圧、EGR率を、入力パラメータの値として入力すると、排気ガスの温度を出力パラメータの値として出力するモデルが用いられる。車両2の制御部141では、センサ23によって検出された状態パラメータの値やECU11から制御機器22への制御指令値を入力パラメータの値として斯かる機械学習モデルに入力することによって、出力パラメータである排気ガスの温度が出力される。制御部141は、出力された排気ガスの温度に基づいて、内燃機関に関する制御機器22(例えば、スロットル弁の駆動アクチュエータ、インジェクタ、点火プラグなど)を制御する。ここで、排気ガスの温度を検出する排気温度センサには応答遅れがあるため、排気温度センサの出力に基づいて内燃機関の制御を行うと内燃機関を必ずしも適切に制御することができなかった。これに対して、機械学習モデルを用いた排気ガスの温度の算出には遅れが生じないため、機械学習モデルによって算出された排気ガスの温度を用いて内燃機関に関する制御機器22を制御することにより、内燃機関をより適切に制御することができる。 In the present embodiment, as such a machine learning model, for example, when the outside air temperature, the intake air amount, the fuel injection amount, the fuel injection timing, the fuel injection pressure, and the EGR rate are input as the values of the input parameters, the temperature of the exhaust gas is input. The model to be output is used as the value of the output parameter. The control unit 141 of the vehicle 2 inputs the value of the state parameter detected by the sensor 23 and the control command value from the ECU 11 to the control device 22 as the value of the input parameter into the machine learning model, and is an output parameter. The temperature of the exhaust gas is output. The control unit 141 controls a control device 22 (for example, a throttle valve drive actuator, an injector, a spark plug, etc.) related to the internal combustion engine based on the temperature of the output exhaust gas. Here, since the exhaust temperature sensor that detects the temperature of the exhaust gas has a response delay, if the internal combustion engine is controlled based on the output of the exhaust temperature sensor, the internal combustion engine cannot always be controlled appropriately. On the other hand, since there is no delay in calculating the exhaust gas temperature using the machine learning model, the control device 22 related to the internal combustion engine is controlled using the exhaust gas temperature calculated by the machine learning model. , The internal combustion engine can be controlled more appropriately.

或いは、このような機械学習モデルとして、例えば、外気温度、外気湿度、車内温度、車内湿度、日射量を入力パラメータの値として入力すると、空調装置の目標温度を出力パラメータの値として出力するモデルが用いられてもよい。この場合、車両2の制御部141では、センサ23によって検出された状態パラメータの値やECU11から制御機器22への制御指令値を入力パラメータの値として斯かる機械学習モデルに入力することによって、出力パラメータである空調装置の目標温度が出力される。ECU11は、車内温度が、機械学習モデルから出力された目標温度になるように、空調装置に関する制御機器22(例えば、空調機器のブロワ、エアミックスドアの駆動アクチュエータなど)を制御する。 Alternatively, as such a machine learning model, for example, when the outside air temperature, the outside air humidity, the vehicle interior temperature, the vehicle interior humidity, and the amount of solar radiation are input as input parameter values, a model that outputs the target temperature of the air conditioner as an output parameter value is available. It may be used. In this case, the control unit 141 of the vehicle 2 outputs by inputting the value of the state parameter detected by the sensor 23 and the control command value from the ECU 11 to the control device 22 into the machine learning model as the value of the input parameter. The target temperature of the air conditioner, which is a parameter, is output. The ECU 11 controls the control device 22 related to the air conditioner (for example, the blower of the air conditioner, the drive actuator of the air mix door, etc.) so that the temperature inside the vehicle becomes the target temperature output from the machine learning model.

なお、機械学習モデルとしては様々なモデルを用いることができる。したがって、入力パラメータとして、外気温度、外気湿度、大気圧、車内温度、車内湿度、日照量、吸入空気量、吸気温度、燃料噴射圧、燃料噴射時期、燃料噴射量、空燃比、点火時期、機関冷却水温度、過給圧といった、車両の状態を表す様々な状態パラメータが用いられる。また、出力パラメータとして、排気浄化触媒の温度、排気ガス中のNOxの濃度、機関出力トルク、車内湿度といった、車両の状態を表す様々な状態パラメータが用いられる。 Various models can be used as the machine learning model. Therefore, as input parameters, outside air temperature, outside air humidity, atmospheric pressure, inside car temperature, inside car humidity, sunshine amount, intake air amount, intake air temperature, fuel injection pressure, fuel injection timing, fuel injection amount, air fuel ratio, ignition timing, engine Various state parameters that represent the state of the vehicle, such as cooling water temperature and boost pressure, are used. Further, as output parameters, various state parameters representing the state of the vehicle such as the temperature of the exhaust purification catalyst, the concentration of NOx in the exhaust gas, the engine output torque, and the humidity inside the vehicle are used.

<機械学習モデルの基本的な学習>
次に、上述したような機械学習モデル(NNモデル)の機械学習について説明する。斯かる機械学習モデルの精度を向上させるためには、機械学習モデルを構成するモデルパラメータの値の機械学習(以下、「機械学習モデルの機械学習」ともいう)を行う必要がある。そこで、本実施形態では、サーバ3の本学習部332が機械学習モデルの機械学習を行う。具体的には、本学習部332の機械学習では、機械学習モデルに入力パラメータの値が入力されるとこれら入力パラメータの値に対応する適切な出力パラメータの値が機械学習モデルから出力されるように、機械学習モデルの全てのモデルパラメータ(NNモデルであれば、重みw、バイアスb等)の値が算出される。以下、車両2の事前学習部145で行われる機械学習(事前学習)と区別するために、サーバ3の本学習部332で行われる機械学習を、本機械学習と称する。以下、本学習部332において行われる、機械学習モデルの本機械学習の学習手法を簡単に説明する。
<Basic learning of machine learning model>
Next, the machine learning of the machine learning model (NN model) as described above will be described. In order to improve the accuracy of such a machine learning model, it is necessary to perform machine learning of the values of the model parameters constituting the machine learning model (hereinafter, also referred to as "machine learning of the machine learning model"). Therefore, in the present embodiment, the main learning unit 332 of the server 3 performs machine learning of the machine learning model. Specifically, in the machine learning of the learning unit 332, when the values of the input parameters are input to the machine learning model, the values of the appropriate output parameters corresponding to the values of these input parameters are output from the machine learning model. In addition, the values of all the model parameters of the machine learning model (weight w, bias b, etc. in the case of the NN model) are calculated. Hereinafter, the machine learning performed by the main learning unit 332 of the server 3 is referred to as the present machine learning in order to distinguish it from the machine learning (pre-learning) performed by the pre-learning unit 145 of the vehicle 2. Hereinafter, the learning method of the machine learning of the machine learning model performed in the learning unit 332 will be briefly described.

機械学習モデルの本機械学習では、状態パラメータの実測値を含む訓練データセット(以下、「本学習用データセット」という)が用いられる。本学習用データセットは、複数の入力パラメータの複数の実測値と、これら実測値に対応する少なくとも一つの出力パラメータの複数の実測値(正解データ)との組合せから成る。本実施形態では、入力パラメータの実測値及び出力パラメータの実測値は、車両2のセンサ23によって検出された値又はECU11から制御機器22への制御指令値である。また、本実施形態では、サーバ3にて機械学習モデルの本機械学習を行うにあたって、車両2からサーバ3へ本学習用データセットが送信される。なお、本学習用データセットは、入力パラメータの実測値及び出力パラメータの実測値に前処理(正規化、標準化等)を行ったものでもよい。 In this machine learning of a machine learning model, a training data set (hereinafter referred to as "data set for main learning") including actual measurement values of state parameters is used. This learning data set is composed of a combination of a plurality of actually measured values of a plurality of input parameters and a plurality of actually measured values (correct answer data) of at least one output parameter corresponding to these actually measured values. In the present embodiment, the actually measured values of the input parameters and the actually measured values of the output parameters are the values detected by the sensor 23 of the vehicle 2 or the control command values from the ECU 11 to the control device 22. Further, in the present embodiment, the data set for main learning is transmitted from the vehicle 2 to the server 3 when the machine learning of the machine learning model is performed on the server 3. The data set for learning may be obtained by performing preprocessing (normalization, standardization, etc.) on the measured values of the input parameters and the measured values of the output parameters.

サーバ3の本学習部332は、車両2から送信された本学習用データセットを用いて、機械学習モデルのモデルパラメータの値の機械学習を行う。機械学習モデルの機械学習にあたっては、本学習部332は、例えば、機械学習モデルの出力値と本学習用データセットに含まれる出力パラメータの実測値との差が小さくなるように、公知の誤差逆伝播法によって機械学習モデルにおけるモデルパラメータ(重みw及びバイアスb)の値を繰り返し更新する。この結果、機械学習モデルが学習され、学習済みの機械学習モデルが生成される。学習済み機械学習モデルを構成するモデルパラメータ(重みw、バイアスb等)の値は、サーバの記憶装置32に記憶され、サーバ3から車両2に送信される。 The main learning unit 332 of the server 3 performs machine learning of the value of the model parameter of the machine learning model by using the main learning data set transmitted from the vehicle 2. In machine learning of a machine learning model, the learning unit 332, for example, reverses a known error so that the difference between the output value of the machine learning model and the measured value of the output parameter included in the data set for this learning becomes small. The values of the model parameters (weight w and bias b) in the machine learning model are repeatedly updated by the propagation method. As a result, the machine learning model is trained and the trained machine learning model is generated. The values of the model parameters (weight w, bias b, etc.) constituting the trained machine learning model are stored in the storage device 32 of the server and transmitted from the server 3 to the vehicle 2.

<車両での事前学習>
ところで、上述したように、サーバ3において複数の車両2に関する機械学習モデルの機械学習が行われると、サーバ3における演算負荷が高くなり、サーバ3における演算処理の遅れなどが生じる。
<Pre-learning in a vehicle>
By the way, as described above, when machine learning of a machine learning model for a plurality of vehicles 2 is performed on the server 3, the calculation load on the server 3 becomes high, and the calculation processing on the server 3 is delayed.

また、既に機械学習済みの機械学習モデルを、各車両2において取得された実測値を含む訓練データセットを用いて更新する場合、機械学習によってモデルパラメータの値は基本的にそれほど大きくは変化しない。したがって、斯かる場合には機械学習モデルを構成するモデルパラメータは比較的早期に収束する。しかしながら、例えば、機械学習モデルの一部の入力パラメータの値を検出するセンサ23が故障したことや制御機器22やセンサ23を異なる種類のものに交換したことなどによって入力パラメータの値に異常が生じると、機械学習モデルを構成するモデルパラメータを異常の生じた値に合わせて再学習させる必要がある。この場合、機械学習によってモデルパラメータの値が大きく変化することになるため、機械学習モデルを構成するモデルパラメータは収束するのに時間がかる。この結果、斯かる場合には、サーバ3における演算負荷が高くなる。 Further, when the machine learning model that has already been machine-learned is updated by using the training data set including the actually measured values acquired in each vehicle 2, the value of the model parameter is basically not changed so much by machine learning. Therefore, in such a case, the model parameters constituting the machine learning model converge relatively early. However, for example, the sensor 23 that detects the value of a part of the input parameter of the machine learning model fails, or the control device 22 or the sensor 23 is replaced with a different type, so that the value of the input parameter becomes abnormal. And, it is necessary to relearn the model parameters that compose the machine learning model according to the values where the abnormality occurred. In this case, since the value of the model parameter changes greatly due to machine learning, it takes time for the model parameters constituting the machine learning model to converge. As a result, in such a case, the calculation load on the server 3 becomes high.

そこで、本実施形態では、サーバ3における演算負荷を低減させるために、機械学習モデルの一部の入力パラメータの値に異常が生じているような場合、すなわち機械学習モデルを構成するモデルパラメータの値を大きく変更して機械学習モデルを実質的に再構築する必要がある場合には、車両2において事前学習を行い、サーバ3では事前学習によって得られたモデルパラメータの値を初期値としてモデルパラメータの値を本機械学習する。以下では、斯かる学習手法を具体的に説明する。 Therefore, in the present embodiment, in order to reduce the calculation load on the server 3, when an abnormality occurs in the value of a part of the input parameters of the machine learning model, that is, the value of the model parameter constituting the machine learning model. When it is necessary to substantially reconstruct the machine learning model by making major changes, pre-learning is performed in the vehicle 2, and in the server 3, the value of the model parameter obtained by the pre-learning is used as the initial value of the model parameter. This machine learning the value. Hereinafter, such a learning method will be specifically described.

まず、車両2のプロセッサ14の事前学習部145において行われる事前学習について説明する。本実施形態では、事前学習部145はオートエンコーダとして機能する。以下、図7を参照して、オートエンコーダとして用いられるNNモデルs(オートエンコーダモデル)の概要について説明する。図7は、図6に示した機械学習モデルの入力層(L=1)と隠れ層(L=2)との間のモデルパラメータ(以下、「第1層のモデルパラメータ」ともいう)の値の事前学習に用いられるオートエンコーダモデルの一例を示す。 First, the pre-learning performed in the pre-learning unit 145 of the processor 14 of the vehicle 2 will be described. In this embodiment, the pre-learning unit 145 functions as an autoencoder. Hereinafter, the outline of the NN model s (autoencoder model) used as the autoencoder will be described with reference to FIG. 7. FIG. 7 shows the values of the model parameters (hereinafter, also referred to as “first layer model parameters”) between the input layer (L = 1) and the hidden layer (L = 2) of the machine learning model shown in FIG. An example of the autoencoder model used for the pre-learning of is shown.

図7においても丸印はノードを表しており、L=1は入力層、L=2は中間層、L=3は出力層を示している。オートエンコーダモデルにおける入力層(L=1)のノード数は、制御部141で用いられる機械学習モデル(NNモデル)における入力層(L=1)のノード数に一致する。また、オートエンコーダモデルにおける中間層(L=2)のノードの数は、機械学習モデルにおける隠れ層(L=2)のノード数に一致する。加えて、第1層のモデルパラメータの値の事前学習(すなわち、入力層(L=1)から中間層(L=2)の各ノードの出力値を算出するための重み及びバイアスの事前学習)を行う場合には、オートエンコーダモデルにおける出力層のノードの数は、入力層のノードの数に一致する。したがって、図6に示した機械学習モデルの第1層の事前学習に用いられるオートエンコーダモデルの入力層(L=1)は4つのノードを有し、中間層(L=2)は3つのノードを有し、出力層(L=3)は4つのノードを有する。なお、中間層(L=2)のノードの数は、基本的に入力層(L=1)のノードの数よりも少ない。 Also in FIG. 7, circles represent nodes, L = 1 indicates an input layer, L = 2 indicates an intermediate layer, and L = 3 indicates an output layer. The number of nodes in the input layer (L = 1) in the autoencoder model matches the number of nodes in the input layer (L = 1) in the machine learning model (NN model) used in the control unit 141. Further, the number of nodes in the intermediate layer (L = 2) in the autoencoder model matches the number of nodes in the hidden layer (L = 2) in the machine learning model. In addition, pre-learning of the values of the model parameters of the first layer (that is, pre-learning of weights and biases for calculating the output values of each node of the input layer (L = 1) to the intermediate layer (L = 2)). In this case, the number of nodes in the output layer in the autoencoder model matches the number of nodes in the input layer. Therefore, the input layer (L = 1) of the autoencoder model used for the pre-learning of the first layer of the machine learning model shown in FIG. 6 has four nodes, and the intermediate layer (L = 2) has three nodes. The output layer (L = 3) has four nodes. The number of nodes in the intermediate layer (L = 2) is basically smaller than the number of nodes in the input layer (L = 1).

図7においても、図6と同様に、上記式(1)を用いて中間層(L=2)の各ノードにおける総入力値uk (L=2)が算出され、この総入力値uk (L=2)を活性化関数fにより変換したものが、中間層(L=2)のzk (L=2)で示されるノードから出力値zk (L=2)(=f(uk (L=2)))として出力される。出力層(L=3)の各ノードには、中間層(L=2)の各ノードの出力値zk (L=2) (k=1、2、3)が入力され、出力層(L=3)の各ノードでは、それぞれ対応する重みw及びバイアスbを用いて総入力値u(=Σz・w+b)が算出される。この総入力値uは同様に活性化関数により変換され、出力層(L=3)の各ノードから、出力値yk (L=3)(k=1、2、・・・、M。図7に示した例ではM=4)として出力される。 In FIG. 7, as in FIG. 6, the total input value uk (L = 2) at each node of the intermediate layer (L = 2) is calculated using the above equation (1), and this total input value uk . (L = 2) converted by the activation function f is the output value z k (L = 2) (= f (u (u)) from the node represented by z k (L = 2) in the middle layer (L = 2). It is output as k (L = 2) )). The output value z k (L = 2) (k = 1, 2, 3) of each node of the intermediate layer (L = 2) is input to each node of the output layer (L = 3), and the output layer (L = 2) is input. At each node of = 3), the total input value u (= Σz · w + b) is calculated using the corresponding weight w and bias b, respectively. This total input value u is similarly converted by the activation function, and the output value y k (L = 3) (k = 1, 2, ..., M.) From each node of the output layer (L = 3). In the example shown in 7, it is output as M = 4).

事前学習部145における事前学習では、オートエンコーダモデルの入力層の各ノードに入力パラメータの値が入力されると、出力層の各ノードから出力される出力値が対応する入力パラメータの値に近づくように、オートエンコーダモデルの全てのモデルパラメータ(オードエンコーダモデルにおける重みw、バイアスb等)の値が算出される。 In the pre-learning in the pre-learning unit 145, when the value of the input parameter is input to each node of the input layer of the autoencoder model, the output value output from each node of the output layer approaches the value of the corresponding input parameter. In addition, the values of all the model parameters (weight w, bias b, etc. in the autoencoder model) of the autoencoder model are calculated.

事前学習では、本機械学習と同様に、状態パラメータの実測値を含む事前学習用データセットが用いられる。本実施形態では、事前学習用データセットは、複数の入力パラメータの複数の実測値の組み合わせから成る。本実施形態では、入力パラメータの実測値は、車両2のセンサ23によって検出された値又はECU11から制御機器22への制御指令値である。事前学習用データセットに用いられる複数の入力パラメータの複数の実測値の組み合わせは、本学習用データセットに用いられる複数の入力パラメータの複数の実測値の組み合わせと同一であってもよいし、異なっていてもよい。また、事前学習の態様によっては、事前学習用データセットは、入力パラメータの実測値に、出力パラメータの複数の実測値(正解データ)を組み合わせたものであってもよい。また、事前学習用データセットも、入力パラメータの実測値(及び出力パラメータの実測値)に前処理(正規化、標準化等)を行ったものでもよい。 In the pre-learning, as in the present machine learning, a pre-learning data set including the measured values of the state parameters is used. In this embodiment, the pre-learning data set consists of a combination of a plurality of measured values of a plurality of input parameters. In the present embodiment, the actually measured value of the input parameter is a value detected by the sensor 23 of the vehicle 2 or a control command value from the ECU 11 to the control device 22. The combination of the plurality of measured values of the plurality of input parameters used in the pre-training data set may be the same as or different from the combination of the plurality of measured values of the plurality of input parameters used in the main training data set. May be. Further, depending on the mode of pre-learning, the pre-learning data set may be a combination of the actually measured values of the input parameters and a plurality of actually measured values (correct answer data) of the output parameters. Further, the data set for pre-learning may also be one in which the actually measured values of the input parameters (and the actually measured values of the output parameters) are preprocessed (normalized, standardized, etc.).

車両2の事前学習部145は、車両2によって生成された事前学習用データセットを用いて、オートエンコーダモデルの機械学習を行う。オートエンコーダモデルの機械学習にあたっては、事前学習部145は、オートエンコーダモデルの出力値とオートエンコーダモデルの対応する入力値との差が小さくなるように、公知の誤差逆伝播法によってオートエンコーダモデルにおけるモデルパラメータ(重みw及びバイアスb)の値を繰り返し更新する。この結果、得られたモデルパラメータの値が、機械学習モデルでの学習を行う際のモデルパラメータの初期値として用いられる。図7に示したオートエンコーダモデルでは、入力層(L=1)から中間層(L=2)の各ノードの出力値を算出するための重み及びバイアスの値(第1層のモデルパラメータの値)が事前学習により算出され、算出された重み及びバイアスが、図6に示した機械学習モデルの入力層(L=1)から隠れ層(L=2)の各ノードの出力値を算出するための重み及びバイアスの初期値として用いられる。 The pre-learning unit 145 of the vehicle 2 performs machine learning of the autoencoder model using the pre-learning data set generated by the vehicle 2. In machine learning of the autoencoder model, the pre-learning unit 145 uses a known backpropagation method to reduce the difference between the output value of the autoencoder model and the corresponding input value of the autoencoder model. The values of the model parameters (weight w and bias b) are repeatedly updated. As a result, the value of the obtained model parameter is used as the initial value of the model parameter when learning with the machine learning model. In the auto-encoder model shown in FIG. 7, the weight and bias values for calculating the output values of each node of the input layer (L = 1) to the intermediate layer (L = 2) (values of the model parameters of the first layer). ) Is calculated by pre-learning, and the calculated weight and bias are used to calculate the output value of each node of the hidden layer (L = 2) from the input layer (L = 1) of the machine learning model shown in FIG. It is used as the initial value of the weight and bias of.

図8は、図6に示した機械学習モデルの隠れ層(L=2)と隠れ層(L=3)との間のモデルパラメータ(以下、「第2層のモデルパラメータ」ともいう)の値の事前学習に用いられるオートエンコーダモデルの一例を示す。図8に示したオートエンコーダモデルは、図7に示したオートエンコーダモデルによって第1層のモデルパラメータの値が事前学習された後に用いられる。 FIG. 8 shows the values of the model parameters (hereinafter, also referred to as “second layer model parameters”) between the hidden layer (L = 2) and the hidden layer (L = 3) of the machine learning model shown in FIG. An example of the autoencoder model used for the pre-learning of is shown. The autoencoder model shown in FIG. 8 is used after the values of the model parameters of the first layer are pre-learned by the autoencoder model shown in FIG. 7.

図8に示したオートエンコーダモデルでは、出力層(L=4)の各ノードから出力される出力値が、中間層(L=2)の各ノードの出力値に近づくように、オートエンコーダモデルの中間層(L=2)と中間層(L=3)との間のモデルパラメータの値及び中間層(L=3)と出力層(L=4)との間のモデルパラメータの値が算出される。 In the autoencoder model shown in FIG. 8, the output value of the autoencoder model is such that the output value output from each node of the output layer (L = 4) approaches the output value of each node of the intermediate layer (L = 2). The value of the model parameter between the intermediate layer (L = 2) and the intermediate layer (L = 3) and the value of the model parameter between the intermediate layer (L = 3) and the output layer (L = 4) are calculated. To.

車両2の事前学習部145は、図8に示したオートエンコーダモデルの機械学習を行う際には、車両2によって生成された事前学習用データセットと、図7に示したオートエンコーダモデルを用いた事前学習によって得られた第1層のモデルパラメータの値とを用いる。図8に示したオートエンコーダモデルの機械学習にあたっては、第1層のモデルパラメータの値として図7に示したオートエンコーダモデルを用いた事前学習によって得られた値が用いられ、事前学習用データセットに含まれる入力パラメータの値をオートエンコーダモデルの入力層に入力したときに、オートエンコーダモデルの出力値と中間層(L=2)の対応する出力値との差が小さくなるように、公知の誤差逆伝播法によってオートエンコーダモデルにおける第2層のモデルパラメータ(重みw及びバイアスb)の値を繰り返し更新する。この結果、得られた第2層のモデルパラメータの値が、機械学習モデルでの学習を行う際の第2層のモデルパラメータの初期値として用いられる。車両2の事前学習部145は、同様な手法によって、第2層よりも下層の多数の層のモデルパラメータの値の事前学習を行うことができる。 The pre-learning unit 145 of the vehicle 2 used the pre-learning data set generated by the vehicle 2 and the autoencoder model shown in FIG. 7 when performing machine learning of the autoencoder model shown in FIG. The values of the model parameters of the first layer obtained by the pre-learning are used. In the machine learning of the autoencoder model shown in FIG. 8, the value obtained by the pre-learning using the autoencoder model shown in FIG. 7 is used as the value of the model parameter of the first layer, and the data set for pre-learning is used. It is known that when the value of the input parameter included in is input to the input layer of the autoencoder model, the difference between the output value of the autoencoder model and the corresponding output value of the intermediate layer (L = 2) becomes small. The values of the model parameters (weight w and bias b) of the second layer in the autoencoder model are repeatedly updated by the error back propagation method. As a result, the obtained value of the model parameter of the second layer is used as the initial value of the model parameter of the second layer when learning with the machine learning model. The pre-learning unit 145 of the vehicle 2 can perform pre-learning of the values of the model parameters of a large number of layers below the second layer by the same method.

以上をまとめると、本実施形態によれば、車両2の事前学習部145により、機械学習モデルの実測値を含む事前学習用データセットに基づいて、機械学習モデルのモデルパラメータのうちの一部の値が事前学習によって算出される。事前学習部145は、第1層のモデルパラメータの値のみを事前学習してもよいし、第1層に加えて第2層以下の層のモデルパラメータの値を事前学習してもよい。 Summarizing the above, according to the present embodiment, the pre-learning unit 145 of the vehicle 2 uses a part of the model parameters of the machine learning model based on the pre-learning data set including the measured values of the machine learning model. The value is calculated by pre-learning. The pre-learning unit 145 may pre-learn only the values of the model parameters of the first layer, or may pre-learn the values of the model parameters of the second and lower layers in addition to the first layer.

なお、本実施形態では、事前学習部145は、オートエンコーダを用いて事前学習を行っているが、制約付きボルツマンマシン(Restricted Boltzmann Machine)など、他の手法によって事前学習を行ってもよい。しかしながら、事前学習部145における事前学習は、本学習部332によって行われる本機械学習とは異なる手法で行われることが必要である。 In the present embodiment, the pre-learning unit 145 performs pre-learning using an autoencoder, but pre-learning may be performed by another method such as a Restricted Boltzmann Machine. However, the pre-learning in the pre-learning unit 145 needs to be performed by a method different from the machine learning performed by the main learning unit 332.

<車両での事前学習を利用した学習>
次に、図9及び図10を参照して、車両2での事前学習及びサーバ3での本機械学習を含む、機械学習モデルの学習処理全体の流れについて説明する。本実施形態では、機械学習モデルを構成するモデルパラメータの値を定期的に学習する通常の機械学習と、上述したように入力パラメータの値に異常が生じているような場合に行われる異常時の機械学習との二つの機械学習が行われる。したがって、以下では、これら二つの機械学習それぞれの学習処理全体の流れについて説明する。
<Learning using prior learning in a vehicle>
Next, with reference to FIGS. 9 and 10, the flow of the entire learning process of the machine learning model including the pre-learning on the vehicle 2 and the machine learning on the server 3 will be described. In the present embodiment, normal machine learning that periodically learns the values of the model parameters constituting the machine learning model and the case of an abnormality performed when the values of the input parameters are abnormal as described above are performed. Two machine learnings, machine learning and machine learning, are performed. Therefore, in the following, the flow of the entire learning process of each of these two machine learnings will be described.

図9は、機械学習システム1によって行われる通常の機械学習における、学習処理の動作シーケンス図である。したがって、図9に示した学習処理は、車両2の機械学習モデルの入力パラメータの値の異常とは無関係に、定期的に行われる。 FIG. 9 is an operation sequence diagram of learning processing in normal machine learning performed by the machine learning system 1. Therefore, the learning process shown in FIG. 9 is periodically performed regardless of the abnormality of the input parameter value of the machine learning model of the vehicle 2.

車両2の学習条件成否判定部142は、定期的に、車両2の機械学習モデルの学習条件が成立しているか否かを判定する(ステップS11)。通常の機械学習は、例えば、一定期間毎、一定走行距離毎又は一定走行時間毎に行われる。したがって、学習条件成否判定部142は、前回の通常の機械学習から例えば一定期間が経過すると、通常の機械学習の学習条件が成立したと判定する。 The learning condition success / failure determination unit 142 of the vehicle 2 periodically determines whether or not the learning conditions of the machine learning model of the vehicle 2 are satisfied (step S11). Ordinary machine learning is performed, for example, every fixed period, every fixed mileage, or every fixed running time. Therefore, the learning condition success / failure determination unit 142 determines that the learning condition of the normal machine learning is satisfied, for example, after a certain period of time has elapsed from the previous normal machine learning.

通常の機械学習の学習条件が成立すると、車両2のデータセット生成部143は、本学習用データセットを作成する。データセット生成部143は、任意の期間中に車両2のセンサ23によって検出された検出値及び同期間中にECU11から制御機器22へ送信された制御指令値に基づいて、本学習用データセットを生成する。データセット生成部143は、機械学習の学習条件が成立した後に取得された検出値及び制御指令値に基づいて本学習用データセットを生成する。或いは、データセット生成部143は、機械学習の学習条件が成立する前から検出値及び制御指令値を記憶装置13に格納しておいて、機械学習の学習条件が成立した後に格納されていた検出値及び制御指令値に基づいて本学習用データセットを生成してもよい。また、データセット生成部143は、検出値及び制御指令値に前処理(正規化、標準化等)を行って本学習用データセットを生成してもよい。生成された本学習用データセットは、ECU11の記憶装置13に記憶される。 When the learning conditions of normal machine learning are satisfied, the data set generation unit 143 of the vehicle 2 creates the data set for the main learning. The data set generation unit 143 generates the data set for learning based on the detection value detected by the sensor 23 of the vehicle 2 during an arbitrary period and the control command value transmitted from the ECU 11 to the control device 22 during the same period. Generate. The data set generation unit 143 generates the present learning data set based on the detection value and the control command value acquired after the learning conditions of machine learning are satisfied. Alternatively, the data set generation unit 143 stores the detection value and the control command value in the storage device 13 before the machine learning learning condition is satisfied, and the detection stored after the machine learning learning condition is satisfied. The training data set may be generated based on the value and the control command value. Further, the data set generation unit 143 may generate the present learning data set by performing preprocessing (normalization, standardization, etc.) on the detected value and the control command value. The generated data set for learning is stored in the storage device 13 of the ECU 11.

本学習用データセットが生成されると、車両の車両側送信部146は、車外通信モジュール21を介して、データセット生成部143によって生成された本学習用データセットと、制御部141で用いられている機械学習モデルの現在のモデルパラメータの値をサーバ3に送信する(ステップS13)。 When the main learning data set is generated, the vehicle-side transmission unit 146 of the vehicle is used by the main learning data set generated by the data set generation unit 143 and the control unit 141 via the out-of-vehicle communication module 21. The value of the current model parameter of the machine learning model is transmitted to the server 3 (step S13).

サーバ3のサーバ側受信部334が車両2から本学習用データセットを受信すると、プロセッサ33の本学習部332は、図6を参照して説明した機械学習モデルの本機械学習を行う(ステップS14)。本学習部332は、通常の機械学習においては、本機械学習を行うにあたって、モデルパラメータの初期値として、車両2の制御部141で用いられている機械学習モデルの現在のモデルパラメータの値を用いる。本学習部332は、車両2から送信された本学習用データセットを用いて、機械学習モデルを構成する全てのモデルパラメータについて本機械学習を行う。 When the server-side receiving unit 334 of the server 3 receives the main learning data set from the vehicle 2, the main learning unit 332 of the processor 33 performs the main machine learning of the machine learning model described with reference to FIG. 6 (step S14). ). In normal machine learning, the learning unit 332 uses the value of the current model parameter of the machine learning model used in the control unit 141 of the vehicle 2 as the initial value of the model parameter in performing the machine learning. .. The learning unit 332 performs the machine learning for all the model parameters constituting the machine learning model by using the data set for the learning transmitted from the vehicle 2.

本学習部332によって機械学習モデルの本機械学習が完了すると、サーバ側送信部333は、外部通信モジュール31を介して、本学習部332による本機械学習によって得られた全てのモデルパラメータの値を車両2に送信する(ステップS15)。 When the machine learning of the machine learning model is completed by the learning unit 332, the server-side transmission unit 333 sets the values of all the model parameters obtained by the machine learning by the learning unit 332 via the external communication module 31. It is transmitted to the vehicle 2 (step S15).

車両2の車両側受信部148がサーバ3から車外通信モジュール21を介してモデルパラメータの値を受信すると、車両2のモデル更新部147は制御部141で用いられる機械学習モデルを構成するモデルパラメータの値を、サーバ3から受信した値に更新する(ステップS16)。その後、制御部141は、更新されたモデルパラメータの値を用いた機械学習モデルに基づいて制御機器22の制御を行う。 When the vehicle-side receiving unit 148 of the vehicle 2 receives the value of the model parameter from the server 3 via the vehicle external communication module 21, the model updating unit 147 of the vehicle 2 receives the model parameter values constituting the machine learning model used by the control unit 141. The value is updated to the value received from the server 3 (step S16). After that, the control unit 141 controls the control device 22 based on the machine learning model using the updated model parameter values.

図10は、機械学習システム1よって行われる異常時の機械学習における、学習処理の動作シーケンス図である。したがって、図10に示した学習処理は、車両2の機械学習モデルの一部の入力パラメータの値に異常が生じていて機械学習モデルを実質的に再構築することが必要な場合などに実行される。 FIG. 10 is an operation sequence diagram of learning processing in machine learning at the time of abnormality performed by the machine learning system 1. Therefore, the learning process shown in FIG. 10 is executed when an abnormality has occurred in the values of some input parameters of the machine learning model of the vehicle 2 and it is necessary to substantially reconstruct the machine learning model. To.

車両2の学習条件成否判定部142は、定期的に、車両2の機械学習モデルの学習条件が成立しているか否かを判定する(ステップS21)。異常時の機械学習は、例えば、機械学習モデルの入力パラメータとして指令値が用いられる制御機器22や、機械学習モデルの入力パラメータの値を検出するセンサ23に何らかの異常が生じているような場合に行われる。したがって、学習条件成否判定部142は、斯かる制御機器22やセンサ23に異常が生じている場合に、異常時の機械学習の学習条件が成立したと判定する。具体的には、例えば、自己診断機能(On-board diagnosis)により斯かる制御機器22やセンサ23に異常が生じていると判定された場合に、異常時の機械学習の学習条件が成立する。異常時の機械学習の学習条件が成立した場合、車両2の学習依頼送信部144は、車外通信モジュール21を介してサーバ3への機械学習の依頼を送信する(ステップS22)。 The learning condition success / failure determination unit 142 of the vehicle 2 periodically determines whether or not the learning conditions of the machine learning model of the vehicle 2 are satisfied (step S21). Machine learning at the time of abnormality is, for example, when some abnormality has occurred in the control device 22 in which the command value is used as the input parameter of the machine learning model or the sensor 23 for detecting the value of the input parameter of the machine learning model. Will be done. Therefore, when the control device 22 or the sensor 23 has an abnormality, the learning condition success / failure determination unit 142 determines that the learning condition for machine learning at the time of the abnormality is satisfied. Specifically, for example, when it is determined by the self-diagnosis function (On-board diagnosis) that such an abnormality has occurred in the control device 22 or the sensor 23, the learning condition of machine learning at the time of abnormality is satisfied. When the learning condition for machine learning at the time of abnormality is satisfied, the learning request transmission unit 144 of the vehicle 2 transmits a machine learning request to the server 3 via the external communication module 21 (step S22).

サーバ3のサーバ側受信部334が、車両2から外部通信モジュール31を介して機械学習の依頼を受信すると、プロセッサ33の要求量送信部331が、車両2の事前学習部145において行われるべき事前学習の要求量を算出し(ステップS23)、算出された要求量を車両2に送信する(ステップS24)。 When the server-side receiving unit 334 of the server 3 receives a machine learning request from the vehicle 2 via the external communication module 31, the request amount transmitting unit 331 of the processor 33 should be performed in the pre-learning unit 145 of the vehicle 2. The learning request amount is calculated (step S23), and the calculated request amount is transmitted to the vehicle 2 (step S24).

上述したように、車両2の事前学習部145は、第1層のモデルパラメータの値のみを事前学習することもできるし、第1層から第2層以降の任意の層までのモデルパラメータの値を事前学習することもできる。そして、事前学習される層の数が多くなるほど車両2における演算負荷が高くなる。その一方で、事前学習される層の数が多くなるほどモデルパラメータの初期値が適切な値になっていることから、本機械学習においてモデルパラメータの値が早期に収束し易くなる。したがって、サーバ3での本機械学習における演算負荷が低くなる。 As described above, the pre-learning unit 145 of the vehicle 2 can pre-learn only the values of the model parameters of the first layer, or the values of the model parameters from the first layer to any layer after the second layer. Can also be pre-learned. Then, as the number of layers to be pre-learned increases, the calculation load on the vehicle 2 increases. On the other hand, as the number of layers to be pre-learned increases, the initial value of the model parameter becomes an appropriate value, so that the value of the model parameter tends to converge at an early stage in this machine learning. Therefore, the calculation load in the machine learning on the server 3 is reduced.

上述したように、サーバ3において複数の車両2に関する機械学習モデルの機械学習が同時に行われると、サーバ3における演算負荷が高くなる。このようにサーバ3における演算負荷が高いときには、サーバ3における演算量をできるだけ減らすために、車両2においてできる限り多くの層について事前学習が行われていることが好ましい。一方、サーバ3における演算負荷がそれほど高くないときには、サーバ3における演算量をそれほど減らす必要がないことから、車両2では少数の層のみについて事前学習を行えばよい。 As described above, when machine learning of a machine learning model for a plurality of vehicles 2 is performed simultaneously on the server 3, the calculation load on the server 3 becomes high. When the calculation load on the server 3 is high as described above, it is preferable that pre-learning is performed on as many layers as possible in the vehicle 2 in order to reduce the calculation amount on the server 3 as much as possible. On the other hand, when the calculation load on the server 3 is not so high, it is not necessary to reduce the calculation amount on the server 3 so much. Therefore, in the vehicle 2, only a small number of layers need to be pre-learned.

そこで、サーバ3の要求量送信部331は、サーバ3のプロセッサ33における現在の演算負荷を公知の方法で算出すると共に、算出された演算負荷に応じて、車両2で行われる事前学習への要求量を決定する。算出されたプロセッサ33の現在の演算負荷と事前学習の要求量との関係は予め決められており、算出された演算負荷が高いほど、事前学習の要求量が大きく設定される。サーバ3の要求量送信部331は、外部通信モジュール31を介して車両2への事前学習の要求量を送信する。
Therefore, the request amount transmission unit 331 of the server 3 calculates the current calculation load in the processor 33 of the server 3 by a known method, and requests the pre-learning performed in the vehicle 2 according to the calculated calculation load. Determine the amount. The relationship between the calculated current calculation load of the processor 33 and the required amount of pre-learning is predetermined, and the higher the calculated calculation load, the larger the required amount of pre-learning is set. The request amount transmission unit 331 of the server 3 transmits the request amount of the pre-learning to the vehicle 2 via the external communication module 31.

車両2の車両側受信部148がサーバ3から車外通信モジュール21を介して事前学習の要求量を受信すると、車両2のデータセット生成部143は、ステップS12と同様に本学習用データセットを作成し、加えて事前学習用データセットを生成する(ステップS25)。なお、データセット生成部143は、事前学習の要求量を受信する前からこれらデータセットの生成を開始してもよい。 When the vehicle-side receiving unit 148 of the vehicle 2 receives the pre-learning request amount from the server 3 via the external communication module 21, the data set generation unit 143 of the vehicle 2 creates the main learning data set in the same manner as in step S12. In addition, a pre-learning data set is generated (step S25). The data set generation unit 143 may start the generation of these data sets before receiving the pre-learning request amount.

事前学習用データセットは、任意の期間中に車両2のセンサ23によって検出された値又は同期間中にECU11から制御機器22へ送信された制御指令値に基づいて、データセット生成部143によって生成される。生成された両データセットは、ECU11の記憶装置13に記憶される。 The data set for pre-learning is generated by the data set generation unit 143 based on the value detected by the sensor 23 of the vehicle 2 during an arbitrary period or the control command value transmitted from the ECU 11 to the control device 22 during the same period. Will be done. Both generated data sets are stored in the storage device 13 of the ECU 11.

事前学習用データセットが生成されると、車両2の事前学習部145は図7及び図8を参照して説明した機械学習モデルの事前学習を行う(ステップS26)。事前学習部145は、データセット生成部143によって生成されて記憶装置13に記憶されている事前学習用データセットを用いて事前学習を行い、機械学習モデルを構成するモデルパラメータのうちの一部の値を出力する。 When the pre-learning data set is generated, the pre-learning unit 145 of the vehicle 2 performs pre-learning of the machine learning model described with reference to FIGS. 7 and 8 (step S26). The pre-learning unit 145 performs pre-learning using the pre-learning data set generated by the data set generation unit 143 and stored in the storage device 13, and is a part of the model parameters constituting the machine learning model. Output the value.

事前学習部145は、上述したようなオートエンコーダモデルを用いて、事前学習を行う。本実施形態では、事前学習部145は、事前学習の要求量に基づいて、オートエンコーダモデルを用いて事前学習される層の数を変更する。換言すると、事前学習部145は、事前学習の要求量に基づいて、事前学習されるモデルパラメータの数を変更する。具体的には、事前学習部145は、事前学習の要求量が多いほど、オートエンコーダモデルを用いて事前学習される層の数を多くし、したがって機械学習モデルのモデルパラメータのうち事前学習されるモデルパラメータの数を多くする。したがって、事前学習部145は、事前学習の要求量が小さいときには、例えば、第1層のモデルパラメータの値のみの事前学習を行う。一方、事前学習部145は、事前学習の要求量が大きいときには、例えば、多数の層のモデルパラメータの値の事前学習を行う。 The pre-learning unit 145 performs pre-learning using the autoencoder model as described above. In the present embodiment, the pre-learning unit 145 changes the number of layers to be pre-learned using the autoencoder model based on the pre-learning request amount. In other words, the pre-learning unit 145 changes the number of pre-learned model parameters based on the pre-learning requirement. Specifically, the pre-learning unit 145 increases the number of layers to be pre-learned using the auto-encoder model as the amount of pre-learning required increases, and therefore the pre-learning unit 145 is pre-learned among the model parameters of the machine learning model. Increase the number of model parameters. Therefore, when the required amount of pre-learning is small, the pre-learning unit 145 performs pre-learning only for the value of the model parameter of the first layer, for example. On the other hand, when the pre-learning request amount is large, the pre-learning unit 145 performs pre-learning of the values of the model parameters of a large number of layers, for example.

なお、事前学習部145は、事前学習の要求量に基づいて、事前学習される層の数以外の学習条件を変更してもよい。例えば、事前学習部145は、事前学習の要求量に応じて、事前学習における更新回数(イテレーションの回数)を変更してもよい。基本的には事前学習における更新回数が増えるほど、モデルパラメータの値が適切な値に収束するものの、事前学習部145における演算負荷が増大する。この場合、事前学習部145は、事前学習の要求量が大きいほど事前学習における更新回数が増大される。 The pre-learning unit 145 may change the learning conditions other than the number of layers to be pre-learned based on the required amount of pre-learning. For example, the pre-learning unit 145 may change the number of updates (the number of iterations) in the pre-learning according to the required amount of the pre-learning. Basically, as the number of updates in the pre-learning increases, the value of the model parameter converges to an appropriate value, but the calculation load in the pre-learning unit 145 increases. In this case, the pre-learning unit 145 increases the number of updates in the pre-learning as the demand for pre-learning increases.

事前学習部145での事前学習が完了すると、車両2の車両側送信部146は、車外通信モジュール21を介して、事前学習部145による事前学習によって得られたモデルパラメータの値及び本学習用データセットをサーバ3に送信する(ステップS27)。 When the pre-learning in the pre-learning unit 145 is completed, the vehicle-side transmission unit 146 of the vehicle 2 transmits the values of the model parameters and the data for the main learning obtained by the pre-learning by the pre-learning unit 145 via the external communication module 21. The set is transmitted to the server 3 (step S27).

サーバ3のサーバ側受信部334が車両2からモデルパラメータの値及び本学習用データセットを受信すると、プロセッサ33の本学習部332は、図6を参照して説明した機械学習モデルの本機械学習を行う(ステップS28)。本学習部332は、異常時の機械学習においては、機械学習モデルの本機械学習を行うにあたって、一部のモデルパラメータの初期値として、事前学習によって得られたモデルパラメータの値を用いる。また、本学習部332は、残りのモデルパラメータの初期値として、Xavierの初期値やHeの初期値といった任意の公知の初期値を用いる。或いは、本学習部332は、残りのモデルパラメータの初期値として、車両2の機械学習モデルの対応するモデルパラメータの現在の値を用いてもよい。本学習部332は、車両2から送信された本学習用データセットを用いて、機械学習モデルを構成する全てのモデルパラメータについて本機械学習を行う。 When the server-side receiving unit 334 of the server 3 receives the value of the model parameter and the data set for main learning from the vehicle 2, the main learning unit 332 of the processor 33 uses the machine learning of the machine learning model described with reference to FIG. (Step S28). In the machine learning at the time of abnormality, the learning unit 332 uses the value of the model parameter obtained by the pre-learning as the initial value of some model parameters in performing the machine learning of the machine learning model. Further, the learning unit 332 uses any known initial value such as the initial value of Xavier and the initial value of He as the initial value of the remaining model parameters. Alternatively, the learning unit 332 may use the current value of the corresponding model parameter of the machine learning model of the vehicle 2 as the initial value of the remaining model parameters. The learning unit 332 performs the machine learning for all the model parameters constituting the machine learning model by using the data set for the learning transmitted from the vehicle 2.

本学習部332によって機械学習モデルの本機械学習が完了すると、サーバ側送信部333は、ステップS15と同様に、本機械学習によって得られた全てのモデルパラメータの値を車両2に送信する(ステップS29)。車両2の車両側受信部148がサーバ3からモデルパラメータの値を受信すると、車両2のモデル更新部147は、ステップS16と同様に、制御部141で用いられる機械学習モデルを構成するモデルパラメータの値を、サーバ3から受信した値に更新する(ステップS30)。その後、制御部141は、更新されたモデルパラメータの値を用いた機械学習モデルに基づいて制御機器22の制御を行う。 When the machine learning of the machine learning model is completed by the learning unit 332, the server-side transmission unit 333 transmits the values of all the model parameters obtained by the machine learning to the vehicle 2 as in step S15 (step). S29). When the vehicle-side receiving unit 148 of the vehicle 2 receives the value of the model parameter from the server 3, the model updating unit 147 of the vehicle 2 has the model parameter of the model parameter constituting the machine learning model used by the control unit 141, as in step S16. The value is updated to the value received from the server 3 (step S30). After that, the control unit 141 controls the control device 22 based on the machine learning model using the updated model parameter values.

<効果及び変形例>
上記実施形態に係る機械学習システムによれば、センサ23の故障などによって入力パラメータの値に異常が生じて機械学習モデルを実質的に再構築することが必要な場合に、最初に車両2において事前学習が行われ、その後、事前学習されたモデルパラメータの値を初期値としてサーバ3において本機械学習が行われる。車両2において事前学習をしておくことによって、本機械学習にてモデルパラメータの値が早期に収束し易くなり、よってサーバ3における演算負荷を低減することができる。
<Effects and variants>
According to the machine learning system according to the above embodiment, when an abnormality occurs in the value of the input parameter due to a failure of the sensor 23 or the like and it is necessary to substantially reconstruct the machine learning model, the vehicle 2 is first preliminarily used. Training is performed, and then the machine learning is performed on the server 3 with the pre-learned model parameter values as initial values. By performing the pre-learning in the vehicle 2, the values of the model parameters are likely to converge at an early stage in this machine learning, and thus the calculation load on the server 3 can be reduced.

特に、上記実施形態では、サーバ3における現在の演算負荷が高いほど事前学習されるモデルパラメータの数が多くなり、よってその車両2用の機械学習モデルのモデルパラメータの値を本機械学習するのに必要な演算負荷が低くなる。これにより、サーバ3における演算負荷が過剰の増大することが抑制される。 In particular, in the above embodiment, the higher the current computing load on the server 3, the larger the number of model parameters to be pre-learned, so that the value of the model parameter of the machine learning model for the vehicle 2 is machine-learned. The required computing load is reduced. As a result, it is possible to prevent the calculation load on the server 3 from increasing excessively.

なお、上記実施形態では、事前学習部145は、サーバ3からの要求量に基づいて事前学習されるモデルパラメータの数を変更している。しかしながら、事前学習部145は、常に一定数のモデルパラメータの値を事前学習してもよい。この場合には、車両2はサーバ3に学習依頼を送信する必要はなく、また、サーバ3も車両2に事前学習の要求量を送信する必要はない。 In the above embodiment, the pre-learning unit 145 changes the number of model parameters to be pre-learned based on the amount requested from the server 3. However, the pre-learning unit 145 may always pre-learn the values of a certain number of model parameters. In this case, the vehicle 2 does not need to send the learning request to the server 3, and the server 3 also does not need to send the pre-learning request amount to the vehicle 2.

また、上記実施形態では、異常時の機械学習を行う際には、車両2にて必ず事前学習が行われている。しかしながら、例えばサーバ3における現在の演算負荷が極めて低いような場合には、車両2にて事前学習を行わなくてもよい。この場合、サーバ3は、図10のステップS24において事前学習の要求量をゼロとして車両2に送信し、車両2は図10のステップS27において本学習用データセットのみをサーバ3に送信する。 Further, in the above embodiment, when the machine learning at the time of abnormality is performed, the vehicle 2 always performs the pre-learning. However, for example, when the current calculation load on the server 3 is extremely low, it is not necessary to perform pre-learning on the vehicle 2. In this case, the server 3 transmits to the vehicle 2 with the pre-learning request amount set to zero in step S24 of FIG. 10, and the vehicle 2 transmits only the main learning data set to the server 3 in step S27 of FIG.

以上、本発明に係る好適な実施形態を説明したが、本発明はこれら実施形態に限定されるものではなく、特許請求の範囲の記載内で様々な修正及び変更を施すことができる。 Although the preferred embodiments of the present invention have been described above, the present invention is not limited to these embodiments, and various modifications and modifications can be made within the scope of the claims.

1 機械学習システム
2 車両
3 サーバ
11 ECU
13 記憶装置
14 プロセッサ
22 制御機器
23 センサ
32 記憶装置
33 プロセッサ
1 Machine learning system 2 Vehicle 3 Server 11 ECU
13 Storage device 14 Processor 22 Control device 23 Sensor 32 Storage device 33 Processor

Claims (6)

搭載された機器を制御するのに用いられる機械学習モデルを有する車両と、該車両と通信可能なサーバとを備え、該サーバにて前記機械学習モデルを構成するモデルパラメータの値を機械学習する、機械学習システムであって、
前記車両は、
前記機械学習モデルの入力パラメータの実測値を含む事前学習用データセットに基づいて、前記モデルパラメータのうちの一部の値を事前学習する事前学習部と、
前記事前学習が完了した後に、前記機械学習モデルの入力パラメータ及び出力パラメータの実測値を含む本学習用データセット並びに前記事前学習されたモデルパラメータの値を前記サーバに送信する車両側送信部と、を備え、
前記サーバは、
前記車両から受信した本学習用データセット及び前記事前学習されたモデルパラメータの値を用いて、前記事前学習とは異なる手法で前記機械学習モデルを構成する全ての前記モデルパラメータの値を本機械学習する本学習部と、
前記本機械学習されたモデルパラメータの値を前記車両に送信するサーバ側送信部と、を備え、
前記車両は前記サーバから送信されたモデルパラメータの値を用いた前記機械学習モデルにより前記機器を制御する、機械学習システム。
A vehicle having a machine learning model used to control the mounted equipment and a server capable of communicating with the vehicle are provided, and the values of model parameters constituting the machine learning model are machine-learned by the server. It ’s a machine learning system.
The vehicle
A pre-learning unit that pre-learns some values of the model parameters based on a pre-learning data set including actual measurement values of the input parameters of the machine learning model.
After the pre-learning is completed, the vehicle-side transmission unit that transmits the data set for main learning including the measured values of the input parameters and the output parameters of the machine learning model and the values of the pre-learned model parameters to the server. And, with
The server
Using the data set for main learning received from the vehicle and the values of the pre-learned model parameters, the values of all the model parameters constituting the machine learning model by a method different from the pre-learning are used. This learning department for machine learning and
A server-side transmitter that transmits the value of the machine-learned model parameter to the vehicle is provided.
The vehicle is a machine learning system in which the device is controlled by the machine learning model using the values of model parameters transmitted from the server.
前記サーバは、前記事前学習部において行われるべき事前学習の要求量を前記車両に送信する要求量送信部を更に備え、
前記事前学習部は、前記要求量が多いほど、前記モデルパラメータのうち該事前学習部によって機械学習されるモデルパラメータの数を多くする、請求項1に記載の機械学習システム。
The server further includes a request amount transmission unit that transmits a request amount of pre-learning to be performed in the pre-learning unit to the vehicle.
The machine learning system according to claim 1, wherein the pre-learning unit increases the number of model parameters machine-learned by the pre-learning unit among the model parameters as the required amount increases.
前記機械学習モデルは複数の層を有するニューラルネットワークモデルであり、
前記事前学習部はオートエンコーダとして機能し、
前記事前学習部は、前記要求量に基づいて、前記オートエンコーダによって事前学習される層の数を変更する、請求項2に記載の機械学習システム。
The machine learning model is a neural network model having a plurality of layers.
The pre-learning unit functions as an autoencoder and
The machine learning system according to claim 2, wherein the pre-learning unit changes the number of layers pre-learned by the autoencoder based on the required amount.
前記サーバは、該サーバにおける演算負荷が高いほど、前記事前学習の要求量を大きくする、請求項2又は3のいずれか1項に記載の機械学習システム。 The machine learning system according to claim 2, wherein the server increases the required amount of pre-learning as the calculation load on the server increases. 搭載された機器を制御するのに用いられる機械学習モデルを有し且つサーバと通信が可能な車両であって、
前記機械学習モデルの入力パラメータの実測値を含む事前学習用データセットに基づいて、前記機械学習モデルを構成するモデルパラメータのうちの一部の値を事前学習する事前学習部と、
前記事前学習が完了した後に、前記機械学習モデルの入力パラメータ及び出力パラメータの実測値を含む本学習用データセット及び前記事前学習されたモデルパラメータの値を前記サーバに送信する車両側送信部と、
前記車両から受信した本学習用データセット及び前記事前学習されたモデルパラメータの値を用いて、前記事前学習とは異なる手法で前記サーバによって本機械学習された、全ての前記モデルパラメータの値を、前記サーバから受信する車両側受信部と、
前記サーバから受信したモデルパラメータの値を使用した機械学習モデルを用いて前記機器を制御する制御部とを備える、車両。
A vehicle that has a machine learning model used to control on-board equipment and is capable of communicating with a server.
A pre-learning unit that pre-learns some values of the model parameters constituting the machine learning model based on a pre-learning data set including actual measurement values of input parameters of the machine learning model.
After the pre-learning is completed, the vehicle-side transmission unit that transmits the data set for main learning including the measured values of the input parameters and the output parameters of the machine learning model and the values of the pre-learned model parameters to the server. When,
The values of all the model parameters trained by the server by the server by a method different from the pre-learning using the data set for main learning received from the vehicle and the values of the pre-learned model parameters. With the vehicle-side receiver that receives from the server,
A vehicle including a control unit that controls the device by using a machine learning model using the values of model parameters received from the server.
搭載された機器を制御するのに用いられる機械学習モデルを有する車両と通信可能であり、前記機械学習モデルを構成するモデルパラメータの値を機械学習する、サーバであって、
前記機械学習モデルの入力パラメータの実測値を含む事前学習用データセットに基づいて前記車両において事前学習された前記モデルパラメータのうちの一部の値と、前記機械学習モデルの入力パラメータ及び出力パラメータの実測値を含む本学習用データセットとを前記車両から受信する受信部と、
前記車両から受信した本学習用データセット及び前記事前学習されたモデルパラメータの値を用いて、前記事前学習とは異なる手法で全ての前記モデルパラメータの値を本機械学習する本学習部と、
前記本機械学習されたモデルパラメータの値を前記車両に送信するサーバ側送信部と、を備える、サーバ。
A server capable of communicating with a vehicle having a machine learning model used to control an on-board device and machine learning the values of model parameters constituting the machine learning model.
A part of the model parameters pre-learned in the vehicle based on the pre-learning data set including the measured values of the input parameters of the machine learning model, and the input parameters and output parameters of the machine learning model. A receiver that receives the learning data set including the measured values from the vehicle, and
With the main learning unit that machine-learns all the values of the model parameters by a method different from the pre-learning using the data set for main learning received from the vehicle and the values of the pre-learned model parameters. ,
A server including a server-side transmission unit that transmits the value of the machine-learned model parameter to the vehicle.
JP2020186591A 2020-11-09 2020-11-09 Machine learning system, vehicle, and server Pending JP2022076257A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020186591A JP2022076257A (en) 2020-11-09 2020-11-09 Machine learning system, vehicle, and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020186591A JP2022076257A (en) 2020-11-09 2020-11-09 Machine learning system, vehicle, and server

Publications (1)

Publication Number Publication Date
JP2022076257A true JP2022076257A (en) 2022-05-19

Family

ID=81606533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020186591A Pending JP2022076257A (en) 2020-11-09 2020-11-09 Machine learning system, vehicle, and server

Country Status (1)

Country Link
JP (1) JP2022076257A (en)

Similar Documents

Publication Publication Date Title
US7181334B2 (en) Method and apparatus to diagnose intake airflow
US11623652B2 (en) Machine learning method and machine learning system
US11675999B2 (en) Machine learning device
US20220194394A1 (en) Machine learning device and machine learning system
KR102118088B1 (en) Method for real driving emission prediction using artificial intelligence technology
US11820398B2 (en) Learning apparatus and model learning system
US20210383215A1 (en) Vehicle, model training system and server
JP6791347B1 (en) Model diagnostic device and model diagnostic system
KR20020007370A (en) Method and device for monitoring a computing element in a motor vehicle
JP6939963B1 (en) Model learning system and server
JP2022076257A (en) Machine learning system, vehicle, and server
JP2022079938A (en) Machine learning system
US20220111850A1 (en) Machine learning devce
GB2555617B (en) Calibration system and method
JP7276298B2 (en) MODEL LEARNING SYSTEM, VEHICLE CONTROL DEVICE, AND MODEL LEARNING METHOD
JP2022173803A (en) Learning model parameter value transfer apparatus and transfer system
JP2022035222A (en) Machine learning apparatus
JP2022007498A (en) Machine learning device
JP2022053033A (en) Machine learning device