JPWO2020008869A1 - 演算処理システム、センサシステム、演算処理方法、及びプログラム - Google Patents
演算処理システム、センサシステム、演算処理方法、及びプログラム Download PDFInfo
- Publication number
- JPWO2020008869A1 JPWO2020008869A1 JP2020528776A JP2020528776A JPWO2020008869A1 JP WO2020008869 A1 JPWO2020008869 A1 JP WO2020008869A1 JP 2020528776 A JP2020528776 A JP 2020528776A JP 2020528776 A JP2020528776 A JP 2020528776A JP WO2020008869 A1 JPWO2020008869 A1 JP WO2020008869A1
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic processing
- physical quantities
- processing system
- input
- types
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 100
- 238000003672 processing method Methods 0.000 title claims description 16
- 238000001514 detection method Methods 0.000 claims abstract description 147
- 238000013528 artificial neural network Methods 0.000 claims abstract description 103
- 238000004364 calculation method Methods 0.000 claims abstract description 27
- 210000002569 neuron Anatomy 0.000 claims description 46
- 230000001133 acceleration Effects 0.000 claims description 34
- 238000000034 method Methods 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 10
- 230000035945 sensitivity Effects 0.000 abstract description 52
- 238000012937 correction Methods 0.000 description 44
- 230000006870 function Effects 0.000 description 37
- 230000000875 corresponding effect Effects 0.000 description 22
- 230000008901 benefit Effects 0.000 description 15
- 230000000052 comparative effect Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 10
- 210000004027 cell Anatomy 0.000 description 9
- 238000010801 machine learning Methods 0.000 description 7
- 238000012888 cubic function Methods 0.000 description 6
- 230000009897 systematic effect Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000012886 linear function Methods 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- 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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
-
- 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
- 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/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Testing Or Calibration Of Command Recording Devices (AREA)
Abstract
本開示の課題は、複数種類の物理量に対して感度を有する複数のセンサの集合であるセンサ群からの検知信号が入力された場合に、検知信号から任意の物理量を抽出することにある。演算処理システム(10)は、入力部(1)と、出力部(2)と、演算部(3)と、を備える。入力部(1)には、複数のセンサ(A1,…,Ar)の集合であるセンサ群(AG)からの複数の検知信号(DS1,…,DSn)が入力される。出力部(2)は、複数の検知信号(DS1,…,DSn)に含まれる複数種類の物理量のうち2種類以上の物理量(x1,…,xt)を出力する。演算部(3)は、学習済みのニューラルネットワークを用いて、入力部(1)に入力された複数の検知信号(DS1,…,DSn)に基づいて2種類以上の物理量(x1,…,xt)を演算する。
Description
本開示は、一般に演算処理システム、センサシステム、演算処理方法、及びプログラムに関する。より詳細には、本開示は、複数種類の物理量を演算により処理する演算処理システム、センサシステム、演算処理方法、及びプログラムに関する。
特許文献1には、センス部を構成する複数のループコイルと、センス部上で操作される位置指示器との間の距離に応じて得られる複数の検出値から、位置指示器による指定位置の座標値を求める位置検出装置が開示されている。複数のループコイルには、位置指示器による指定位置に応じた交流電圧が誘起される。複数のループコイルに誘起された交流電圧は、複数の直流電圧に変換される。ニューラルネットワークは、複数の直流電圧を位置指示器による指定位置のX座標値及びY座標値に対応する2つの直流電圧に変換する。
特許文献1に記載の位置検出装置(演算処理システム)は、入力される1種類の物理量を表す信号(ループコイルに誘起される電圧)に基づいて、入力される物理量とは異なる物理量(位置指示器の座標値)を出力するに過ぎない。このため、この演算処理システムでは、複数種類の物理量に対して感度を有するセンサからの検知信号が入力された場合に、検知信号から任意の物理量を抽出することができない、という問題があった。
本開示は、複数種類の物理量に対して感度を有するセンサからの検知信号が入力された場合に、検知信号から任意の物理量を抽出することのできる演算処理システム、センサシステム、演算処理方法、及びプログラムを提供することを目的とする。
本開示の一態様に係る演算処理システムは、入力部と、出力部と、演算部と、を備える。前記入力部には、複数のセンサの集合であるセンサ群からの複数の検知信号が入力される。前記出力部は、前記複数の検知信号に含まれる複数種類の物理量のうち2種類以上の物理量を出力する。前記演算部は、学習済みのニューラルネットワークを用いて、前記入力部に入力された前記複数の検知信号に基づいて前記2種類以上の物理量を演算する。
本開示の一態様に係るセンサシステムは、上記の演算処理システムと、上記のセンサ群と、を備える。
本開示の一態様に係る演算処理方法は、学習済みのニューラルネットワークを用いて、複数のセンサの集合であるセンサ群からの複数の検知信号に基づいて、前記複数の検知信号に含まれる複数種類の物理量のうち2種類以上の物理量を演算する方法である。また、この演算処理方法は、演算した前記2種類以上の物理量を出力する方法である。
本開示の一態様に係るプログラムは、1以上のプロセッサに、上記の演算処理方法を実行させるためのプログラムである。
(1)概要
本実施形態の演算処理システム10は、図1に示すように、センサシステム100の一部であり、複数のセンサA1,…,Ar(“r”は2以上の整数)の集合であるセンサ群AGと共に用いられる。言い換えれば、センサシステム100は、演算処理システム10と、センサ群AGと、を備えている。ここで、複数のセンサA1,…,Arは、例えばMEMS(Micro Electro Mechanical Systems)デバイスであり、互いに異なるセンサである。例えば、センサ群AGは、1種類の物理量に対して感度を有するセンサ、2種類の物理量に対して感度を有するセンサ、及び更に多くの種類の物理量に対して感度を有するセンサを含み得る。本開示でいう「物理量」は、検知対象の物理的な性質若しくは状態、又は性質及び状態を表現する量であり、例えば、加速度、角速度、圧力、温度、湿度、及び光量などである。本実施形態では、同じ加速度であっても、x軸方向の加速度、y軸方向の加速度、及びz軸方向の加速度をそれぞれ互いに異なる種類の物理量として扱う。
本実施形態の演算処理システム10は、図1に示すように、センサシステム100の一部であり、複数のセンサA1,…,Ar(“r”は2以上の整数)の集合であるセンサ群AGと共に用いられる。言い換えれば、センサシステム100は、演算処理システム10と、センサ群AGと、を備えている。ここで、複数のセンサA1,…,Arは、例えばMEMS(Micro Electro Mechanical Systems)デバイスであり、互いに異なるセンサである。例えば、センサ群AGは、1種類の物理量に対して感度を有するセンサ、2種類の物理量に対して感度を有するセンサ、及び更に多くの種類の物理量に対して感度を有するセンサを含み得る。本開示でいう「物理量」は、検知対象の物理的な性質若しくは状態、又は性質及び状態を表現する量であり、例えば、加速度、角速度、圧力、温度、湿度、及び光量などである。本実施形態では、同じ加速度であっても、x軸方向の加速度、y軸方向の加速度、及びz軸方向の加速度をそれぞれ互いに異なる種類の物理量として扱う。
なお、複数のセンサA1,…,Arの各々においては、検知する物理量が、他のセンサA1,…,Arの検知する物理量と重複していてもよい。つまり、センサ群AGには、例えば複数の温度センサが含まれたり、複数の圧力センサが含まれたりしてもよい。
本実施形態において、「センサが複数種類の物理量に対して感度を有する」とは、以下のような意味で用いている。すなわち、例えば通常の加速度センサは、検知した加速度の大きさに応じた信号値(ここでは、電圧値)の検知信号を出力する。つまり、加速度センサは、加速度に対して感度を有している。一方、加速度センサは、加速度センサが配置されている環境の温度又は湿度などの影響を受ける。つまり、加速度センサの出力する検知信号の信号値は、加速度を純粋に表すのではなく、温度又は湿度などの加速度以外の物理量の影響を受けた値となる。
このように、加速度センサは、加速度のみならず、温度又は湿度に対しても感度を有している、つまり複数種類の物理量に対して感度を有している、と言える。このことは、加速度センサに限らず、例えば温度センサ等の他の物理量の検知に特化したセンサであっても、複数種類の物理量に対して感度を有し得る。本開示でいう「環境」は、検知対象が存在する所定の空間(例えば、閉空間)である。
演算処理システム10は、入力部1と、出力部2と、演算部3と、を備えている。
入力部1は、センサ群AGからの複数の検知信号DS1,…,DSn(“n”は2以上の整数)が入力される入力インタフェースである。ここで、センサA1が例えば加速度センサである場合、センサA1は、x軸方向の加速度の検知結果を含む検知信号と、y軸方向の加速度の検知結果を含む検知信号との2つの検知信号を出力する場合がある。つまり、複数のセンサA1,…,Arの各々は、1つの検知信号を出力する構成に限らず、2以上の検知信号を出力する構成であってもよい。したがって、複数のセンサA1,…,Arの数と、複数の検知信号DS1,…,DSnの数とは、必ずしも1対1に対応しない。
出力部2は、複数の検知信号DS1,…,DSnに含まれる複数種類の物理量x1,…,xk(“k”は2以上の整数)のうち、少なくとも2種類以上の物理量x1,…,xt(“t”は2以上であって“k”以下の整数)を出力する出力インタフェースである。本開示でいう「物理量」とは、物理量に関する情報(データ)をいう。「物理量に関する情報」は、例えば物理量を表す数値などである。
演算部3は、学習済みのニューラルネットワークNN1(図2参照)を用いて、入力部1に入力された複数の検知信号DS1,…,DSnに基づいて、2種類以上の物理量x1,…,xtを演算する。つまり、演算部3は、複数の検知信号DS1,…,DSnの信号値(ここでは、電圧値)を入力値として、ニューラルネットワークNN1を用いて2種類以上の物理量x1,…,xtを個別に求める演算を行う。
上述のように、本実施形態の演算処理システム10では、複数種類の物理量x1,…,xkに対して感度を有するセンサ群AGからの検知信号DS1,…,DSnが入力された場合に、検知信号DS1,…,DSnから任意の物理量x1,…,xtを抽出することができる、という利点がある。
(2)詳細
以下、本実施形態の演算処理システム10及びセンサシステム100について図1〜図4を用いて詳細に説明する。本実施形態のセンサシステム100は、既に述べたように、複数のセンサA1,…,Arの集合であるセンサ群AGと、演算処理システム10と、を備えている。また、本実施形態の演算処理システム10は、既に述べたように、入力部1と、出力部2と、演算部3と、を備えている。本実施形態では、演算処理システム10は、入力部1、出力部2、及び演算部3を1枚の基板に実装することで構成されている。
以下、本実施形態の演算処理システム10及びセンサシステム100について図1〜図4を用いて詳細に説明する。本実施形態のセンサシステム100は、既に述べたように、複数のセンサA1,…,Arの集合であるセンサ群AGと、演算処理システム10と、を備えている。また、本実施形態の演算処理システム10は、既に述べたように、入力部1と、出力部2と、演算部3と、を備えている。本実施形態では、演算処理システム10は、入力部1、出力部2、及び演算部3を1枚の基板に実装することで構成されている。
また、本実施形態では、複数のセンサA1,…,Arは、1枚の基板に実装することで、同一の環境に配置されている。本開示でいう「同一の環境」とは、任意の種類の物理量が変化した際に、この物理量の変化が同様に生じ得る環境のことをいう。例えば、任意の種類の物理量が温度であれば、同一の環境下においては、いずれの位置においても同様に温度が変化し得る。同一の環境下においては、複数のセンサA1,…,Arは、互いに離れて配置されていてもよい。なお、演算処理システム10が実装される基板と、複数のセンサA1,…,Arが実装される基板とは、同じであってもよいし、異なっていてもよい。
入力部1は、センサ群AGからの複数の検知信号DS1,…,DSnが入力される入力インタフェースである。入力部1は、入力された複数の検知信号DS1,…,DSnを演算部3に出力する。言い換えれば、入力部1に入力された複数の検知信号DS1,…,DSnの信号値(電圧値)V1,…,Vnは、図2に示すように、それぞれニューラルネットワークNN1の入力層L1(後述する)の複数のニューロンNE1(後述する)に入力される。
本実施形態では、入力層L1の複数のニューロンNE1にそれぞれ入力される複数の検知信号DS1,…,DSnの信号値V1,…,Vnは、入力部1にて適宜の正規化処理を実行することにより、正規化されている。以下では、特に断りのない限り、複数の検知信号DS1,…,DSnの信号値V1,…,Vnは、正規化された値として説明する。
出力部2は、複数の検知信号DS1,…,DSnに含まれる複数種類の物理量x1,…,xkのうち、少なくとも2種類以上の物理量x1,…,xtを出力する出力インタフェースである。本実施形態では、2種類以上の物理量x1,…,xtは、加速度、角速度、温度、及びセンサA1,…,Arに掛かる応力のうち少なくとも2種類の物理量を含んでいる。
出力部2には、ニューラルネットワークNN1の出力層L3(後述する。図2参照)の複数のニューロンNE1からの出力信号が入力される。これら出力信号は、それぞれ対応する1種類の物理量x1,…,xtに関する情報を含んでいる。したがって、出力部2には、2種類以上の物理量x1,…,xtに関する情報が個別に入力される。出力部2は、これら2種類以上の物理量x1,…,xtに関する情報を、演算処理システム10の外部の他システム(例えば、ECU(Engine Control Unit)等)へ出力する。なお、出力部2は、出力層L3から受け取った2種類以上の物理量x1,…,xtに関する情報を、そのまま外部の他システムへ出力してもよいし、外部の他システムで処理可能なデータに変換してから外部の他システムへ出力してもよい。
演算部3は、入力部1に入力された複数の検知信号DS1,…,DSnの信号値V1,…,Vnと、学習済みのニューラルネットワークNN1とを用いて、2種類以上の物理量x1,…,xtを演算するように構成されている。ニューラルネットワークNN1は、複数の検知信号DS1,…,DSnの信号値V1,…,Vnを入力値として機械学習(例えば、ディープラーニング等)することで得られる。
ニューラルネットワークNN1は、図2に示すように、1つの入力層L1と、1以上の中間層(隠れ層)L2と、1つの出力層L3と、で構成されている。入力層L1、1以上の中間層L2、及び出力層L3は、いずれも複数のニューロン(ノード)NE1で構成されている。1以上の中間層L2及び出力層L3の各々のニューロンNE1は、1以上前の層の複数のニューロンNE1と結合している。1以上の中間層L2及び出力層L3の各々のニューロンNE1への入力値は、1以上前の層の複数のニューロンNE1の各々の出力値に、それぞれ固有の重み付け係数が乗算された値の総和である。1以上の中間層L2において、各ニューロンNE1の出力値は、入力値を活性化関数に代入することで得られる。
本実施形態では、入力層L1の複数のニューロンNE1には、それぞれ複数の検知信号DS1,…,DSnの信号値V1,…,Vnが入力される。つまり、入力層L1に含まれるニューロンNE1の数は、複数の検知信号DS1,…,DSnの数に等しい。また、本実施形態では、出力層L3の複数のニューロンNE1は、それぞれ2種類以上の物理量x1,…,xtのうち対応する種類の物理量を含む出力信号を出力する。つまり、出力層L3に含まれるニューロンNE1の数は、物理量x1,…,xtの種類の数に等しい。
本実施形態では、ニューラルネットワークNN1は、例えば図4に示すような1以上のセル31を含むニューロモルフィック素子30にて実現されている。言い換えれば、演算部3は、ニューロモルフィック素子30を含んでいる。
一例として、図3Aに示すニューロンNE1のモデルは、図3Bに示すニューロモルフィック素子にて模擬し得る。図3Aに示す例では、ニューロンNE1には、1以上前の層の複数のニューロンNE1からの複数の出力値α1,…,αnに、それぞれ複数の重み付け係数w1,…,wnが乗算された値が入力される。したがって、このニューロンNE1への入力値αは、以下の数式で表される。
また、ニューロンNE1の出力値γは、ニューロンNE1への入力値αを活性化関数に代入することにより得られる。
図3Bに示すニューロモルフィック素子は、第1セル31としての複数の抵抗素子R1,…,Rnと、第2セル32としての増幅回路B1と、を備えている。複数の抵抗素子R1,…,Rnの第1端は、それぞれ複数の入力電位v1,…,vnに電気的に接続されており、第2端は増幅回路B1の入力端子に電気的に接続されている。したがって、増幅回路B1の入力端子に流れ込む入力電流Iは、以下の数式で表される。
増幅回路B1は、例えば1以上の演算増幅器を有している。増幅回路B1の出力電位voは、入力電流Iの大小に応じて変化する。本実施形態では、増幅回路B1は、出力電位voが入力電流Iを変数とするシグモイド関数で擬似的に表されるように構成されている。
つまり、複数の入力電位v1,…,vnは、それぞれ図3Aに示すニューロンNE1のモデルにおける複数の出力値α1,…,αnに相当する。また、複数の抵抗素子R1,…,Rnの抵抗値の逆数は、それぞれ図3Aに示すニューロンNE1のモデルにおける複数の重み付け係数w1,…,wnに相当する。また、入力電流Iは、図3Aに示すニューロンNE1のモデルにおける入力値αに相当する。また、出力電位voは、図3Aに示すニューロンNE1のモデルにおける出力値γに相当する。
このように、第1セル31(ここでは、抵抗素子)は、ニューラルネットワークNN1におけるニューロンNE1間の重み付け係数w1,…,wnを模擬している。本実施形態では、ニューロモルフィック素子30(図4参照)は、ニューラルネットワークNN1におけるニューロンNE1間の重み付け係数w1,…,wnを抵抗値で表す抵抗型の素子(第1セル31)を含んでいる。例えば、第1セル31は、PCM(Phase-Change Memory:相変化メモリ)又はReRAM(Resistive Random Access Memory:抵抗変化型メモリ)等の不揮発性の記憶素子である。不揮発性の記憶素子としては、例えばSTT−RAM(Spin Transfer Torque Random Access Memory:スピン注入メモリ)等も適用し得る。
また、増幅回路B1は、ニューロンNE1を模擬している。本実施形態では、増幅回路B1は、入力電流Iの大小に応じた信号を出力している。例えば、増幅回路B1の入出力特性は、活性化関数としてシグモイド関数を模擬している。その他、増幅回路B1の入出力特性により模擬する活性化関数は、例えばステップ関数、又はRelu(Rectified Linear Unit)関数などの他の非線形関数であってもよい。
図4に示す例では、1つの入力層L1、2つの中間層L2、及び1つの出力層L3を有するニューラルネットワークNN1をニューロモルフィック素子30にて模擬している。図4に示す例では、入力電位v1,…,vnは、それぞれ複数の検知信号DS1,…,DSnの信号値V1,…,Vnに相当する。出力電位X1,…,Xtは、それぞれ出力層L3の複数のニューロンNE1からの出力信号に相当する。複数の第1増幅回路B11,…,B1nは、1つ目の中間層L2の複数のニューロンNE1を模擬している。複数の第2増幅回路B21,…,B2nは、それぞれ2つ目の中間層L2の複数のニューロンNE1を模擬している。複数の第1抵抗素子R111,…,R1nnは、それぞれ入力層L1の複数のニューロンNE1と、1つ目の中間層L2の複数のニューロンNE1との間の重み付け係数を模擬している。複数の第2抵抗素子R211,…,R2nnは、それぞれ1つ目の中間層L2の複数のニューロンNE1と、2つ目の中間層L2の複数のニューロンNE1との間の重み付け係数を模擬している。なお、複数の第2増幅回路B21,…,B2nと、出力電位X1,…,Xtとの間は、図示を省略している。このように、ニューラルネットワークNN1は、1以上の第1セル31及び1以上の第2セル32を含むニューロモルフィック素子30にて模擬することが可能である。
(3)動作
以下、本実施形態の演算処理システム10の動作について説明する。以下では、まず、演算処理システム10の使用前において、機械学習により学習済みのニューラルネットワークNN1を構築する学習フェーズについて説明する。次に、演算処理システム10を使用する推論フェーズについて説明する。
以下、本実施形態の演算処理システム10の動作について説明する。以下では、まず、演算処理システム10の使用前において、機械学習により学習済みのニューラルネットワークNN1を構築する学習フェーズについて説明する。次に、演算処理システム10を使用する推論フェーズについて説明する。
(3.1)学習フェーズ
学習フェーズにおける機械学習は、例えば学習用のセンターで実行される。つまり、推論フェーズにて演算処理システム10を使用する場所(例えば、自動車などの車両)と、学習フェーズにて機械学習を実行する場所とは互いに異なっていてもよい。学習用のセンターでは、1以上のプロセッサを用いて、ニューラルネットワークNN1の機械学習を行う。機械学習を行うに当たり、ニューラルネットワークNN1の重み付け係数は、初期化されている。本開示でいう「プロセッサ」は、例えばCPU(Central Processing Unit)及びGPU(Graphics Processing Unit)等の汎用のプロセッサの他に、ニューラルネットワークNN1での演算に特化した専用のプロセッサを含み得る。
学習フェーズにおける機械学習は、例えば学習用のセンターで実行される。つまり、推論フェーズにて演算処理システム10を使用する場所(例えば、自動車などの車両)と、学習フェーズにて機械学習を実行する場所とは互いに異なっていてもよい。学習用のセンターでは、1以上のプロセッサを用いて、ニューラルネットワークNN1の機械学習を行う。機械学習を行うに当たり、ニューラルネットワークNN1の重み付け係数は、初期化されている。本開示でいう「プロセッサ」は、例えばCPU(Central Processing Unit)及びGPU(Graphics Processing Unit)等の汎用のプロセッサの他に、ニューラルネットワークNN1での演算に特化した専用のプロセッサを含み得る。
まず、ニューラルネットワークNN1の学習に用いる学習用のデータを取得する。具体的には、センサ群AGを学習用の環境に配置する。そして、学習用の環境において、2種類以上の物理量x1,…,xtのうちの1種類の物理量を段階的に変化させながら、センサ群AGから複数の検知信号DS1,…,DSnの信号値V1,…,Vnを取得する。以下では、学習用の環境における2種類以上の物理量x1,…,xtと、信号値V1,…,Vnとの組み合わせを「学習用データセット」という。
例えば、変化対象の物理量が温度である場合、学習用の環境の温度を段階的に変化させながら、信号値V1,…,Vnを取得する。ここで、温度を10段階に変化させた場合、温度についての学習用データセットを10個取得することになる。以下、2種類以上の物理量x1,…,xtの全ての種類の物理量について、上記の処理を繰り返す。例えば、3種類の物理量について、それぞれ物理量を5段階に変化させながら信号値V1,…,Vnを取得する場合、125(=53)個の学習用データセットを取得することになる。
次に、取得した複数の学習用データセットを用いて、ニューラルネットワークNN1の学習を行う。具体的には、1以上のプロセッサは、複数の学習用データセットの各々について、入力層L1の複数のニューロンNE1にそれぞれ取得した信号値V1,…,Vnを入力して演算を実行する。そして、1以上のプロセッサは、出力層L3の複数のニューロンNE1の出力値と、教師データとを用いて、バックプロパゲーション(誤差逆伝播法)処理を実行する。ここでいう「教師データ」は、学習用データセットにおいて、信号値V1,…,VnをニューラルネットワークNN1の入力値とした場合の2種類以上の物理量x1,…,xtである。つまり、2種類以上の物理量x1,…,xtは、それぞれ出力層L3の複数のニューロンNE1に対応する教師データとなる。バックプロパゲーション処理においては、1以上のプロセッサは、出力層L3の各ニューロンNE1の出力値と、対応する教師データ(つまり、対応する物理量)との誤差が最小となるように、ニューラルネットワークNN1の重み付け係数を更新する。
以下、1以上のプロセッサは、全ての学習用データセットについてバックプロパゲーション処理を実行することにより、ニューラルネットワークNN1の重み付け係数の最適化を図る。これにより、ニューラルネットワークNN1の学習が完了する。つまり、ニューラルネットワークNN1の重み付け係数の集合は、複数の検知信号DS1,…,DSnの信号値V1,…,Vnから機械学習アルゴリズムによって生成される学習済みモデルである。
ニューラルネットワークNN1の学習が完了すると、演算部3に学習済みのニューラルネットワークNN1を実装する。具体的には、演算部3のニューロモルフィック素子30において、学習済みのニューラルネットワークNN1の重み付け係数を、対応する第1セル31に抵抗値の逆数として書き込む。
(3.2)推論フェーズ
推論フェーズでは、センサ群AGは、学習用の環境とは異なる環境、つまり実際にセンサ群AGにより検知したい環境に配置される。演算処理システム10の入力部1には、センサ群AGからの複数の検知信号DS1,…,DSnが定期的に又はリアルタイムに入力される。演算部3は、入力部1に入力された複数の検知信号DS1,…,DSnの信号値V1,…,Vnを入力値として、学習済みのニューラルネットワークNN1を用いて演算する。つまり、学習済みのニューラルネットワークNN1の入力層L1の複数のニューロンNE1に、それぞれ信号値V1,…,Vnが入力される。そして、出力層L3の複数のニューロンNE1が、それぞれ対応する物理量を含む出力信号を出力部2へ出力する。出力部2は、出力層L3から受け取った2種類以上の物理量x1,…,xtに関する情報を、演算処理システム10の外部の他システムへ出力する。
推論フェーズでは、センサ群AGは、学習用の環境とは異なる環境、つまり実際にセンサ群AGにより検知したい環境に配置される。演算処理システム10の入力部1には、センサ群AGからの複数の検知信号DS1,…,DSnが定期的に又はリアルタイムに入力される。演算部3は、入力部1に入力された複数の検知信号DS1,…,DSnの信号値V1,…,Vnを入力値として、学習済みのニューラルネットワークNN1を用いて演算する。つまり、学習済みのニューラルネットワークNN1の入力層L1の複数のニューロンNE1に、それぞれ信号値V1,…,Vnが入力される。そして、出力層L3の複数のニューロンNE1が、それぞれ対応する物理量を含む出力信号を出力部2へ出力する。出力部2は、出力層L3から受け取った2種類以上の物理量x1,…,xtに関する情報を、演算処理システム10の外部の他システムへ出力する。
例えば、センサ群AGが、加速度、温度、及び湿度の各々に感度を有する第1センサと、角速度、温度、及び湿度の各々に感度を有する第2センサと、圧力、温度、及び湿度の各々に感度を有する第3センサとの3つのセンサを含むと仮定する。この場合、入力部1には、第1センサからの検知信号DS1、第2センサからの検知信号DS2、及び第3センサからの検知信号DS3が入力される。そして、3つの検知信号DS1,DS2,DS3には、5種類の物理量x1,x2,x3,x4,x5(順に、加速度、角速度、圧力、温度、及び湿度)が含まれることになる。
ここで、学習フェーズにて、検知信号DS1,DS2,DS3を用いて、2種類の物理量x1,x4(つまり、加速度及び温度)を出力するようにニューラルネットワークNN1の学習を行い、学習済みのニューラルネットワークNN1を演算部3に実装する。この場合、演算処理システム10は、検知信号DS1,DS2,DS3が入力されると、加速度及び温度を個別に出力することが可能になる。
上述のように、本実施形態の演算処理システム10では、複数種類の物理量x1,…,xkに対して感度を有するセンサ群AGからの検知信号DS1,…,DSnが入力された場合に、検知信号DS1,…,DSnから任意の物理量x1,…,xtを抽出することができる、という利点がある。つまり、本実施形態では、センサA1,…,Arとして複数種類の物理量x1,…,xkに対して感度を有するセンサを用いた場合でも、任意の物理量を、他の物理量の影響を排除した形で抽出することが可能である。
(4)性能
以下、本実施形態の演算処理システム10の性能について、比較例の演算処理システム20との比較を交えて説明する。比較例の演算処理システム20は、図5に示すように、複数の補正回路41,…,4tを備えている。以下の説明では、補正回路41,…,4tを区別しない場合には、補正回路41,…,4tを「補正回路4」という。補正回路4は、例えばASIC(Application Specific Integrated Circuit)等の集積回路により構成される。
以下、本実施形態の演算処理システム10の性能について、比較例の演算処理システム20との比較を交えて説明する。比較例の演算処理システム20は、図5に示すように、複数の補正回路41,…,4tを備えている。以下の説明では、補正回路41,…,4tを区別しない場合には、補正回路41,…,4tを「補正回路4」という。補正回路4は、例えばASIC(Application Specific Integrated Circuit)等の集積回路により構成される。
補正回路41,…,4tには、それぞれ対応する検知信号DS11,…,DS1tが入力される。検知信号DS11,…,DS1tは、それぞれ対応するセンサA10から出力される信号である。ここで、センサA10は、1種類の物理量の検知に特化したセンサである。例えば、センサA10が加速度センサである場合、センサA10は、検知した加速度の大きさに応じた信号値(ここでは、電圧値)の検知信号を出力する。そして、センサA10では、例えばセンサA10の形状、又は電極のレイアウト等を工夫することにより、検知信号の信号値が、センサA10が配置されている環境の加速度以外の物理量(例えば、温度又は湿度など)の影響を受けにくくしている。
補正回路41,…,4tは、それぞれ入力される検知信号DS11,…,DS1tの信号値を、近似関数を用いて対応する物理量x1,…,xtに変換し、変換した物理量x1,…,xtを出力する。つまり、物理量x1,…,xtの検知精度は、補正回路41,…,4tで使用する近似関数に依存する。比較例の演算処理システム20では、補正回路41,…,4tは、それぞれ近似関数が3次関数となるように設計されている。
ここで、本実施形態の演算処理システム10の性能と、比較例の演算処理システム20の性能とを定量的に比較するために、センサA1,…,Ar(又はセンサA10)の物理量に対する感度を、「感度係数」として定義する。以下、感度係数の求め方について説明する。
例えば、任意のセンサがk種類の物理量x1,…,xkに対して感度を有していると仮定する。この場合、このセンサが出力する検知信号の信号値(ここでは、電圧値)は、k種類の物理量x1,…,xkの関数で表される。そして、このセンサが配置される環境において、k種類の物理量x1,…,xkのうちの1種類の物理量を段階的に変化させながら、検知信号の信号値を取得すると仮定する。
以下の表は、第1物理量、第2物理量、及び第3物理量に対して感度を有するセンサについて、各物理量の設定値と、センサの出力する検知信号の電圧値との相関の一例を表している。以下の表において、番号及び括弧付きの数字は、検知信号の信号値を取得した順番を表している。また、以下の表において、第1物理量は、“d1”、“d2”、及び“d3”の3段階に変化させており、第2物理量は、“e1”、“e2”、及び“e3”の3段階に変化させており、第3物理量は、“f1”、“f2”、及び“f3”の3段階に変化させている。また、以下の表において、“V(1)”〜“V(27)”は、検知信号の信号値を表している。例えば、“V(2)”は、2番目に取得した検知信号の信号値を表している。つまり、以下の表の例では、3種類の物理量のうちの1種類の物理量を3段階に変化させながら、検知信号の信号値を取得する処理を、全ての種類の物理量について繰り返している。このため、取得する検知信号の信号値の総数は、27(=33)個となる。
ここで、物理量xkを正規化すると、正規化物理量ykは、以下の式(1)で表される。
式(1)において、“s”は自然数であって、検知信号の信号値を取得した順番を表している。後述する式(2)〜(4)についても同様である。例えば、“xk(3)”は、3番目の検知信号における物理量xkを表している。また、例えば、“yk(4)”は、4番目の検知信号における正規化物理量ykを表している。
また、検知信号の信号値(電圧値)Vを正規化すると、正規化信号値Wは、以下の数式で表される。下記の式(2)において、“V(s)”は、s番目の検知信号における信号値Vを表しており、“W(s)”は、s番目の検知信号における正規化信号値Wを表している。
そして、正規化電圧W(s)は、正規化物理量y1(s),…,yk(s)と、正規化物理量y1(s),…,yk(s)の線形結合の係数(つまり、感度係数)a1,…,akとを用いて、以下の数式で表される。
ここで、任意の正規化物理量ymの感度係数am(“m”は自然数であって、“k”以下)は、以下の数式で表される。
式(4)において、“j”は自然数であって、センサが配置される環境において物理量を変化させる段階の数を表している。つまり、“jk”は、k種類の物理量x1,…,xkのうちの1種類の物理量を段階的に変化させながら検知信号の信号値を取得する処理を全ての物理量について繰り返した場合の、検知信号の信号値の総数を表している。また、感度係数a1,…,akは、以下の数式で表す条件を満たすように正規化されている。以下の式(5)において、“ρ”は、正規化電圧Wと、正規化物理量y1,…,ykとの相関係数である。
上述のように定義される感度係数a1,…,akは、“ρ2”に近付けば近付く程、対応する物理量の変化に対して検知信号の信号値が追従しやすく、“0”に近付けば近付く程、対応する物理量の変化に対して検知信号の信号値が追従しにくい。つまり、感度係数a1,…,akは、対応する物理量に対する感度を表している。なお、感度係数a1,…,akが“0”の場合、対応する物理量に対して感度を有していないことになる。以下の説明では、“ρ2=1”であると仮定する。
ここで、比較例の演算処理システム20の性能の限界を表す指標として、“βmin”を定義する。“βmin”は、以下の数式で表される“β”の最小値である。
式(6)において、“ap1”は、複数のセンサA10からの複数の検知信号DS11,…,DS1tから選択した任意の2つの検知信号のうちの一方の検知信号(以下、「第1検知信号」ともいう)において、最大の感度係数を表している。また、“aq1”は、上記の2つの検知信号のうちの他方の検知信号(以下、「第2検知信号」ともいう)において、最大の感度係数を表している。また、“ap2”は、第1検知信号において2番目に大きい感度係数を表しており、“aq2”は、第2検知信号において2番目に大きい感度係数を表している。
“β”は、2つの検知信号の組み合わせごとに1値存在する。したがって、複数の検知信号DS11,…,DS1tが“t”個ある場合、“β”は、“tC2”個存在する。そして、“βmin”は、これら“tC2”個の“β”の最小値である。
比較例の演算処理システム20において、補正回路4が近似関数を3次関数として検知信号の信号値を補正する場合、実用に耐え得る検知精度で補正可能なセンサA10の感度(対応する物理量の感度係数の2乗値)の最小値は、約“0.84”である。“0.84”は、近似関数が、センサA10の検知範囲において極値を有さない3次関数(ここでは、“y=x3”)である場合の回帰直線の決定係数に相当する。
ここで、第1検知信号における最大の感度係数ap1の2乗値が“0.84”であり、2番目に大きい感度係数ap2の2乗値が“0.16(=1−0.84)”であり、残りの感度係数が全て零であると仮定する。同様に、第2検知信号における最大の感度係数aq1の2乗値が“0.84”であり、2番目に大きい感度係数aq2の2乗値が“0.16(=1−0.84)”であり、残りの感度係数が全て零であると仮定する。この場合、“βmin”は“0.68”となる。
つまり、複数のセンサA10の各々の対応する物理量の感度が“βmin>0.68”を満たす場合、補正回路4は、近似関数が3次関数となるように設計すれば、実用に耐え得る検知精度でセンサA10からの検知信号の信号値を補正し得る。一方、複数のセンサA10の各々の対応する物理量の感度が“βmin>0.68”を満たさない場合、補正回路4は、近似関数が3次関数となるように設計しても、実用に耐え得る検知精度でセンサA10からの検知信号の信号値を補正することは難しい。仮に、後者の場合にも実用に耐え得る検知精度でセンサA10からの検知信号の信号値を補正しようと思えば、補正回路4は、近似関数が4次以上の高次関数となるように設計される必要がある。しかしながら、このように補正回路4を設計することは、開発効率の観点からすると難しい。
つまり、比較例の演算処理システム20では、複数のセンサA10の各々が対応する物理量の検知に特化していなければ、補正回路4は、実用に耐え得る検知精度でセンサA10からの検知信号の信号値を補正することが難しい、という問題がある。
これに対して、本実施形態の演算処理システム10では、複数のセンサA1,…,Arの各々が対応する物理量の検知に特化していなくとも、実用に耐え得る検知精度で2種類以上の物理量x1,…,xtを出力することが可能である。
ここで、一例として、温度依存性のあるセンサの零点補正を、比較例の演算処理システム20のように補正回路で行う場合と、本実施形態の演算処理システム10のようにニューラルネットワークを用いて行う場合との比較について、図6及び図7を用いて説明する。図6は、センサからの検知信号の信号値と、センサが配置されている環境の温度との相関を表している。図7は、センサからの検知信号の信号値の近似結果を表している。図6及び図7において、縦軸の「信号値」は、検知信号の信号値の最大値が“1.0”、最小値が“−1.0”となるように正規化した値を表している。また、図6及び図7において、横軸の「温度」は、センサが配置されている環境の温度の最大値が“1.0”、最小値が“−1.0”となるように正規化した値を表している。後述する図8においても同様である。なお、零点補正を行うに当たり、ニューラルネットワークについては、センサの検知信号の信号値を入力値、センサが配置されている環境の温度を教師データとして、予め学習を行っている。
図7に示すように、ニューラルネットワークを用いた零点補正(同図の実線参照)は、近似関数が1次関数である補正回路の零点補正(同図の破線参照)、及び近似関数が3次関数である補正回路の零点補正(同図の一点鎖線参照)よりも近似精度が高い。また、ニューラルネットワークを用いた零点補正は、近似関数が4次以上の高次関数(ここでは、9次関数)である補正回路の零点補正(同図の点線参照)と同等、又はそれ以上の近似精度である。
ここで、図8は、センサからの検知信号の信号値の実測値と近似値との差分(つまり、誤差)と、センサが配置されている環境の温度との相関を表している。図8において、縦軸の「誤差」は、検知信号の信号値の最大値が“1.0”、最小値が“−1.0”となるように正規化した場合の誤差の値を表している。図8に示すように、ニューラルネットワークを用いた零点補正(同図の実線参照)は、近似関数が4次以上の高次関数(ここでは、9次関数)である補正回路の零点補正(同図の点線参照)よりも誤差が小さい、つまり近似精度が高くなっている。
上述のように、ニューラルネットワークを用いれば、近似関数が4次以上の高次関数である補正回路による補正と同等以上の精度で、センサからの検知信号の信号値の零点補正を行うことが可能である。上記の例は、1つのセンサの零点補正をニューラルネットワークを用いて行った例であるが、複数のセンサの零点補正をニューラルネットワークを用いて行う場合においても、同等の精度で零点補正を行うことが可能である。したがって、本実施形態の演算処理システム10においても、学習済みのニューラルネットワークNN1を用いることで、近似関数が3次関数である補正回路4による補正よりも高い精度で、2種類以上の物理量x1,…,xtを出力し得る。
ここで、センサからの検知信号の信号値は、系統誤差及び偶然誤差により、図9に示すように、一定の傾向に沿いながらも、不規則にばらつき得る。図9は、センサからの検知信号の信号値と、センサが配置されている環境の物理量(例えば、温度など)との相関を表している。系統誤差は、センサが複数種類の物理量x1,…,xkに対して感度を有することを主な原因として生じ得る。系統誤差は、例えば比較例の演算処理システム20のように、近似関数として1次関数(同図の破線参照)又は高次関数(同図の一点鎖線参照)を用いた補正により、微小化を図ることが可能である。偶然誤差は、ノイズを主な原因として生じ得る。偶然誤差は、多数の測定値の平均値を求める補正により、微小化を図ることが可能である。
上述のように、比較例の演算処理システム20では、系統誤差に対する補正と、偶然誤差に対する補正との両方の補正を必要とする。一方、本実施形態では、複数種類の物理量x1,…,xkに対して感度を有するセンサ群AGからの検知信号DS1,…,DSnに対して、学習済みのニューラルネットワークNN1を用いることにより、上記の補正を行わずとも、系統誤差及び偶然誤差の微小化を図ることができる、という利点がある。
また、本実施形態の演算処理システム10は、“βmin>0.68”を満たさない比較的感度の低いセンサに対しても採用することができる。もちろん、本実施形態の演算処理システム10は、“βmin>0.68”の関係を満たす感度のセンサに対しても採用することができる。
また、比較例の演算処理システム20では、センサA10の数が増えれば増える程、必要な補正回路4の数も増えるため、回路規模が大型化しやすい。一方、本実施形態の演算処理システム10では、センサA1,…,Arの数が増えても、回路規模が大型化しにくい、という利点がある。
また、検知信号DS1,…,DSnから任意の物理量x1,…,xtを抽出する処理を比較例の演算処理システム20で実行しようとする場合、高次の近似関数を用いた補正など、複雑な処理を要し、演算の負荷が大きくなってしまう。一方、本実施形態では、比較例の演算処理システム20と比較して、検知信号DS1,…,DSnから任意の物理量x1,…,xtを抽出する処理に必要な演算の負荷を小さくすることができる、という利点がある。
ところで、本実施形態では、出力部2は、他システムへ、2種類以上の物理量x1,…,xtを出力する。他システムは、例えば自動車のECU等、演算処理システム10とは異なるシステムであって、2種類以上の物理量x1,…,xtを入力とする処理を実行する。例えば、他システムが自動車のECUである場合、他システムは、加速度及び角速度などの2種類以上のx1,…,xtを入力として、自動車が発進する、停止する、又は曲がる等の自動車の状態を判断する処理などを実行する。
仮に、他システムが演算処理システム10を含む場合、他システムは、2種類以上の物理量x1,…,xtを入力とする他システムの専用の処理と、演算部3で実行する処理との両方の処理を実行する必要がある。この場合、他システムでの演算の負荷が大きくなってしまう。一方、本実施形態では、演算処理システム10と他システムとが互いに異なるシステムであり、他システムは、出力部2からの出力を受けることで、演算処理システム10での演算結果を受け取るように構成されている。したがって、本実施形態では、他システムは、他システムの専用の処理のみを実行すればよいため、他システムが演算処理システム10を含む場合と比較して、演算の負荷を小さくすることができる、という利点がある。
もちろん、出力部2(つまり、演算処理システム10)が他システムへ2種類以上の物理量x1,…,xtを出力する構成は必須ではない。つまり、演算処理システム10は、単独のシステムとして存在していなくてもよく、他システムに組み込まれていてもよい。
(5)変形例
上述の実施形態は、本開示の様々な実施形態の一つに過ぎない。上述の実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、演算処理システム10と同様の機能は、演算処理方法、コンピュータプログラム、又はプログラムを記録した記録媒体等で具現化されてもよい。
上述の実施形態は、本開示の様々な実施形態の一つに過ぎない。上述の実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、演算処理システム10と同様の機能は、演算処理方法、コンピュータプログラム、又はプログラムを記録した記録媒体等で具現化されてもよい。
一態様に係る演算処理方法は、学習済みのニューラルネットワークNN1を用いて、複数のセンサA1,…,Arの集合であるセンサ群AGからの複数の検知信号DS1,…,DSnに基づいて、複数の検知信号DS1,…,DSnに含まれる複数種類の物理量x1,…,xkのうち2種類以上の物理量x1,…,xtを演算する方法である。この演算処理方法は、演算した2種類以上の物理量x1,…,xtを出力する方法である。
一態様に係るプログラムは、1以上のプロセッサに、上記の演算処理方法を実行させるためのプログラムである。
以下、上述の実施形態の変形例を列挙する。以下の種々の変形例は、適宜組み合わせて適用可能である。
本開示における演算処理システム10は、例えば演算部3等に、コンピュータシステム(マイクロコントローラを含む)を含んでいる。マイクロコントローラは、1以上の半導体チップによって構成され、少なくともプロセッサ機能及びメモリ機能を備えるコンピュータシステムの一態様である。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示における演算処理システム10としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されていてもよいが、電気通信回線を通じて提供されてもよいし、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路(IC)又は大規模集積回路(VLSI)を含む1ないし複数の電子回路で構成される。複数の電子回路は、1つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、1つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。
上述の実施形態では、演算部3で用いる学習済みのニューラルネットワークNN1は、抵抗型(言い換えれば、アナログ型)のニューロモルフィック素子30で実現されているが、これに限定する趣旨ではない。例えば、学習済みのニューラルネットワークNN1は、例えばクロスバースイッチアレイを用いたディジタル型のニューロモルフィック素子で実現されてもよい。
上述の実施形態では、演算部3で用いる学習済みのニューラルネットワークNN1は、ニューロモルフィック素子30で実現されているが、これに限定する趣旨ではない。例えば、演算部3は、FPGA(Field-Programmable Gate Array)等の集積回路に学習済みのニューラルネットワークNN1を実装することで実現されてもよい。この場合、演算部3は、例えば学習フェーズで用いた1以上のプロセッサを備えることにより、学習済みのニューラルネットワークNN1を用いた推論フェーズでの演算を実行する。なお、演算部3は、学習フェーズで用いた1以上のプロセッサよりも処理性能の低い1以上のプロセッサを用いて演算してもよい。推論フェーズでは、学習フェーズよりも1以上のプロセッサに要求される処理性能が高くないからである。
上述の実施形態において、演算部3は、学習フェーズでの学習を実行可能な機能を有している場合、学習済みのニューラルネットワークNN1の再学習を行ってもよい。つまり、この態様では、学習用のセンターではなく、演算処理システム10の使用されている場所において、学習済みのニューラルネットワークNN1の再学習を行ってもよい。
上述の実施形態では、出力部2の出力する2種類以上の物理量x1,…,xtは、加速度、角速度、温度、及び複数のセンサA1,…,Arのうちの1以上のセンサに掛かる応力のうち少なくとも2種類の物理量を含んでいるが、これに限定する趣旨ではない。つまり、2種類以上の物理量x1,…,xtは上記以外の物理量のみを含んでいてもよい。
上述の実施形態において、複数のセンサA1,…,Arは、それぞれがn種類の物理量x1,…,xnの全ての物理量に対して感度を有している必要はない。つまり、複数のセンサA1の集合であるセンサ群AGがn種類の物理量x1,…,xnの全ての物理量に対して感度を有していればよい。したがって、例えば、複数のセンサA1,…,Arは、それぞれ互いに異なる物理量の検知に特化したセンサであってもよい。
上述の実施形態では、複数のセンサA1,…,Arを同一の環境に配置しているが、これに限定する趣旨ではない。つまり、複数のセンサA1,…,Arは、互いに異なる2以上の環境に分けて配置されてもよい。例えば、複数のセンサA1,…,Arを自動車などの車両の車室に配置する場合、複数のセンサA1,…,Arを車室の前部と、車室の後部とに分けて配置してもよい。
上述の実施形態では、複数のセンサA1,…,Arは、1つの基板に実装されているが、複数の基板に分けて実装されてもよい。複数の基板に分けて実装する場合、複数のセンサA1,…,Arは、同一の環境に配置されるのが好ましい。
上述の実施形態では、複数のセンサA1,…,Arは、いずれもMEMSデバイスであるが、これに限定する趣旨ではない。例えば、複数のセンサA1,…,Arの少なくとも一部は、MEMSデバイス以外の態様であってもよい。つまり、複数のセンサA1,…,Arの少なくとも一部は、基板に実装されていなくてもよく、例えば自動車などの車両に直接取り付ける等して配置されてもよい。
上述の実施形態では、出力部2は、2種類以上の物理量x1,…,xtを出力しているが、2種類以上の物理量x1,…,xtに基づいて最終的に1種類の物理量を出力するように構成されてもよい。例えば、出力部2が2種類の物理量として加速度及び温度を出力する場合、温度を加速度の補償に用いることで、最終的に1種類の物理量として加速度を出力してもよい。このように、出力部2は、2種類以上の物理量x1,…,xtを出力する代わりに、1種類の物理量のみを出力することも可能である。
上述の実施形態において、複数の検知信号DS1,…,DSnは、同期したタイミングで入力部1に入力されてもよいし、時分割によりそれぞれ互いに異なるタイミングで入力部1に入力されてもよい。後者の場合、例えば、演算部3は、複数の検知信号DS1,…,DSnのうちの最初の検知信号が入力されてから最後の検知信号が入力されるまでを1周期として、1周期ごとに演算を実行することで2種類以上の物理量x1,…,xtを出力する。
(まとめ)
以上述べたように、第1の態様に係る演算処理システム(10)は、入力部(1)と、出力部(2)と、演算部(3)と、を備える。入力部(1)には、複数のセンサ(A1,…,Ar)の集合であるセンサ群(AG)からの複数の検知信号(DS1,…,DSn)が入力される。出力部(2)は、複数の検知信号(DS1,…,DSn)に含まれる複数種類の物理量(x1,…,xk)のうち2種類以上の物理量(x1,…,xt)を出力する。演算部(3)は、学習済みのニューラルネットワーク(NN1)を用いて、入力部(1)に入力された複数の検知信号(DS1,…,DSn)に基づいて2種類以上の物理量(x1,…,xt)を演算する。
以上述べたように、第1の態様に係る演算処理システム(10)は、入力部(1)と、出力部(2)と、演算部(3)と、を備える。入力部(1)には、複数のセンサ(A1,…,Ar)の集合であるセンサ群(AG)からの複数の検知信号(DS1,…,DSn)が入力される。出力部(2)は、複数の検知信号(DS1,…,DSn)に含まれる複数種類の物理量(x1,…,xk)のうち2種類以上の物理量(x1,…,xt)を出力する。演算部(3)は、学習済みのニューラルネットワーク(NN1)を用いて、入力部(1)に入力された複数の検知信号(DS1,…,DSn)に基づいて2種類以上の物理量(x1,…,xt)を演算する。
この態様によれば、複数種類の物理量(x1,…,xk)に対して感度を有するセンサ群(AG)からの検知信号(DS1,…,DSn)が入力された場合に、検知信号(DS1,…,DSn)から任意の物理量(x1,…,xt)を抽出することができる、という利点がある。
第2の態様に係る演算処理システム(10)では、第1の態様において、演算部(3)は、ニューロモルフィック素子(30)を含む。
この態様によれば、ニューラルネットワーク(NN1)をソフトウェア的に模擬する場合と比較して、演算の高速化を図ることができ、かつ、演算に要する消費電力を低減することができる、という利点がある。
第3の態様に係る演算処理システム(10)では、第2の態様において、ニューロモルフィック素子(30)は、ニューラルネットワーク(NN1)におけるニューロン(NE1)間の重み付け係数(w1,…,wn)を抵抗値で表す抵抗型の素子を含む。
この態様によれば、ディジタル型のニューロモルフィック素子と比較して、演算の高速化を図ることができ、かつ、演算に要する消費電力を低減することができる、という利点がある。
第4の態様に係る演算処理システム(10)では、第1〜第3のいずれかの態様において、複数のセンサ(A1,…,Ar)は、同一の環境に配置されている。
この態様によれば、複数のセンサ(A1,…,Ar)が互いに異なる環境に配置されている場合と比較して、複数種類の物理量(x1,…,xk)から任意の物理量(x1,…,xt)を抽出しやすい、という利点がある。
第5の態様に係る演算処理システム(10)では、第1〜第4のいずれかの態様において、2種類以上の物理量(x1,…,xt)は、加速度、角速度、温度、及び複数のセンサ(A1,…,Ar)のうちの1以上のセンサ(A1,…,Ar)に掛かる応力のうち少なくとも2種類の物理量を含む。
この態様によれば、互いに相関のある物理量を抽出することができる、という利点がある。
第6の態様に係る演算処理システム(10)では、第1〜第5のいずれかの態様において、出力部(2)は、他システムへ、2種類以上の物理量(x1,…,xt)を出力する。他システムは、演算処理システム(10)とは異なるシステムであって、2種類以上の物理量(x1,…,xt)を入力とする処理を実行する。
この態様によれば、他システムが演算処理システム(10)を含む場合と比較して、演算の負荷を小さくすることができる、という利点がある。
第7の態様に係るセンサシステム(100)は、第1〜第6のいずれかの態様の演算処理システム(10)と、センサ群(AG)と、を備える。
この態様によれば、複数種類の物理量(x1,…,xk)に対して感度を有するセンサ群(AG)からの検知信号(DS1,…,DSn)が入力された場合に、検知信号(DS1,…,DSn)から任意の物理量(x1,…,xt)を抽出することができる、という利点がある。
第8の態様に係る演算処理方法は、学習済みのニューラルネットワーク(NN1)を用いて、複数のセンサ(A1,…,Ar)の集合であるセンサ群(AG)からの複数の検知信号(DS1,…,DSn)に基づいて、複数の検知信号(DS1,…,DSn)に含まれる複数種類の物理量(x1,…,xk)のうち2種類以上の物理量(x1,…,xt)を演算する方法である。この演算処理方法は、演算した2種類以上の物理量(x1,…,xt)を出力する方法である。
この態様によれば、複数種類の物理量(x1,…,xk)に対して感度を有するセンサ群(AG)からの検知信号(DS1,…,DSn)が入力された場合に、検知信号(DS1,…,DSn)から任意の物理量(x1,…,xt)を抽出することができる、という利点がある。
第9の態様に係るプログラムは、1以上のプロセッサに、第8の態様に係る演算処理方法を実行させるためのプログラムである。
この態様によれば、複数種類の物理量(x1,…,xk)に対して感度を有するセンサ群(AG)からの検知信号(DS1,…,DSn)が入力された場合に、検知信号(DS1,…,DSn)から任意の物理量(x1,…,xt)を抽出することができる、という利点がある。
第2〜第6の態様に係る構成については、演算処理システム(10)に必須の構成ではなく、適宜省略可能である。
1 入力部
2 出力部
3 演算部
30 ニューロモルフィック素子
10 演算処理システム
100 センサシステム
A1,…,Ar センサ
AG センサ群
DS1,…,DSn 検知信号
NE1 ニューロン
NN1 ニューラルネットワーク
x1,…,xt,…,xk 物理量
w1,…,wn 重み付け係数
2 出力部
3 演算部
30 ニューロモルフィック素子
10 演算処理システム
100 センサシステム
A1,…,Ar センサ
AG センサ群
DS1,…,DSn 検知信号
NE1 ニューロン
NN1 ニューラルネットワーク
x1,…,xt,…,xk 物理量
w1,…,wn 重み付け係数
Claims (9)
- 複数のセンサの集合であるセンサ群からの複数の検知信号が入力される入力部と、
前記複数の検知信号に含まれる複数種類の物理量のうち2種類以上の物理量を出力する出力部と、
学習済みのニューラルネットワークを用いて、前記入力部に入力された前記複数の検知信号に基づいて前記2種類以上の物理量を演算する演算部と、を備える、
演算処理システム。 - 前記演算部は、ニューロモルフィック素子を含む、
請求項1記載の演算処理システム。 - 前記ニューロモルフィック素子は、前記ニューラルネットワークにおけるニューロン間の重み付け係数を抵抗値で表す抵抗型の素子を含む、
請求項2記載の演算処理システム。 - 前記複数のセンサは、同一の環境に配置されている、
請求項1〜3のいずれか1項に記載の演算処理システム。 - 前記2種類以上の物理量は、加速度、角速度、温度、及び前記複数のセンサのうちの1以上のセンサに掛かる応力のうち少なくとも2種類の物理量を含む、
請求項1〜4のいずれか1項に記載の演算処理システム。 - 前記出力部は、前記演算処理システムとは異なるシステムであって、前記2種類以上の物理量を入力とする処理を実行する他システムへ、前記2種類以上の物理量を出力する、
請求項1〜5のいずれか1項に記載の演算処理システム。 - 請求項1〜6のいずれか1項に記載の演算処理システムと、
前記センサ群と、を備える、
センサシステム。 - 学習済みのニューラルネットワークを用いて、複数のセンサの集合であるセンサ群からの複数の検知信号に基づいて、前記複数の検知信号に含まれる複数種類の物理量のうち2種類以上の物理量を演算し、
演算した前記2種類以上の物理量を出力する、
演算処理方法。 - 1以上のプロセッサに、
請求項8記載の演算処理方法を実行させるための、
プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018127160 | 2018-07-03 | ||
JP2018127160 | 2018-07-03 | ||
PCT/JP2019/024183 WO2020008869A1 (ja) | 2018-07-03 | 2019-06-19 | 演算処理システム、センサシステム、演算処理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2020008869A1 true JPWO2020008869A1 (ja) | 2021-08-05 |
Family
ID=69060214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020528776A Pending JPWO2020008869A1 (ja) | 2018-07-03 | 2019-06-19 | 演算処理システム、センサシステム、演算処理方法、及びプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210279561A1 (ja) |
JP (1) | JPWO2020008869A1 (ja) |
CN (1) | CN112368717A (ja) |
WO (1) | WO2020008869A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220076105A1 (en) * | 2020-09-09 | 2022-03-10 | Allegro MicroSystems, LLC, Manchester, NH | Method and apparatus for trimming sensor output using a neural network engine |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102087311B (zh) * | 2010-12-21 | 2013-03-06 | 彭浩明 | 一种提高电力互感器测量精度的方法 |
CN103557884B (zh) * | 2013-09-27 | 2016-06-29 | 杭州银江智慧城市技术集团有限公司 | 一种输电线路杆塔监控的多传感器数据融合预警方法 |
-
2019
- 2019-06-19 JP JP2020528776A patent/JPWO2020008869A1/ja active Pending
- 2019-06-19 US US17/254,669 patent/US20210279561A1/en not_active Abandoned
- 2019-06-19 CN CN201980041674.7A patent/CN112368717A/zh active Pending
- 2019-06-19 WO PCT/JP2019/024183 patent/WO2020008869A1/ja active Application Filing
Non-Patent Citations (2)
Title |
---|
中部 崇 外: "恒等写像ニューラルネットワークによるBlind Source Deconvolution", 電子情報通信学会技術研究報告 NC2004-193-227 ニューロコンピューティング, vol. 第104巻,第760号, JPN6022046860, 23 March 2005 (2005-03-23), JP, pages 93 - 98, ISSN: 0005052142 * |
大北 剛 外: "複雑なセンサ情報理解におけるディープラーニング", マルチメディア,分散,協調とモバイル(DICOMO2017)シンポジウム論文集 情報処理学会シンポジウムシリー, vol. 第2017巻,第1号, JPN6022046862, June 2017 (2017-06-01), JP, pages 642 - 647, ISSN: 0005052143 * |
Also Published As
Publication number | Publication date |
---|---|
CN112368717A (zh) | 2021-02-12 |
WO2020008869A1 (ja) | 2020-01-09 |
US20210279561A1 (en) | 2021-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Patra et al. | An intelligent pressure sensor using neural networks | |
JP4440603B2 (ja) | 容量検出回路及び検出方法並びにそれを用いた指紋センサ | |
JP6724870B2 (ja) | 人工ニューラルネットワーク回路の訓練方法、訓練プログラム、及び訓練装置 | |
US7650238B2 (en) | Environmental characteristic determination | |
Sushchenko et al. | Processing of redundant information in airborne electronic systems by means of neural networks | |
CN111414977A (zh) | 机床主轴热误差建模的加权集成温度敏感点组合选取方法 | |
CN101680760A (zh) | 物理量测量装置以及物理量测量方法 | |
CN108982915A (zh) | 一种加速度传感器温度补偿方法 | |
CN111121607B (zh) | 一种训练三维定位模型的方法及三维定位方法、装置 | |
US20020049957A1 (en) | Method of designing semiconductor integrated circuit device, and apparatus for designing the same | |
JP2021103521A (ja) | ニューラルネットワーク演算装置および方法 | |
CN114026572A (zh) | 模拟神经网络中的误差补偿 | |
Patra et al. | Neural-network-based robust linearization and compensation technique for sensors under nonlinear environmental influences | |
CN112485652A (zh) | 基于改进正余弦算法的模拟电路单故障诊断方法 | |
JPWO2020008869A1 (ja) | 演算処理システム、センサシステム、演算処理方法、及びプログラム | |
CN111598215A (zh) | 一种基于神经网络的温度补偿方法和系统 | |
US11797043B2 (en) | Magnetic sensor devices, systems and methods, and a force sensor | |
CN116380219A (zh) | 基于柔性线路板传感模块的车辆载重监测方法及装置 | |
Patra et al. | Laguerre neural network-based smart sensors for wireless sensor networks | |
CN115796252A (zh) | 权重写入方法及装置、电子设备和存储介质 | |
Patra et al. | Neural-network-based smart sensor framework operating in a harsh environment | |
CN115656640A (zh) | 电容检测方法及电容检测装置 | |
CN111738407B (zh) | 一种基于深度学习的钟差预测方法、装置、介质及终端 | |
US20210133556A1 (en) | Feature-separated neural network processing of tabular data | |
CN111505538A (zh) | 磁场方向传感器校正和计算方法、装置、存储介质及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221108 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230509 |