Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6501146B2 - ニューラルネットワーク回路およびその学習方法 - Google Patents
[go: Go Back, main page]

JP6501146B2 - ニューラルネットワーク回路およびその学習方法 - Google Patents

ニューラルネットワーク回路およびその学習方法 Download PDF

Info

Publication number
JP6501146B2
JP6501146B2 JP2015042790A JP2015042790A JP6501146B2 JP 6501146 B2 JP6501146 B2 JP 6501146B2 JP 2015042790 A JP2015042790 A JP 2015042790A JP 2015042790 A JP2015042790 A JP 2015042790A JP 6501146 B2 JP6501146 B2 JP 6501146B2
Authority
JP
Japan
Prior art keywords
circuit
neural network
signal
voltage signal
pulse voltage
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.)
Expired - Fee Related
Application number
JP2015042790A
Other languages
English (en)
Other versions
JP2015195011A (ja
Inventor
雄 西谷
雄 西谷
上田 路人
路人 上田
幸広 金子
幸広 金子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2015042790A priority Critical patent/JP6501146B2/ja
Publication of JP2015195011A publication Critical patent/JP2015195011A/ja
Application granted granted Critical
Publication of JP6501146B2 publication Critical patent/JP6501146B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • G06N3/065Analogue means

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)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Semiconductor Memories (AREA)

Description

本開示は、ニューラルネットワーク回路およびその学習方法に関する。
現在、生体の脳の情報処理方式を模倣したコンピュータの研究が行われている。この処理モデルの最も基本となるものがニューラルネットワーク(neural network)である。例えば非特許文献1には、パルスタイミングを用いて情報を表現するモデル(スパイキングニューロンモデル)が開示されている。非特許文献1によれば、スパイキングニューロンモデルは、パルスを用いない従来のモデルよりも高い演算性能を有することが開示されている。
さらに、パルスタイミングによる学習動作をより少ない数の素子の構成で実現することができるニューロン回路として、例えば特許文献1のような構成が開示されている。
特許第5289647号公報
W. Maass、"Networks of Spiking Neurons: The Third Generation of Neural Network Models、" Neural Networks、 vol. 10、 no. 9、 pp. 1659−1671、 1997.
ニューロンの数が多いニューラルネットワーク場合、ソフトウェア演算では計算量が膨大になるため演算時間が長くなる。そのため、専用ハードウェアの開発が行われてきた。しかしながら、特許文献1のようなパルスタイミングによる学習動作を実現するニューロン回路を相互接続するだけでは、エラーバックプロパゲーション学習を行うことができない。
エラーバックプロパゲーション学習は、階層型ニューラルネットワークにおいて最もよく用いられる教師あり学習方法である。エラーバックプロパゲーション学習では、入力信号の他に教師信号を入力し、出力信号と教師信号との誤差が小さくなるように学習を行う。しかし、特許文献1には誤差を演算する手法および演算した誤差を荷重の更新に反映する手法の何れも開示されていない。
そこで本開示は、エラーバックプロパゲーション学習動作を適切に行うことができるニューラルネットワーク回路およびその学習方法を提供する。
本開示の付加的な恩恵及び有利な点は本明細書及び図面から明らかとなる。この恩恵及び/又は有利な点は、本明細書及び図面に開示した様々な態様及び特徴により個別に提供され得るものであり、その1以上を得るために全てが必要ではない。
本開示の一の態様に係るニューラルネットワーク回路は、複数のニューラルネットワーク回路素子と、誤差演算回路と、少なくとも1つの入力信号端子と、少なくとも1つの出力信号端子と、を備え、前記少なくとも1つの入力信号端子に入力される入力信号から前記少なくとも1つの出力信号端子から出力される少なくとも1つの出力信号を得るためのニューラルネットワーク回路であって、前記誤差演算回路は、前記少なくとも1つの出力信号と、前記少なくとも1つの出力信号端子の数と等しい数の教師信号と、が入力され、前記出力信号と、前記出力信号に対応する前記教師信号との時間差に応じた大きさの電圧信号である誤差電圧信号を生成するよう構成され、前記ニューラルネットワーク回路素子は、少なくとも1つのシナプス回路と、1つのニューロン回路と、を備え、前記シナプス回路は、パルス電圧の印加により抵抗値が変化する抵抗変化素子を備え、前記ニューロン回路は、時間の経過とともに基準値から所定のピーク値に至り、前記ピーク値から再び前記基準値へ戻るような所定の第1波形を有する荷重変更パルス電圧信号と、所定の時間幅を定める所定の第2波形を有するスイッチングパルス電圧信号と、を生成する波形発生回路を備え、前記荷重変更パルス電圧信号は、当該荷重変更パルス電圧信号を出力した前記ニューロン回路が含まれる前記ニューラルネットワーク回路素子の前記シナプス回路に入力され、前記スイッチングパルス電圧信号は、当該スイッチングパルス電圧信号を出力した前記ニューロン回路が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子の前記シナプス回路に入力され、前記ニューラルネットワーク回路素子は、前記誤差演算回路で生成された前記誤差電圧信号に基づいて前記荷重変更パルス電圧信号の振幅を変更するよう構成され、前記シナプス回路は、当該シナプス回路が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力されたスイッチングパルス電圧信号における前記所定の時間幅を有する期間、当該スイッチングパルス電圧信号と前記シナプス回路が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記荷重変更パルス電圧信号との時間差に応じた電圧によって当該シナプス回路における前記抵抗変化素子の抵抗値を変化させるよう構成される。
本開示のニューラルネットワーク回路によれば、エラーバックプロパゲーション学習動作を適切に行うことができる。
図1は本開示の一実施の形態におけるニューラルネットワーク回路を構成するニューラルネットワーク回路素子の概略構成を示すブロック図である。 図2Aは図1に示すニューラルネットワーク回路素子を用いて構成されるニューラルネットワーク回路の構成例を示すブロック図である。 図2Bは本開示の一実施の形態におけるニューラルネットワーク回路を構成するニューラルネットワーク回路素子を示すブロック図である。 図3Aは図1に示すニューラルネットワーク回路素子において入力信号として用いられるパルス電圧の波形例を示す図である。 図3Bは図1に示すニューラルネットワーク回路素子において教師信号として用いられるアナログパルス電圧の波形例を示す図である。 図4は図1に示すニューラルネットワーク回路素子における積分回路の具体例を示す回路図である。 図5Aは図1に示すニューラルネットワーク回路素子において用いられる荷重変更パルス電圧信号の波形例を示す図である。 図5Bは図1に示すニューラルネットワーク回路素子において用いられるスイッチングパルス電圧信号の波形例を示す図である。 図6は図1に示すニューラルネットワーク回路素子のニューロン回路における信号発生回路の例を示すブロック図である。 図7Aは図1に示すニューラルネットワーク回路素子における抵抗変化素子の具体例を示す断面模式図である。 図7Bは図7Aに示す抵抗変化素子の回路記号を示す図である。 図8は図1に示すニューラルネットワーク回路素子のシナプス回路における第1スイッチの具体例を示す回路図である。 図9は図5Aに示す荷重変更パルス電圧信号と図5Bに示すスイッチングパルス電圧信号との時間差に応じた抵抗変化素子の第3端子への印加電圧を示すグラフである。 図10Aは図1に示すニューラルネットワーク回路素子の誤差演算回路における時間差演算回路の概略構成例を示すブロック図である。 図10Bは図10Aに示す時間差演算回路におけるスイッチおよびピークホールド回路の具体例を示す回路図である。 図11は図1に示すニューラルネットワーク回路素子の誤差演算回路における和算回路の例を示す回路図である。 図12は本開示の第1実施例における検証用シナプス回路の構成例を示すブロック図である。 図13は図12に示す検証用シナプス回路を用いた検証結果を示すグラフである。 図14Aは本開示の第2実施例における検証用シナプス回路の構成例を示すブロック図である。 図14Bは図14Aに示す検証用シナプス回路を用いた検証用ニューラルネットワークの構成例を示すブロック図である。 図14Cは図14Bに示す検証用ニューラルネットワーク回路素子を用いた検証用ニューラルネットワーク回路の構成例を示すブロック図である。 図15は図14Cに示すニューラルネットワーク回路において排他的論理和の学習を行った際の学習経過に伴う誤差の変化を示すグラフである。 図16Aは階層型ニューラルネットワークを示す概略図である。 図16Bは相互結合型ニューラルネットワークを示す概略図である。 図17は一般的なニューロンを示す模式図である。 図18は2つの入力端子を有するニューロン部における各値の時間的変化を示すグラフである。 図19は従来のニューラルネットワーク回路素子を示す回路図である。
[ニューラルネットワークの説明]
まず、本開示の実施の形態の前提となるニューラルネットワークおよびこれを実現するための従来におけるニューラルネットワーク回路の課題について詳しく説明する。上述したように、ニューラルネットワークは生体の神経回路網を模したものである。ニューラルネットワークは、神経回路網における機能単位である神経細胞を模したニューロンを機能単位とし、複数のニューロンをネットワーク状に配置して情報処理を行う。例えば、図16Aに示すようにニューロン100を階層状に接続した階層型ニューラルネットワークや、図16Bに示すようにニューロン100同士を相互に接続した相互結合型ニューラルネットワーク(ホップフィールドネットワーク)がある。
ニューラルネットワークは、大きく2つの機能を有する。1つ目は、入力から出力を得る「処理」機能であり、2つ目は、ニューラルネットワーク全体の入出力の関係を所望のものに設定する「学習」機能である。
[処理機能]
ここでは階層型ニューラルネットワークを例に、情報処理の動作について説明する。図16Aに示した階層型ニューラルネットワークは、入力層400、中間層500、および出力層600の3つの層を備えている。各層には少なくとも1つのニューロン100が含まれる。入力層400の各ニューロン100は中間層500の各ニューロン100と接続され、同様に、中間層500の各ニューロン100は出力層の各ニューロン100と接続されている。入力信号200は入力層400へ入力され、中間層500、出力層600と順に伝播し、出力層600から出力される。ニューロン100では、入力値に対して後述する所定の演算が行われ、その出力値を次の層のニューロンへ伝播する。従って、出力層600からの出力値が、ニューラルネットワークの最終出力300となる。この一連の動作がニューラルネットワークの情報処理であり、中間層500に含まれるニューロンを十分多くすると、任意の入出力が実現される。図16Aに示した階層型ニューラルネットワークは3つの層を備えているが、中間層500を複数備えることもできる。
続いて、ニューラルネットワークの構成単位であるニューロンについて説明する。図17は一般的なニューロンを示す模式図である。ニューロン100は、シナプス(synapse
)部121,122とニューロン部130を備えている。なお、シナプス部の数は前段に接続されたニューロンの数、つまり入力信号の数に等しい。シナプス部121は外部からの複数の入力信号111に対して重み付けを行う。シナプス部122は外部からの入力信号112に対して重み付けを行う。重み付けの値(w,w)のそれぞれを結合荷重と呼ぶ。ニューロン部130は、シナプス部によって重み付けされた入力信号の和を計算し、和の値を非線形演算した値を出力する。ここで、外部からの入力信号をそれぞれx(1,2,・・・,n)と表すとする。nは入力信号の数に等しい。下記式(1)に示すように、シナプス部121,122は各入力信号に対して、対応する結合荷重の値w(1,2,・・・,n)を乗算し、ニューロン部130はそれらの和Vを計算する。
=Σw (1)
ここで、Σはiについての和記号である。
さらにニューロン部は、求めた和Vに対して非線形演算fを行った結果を出力値yとする。したがって、ニューロンの出力yは下記式(2)のように表される。
y=f(V) (2)
非線形関数fには、飽和特性を持つ単調増加関数が用いられる。例えば、ステップ関数(階段関数)やシグモイド関数(sigmoid function)が用いられる。
ニューラルネットワーク回路は、複数のニューロン部130が同時に演算を行うことができるため、並列処理性を持つ。つまり、従来型コンピュータの逐次情報処理とは異なり、並列情報処理が可能であることが特長である。
[学習機能]
ニューラルネットワークの重要な特徴は、上述したように入力から出力を得る「処理」機能だけでなく、「学習」機能を備えている点である。ここで述べる学習とは、上述したシナプス部の結合荷重を更新することで、ニューラルネットワーク回路全体の入出力の関係を所望のものに設定することである。
学習は大きく分けて教師なし学習と教師あり学習とに分けられる。教師なし学習は、ニューラルネットワークに入力信号を入力することで、ニューラルネットワークへの入力信号同士の相関関係がネットワークに学習される。一方、教師あり学習では、入力信号とともに、その入力信号に対応した所望の出力信号をニューラルネットワークに与える。この所望の出力信号を教師信号と呼ぶ。ニューラルネットワークに入力信号を与えたときのニューラルネットワークからの出力信号が、教師信号と等しくなるように学習を行う。図16Aに示した階層型ニューラルネットワークでは、エラーバックプロパゲーション学習と呼ばれる学習法が一般的に用いられる。
エラーバックプロパゲーション学習は以下のような学習法である。
1.ニューラルネットワークに学習のためのサンプル(入力信号および教師信号)を与える、
2.入力信号によって生じる実際のネットワークの出力と、教師信号とを比較し、その誤差を計算する、
3.各シナプスの結合荷重を誤差が小さくなるよう調整する、
4.出力層から入力層側のニューロンの順に結合荷重を調整する、
5.すべてのサンプルについて、上記1から4の処理を繰り返す、および
6.すべてのサンプルについて、誤差が所定の値になるまで上記1から5の処理を繰り返す。
エラーバックプロパゲーション学習においては、このアルゴリズムの名称が暗示するように、エラー(および学習)は出力層から入力層側のニューロンへと伝播する。
[スパイキングニューロンモデル]
ここまでニューラルネットワークの処理機能および学習機能について詳述してきた。これまでの説明に用いたモデルにおいては、ニューロン間で伝播する信号は、電流または電位の値をアナログ値で表現したものであった。これに対して、生体の神経細胞では、ほぼ一定形状のパルス(スパイクパルス)をやり取りしていることがわかっている。そこで、生体の神経回路をより忠実に真似て、パルスを直接扱うモデル(スパイキングニューロンモデル)が、知られている。スパイキングニューロンモデルには、例えば、ある一定時間に伝播されるパルスの数を用いてアナログ情報を表現するモデル(パルス密度モデル)、および、例えばパルスとパルスとの時間的間隔を用いてアナログ情報を表現するモデル(パルスタイミングモデル)等が含まれる。これらのスパイキングニューロンモデルは、シグモイド関数を用いた従来のニューラルネットワークよりも高い演算性能を得ることができる。
上述のような、パルスを用いた情報表現に適用できるニューロン部の動作モデルとして、積分発火モデルが提案されている。図18は2つの入力端子を有するニューロン部における各値の時間的変化を示すグラフである。
図18に示すように、外部もしくは他のニューロン部から、シナプス部121に入力パルスx(t)が入力され、シナプス部122に入力パルスx(t)が入力されると、パルスが入力されたタイミングで、それぞれのシナプス部121,122において単峰性の電圧変化が現れる。このようなシナプス部の電位をシナプス後電位(Post−synaptic potential、以下、「PSP」と略記する)と呼ぶ。図18には、シナプス部121およびシナプス部122におけるPSPの時間変化P(t)およびP(t)が示されている。PSPの高さはシナプス結合荷重に比例する。ここでtは時間を表す。
ニューロン部130は、当該ニューロン部130に接続されているすべてのシナプス部121,122からのPSPの総和を演算する。この総和は、ニューロン部130の内部電位V(t)と呼ばれる。ニューロン部130への入力端子が2つの場合、図18に示すように、内部電位V(t)はP(t)およびP(t)の和となる。一般的に表すと、内部電位V(t)は下記式(3)のように表される。
(t)=ΣP(t) (3)
ここで、Pはi番目のシナプス部でのPSPであり、Σはiについての和記号である。
図18に示すように、内部電位Vがあらかじめ定められたしきい値Vthを超えると、そのニューロン部はパルス信号y(t)を出力する。これをニューロン部の「発火」と呼ぶ。パルス出力y(t)はニューロン部から出力され、他のニューロン部に入力される。
[集積回路化]
ここまででニューラルネットワークの概要について詳述したが、ニューラルネットワークを構成するにあたっては、上述したニューロンをどのようにして実現するかが問題となる。これまで、従来型コンピュータを用い、ソフトウェア処理にてニューロンの機能を実現する手法を用いることが多かった。しかし、この場合、複数のニューロンにおける処理をCPUが時分割で実行することになるため、本来の並列情報処理がなされない。
上述のように、パルスタイミングによる情報表現に基づくニューラルネットワークは高い性能を実現できることが示唆されている。しかし、ソフトウェア処理によってニューロンの機能を実現する場合、演算時間が膨大になるためスパイキングニューラルネットワークの特長である高い演算能力を発揮できない。そのため、ハードウェアを用いてスパイキングニューロンを構成し集積回路化することが必須である。
特許文献1には、スパイキングニューロンモデルに基づいて動作するニューロンをハードウェアで実現する具体例(ニューラルネットワーク回路素子)が開示されている。図19は、従来のニューラルネットワーク回路素子を示す。図19は特許文献1の図1と同様の構成を示している。図19に示されるニューラルネットワーク回路素子700は、上述のニューロン100に相当する。
図19に示されるように、ニューラルネットワーク回路素子700は、シナプス回路720と、ニューロン回路730と、を具備する。シナプス回路720は上述のシナプス部120に相当し、ニューロン回路730は上述のニューロン部130に相当する。シナプス回路720は、可変抵抗素子710と、セレクタ回路711と、スイッチ回路712と、を具備する。可変抵抗素子710は、その抵抗値をシナプス結合荷重として記憶する機能を持つ。
ニューロン回路730は、積分回路731と、波形発生回路732と、遅延回路733と、を具備する。波形発生回路733はパルス電圧信号VPOST1を、他のニューラルネットワーク回路素子に出力する。波形発生回路732はパルス電圧信号VPOST2を、同じニューラルネットワーク回路素子700内のセレクタ回路711にフィードバック入力する。
このように、特許文献1によれば、セレクタ回路711にフィードバック入力されるパルス電圧信号VPOST2を用いてセレクタ回路711を制御し、可変抵抗素子710のゲート電極に電圧パルス信号VPRE1を入力可能とするか否かを切り替えることで、スパイクタイミングシナプス可塑性(Spike-timing dependent synaptic plasticity、以下では「STDP」と略記する)による学習機能を実現する。
しかし、特許文献1に開示されたニューラルネットワーク回路素子では、単一のニューロンの学習方法について記載されているが、複数のニューロンを接続してネットワーク化した際の学習方法は記載されていない。ニューラルネットワークの実際の使用においては、ニューラルネットワーク回路素子を相互接続してネットワークを構成した上で学習を行い、ネットワークとしての演算機能を実現する必要がある。つまり、特許文献1に開示されたニューロンを階層型ニューラルネットワークとして接続するだけでは、階層型ニューラルネットワークにおいて一般的に使用されるバックプロパゲーション学習を行うことができない。さらに具体的には、エラーバックプロパゲーション学習では、入力信号の他に教師信号を入力し、出力信号と教師信号との誤差が小さくなるように学習を行う。そのため、誤差を演算し、演算した誤差を荷重の更新に反映する必要がある。
[具体的な態様]
そこで、本開示の一態様に係るニューラルネットワーク回路は、複数のニューラルネットワーク回路素子と、誤差演算回路と、少なくとも1つの入力信号端子と、少なくとも1つの出力信号端子と、を備え、前記少なくとも1つの入力信号端子に入力される入力信号から前記少なくとも1つの出力信号端子から出力される少なくとも1つの出力信号を得るためのニューラルネットワーク回路である。前記誤差演算回路は、前記少なくとも1つの出力信号と、前記少なくとも1つの出力信号端子の数と等しい数の教師信号と、が入力され、前記出力信号と、前記出力信号に対応する前記教師信号との時間差に応じた大きさの電圧信号である誤差電圧信号を生成するよう構成される。前記ニューラルネットワーク回路素子は、少なくとも1つのシナプス回路と、1つのニューロン回路と、を備える。前記シナプス回路は、パルス電圧の印加により抵抗値が変化する抵抗変化素子を備える。前記ニューロン回路は、時間の経過とともに基準値から所定のピーク値に至り、前記ピーク値から再び前記基準値へ戻るような所定の第1波形を有する荷重変更パルス電圧信号と、所定の時間幅を定める所定の第2波形を有するスイッチングパルス電圧信号と、を生成する波形発生回路を備える。前記荷重変更パルス電圧信号は、当該荷重変更パルス電圧信号を出力した前記ニューロン回路が含まれる前記ニューラルネットワーク回路素子の前記シナプス回路に入力され、前記スイッチングパルス電圧信号は、当該スイッチングパルス電圧信号を出力した前記ニューロン回路が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子の前記シナプス回路に入力されるよう構成される。前記ニューラルネットワーク回路素子は、前記誤差演算回路で生成された前記誤差電圧信号に基づいて前記荷重変更パルス電圧信号の振幅を変更するよう構成される。前記シナプス回路は、当該シナプス回路が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力されたスイッチングパルス電圧信号における前記所定の時間幅を有する期間、当該スイッチングパルス電圧信号と前記シナプス回路が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記荷重変更パルス電圧信号との時間差に応じた電圧によって当該シナプス回路における前記抵抗変化素子の抵抗値を変化させるよう構成される。
上記構成によれば、出力信号と教師信号との時間差を電圧信号に変換することにより、出力信号と教師信号との誤差の大きさをシナプスの荷重を変更するための電圧信号の大きさに反映することができる。このため、出力信号と教師信号との誤差を小さくするように荷重を変更することが可能となる。したがって、エラーバックプロパゲーション学習を適切に実現することができる。
前記教師信号は、前記出力信号との時間差が0である場合に基準電位となり、前記出力信号との時間差が所定の範囲内である場合に前記基準電位を中心電位として双極性に前記時間差が大きくなるほど前記中心電位との電位差が大きくなり、前記時間差が前記所定の範囲外である場合に振幅が前記所定の範囲内における電位差の最大値が保持されるような信号であってもよい。これにより、出力信号と教師信号との時間差を効率的に電圧信号に変換することができる。
前記誤差演算回路は、前記出力信号端子と同じ数の時間差演算回路と、1つの和算回路と、を備え、前記時間差演算回路は、それぞれ、対応する前記出力信号端子から出力される前記出力信号と、当該出力信号に対応する前記教師信号との時間差に応じた前記誤差電圧信号を生成し、前記誤差電圧信号を、出力される信号が前記出力信号端子から出力される前記出力信号となる前記ニューラルネットワーク回路素子に含まれる前記ニューロン回路に入力し、前記和算回路は、前記時間差演算回路のそれぞれにおいて生成された前記誤差電圧信号を和算した和算電圧信号を生成し、前記和算電圧信号を、出力される信号が前記出力信号端子から出力される前記出力信号ではない前記ニューラルネットワーク回路素子に含まれる前記ニューロン回路に入力するよう構成されてもよい。これにより、出力される信号がニューラルネットワーク回路の出力信号端子から出力される出力信号となるニューラルネットワーク回路素子(出力層に含まれるニューラルネットワーク回路素子)に対しては、対応する出力信号と教師信号との誤差に基づいて当該誤差を小さくするように荷重を変更することができる。さらに、出力される信号がニューラルネットワーク回路の出力信号端子から出力される出力信号ではないニューラルネットワーク回路素子(中間層に含まれるニューラルネットワーク回路素子)に対しては、生成された誤差電圧信号を和算した和算電圧信号に基づいて荷重を変更することができる。これにより、出力層に含まれるニューラルネットワーク回路素子だけでなく、すべてのニューラルネットワーク回路素子に対してエラーバックプロパゲーション学習を実現することができる。
前記抵抗変化素子は、第1端子、第2端子、および第3端子を具備し、前記第1端子と前記第2端子との間には、前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力された前記スイッチングパルス電圧信号に基づいた定電圧が印加され、前記第1端子と前記第3端子との間には、前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力されたスイッチングパルス電圧信号における前記所定の時間幅を有する期間、当該スイッチングパルス電圧信号と前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記荷重変更パルス電圧信号との時間差に応じた電圧が印加され、前記第1端子と前記第3端子との間の電位差に応じて前記第1端子と前記第2端子との間の抵抗値が変化するように構成されてもよい。
前記シナプス回路は、前記抵抗変化素子の前記第3端子と前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記荷重変更パルス電圧信号が入力される端子との間の接続または遮断を切り替える第1スイッチを備え、前記第1スイッチは、前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力された前記スイッチングパルス電圧信号に基づいて前記接続または遮断を切り替えるよう構成されてもよい。
前記抵抗変化素子は、強誘電体メモリスタであってもよい。
前記強誘電体メモリスタは、基板上に形成された制御電極と、前記制御電極が当接するように設けられる強誘電体層と、強誘電体層上に形成された半導体層と、半導体層上に設けられた第1電極および第2電極とを備え、前記第1電極と前記制御電極との間の電位差に応じて前記第1電極と前記第2電極との間の抵抗値が変化するよう構成されてもよい。
前記ニューロン回路は、前記シナプス回路の前記抵抗変化素子を流れる電流値を積分する積分回路と、前記積分回路で積分された電流値に応じて、前記第1波形および前記第2波形を生成する波形発生回路と、を備え、前記波形発生回路は、前記第1波形の大きさに前記誤差電圧信号の大きさを乗算する乗算回路を備えてもよい。
前記シナプス回路は、一端が第1基準電圧源に接続され、他端が前記抵抗変化素子の前記第1端子に接続される第2スイッチを備え、前記第2スイッチは、前記別のニューラルネットワーク回路素子から入力される前記スイッチングパルス電圧信号における前記所定の時間幅を有する期間、前記第1基準電圧源と前記第1端子とを接続するように構成されてもよい。
また、本開示の他の態様に係るニューラルネットワーク回路の学習方法は、上記構成を有するニューラルネットワーク回路の学習方法であって、出力される信号が前記出力信号端子から出力される前記出力信号となる前記ニューラルネットワーク回路素子である第1のニューラルネットワーク回路素子の前記ニューロン回路から出力される前記荷重変更パルス電圧信号の振幅を、前記誤差電圧信号に基づいて変更した後、出力される信号が前記出力信号端子から出力される前記出力信号ではない前記ニューラルネットワーク回路素子である第2のニューラルネットワーク回路素子の前記ニューロン回路から出力される前記荷重変更パルス電圧信号の振幅を、前記誤差電圧信号に基づいて変更するものである。
上記方法によれば、まず、第1のニューラルネットワーク回路素子に対してエラーバックプロパゲーション学習に基づいた荷重の変更を行う。その後、第2のニューラルネットワーク回路素子に対してエラーバックプロパゲーション学習に基づいた荷重の変更を行う。このため、各ニューラルネットワーク回路素子のシナプス回路に対して効率的に誤差が小さくなるように荷重を変更することが可能となる。したがって、エラーバックプロパゲーション学習を適切に実現することができる。
前記学習方法は、前記第2のニューラルネットワーク回路素子の前記シナプス回路に前記荷重変更パルス電圧信号の代わりに電位が基準電位に等しい信号を入力させることにより、前記第2のニューラルネットワーク回路素子の前記抵抗変化素子の抵抗値を変化させないようにした状態で、前記第1のニューラルネットワーク回路素子の抵抗変化素子の抵抗値を変化させる、第1ステップと、前記第2のニューラルネットワーク回路素子の前記シナプス回路に当該シナプス回路が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記第1波形を有する前記荷重変更パルス電圧信号を生成させることによって、前記第2のニューラルネットワーク回路素子の前記抵抗変化素子の抵抗値を変化させる、第2ステップと、を含み、前記教師信号と対応する前記出力信号との時間差が規定値以下になるまで前記第1ステップおよび前記第2ステップの処理を繰り返し実行してもよい。
本開示の一態様に係るニューラルネットワーク回路は、出力信号と教師信号が入力され、前記出力信号と前記教師信号の時間差に応じた電圧値を有する誤差信号を生成する誤算演算回路と、前記ニューラルネットワーク回路の中間層に含まれる第1の1以上のニューラルネットワーク回路素子と、前記ニューラルネットワーク回路の出力層に含まれる第2の1以上のニューラルネットワーク回路素子を含み、前記出力層は前記出力信号を出力し、前記第1の1以上のニューラルネットワーク回路素子の各々は第1の1以上のシナプス回路と第1ニューロン回路を含み、前記第2の1以上のニューラルネットワーク回路素子の各々は第2の1以上のシナプス回路と第2ニューロン回路を含み、前記第1の1以上のシナプス回路、前記第2の1以上のシナプス回路の各々は、印加されるパルス電圧の電圧値により抵抗値が変化する抵抗変化素子を備え、前記第1ニューロン回路、前記第2ニューロン回路の各々は、時間の経過とともに基準値からピーク値に至り、前記ピーク値から再び前記基準値へ戻る波形を有する荷重変更パルス電圧信号と、スイッチングパルス電圧信号とを生成する波形発生回路を備え、前記第1ニューロン回路で発生された前記荷重変更パルス電圧信号である第1荷重変更パルス電圧信号は、前記第1の1以上のシナプス回路の各々に入力され、前記第2ニューロン回路で発生された前記荷重変更パルス電圧信号である第2荷重変更パルス電圧信号は、前記第2の1以上のシナプス回路の各々に入力され、前記第1ニューロン回路で発生された前記スイッチングパルス電圧信号である第1スイッチングパルス信号は、前記第2の1以上のシナプス回路の各々に入力され、前記第1荷重変更パルス電圧信号の振幅及び、前記第2荷重変更パルス電圧信号の振幅は、前記誤差信号に基づいて決定され、前記第1スイッチングパルス電圧信号で示される時間幅で示される期間と、前記第1スイッチングパルス電圧信号と前記第2荷重変更パルス電圧信号との時間差に応じた電圧に基づいて、前記第2の1以上のシナプス回路の各々に含まれる前記抵抗変化素子の抵抗値が変化される。
前記第2ニューロン回路で発生された前記スイッチングパルス電圧信号は前記出力信号であってもよい。
以下、本開示の実施の形態によるニューラルネットワーク回路、ニューラルネットワーク回路の学習方法を、図面を参照しながら説明する。
[実施の形態]
本開示の一実施の形態について説明する。図1は本開示の一実施の形態におけるニューラルネットワーク回路を構成するニューラルネットワーク回路素子の概略構成を示すブロック図である。また、図2Aは図1に示すニューラルネットワーク回路素子を用いて構成されるニューラルネットワーク回路の構成例を示すブロック図である。
図2Aに示すように、ニューラルネットワーク回路1は、入力層2、中間層3、出力層4および誤差演算回路5が直列に接続されることにより構成される。
ニューラルネットワーク回路1の入力層2には、少なくとも1つの入力信号Vinが入力される。なお、図2Aにおいては、少なくとも1つの入力信号Vinは、複数の入力信号Vin ,Vin ,…である。
ニューラルネットワーク回路1の入力層2は、少なくとも1つの入力信号端子6を含む。なお、図2Aにおいては、少なくとも1つの入力信号端子6は、入力信号端子6A,6B,…である。
少なくとも1つの入力信号Vinは少なくとも1つの入力信号端子6から入力される。図2Aにおいては、入力信号Vin は入力信号端子6Aから入力され、入力信号Vin は入力信号端子6Bから入力される。
ニューラルネットワーク回路1の入力層2には、少なくとも1つの教師信号Vが入力される。なお、図2Aにおいては、少なくとも1つの教師信号Vは、複数の教師信号V ,V ,…である。
ニューラルネットワーク回路1の入力層2は、少なくとも1つの教師信号端子7を含む。なお、図2Aにおいては、少なくとも1つの教師信号端子7は、教師信号端子7a,7b,…である。
少なくとも1つの教師信号Vtは少なくとも1つの教師信号端子7から入力される。図2Aにおいては、教師信号Vtaは教師信号端子7aから入力され,教師信号Vtbは教師信号端子7bから入力される。
ニューラルネットワーク回路1は、少なくとも1つの入力信号端子6に入力される入力信号Vinに基づいて、少なくとも1つの出力信号端子8から出力される少なくとも1つの出力信号Voutを得る回路である。
ニューラルネットワーク回路1の出力層4からは、少なくとも1つの出力信号Voutが出力される。なお、図2Aにおいては、少なくとも1つの出力信号Voutは、複数の出力信号Vout ,Vout ,…である。
ニューラルネットワーク回路1の出力層4は、少なくとも1つの出力信号端子8を含む。なお、図2Aにおいては、少なくとも1つの出力信号端子8は、出力信号端子8a,8b,…である。
少なくとも1つの出力信号Voutは少なくとも1つの出力信号端子8から出力される。図2Aにおいては、出力信号Vout は出力信号端子8aから出力され、出力信号Vout は出力信号端子8bから出力される。
図3Aは図2Aに示すニューラルネットワーク回路において入力信号として用いられるパルス電圧の波形例を示す図である。また、図3Bは図2Aに示すニューラルネットワーク回路において教師信号として用いられるアナログパルス電圧の波形例を示す図である。入力信号端子6から入力される入力信号Vinは、例えば図3Aに示すように、所定の時間幅を定める所定の波形を有するスイッチングパルス電圧信号として構成される。教師信号端子7から入力される教師信号Vは、例えば図3Bに示すような波形を有する荷重変更パルス電圧信号として構成される。図3Bに例示する教師信号Vは、出力信号Voutとの時間差が0である場合に基準電位(例えば0電位)となり、出力信号Voutとの時間差が所定の範囲内である場合に基準電位を中心電位として双極性に時間差が大きくなるほど中心電位との電位差が大きくなり、時間差が所定の範囲外である場合に振幅が所定の範囲内における電位差の最大値が保持されるような信号である。図3Bにおいては、双極性となる信号として基準電位となる時刻tより時間が進んでいる場合(出力信号Voutの到達時刻が教師信号Vより早い場合)、正極性(正の値)となり、時刻tより時間が遅れている場合(出力信号Voutの到達時刻が教師信号Vより遅い場合)、負極性(負の値)となるような信号を例示している。なお、正極性と負極性とが反対となる信号であってもよい。
さらに、ニューラルネットワーク回路1は、少なくとも1つの入力信号Vinに対する少なくとも1つの出力信号Voutを得るための少なくとも1つの出力信号端子8を備えている。なお、図2Aにおいては、複数の出力信号としてそれぞれの出力信号をVout ,Vout ,…で表し、複数の出力信号端子としてそれぞれの出力信号端子を8a,8b,…で表している。ニューラルネットワーク回路1の全教師信号端子(7a、7b、…)の数は、ニューラルネットワーク回路1の全出力信号端子(8a、8b、…)の数に等しい。なお、ニューラルネットワーク回路1の全入力信号端子(6A、6B、…)の数とニューラルネットワーク回路1の全出力信号端子(8a、8b、…)との数は等しくなくてもよい。
図2Aに示す中間層3および出力層4には、図1に示すようなニューラルネットワーク回路素子40がそれぞれ複数設けられる。図1に示すように、ニューラルネットワーク回路素子40は、少なくとも1つのシナプス回路20と、1つのニューロン回路30と、を備えている。中間層3に含まれるニューラルネットワーク回路素子40の入力端子51は、入力層6の入力信号端子が接続され、入力信号が入力される。中間層3に含まれるニューラルネットワーク回路素子40は、ニューロン回路30で生成されたスイッチングパルス電圧信号VPOST2を出力端子53から出力する。出力層4に含まれるニューラルネットワーク回路素子40の入力端子51は、中間層3に含まれるニューラルネットワーク回路素子40の出力端子53と接続され、中間層3に含まれるニューラルネットワーク回路素子40から出力されるスイッチングパルス電圧信号VPOST2が入力される。出力層4に含まれるニューラルネットワーク回路素子40の出力端子53は、出力信号端子8に接続され、ニューロン回路30で生成されたスイッチングパルス電圧信号VPOST2を出力信号Voutとして出力する。
なお、本実施形態において、中間層3に含まれるニューラルネットワーク回路素子40は、並列に接続されているが、中間層3において、ニューラルネットワーク回路素子40を複数直列接続することとしてもよい。言い換えると、図1に示す中間層3を複数段設けることとしてもよい。この場合、中間層3に含まれるニューラルネットワーク回路素子40の入力端子51は、入力層2の入力信号端子または前段のニューラルネットワーク回路素子40の出力端子53に接続され、出力端子53は、後段のニューラルネットワーク回路素子40の入力端子51またはニューラルネットワーク回路1の出力信号端子8に接続される。
さらに、ニューラルネットワーク回路素子40には、後述する誤差電圧信号Verrorに基づく信号が入力される誤差入力端子52が設けられる。
シナプス回路20は、ニューラルネットワーク回路素子40の入力端子51に接続される第1入力端子41と、後述するニューロン回路30の第1出力端子47に接続される第2入力端子42と、出力端子43と、を備える。ニューロン回路30は、シナプス回路20の出力端子43に接続される第1入力端子44と、ニューラルネットワーク回路素子40の誤差入力端子52に接続される第2入力端子45と、シナプス回路20の第2入力端子42に接続される第1出力端子47と、ニューラルネットワーク回路素子40の出力端子53に接続される第2出力端子46と、を備える。なお、図1には、図面の見易さのため、1つのニューロン回路30および1つのシナプス回路20のみが示されているが、実際には、図2Bに示すように、1つのニューロン回路30に対して複数のシナプス回路20が接続され得る。
[ニューロン回路]
ニューロン回路30は、積分回路31と、比較回路32と、波形発生回路33と、を備えている。
ニューロン回路30の第1入力端子44は、積分回路31に接続されている。積分回路31は、ニューロン回路30に接続されている少なくとも1つのシナプス回路20から出力される電流の和を演算する。図4は図1に示すニューラルネットワーク回路素子における積分回路の具体例を示す回路図である。図4に示す具体例において、積分回路31は、オペアンプ35、キャパシタ36および抵抗素子37を備えたアナログ積分回路として構成される。キャパシタ36の容量値は例えば1pFであり、抵抗素子37の抵抗値は例えば1MΩである。オペアンプ35の正極性入力端子(+)はグランド電圧と等電位となるように構成され、オペアンプ35の負極性入力端子(−)はニューロン回路30の入力端子44に接続される。オペアンプ35の負極性入力端子(−)と出力端子との間には、キャパシタ36および抵抗素子37が並列に接続されている。
積分回路31は、シナプス回路20からニューロン回路30に入力される電流を用いてキャパシタ36を充電する。この動作によって、電流の時間積分の演算結果が積分電圧信号Vとして出力される。また、オペアンプ35は、出力信号である積分電圧信号Vを抵抗素子37を介してオペアンプ35の負極性入力端子(−)にフィードバックさせるように構成されている。これにより、オペアンプ35の負極性入力端子(−)は仮想接地の状態となる。
オペアンプ35の負極性入力端子(−)が仮想接地の状態となるため、シナプス回路20の数やキャパシタ36の積分電位Vに関わらず、電流電圧源23の第1基準電圧Vと抵抗変化素子10の抵抗値によって決まる一定電流が、ニューロン回路30へ入力され、蓄積される。
積分回路31の積分電位Vは、比較回路32に入力される。比較回路32は、演算値が所定のしきい値VTHを超えたときに、波形発生回路33へ出力信号(トリガ信号)Vを出力する。
信号発生回路33は、比較回路32の出力信号Vをトリガとして、時間の経過とともに基準値から所定のピーク値に至り、前記ピーク値から再び前記基準値へ戻るような所定の第1波形を有する荷重変更パルス電圧信号VPOST1および所定の時間幅を定める所定の第2波形を有するスイッチングパルス電圧信号VPOST2を生成する。荷重変更パルス電圧信号VPOST1は、第1出力端子47から出力され、スイッチングパルス電圧信号VPOST2は、第2出力端子46から出力される。
図5Aは図1に示すニューラルネットワーク回路素子において用いられる荷重変更パルス電圧信号の波形例を示す図であり、図5Bは図1に示すニューラルネットワーク回路素子において用いられるスイッチングパルス電圧信号の波形例を示す図である。
図5Aに例示する荷重変更パルス電圧信号VPOST1は、第1波形として、時間の経過とともに基準値である0電位から所定の正のピーク電圧値まで上昇し、その後、正のピーク電圧値から再び0電位まで下降する三角波形を有するアナログパルス電圧信号である。なお、荷重変更パルス電圧信号VPOST1は、図5Aに示した波形の他、例えば図5Aの波形の符号を反転させた波形が用いられ得る。さらに、図5Aの例では、電位の上昇と減少が時間に対して線形に変化する波形を記載しているが、電位が時間に対して非線形に変化してもよい。
図5Bに例示するスイッチングパルス電圧信号VPOST2は、第2波形として方形波を有している。より具体的には、図5Bに例示するスイッチングパルス電圧信号VPOST2は、所定の時間幅を有する期間(入力許容期間)、所定の電圧レベル以上(HI状態)となる第2波形を有している。なお、スイッチングパルス電圧信号VPOST2は、図5Bに示す波形に限られず、HI状態およびLO状態の何れかの時間幅を定めることができる波形であればよい。このため、スイッチングパルス電圧信号VPOST2は、デジタル波形であってもアナログ波形であってもよい。後述するように、ニューラルネットワーク回路素子40の第1入力端子51に入力されるスイッチングパルス電圧信号VPREもスイッチングパルス電圧信号VPOST2と同様の波形を有する。
信号発生回路33は、荷重変更パルス電圧信号VPOST1およびスイッチングパルス電圧信号VPOST2を同じタイミングで生成する。具体的には、荷重変更パルス電圧信号VPOST1の電位変化が生じる時間およびスイッチングパルス電圧信号VPOST2の時間的な中心点(図5Aおよび図4Bにおいてそれぞれ時刻tで示す)が一致するように出力する。
図6は図1に示すニューラルネットワーク回路素子のニューロン回路における信号発生回路の例を示すブロック図である。図6に示すように、信号発生回路33は、比較回路32からの出力信号Vをトリガとして駆動するデジタル/アナログコンバータ332と、アナログパルス電圧を生成するためのデジタル波形データが記憶されたデジタルメモリ331と、アナログ乗算回路333と、を備えている。デジタル/アナログコンバータ332は、比較回路32からの出力信号Vが入力されると、デジタルメモリ331から第1波形についてのデジタル波形データを読み出し、これをアナログ波形に変換してアナログ乗算回路333へ入力する。アナログ乗算回路333は、デジタルメモリ331の第1波形の大きさに、第2入力端子45から入力される誤差電圧信号Verrorの大きさを乗算し、乗算後の振幅を有するアナログ波形を荷重変更パルス電圧信号VPOST1として生成する。生成された荷重変更パルス電圧信号VPOST1は、第1出力端子47から出力される。図1に示すように、第1出力端子47から出力された荷重変更パルス電圧信号VPOST1は、これを出力したニューロン回路30が含まれるニューラルネットワーク回路素子40内のすべてのシナプス回路20にフィードバック入力される(図2B参照)。
信号発生回路33は、スイッチングパルス電圧信号VPOST2も生成し、第2出力端子46に出力する。前述したように、ニューロン回路30の第2出力端子46は、ニューラルネットワーク回路素子40の出力信号端子53に接続されている。したがって、スイッチングパルス電圧信号VPOST2はニューラルネットワーク回路素子40の出力信号となる。中間層3に含まれるニューラルネットワーク回路素子40の出力信号は、当該出力信号を出力したニューロン回路30とは別のニューラルネットワーク回路素子40(出力層4に含まれるニューラルネットワーク回路素子40)における入力端子51に第1入力信号(すなわち、後述するスイッチングパルス電圧信号VPRE)として入力される。出力層4に含まれるニューラルネットワーク回路素子40の出力信号は、ニューラルネットワーク回路1の出力信号端子8から出力される出力信号Voutとなる。
[シナプス回路]
次に、本実施形態におけるシナプス回路20について説明する。図1に示すように、シナプス回路20は、パルス電圧の印加により抵抗値が変化する抵抗変化素子10を備えている。シナプス回路20は、第1入力端子41に入力されるスイッチングパルス電圧信号VPREにおける所定の時間幅を有する期間、当該スイッチングパルス電圧信号VPREと第2入力端子42に入力される荷重変更パルス電圧信号VPOST1との時間差に応じた電圧によって当該シナプス回路20における抵抗変化素子10の抵抗値を変化させるよう構成される。ここで、スイッチングパルス電圧信号VPREは、当該スイッチングパルス電圧信号VPREが入力されるシナプス回路20が含まれるニューラルネットワーク回路素子40とは別のニューラルネットワーク回路素子40から入力されたスイッチングパルス電圧信号VPOST2または入力信号端子6から入力された入力信号Vinである。また、荷重変更パルス電圧信号VPOST1は、当該荷重変更パルス電圧信号VPOST1が入力されるシナプス回路20が含まれるニューラルネットワーク回路素子40のニューロン回路30で生成された荷重変更パルス電圧信号VPOST1である。
抗変化素子10は、第1端子13、第2端子14、および第3端子15を具備している。第1端子13と第2端子14との間には、スイッチングパルス電圧信号VPREに基づいた定電圧が印加される。第1端子13と第3端子15との間には、スイッチングパルス電圧信号VPREにおける所定の時間幅を有する期間(入力許容期間)、当該スイッチングパルス電圧信号VPREと荷重変更パルス電圧信号VPOST1との時間差に応じた電圧が印加される。抵抗変化素子10は、このようにして生じた第1端子13と第3端子15との間の電位差に応じて第1端子13と第2端子14との間の抵抗値が変化する。
なお、抵抗変化素子10は、不揮発性を有する抵抗変化素子を用いることができる。不揮発性とは、抵抗変化素子10に電圧の印加により抵抗値が変化した後、電圧の印加を止めた後でも当該変化した抵抗値が保持される性質を意味する。このような抵抗変化素子10を用いることにより、抵抗変化素子10への電圧供給遮断後も抵抗値を保持することができる。
本実施形態における抵抗変化素子10は、強誘電体メモリスタ(memristor)である。
図7Aは図1に示すニューラルネットワーク回路素子における抵抗変化素子の具体例を示す断面模式図であり、図7Bは図7Aに示す抵抗変化素子の回路記号を示す図である。
図7Aに示すように、強誘電体メモリスタは、強誘電体層71をゲート絶縁層とする電界効果トランジスタ構造を有する(強誘電体ゲートトランジスタとも称される)。強誘電体メモリスタは、基板72上に形成された制御電極(ゲート電極)73と、制御電極73が当接するように設けられる強誘電体層71と、強誘電体層71上に形成された半導体層74と、半導体層74上に設けられた第1電極(ソース電極)75および第2電極(ドレイン電極)76とを備えている。第1電極75は第1端子13に接続され、第2電極76は第2端子14に接続され、制御電極73は、第3端子15に接続される。このような構成の抵抗変化素子10は、第1電極75と制御電極73との間の電位差に応じて第1電極73と第2電極74との間の抵抗値が変化する。
半導体層74は、例えば、ZnO、GaN、またはInGaZnO等により形成される。強誘電体層71は、例えば、Pb(Zr,Ti)O、Sr(Bi,Ta)O、またはBi12TiO20等により形成される。第1電極75、第2電極76および制御電極73は、例えば、白金層およびチタン層を含む積層体等により構成される。
このような強誘電体メモリスタにおいて、制御電極73と、第1電極75および/または第2電極76との間に電圧が印加されると、強誘電体層71の分極方向(図7Aにおいては矢印Qで示されている)に依存して、第1電極75と第2電極76との間の抵抗値が不揮発に変化する。
より具体的に説明する。なお、以下では、制御電極73から半導体層74に向かう方向を上方向とし、半導体層74から制御電極73へ向かう方向を下方向とする。図7Aに示すように、強誘電体層71の一部分が上方向の分極(図7Aの矢印Qで示す方向の分極)を有する場合、当該強誘電体層71の分極が生じた箇所の上方に積層されている半導体層74は低い抵抗値を有する。一方、強誘電体層71の一部分が下方向の分極(図7Aの矢印Qで示す方向とは反対方向の分極)を有する場合、当該強誘電体層71の分極が生じた箇所の上方に積層している半導体層74は高い抵抗値を有する。第1電極75と第2電極76との間の抵抗値は、半導体層74における第1電極75と第2電極76とに挟まれた領域の抵抗値となる。したがって、当該半導体層74の領域の下方に位置する強誘電体層71における分極の割合によって、第1電極75と第2電極76との間の抵抗値が連続的に変化する。
このような強誘電体メモリスタにおいて、第1電極75と第2電極76との間の抵抗値を制御するために、第1電極75および/または第2電極76と制御電極73との間の電位差を変化させることで、強誘電体層71の分極方向を変化させる。例えば、第1電極75および/または第2電極76を基準として、制御電極73に正の電圧を印加すると、強誘電体層71の分極による電場の向きが上方向(半導体層74側)に向きやすくなる。反対に、制御電極73に負の電圧を印加すると、強誘電体層71の分極による電場の向きが下方向(制御電極73側)に向きやすくなる。また、印加する電圧の大きさ(絶対値)が大きいほど、強誘電体層71における分極の変化量が大きくなる。したがって、制御電極73に正の電圧を印加すると第1電極75と第2電極76との間の抵抗値は減少し、制御電極73に負の電圧を印加すると第1電極75と第2電極76との間の抵抗値は増加する。また、第1電極75と第2電極76との間の抵抗値の変化は制御電極73に印加される電圧の絶対値が大きいほど顕著になる。以上のように、強誘電体メモリスタは、上述の抵抗変化素子10として採用し得る。
ここで、上述した強誘電体メモリスタの製造方法について例示する。まず、例えばチタン酸ストロンチウム(SrTiO)からなる(001)配向の単結晶基板72上に、例えばルテニウム酸ストロンチウム(SrRuO)からなる酸化物導電体層を、パルスレーザデポジション(以下PLD)法によって堆積する。酸化物導電体層の厚みは例えば30nmである。また、堆積時の基板72の温度は700℃である。酸化物導電体層の堆積後、フォトリソグラフィおよびイオンミリング法によって制御電極73を形成する。
さらに、基板72の温度が700℃である状態で、PLD法を用いて制御電極73上に例えばジルコニウム酸チタン酸鉛(Pb(Zr,Ti)O)からなる強誘電体層71を堆積する。強誘電体層71の厚みは例えば450nmである。その後、基板72の温度を400℃まで下げ、強誘電体層71上に例えば酸化亜鉛(ZnO)からなる半導体層74を堆積する。半導体層74の厚みは例えば450nmである。
次に、堆積された半導体層74上にパターニングされたレジストを形成する。その後、例えばチタン層および白金層を、室温下で電子ビーム蒸着法によって堆積することにより、チタン層および白金層からなる積層体を形成する。チタン層の厚みは例えば5nmであり、白金層の厚みは例えば30nmである。積層体の形成後、リフトオフ法によって第1電極75および第2電極76を形成する。第1電極75および第2電極76は、半導体層74の主面に接触し、互いが所定距離離間するように形成される。このようにして、強誘電体メモリスタである抵抗変化素子10が得られる。
抵抗変化素子10の抵抗値を変化させる具体的な構成として、シナプス回路20は、抵抗変化素子10の第3端子15と荷重変更パルス電圧信号VPOST1が入力される第2入力端子42との間の接続または遮断を切り替える第1スイッチ21を備えている。第1スイッチ21は、第1入力端子51から入力されたスイッチングパルス電圧信号VPREに基づいて抵抗変化素子10の第3端子15と第2入力端子42との間の接続または遮断を切り替える。
例えば、スイッチングパルス電圧信号VPREは、所定の時間幅を有する期間(入力許容期間)、所定の電圧レベル以上(HI状態)となる波形を有している。スイッチングパルス電圧信号VPREがHI状態の期間は、第1スイッチ21によって、抵抗変化素子10の第3端子15と、シナプス回路20の第2入力端子42とが接続される。すなわち、スイッチングパルス電圧信号VPREがHI状態の期間、第1スイッチ21が閉状態となることにより、シナプス回路20の第2入力端子42と抵抗変化素子10の第3端子15との間が導通可能となる。したがって、スイッチングパルス電圧信号VPREに基づいて定められる入力許容期間において、抵抗変化素子10の第3端子15と、ニューロン回路30の荷重変更パルス電圧信号VPOST1を出力する第2出力端子46との間が接続され、それ以外の期間は当該接続が遮断される。
さらに、シナプス回路20は、所定の第1基準電圧V(例えば電源電圧VDD)を発生させる第1基準電圧源23と、一端が第1基準電圧源23に接続され、他端が抵抗変化素子10の第1端子13に接続される第2スイッチ22を備えている。第2スイッチ22は、他のニューラルネットワーク回路素子40から、または、入力信号端子6から入力されるスイッチングパルス電圧信号VPREが所定の時間幅を有する期間(入力許容期間)、例えば所定の電圧レベル以上(HI状態)となり、第1基準電圧源23と第1端子13とを接続するように構成される。また、シナプス回路20は、スイッチングパルス電圧信号VPREを所定の時間遅延させる遅延回路29を備えている。
遅延回路29の一端は、シナプス回路20の第1入力端子41に接続され、遅延回路29の他端は、第1スイッチ21の制御端子26および第2スイッチ22の制御端子18に接続されている。第1スイッチ21の一対の主端子のうちの一方の端子27は、第2入力端子42に接続され、第1スイッチ21の一対の主端子のうちの他方の端子28は、抵抗変化素子10の第3端子15に接続されている。第1スイッチ21は、制御端子26に所定の電圧以上の電圧が印加された場合に、一対の主端子27,28間を接続するよう構成される。第2スイッチ22の一対の主端子のうちの一方の端子16は、第1基準電圧源23に接続され、第2スイッチ22の一対の主端子のうちの他方の端子17は、抵抗変化素子10の第1端子13に接続されている。第2スイッチ22は、制御端子18に所定の電圧以上の電圧が印加された場合に、一対の主端子16,17間を接続するよう構成される。抵抗変化素子10の第2端子14は、出力端子43に接続されている。
このような構成において、ニューラルネットワーク回路素子40の第1入力端子51から入力されたスイッチングパルス電圧信号VPREが第1スイッチ21の制御端子26および第2スイッチ22の制御端子18に入力される。したがって、第1スイッチ21は、スイッチングパルス電圧信号VPREにおける所定の時間幅を有する期間(HI状態の期間)において一対の主端子27,28間を接続し、その他の期間(LO状態の期間)において一対の主端子27,28間を遮断する。同様に、第2スイッチ22は、スイッチングパルス電圧信号VPREにおける所定の時間幅を有する期間(HI状態の期間)において一対の主端子16,17間を接続し、その他の期間(LO状態の期間)において一対の主端子16,17間を遮断する。
図8は図1に示すニューラルネットワーク回路素子のシナプス回路における第1スイッチの具体例を示す回路図である。図8に示す具体例において、第1スイッチ21は、相補的動作をする少なくとも2つのトランジスタを用いて構成される。図8の例において、第1スイッチ21は、2つのn型MOSFET211,212と、1つのインバータ213とを備えている。一方のn型MOSFET211のソース端子には所定の基準電圧(例えばグランド電圧)が与えられ、ドレイン端子は他方のn型MOSFET212のソース端子に接続され、ゲート端子はインバータ213の出力端子に接続されている。他方のn型MOSFET212のドレイン端子は、一対の主端子のうちの一方の端子27に接続され、ゲート端子は、制御端子26に接続されている。インバータ213の入力端子も、制御端子26に接続されている。2つのn型MOSFET211,212間の共通端子は、一対の主端子のうちの他方の端子28に接続されている。なお、インバータ回路213を用いる代わりに2つのn型MOSFET211,212のうちの一方(211)をp型のMOSFETとしてもよい。
前述したように、一対の主端子のうちの一方の端子27には、この第1スイッチ21が設けられているニューラルネットワーク回路素子40に設けられているニューロン回路30の第2出力端子46から出力された荷重変更パルス電圧信号VPOST1が入力される。また、制御端子26には、この第1スイッチ21が設けられているニューラルネットワーク回路素子40の外部から入力されるスイッチングパルス電圧信号VPREが入力される。
このような構成において、制御端子26に印加されるスイッチングパルス電圧信号VPREがHI状態の期間には、n型MOSFET211が開状態(遮断状態)、n型MOSFET212が閉状態(接続状態)となるので、荷重変更パルス電圧信号VPOST1の電圧値に応じた電圧値が一対の主端子のうちの他方の端子28における出力電圧となる。スイッチングパルス電圧信号VPREがLO状態の期間には、n型MOSFET211が閉状態(接続状態),n型MOSFET212が開状態(遮断状態)となるので、第2端子28における出力電圧は基準電圧(n型MOSFET211のソース端子に印加されるグランド電位と略同電位)となる。
第2スイッチ22は、例えば電界効果トランジスタ(FET)等により実現できる。この場合、FETのゲート端子が制御端子18として機能する。
このようなシナプス回路20において、第1入力端子41には、他のニューラルネットワーク回路素子40が出力するスイッチングパルス電圧信号VPOST2が、第1入力信号、すなわち、スイッチングパルス電圧信号VPREとして印加される。また、シナプス回路20の第2入力端子42には、同じニューラルネットワーク回路素子40内のニューロン回路30から出力された荷重変更パルス電圧信号VPOST1が印加される。
[ニューラルネットワーク回路素子における処理機能および学習機能]
抵抗変化素子10は、前述したように第1端子13と第2端子14との間の抵抗値が可変する特性を有している。第2スイッチ22が閉状態になることにより、抵抗変化素子10の第1端子13と第2端子14との間に第1基準電圧Vが印加される。これにより、直流電圧源23から抵抗変化素子10に、当該抵抗変化素子10の現時点における導電率(抵抗値の逆数)に比例した電流が流れる。この電流は、ニューロン回路30に入力される。ニューロン回路30に入力される電流の大きさは、シナプス結合荷重wに比例しており、図18に示すようなPSP(P(t),P(t))に相当するものとなる。このように、本実施形態では、抵抗変化素子10の導電率(抵抗値の逆数)がシナプス結合荷重wに相当することとなる。
複数のシナプス回路20からニューロン回路30に入力される電流は、当該ニューロン回路30が含まれるニューラルネットワーク回路素子40が含む複数のシナプス回路20の各々から非同期的に与えられる。積分回路31は、複数のシナプス回路20からの入力電流を時空間加算する。時空間加算によって生じる積分電圧は、前述したニューロンの内部電位Vとみなせる。内部電位Vが所定のしきい値電圧VTHを超えると、波形発生回路33が2つのパルス電圧(VPOST1,VPOST2)を生成する。中間層3に含まれるニューラルネットワーク回路素子40のニューロン回路30から出力されるスイッチングパルス電圧信号VPOST2は、出力層4に含まれるニューラルネットワーク回路素子40のシナプス回路20の第1入力端子51にスイッチングパルス電圧信号VPREとして印加される。また、出力層4に含まれるニューラルネットワーク回路素子40のニューロン回路30から出力されるスイッチングパルス電圧信号VPOST2は、ニューラルネットワーク回路の出力信号Voutとして出力信号端子8から出力される。
中間層3に含まれるニューラルネットワーク回路素子40から出力されるスイッチングパルス電圧信号VPOST2が、出力層4に含まれるニューラルネットワーク回路素子40に第1入力信号(スイッチングパルス電圧信号VPRE)として入力された場合、出力層4に含まれる当該ニューラルネットワーク回路素子40のシナプス回路20は、スイッチングパルス電圧信号VPREの値に基づいて、第1スイッチ21を切り替える。スイッチングパルス電圧信号VPREは、所定の時間幅を有する期間、第1スイッチ21が、抵抗変化素子10の第3端子15と、シナプス回路20の第2入力端子42とを接続する。これによって、抵抗変化素子10の第3端子15に荷重変更パルス電圧信号VPOST1が入力可能な入力許容期間となる。この入力許容期間において第2入力端子42に入力された荷重変更パルス電圧信号VPOST1が抵抗変化素子10の第3端子15に印加される。このように、アナログ波形パルス電圧信号VPOST1のうちスイッチングパルス電圧信号VPREと時間的に重なる波形を有する(すなわち、所定の時間幅を有する)パルス電圧が、抵抗変化素子10の第3端子15に印加される。この所定の時間幅を有するパルス電圧によって抵抗変化素子10の抵抗値が変更される。上述のとおり、本実施形態においては、抵抗変化素子10の抵抗値の逆数(導電率)がシナプス結合荷重を表わしているので、その抵抗値の変化によりシナプス回路20のシナプス結合強度を更新する「学習」動作が可能となる。
また、荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとが印加されるタイミング(時間差)によって、抵抗変化素子10の第3端子15に印加されるパルス電圧の波形は変化する。上述のように、抵抗変化素子10の抵抗値変化の程度は、印加される電圧の大きさ、つまり電圧波形に依存する。2つのパルス電圧が印加されるタイミングに応じて抵抗変化素子10の第3端子15に印加されるパルス電圧の波形は、変化する。したがって、荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとが印加されるタイミングに応じて抵抗変化素子10の抵抗値変化の程度も変化する。
図9は図5Aに示す荷重変更パルス電圧信号と図5Bに示すスイッチングパルス電圧信号との時間差に応じた抵抗変化素子の第3端子への印加電圧を示すグラフである。上述したように、スイッチングパルス電圧信号VPREがHI状態の期間だけ、荷重変更パルス電圧信号VPOST1が抵抗変化素子10の第3端子15に印加される。図9において、第1スイッチ21の動作によって入力許容期間に抵抗変化素子10の第3端子15に印加される電圧(以下、ゲート入力電圧)をVsampleとする。また、荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとの入力タイミング差tPOST1−tPREは、荷重変更パルス電圧信号VPOST1の電位変化が生じる時間およびスイッチングパルス電圧信号VPOST2の時間的な中心点(図5Aおよび図5Bにおける時刻t)を基準として、その基準点の時間差とする。なお、図9には、2つのパルス電圧入力タイミング差の大きさを矢印で示している。
図9に示されるように、荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとの入力タイミング差tPOST1−tPREが変化することにより、ゲート入力電圧信号Vsampleの波形が変化する。例えばtPOST1−tPRE<0のとき(VPOST1がVPREより早く入力されるとき)、荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとが時間的に重なると、ゲート入力電圧信号Vsampleは負方向の電圧となり、入力タイミング差がある程度小さくなるまでは、入力タイミング差が小さいほどゲート入力電圧信号Vsampleの大きさが大きくなる。ゲート入力電圧信号Vsampleの大きさが負方向に大きくなるほど、抵抗変化素子10の導電率(抵抗値の逆数)が大きく減少する。一方、tPOST1−tPRE>0のとき(VPOST1がVPREより遅く入力されるとき)は、荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとが時間的に重なると、ゲート入力電圧信号Vsampleは、正方向の電圧となり、入力タイミング差がある程度小さくなるまでは、入力タイミング差が小さいほどゲート入力電圧信号Vsampleの大きさが大きくなる。ゲート入力電圧信号Vsampleの大きさが正方向に大きくなるほど、抵抗変化素子10の導電率(抵抗値の逆数)が大きく増加する。入力タイミング差tPOST1−tPREが0に近い所定の領域においては、ゲート入力電圧信号Vsampleは、平均値が略0に近づく。
このように、スイッチングパルス電圧信号VPREを用いて第1スイッチ21を切り替えることで、同じニューラルネットワーク回路素子40内で生成されたアナログパルス電圧VPOST1と他のニューラルネットワーク回路素子40から入力されたスイッチングパルス電圧VPREの入力タイミング差に基づいて、抵抗変化素子10の第3端子15に、当該入力タイミング差に依存したゲート入力電圧信号Vsampleが印加される。このようにして印加されたゲート入力電圧信号Vsampleによって、抵抗変化素子10において入力タイミング差に依存した抵抗値の変調が実現できる。本実施形態によれば、前段のニューラルネットワーク回路素子40のパルスタイミングと、後述する誤差演算回路5からのフィードバック信号とによって変化するパルスの振幅に応じて抵抗を変化させるため、学習が効率的に実現される。
さらに、ニューラルネットワーク回路素子40は、誤差演算回路5で生成された誤差電圧信号Verrorに基づいてニューロン回路30の波形発生回路33から出力される荷重変更パルス電圧信号VPOST1の振幅を変更するよう構成される。
このような構成によれば、出力信号Voutと教師信号Vとの時間差を電圧信号(誤差電圧信号Verror)に変換することにより、出力信号Voutと教師信号Vとの誤差の大きさをシナプスの荷重を変更するための電圧信号(荷重変更パルス電圧信号VPOST1)の大きさに反映することができる。このため、出力信号Voutと教師信号Vとの誤差を小さくするように荷重を変更することが可能となる。したがって、エラーバックプロパゲーション学習を適切に実現することができる。
[誤差演算回路]
次に、本実施形態における誤差演算回路5について説明する。誤差演算回路5には、少なくとも1つの出力信号Voutと、少なくとも1つの教師信号Vが入力される。誤差演算回路5は少なくとも1つの出力信号端子8を含み、少なくとも1つの出力信号端子8の数と誤差演算回路5に入力される少なくとも1つの教師信号Vの数は等しい。誤差演算回路5は出力信号Voutと、当該出力信号Voutに対応する教師信号Vとの時間差に応じた大きさの電圧信号を誤差電圧信号Verrorとして生成する。具体的には、誤差演算回路5は、出力信号端子8と同じ数の時間差演算回路90と、1つの和算回路80と、を備える。図2Aにおいては、少なくとも1つの出力信号端子8は複数の出力信号端子8a,8b,…である。また、図2Aにおいては、複数の出力信号端子8a,8b,…のそれぞれに対応する時間差演算回路を90a,90b,…で表している。すなわち、誤差演算回路5は少なくとも1つの時間差演算回路90を含み、図2Aでは、少なくとも1つの時間差演算回路90は時間差演算回路を90a,90b,…である。
時間差演算回路90は、それぞれ、8a、8b、・・・のうち対応する出力信号端子から出力される出力信号Voutと、当該出力信号Voutに対応する教師信号Vとの時間差に応じた誤差電圧信号Verrorを生成し、当該誤差電圧信号Verrorを、出力層4のニューラルネットワーク回路素子40に含まれるニューロン回路30に入力するよう構成される。具体的には、時間差演算回路90は、ニューラルネットワーク回路1の対応する出力信号端子に接続される第1入力端子93と、7a、7b、・・・のうち対応する教師信号端子に接続される第2入力端子94と、誤差電圧信号Verrorを出力する出力端子95と、を備える。出力端子95は、出力層4のニューラルネットワーク回路素子40の第2入力端子52に接続される。
和算回路80は、時間差演算回路90のそれぞれにおいて生成された誤差電圧信号Verrorを和算した和算電圧信号Vsamを生成し、当該和算電圧信号Vsamを、中間層3に含まれるニューラルネットワーク回路素子40のニューロン回路30に入力するよう構成される。具体的には、和算回路80は、時間差演算回路90の出力端子95に接続される時間差演算回路90と同じ数の入力端子84と、和算電圧信号Vsamを出力する1つの出力端子85と、を備える。和算回路80の出力端子85は、中間層3に含まれるすべてのニューラルネットワーク回路素子40の誤差入力端子52にフィードバック入力される。
図10Aは図1に示すニューラルネットワーク回路素子の誤差演算回路における時間差演算回路の概略構成例を示すブロック図である。図10Aにおいて、時間差演算回路90は、スイッチ91と、ピークホールド回路92と、を備えている。スイッチ91は、一対の主端子と制御端子と、を備える。一対の主端子のうちの一方は、時間差演算回路90の第2入力端子94に接続され、一対の主端子のうちの他方は、時間差演算回路90のピークホールド回路92の入力端子に接続され、制御端子は、第1入力端子93に接続される。ピークホールド回路92の出力端子は、時間差演算回路90の出力端子95に接続される。
図10Bは図10Aに示す時間差演算回路におけるスイッチおよびピークホールド回路の具体例を示す回路図である。図10Bに示す具体例において、スイッチ91は、相補的動作をする少なくとも2つのトランジスタにより構成される。図10Bの例において、スイッチ91は、2つのn型のMOSFET911,912と、1つのインバータ913と、を備えている。2つのn型MOSFETのうちの一方のn型MOSFET911のソース端子には、第2基準電圧源920が接続され、当該ソース端子に第2基準電圧Vが印加される。n型MOSFET911のドレイン端子には他方のn型MOSFET912のソース端子が接続され、ゲート端子はインバータ913の出力端子に接続されている。
他方のn型MOSFETのドレイン端子は、第2入力端子94に接続され、入力層2の教師信号端子7に入力された教師信号Vが入力される。n型MOSFET912のゲート端子およびインバータ913の入力端子は、第1入力端子93に接続され、出力層4のニューラルネットワーク回路素子40から出力されるスイッチングパルス電圧信号VPOST2が入力される。2つのn型MOSFET911,912間の共通端子は、ピークホールド回路92の入力端子914に接続されている。なお、インバータ913を用いる代わりに2つのn型MOSFET911,912のうちの一方(例えば911)をp型のMOSFETとしてもよい。
このようなスイッチ91の構成において、第1入力端子93に印加されるスイッチングパルス電圧信号VPOST2がHI状態の期間には、n型MOSFET911が開状態(遮断状態),n型MOSFET912が閉状態(接続状態)となるので、教師信号Vに応じた電圧値がスイッチ91の出力電圧となる。スイッチングパルス電圧信号VPOST2がLO状態の期間には、n型MOSFET911が閉状態(接続状態),n型MOSFET912が開状態(遮断状態)となるので、出力電圧は第2基準電圧Vとなる。第2基準電圧Vは、例えば教師信号Vの最小電位(基準電位との電位差が最も大きい負極性の電位)以下の電位に設定される。
図10Bの例において、ピークホールド回路92は、2つのオペアンプ915,916と、ダイオード917と、キャパシタ918と、第3基準電圧源919と、を備えている。キャパシタ918の容量値は例えば100pFである。ピークホールド回路92の入力端子914は、第1のオペアンプ915の負極性入力端子(−)に接続される。第1のオペアンプ915の正極性入力端子(+)は、第2のオペアンプ916の正極性入力端子(+)に接続されている。第1のオペアンプ915の出力端子には、ダイオード917のアノードが接続され、ダイオード917のカソードは、第1のオペアンプ915の正極性入力端子(+)および第2のオペアンプ916の正極性入力端子(+)に接続されている。
さらに、ダイオード917のカソード、第1および第2のオペアンプ915,916の正極性入力端子(+)は、キャパシタ918の一端に接続されている。キャパシタ918の他端には第3基準電圧源919が接続されている。第2のオペアンプ916の負極性入力端子(−)は、第2のオペアンプ916の出力端子に接続されている。第2のオペアンプ916の出力端子は、時間差演算回路90の出力端子95に接続される。第3基準電圧源919における第3基準電圧Vは、教師信号Vの基準電位(例えば0電位)より低い電位、例えば教師信号Vの最小電位以下の電位に設定される。第2基準電圧Vは、第3基準電圧V以下の電位に設定される。
このような構成によれば、時間差演算回路90は、スイッチングパルス電圧信号VPOST2と教師信号Vとの時間差に応じた直流電圧を、誤差演算回路5の出力端子95に出力する。スイッチングパルス電圧信号VPOST2が第1入力端子93に入力される前の状態(LO状態)においては、キャパシタ918は、第3基準電圧Vと同電位となるように充電され、出力端子95の電位は第3基準電圧Vとなる。スイッチングパルス電圧信号VPOST2のパルス波形が第1入力端子93に入力されると、スイッチ91は、スイッチングパルス電圧信号VPOST2がHI状態である間の教師信号Vの電圧を出力する。すなわち、スイッチングパルス電圧信号VPOST2と教師信号Vとの時間差が所定の範囲内である場合において、スイッチングパルス電圧信号VPOST2が教師信号Vより早く入力される場合(t−t>0の場合)には、出力される電圧は、負極性かつ時間差が大きいほど基準電位との電位差が大きい電圧となり、スイッチングパルス電圧信号VPOST2が教師信号Vtより遅く入力される場合(t−t<0の場合)には、出力される電圧は、性極性かつ時間差が大きいほど基準電位との電位差が大きい電圧となり、スイッチングパルス電圧信号VPOST2と教師信号Vとの時間差が0の場合には、出力される電圧は教師信号Vの基準電位に略等しくなる。
スイッチ91から出力された電圧がピークホールド回路92の入力端子914に入力されると、当該出力された電圧によってキャパシタ918が充電される。このため、時間差演算回路90の出力端子95の電位が入力端子914と等電位となる。スイッチ91の出力が第3基準電圧Vに戻っても、ダイオード917が逆バイアスされるため、キャパシタ918はオープン状態となり充放電が起こらない。そのため、出力端子95の電位は、スイッチ91が出力した最大の電位で保持される。この構成により、ピークホールド回路92は、スイッチングパルス電圧信号VPOST2と教師信号Vとの時間差に応じて極性および大きさが異なる直流電圧を誤差電圧信号Verrorとして出力端子95に出力することが可能となる。
なお、ピークホールド回路92は、第2のオペアンプ916の正極性入力端子(+)にグランド電位と接続するか否かを切り替えるスイッチ(図示せず)が接続されている。時間差演算回路90にスイッチングパルス電圧信号VPOST2のパルスが入力され、それに基づいた誤差電圧信号Verrorが出力された後の所定のタイミングで当該スイッチが閉状態となることにより、キャパシタ918に充電された電荷が放電され、元の状態(出力端子95の電位が第3基準電圧Vとなる状態)にリセットされる。
図11は図1に示すニューラルネットワーク回路素子の誤差演算回路における和算回路の例を示す回路図である。図11に例示される和算回路80は、時間差演算回路90の数(すなわち、入力される誤差電圧信号Verrorの数)に応じた抵抗素子81と、オペアンプ83と、フィードバック抵抗素子82と、を備えたアナログ和算回路として構成されている。抵抗素子81およびフィードバック抵抗素子82の抵抗値は例えばそれぞれ1kΩである。オペアンプ83の正極性入力端子(+)はグランド電位となるように構成され、オペアンプ83の負極性入力端子(−)は抵抗素子81を介して、和算回路80の入力端子84に接続される。オペアンプ83の出力端子は、和算回路80の出力端子85に接続されている。
このような和算回路80により、出力層4に含まれるニューラルネットワーク回路素子40のそれぞれで生じたスイッチングパルス電圧信号VPOST2と教師信号Vとの時間差に応じた誤差電圧信号Verrorが1つに重ね合わせられ、和算電圧信号Vsamとして出力される。
これにより、出力層4に含まれるニューラルネットワーク回路素子40に対しては、対応する出力信号Voutと教師信号Vとの誤差に基づいて当該誤差を小さくするように荷重を変更することができる。さらに、中間層3に含まれるニューラルネットワーク回路素子40に対しては、生成された誤差電圧信号Verrorを和算した和算電圧信号Vsamに基づいて荷重を変更することができる。これにより、出力層4に含まれるニューラルネットワーク回路素子40だけでなく、すべてのニューラルネットワーク回路素子40に対してエラーバックプロパゲーション学習を実現することができる。
[バックプロパゲーション学習]
以下、ニューラルネットワーク回路1を用いたバックプロパゲーション学習の態様についてより詳細に説明する。
まず、1つのパターンについて学習する場合について説明する。エラーバックプロパゲーション学習を行うために、入力信号端子6に図3Aに示すような所定の入力信号Vinを入力し、教師信号端子7に所望の出力信号Voutに応じた図3Bに示すような教師信号Vを入力する。後述するように、1つのパターンにつき2回の入力を行う(以下、1回目の入力を第1ステップ、2回目の入力を第2ステップと呼ぶ)。
ここで、各信号の情報は、パルスの入力タイミングによって表現される。例えば、“0”を入力する場合には時刻t=0msにパルス電圧を入力し、“1”を入力する場合には時刻t=1msにパルス電圧を入力する。ここで、入力タイミングは、図3Aおよび図3Bに示した時刻tin,tのような、パルス波形における時間的な中間点として定義される。
また、出力層4に含まれるニューラルネットワーク回路素子40の出力端子53から出力されるスイッチングパルス電圧信号VPOST2は、ニューラルネットワーク回路1の出力信号Voutとして出力される。出力信号Voutは、入力信号Vinと同様に、出力されるタイミングが出力情報となる。例えば、“0”を出力する場合、時刻t=10msにスイッチングパルス電圧信号VPOST2を出力し、“1”を出力する場合、時刻t=11msにスイッチングパルス電圧VPOST2を出力する。
本実施形態における学習方法では、第1ステップとして、出力層4に含まれるニューラルネットワーク回路素子40のニューロン回路30から出力される荷重変更パルス電圧信号VPOST1の振幅を、誤差電圧信号Verrorに基づいて変更した後、第2ステップとして、中間層3に含まれるニューラルネットワーク回路素子40のニューロン回路30から出力される荷重変更パルス電圧信号VPOST1の振幅を、誤差電圧信号Verrorに基づいて変更する。
具体的には、第1ステップは、中間層3に含まれるニューラルネットワーク回路素子40のシナプス回路20に荷重変更パルス電圧信号の代わりに電位が基準電位(例えばグランド電圧)に等しい信号を入力させることにより、中間層3に含まれるニューラルネットワーク回路素子40の抵抗変化素子10の抵抗値を変化させないようにした状態で、出力層4に含まれるニューラルネットワーク回路素子40の抵抗変化素子10の抵抗値を変化させる。第2ステップは、中間層3に含まれるニューラルネットワーク回路素子40のシナプス回路20に当該シナプス回路20が含まれるニューラルネットワーク回路素子40のニューロン回路30で生成された第1波形を有する荷重変更パルス電圧信号VPOST1を入力させることによって、中間層3に含まれるニューラルネットワーク回路素子40の抵抗変化素子10の抵抗値を変化させる。このような第1ステップおよび第2ステップを含む学習を、教師信号Vと対応する出力信号Voutとの時間差が規定値以下になるまで繰り返し実行する。
上記方法によれば、まず、出力層4に含まれるニューラルネットワーク回路素子40に対してエラーバックプロパゲーション学習に基づいた荷重の変更を行う。その後、中間層3に含まれるニューラルネットワーク回路素子40に対してエラーバックプロパゲーション学習に基づいた荷重の変更を行う。このため、各ニューラルネットワーク回路素子40のシナプス回路20に対して効率的に誤差が小さくなるように荷重を変更することが可能となる。したがって、エラーバックプロパゲーション学習を適切に実現することができる。
以下、各ステップについてより詳しく説明する。
[第1ステップ]
前述したように、中間層3に含まれるニューラルネットワーク回路素子40の第1入力端子51には、スイッチングパルス電圧信号VPREが、入力信号端子6から入力信号Vinとして入力される。したがって、入力信号VinがHI状態となる所定の時間幅において、第1スイッチ21および第2スイッチ22は閉状態となる。第2スイッチ22が閉状態となることにより、直流電圧源23と抵抗変化素子10の第1端子13とが接続され、抵抗変化素子10の第1端子13および第2端子14間に第1基準電圧Vが印加される。
ここで、第1ステップにおいて、中間層3に含まれるニューラルネットワーク回路素子40のシナプス回路20には、図5Aに示すような第1波形を有する荷重変更パルス電圧信号VPOST1の代わりに電位が基準電位(例えばグランド電圧)に等しい信号が入力される。具体的には、例えば中間層3に含まれるニューラルネットワーク回路素子40のニューロン回路30は、第1ステップにおいて、第1出力端子47から常に基準電位を出力するように構成される。このためには、例えば波形発生回路33のデジタルメモリ331が第1ステップの場合に基準電位を出力し、第2ステップの場合に第1波形を出力するように構成される。第1ステップおよび第2ステップの何れであるかを判定する構成は、例えば、波形発生回路33に、第1ステップおよび第2ステップの何れであるかを識別する信号を入力する構成としてもよい(例えば、波形発生回路33に接続された識別信号入力端子を入力層2に設けて、本ニューラルネットワーク回路の使用者が、第1ステップおよび第2ステップの何れであるかを判定するための識別信号を識別信号端子に入力してもよい。)し、波形発生回路33が所定の開始時からスイッチングパルス電圧VPREがシナプス回路20に何回入力されたかを記憶可能なメモリを備え、その回数に応じて第1ステップおよび第2ステップの何れかを判定する構成としてもよい。
このように、第1スイッチ21および第2スイッチ22が閉状態となっても抵抗変化素子10の第3端子15には抵抗変化素子10の抵抗変化を生じさせる電圧は印加されない(HI状態にならない)。したがって、中間層3に含まれるニューラルネットワーク回路素子40の抵抗変化素子10は、抵抗値が変化しない。つまり、第1ステップにおいて、中間層3に含まれるニューラルネットワーク回路素子40のニューロン回路30では学習動作は起こらない。したがって、抵抗変化素子10の現時点における抵抗値に応じたタイミングでスイッチングパルス電圧VPOST2が生成され、出力層4のニューラルネットワーク回路素子40へ送られる。
出力層4に含まれるニューラルネットワーク回路素子40の第1入力端子51には、中間層3のニューラルネットワーク回路40から出力されたスイッチングパルス電圧VPOST2が入力される。さらに、第1ステップにおいて、出力層4に含まれるニューラルネットワーク回路素子40のシナプス回路20には、図5Aに示すような第1波形を有する荷重変更パルス電圧信号VPOST1がフィードバック入力される。したがって、第1ステップにおける出力層4に含まれるニューラルネットワーク回路素子40では、荷重変更パルス電圧信号VPOST1に基づいて抵抗変化素子10の抵抗値が変化する。
さらに、出力層4に含まれるニューラルネットワーク回路素子40から出力されるスイッチングパルス電圧信号VPOST2(出力信号Vout)は、誤差演算回路5における時間差演算回路90の第1入力端子93にも入力される。時間差演算回路90は、出力信号Voutと教師信号Vとの時間差に応じた振幅(極性および大きさ)を有する誤差電圧信号Verrorを出力する。
誤差電圧信号Verrorは、出力層4のニューラルネットワーク回路素子40の第2入力端子52にフィードバック入力される。第2入力端子52に入力された誤差電圧信号Verrorは、波形発生回路30のアナログ乗算器333の乗算係数となり、第2波形に乗算される。この結果、出力層4のニューラルネットワーク回路素子40のニューロン回路30で生成される荷重変更パルス電圧信号VPOST1は、誤差電圧信号Verrorの振幅に比例した大きさの振幅を有する信号となる。
前述したように、ニューロン回路30の波形発生回路33は、スイッチングパルス電圧信号VPOST2と同じタイミングで荷重変更パルス電圧信号VPOST1を生成する。誤差電圧信号Verrorの入力タイミングは、スイッチングパルス電圧VPREのパルス幅よりも十分に短時間であるため、電圧誤差信号Verrorのフィードバック入力が反映された荷重変更パルス電圧信号VPOST1がスイッチングパルス電圧信号VPOST2と同じタイミングで出力されるとみなすことができる。
上記のように、出力層4に含まれるニューラルネットワーク回路素子40においては、出力信号Voutと教師信号Vとの時間差に応じた振幅を有する荷重変更パルス電圧信号VPOST1と、スイッチングパルス電圧信号VPREとの時間差に基づいて抵抗変化素子10の抵抗値が変化することにより、学習動作が行われる。すなわち、出力層4に含まれるニューラルネットワーク回路素子40の学習動作において、対応する出力信号Voutと教師信号Vとの誤差が反映される。
なお、第1ステップにおいて出力層4に含まれるニューラルネットワーク回路素子40から出力されたスイッチングパルス電圧信号VPOST2(出力信号Vout)に基づいて各時間差演算回路90で生成された誤差電圧信号Verrorは、和算回路80にも入力される。和算回路80は、入力されたすべての誤差電圧信号Verrorを和算して和算電圧信号Vsamを生成する。和算電圧信号Vsamは第2ステップで利用される。
[第2ステップ]
次に、第2ステップとして、再び同じパターンの入力信号Vinが各入力信号端子6に入力され、入力信号Vinに対応する教師信号Vが各教師信号端子7に入力される。
ここで、第2ステップにおいて、中間層3に含まれるニューラルネットワーク回路素子40のシナプス回路20には、当該シナプス回路が含まれるニューラルネットワーク回路素子40のニューロン回路30で生成された図5Aに示すような第1波形を有する荷重変更パルス電圧信号VPOST1が入力される。したがって、第2ステップにおける中間層3に含まれるニューラルネットワーク回路素子40では、荷重変更パルス電圧信号VPOST1に基づいて抵抗変化素子10の抵抗値が変化する。
前述したように第1ステップにおいて、和算回路80は、出力層4に含まれるニューラルネットワーク回路素子40から出力されたスイッチングパルス電圧信号VPOST2(出力信号Vout)に基づいて各時間差演算回路90で生成されたすべての誤差電圧信号Verrorを和算した和算電圧信号Vsamを生成し、中間層3に含まれるニューラルネットワーク回路素子40の第2入力端子52にフィードバック入力される。第2入力端子52に入力された誤差電圧信号Verrorは、波形発生回路30のアナログ乗算器333の乗算係数となり、第2波形に乗算される。この結果、中間層3のニューラルネットワーク回路素子40のニューロン回路30で生成される荷重変更パルス電圧信号VPOST1は、和算電圧信号Vsamの振幅に比例した大きさの振幅を有する信号となる。
したがって、第2ステップにおいて、中間層3に含まれるニューラルネットワーク回路素子40においては、第1ステップにおいて生じた出力信号Voutと教師信号Vとの時間差の総和に応じた振幅を有する荷重変更パルス電圧信号VPOST1と、スイッチングパルス電圧信号VPREとの時間差に基づいて抵抗変化素子10の抵抗値が変化することにより、学習動作が行われる。すなわち、中間層3に含まれるニューラルネットワーク回路素子40の学習動作においても、対応する出力信号Voutと教師信号Vとの誤差が反映される。これにより、ニューラルネットワーク回路1を構成するすべてのニューラルネットワーク回路素子40において、出力信号Voutと教師信号Vとの誤差が少なくなるように、各ニューラルネットワーク回路素子40のシナプス回路20において、当該シナプス回路20の出力信号Voutへの寄与度に応じた荷重の変更を適切に行うことができる。
なお、第2ステップにおいて、出力層4に含まれるニューラルネットワーク回路素子40は、学習動作を行わないこととしてもよい。この場合、第2ステップにおいて、出力層4に含まれるニューラルネットワーク回路素子40のシナプス回路20には、図5Aに示すような第1波形を有する荷重変更パルス電圧信号VPOST1の代わりに電位が基準電位(例えばグランド電圧)に等しい信号が入力される。これに代えて、出力層4に含まれるニューラルネットワーク回路素子40は、第1および第2ステップの何れにおいても学習動作を行うこととしてもよい。
以上のように、入力信号Vinおよび教師信号Vの1回目の入力が行われる第1ステップにおいては、出力層4において学習動作が実行され、2回目の入力が行われる第2ステップにおいては、中間層3において学習動作が実行される。これにより、出力信号端子8に近い層から遠い層へ学習動作が行われることによるエラーバックプロパゲーション学習が実現できる。
1つのパターンについて学習動作を実行する場合には、第1ステップおよび第2ステップを含む1回の学習を、教師信号Vと対応する出力信号Voutとの時間差が規定値以下になるまで繰り返し実行する。複数の異なるパターンについて学習動作を実行する場合には、第1のパターンについて第1ステップおよび第2ステップの学習を行った後、第2のパターンについて第1ステップおよび第2ステップの学習を行うといったように、パターンを変えて第1ステップおよび第2ステップの学習を行う。このようにして、第1ステップおよび第2ステップの学習をパターンの数だけ繰り返す動作が1回の学習動作となる。この1回の学習動作を、各パターンにおける教師信号Vと対応する出力信号Voutとの時間差が規定値以下になるまで繰り返し実行する。
[実施例]
以下、実施例について説明する。
[シナプス回路の評価]
まず、第1実施例として、抵抗変化素子10として図7Aを用いて説明した強誘電体メモリスタを用いた検証用シナプス回路20Aを構成し、図9に示したスイッチング動作が実際に実現できるかを検証した。
図12は本開示の第1実施例における検証用シナプス回路の構成例を示すブロック図である。図12に示す検証用シナプス回路20Aは、抵抗変化素子10として図7Aに示す強誘電体メモリスタが用いられている(図12において抵抗変化素子10が図7Bの回路記号で示されている)。さらに、検証用シナプス回路20Aは、図1に示すシナプス回路20に対してスイッチング動作を検証する以外の構成が省略されている。具体的には、検証用シナプス回路20Aは、図1に示す第2スイッチ22が省略されている。そのため、直流電圧源23が電流計39を介して抵抗変化素子10の第1端子13に接続されている。また、検証用シナプス回路20Aの出力端子43は接地されている。また、第1スイッチ21としては、図8に示す構成が用いられている。直流電圧源23の第1基準電圧Vは例えば0.1Vである。
前述したように、第1スイッチ21は、スイッチングパルス電圧信号VPREがHI状態の期間(入力許容期間)において、荷重変更パルス電圧信号VPOST1が抵抗変化素子10の制御電極73に印加され、それ以外の期間は抵抗変化素子10の制御電極73が接地されるような動作を行う。
本検証においては、図5Aに示す荷重変更パルス電圧信号VPOST1および図5Bに示すスイッチングパルス電圧信号VPREを入力させる。なお、本検証において用いられる荷重変更パルス電圧信号VPOST1の周期は32msである(ある電圧0の時点から電圧が最大となる時点までの期間が7msであり、電圧が最大となる時点から次の電圧0の時点までの期間が25msである)。本検証においては、荷重変更パルス電圧信号VPOST1の電圧の最大値VMAXが1.0Vおよび0.5Vとなる2つ荷重変更パルス電圧信号VPOST1を用いて、誤差電圧信号Verrorに応じて荷重変更パルス電圧信号VPOST1の振幅が変化した場合の影響を検証した。また、本検証において用いられるスイッチングパルス電圧信号VPREのパルス幅は1msであり、正の電圧および負の電圧の最大値はそれぞれ5Vである。このような波形を用いて、印加する荷重変更パルス電圧信号VPOST1およびスイッチングパルス電圧信号VPREのタイミングを変えながら、荷重変更パルス電圧信号VPOST1およびスイッチングパルス電圧信号VPREを印加する前後の導電率(電流計39で得られる電流値)の測定を行った。
図13は図12に示す検証用シナプス回路を用いた検証結果を示すグラフである。図13は、図12に示す検証用シナプス回路20Aから得られた荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとの時間差に対する抵抗変化素子1の導電率の変化量を示している。図13には、電圧の最大値VMAXが0.5Vである荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとの時間差に応じたパルス電圧をVpulse1で表し、電圧の最大値VMAXが1.0Vである荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとの時間差に応じたパルス電圧をVpulse2で表している。
図13に示すように、抵抗変化素子10として強誘電体メモリスタを用いることにより、荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとの入力タイミング差に応じて抵抗変化素子10のコンダクタンスを変化させるパルス電圧Vpulse1,Vpulse2が得られた。さらに、荷重変更パルス電圧信号VPOST1の振幅が変わることにより、同じ時間差でもコンダクタンスを変化させる量が異なるパルス電圧Vpulse1,Vpulse2が得られた。これにより、荷重変更パルス電圧信号VPOST1とスイッチングパルス電圧信号VPREとの入力タイミング差および誤差演算回路5からフィードバック入力される誤差電圧信号Verrorによって変化する荷重変更パルス電圧信号VPOST1の振幅に応じて学習動作を適切に実現できることが示された。
[エラーバックプロパゲーション学習の評価]
次に、第2実施例として、抵抗変化素子10として図7Aを用いて説明した強誘電体メモリスタを用いた検証用シナプス回路29Bを複数接続したニューラルネットワーク回路において、エラーバックプロパゲーション学習動作が実際に実現できるかを検証した。
図14Aは本開示の第2実施例における検証用シナプス回路の構成例を示すブロック図である。図14Bは図14Aに示す検証用シナプス回路を用いた検証用ニューラルネットワークの構成例を示すブロック図である。図14Cは図14Bに示す検証用ニューラルネットワーク回路素子を用いた検証用ニューラルネットワーク回路の構成例を示すブロック図である。
図14Bにおいては、図示の容易化のために、1つのニューラルネットワーク回路素子40Bに、1つのスイッチングパルス電圧信号VPREのみが入力されるように示されているが、図14Cに示すように複数のスイッチングパルス電圧信号VPREが各ニューラルネットワーク回路素子40Bに入力され得る構成とした。
本実施例において、ニューラルネットワーク回路素子40Bには、遅延回路29における遅延時間が異なる16個のシナプス回路20Bが設けられる。各シナプス回路20Bにおける遅延回路29の遅延時間は、1,2,3,…,16msである。図14Bにおいては、図示の容易化のために、ニューロン回路30からシナプス回路20Bへフィードバック入力される荷重変更パルス電圧信号VPOST1の配線は省略している。ニューロン回路30の積分回路31には、図4に示すような回路を用いた。抵抗素子37の抵抗値は500kΩ、キャパシタ36の容量値は1nFとした。比較回路32のしきい値VTHは5.0Vとした。
ニューラルネットワーク回路1Bの入力層2Bは、3つの入力信号端子6BA,6BB,6BCおよび1つの教師信号端子7Bを有する。入力信号端子6BA,6BB,6BCには、それぞれ入力信号Vin ,Vin ,Vin が入力される。教師信号端子7Bには、教師信号Vが入力される。中間層3Bは5個のニューラルネットワーク回路素子40Bを含み、出力層4Bは1個のニューラルネットワーク回路素子40Bを含む。
入力層2Bの入力信号端子6BA,6BB,6BCは、中間層3Bに含まれるすべてのニューラルネットワーク回路素子40Bの第1入力端子51に接続される。中間層3Bに含まれるニューラルネットワーク回路素子40Bの出力端子53は、出力層4Bのニューラルネットワーク回路素子40Bの第1入力端子51に接続される。出力層4Bのニューラルネットワーク回路素子40Bの出力端子53は、ニューラルネットワーク回路1Bの出力端子8Bに接続される。
本実施例においては、バックプロパゲーション学習の評価として、排他的論理和(XOR)の学習を行った。排他的論理和の学習はエラーバックプロパゲーション学習の学習性能を評価する際に、一般的に用いられる学習パターンである。排他的論理和の2つの入力と1つの出力の組み合わせで得られる4パターンを表1に示す。
Figure 0006501146
上述の通り、スパイキングニューロンモデルでは情報をパルスタイミングで表現する。したがって、本実施例では、入力および出力における「0」および「1」を、以下の表2に示すようなパルスの入力時間および出力時間として表現する。なお、入力信号Vinの入力時間をtin、教師信号Vの入力時間をtとして示す。
Figure 0006501146
上述のように入力1に対応する入力信号をVin とし、入力2に対応する入力信号をVin とし、入力信号Vin は常に「1」を示す信号を入力することとした。
入力信号Vinには、パルス幅が7msの矩形パルスを用いた。矩形パルスの最大値を+5Vとし、最小値を−5Vとした。ニューロン回路30が出力する荷重変更パルス電圧信号VPOST1には、図5Bに示すような三角パルス状の第1波形を用いた。荷重変更パルス電圧信号VPOST1の周期を32msとした(ある電圧0の時刻から電圧が最大となる時刻までの期間を7msとし、電圧が最大となる時刻から次の電圧0の時刻までの期間を25msとした)。本検証においても、荷重変更パルス電圧信号VPOST1の電圧の最大値VMAXが1.0Vおよび0.5Vとなる2つ荷重変更パルス電圧信号VPOST1を用いた。ニューロン回路30が出力するスイッチングパルスVPOST2には、図5Aに示すような矩形パルスを用いた。スイッチングパルスVPOST2のパルス幅は1msとし、電圧の最大値を+5Vとし、最小値を−5Vとした。
図15は図14Cに示すニューラルネットワーク回路において排他的論理和の学習を行った際の学習経過に伴う誤差の変化を示すグラフである。図15に示す誤差は、出力信号Voutと教師信号Vとの時間差の2乗の1/2として計算される。図15に示されるように、最終的に4つのパターンの誤差が何れも0.001ms以下になっており、学習が成功していることが示されている。誤差が0.001ms以下であることは、出力信号Voutと教師信号Vとの時間差が0.7%以下であることを意味する。
上記説明から、当業者にとっては、本開示の多くの改良や他の実施形態が明らかである。従って、上記説明は、例示としてのみ解釈されるべきであり、本開示を実行する最良の態様を当業者に教示するため提供されたものである。本開示の精神を逸脱することなく、その構造および/または機能の詳細を実質的に変更できる。
例えば、上記実施形態においてはニューロン回路30および誤差演算回路5をアナログ回路として構成する例について説明したが、これに限られず、これらをデジタル回路として構成してもよい。
本開示は、ニューラルネットワーク回路およびその学習方法において、エラーバックプロパゲーション学習動作を適切に行うために有用である。
1 ニューラルネットワーク回路
3 中間層
4 出力層
5 誤差演算回路
6,6A,6B,… 入力信号端子
7,7a,7b,… 教師信号端子
8,8a,8b,… 出力信号端子
10 抵抗変化素子
13 第1端子
14 第2端子
15 第3端子
20 シナプス回路
21 第1スイッチ
22 第2スイッチ
23 第1基準電圧源
30 ニューロン回路
31 積分回路
33 波形発生回路
40 ニューラルネットワーク回路素子
71 強誘電体層
72 基板
73 制御電極
74 半導体層
75 第1電極
76 第2電極
80 和算回路
90 時間差演算回路

Claims (13)

  1. 複数のニューラルネットワーク回路素子と、
    誤差演算回路と、
    少なくとも1つの入力信号端子と、
    少なくとも1つの出力信号端子と、を備え、
    前記少なくとも1つの入力信号端子に入力される入力信号から前記少なくとも1つの出力信号端子から出力される少なくとも1つの出力信号を得るためのニューラルネットワーク回路であって、
    前記誤差演算回路は、前記少なくとも1つの出力信号と、前記少なくとも1つの出力信号端子の数と等しい数の教師信号と、が入力され、前記出力信号と、前記出力信号に対応する前記教師信号との時間差に応じた大きさの電圧信号である誤差電圧信号を生成するよう構成され、
    前記ニューラルネットワーク回路素子は、少なくとも1つのシナプス回路と、1つのニューロン回路と、を備え、
    前記シナプス回路は、パルス電圧の印加により抵抗値が変化する抵抗変化素子を備え、
    前記ニューロン回路は、時間の経過とともに基準値から所定のピーク値に至り、前記ピーク値から再び前記基準値へ戻るような所定の第1波形を有する荷重変更パルス電圧信号と、所定の時間幅を定める所定の第2波形を有するスイッチングパルス電圧信号と、を生成する波形発生回路を備え、
    前記荷重変更パルス電圧信号は、当該荷重変更パルス電圧信号を出力した前記ニューロン回路が含まれる前記ニューラルネットワーク回路素子の前記シナプス回路に入力され、
    前記スイッチングパルス電圧信号は、当該スイッチングパルス電圧信号を出力した前記ニューロン回路が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子の前記シナプス回路に入力され、
    前記ニューラルネットワーク回路素子は、前記誤差演算回路で生成された前記誤差電圧信号に基づいて前記荷重変更パルス電圧信号の振幅を変更するよう構成され、
    前記シナプス回路は、当該シナプス回路が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力されたスイッチングパルス電圧信号における前記所定の時間幅を有する期間、当該スイッチングパルス電圧信号と前記シナプス回路が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記荷重変更パルス電圧信号との時間差に応じた電圧によって当該シナプス回路における前記抵抗変化素子の抵抗値を変化させるよう構成される、ニューラルネットワーク回路。
  2. 前記教師信号は、前記出力信号との時間差が0である場合に基準電位となり、前記出力信号との時間差が所定の範囲内である場合に前記基準電位を中心電位として双極性に前記時間差が大きくなるほど前記中心電位との電位差が大きくなり、前記時間差が前記所定の範囲外である場合に振幅が前記所定の範囲内における電位差の最大値が保持されるような信号である、請求項1に記載のニューラルネットワーク回路。
  3. 前記誤差演算回路は、前記出力信号端子と同じ数の時間差演算回路と、1つの和算回路と、を備え、
    前記時間差演算回路は、それぞれ、対応する前記出力信号端子から出力される前記出力信号と、当該出力信号に対応する前記教師信号との時間差に応じた前記誤差電圧信号を生成し、前記誤差電圧信号を、出力される信号が前記出力信号端子から出力される前記出力信号となる前記ニューラルネットワーク回路素子に含まれる前記ニューロン回路に入力し、
    前記和算回路は、前記時間差演算回路のそれぞれにおいて生成された前記誤差電圧信号を和算した和算電圧信号を生成し、前記和算電圧信号を、出力される信号が前記出力信号端子から出力される前記出力信号ではない前記ニューラルネットワーク回路素子に含まれる前記ニューロン回路に入力するよう構成される、請求項1または2に記載のニューラルネットワーク回路。
  4. 前記抵抗変化素子は、
    第1端子、第2端子、および第3端子を具備し、
    前記第1端子と前記第2端子との間には、前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力された前記スイッチングパルス電圧信号に基づいた定電圧が印加され、
    前記第1端子と前記第3端子との間には、前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力されたスイッチングパルス電圧信号における前記所定の時間幅を有する期間、当該スイッチングパルス電圧信号と前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記荷重変更パルス電圧信号との時間差に応じた電圧が印加され、
    前記第1端子と前記第3端子との間の電位差に応じて前記第1端子と前記第2端子との間の抵抗値が変化する、請求項1から3の何れかに記載のニューラルネットワーク回路。
  5. 前記シナプス回路は、前記抵抗変化素子の前記第3端子と前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記荷重変更パルス電圧信号が入力される端子との間の接続または遮断を切り替える第1スイッチを備え、
    前記第1スイッチは、前記抵抗変化素子が含まれる前記ニューラルネットワーク回路素子とは別の前記ニューラルネットワーク回路素子から入力された前記スイッチングパルス電圧信号に基づいて前記接続または遮断を切り替える、請求項4に記載のニューラルネットワーク回路。
  6. 前記抵抗変化素子は、強誘電体メモリスタである、請求項4または5に記載のニューラルネットワーク回路。
  7. 前記強誘電体メモリスタは、
    基板上に形成された制御電極と、前記制御電極が当接するように設けられる強誘電体層と、強誘電体層上に形成された半導体層と、半導体層上に設けられた第1電極および第2電極とを備え、
    前記第1電極と前記制御電極との間の電位差に応じて前記第1電極と前記第2電極との間の抵抗値が変化する、請求項6に記載のニューラルネットワーク回路。
  8. 前記ニューロン回路は、
    前記シナプス回路の前記抵抗変化素子を流れる電流値を積分する積分回路と、
    前記積分回路で積分された電流値に応じて、前記第1波形および前記第2波形を生成する波形発生回路と、を備え、
    前記波形発生回路は、前記第1波形の大きさに前記誤差電圧信号の大きさを乗算する乗算回路を備える、請求項1から7の何れかに記載のニューラルネットワーク回路。
  9. 前記シナプス回路は、一端が第1基準電圧源に接続され、他端が前記抵抗変化素子の前記第1端子に接続される第2スイッチを備え、
    前記第2スイッチは、前記別のニューラルネットワーク回路素子から入力される前記スイッチングパルス電圧信号における前記所定の時間幅を有する期間、前記第1基準電圧源と前記第1端子とを接続するように構成される、請求項から7の何れかに記載のニューラルネットワーク回路。
  10. 請求項1〜9の何れかに記載のニューラルネットワーク回路の学習方法であって、
    出力される信号が前記出力信号端子から出力される前記出力信号となる前記ニューラルネットワーク回路素子である第1のニューラルネットワーク回路素子の前記ニューロン回路から出力される前記荷重変更パルス電圧信号の振幅を、前記誤差電圧信号に基づいて変更した後、出力される信号が前記出力信号端子から出力される前記出力信号ではない前記ニューラルネットワーク回路素子である第2のニューラルネットワーク回路素子の前記ニューロン回路から出力される前記荷重変更パルス電圧信号の振幅を、前記誤差電圧信号に基づいて変更する、ニューラルネットワーク回路の学習方法。
  11. 前記第2のニューラルネットワーク回路素子の前記シナプス回路に前記荷重変更パルス電圧信号の代わりに電位が基準電位に等しい信号を入力させることにより、前記第2のニューラルネットワーク回路素子の前記抵抗変化素子の抵抗値を変化させないようにした状態で、前記第1のニューラルネットワーク回路素子の抵抗変化素子の抵抗値を変化させる、第1ステップと、
    前記第2のニューラルネットワーク回路素子の前記シナプス回路に当該シナプス回路が含まれる前記ニューラルネットワーク回路素子の前記ニューロン回路で生成された前記第1波形を有する前記荷重変更パルス電圧信号を生成させることによって、前記第2のニューラルネットワーク回路素子の前記抵抗変化素子の抵抗値を変化させる、第2ステップと、を含み、
    前記教師信号と対応する前記出力信号との時間差が規定値以下になるまで前記第1ステップおよび前記第2ステップの処理を繰り返し実行する、請求項10に記載のニューラルネットワーク回路の学習方法。
  12. ニューラルネットワーク回路であって、
    出力信号と教師信号が入力され、前記出力信号と前記教師信号の時間差に応じた電圧値を有する誤差信号を生成する誤算演算回路と、
    前記ニューラルネットワーク回路の中間層に含まれる第1の1以上のニューラルネットワーク回路素子と、
    前記ニューラルネットワーク回路の出力層に含まれる第2の1以上のニューラルネットワーク回路素子を含み、前記出力層は前記出力信号を出力し、
    前記第1の1以上のニューラルネットワーク回路素子の各々は第1の1以上のシナプス回路と第1ニューロン回路を含み、
    前記第2の1以上のニューラルネットワーク回路素子の各々は第2の1以上のシナプス回路と第2ニューロン回路を含み、
    前記第1の1以上のシナプス回路、前記第2の1以上のシナプス回路の各々は、印加されるパルス電圧の電圧値により抵抗値が変化する抵抗変化素子を備え、
    前記第1ニューロン回路、前記第2ニューロン回路の各々は、時間の経過とともに基準値からピーク値に至り、前記ピーク値から再び前記基準値へ戻る波形を有する荷重変更パルス電圧信号と、スイッチングパルス電圧信号とを生成する波形発生回路を備え、
    前記第1ニューロン回路で発生された前記荷重変更パルス電圧信号である第1荷重変更パルス電圧信号は、前記第1の1以上のシナプス回路の各々に入力され、
    前記第2ニューロン回路で発生された前記荷重変更パルス電圧信号である第2荷重変更パルス電圧信号は、前記第2の1以上のシナプス回路の各々に入力され、
    前記第1ニューロン回路で発生された前記スイッチングパルス電圧信号である第1スイッチングパルス信号は、前記第2の1以上のシナプス回路の各々に入力され、
    前記第1荷重変更パルス電圧信号の振幅及び、前記第2荷重変更パルス電圧信号の振幅は、前記誤差信号に基づいて決定され、
    前記第1スイッチングパルス電圧信号で示される時間幅で示される期間と、前記第1スイッチングパルス電圧信号と前記第2荷重変更パルス電圧信号との時間差に応じた電圧に基づいて、前記第2の1以上のシナプス回路の各々に含まれる前記抵抗変化素子の抵抗値が変化される、ニューラルネットワーク回路。
  13. 前記第2ニューロン回路で発生された前記スイッチングパルス電圧信号は前記出力信号である請求項12のニューラルネットワーク回路。
JP2015042790A 2014-03-18 2015-03-04 ニューラルネットワーク回路およびその学習方法 Expired - Fee Related JP6501146B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015042790A JP6501146B2 (ja) 2014-03-18 2015-03-04 ニューラルネットワーク回路およびその学習方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014054563 2014-03-18
JP2014054563 2014-03-18
JP2015042790A JP6501146B2 (ja) 2014-03-18 2015-03-04 ニューラルネットワーク回路およびその学習方法

Publications (2)

Publication Number Publication Date
JP2015195011A JP2015195011A (ja) 2015-11-05
JP6501146B2 true JP6501146B2 (ja) 2019-04-17

Family

ID=54142456

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015042790A Expired - Fee Related JP6501146B2 (ja) 2014-03-18 2015-03-04 ニューラルネットワーク回路およびその学習方法

Country Status (2)

Country Link
US (1) US9792547B2 (ja)
JP (1) JP6501146B2 (ja)

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10332004B2 (en) * 2015-07-13 2019-06-25 Denso Corporation Memristive neuromorphic circuit and method for training the memristive neuromorphic circuit
US10748064B2 (en) * 2015-08-27 2020-08-18 International Business Machines Corporation Deep neural network training with native devices
US10650308B2 (en) * 2015-09-23 2020-05-12 Politecnico Di Milano Electronic neuromorphic system, synaptic circuit with resistive switching memory and method of performing spike-timing dependent plasticity
US10839292B2 (en) * 2016-06-29 2020-11-17 International Business Machines Corporation Accelerated neural network training using a pipelined resistive processing unit architecture
CN109643514B (zh) * 2016-08-26 2023-04-04 株式会社半导体能源研究所 显示装置及电子设备
JP2018060268A (ja) * 2016-10-03 2018-04-12 株式会社日立製作所 認識装置および学習システム
US10090047B2 (en) * 2016-11-09 2018-10-02 International Business Machines Corporation Memory cell structure
CN106682732B (zh) * 2016-12-14 2019-03-29 浙江大学 一种应用于神经网络的高斯误差函数电路
US20180174030A1 (en) * 2016-12-15 2018-06-21 Fu-Chang Hsu Self-learning for neural network arrays
US11068777B2 (en) * 2017-02-06 2021-07-20 International Business Machines Corporation Voltage controlled highly linear resistive elements
US10997490B2 (en) * 2017-02-24 2021-05-04 International Business Machines Corporation Battery-based neural network weights
JP6708146B2 (ja) * 2017-03-03 2020-06-10 株式会社デンソー ニューラルネットワーク回路
JP6668282B2 (ja) * 2017-03-21 2020-03-18 キオクシア株式会社 半導体記憶装置
JP6794891B2 (ja) * 2017-03-22 2020-12-02 株式会社デンソー ニューラルネットワーク回路
US11544545B2 (en) 2017-04-04 2023-01-03 Hailo Technologies Ltd. Structured activation based sparsity in an artificial neural network
US11551028B2 (en) 2017-04-04 2023-01-10 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network
US11615297B2 (en) 2017-04-04 2023-03-28 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network compiler
US10387298B2 (en) 2017-04-04 2019-08-20 Hailo Technologies Ltd Artificial neural network incorporating emphasis and focus techniques
US11238334B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method of input alignment for efficient vector operations in an artificial neural network
US12430543B2 (en) 2017-04-04 2025-09-30 Hailo Technologies Ltd. Structured sparsity guided training in an artificial neural network
CN107016200B (zh) * 2017-04-14 2021-05-04 江西理工大学 一种基于磁控忆阻器的光滑细胞神经网络的电路设计方法
CN107122828B (zh) * 2017-05-09 2020-05-05 清华大学 电路结构及其驱动方法、神经网络
EP3631800A4 (en) * 2017-05-22 2021-04-07 University of Florida Research Foundation Deep learning in bipartite memristive networks
EP3652680B1 (en) * 2017-07-11 2025-09-03 Technion Research & Development Foundation Limited Reconfigurable dac implemented by memristor based neural network
US12198064B2 (en) 2017-08-22 2025-01-14 Syntiant Systems and methods for determining circuit-level effects on classifier accuracy
CN109842388B (zh) * 2017-11-24 2024-04-09 成都市深思创芯科技有限公司 一种基于神经网络的负反馈自动增益控制电路及方法
US11494619B2 (en) * 2017-11-30 2022-11-08 Taiwan Semiconductor Manufacturing Co., Ltd. Device and method for operating the same
US10374041B2 (en) * 2017-12-21 2019-08-06 International Business Machines Corporation Field effect transistor with controllable resistance
US11442695B2 (en) * 2017-12-28 2022-09-13 Tdk Corporation Product-sum operation device, neuromorphic device, and method for determining malfunction in product-sum operation device
US11797829B2 (en) * 2017-12-28 2023-10-24 Tdk Corporation Product-sum operation device, neuromorphic device, and method for using product-sum operation device
US11354562B2 (en) * 2018-01-03 2022-06-07 Silicon Storage Technology, Inc. Programmable neuron for analog non-volatile memory in deep learning artificial neural network
CN108416432B (zh) * 2018-01-19 2021-10-01 北京大学 电路和电路的工作方法
US11568221B2 (en) * 2018-03-09 2023-01-31 Arizona Board Of Regents On Behalf Of Northern Arizona University Artificial neuron synaptic weights implemented with variable dissolvable conductive paths
JP2019179499A (ja) 2018-03-30 2019-10-17 ソニー株式会社 半導体装置及び積和演算装置
KR102062666B1 (ko) * 2018-04-20 2020-02-11 서울대학교산학협력단 입력변조 적응형 뉴런 회로
US11515873B2 (en) 2018-06-29 2022-11-29 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and electronic device
TWI799588B (zh) * 2018-07-13 2023-04-21 日商索尼股份有限公司 積和運算裝置、積和運算電路、積和運算系統及積和運算方法
CN110751276A (zh) * 2018-07-24 2020-02-04 闪迪技术有限公司 在nand存储器阵列中实现具有三值输入和二值权重的神经网络
JP6926037B2 (ja) * 2018-07-26 2021-08-25 株式会社東芝 シナプス回路、演算装置およびニューラルネットワーク装置
CN110766130B (zh) * 2018-07-28 2022-06-14 华中科技大学 一种bp神经网络学习电路
CN110956250A (zh) * 2018-09-27 2020-04-03 常州星宇车灯股份有限公司 一种具有共存多吸引子的双忆阻Hopfield神经网络模型
CN109800870B (zh) * 2019-01-10 2020-09-18 华中科技大学 一种基于忆阻器的神经网络在线学习系统
RU2729878C2 (ru) * 2019-01-21 2020-08-13 Михаил Ефимович Мазуров Инструментальный способ обучения избирательной нейронной сети без математики и без учителя с использованием самоорганизации
WO2020153047A1 (ja) * 2019-01-24 2020-07-30 ソニーセミコンダクタソリューションズ株式会社 電圧制御装置
US12124945B2 (en) * 2019-01-28 2024-10-22 Institute of Microelectronics, Chinese Academy of Sciences Neural network operation device
CN109829540B (zh) * 2019-01-28 2021-05-28 中国科学院微电子研究所 神经网络运算系统
US11016840B2 (en) * 2019-01-30 2021-05-25 International Business Machines Corporation Low-overhead error prediction and preemption in deep neural network using apriori network statistics
JP6989552B2 (ja) * 2019-03-18 2022-01-05 株式会社東芝 ニューラルネットワーク装置
CN110188873B (zh) * 2019-07-08 2024-01-19 中国人民解放军陆军工程大学 前馈网络拓扑数模混合神经网络电路
KR102830275B1 (ko) * 2019-07-31 2025-07-04 삼성전자주식회사 강유전성 물질을 포함하는 반도체 소자, 이를 포함하는 뉴로모픽 회로 및 뉴로모픽 컴퓨팅 장치
CN110619905A (zh) * 2019-08-09 2019-12-27 上海集成电路研发中心有限公司 一种基于rram忆阻器单元的集合模块及其形成方法
TWI728556B (zh) 2019-11-18 2021-05-21 財團法人工業技術研究院 神經元電路及類神經網路晶片
CN110991635B (zh) * 2019-12-23 2023-05-05 北京大学 多模态突触时间依赖可塑性算法的电路及实现方法
CN111291877B (zh) * 2020-02-26 2022-05-20 北京大学 基于铁电晶体管FeFET的侧抑制神经元电路
WO2021171454A1 (ja) * 2020-02-27 2021-09-02 Tdk株式会社 演算回路、及びニューロモーフィックデバイス
JP6841393B1 (ja) * 2020-02-27 2021-03-10 Tdk株式会社 演算回路及びニューロモーフィックデバイス
JP7271463B2 (ja) * 2020-03-06 2023-05-11 株式会社東芝 シナプス回路およびニューラルネットワーク装置
US11237894B1 (en) 2020-09-29 2022-02-01 Hailo Technologies Ltd. Layer control unit instruction addressing safety mechanism in an artificial neural network processor
US12248367B2 (en) 2020-09-29 2025-03-11 Hailo Technologies Ltd. Software defined redundant allocation safety mechanism in an artificial neural network processor
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor
US11221929B1 (en) 2020-09-29 2022-01-11 Hailo Technologies Ltd. Data stream fault detection mechanism in an artificial neural network processor
US11874900B2 (en) 2020-09-29 2024-01-16 Hailo Technologies Ltd. Cluster interlayer safety mechanism in an artificial neural network processor
TW202546696A (zh) * 2020-10-30 2025-12-01 荷蘭商因納特拉納米系統有限公司 用於分佈式多組件突觸計算結構之尖峰神經網路及方法
CN112685958B (zh) * 2020-12-30 2022-11-01 西南交通大学 一种基于神经网络的SiC MOSFET阻断电压确定方法
FR3119696B1 (fr) * 2021-02-11 2024-02-09 Thales Sa Circuit neuromorphique et procede d'entraînement associé
WO2022201425A1 (ja) * 2021-03-25 2022-09-29 Tdk株式会社 情報処理装置、隠れノードの設定方法及び情報処理装置の製造方法
WO2022260413A1 (ko) * 2021-06-07 2022-12-15 건국대학교 산학협력단 펄스폭 기반 전류 영역 인-메모리 신경망 연산기의 천이 오차 교정 장치 및 방법
CN113850370A (zh) * 2021-09-09 2021-12-28 上海新氦类脑智能科技有限公司 数据处理方法及设备、处理芯片
US20230087612A1 (en) * 2021-09-22 2023-03-23 Arm Limited System, circuit, device and/or processes for neural network training
CN114118383B (zh) * 2021-12-09 2025-02-28 之江实验室 基于多突触可塑性脉冲神经网络快速记忆编码方法和装置
CN114897143B (zh) * 2022-02-20 2025-08-01 北京大学 神经元单元电路、脉冲神经网络及智能物联网芯片
US20230306245A1 (en) * 2022-03-24 2023-09-28 Taiwan Semiconductor Manufacturing Company, Ltd. Programming circuit, integrated circuit, and method
JP7821474B2 (ja) * 2022-05-25 2026-02-27 学校法人 龍谷大学 積和回路およびその積和回路を備えたニューラルネットワーク
CN115358375A (zh) * 2022-10-19 2022-11-18 之江实验室 一种脉冲神经网络储备池计算模型构建方法及装置
US20250005341A1 (en) * 2023-06-29 2025-01-02 Samsung Electronics Co., Ltd. Computing apparatus based on spiking neural network and operating method of computing apparatus
CN117648960B (zh) * 2024-01-30 2024-04-19 中国人民解放军国防科技大学 基于忆阻器的脉冲神经网络在线训练电路及方法
CN119783612A (zh) * 2024-11-27 2025-04-08 株洲嘉成科技发展股份有限公司 一种基于lstm神经网络的电机控制级联电路输出预测方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2595051B2 (ja) * 1988-07-01 1997-03-26 株式会社日立製作所 半導体集積回路
JPH0731705B2 (ja) * 1992-08-24 1995-04-10 東京工業大学長 自己学習型積和演算回路素子及び回路
JP3582737B2 (ja) * 1993-05-20 2004-10-27 株式会社リコー 信号処理装置
KR970007006B1 (ko) * 1993-08-31 1997-05-01 한국전자통신연구원 인공 신경 회로와 패턴 분리 및 인식용 발진 신경 망의 구조
JP3368774B2 (ja) * 1996-11-08 2003-01-20 ケイディーディーアイ株式会社 ニューラルネットワーク
US7085749B2 (en) * 2001-05-31 2006-08-01 Canon Kabushiki Kaisha Pulse signal circuit, parallel processing circuit, pattern recognition system, and image input system
US6844582B2 (en) * 2002-05-10 2005-01-18 Matsushita Electric Industrial Co., Ltd. Semiconductor device and learning method thereof
US20050016684A1 (en) 2003-07-25 2005-01-27 Applied Materials, Inc. Process kit for erosion resistance enhancement
JP5155843B2 (ja) * 2008-12-22 2013-03-06 シャープ株式会社 情報処理装置及びこれを用いたニューラルネットワーク回路
JP5528394B2 (ja) 2011-05-30 2014-06-25 パナソニック株式会社 プラズマ処理装置、搬送キャリア、及びプラズマ処理方法
JP5289647B1 (ja) 2012-01-23 2013-09-11 パナソニック株式会社 ニューラルネットワーク回路の学習方法

Also Published As

Publication number Publication date
US9792547B2 (en) 2017-10-17
JP2015195011A (ja) 2015-11-05
US20150269483A1 (en) 2015-09-24

Similar Documents

Publication Publication Date Title
JP6501146B2 (ja) ニューラルネットワーク回路およびその学習方法
JP5289646B1 (ja) ニューラルネットワーク回路の学習方法
JP5289647B1 (ja) ニューラルネットワーク回路の学習方法
JP5659361B1 (ja) ニューラルネットワーク回路、およびその学習方法
US9779355B1 (en) Back propagation gates and storage capacitor for neural networks
Wu et al. A CMOS spiking neuron for brain-inspired neural networks with resistive synapses and in situ learning
JP5155843B2 (ja) 情報処理装置及びこれを用いたニューラルネットワーク回路
CN109447250B (zh) 一种基于忆阻器中电池效应的人工神经元
Jang et al. ReRAM-based synaptic device for neuromorphic computing
JP2021507349A (ja) 抵抗処理ユニット・アレイのクロスポイント・デバイスに重みを記憶するための方法、そのクロスポイント・デバイス、ニューラル・ネットワークを実施するためのクロスポイント・アレイ、そのシステム、およびニューラル・ネットワークを実施するための方法
KR20140141778A (ko) Stdp 동작을 위한 시냅스 회로 및 시냅스 회로를 포함하는 뉴로모픽 시스템
Kumar et al. Y 2 O 3-based crossbar array for analog and neuromorphic computation
US20170243108A1 (en) Current Mirror Scheme for An Integrating Neuron Circuit
Mushgil et al. Comparison between resilient and standard back propagation algorithms efficiency in pattern recognition
Jung et al. Pattern classification of back-propagation algorithm using exclusive connecting network
Ma et al. Simulation of In-situ training in spike neural network based on non-ideal memristors
Bobylev et al. Manufacture and testing of a pulsed hardware neural network with memristor synapses for a biomorphic neuroprocessor
KR102215067B1 (ko) Stdp 학습 하드웨어
Vincan et al. All-memristive spiking neural network circuit simulator
Vu et al. Spiking Neural Networks with Nonidealities from Memristive Silicon Oxide Devices
Maskeen et al. HZO based FeFET with Sub 2-nm EOT Gate Stack as Synapse for Spiking Neural Network
Vo Multilayer Neural Network with Synapse Based on Two Successive Memristors
Soures et al. Enabling on-device learning with deep spiking neural networks for speech recognition
Chen et al. Weight Discretized BP Algorithm Based on Synapse Transistor with Symmetric/Asymmetric Memory Curve
JP2021082130A (ja) 電子回路、ニューラルネットワーク及びニューラルネットワークの学習方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180927

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: 20190305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190307

R151 Written notification of patent or utility model registration

Ref document number: 6501146

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees