JPWO2020129204A1 - ニューロモーフィック回路、ニューロモーフィックアレイの学習方法およびプログラム - Google Patents
ニューロモーフィック回路、ニューロモーフィックアレイの学習方法およびプログラム Download PDFInfo
- Publication number
- JPWO2020129204A1 JPWO2020129204A1 JP2020558557A JP2020558557A JPWO2020129204A1 JP WO2020129204 A1 JPWO2020129204 A1 JP WO2020129204A1 JP 2020558557 A JP2020558557 A JP 2020558557A JP 2020558557 A JP2020558557 A JP 2020558557A JP WO2020129204 A1 JPWO2020129204 A1 JP WO2020129204A1
- Authority
- JP
- Japan
- Prior art keywords
- neuromorphic
- learning
- conductance
- array
- signal
- 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.)
- Granted
Links
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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/54—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
-
- 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/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1675—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/02—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
- G11C11/16—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
- G11C11/165—Auxiliary circuits
- G11C11/1677—Verifying circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0009—RRAM elements whose operation depends upon chemical change
- G11C13/0011—RRAM elements whose operation depends upon chemical change comprising conductive bridging RAM [CBRAM] or programming metallization cells [PMCs]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0064—Verifying circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0004—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0007—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
- G11C2013/0076—Write operation performed depending on read result
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2213/00—Indexing scheme relating to G11C13/00 for features not covered by this group
- G11C2213/70—Resistive array aspects
- G11C2213/77—Array wherein the memory element being directly connected to the bit lines and word lines without any access device being used
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)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Computer Hardware Design (AREA)
- Image Analysis (AREA)
- Semiconductor Memories (AREA)
Abstract
Description
深層学習をはじめ、ニューラルネット技術を用いた高度な情報の識別技術、分類技術が金融、マーケティング、認証、セキュリティなどの広い分野で実用化されている。このような技術では、膨大な量の積和演算が必要であり、クラウドサーバあるいは巨大な計算機を用いて実行される場合が多い。
また、他の例として、スピントロニクス(Spintronics)を使用する素子も用いられている。例えば、磁壁の制御による線形的なコンダクタンス変化を発生させるドメインウォール型、あるいは、スピン軌道トルク作用による磁化反転を使用したSOT(Spin Orbit Torque)型の素子の研究が進められている。
さらに他のニューロモーフィック素子の例としては、TaO2等の媒体の界面の酸素欠陥濃度を利用するReRAM(Resistive Random Access Memory)を使用する素子があげられる。
本発明の一態様は、上述の選択回路における選別条件は、入力データの絶対値をもとに算出された閾値によって選別する。
本発明の一態様は、上述の閾値は、共通ビット線に接続される素子総数に対して、一定の割合で素子が選別される様に決定する。
本発明の一態様は、上述の閾値は学習の進行に対して変動させる。
本発明の一態様は、第一の方向に配設される2本以上の前記共通ビット線で構成され、複数の共通ビット線上で端部から同じ位置に配置される複数の可変抵抗素子は、共通ビット線と異なる第二の方向に配設されるワード線によって相互に接続され、前記選択回路は各々の共通ビット線の単位で追加的書き込み信号印加処理を順次実施する。
本発明の一態様は、上述のニューロモーフィック回路において、前記閾値を共通ビット線毎に異なる値を設定する。
本発明の一態様は、上述の判定機構は、追加書き込み信号を印加した後、差分の変動量が正の場合にはさらに追加の書き込み信号を印加し、負の場合には逆の方向に抵抗を変化させるための書き込み信号を印加する。
本発明の一態様は、複数の可変抵抗素子で構成されるニューロモーフィックアレイにおいて、ニューラルネットワークの学習を行うステップと、ニューラルネットワークの重みの更新量をニューロモーフィックアレイの各可変抵抗素子のコンダクタンスの変化量に変換するステップと、変換したコンダクタンス変化量に基づく書き込み信号をニューロモーフィックアレイに印加するステップと、さらに一部の素子を選択するステップと選択した素子に対してのみ追加的な書き込み信号を印加するステップと、改めて学習データをニューロモーフィックアレイに入力し、その教師信号との差分によって当該学習サイクルの終了を判定するステップと、を備える、ニューロモーフィックアレイの学習方法である。
本発明の一態様は、可変な特性の値に応じた重みを信号に乗算するニューロモーフィック素子を含むニューロモーフィックアレイにおいて、ニューラルネットワークの学習を行うステップと、ニューラルネットワークの重みの更新量をニューロモーフィックアレイ素子のコンダクタンスの変化量に変換するステップと、変換したコンダクタンス変化量に基づく書き込み信号をニューロモーフィックアレイに印加するステップと、さらに一部の素子を選択するステップと、選択した素子に対してのみ追加的な書き込み信号を印加するステップと、改めて学習データをニューロモーフィックアレイに入力し、その教師信号との差分によって当該学習サイクルの終了を判定するステップと、をコンピュータに実行させるためのプログラムである。
また、本発明によれば、ニューロモーフィックアレイを使用したニューラルネットワークにおいて学習アルゴリズムを高速に収束することが可能になる。
また、本発明によれば、ニューロモーフィックアレイを使用したニューラルネットワークにおいて、識別性能を改善することが可能になる。
図1はニューロモーフィック素子のコンダクタンス変化におけるばらつきを示したものである。図1は、素子特性が理想的ではないため重み更新値の乖離が生じることを示す。ニューラルネットワークの積和演算器としてニューロモーフィック素子を使用する場合、各素子のコンダクタンス変化特性は図中の理想線形変化(Z線)に示す様な変化特性が望まれる。しかしながら、現実に製造される素子は、様々な素子間のばらつきやプロセスに依存する変動が起こりえる。また素子のコンダクタンス変化機序として利用する物理現象によっては原理的に非線形なコンダクタンス変化を示す場合もある。この様な変動を踏まえた現実的な素子のコンダクタンス変化は、例えば、図中の素子1、素子2、素子3の様なコンダクタンス変化を示す。
手書き数字を識別させるためのニューラルネットワークにおける学習の様子を示す。ニューラルネットワークは3層構造のMLPを想定し、1層目は784次元、2層目は100次元、3層目は10次元のニューロンから構成されている。図2は、浮動小数点演算で重みを計算した場合の学習性能収束推移を示す。図2はこのニューラルネットワークにおいて、コンピュータ上で勾配降下法による学習アルゴリズムを実行させ、そのエポックの進捗に対する誤差関数の出力(赤破線)、識別率(青破線)の推移を示したものである。この様に、学習の進行とともに、誤差関数の出力が漸減し、識別性能が漸増する収束傾向を示している。応用上は誤差関数出力値やその差分、あるいは識別率等による何等かの基準で閾値を設定し、終了判定するのが一般的なコンピュータ上での実装方法である。なお、ここでは3層MLPで示したが、現実的な応用では様々なニューラルネットワークの層構成や機構などが提案されている。例えば層構造が20層を超えるネットワークなども使われ、応用的にも一般物体検出や識別、感情分析などの自然言語処理など多岐にわたっている。
図5は本発明によるニューロモーフィック素子を使用したニューロモーフィックアレイの学習方法を概念的に示したものである。学習データ100をニューラルネットワーク200に入力し、その出力と教師信号(図示せず)との差分(損失)を誤差計算判定処理300で計算し、学習アルゴリズムの終了を判定する。終了しない場合は、学習アルゴリズム400で誤差を最小化する重み更新量を求める。通常は求めた重み更新量に基づいて、ニューラルネットワーク200の重みを変更する。さらにニューロモーフィックアレイの素子のコンダクタンスはNMD抵抗変化量計算500のステップで重み更新量からコンダクタンス変化量に換算し、NMD抵抗変化処理600で実際のニューロモーフィックアレイを構成する素子に書き込み信号を印加する。本発明では、上記までのステップの後にNMD素子調整ステップ700を設けて一部の素子のコンダクタンス値を調整することを特徴とする。
既に説明した様に、ニューロモーフィックアレイでは再現性ばらつきなどの変動要因により、浮動小数点演算等で計算した重み更新量を正確に反映することが困難である。従って、本発明では上記までのニューロモーフィック素子のコンダクタンス変化のための書き込みを実施した後に、以下の処理を実施することを開示する。ドロップアウトなどの手法を除けば、通常の学習アルゴリズムでは、演算語長に起因する計算分解能以下にならない限り、対象の層の全重みが更新計算の対象となる。一方、ニューロモーフィック素子は、コンダクタンス値が離散ステップをとるため、ある値以下の更新量の場合は、素子のコンダクタンス更新量は0になる。コンダクタンス更新量が0である素子以外に対して書き込み信号が印加される。この更新のための書き換え信号を印加した後に、調整機能では、素子の中から、特定の条件に合致する素子を選択し、その素子に対して追加書き込み信号を印加する。ここで特定の条件と記載したのは、全ての素子に対して調整機構を適用せずとも、学習アルゴリズムには支障がないためである。
[ニューロモーフィックアレイを用いたニューラルネットワークシステムの概要]
図6は、本発明の実施形態に係るニューラルネットワークシステム1の概略的な構成を示すブロック図である。
ニューラルネットワークシステム1は、信号生成回路2、ニューロモーフィックアレイ3、検出回路4、差分回路5、学習制御回路6から構成される。信号生成回路2は、ニューロモーフィックアレイ3に印加する信号を生成するバッファ回路である。ニューロモーフィックアレイ3は、ニューラルネットワークシステム1におけるアナログ積和演算器としての機能を担い、2個以上のニューロモーフィック素子31、共通ビット線32、ワード線33から構成される。ニューロモーフィック素子31は、さらに入力端子311と共通端子312を持つ。検出回路4はニューロモーフィックアレイ3からの出力から総電荷量を検出し、電圧に変換する回路である。差分回路5は、検出回路4の出力と教師信号との差分である誤差信号を出力する回路である。学習制御回路6は、ニューロモーフィックアレイ3の各ニューロモーフィック素子31のコンダクタンスを適切に制御するための学習を制御する回路であり、学習用データセットから学習、及び検証データセットを受信し、読出し信号に変換する学習信号生成部61、学習用データセットから教師信号を生成する教師信号生成部62、誤差信号を受信して学習ステップを継続判断、追加的書き込み信号を生成するかの判断を行う学習判定部63、誤差信号からネットワークの重みを計算し、さらにコンダクタンス変化量に変換するコンダクタンス更新量計算部64、計算されたコンダクタンス更新量を起こさせるための書き込み信号生成部65、及び、学習判定部から追加的書き込み信号生成指示を受けて追加書き込み信号を発生する追加書き込み信号生成部66から構成される。
推論動作など、ニューロモーフィック素子のコンダクタンスを読みだす場合は、例えば0.2V程度の電圧を印加し、学習動作において素子のコンダクタンスを変化させる場合は、1V程度の書き込み信号を印加する。
なお、推論動作では入力信号に2値を超える意味を持たせる場合、各値を表現するための変調信号を用いる。ここでは、入力カウンタ回路(図示せず)を用いたパルス幅変調回路(電圧は0.2V)を想定し、10nsを単位として、0〜2550nsまでの256階調のパルス幅変調(PWM)方式として説明する。
本実施例で使用する学習用データセットについて説明する。図7は、本発明の実施形態に係る識別対象の画像を24個、例として示したものである。例えば、Pic No.0は数字の「5」を手書きした場合における手書きパターンの画像である。同様に、Pic No.2から5までは各々数字の「4」、「1」、「7」、「0」を手書きした場合における手書きパターンの画像である。各パターンは28画素×28画素、計784画素のデータから構成され、各画素のデータは、0から1の範囲に正規化された形式で学習信号生成部61に入力される。一方、各手書き画像信号に対応して、各々の正解となる数字0から9の値が教師データとして、教師信号生成部62に入力される。本実施例のニューラルネットワークは、入力された手書きパターン画像が数字の5であるか、否かを識別するニューラルネットワークであるため、最終的に教師信号生成部62から出力される値は、正解値が「5」の場合は、1を、そうでない場合は、0を差分回路5に出力する。
本実施例のニューロモーフィックアレイ3は共通ビット線32に接続される複数の素子から構成される。各ニューロモーフィック素子31は入力端子311と共通端子312を持つ2端子型の素子として説明する。入力端子311は、信号生成回路2に接続され、ニューロモーフィックアレイ3を使った推論や学習の単位で実施される検証時に、所定の変調方式に従った入力信号が印加される。また、学習アルゴリズムによるコンダクタンス変化においては、入力端子311に書き込み信号が印加され、ニューロモーフィック素子31のコンダクタンスを変化させる。共通端子312は、推論時、あるいは、学習時に入力信号が印加された場合の電流が流れる経路となる。また、推論時には接続される複数の素子の電流が共通ビット線で合算される。書き込み時には書き込み電流の経路として使用される。公知例に示すように学習時に書き込み信号を共通端子312から印加する方式も可能である。本実施例では、読出し時は入力データをパルス幅変調した信号が入力端子311と共通端子312の間に印加され、書き込み時は書き込み信号としてパルス幅を固定した矩形波が入力端子311と共通端子312の間に印加される。なお書き込み用の矩形波の数は1に限らない。
学習データの各画素の情報は信号生成回路2によって、10nsから2560nsの間のパルス幅変調信号(図中w[1]〜w[n]等で記載の波形)に変換された上で、ニューロモーフィックアレイ3の各素子31の入力端子311に印加される。素子31にはコンダクタンスと電圧を乗じた電流値がパルス幅の期間流れる。共通ビット線32によって接続される全ての素子に流れる電流量総和が検出回路4で電荷量として検出される。原理的には最大パルス長の時間、つまりこの例では2550ns期間において、共通ビット線32を流れる電流量総和が積和演算結果となるため、検出回路4ではこの電荷をQV変換回路などの回路によって電圧に変換する。なお、電荷量の検出方法に関しては必ずしもQV変換回路を用いる必要はなく、その他の方式でも構わない。
上述までの学習ステップによって各ニューロモーフィック素子31に対して書き込み信号を印加した後、学習判定部63で計算した重み更新量の絶対値が最大である素子を選択する。素子調整ステップでは選択された素子に対してのみ、追加書き込み信号生成部66で追加的書き込み信号を発生させる。追加的書き込み信号は、通常の学習ステップにおいて使用されるコンダクタンス変化量の最小単位の変化を起こす信号である。この結果、選択素子には、学習アルゴリズムが計算した重み更新量を超えて書き込み信号が印加される。この後、学習判定部63は、改めて今回の学習サイクルの学習データをニューロモーフィックアレイ3に入力し、ニューロモーフィックアレイ3の出力と教師信号の差分を差分回路5で求める。この差分が前回と比較して減少した場合は、上記を繰り返す。増加、あるいは、変動しない場合はこれ以上の素子調整ステップを中止するなどの制御を行う。複数の素子に対して素子調整ステップを実行する場合は、このプロセスを調整する素子の数分だけ複数回繰り返し実施する。
なお、本実施例は、本例の手書き数字に限定する必要はなく、動・静止画像、音声、あるいはセンサなどの時系列信号など様々な情報に対して、識別や予測などを行なうニューラルネットワークに対して適用可能であることは言うまでもない。
なお、ニューロモーフィック素子としては、任意の特性を変化させることが可能なものが用いられてもよく、例えば、抵抗、あるいは、光位相などの特性を変化させることが可能なものが用いられてもよい。
図4の結果は、既に説明したように3層MLPにおいて、素子のコンダクタンスが確率的変動を持つ場合を想定したものである。つまり、学習ステップの各コンダクタンス変化の処理毎に、コンダクタンス書き換え結果が確率的な分布を持つ誤りをもった場合に、学習アルゴリズム収束への影響を示している。ここでは、確率的変動によって、学習アルゴリズムが動作せず、損失関数の出力が学習の進展とともに上昇し、識別率が40%を切るまでに低下していることがわかる。素子の再現性誤りが学習アルゴリズムに悪影響を与えていることがわかる。
以上のように、本実施形態に係るニューラルネットワークシステム1では、分解能が有限であるニューロモーフィック素子を使用したニューロモーフィックアレイを使ってニューラルネットワークを学習する場合の素子調整機構を開示した。つまり、通常の勾配降下法等の学習アルゴリズムに基づいて計算された重み更新量に基づく、素子のコンダクタンス更新処理の後に、改めて素子列を構成する一部の素子を選択して、それらの素子に追加的に書き込み信号を印加し、その後に、学習データを入力させた出力結果と教師信号の差分を評価することで、学習性能が改善することを示した。これらの追加的適正化処理における素子の選択方法は、単に全体に対する素子数割合や、更新量絶対値、コンダクタンス更新量(絶対値)の大きい素子などを選択的に調整する手法が開示された。また、その選択にあたっては、全体の素子の8%程度の素子を選択することでも、十分に素子特性の変動が学習アルゴリズムに与える影響が抑制され、学習アルゴリズムの収束性を改善することができることが示された。
例えば、3層構造、つまり、隠れ層が一層ある場合は、入力層と隠れ層の間に対応する第一のニューロモーフィックアレイと隠れ層と出力層の間に対応する第二のニューロモーフィックアレイで実現する。この場合、学習は、ニューロモーフィックアレイの出力値と教師信号の差分から重み更新量を勾配降下法などで計算し、第二のニューロモーフィックアレイの各素子のコンダクタンス変化量を計算する。求めた変化量を起こさせるための書き換え信号を素子列に印加して各素子のコンダクタンスを変更する。第一のニューロモーフィックアレイのコンダクタンス変化は第二のニューロモーフィックアレイの重み更新量の計算過程を使用して計算する。この計算過程は誤差逆伝搬法と呼ばれる手法を適用することで何層にでも遡って適用することが可能である。
また、ニューラルネットワークとしては、任意の種類のニューラルネットワークが用いられてもよく、例えば、全結合型のニューラルネットワーク、畳み込みニューラルネットワーク、あるいは、再帰型ニューラルネットワークなどが用いられてもよい。
なお、ここでいう「コンピュータシステム」とは、オペレーティング・システム(OS:Operating System)あるいは周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また、記録媒体としては、例えば、一時的にデータを記録する記録媒体であってもよい。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)あるいは電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
一構成例として、可変な特性(例えば、コンダクタンスなど)の値に応じた重みを信号に乗算するニューロモーフィック素子を含むアレイ(本実施形態では、ニューロモーフィックアレイ3)の制御装置(本実施形態では、学習制御回路6)であって、学習アルゴリズムが出力した重みの更新量から変換したニューロモーフィック素子のコンダクタンス変化を与えることでニューロモーフィック素子の学習を行う機能において、特定の条件で抽出した一部の素子に対して追加的変動を与えながら、コンダクタンスを調整する制御部(本実施形態では、学習制御回路6の機能であり、例えば、追加書き込み信号生成部66)を備える、制御装置である。
一構成例として、制御装置において、制御部は、対象素子の選択は学習データの入力値の最も大きい素子を選択する。
一構成例として、制御装置において、制御部は、学習アルゴリズムによって計算された重み更新量が最も大きい重みに対応する素子を選択する。
一構成例として、制御装置において、制御部は、素子のコンダクタンス変化量が最も大きい素子を選択する。
一構成例として、制御装置において、制御部は、上記のいずれかの基準に基づいて設定された閾値により、複数の対象素子を選択し、素子毎に順次、上述の調整機能を実行する。
一構成例として、制御装置において、制御部は、閾値を学習の進展毎に更新する機能を持つ。
一構成例として、制御装置において、制御部は、閾値はニューラルネットワークの各層毎に異なる値を設定する機能を持つ。
一構成例として、制御装置において、制御部は、上述の調整機能を実行後、学習データを入力した結果の教師信号との差分が縮小する間は、追加パルスの印加ステップを継続する機能を持つ。
一構成例として、制御装置において、制御部(本実施形態では、学習制御回路6の機能であり、例えば、学習判定部63、コンダクタンス更新量計算部64、書き込み信号生成部65)は、ニューロモーフィック素子の離散化ステップサイズを使用して、アレイについて学習を行う。
一構成例として、制御装置において、アレイは、ニューロモーフィック素子を用いてニューラルネットワークにおける積和演算を行う回路を有する。
ここで、コンピュータでは、例えば、CPU(Central Processing Unit)などのプロセッサがメモリに記憶されたプログラムを読み出して実行する。
また、本発明によれば、ニューロモーフィックアレイを使用したニューラルネットワークにおいて学習アルゴリズムを高速に収束することが可能になる。
また、本発明によれば、ニューロモーフィックアレイを使用したニューラルネットワークにおいて、識別性能を改善することが可能になる。
2…信号生成回路
3…ニューロモーフィックアレイ
31…ニューロモーフィック素子
311…入力端子
312…共通端子
32…共通ビット線
33…ワード線
4…検出回路
5…差分回路
6…学習制御回路
61…学習信号生成部
62…教師信号生成部
63…学習判定部
64…コンダクタンス更新量計算部
65…書き込み信号生成部
66…追加書き込み信号生成部
Pic No. 0〜24…画像
Claims (10)
- 可変な抵抗値をとりうる2個以上の可変抵抗素子が共通ビット線で接続され、
入力データから入力信号を生成し、上記可変抵抗素子に印加する入力信号生成回路と、
共通ビット線に流れる電流を検出する検出回路と、
入力データに対応する教師信号と検出回路の出力の差分を出力する差分回路と、
ニューラルネットワークの学習アルゴリズムを実行し、重み更新量を各素子のコンダクタンス変化量に変換する学習制御回路と、
上記可変抵抗素子のコンダクタンスを上記学習制御回路で算出した分だけ変化させるための信号を生成する書き込み信号生成回路と、
予め定めた選別条件によって一部の可変抵抗素子を選択する選択回路から構成されるニューロモルフィック回路において、
コンダクタンス変化量に基づく書き込み信号を印加した後、選択回路によって選択された一部の素子にさらなる書き込み信号を印加した後、
入力信号を全ての抵抗変化素子に再入力し、検出回路の出力と教師信号の差分の変化から
学習を継続するか、停止するかを判定する判定機構を具備してなるニューロモーフィック回路。 - 前記選択回路における選別条件は、重み更新量の絶対値をもとに算出された閾値によって選別することを特徴とする請求項1記載のニューロモーフィック回路。
- 前記選択回路における選別条件は、入力データの絶対値をもとに算出された閾値によって選別することを特徴とする請求項1記載のニューロモーフィック回路。
- 前記閾値は、共通ビット線に接続される素子総数に対して、一定の割合で素子が選別される様に決定することを特徴とする請求項2乃至3記載のニューロモーフィック回路。
- 前記閾値は学習の進行に対して変動させることを特徴とする、請求項2乃至3記載のニューロモーフィック回路。
- 第一の方向に配設される2本以上の前記共通ビット線で構成され、複数の共通ビット線上で端部から同じ位置に配置される複数の可変抵抗素子は、共通ビット線と異なる第二の方向に配設されるワード線によって相互に接続され、前記選択回路は各々の共通ビット線の単位で追加的書き込み信号印加処理を順次実施することを特徴とする、請求項1乃至5記載のニューロモーフィック回路。
- 請求項6記載のニューロモーフィック回路において、前記閾値を共通ビット線毎に異なる値を設定することを特徴とするニューロモーフィック回路。
- 前記判定機構は、追加書き込み信号を印加した後、差分の変動量が正の場合にはさらに追加の書き込み信号を印加し、負の場合には逆の方向に抵抗を変化させるための書き込み信号を印加することを特徴とする、請求項1乃至7記載のニューロモーフィック回路。
- 複数の可変抵抗素子で構成されるニューロモーフィックアレイにおいて、ニューラルネットワークの学習を行うステップと、ニューラルネットワークの重みの更新量をニューロモーフィックアレイの各可変抵抗素子のコンダクタンスの変化量に変換するステップと、変換したコンダクタンス変化量に基づく書き込み信号をニューロモーフィックアレイに印加するステップと、さらに一部の素子を選択するステップと選択した素子に対してのみ追加的な書き込み信号を印加するステップと、改めて学習データをニューロモーフィックアレイに入力し、その教師信号との差分によって当該学習サイクルの終了を判定するステップと、を備える、ニューロモーフィックアレイの学習方法。
- 可変な特性の値に応じた重みを信号に乗算するニューロモーフィック素子を含むニューロモーフィックアレイにおいて、ニューラルネットワークの学習を行うステップと、ニューラルネットワークの重みの更新量をニューロモーフィックアレイ素子のコンダクタンスの変化量に変換するステップと、変換したコンダクタンス変化量に基づく書き込み信号をニューロモーフィックアレイに印加するステップと、さらに一部の素子を選択するステップと、選択した素子に対してのみ追加的な書き込み信号を印加するステップと、改めて学習データをニューロモーフィックアレイに入力し、その教師信号との差分によって当該学習サイクルの終了を判定するステップと、をコンピュータに実行させるためのプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/046924 WO2020129204A1 (ja) | 2018-12-20 | 2018-12-20 | ニューロモーフィック回路、ニューロモーフィックアレイの学習方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2020129204A1 true JPWO2020129204A1 (ja) | 2021-03-11 |
JP6881693B2 JP6881693B2 (ja) | 2021-06-02 |
Family
ID=71102729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020558557A Active JP6881693B2 (ja) | 2018-12-20 | 2018-12-20 | ニューロモーフィック回路、ニューロモーフィックアレイの学習方法およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210312272A1 (ja) |
JP (1) | JP6881693B2 (ja) |
WO (1) | WO2020129204A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220044102A1 (en) * | 2020-08-06 | 2022-02-10 | Micron Technology, Inc. | Fault tolerant artificial neural network computation in deep learning accelerator having integrated random access memory |
US12093812B2 (en) | 2020-10-02 | 2024-09-17 | Sandisk Technologies Llc | Ultralow power inference engine with external magnetic field programming assistance |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000330610A (ja) * | 1999-05-19 | 2000-11-30 | Matsushita Electric Ind Co Ltd | 学習制御装置および学習制御方法 |
JP2003263624A (ja) * | 2002-03-07 | 2003-09-19 | Matsushita Electric Ind Co Ltd | ニューラル・ネットワーク装置の学習演算回路 |
JP2018521400A (ja) * | 2015-07-13 | 2018-08-02 | 株式会社デンソー | メモリスタ神経形態学的回路及びメモリスタ神経形態学的回路をトレーニングするための方法 |
-
2018
- 2018-12-20 WO PCT/JP2018/046924 patent/WO2020129204A1/ja active Application Filing
- 2018-12-20 US US17/287,355 patent/US20210312272A1/en active Pending
- 2018-12-20 JP JP2020558557A patent/JP6881693B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000330610A (ja) * | 1999-05-19 | 2000-11-30 | Matsushita Electric Ind Co Ltd | 学習制御装置および学習制御方法 |
JP2003263624A (ja) * | 2002-03-07 | 2003-09-19 | Matsushita Electric Ind Co Ltd | ニューラル・ネットワーク装置の学習演算回路 |
JP2018521400A (ja) * | 2015-07-13 | 2018-08-02 | 株式会社デンソー | メモリスタ神経形態学的回路及びメモリスタ神経形態学的回路をトレーニングするための方法 |
Also Published As
Publication number | Publication date |
---|---|
JP6881693B2 (ja) | 2021-06-02 |
WO2020129204A1 (ja) | 2020-06-25 |
US20210312272A1 (en) | 2021-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023284142A1 (zh) | 脉冲神经网络中神经元的信号处理方法及该网络训练方法 | |
JP6724870B2 (ja) | 人工ニューラルネットワーク回路の訓練方法、訓練プログラム、及び訓練装置 | |
KR102589303B1 (ko) | 고정 소수점 타입의 뉴럴 네트워크를 생성하는 방법 및 장치 | |
US9330355B2 (en) | Computed synapses for neuromorphic systems | |
US11373092B2 (en) | Training of artificial neural networks | |
KR101700140B1 (ko) | 스파이킹 뉴럴 연산을 위한 방법들 및 장치 | |
US11182676B2 (en) | Cooperative neural network deep reinforcement learning with partial input assistance | |
US11468313B1 (en) | Systems and methods for quantizing neural networks via periodic regularization functions | |
US20150170027A1 (en) | Neuronal diversity in spiking neural networks and pattern classification | |
US20220067588A1 (en) | Transforming a trained artificial intelligence model into a trustworthy artificial intelligence model | |
KR20210032140A (ko) | 뉴럴 네트워크에 대한 프루닝을 수행하는 방법 및 장치 | |
KR20140128384A (ko) | 스파이킹 뉴럴 연산을 위한 방법들 및 장치 | |
JP7059458B2 (ja) | 生成的敵対神経網ベースの分類システム及び方法 | |
US20150317557A1 (en) | Temporal spike encoding for temporal learning | |
US9672464B2 (en) | Method and apparatus for efficient implementation of common neuron models | |
US11562225B2 (en) | Automatic monitoring and adjustment of machine learning model training | |
JP6881693B2 (ja) | ニューロモーフィック回路、ニューロモーフィックアレイの学習方法およびプログラム | |
US20140310216A1 (en) | Method for generating compact representations of spike timing-dependent plasticity curves | |
JP2021140320A (ja) | スパイキングニューラルネットワーク装置およびスパイキングニューラルネットワーク装置の学習方法 | |
US11461640B2 (en) | Mitigation of conductance drift in neural network resistive processing units | |
US9542645B2 (en) | Plastic synapse management | |
US20150161506A1 (en) | Effecting modulation by global scalar values in a spiking neural network | |
KR20230019094A (ko) | 아날로그 가속기들을 위한 드리프트 계수들에서의 변동에 대응하기 위한 드리프트 정규화 | |
US11188454B2 (en) | Reduced memory neural network training | |
JP7563495B2 (ja) | 学習装置、学習方法、及び、プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201020 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20201020 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20201130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201208 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210204 |
|
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: 20210406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210419 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6881693 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |