JP6986503B2 - Electronic control device, neural network update system - Google Patents
Electronic control device, neural network update system Download PDFInfo
- Publication number
- JP6986503B2 JP6986503B2 JP2018168864A JP2018168864A JP6986503B2 JP 6986503 B2 JP6986503 B2 JP 6986503B2 JP 2018168864 A JP2018168864 A JP 2018168864A JP 2018168864 A JP2018168864 A JP 2018168864A JP 6986503 B2 JP6986503 B2 JP 6986503B2
- Authority
- JP
- Japan
- Prior art keywords
- neural network
- information
- group
- information group
- coefficient
- 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.)
- Active
Links
- 238000013528 artificial neural network Methods 0.000 title claims description 102
- 230000008878 coupling Effects 0.000 claims description 49
- 238000010168 coupling process Methods 0.000 claims description 49
- 238000005859 coupling reaction Methods 0.000 claims description 49
- 238000004364 calculation method Methods 0.000 claims description 31
- 210000002569 neuron Anatomy 0.000 claims description 28
- 238000011156 evaluation Methods 0.000 claims description 21
- 230000009467 reduction Effects 0.000 description 52
- 238000000034 method Methods 0.000 description 48
- 230000008569 process Effects 0.000 description 35
- 238000012545 processing Methods 0.000 description 31
- 230000015654 memory Effects 0.000 description 23
- 238000012986 modification Methods 0.000 description 23
- 230000004048 modification Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 21
- 238000013473 artificial intelligence Methods 0.000 description 15
- 238000012937 correction Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000007726 management method Methods 0.000 description 12
- 230000004913 activation Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 3
- 230000008602 contraction Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
- G05B13/027—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/22—Command input arrangements
- G05D1/221—Remote-control arrangements
- G05D1/227—Handing over between remote control and on-board control; Handing over between remote control arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Automation & Control Theory (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Feedback Control In General (AREA)
- Traffic Control Systems (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Description
本発明は、電子制御装置、およびニューラルネットワーク更新システムに関する。 The present invention relates to an electronic control device and a neural network update system.
近年、自動運転システムの開発が活発化している。自動運転システムにおいて、複雑な走行環境を走行するためには、カメラ、レーザレーダ、ミリ波レーダ等の様々なセンサからの情報を基にした自車両周辺環境をセンシングする「認識」や、センサで検出された自車両周辺のオブジェクトが今後どのように行動するのかを推定する「認知」や、認識と認知の結果に基づき今後の自車両の行動を計画する「判断」といった機能の高度化が必要になる。そのため、これらの機能に対して、ニューラルネットワークやディープラーニングなどのAI(Artificial Intelligence)モデルを導入することにより更なる高度化が期待されている。車両用の電子制御装置(ECU:Electronic Control Unit)において、車両走行制御で用いることが可能な処理周期でリアルタイムにニューラルネットワークの演算処理を実行する場合、CPUだけではなくFPGA(Field-Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、GPU(Graphics Processing Unit)などのハードウェアデバイスを追加で用いることが多く、ECUの消費電力の増大が課題となる。そのため、ニューラルネットワークの演算量を減らして、ニューラルネットワーク実行時の消費電力を低減する必要がある。特許文献1には、入力した画像のニューロンデータとパラメータとに基づいてそれぞれ算出した畳み込み量を各第1のメモリ領域にそれぞれ保持する処理と、前記各第1のメモリ領域に保持した前記畳み込み量に対して間引き処理をそれぞれ行った間引き後の畳み込み量を各第2のメモリ領域にそれぞれ保持する処理とを第1の複数層において行う第1の認識処理と、前記第2のメモリ領域に保持した前記間引き後の畳み込み量の全てに対して第3のメモリ領域に保持した重みをそれぞれ積算した出力結果を各第4のメモリ領域にそれぞれ保持する処理を第2の複数層において行う第2の認識処理とを制御する認識制御部と、前記第1の複数層と前記第2の複数層とに含まれる各層について、各ニューロンデータのサイズであるニューロンデータサイズと、各パラメータのサイズであるパラメータサイズとをそれぞれ計算するメモリ量計算部と、前記第4のメモリ領域に保持した前記出力結果に基づき計算した前記出力結果の誤差の勾配を第5のメモリ領域に保持するとともに、前記メモリ量計算部が計算した前記第2の複数層に含まれる各層のニューロンデータサイズとパラメータサイズと大小関係に基づき、前記第5のメモリ領域に保持した前記出力結果の誤差の勾配又は前記第2の複数層における前層の第6のメモリ領域に保持した誤差の勾配に基づいて計算した前記第2の複数層における次層への誤差の勾配を各第6のメモリ領域に保持した後、前記第2の複数層における次層へのパラメータの誤差の勾配を前記各第3のメモリ領域にそれぞれ保持する前記第2の複数層における第1の学習処理と、前記メモリ量計算部が計算した前記第1の複数層に含まれる各層のニューロンデータサイズとパラメータサイズとの大小関係に基づき、前記第2の複数層の最終層の第6のメモリ領域又は前記第1の複数層における前層の第7のメモリ領域に保持した誤差の勾配に基づいて計算した次層へのパラメータの誤差の勾配を各第7のメモリ領域に保持した後、前記第1の複数層における次層への誤差の勾配を前記各第2のメモリ領域にそれぞれ保持する前記第1の複数層間における第2の学習処理とを制御する学習制御部と、を有することを特徴とする画像認識装置が開示されている。
In recent years, the development of automatic driving systems has become active. In order to drive in a complicated driving environment in an automatic driving system, "recognition" that senses the environment around the vehicle based on information from various sensors such as cameras, laser radars, and millimeter wave radars, and sensors It is necessary to enhance functions such as "cognition" that estimates how the detected objects around the vehicle will behave in the future, and "judgment" that plans future behavior of the vehicle based on the results of recognition and recognition. become. Therefore, it is expected that these functions will be further enhanced by introducing AI (Artificial Intelligence) models such as neural networks and deep learning. When executing the arithmetic processing of the neural network in real time in the processing cycle that can be used in the vehicle running control in the electronic control unit (ECU) for the vehicle, not only the CPU but also the FPGA (Field-Programmable Gate Array) ), ASIC (Application Specific Integrated Circuit), GPU (Graphics Processing Unit) and other hardware devices are often additionally used, and increasing the power consumption of the ECU becomes an issue. Therefore, it is necessary to reduce the amount of calculation of the neural network to reduce the power consumption when executing the neural network.
特許文献1に記載されている発明では、重み係数を削除した場合に高精度な推論が要求されるデータに対する推論精度が、重み係数削除前と比べて低下する場合がある。
In the invention described in
本発明の第1の態様による電子制御装置は、複数のニューロンと、前記ニューロン同士を紐付ける結合情報を複数含む結合情報群とを含むニューラルネットワークを格納する電子制御装置であって、前記ニューラルネットワークは、入力値が与えられたときに出力値を決定するための前記結合情報群である第1の結合情報群と、前記入力値として与えられた所定のデータに対する影響度が所定値を上回る複数の前記結合情報である第2の結合情報群とに基づき、間引き部が前記第1の結合情報群から少なくとも1つの結合情報を削除することで作成される第3の結合情報群を含むニューラルネットワークである。
本発明の第2の態様によるニューラルネットワーク更新システムは、サーバ、および電子制御装置を備え、複数のニューロンと、前記ニューロン同士を紐付ける結合情報を複数含む結合情報群とを含むニューラルネットワークを更新するニューラルネットワーク更新システムであって、前記サーバは、記憶部と、演算部と、を備え、前記記憶部は、入力値が与えられたときに出力値を決定するための前記結合情報群である第1の結合情報群を格納し、前記演算部は、所定のデータが前記入力値として与えられた場合に、前記所定のデータに対する影響度が所定値を上回る複数の前記結合情報である第2の結合情報群を特定する係数特定部と、前記第1の結合情報群と前記第2の結合情報群とに基づき、前記第1の結合情報群から少なくとも1つの結合情報を削除して第3の結合情報群を作成する間引き部と、を備え、前記電子制御装置は、前記第3の結合情報群を含むニューラルネットワークを格納する。
The electronic control device according to the first aspect of the present invention is an electronic control device that stores a neural network including a plurality of neurons and a connection information group including a plurality of connection information that links the neurons to each other. includes a first binding information group input values are the binding information group for determining an output value when given, impact for a given data given as the input value exceeds a predetermined value A neural including a third connection information group created by the thinning unit deleting at least one connection information from the first connection information group based on the second connection information group which is the plurality of connection information. It is a network.
The neural network update system according to the second aspect of the present invention includes a server and an electronic control device, and updates a neural network including a plurality of neurons and a coupling information group including a plurality of coupling information linking the neurons to each other. The server is a neural network update system, the server includes a storage unit and a calculation unit, and the storage unit is a combination information group for determining an output value when an input value is given. stores 1 binding information group, the arithmetic unit, when a predetermined data is given as the input value, a second influence on the predetermined data is a plurality of said binding information above a predetermined value At least one binding information is deleted from the first coupling information group based on the coefficient specifying unit for specifying the coupling information group, the first coupling information group, and the second coupling information group, and the third The electronic control device includes a thinning unit for creating the combined information group of the above, and the electronic control device stores a neural network including the third combined information group.
本発明によれば、高精度な推論が要求されるデータに対する推論精度の低下を限定的に留めてニューラルネットワークの演算量を低減することができる。 According to the present invention, it is possible to reduce the amount of calculation of the neural network by limiting the decrease in inference accuracy for data that requires high-precision inference.
以下、本発明の実施の形態について図面を参照して説明する。なお、以下に示す各実施の形態では、同じ構成要素や同じ処理内容等については、同一の番号を記載してその説明を簡略にする。各実施の形態では、人工知能処理を用いたAIモデルを備えた電子制御装置、サーバ、全体システムについての説明において、AIモデルの一例として、ニューラルネットワークを用いて説明する。ただしAIモデルは、機械学習、ディープラーニング、および強化学習に関するモデルであってもよい。すなわち、近似や間引き処理により、最適化できる様々なAIモデルに対して、以下に説明する各実施の形態を適用できる。なお以下に説明する実施の形態では、モデルの最適化は、重み係数やニューロンを間引く方法を例に説明し、その処理のことを「ニューラルネットワークの縮約」として記載する。また以下では、「ニューラルネットワーク」を「NN」と記載することもある。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. In each of the following embodiments, the same components, the same processing contents, and the like are described with the same numbers to simplify the description. In each embodiment, a neural network will be used as an example of the AI model in the description of the electronic control device, the server, and the entire system provided with the AI model using artificial intelligence processing. However, the AI model may be a model related to machine learning, deep learning, and reinforcement learning. That is, each embodiment described below can be applied to various AI models that can be optimized by approximation and thinning processing. In the embodiment described below, the optimization of the model will be described by taking as an example a weighting coefficient and a method of thinning out neurons, and the processing will be described as “neural network reduction”. Further, in the following, the "neural network" may be referred to as "NN".
―第1の実施の形態―
以下、図1〜図5を参照して、ニューラルネットワーク更新システムの第1の実施の形態を説明する。第1の実施の形態では、高精度な推論が要求されるデータ(以下、「重要データ」とも呼ぶ)に深く関連するニューラルネットワークの結合情報を特定し、その情報を用いて結合情報の間引きを行う。なお、間引き処理は結合情報そのものを削除する方法や、値を0に変更する方法が考えられる。
-First embodiment-
Hereinafter, the first embodiment of the neural network update system will be described with reference to FIGS. 1 to 5. In the first embodiment, the connection information of the neural network deeply related to the data requiring high-precision inference (hereinafter, also referred to as "important data") is specified, and the connection information is thinned out using the information. conduct. As the thinning process, a method of deleting the join information itself or a method of changing the value to 0 can be considered.
図1は、AIモデルの構造の一例を示す図である。図1に示すように、ニューラルネットワークモデル1は、入力層10と、中間層11と、出力層12を含み、各層はそれぞれI個、J個、K個の演算ユニット100を持つ。それぞれの演算ユニット100は、図1の符号101や符号102に示すように、演算ユニット100間の結合情報を基に接続される。入力層10に情報が入力されると、結合情報が加味されて中間層11内で伝搬されて、最終的に出力層12より予測結果に相当する情報が出力される。演算ユニット100間の接続に関する結合情報を本実施の形態では「ネットワーク構造情報」と呼ぶ。演算ユニット100は前述の「ニューロン」に相当する。
FIG. 1 is a diagram showing an example of the structure of an AI model. As shown in FIG. 1, the
結合情報は結合係数とバイアスから構成され、その結合係数を係数とする演算が行われつつ情報は入力層10から出力層12に伝搬される。AIモデルの演算で使用される結合係数のことを本実施の形態では「重み係数」と呼ぶ。また本実施の形態では、説明を簡略するためにバイアスを除外して結合情報が重み係数のみから構成されるとして説明する。すなわち本実施の形態では、結合情報と重み係数は同一である。ただし結合情報にバイアスが含まれる構成も本発明に含まれる。
The coupling information is composed of a coupling coefficient and a bias, and the information is propagated from the
また本実施の形態では、個別の重み係数を識別するために、それぞれの重み係数に便宜的にIDを付与する。また重み係数の値を「重み係数値」や「重み係数の値」と呼ぶ。すなわち以下では、「IDが11の重み係数の重み係数値はxx」のように表現する。演算の内容は、結合情報に含まれる層の種類によって特定される。結合情報に含まれる層は、たとえば、畳込み層、バッチ正規化、活性化関数、プーリング層、全結合層、LSTM(Long Short Term Memory)層などである。 Further, in the present embodiment, in order to identify individual weighting factors, an ID is conveniently assigned to each weighting factor. Further, the value of the weighting coefficient is called a "weighting coefficient value" or a "weighting coefficient value". That is, in the following, it is expressed as "the weighting coefficient value of the weighting coefficient whose ID is 11 is xx". The content of the operation is specified by the type of layer included in the join information. The layer included in the binding information is, for example, a convolution layer, a batch normalization, an activation function, a pooling layer, a fully bound layer, an LSTM (Long Short Term Memory) layer, and the like.
なお演算ユニット100の数や、中間層11を構成する層の数は、実施の形態とは無関係であるため、任意の値とする。また、AIモデルの構造も特段の限定はされず、たとえば演算ユニット100間の結合に再帰性や双方向性を持つものであってもよい。さらに教師有り、教師無しのいずれの機械学習モデル、および強化学習モデル等、いずれのAIモデルに対しても、本実施の形態を適用可能である。これは、高精度な推論が要求される優先度の高いデータに対する推論精度に影響を与えることなく、AIモデルの重み係数や演算ユニットを間引いてAIモデルを縮約できるためである。ただし重み係数の重み係数値をゼロに変更することも、重み係数を間引くことに含まれる。
Since the number of
図2は、第1の実施の形態におけるニューラルネットワーク更新システム2の構成図である。ニューラルネットワーク更新システム2は、記憶部20と、サーバ21と、電子制御装置22とから構成される。図2に示すように、サーバ21と電子制御装置22は、ネットワーク23を介して接続される。なお図2では記憶部20はサーバ21と直接に接続されているが、記憶部20がサーバ21とネットワーク23を介して接続されてもよい。
FIG. 2 is a block diagram of the neural
本実施の形態では、サーバ21にてニューラルネットワークの縮約を行い、電子制御装置22はその縮約されたニューラルネットワークをサーバからダウンロードして更新する。これにより、自動運転などのアプリケーションにおいて、ニューラルネットワークを用いた演算処理を実行する。ただし、本実施の形態はこのような構成に限定されない。すなわちサーバ21を介さず、電子制御装置22を備える車両に閉じてニューラルネットワークの追加学習と更新を行うアーキテクチャになる場合など、上述の機能の全部または一部を電子制御装置22に搭載する構成としてもよい。
In the present embodiment, the
記憶部20は、不揮発性の記憶領域、たとえばフラッシュメモリである。記憶部20には、ニューラルネットワークの学習、生成、および縮約処理において、サーバ21が使用するニューラルネットワーク情報やデータセットが格納される。具体的には記憶部20には、縮約前ニューラルネットワーク200と、縮約後ニューラルネットワーク201と、重要データ202と、通常データ203とが含まれる。
The
縮約前ニューラルネットワーク200は、縮約を適用する前のニューラルネットワークの情報を指し、第1の結合情報群2000とネットワーク構造情報2001とから構成される。第1の結合情報群2000は縮約適用前のニューラルネットワークの重み係数の重み係数値である。ネットワーク構造情報2001は縮約適用前のニューラルネットワークのネットワーク構造情報である。縮約前NN200はたとえば、図1に示すニューラルネットワークモデル1の全体である。第1の結合情報群2000はたとえば、図1に示したNNモデル1から抽出した全ての重み係数の重み係数値である。またネットワーク構造情報2001はたとえば、NNモデル1から全ての重み係数の重み係数値を除いた情報である。
The pre-reduction
縮約後ニューラルネットワーク201は、縮約を適用した後のニューラルネットワークの情報であり、第3の結合情報群2010とネットワーク構造情報2011とから構成される。第3の結合情報群2010は縮約適用後のニューラルネットワークの重み係数の重み係数値を指す。ネットワーク構造情報2011は縮約適用前のニューラルネットワークのネットワーク構造情報を指す。なお、縮約適用前後でニューラルネットワークのネットワーク構造情報に相違がない場合は、ネットワーク構造情報2001とネットワーク構造情報2011は同一のものとなる。
The post-reduction
重要データ202および通常データ203は、あらかじめ作成されたデータ群であり、ニューラルネットワークの構築や推論のテストに用いられる。重要データ202および通常データ203に含まれるそれぞれデータは、たとえば走行中の車両が収集したセンサ出力と、前方を走行する車両との相対距離と、前方を走行する車両が同一レーンを走行しているか否かの情報の組み合わせである。
The
重要データ202は、高精度な推論が要求されるデータであり、たとえば車両走行制御に直接関連し、推論の誤りを可能な限り低減したいデータ群である。重要データ202はたとえば、相対距離が近く、かつ同一レーンを走行している場合のデータである。通常データ203は、重要データ202以外の、車両走行制御に直接関係しないデータ群である。通常データ203はたとえば、相対距離が非常に遠いデータや、異なるレーンを走行している場合のデータである。あるデータが重要データ202および通常データ203のどちらに分類されるかは、次に説明するデータセット管理テーブル30を参照してサーバ21が演算処理により決定してもよいし、サーバ21のオペレータがあらかじめ定められたルールに従い決定してもよい。
The
図3はデータセット管理テーブル30の一例を示す図である。データセット管理テーブル30は複数のレコードから構成され、各レコードは、データ種別名300、優先度判定条件301、優先度302、操作係数303から構成される。データ種別名300はデータを識別するために便宜的に設けた名称である。したがってデータ種別名300は識別可能であればどのような文字列でもよい。優先度判定条件301は、優先度を判定するための条件であり、換言すると当該レコードへの該当性を示す条件である。
FIG. 3 is a diagram showing an example of the data set management table 30. The data set management table 30 is composed of a plurality of records, and each record is composed of a
優先度302は数値が大きいほど優先度が高い、すなわちより高精度な推論が要求されることを示す。それぞれのデータは、この優先度の値により重要データ202または通常データ203に分類されてもよい。操作係数303は、縮約時に用いられる情報であり、たとえば間引きの対象となる重み係数、すなわち間引きの対象となる重み係数のIDを決定するために使用される。
The
優先度判定条件301は、相対距離3010と先行車フラグ3011とから構成される。相対距離3010は自車とオブジェクトとの相対距離を表す情報であり、相対距離の値が小さいほど、優先度302の値は大きい、すなわち本データの優先度は高いと判定する傾向にある。先行車フラグ3011は、対象のオブジェクトが自車から見て同一走行レーン上の先行車にあたるか否かを表すフラグ情報である。
The
先行車フラグ3011がTRUEの場合は、優先度の値は大きくなる傾向にある。図3の1行目に示す例では、先行車フラグ3011がオンかつ相対距離3010が30メートル以内の場合は、オブジェクト検出用データ1と判断され、優先度302は3、操作係数は2に設定される。また図3の最終行に示す例では、先行車フラグ3011がFALSEの場合は相対距離3010が500メートル以内は全てオブジェクト検出用データ4と判断され、優先度302は1、操作係数は1に設定される。
When the preceding
図2の説明に戻る。サーバ21は演算部210と、プログラム格納部211と、RAM212とを備える。演算部210は、中央演算装置であるCPU(Central Processing Unit)2100をハードウェアとして少なくとも備えており、CPU2100はプログラム格納部211に格納されたプログラムに従ってニューラルネットワークの学習、生成、および縮約処理を実行する。ただしプログラム格納部211に格納されたプログラムと同様の機能をハードウエア回路として実現してもよい。さらに、プログラム格納部211に格納される全てのプログラムの機能がハードウエア回路として実現される場合は、サーバ21はプログラム格納部211を備えなくてもよい。
Returning to the description of FIG. The
ニューラルネットワークの学習・生成・縮約を高速化するため、演算部210にアクセラレータ2101が含まれてもよい。アクセラレータ2101は、FPGA、ASIC、およびGPU等のハードウェアデバイスが考えられる。
プログラム格納部211は、フラッシュメモリ等の不揮発性半導体メモリを備える。プログラム格納部211には、演算係数特定部2110と、操作係数決定部2111と、係数群算出部2112と、間引き部2113と、NN実行制御部2114と、NN学習制御部2115とを実現するためのプログラムが格納される。これらのプログラムは演算部210により実行される。これらのプログラムの動作は図4〜図5を参照して後に説明する。またプログラムの構成は任意であり、どのようにプログラムの結合や分離がされてもよい。たとえば、1つのプログラムが演算係数特定部2110、操作係数決定部2111、係数群算出部2112、間引き部2113、NN実行制御部2114、およびNN学習制御部2115に相当する機能の全てを兼ね備えてもよい。
The
RAM212は揮発性半導体メモリである。RAM212には、演算部210がプログラムを実行するためのデータ、たとえば第2の結合情報群2120が格納される。第2の結合情報群2120は、ニューラルネットワークを縮約する際の判定条件として使用される。第2の結合情報群2120は、「重要関連WHI」とも呼ばれる。詳しくは後述する。
The
ネットワーク23は、電子制御装置22を備える車両がサーバ21へアクセスするための通信網を表す。アクセス手段はたとえばセルラーや無線LANなどの方式が考えられる。これら無線手段以外にOBD(On-Board Diagnostics)やOBD2(On-Board Diagnostics2)を介して有線手段で接続してもよい。
The
電子制御装置22は、記憶部220と、演算部221と、プログラム格納部222と、RAM223とを備える。記憶部220は、フラッシュメモリなどの不揮発性の記憶装置である。記憶部220には縮約後ニューラルネットワーク2200が格納される。縮約後NN2200は、第3の結合情報群22000とネットワーク構造情報22001とから構成される。電子制御装置22に格納される縮約後NN2200は、記憶部20に格納される縮約後NN201と名称は同一であるが、データそのものは必ずしも同一ではない。ただし出荷直後の初期状態では、縮約後NN2200と縮約後NN201とは同一である。
The
演算部221は、中央演算処理装置であるCPU2210を備える。CPU2210はプログラム格納部222に格納されたプログラムに従ってニューラルネットワークを用いた推論処理やニューラルネットワークの学習処理を実行する。演算部221は、これら推論や学習処理を高速化するため、アクセラレータ2101を備えてもよい。アクセラレータ2101はFPGA、ASIC、GPU等のハードウェアデバイスが考えられる。プログラム格納部222は、フラッシュメモリ等の不揮発性半導体メモリを備える。プログラム格納部222には、車両走行制御部2220と、NN実行制御部2221とを実現するためのプログラムが格納される。
The
車両走行制御部2220は、認識、認知、および判断などの車両の走行を制御するために必要な機能を有する。なお、車両走行制御部2220が単独で車両の走行を制御するための認識、認知、および判断を実行しなくてもよく、たとえば車両に搭載された他の機器やネットワーク23を介して接続される他の機器と分担・連携してもよい。
The vehicle
NN実行制御部2221は、記憶部220に格納された縮約後NN2200を用いて、推論処理を実行する。図示はしていないが、電子制御装置22は推論処理だけではなく、縮約後ニューラルネットワーク2200の学習機能をさらに有してもよい。電子制御装置22が学習機能を有することにより、サーバ21と連携することなく、電子制御装置22が単独でニューラルネットワークの追加学習と更新が可能になる。
The NN
(動作)
図4〜図5を参照して、サーバ21によるニューラルネットワークの縮約を説明する。図4はサーバ21によるニューラルネットワークの縮約処理を示すフローチャートである。まずステップS400において、NN学習制御部2115は、学習済みの重み係数値WLEを備えるニューラルネットワーク、すなわち縮約前のニューラルネットワークを生成する。
(motion)
The reduction of the neural network by the
そして、ステップS401において、記憶部20に格納されているデータをデータセット管理テーブル30を参照して重要データ202を選定する。この場合に、たとえば優先度が3以上のデータが重要データ202に分類され、優先度が2以下のデータが通常データ203に分類される。なおこの分類はデータの選定はサーバ21のオペレータが行ってもよいし、サーバ21が演算により選別してもよい。また、データがすでに分類済みの場合はS401の処理を省略してもよい。
Then, in step S401, the
続いてステップS402において、演算係数特定部2110は、学習済み重み係数値WLEのなかで、重要データ202に関与する重み係数を特定し、そのIDの集合を重要関連WHIとして記録する。すなわち重要関連WHIとは、重要データ202に関与する重み係数のID番号が列挙されたものである。S402の詳細は次の図5で説明する。
Subsequently, in step S402, the calculation
続くステップS403において、操作係数決定部2111は、データセット管理テーブル30と重要データ202に基づいて操作係数WCOEFを算出する。操作係数WCOEFはそれぞれの重み係数に対応して存在し、全ての操作係数WCOEFの初期値は同一、たとえばゼロである。図3に示す例において最上段のオブジェクト検出用データ1に分類される重要データ202を用いて特定された重み係数に対応する操作係数WCOEFには、そのデータの操作係数303の値である「2」が加算される。多くの重要データ202により特定される重み係数に対応する操作係数WCOEFほど大きな値を有することになる。
In the following step S403, the operation
ステップS404において、係数群算出部2112は、重要関連WHIと操作係数WCOEFを用いて、ニューラルネットワークにおける重み係数の間引き適用箇所の判定に用いる評価係数WNEWを算出する。評価係数WNEWも、それぞれの重み係数に対して存在する。評価係数WNEWは、それぞれの重み係数に対して、換言するとそれぞれの重み係数のIDに対して、たとえば次の式1のように算出される。
WNEW=D(WHI)*Val(ID)*WCOEF ・・・ (式1)
In step S404, the coefficient
WNEW = D (WHI) * Val (ID) * WCOEF ... (Equation 1)
ただしD(WHI)は、処理対象の重み係数のIDが重要関連WHIに含まれる場合は「1」を返し、処理対象の重み係数のIDが重要関連WHIに含まれない場合はゼロを返す関数である。またVal(ID)は、処理対象のIDである重み係数の重み係数値を返す関数である。詳しくは後述するが、評価係数WNEWは間引きの判定処理で参照される値であり、値が大きいほど間引きがされにくくなる。 However, D (WHI) is a function that returns "1" when the ID of the weighting factor of the processing target is included in the important related WHI, and returns zero when the ID of the weighting factor of the processing target is not included in the important related WHI. Is. Further, Val (ID) is a function that returns the weighting coefficient value of the weighting coefficient which is the ID of the processing target. As will be described in detail later, the evaluation coefficient WNEW is a value referred to in the thinning determination process, and the larger the value, the more difficult it is for thinning.
続くステップS405において、間引き部2113は評価係数WNEWの値に基づいて間引きの対象となる重み係数を決定する。そしてステップS406において、学習済み重み係数値WLEから間引き対象の重み係数の重み係数値をゼロにして、新たなニューラルネットワークを生成する。ただし、重み係数の行成分または列成分のすべてがゼロになった場合は、その行または列を削除してもよい。
In the following step S405, the thinning
さらに、各演算ユニット100(ニューロン)に接続される全ての重み係数のセット単位で削除しても良い。これは、演算ユニット100に接続される各重み係数の二乗和をそれぞれ算出して、その値が小さいものから順に重み係数のセットを削除する方法が考えられる。生成されたニューラルネットワークは縮約後NN201として記憶部20に格納され、電子制御装置22に送信されて記憶部220に保存される。なお、間引き適用箇所は1つ以上とする。
Further, it may be deleted in a set unit of all the weighting coefficients connected to each arithmetic unit 100 (neuron). As a method, a method of calculating the sum of squares of each weighting coefficient connected to the
その後ステップS407において、ステップS406にて新たに生成された新たなニューラルネットワークにおける重み係数を再学習、すなわちファインチューニングによって最適化する。このファインチューニングにより推論精度の向上を図ることが可能となる。ただしステップS407は必須ではなくS406の実行が完了したら図4に示す処理を終了してもよい。 Then, in step S407, the weighting coefficient in the new neural network newly generated in step S406 is optimized by re-learning, that is, fine tuning. This fine tuning makes it possible to improve the inference accuracy. However, step S407 is not essential, and the process shown in FIG. 4 may be terminated when the execution of S406 is completed.
図5は、図4におけるS402の詳細を示すフローチャートである。図5に示す処理の実行主体は係数特定部2110である。係数特定部2110はまずS500において、NN実行制御部2114に、重要データ202をステップS400において生成したニューラルネットワークに入力して推論を実行させ、ニューラルネットワークの各演算ユニットの出力OHNUを算出する。続くステップS501では係数特定部2110は、出力OHNUに基づき、活性化度合いが高い演算ユニットNHIを特定する。本処理で特定した演算ユニットは重要データ202に大きく関与している演算ユニットであると判断する。
FIG. 5 is a flowchart showing the details of S402 in FIG. The execution subject of the process shown in FIG. 5 is the
ここで活性化度合いが高いか否かは、出力OHNUが閾値ACTTH以上か否かによって判定する方法が考えられる。別の方法としてはニューラルネットワークの各層毎の全ての出力OHNUのうち、値が大きいものから順に上位から一定の割合を活性化度合いが高いと判定する方法が考えられる。 Here, a method of determining whether or not the degree of activation is high can be considered based on whether or not the output OHNU is equal to or higher than the threshold value ACTTH. As another method, it is conceivable to determine that a certain percentage of all the output OHNUs for each layer of the neural network has a higher degree of activation in order from the one with the largest value.
その後、ステップS502において、係数特定部2110は、ステップS501で特定した演算ユニットNHIに対して、演算ユニットNHIと接続される重み係数を特定し、特定した重み係数を重要関連WHIとすることによって、本処理フローを終了する。ステップS502の処理の一例を示すと、演算ユニットNHIが図1に示す演算ユニット100の場合に、以下のように判断する。すなわち、演算ユニット100に接続される重み係数は結合情報101と結合情報102である。このように、それぞれの演算ユニットに接続される重み係数は、ニューラルネットワークのネットワーク構造情報から一意に特定される。
After that, in step S502, the
上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)ニューラルネットワーク更新システム2は、サーバ21および電子制御装置22を備える。ニューラルネットワーク更新システム2は、複数のニューロン100と、ニューロン同士を紐付ける図1の符号101や符号102に示す結合情報を複数含む結合情報群とを含むニューラルネットワークを更新する。サーバ21は、記憶部20と、演算部210と、を備える。記憶部20は、入力値が与えられたときに出力値を決定するための第1の結合情報群2000を格納する。演算部210は、所定のデータが入力値として与えられた場合に、所定のデータに対する影響度が所定値を上回る複数の結合情報である第2の結合情報群2120を特定する係数特定部2110と、第1の結合情報群2000と、第2の結合情報群2120とに基づき、第1の結合情報群2000から少なくとも1つの結合情報を削除して第3の結合情報群2010を作成する間引き部2113と、を備える。電子制御装置22は、第3の結合情報群2010を含む縮約後NN2200を格納する。
According to the first embodiment described above, the following effects can be obtained.
(1) The neural
第3の結合情報群2010は第1の結合情報群2000に比べて結合情報が削除されているので演算量、すなわち消費電力を低減できる。さらに、高精度な推論が要求される重要データに対する影響度を考慮して、削除する結合情報を決定するので、重要データに対する推論精度の低下を限定的に留めることができる。
Since the combined information is deleted in the third
(2)所定のデータとは、車両走行に関する優先度が所定値を上回るデータである。そのため車両の走行に関して高精度な推論が要求されるデータに対する推論制度の低下を限定的に留めることができる。 (2) The predetermined data is data in which the priority regarding vehicle running exceeds the predetermined value. Therefore, it is possible to limit the deterioration of the inference system for data that requires highly accurate inference regarding the running of the vehicle.
(3)間引き部2113は、第2の結合情報群2120に含まれるそれぞれの結合情報に対応する操作係数の集合である操作係数群を決定し、それぞれの操作係数を第1の結合情報群2000に含まれる対応する結合情報に評価係数を乗算して評価係数群とし、評価係数群のうち所定値を上回る評価係数について、対応する結合情報を第1の結合情報群2000の中から特定し、当該特定された結合情報以外の結合情報を第1の結合情報群2000から削除して、第3の結合情報群2010を作成する。このように、高精度な推論が要求される重要データに対する影響度が所定値を上回る結合情報は削除しないので、重要データに対する推論精度の低下を限定的に留めることができる。
(3) The thinning
(4)係数特定部2110は、複数のニューロン100のうち、所定のデータが与えられた場合の出力値が所定値を上回る場合に、当該出力値の決定に関与したニューロン100を特定し、当該特定されたニューロン100に紐付く結合情報を、第2の結合情報群2120を構成する結合情報として特定する。
(4) The
(変形例1)
記憶部20に格納されるデータ、すなわち重要データ202および通常データ203は、前方を走行する車両との相対距離が含まれていなくてもよい。記憶部20に格納されるデータには、高精度な推論が要求されるか否かを判断可能な情報が含まれていればよい。たとえば記憶部20に格納されるデータに物体の種別と高さが含まれる場合は、データセット管理テーブル30を図6に示すデータセット管理テーブル31に変更する。
(Modification 1)
The data stored in the
図6に示すデータセット管理テーブル31は、第1の実施の形態におけるデータセット管理テーブル30と比べて優先度判定条件301の内容が異なり、優先度判定条件301は識別クラス3012とオブジェクト高さ3013とから構成される。識別クラス3012は物体の種別を示し、図3に示す例では物体が車両、歩行者、および自転車のいずれかの場合は優先度を高く設定される。オブジェクト高さ3013は物体の高さを示し、高いほうが優先度が高く設定される。
The data set management table 31 shown in FIG. 6 has different contents of the
なお、記憶部20に格納されるデータに様々な情報が含まれる場合は、このデータを使用するアプリケーションに応じて優先度判定条件301が変更されてもよい。すなわちデータごとに優先度302および操作係数303を決定できればよく、優先度判定条件301は他の情報を用いてもかまわない。たとえば優先度判定条件301が、自己位置推定、センサフュージョン、マップフュージョン、フリースペース検知、オブジェクトの移動予測、および走行軌道計画などAIが使用される他の自動運転ロジックに関する条件でもよい。
When various information is included in the data stored in the
(変形例2)
電子制御装置22の記憶部220に縮約前NN220がさらに格納され、縮約後NN2200に何らかの問題が発生した場合に縮約前NN220に切り替えて、ニューラルネットワークを用いた演算処理を実行してもよい。何らかの問題とはたとえば、縮約後NN2200の出力結果を用いたことで、衝突回避のため急ブレーキを動作せざるを得なくなることである。このような問題が生じた場合に縮約前NN220に切り替えることで、縮約処理を施したことによる車両走行への影響を排除することができる。
(Modification 2)
Even if the
(変形例3)
評価係数WNEWの決定方法は、第1の実施の形態において示した式1を用いる方法に限定されない。重要データ202に関与する重み係数が間引きされにくくなるように、評価係数WNEWの値が大きくなるようにすればよい。たとえば、処理対象のIDである重み係数の重み係数値に対して操作係数WCOEFなどのような補正値を用いてビットシフト演算を行い評価係数WNEWを算出してもよい。また処理対象のIDである重み係数の重み係数値に操作係数WCOEFなどの補正値を加算して評価係数WNEWを算出してもよい。
(Modification 3)
The method for determining the evaluation coefficient WNEW is not limited to the method using the
(変形例4)
図7は変形例4における、図3に示すステップS402の詳細を示す図である。すなわち本変形例では、図5に示す処理の代わりに図6に示す処理が実行される。ただし第1の実施の形態と同一の処理には同一のステップ番号を付して説明を省略する。図7ではまずステップS500を実行し、第1の実施の形態と同様に出力OHNUを算出する。
(Modification example 4)
FIG. 7 is a diagram showing details of step S402 shown in FIG. 3 in the modified example 4. That is, in this modification, the process shown in FIG. 6 is executed instead of the process shown in FIG. However, the same process as that of the first embodiment is assigned the same step number, and the description thereof will be omitted. In FIG. 7, first, step S500 is executed, and the output OHNU is calculated in the same manner as in the first embodiment.
続くステップS601において、NN学習制御部2115は通常データ203をニューラルネットワークへの入力として推論を実行し、ニューラルネットワークの各演算ユニットの出力OLNUを算出する。そして、ステップS602において、演算係数特定部2110は、OHNUとOLNUに基づき、たとえばOHNUとOLNUの差に基づき、活性化度合いが高い演算ユニットNHIを特定する。続くS502では、第1の実施の形態と同様に重要関連WHIを特定して図7に示す処理を終了する。
In the following step S601, the NN
図8は、ステップS602の処理の一例を示す図である。図8(a)は、ステップS600における演算ユニットごとのOHNUを示す図であり、図8(b)は、ステップS601における演算ユニットごとのOLNUを示す図であり、図8(c)は演算ユニットごとにOHNUとOLNUの差分を示す図である。ただし図8(a)〜(c)において横軸方向に異なる演算ユニットの出力が並んでおり、図8(a)〜(c)の左右方向の位置が同一であれば同一の演算ユニットについて示している。 FIG. 8 is a diagram showing an example of the process of step S602. FIG. 8A is a diagram showing OHNU for each arithmetic unit in step S600, FIG. 8B is a diagram showing OLNU for each arithmetic unit in step S601, and FIG. 8C is a diagram showing arithmetic units. It is a figure which shows the difference between OHNU and OLNU for each. However, in FIGS. 8 (a) to 8 (c), if the outputs of different arithmetic units are arranged in the horizontal axis direction and the positions in the horizontal directions of FIGS. 8 (a) to 8 (c) are the same, the same arithmetic unit is shown. ing.
図8では、それぞれの演算ユニットにIDを割り当てている。たとえばIDが「n11」の演算ユニットは図8(a)〜図8(c)の左端に示されており、図8(a)と図8(b)の差が図8(c)である。そして図8(c)において、閾値WTHを設定し、閾値WTHよりも大きい演算ユニットを活性化度合いが高い演算ユニットNHIとして特定する。 In FIG. 8, an ID is assigned to each arithmetic unit. For example, the arithmetic unit having the ID “n11” is shown at the left end of FIGS. 8 (a) to 8 (c), and the difference between FIGS. 8 (a) and 8 (b) is shown in FIG. 8 (c). .. Then, in FIG. 8C, the threshold value WTH is set, and the calculation unit larger than the threshold value WTH is specified as the calculation unit NHI having a high degree of activation.
(変形例5)
図9は変形例5における、図3に示すステップS402の詳細を示す図である。すなわち本変形例では、図5に示す処理の代わりに図9に示す処理が実行される。ただし第1の実施の形態と同一の処理には同一のステップ番号を付して説明を省略する。本変形例では、重要データ202に大きく関連する演算ユニットを特定せずに重み係数を特定する。
(Modification 5)
FIG. 9 is a diagram showing details of step S402 shown in FIG. 3 in the modified example 5. That is, in this modification, the process shown in FIG. 9 is executed instead of the process shown in FIG. However, the same process as that of the first embodiment is assigned the same step number, and the description thereof will be omitted. In this modification, the weighting factor is specified without specifying the arithmetic unit that is largely related to the
図9ではまずステップS800において、NN学習制御部2115は、重要データ202を用いてニューラルネットワークの追加学習を行い、追加学習後の重み係数WHADDLEを算出する。ステップS800における追加学習で用いるデータは、縮約前NN200を生成する際に用いたデータとは異なるものである。
In FIG. 9, first, in step S800, the NN
続くステップS801において、係数特定部2110は、追加学習前の重み係数値WLEと追加学習後の重み係数値WHADDLEとに基づき、たとえば両者の重み係数値の差を演算して重要データ202に関与する重み関数を特定する。追加学習前の重み係数値WLEとは、図4のS400において算出した重み係数値WLEである。そして図9に示す処理を終了する。
In the following step S801, the
図10は、図9に示す処理の一例を示す図である。図10(a)は、縮約前NN200の重み係数のIDごとに重み係数値WLEを示す図であり、図10(b)は、ステップS800における重み係数のIDごとに重み係数値WHADDLEを示す図であり、図10(c)は重み係数ごとに重み係数値WHADDLEと重み係数値WLEの差分を示す図である。 FIG. 10 is a diagram showing an example of the process shown in FIG. FIG. 10A is a diagram showing a weighting coefficient value WLE for each ID of the weighting coefficient of the pre-reduction NN200, and FIG. 10B shows a weighting coefficient value WHADDLE for each weighting factor ID in step S800. 10 (c) is a diagram showing the difference between the weighting coefficient value WHADDLE and the weighting coefficient value WLE for each weighting factor.
たとえば、重み係数値WHADDLEと重み係数値WLEの差が所定の閾値WTHよりも大きい重み係数を重要データ202に大きく関連すると判断できる。またこの際に、重み係数値WHADDLEと重み係数値WLEの差の絶対値を評価してもよい。さらに、両者の差が大きいものから順に上位から一定の割合を活性化度合いが高い重み係数と判定してもよい。
For example, it can be determined that a weighting coefficient in which the difference between the weighting coefficient value WHADDLE and the weighting coefficient value WLE is larger than the predetermined threshold value WTH is largely related to the
(変形例6)
図11は変形例6における、図3に示すステップS402の詳細を示す図である。すなわち本変形例では、図5に示す処理の代わりに図11に示す処理が実行される。ただし第1の実施の形態と同一の処理には同一のステップ番号を付して説明を省略する。本変形例では、変形例5と同様に重要データ202に大きく関連する演算ユニットを特定せずに重み係数を特定する。
(Modification 6)
FIG. 11 is a diagram showing details of step S402 shown in FIG. 3 in the modified example 6. That is, in this modification, the process shown in FIG. 11 is executed instead of the process shown in FIG. However, the same process as that of the first embodiment is assigned the same step number, and the description thereof will be omitted. In this modification, the weighting coefficient is specified without specifying the arithmetic unit that is largely related to the
図11ではまずステップS900において、NN学習制御部2115は、重要データ202を用いてニューラルネットワークの学習を行い、重み係数値WHLEを算出する。続くステップS901において、NN学習制御部2115は、通常データ203を用いてニューラルネットワークの学習を行い、重み係数値WLLEを算出する。続くステップS902において、係数特定部2110は、学習済みの重み係数値WHLEと重み係数値WLLEに基づき、重要データ202に関与する重み係数を特定し、重要関連WHIと名付ける。
In FIG. 11, first, in step S900, the NN
なおステップS900とステップS901は、ステップS400におけるニューラルネットワークを生成する処理において実行されてもよい。また、ステップS400で使用したものと異なる重要データ202および通常データ203を用いてニューラルネットワークの追加学習を行い、これによりステップS900とステップS901の処理を実施してもよい。
Note that steps S900 and S901 may be executed in the process of generating the neural network in step S400. Further, additional learning of the neural network may be performed using
ステップS902の処理の一例を図12に示す。図12(a)は、ステップS900における重み係数のIDごとの重み係数値WHLEを示したものである。図12(b)は、ステップS901における重み係数のIDごとの重み係数値WHADDLEを示したものである。図12(c)は重み係数のIDごとの、図12(a)に示す重み係数値WHLEと、図12(b)に示す重み係数値WHADDLEとの差を示す図である。 An example of the process of step S902 is shown in FIG. FIG. 12A shows the weighting coefficient value WHLE for each ID of the weighting coefficient in step S900. FIG. 12B shows the weighting coefficient value WHADDLE for each ID of the weighting coefficient in step S901. FIG. 12 (c) is a diagram showing the difference between the weight coefficient value WHLE shown in FIG. 12 (a) and the weight coefficient value WHADDL shown in FIG. 12 (b) for each weight coefficient ID.
図12(c)において、IDごとの差分値が閾値WTH以上か否かの判定を行うことで各重み係数が重要データ202に大きく関連するか否かを判定する。ここで重み係数値WHLEと重み係数値WLLEの差分結果に対して絶対値を取るようにしてもよい。別の方法としては差分値が大きいものから順に上位から一定の割合を活性化度合いが高いと判定する方法が考えられる。
In FIG. 12 (c), it is determined whether or not each weighting coefficient is significantly related to the
(変形例7)
図13は、変形例7におけるシステム構成を示す図である。本変形例では、車両で取得した走行データを活用してサーバ21と連携しながら電子制御装置22に対して縮約したニューラルネットワークを更新する。図13におけるニューラルネットワーク更新システム2は、図2で示したシステム構成と比べて、以下のように電子制御装置22の構成が異なる。
(Modification 7)
FIG. 13 is a diagram showing a system configuration in the modified example 7. In this modification, the neural network contracted with respect to the
本変形例では、記憶部220に重要データ2201がさらに保存される。重要データ2201は車両に搭載されるセンサが車両の周囲をセンシングして得られたデータのうち、後述の重要データ選定部2222によって抽出されたデータである。プログラム格納部222には重要データ選定部2222と、NN更新制御部2223と、重要データアップロード部2224とを実行するためのプログラムがさらに格納される。
In this modification, important data 2201 is further stored in the
重要データ選定部2222は車両において外界センシング等によって収集したデータの中から車両走行制御に関連し優先度が高いと判定するデータを選定する。選定方法は図3で説明したものが考えられる。また別の方法として、事故発生には至らなかったが、衝突回避のため急ブレーキが動作した状況に関するセンシングデータを重要データとして選定することが考えられる。それ以外にもドライバによる手動運転時や、ニューラルネットワークを使用しない自動運転ロジックや運転支援ロジックを実行している際、ニューラルネットワークによる推論処理をバックグラウンドで実行しておき、手動運転時の出力結果やニューラルネットワークを用いないロジックの出力結果と、ニューラルネットワークによる推論処理結果に乖離がある場合に、ニューラルネットワークへの入力データを重要データとして選定することが考えられる。 The important data selection unit 2222 selects data that is determined to have a high priority in relation to vehicle travel control from the data collected by external sensing or the like in the vehicle. As the selection method, the one described in FIG. 3 can be considered. As another method, although the accident did not occur, it is conceivable to select the sensing data regarding the situation where the sudden braking is operated to avoid the collision as important data. In addition to that, when the driver is manually driving, or when the automatic driving logic or driving support logic that does not use the neural network is being executed, the inference processing by the neural network is executed in the background, and the output result at the time of manual driving is executed. When there is a discrepancy between the output result of the logic that does not use the neural network or the inference processing result by the neural network, it is conceivable to select the input data to the neural network as important data.
NN更新制御部2223は、サーバ21で新たに生成されたニューラルネットワークを取得し、記憶部220に格納される縮約後NN2200を更新する。重要データアップロード部2224は、重要データ選定部2222で選定されて、記憶部220にバッファリングされた重要データ2201を、ネットワーク23を介してサーバ21にアップロードする。
The NN
(変形例8)
上述した第1の実施の形態では、縮約処理において演算係数を削除する構成を説明した。しかしニューロン、すなわち演算ユニットを削除してもよい。演算ユニットを削除できるのは、その演算ユニットに接続される演算係数が全てゼロになった場合、またはその演算ユニットに接続される演算係数が全て削除された場合である。
(Modification 8)
In the first embodiment described above, a configuration in which the calculation coefficient is deleted in the reduction process has been described. However, neurons, or arithmetic units, may be deleted. The arithmetic unit can be deleted when all the arithmetic coefficients connected to the arithmetic unit become zero, or when all the arithmetic coefficients connected to the arithmetic unit are deleted.
―第2の実施の形態―
図14〜図15を参照して、ニューラルネットワーク更新システムの第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、重み係数を間引く割合を決定する点で、第1の実施の形態と異なる。重み係数を間引く割合を本実施の形態では「縮約率」と呼ぶ。
-Second embodiment-
A second embodiment of the neural network update system will be described with reference to FIGS. 14 to 15. In the following description, the same components as those in the first embodiment are designated by the same reference numerals, and the differences will be mainly described. The points not particularly described are the same as those in the first embodiment. The present embodiment is different from the first embodiment mainly in that the ratio of thinning out the weighting coefficients is determined. In the present embodiment, the ratio of thinning out the weighting factor is referred to as "reduction rate".
図14は、第2の実施の形態におけるニューラルネットワーク更新システム2の構成図である。図14に示す構成は、図2に示した構成と比べて、サーバ21のプログラム格納部211に縮約率補正部2116を実現するためのプログラムがさらに格納され、記憶部20に縮約率補正テーブル204がさらに格納される。縮約率補正部2116は、係数特定部2110によって特定された演算ユニットや重み係数情報と縮約率補正テーブル204とを用いて、間引き部2113で用いられる縮約率を補正する。縮約率補正テーブル204は、縮約率の補正値を決定するために用いられる情報である。
FIG. 14 is a block diagram of the neural
図15は、縮約率補正テーブル204の一例を示す図である。縮約率補正テーブル204は重要データに大きく関与する演算ユニット数140と縮約率141とを対応付けて管理するためのテーブルである。重要データ関連演算ユニット数140の欄には、重要データに大きく関与する演算ユニットの数が記述される。縮約率141の欄には、縮約時に使用される縮約率が記述される。縮約率とはニューラルネットワークの層単位で重み係数を間引く程度を表す割合情報である。たとえば縮約率の規定値が20%に設定されている場合は、その層の重み係数を20%間引くことになる。
FIG. 15 is a diagram showing an example of the reduction rate correction table 204. The reduction rate correction table 204 is a table for managing the number of
縮約率141の例ではもともと設定されている縮約率に対して乗算や除算で補正することを想定して記述しているが、ビットシフト演算や加減算などの別の手段で設定するようにしても良い。また、縮約率を10%、20%のように絶対値で設定するようにしてもよい。縮約率補正テーブル204を使用する場合、たとえば、ニューラルネットワークの任意の層において、係数特定部2110によって特定された演算ユニットの数=25となった場合は、その層の縮約率は本テーブル情報を使って通常の縮約率から2で除算したものとなる。なお、本例では層単位での処理を記載しているが、層単位以外のニューラルネットワークにおける任意の処理単位であってもよい。
In the example of the
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。 Each of the above-described embodiments and modifications may be combined. Although various embodiments and modifications have been described above, the present invention is not limited to these contents. Other aspects considered within the scope of the technical idea of the present invention are also included within the scope of the present invention.
100 … 演算ユニット
2 … ニューラルネットワーク更新システム
20 … 記憶部
21 … サーバ
22 … 電子制御装置
23 … ネットワーク
200 … 縮約前ニューラルネットワーク
201 … 縮約後ニューラルネットワーク
202 … 重要データ
203 … 通常データ
204 … 縮約率補正テーブル
210 … 演算部
220 … 記憶部
221 … 演算部
2000 … 第1の結合情報群
2010 … 第3の結合情報群
2110 … 係数特定部
2111 … 操作係数決定部
2112 … 係数群算出部
2113 … 間引き部
2114 … NN実行制御部
2115 … NN学習制御部
2116 … 縮約率補正部
2120 … 第2の結合情報群
2200 … 縮約後NN
2210 … CPU
22001 … ネットワーク構造情報
30、31 … データセット管理テーブル
100 ...
2210 ... CPU
22001 ...
Claims (10)
前記ニューラルネットワークは、
入力値が与えられたときに出力値を決定するための前記結合情報群である第1の結合情報群と、前記入力値として与えられた所定のデータに対する影響度が所定値を上回る複数の前記結合情報である第2の結合情報群とに基づき、間引き部が前記第1の結合情報群から少なくとも1つの結合情報を削除することで作成される第3の結合情報群を含むニューラルネットワークである電子制御装置。 An electronic control device that stores a neural network including a plurality of neurons and a group of connection information including a plurality of connection information that links the neurons to each other.
The neural network is
A first binding information group is the binding information group for determining the output value when the input value is given, impact for a given data given as the input value of the plurality of above a predetermined value In a neural network including a third coupling information group created by a thinning unit deleting at least one coupling information from the first coupling information group based on the second coupling information group which is the coupling information. An electronic control device.
前記所定のデータは、車両走行に関する優先度が所定値を上回るデータである、電子制御装置。 In the electronic control device according to claim 1,
The predetermined data is an electronic control device in which the priority regarding vehicle traveling exceeds a predetermined value.
前記間引き部は、前記第2の結合情報群に含まれるそれぞれの前記結合情報に対応する操作係数の集合である操作係数群を決定し、それぞれの前記操作係数を前記第1の結合情報群に含まれる対応する前記結合情報に評価係数を算出して評価係数群とし、前記評価係数群のうち所定値を上回る前記評価係数について、対応する前記結合情報を前記第1の結合情報群の中から特定し、当該特定された結合情報以外の前記結合情報を前記第1の結合情報群から削除して、前記第3の結合情報群を作成する電子制御装置。 In the electronic control device according to claim 2,
The thinning unit determines an operation coefficient group which is a set of operation coefficients corresponding to each of the connection information included in the second connection information group, and each said operation coefficient is used as the first connection information group. An evaluation coefficient is calculated for the corresponding coupling information included to form an evaluation coefficient group, and for the evaluation coefficient exceeding a predetermined value in the evaluation coefficient group, the corresponding coupling information is obtained from the first coupling information group. An electronic control device that creates the third combination information group by specifying and deleting the combination information other than the specified combination information from the first combination information group.
係数特定部が、前記複数のニューロンのうち、前記所定のデータが与えられた場合の前記出力値が所定値を上回る場合に、当該出力値の決定に関与したニューロンを特定し、当該特定されたニューロンに紐付く結合情報を、前記第2の結合情報群を構成する前記結合情報として特定する電子制御装置。 In the electronic control device according to claim 3,
The coefficient specifying unit identifies and identifies the neuron involved in the determination of the output value when the output value when the predetermined data is given exceeds the predetermined value among the plurality of neurons. An electronic control device that specifies connection information associated with a neuron as the connection information constituting the second connection information group.
前記第3の結合情報群は、前記間引き部が前記第1の結合情報群から少なくとも1つの結合情報を削除し、ファインチューニングにより最適化された前記結合情報群である電子制御装置。 In the electronic control device according to claim 1,
The third coupling information group is an electronic control device in which the thinning unit deletes at least one coupling information from the first coupling information group and is optimized by fine tuning.
前記サーバは、記憶部と、演算部と、を備え、
前記記憶部は、入力値が与えられたときに出力値を決定するための前記結合情報群である第1の結合情報群を格納し、
前記演算部は、
所定のデータが前記入力値として与えられた場合に、前記所定のデータに対する影響度が所定値を上回る複数の前記結合情報である第2の結合情報群を特定する係数特定部と、
前記第1の結合情報群と前記第2の結合情報群とに基づき、前記第1の結合情報群から少なくとも1つの結合情報を削除して第3の結合情報群を作成する間引き部と、を備え、
前記電子制御装置は、前記第3の結合情報群を含むニューラルネットワークを格納するニューラルネットワーク更新システム。 A neural network update system that includes a server and an electronic control device, and updates a neural network including a plurality of neurons and a group of connection information including a plurality of connection information that links the neurons to each other.
The server includes a storage unit and a calculation unit.
The storage unit stores the first binding information group is the binding information group for determining the output value when the input value is given,
The arithmetic unit
When the predetermined data is given as the input value, the coefficient specifying unit for specifying the second combined information group which is a plurality of the combined information whose degree of influence on the predetermined data exceeds the predetermined value, and
Based on the first binding information group and the second binding information group, a thinning unit that deletes at least one binding information from the first binding information group to create a third binding information group. Prepare,
The electronic control device is a neural network update system that stores a neural network including the third coupling information group.
前記所定のデータは、車両走行に関する優先度が所定値を上回るデータであるニューラルネットワーク更新システム。 In the neural network update system according to claim 6,
The predetermined data is a neural network update system in which the priority regarding vehicle running exceeds the predetermined value.
前記間引き部は、前記第2の結合情報群に含まれるそれぞれの前記結合情報に対応する操作係数の集合である操作係数群を決定し、それぞれの前記操作係数を前記第1の結合情報群に含まれる対応する前記結合情報に評価係数を算出して評価係数群とし、前記評価係数群のうち所定値を上回る前記評価係数について、対応する前記結合情報を前記第1の結合情報群の中から特定し、当該特定された結合情報以外の前記結合情報を前記第1の結合情報群から削除して、前記第3の結合情報群を作成するニューラルネットワーク更新システム。 In the neural network update system according to claim 7,
The thinning unit determines an operation coefficient group which is a set of operation coefficients corresponding to each of the connection information included in the second connection information group, and each said operation coefficient is used as the first connection information group. An evaluation coefficient is calculated for the corresponding coupling information included to form an evaluation coefficient group, and for the evaluation coefficient exceeding a predetermined value in the evaluation coefficient group, the corresponding coupling information is obtained from the first coupling information group. A neural network update system that creates the third coupling information group by specifying and deleting the coupling information other than the identified coupling information from the first coupling information group.
前記係数特定部は、前記複数のニューロンのうち、前記所定のデータが与えられた場合の前記出力値が所定値を上回る場合に、当該出力値の決定に関与したニューロンを特定し、当該特定されたニューロンに紐付く結合情報を、前記第2の結合情報群を構成する前記結合情報として特定するニューラルネットワーク更新システム。 In the neural network update system according to claim 8,
The coefficient specifying unit identifies and identifies the neuron involved in the determination of the output value when the output value when the predetermined data is given exceeds the predetermined value among the plurality of neurons. A neural network update system that specifies the connection information associated with a neuron as the connection information constituting the second connection information group.
前記間引き部は、前記第1の結合情報群から少なくとも1つの結合情報を削除し、ファインチューニングにより前記結合情報群を最適化して前記第3の結合情報群を作成するニューラルネットワーク更新システム。 In the neural network update system according to claim 6,
The thinning unit is a neural network update system that deletes at least one join information from the first join information group, optimizes the join information group by fine tuning, and creates the third join information group.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018168864A JP6986503B2 (en) | 2018-09-10 | 2018-09-10 | Electronic control device, neural network update system |
PCT/JP2019/032837 WO2020054345A1 (en) | 2018-09-10 | 2019-08-22 | Electronic control device and neural network update system |
DE112019003929.6T DE112019003929T5 (en) | 2018-09-10 | 2019-08-22 | ELECTRONIC CONTROL DEVICE AND UPDATING SYSTEM OF A NEURAL NETWORK |
US17/270,512 US12045023B2 (en) | 2018-09-10 | 2019-08-22 | Electronic control device and neural network update system |
CN201980050165.0A CN112534446B (en) | 2018-09-10 | 2019-08-22 | Electronic control device and neural network updating system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018168864A JP6986503B2 (en) | 2018-09-10 | 2018-09-10 | Electronic control device, neural network update system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020042496A JP2020042496A (en) | 2020-03-19 |
JP6986503B2 true JP6986503B2 (en) | 2021-12-22 |
Family
ID=69777809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018168864A Active JP6986503B2 (en) | 2018-09-10 | 2018-09-10 | Electronic control device, neural network update system |
Country Status (5)
Country | Link |
---|---|
US (1) | US12045023B2 (en) |
JP (1) | JP6986503B2 (en) |
CN (1) | CN112534446B (en) |
DE (1) | DE112019003929T5 (en) |
WO (1) | WO2020054345A1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021163287A (en) * | 2020-03-31 | 2021-10-11 | エイベックス・テクノロジーズ株式会社 | Augmenting reality system |
CN116508052A (en) | 2020-11-16 | 2023-07-28 | 日立安斯泰莫株式会社 | DNN reduction device and in-vehicle arithmetic device |
JP7040589B1 (en) * | 2020-12-01 | 2022-03-23 | トヨタ自動車株式会社 | Machine learning methods and machine learning systems |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5636327A (en) | 1991-09-18 | 1997-06-03 | Matsushita Electric Industrial Co., Ltd. | Neural network circuit |
JP3172278B2 (en) * | 1991-09-18 | 2001-06-04 | 松下電器産業株式会社 | Neural network circuit |
JPH05197821A (en) * | 1991-11-11 | 1993-08-06 | Omron Corp | Method for optimizing hierarchical neural network and device therefor |
JPH07168799A (en) * | 1993-09-22 | 1995-07-04 | Fuji Electric Co Ltd | Learning device for neural network |
CN105938558B (en) * | 2015-03-06 | 2021-02-09 | 松下知识产权经营株式会社 | Learning method |
JP6446126B2 (en) * | 2015-04-17 | 2018-12-26 | Cocoro Sb株式会社 | Processing system and program |
EP3272611B1 (en) * | 2015-04-21 | 2019-07-24 | Panasonic Intellectual Property Management Co., Ltd. | Information processing system, information processing method, and program |
EP3447690A4 (en) * | 2016-04-19 | 2020-01-01 | Cambricon Technologies Corporation Limited | Maxout layer operation apparatus and method |
US20170364799A1 (en) * | 2016-06-15 | 2017-12-21 | Kneron Inc. | Simplifying apparatus and simplifying method for neural network |
JP6708044B2 (en) | 2016-07-28 | 2020-06-10 | 富士通株式会社 | Image recognition device, image recognition program, image recognition method, and recognition device |
US12093813B2 (en) * | 2016-09-30 | 2024-09-17 | Intel Corporation | Dynamic neural network surgery |
KR102336295B1 (en) * | 2016-10-04 | 2021-12-09 | 한국전자통신연구원 | Convolutional neural network system using adaptive pruning and weight sharing and operation method thererof |
US20180096249A1 (en) * | 2016-10-04 | 2018-04-05 | Electronics And Telecommunications Research Institute | Convolutional neural network system using adaptive pruning and weight sharing and operation method thereof |
CN108171323B (en) * | 2016-12-28 | 2021-03-26 | 上海寒武纪信息科技有限公司 | Artificial neural network computing device and method |
CN107239803A (en) * | 2017-07-21 | 2017-10-10 | 国家海洋局第海洋研究所 | Utilize the sediment automatic classification method of deep learning neutral net |
US20190362235A1 (en) * | 2018-05-23 | 2019-11-28 | Xiaofan Xu | Hybrid neural network pruning |
-
2018
- 2018-09-10 JP JP2018168864A patent/JP6986503B2/en active Active
-
2019
- 2019-08-22 WO PCT/JP2019/032837 patent/WO2020054345A1/en active Application Filing
- 2019-08-22 US US17/270,512 patent/US12045023B2/en active Active
- 2019-08-22 CN CN201980050165.0A patent/CN112534446B/en active Active
- 2019-08-22 DE DE112019003929.6T patent/DE112019003929T5/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN112534446A (en) | 2021-03-19 |
US12045023B2 (en) | 2024-07-23 |
DE112019003929T5 (en) | 2021-05-06 |
US20210333764A1 (en) | 2021-10-28 |
WO2020054345A1 (en) | 2020-03-19 |
CN112534446B (en) | 2024-07-02 |
JP2020042496A (en) | 2020-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7361775B2 (en) | Personal driving style learning for autonomous driving | |
JP7086111B2 (en) | Feature extraction method based on deep learning used for LIDAR positioning of autonomous vehicles | |
CN110850861B (en) | Attention-based hierarchical lane-changing depth reinforcement learning | |
CN110850854A (en) | Autonomous driver agent and policy server for providing policies to autonomous driver agents | |
CN111771135B (en) | LIDAR positioning using RNN and LSTM for time smoothing in autonomous vehicles | |
CN111899594B (en) | Automated training data extraction method for dynamic models of autonomous vehicles | |
JP6986503B2 (en) | Electronic control device, neural network update system | |
CN110377025A (en) | Sensor aggregation framework for automatic driving vehicle | |
US20210004966A1 (en) | Method for the Assessment of Possible Trajectories | |
CN111771141A (en) | LIDAR positioning in autonomous vehicles using 3D CNN networks for solution inference | |
CN114194211A (en) | Automatic driving method and device, electronic equipment and storage medium | |
JP5070574B2 (en) | Local traffic prediction program generation device, local traffic prediction device, local traffic prediction program generation method, local traffic prediction method and program | |
CN114930122B (en) | Method and processor circuit for updating digital road map | |
JP2019031268A (en) | Control policy learning and vehicle control method based on reinforcement learning without active exploration | |
JP2022058566A (en) | Autonomous traveling vehicle dynamic model evaluation package | |
CN113128381A (en) | Obstacle trajectory prediction method, system and computer storage medium | |
JP2020123269A (en) | Arithmetic unit | |
CN110281949A (en) | A kind of automatic Pilot unifies hierarchical decision making method | |
JP6586146B2 (en) | Map information processing apparatus, map information processing method, and map information processing program | |
JP6838776B2 (en) | In-vehicle processing device | |
JP2018087753A (en) | Nonlinear optimization program for continuous value optimization problem, and route search program and route search device | |
CN113260936B (en) | Moving object control device, moving object control learning device, and moving object control method | |
KR20200095382A (en) | Method for providing autonomous driving service platform to be used for supporting autonomous driving of vehicles by using competitive computing and information fusion, and server using the same | |
JP2018084972A (en) | Vehicle track graph generation device | |
JP2023531927A (en) | Driving decision-making method, driving decision-making device, and chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200828 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210921 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211022 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20211102 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211129 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6986503 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |