JP2018116420A - Perturbation learning device and method thereof - Google Patents
Perturbation learning device and method thereof Download PDFInfo
- Publication number
- JP2018116420A JP2018116420A JP2017006062A JP2017006062A JP2018116420A JP 2018116420 A JP2018116420 A JP 2018116420A JP 2017006062 A JP2017006062 A JP 2017006062A JP 2017006062 A JP2017006062 A JP 2017006062A JP 2018116420 A JP2018116420 A JP 2018116420A
- Authority
- JP
- Japan
- Prior art keywords
- learning
- weight
- perturbation
- learning data
- data
- 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
Abstract
Description
本発明は、摂動学習の大規模な並列計算を高速に行う摂動学習装置とその方法に関する。 The present invention relates to a perturbation learning apparatus and method for performing large-scale parallel computation of perturbation learning at high speed.
摂動学習は、アナログ演算器用の学習アルゴリズムである。例えばニューラルネットワークのシナプス重み等の学習すべきパラメータを微少量変化させ、誤差関数に及ぼす影響をモニタすることで、パラメータの修正量を算出する方法である。 Perturbation learning is a learning algorithm for an analog computing unit. For example, a parameter correction amount is calculated by changing a parameter to be learned such as a synaptic weight of a neural network by a minute amount and monitoring an influence on an error function.
例えば非特許文献1に同時摂動最適化法が開示されている。また、例えば非特許文献2に多周波振動学習法が開示されている。
For example, Non-Patent
摂動学習を高速に行うためには、重み更新の並列処理が重要になる。非特許文献2に開示された方法では、信号を周波数多重することで並列処理を行う。しかし、帯域やクローストーク等の問題から周波数の多重数は数百が限界である。
In order to perform perturbation learning at high speed, parallel processing of weight update is important. In the method disclosed in
一方、ニューラルネットワークの摂動学習は、ニューロン同士を連結したシナプスの重みを更新することによって行われる。ニューラルネットワークを基本とした機械学習技術の一つであるディープラーニング(深層学習)では、学習データ数及びシナプス数が大規模化し、シナプス数が数億個を越える場合もある。 On the other hand, perturbation learning of a neural network is performed by updating the weight of a synapse that connects neurons. In deep learning, which is one of machine learning technologies based on neural networks, the number of learning data and the number of synapses is large, and the number of synapses may exceed several hundred million.
したがって、従来の周波数多重を用いた数百スケールの並列処理では十分な高速化が期待できないという課題がある。 Therefore, there is a problem that sufficient speedup cannot be expected in the parallel processing of several hundred scales using the conventional frequency multiplexing.
本発明は、この課題に鑑みてなされたものであり、重み学習を高速に処理できる摂動学習装置とその方法を提供することを目的とする。 The present invention has been made in view of this problem, and an object of the present invention is to provide a perturbation learning apparatus and method that can process weight learning at high speed.
本実施形態の一態様に係る摂動学習装置は、n個の要素から成る学習データを要素ごとに分岐した学習非対象データと、前記学習データの先頭からj個ずつm回に分けて要素ごとに分岐した学習対象データを出力する分岐部と、前記学習非対象データの前記要素ごとに、それぞれ対応する重み係数を乗じて重み学習データを計算する重み演算部と、前記学習対象データに対応する前記重み係数に、該重み係数を補正する摂動係数を加えた摂動重み係数を生成し、該摂動重み係数を、対応する前記学習対象データに乗じてj個の摂動重み学習データを計算する摂動重み演算部と、前記重み学習データのそれぞれをj+1個に分岐する第2分岐部と、j+1個に分岐された重み学習データの全てを合計した第1出力値と、j+1個の重み学習データの何れか1個を、該重み学習データに対応する前記摂動重み学習データに置き代えて他の全ての重み学習データと合計したj個の第2出力値とを計算する結合部と、j個設けられ、前記第1出力値と前記第2出力値からj個ごとに前記重み係数をそれぞれ更新する計算を、前記m回の単位で繰り返す学習部とを備えることを要旨とする。 The perturbation learning device according to an aspect of the present embodiment includes learning non-target data obtained by branching learning data composed of n elements for each element and j elements from the beginning of the learning data divided into m times for each element. A branch unit that outputs the branched learning target data, a weight calculation unit that calculates weight learning data by multiplying a corresponding weighting factor for each element of the learning non-target data, and the learning unit data corresponding to the learning target data A perturbation weight calculation that generates a perturbation weight coefficient by adding a perturbation coefficient that corrects the weight coefficient to the weight coefficient, and multiplies the corresponding learning object data by the perturbation weight coefficient. , A second branching unit for branching each of the weight learning data into j + 1 pieces, a first output value obtained by summing all of the j + 1 pieces of weight learning data, and j + 1 weight learning data. A combining unit that calculates j second output values that are totaled with all other weight learning data by replacing any one of the above with the perturbation weight learning data corresponding to the weight learning data; The gist is provided with a learning unit that is provided and repeats the calculation of updating the weighting coefficient for every j pieces from the first output value and the second output value in units of m times.
本実施形態の他の態様に係る摂動学習装置は、n個の波長を含む波長多重光を、j+1個の波長を含む多波長光と、該多波長光に含まれない波長の単波長光とに分岐し、前記多波長光にn個の学習データの先頭からj個ずつの前記学習データをm回に分けて付与した学習対象信号と、前記単波長光に対応する重みを付与した学習非対象信号とを生成する学習データ生成部と、前記学習対象信号を、波長の異なるj個の単波長光と、それ以外の波長を含むj個の多波長光とに2分岐する光分岐部と、j個の前記多波長光のそれぞれに、対応する重み係数を乗じて第1重み学習データを計算する第1重み演算部と、j個の前記単波長光のそれぞれに対応する重み係数に、該重み係数を補正する摂動係数を加えた摂動重み係数を生成し、該摂動重み係数を、対応する前記単波長光に乗じて摂動重み学習データを計算する摂動重み演算部と、前記学習非対象信号のそれぞれに、対応する重み係数を乗じて第2重み学習データを計算する第2重み演算部と、j個の前記第1重み学習データとj個の摂動重み学習データを入力とし、j個の前記第1重み学習データを全て結合した第1結合値と、j個の前記第1重み学習データの何れか1個を、該第1重み学習データに対応する前記摂動重み学習データに置き代えて他の全ての第1重み学習データと結合したj個の第2結合値とを出力する波長周回器と、前記第1結合値とn−j個の前記第2重み学習データを結合した第1出力値と、j個の前記第2結合値のそれぞれとn−j個の前記第2重み学習データを結合した第2出力値を生成する光結合器と、j個設けられ、前記第1出力値と前記第2出力値からj個ごとに前記重み係数をそれぞれ更新する計算を、前記m回の単位で繰り返す学習部とを備えることを要旨とする。 The perturbation learning device according to another aspect of the present embodiment includes wavelength multiplexed light including n wavelengths, multi-wavelength light including j + 1 wavelengths, and single-wavelength light having a wavelength not included in the multi-wavelength light. A learning target signal obtained by dividing the multi-wavelength light by j pieces of learning data from the beginning of n pieces of learning data and giving a weight corresponding to the single wavelength light. A learning data generation unit that generates a target signal; and an optical branching unit that splits the learning target signal into two pieces of j single-wavelength light having different wavelengths and j multi-wavelength light including other wavelengths; , A first weight calculator that calculates first weight learning data by multiplying each of the j multi-wavelength lights by a corresponding weight coefficient, and a weight coefficient corresponding to each of the j single-wavelength lights, Generating a perturbation weighting coefficient by adding a perturbation coefficient for correcting the weighting coefficient; A perturbation weight calculator that calculates the perturbation weight learning data by multiplying the corresponding single wavelength light by a number, and a second weight learning data that multiplies each of the learning non-target signals by a corresponding weight coefficient. A two-weight operation unit, j first weight learning data and j perturbation weight learning data as inputs, and a first combined value obtained by combining all the j first weight learning data; J second combination values in which any one of the first weight learning data is replaced with the perturbation weight learning data corresponding to the first weight learning data and combined with all the other first weight learning data; , A first output value obtained by combining the first combined value and nj second weight learning data, and each of the j second combined values and nj Optical coupling for generating a second output value by coupling the second weight learning data And j learning units that repeat the calculation for updating the weighting factor for each j from the first output value and the second output value in units of m times. .
本実施形態の一態様に係る摂動学習方法は、上記の摂動学習装置が行う摂動学習方法であって、分岐部が、n個の要素から成る学習データを要素ごとに分岐した学習非対象データと、前記学習データの先頭からj個ずつm回に分けて要素ごとに分岐した学習対象データを出力し、重み演算部が、前記学習非対象データの前記要素ごとに、それぞれ対応する重み係数を乗じて重み学習データを計算し、摂動重み演算部が、前記学習対象データに対応する前記重み係数に、該重み係数を補正する摂動係数を加えた摂動重み係数を生成し、該摂動重み係数を、対応する前記学習対象データに乗じてj個の摂動重み学習データを計算し、第2分岐部が、前記重み学習データのそれぞれをj+1個に分岐し、結合部が、j+1個に分岐された重み学習データの全てを合計した第1出力値と、j+1個の重み学習データの何れか1個を、該重み学習データに対応する前記摂動重み学習データに置き代えて他の全ての重み学習データと合計したj個の第2出力値とを計算し、j個設けられた学習部が、前記第1出力値と前記第2出力値からj個ごとに前記重み係数をそれぞれ更新する計算を、前記m回の単位で繰り返すことを要旨とする。 A perturbation learning method according to an aspect of the present embodiment is a perturbation learning method performed by the perturbation learning device, wherein the branching unit includes learning non-target data obtained by branching learning data including n elements for each element. , Output learning target data that is divided into m pieces j times from the beginning of the learning data, and the weight calculation unit multiplies the corresponding weight coefficient for each element of the learning non-target data. The weight learning data is calculated, and a perturbation weight calculation unit generates a perturbation weight coefficient obtained by adding a perturbation coefficient for correcting the weight coefficient to the weight coefficient corresponding to the learning target data, and the perturbation weight coefficient is Multiplying the corresponding learning target data to calculate j perturbation weight learning data, the second branching unit branches each of the weighted learning data into j + 1 pieces, and the combining unit branches into j + 1 weights Learning The first output value obtained by summing all of the data and j + 1 weight learning data is replaced with the perturbation weight learning data corresponding to the weight learning data and summed with all other weight learning data. The j second output values are calculated, and the j learning units update the weighting coefficient for each j from the first output value and the second output value. The gist is to repeat it in units of times.
本発明によれば、重み学習を高速に処理できる摂動学習装置とその方法を提供することができる。 According to the present invention, it is possible to provide a perturbation learning apparatus and method that can process weight learning at high speed.
以下、本発明の実施形態について図面を用いて説明する。複数の図面中同一のものに
は同じ参照符号を付し、説明は繰り返さない。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. The same reference numerals are given to the same components in a plurality of drawings, and the description will not be repeated.
〔第1実施形態〕
図1に、第1実施形態に係る摂動学習装置1の機能構成例を示す。図2に、摂動学習装置1の動作フローを示す。
[First Embodiment]
FIG. 1 shows a functional configuration example of the
摂動学習装置1は、分岐部10、重み演算部20、摂動重み演算部30、第2分岐部40、結合部50、及び学習部60を備える。摂動学習装置1は、例えば階層型ニューラルネットワークの学習演算を高速に処理する。
The
分岐部10は、n個の要素から成る学習データを要素ごとに分岐した学習非対象データXと、該学習データの先頭からj個ずつm回に分けて要素ごとに分岐した学習対象データXjを出力する(ステップS1)。学習非対象データXは、学習する対象が画像であるならば、ピクセルに対応するn個の成分を持つベクトルである(式(1))。
The branching
重み演算部20は、学習非対象データXの要素ごとに、それぞれ対応する重み係数を乗じて重み学習データD1〜Dnを計算する(ステップS2)。重み演算部20は、学習非対象データXに対して連結されるニューロン値を算出する。ニューロン同士の連結の強さを表すシナプスの重みとは、学習非対象データXと同様にn個の成分を持つベクトルである(式(2))。
The
摂動重み演算部30は、学習対象データXjに対応する重み係数に、該重み係数を補正する摂動係数δを加えた摂動重み係数を生成し、該摂動重み係数を、対応する学習対象データXjに乗じてj個の摂動重み学習データDδiを計算する(ステップS3)。摂動重み係数は、j個の成分を持つベクトルである(式(3))。
The perturbation
第2分岐部40は、重み学習データD1〜Dnのそれぞれをj+1個に分岐する(ステップS4)。つまり、第2分岐部40は、1個の重み学習データD1をJ+1個のD1′に分岐する。同様に重み学習データDi、及び重み学習データDnを、J+1個のDi′,Dn′に分岐する。
The second branching
結合部50は、第2分岐部40でj+1個に分岐された重み学習データD1′〜Dn′の全てを合計した第1出力値O(式(4))と、j+1個の重み学習データD1′〜Dn′の何れか1個を、該重み学習データD1′〜Dn′に対応する摂動重み学習データDδ1〜Dδnに置き代えて他の全ての重み学習データと合計したj個の第2出力値Oδ1〜Oδj(式(5))とを計算する(ステップS5)。
The combining
学習部60は、摂動重み演算部30で同時に計算する重み係数と同じ数のj個設けられ、第1出力値Oと第2出力値Oδiからj個ごとに重み係数wiを更新する計算をm回の単位で繰り返す(ステップS6)。更新する重み係数wi_newを求める計算は、その値が収束するまで繰り返される(ステップS7のNo)。
The
重み係数wi_newが収束すると、重み係数は収束した値に更新される(ステップS8)。以上説明したステップS1〜S8の処理は、m回の単位で繰り返される。 When the weight coefficient wi_new converges, the weight coefficient is updated to the converged value (step S8). The processes in steps S1 to S8 described above are repeated in units of m times.
以上説明した本実施形態の摂動学習装置1によれば、重み更新の計算を並列に処理するので重み学習を高速に処理できる。また、一度に学習する学習データの数をj個に限定するので、摂動学習装置1の構成部品点数を削減することもできる。以降、図面を参照して各機能構成部を更に詳しく説明する。
According to the
(分岐部)
図3に、分岐部10〜結合部50のより具体的な接続例を示す。分岐部10は、n個の光分波器101〜10nと、マルチプレクサ11とで構成される。
(Branch part)
In FIG. 3, the more specific example of a connection of the branch part 10-the coupling |
光分波器101〜10nは、n個の要素から成る学習データを、それぞれ2分岐し、一方のA1〜Anを第2分岐部40に出力し、他方のA1〜Anをマルチプレクサ11に出力する。マルチプレクサ11は、学習部から与えられるmの値に応じてmj+1〜(m+1)jの範囲の学習データAmj+1〜A(m+1)jを選択して摂動重み演算部30に出力する。
The
例えば、n=14、j=5、とした場合、学習対象データXjは、Xj=x1,x2,x3,x4,x5、Xj=x6,x7,x8,x9,x10、Xj=x11,x12,x13,x14、が3回に分けて出力される。mは0以上の整数であり、Xjは次式で表せる。 For example, when n = 14 and j = 5, the learning target data X j is X j = x 1 , x 2 , x 3 , x 4 , x 5 , X j = x 6 , x 7 , x 8. , X 9 , x 10 , X j = x 11 , x 12 , x 13 , x 14 are output in three times. m is an integer of 0 or more, and X j can be expressed by the following equation.
光分波器101〜10nは、例えば一方のA1〜Anの光強度をj+1分のjとし他方のAmj+1〜A(m+1)jの光強度をj+1分の1とする。これは、後段の重み演算部20が、学習対象データXjが生成される回数、学習データXを重複して参照することによる。
本実施形態では、学習対象とする学習データの数をj個に減らすことで、構成部品点数を削減している。構成部品点数の削減数の具体例については後述する。 In the present embodiment, the number of component parts is reduced by reducing the number of learning data to be learned to j. A specific example of the reduced number of component parts will be described later.
(重み演算部)
重み演算部20は、例えば液晶を用いたn個の光減衰フィルタ200〜20nで構成することができる。その場合、重みwiは、光減衰フィルタの透過率によって与えられる。重み演算部20に入力された学習非対象データA1〜Anに対し、光減衰フィルタの透過率によって学習データXの各々を、w1,w2,…,wi,…,wn倍に変換する。
(Weight calculation part)
The
重み演算部20の出力する重み学習データは、学習データXと重みwiの積演算値であり、Diと表記する(式(7))。iは、1〜nの整数である。
Weight learning data output from the
重み演算部20として光減衰フィルタを用いる場合、電気光学(EO)変調器、音響光学(AO)変調器、MEMSミラーを利用できる。光減衰フィルタの透過率の値は、入力される信号の光強度による影響を受けない。よって、透過率の制御が比較的容易であり、与えたい透過率と実際に与えた透過率の差を小さくして計算誤差を小さくすることができる。また、光減衰フィルタの透過率は、1以上であることは原理的に不可能である。そこでwi>1の場合、変換係数q>1を用いて1>wi/q=Wi′>1/qに変換すれば良い。具体的には、後段の学習部60で信号レベルをq倍に変換すれば良い。
When an optical attenuation filter is used as the
また、重み演算部20は、光増幅器で構成しても良い。その場合、半導体光増幅器(SOA)を利用できる。光増幅器では、微小な光信号を増幅して、観測可能な光強度を出力する。よって、ニューラルネットワークの規模が大きくなり、nが増加し、学習データの要素へ与えられる光強度が微小になったとしても、学習データXと重みwiの積演算値の計算が可能である。また、光増幅器の増幅率は1以下であることは原理的に不可能である。そこでwi<1の場合、変換係数q′<1を用いる。この場合の信号レベルの変換は、上記の光減衰フィルタを用いた場合と同じである。
Further, the
(摂動重み演算部)
摂動重み演算部30は、入力された学習対象データXjに対して摂動重み係数を乗じて、摂動重み学習データDδiを計算する(式(8))。摂動重み係数は、重み係数に、該重み係数を補正する摂動係数δを加えたものである。摂動重み演算部30は、重み演算部20と同様に例えば光減衰フィルタ、又は光増幅器で構成できる。
(Perturbation weight calculator)
The perturbation
摂動重み演算部30は、mの値に応じた摂動重み学習データDδiを計算する。例えば、n=14、j=5、とした場合、m=0では、学習対象データx1〜x5のそれぞれに、摂動重み係数w1+δ〜w5+δを乗じた摂動重み学習データDδ1〜Dδ5を計算する。m=1では、学習対象データx6〜x10のそれぞれに、摂動重み係数w6+δ〜w10+δを乗じた摂動重み学習データDδ6〜Dδ10を計算する。m=2では、学習対象データx11〜x14のそれぞれに、摂動重み係数w11+δ〜w14+δを乗じた摂動重み学習データDδ11〜Dδ14を計算する。
The
(第2分岐部)
第2分岐部40は、重み学習データD*のそれぞれをj+1個に分岐する(ステップS4)。第2分岐部40は、重み学習データD1をJ+1個のD1′に分岐する。同様に重み学習データDi、及び重み学習データDnを、J+1個のDi′,Dn′に分岐する。
(Second branch)
The second branching
第2分岐部40は、分岐部10と同様に光分波器で構成することができる。光分波器としては、石英平面光導波路(PLC)、フレキシブルポリマー光導波路、及び融着延伸型ファイバーカプラ等を用いることができる。
The second branching
(結合部)
結合部50は、第2分岐部40でj+1個に分岐された重み学習データD1′〜Dn′の全てを合計した第1出力値O(式(4))と、j+1個の重み学習データD*の何れか1個を、該重み学習データD*に対応する摂動重み学習データDδ*に置き代えて他の全ての重み学習データD*と合計したj個の第2出力値Oδ*(式(5))とを計算する。
(Joining part)
The combining
図4に、第1出力値Oと第2出力値Oδ*の例を示す。図4は、学習データXの要素数nをn=14、一度に学習する学習対象データの数jをj=5とした場合を示す。 FIG. 4 shows an example of the first output value O and the second output value Oδ * . FIG. 4 shows a case where the number n of elements of learning data X is n = 14 and the number j of learning object data to be learned at a time is j = 5.
この例の場合、結合部50は、第1出力値Oと第2出力値Oδ1〜Oδ5を3回に分けて出力する。3回に分けて出力する第1出力値Oは、全て同じ値である。
In the case of this example, the combining
一方、第2出力値Oδiは、3回に分けて出力される値が全て異なる。1回目のOδ1は、D1(x1w1)がDδ1に置き代えられ、他の全ての重み学習データと合計した値である。1回目のOδ2は、D2(x2w2)がDδ2に置き代えられる。同様に、1回目のOδ5は、D5(x5w5)がDδ5に置き代えられて他の重み学習データと合計した値である。 On the other hand, the second output value Oδ i is different in all the values output in three steps. The first Oδ 1 is a value obtained by replacing D 1 (x 1 w 1 ) with Dδ 1 and adding all the other weight learning data. In the first Oδ 2 , D 2 (x 2 w 2 ) is replaced with Dδ 2 . Similarly, the first Oδ 5 is a value obtained by replacing D 5 (x 5 w 5 ) with Dδ 5 and adding it to other weight learning data.
2回目のOδ1は、D6(x6w6)がDδ6に置き代えられ、他の全ての重み学習データと合計した値である。2回目のOδ2は、D7(x7w7)がDδ7に置き代えられる。同様に、2回目のOδ5は、D10(x10w10)がDδ10に置き代えられて他の重み学習データと合計した値である。 The second Oδ 1 is a value obtained by replacing D 6 (x 6 w 6 ) with Dδ 6 and adding all the other weight learning data. In the second Oδ 2 , D 7 (x 7 w 7 ) is replaced with Dδ 7 . Similarly, the second Oδ 5 is a value obtained by adding D 10 (x 10 w 10 ) to Dδ 10 and adding it to other weight learning data.
3回目のOδ1は、D11(x11w11)がDδ11に置き代えられ、他の全ての重み学習データと合計した値である。3回目のOδ2は、D12(x12w12)がDδ12に置き代えられる。同様に、3回目のOδ5は、D15(x15w15)がこの例では存在しないので出力なしである。 The third Oδ 1 is a value obtained by replacing D 11 (x 11 w 11 ) with Dδ 11 and adding all the other weight learning data. In the third Oδ 2 , D 12 (x 12 w 12 ) is replaced with Dδ 12 . Similarly, the third Oδ 5 has no output because D 15 (x 15 w 15 ) does not exist in this example.
(学習部)
図5に、学習部60iのより具体的な構成例を示す。学習部60iは、例えばアナログ電気回路で構成することができる。
(Learning Department)
FIG. 5 shows a more specific configuration example of the
学習部60iは、3個の差動増幅器61i,62i,63i,65i、及び計算部64iを備える。学習部60iは、摂動重み演算部30を構成する例えば光減衰フィルタと同じ数だけ設けられる。
The
差動増幅器61iは、結合部50が出力する第1出力値Oと、外部から入力される学習目標を表す教師値Tとの差分である第1コスト値E(O−T)を算出する。差動増幅器62iは、結合部50が出力する第2出力値Oδiと、教師値Tとの差分である第2コスト値Eδiを算出する。差動増幅器43iは、第1コスト値Eと第2コスト値Eδiの差分E−Eδiを算出する。
The
計算部64iは、外部から入力される強調重みwiを補正する摂動係数δと学習速度の傾きを表す学習係数η、及び差動増幅器63iが出力する差分E−Eδiを入力として、重みwiを更新する変化量Δwi_newを次式で計算する。
The calculation unit 64 i receives, as inputs, a perturbation coefficient δ that corrects an emphasis weight w i that is input from the outside, a learning coefficient η that represents the gradient of the learning speed, and the difference EE δi that is output from the
差動増幅器65iは、1回前の重みwi_oldに変化量Δwj_newを加えて更新した重みwi_newを出力する。
なお、図6に示すように差動増幅器61iと63iの間に第1乗算器66i、及び差動増幅器62iと63iの間に第2乗算器67iを設けても良い。第1乗算器66iは、第1コスト値E(O−T)を正の値に変換する。第1乗算器66iは、第1コスト値E(O−T)に同じ値を乗ずる二乗演算器で構成しても良いし、第1コスト値E(O−T)の値が負の場合に−1を乗ずる乗算器で構成しても良い。第2乗算器67iも同様である。
It is also possible to provide a
第1乗算器66iと第2乗算器67iを備えることで、変化量Δwi_newの計算精度を高めることができる。
By providing the first multiplier 66 i and the
〔第2実施形態〕
図7に、第2実施形態に係る摂動学習装置2の機能構成例を示す。摂動学習装置2は、波長多重光を用いて、例えばニューラルネットワークの重み学習を行う学習装置である。
[Second Embodiment]
FIG. 7 shows a functional configuration example of the
摂動学習装置2は、学習データ生成部70、光分岐部12、第1重み演算部21、第2重み演算部22、摂動重み演算部31、波長周回器80、光結合部90、及び学習部60を備える。
The
学習データ生成部70は、n個の波長を含む波長多重光を、j+1個の波長を含む多波長光と、該多波長光に含まれない波長ごとの単波長光とに分岐し、多波長光にn個の学習データの先頭からj個ずつの学習データをm回に分けて付与した学習対象信号と、単波長光に対応する重みを付与した学習非対象信号とを生成する。
The learning
波長多重光は、n個の波長成分を持つ光源を用いて生成する。光源としては、n個の波長成分を持つ光を生成できれば良い。したがって、単波長コヒーレント光源をn個用意し、各光源から照射された光を光結合器によって合波して生成して生成しても良い。また、多波長光源を用いても良いし、インコーヒーレント光源を用いても良い。学習データ生成部70について、詳しくは後述する。
Wavelength multiplexed light is generated using a light source having n wavelength components. As the light source, it is only necessary to generate light having n wavelength components. Therefore, n single-wavelength coherent light sources may be prepared, and the light emitted from each light source may be generated and combined by an optical coupler. In addition, a multi-wavelength light source or an incoherent light source may be used. The learning
光分岐部12は、j+1個の波長を含む学習対象信号を、ある波長のj個の単波長光B1〜Bjと、それ以外の波長を含むj個の多波長光A1〜Ajとに2分岐する。例えば、j個の単波長光の波長は最も短い波長λ0であり、j個の多波長光は波長λ1〜λjの波長を含む。光分岐部12は、例えば、AWG、回折格子、プリズム、及びWDMカプラ等の波長分岐素子で構成できる。
The optical branching
第1重み演算部21は、j個の多波長光のそれぞれに対応する重み係数を乗じて第1重み学習データD1〜Djを計算する。第1重み学習データD1〜Djは、次式で表せる。ここでiは、1〜jの整数である。
The first
ここでA1は、λ1〜λjの波長を含む多波長光である。よって、例えばD1は、多波長光に重みwmj+1を乗じた値である。この作用は、第1実施形態で説明した重み演算部20と同様に、例えば光減衰フィルタで実現できる。
Here, A 1 is multi-wavelength light including wavelengths λ 1 to λ j . Thus, for example, D 1 is a value obtained by multiplying the multi-wavelength light by the weight w mj + 1 . This effect can be realized by, for example, an optical attenuation filter, similarly to the
摂動重み演算部31は、j個の単波長光のそれぞれに対応する重み係数に、該重み係数を補正する摂動係数δを加えた摂動重み係数を生成し、該摂動重み係数を、対応する単波長光に乗じて摂動重み学習データを計算する。摂動重み学習データDδ1〜Dδjは、次式で表せる。ここでB1は、λ0の波長の単波長光である。
The perturbation
第2重み演算部22は、学習非対象信号のそれぞれに、対応する重み係数を乗じて第2重み学習データDj+1〜Dnを計算する。例えば、第2重み学習データDj+1は次式で表せる。第2重み学習データDnは、式(12)の添え字がj+1→nに変わる。
The second
波長周回器80は、j個の第1重み学習データD1〜Djとj個の摂動重み学習データDδ1〜Dδjを入力とし、j個の第1重み学習データD1〜Djを全て結合した第1結合値D1と、j個の第1重み学習データD1〜Djの何れか1個を、該第1重み学習データD1〜Djに対応する摂動重み学習データDδ1〜Dδjに置き代えて他の全ての第1重み学習データと結合したj個の第2結合値D21〜D2jとを出力する。
The
波長周回器80は、例えばAWGで構成できる。波長周回器80は、多波長光りが入力されると、多波長光を波長ごとに分岐して、入力ポートから波長の整数倍離れた距離の出力ポートに出力し、多波長光を生成する作用をする。この作用を用いて和演算する積演算値を選択する。波長周回器80について、詳しくは後述する。
The
光結合部90は、第1結合値D1とn−j個の第2重み学習データDj+1〜Dnを結合した第1出力値Oと、第2結合値D21〜D2jのそれぞれと第2重み学習データDj+1〜Dnを結合した第2出力値Oδ1〜Oδjを生成する。第1出力値Oと第2出力値Oδiは次式で表せる。但し、j≦n≦2jの場合である。
The
最後の和演算は、波長周回器80で光結合を行った光信号の光強度を受光器によって読み取ることで行う。なお、受光器の表記は省略している。
The final sum operation is performed by reading the light intensity of the optical signal optically coupled by the
学習部60は、第1出力値Oと第2出力値Oδ1〜Oδjからj個ごとに重み係数をそれぞれ更新する計算を、m回の単位で繰り返す。学習部60は、参照符号から明らかなように第1実施形態と同じである。
The
以上説明したように本実施形態の摂動学習装置2によれば、重み更新の計算を並列に処理するので重み学習を高速に処理できる。また、一度に学習する学習データの数をj個に限定するので、摂動学習装置2の構成部品点数を削減することもできる。以降、図面を参照して各機能構成部を更に詳しく説明する。
As described above, according to the
(学習データ生成部)
図8に、より具体的な学習データ生成部70の機能構成例を示す。学習データ生成部70は、波長分岐部71、波長合成部72、光分岐部73、第1学習データフィルタ74、第2学習データフィルタ75、及び光結合部76を備える。
(Learning data generator)
FIG. 8 shows a more specific functional configuration example of the learning
波長分岐部71は、n個の波長を含む波長多重光を、波長ごと(λ0,…,λj,…λn)の単波長光に分波する。波長分岐部71は、上記の通りAWG等の波長分岐素子で構成される。
The
例えば、最も波長の短い波長λ0〜λjまでのJ+1個の単波長光は、波長合成部72に入力され、波長λj+1〜λnまでのn−j個の単波長光は第2学習データフィルタ75に入力される。
For example, most single-wavelength light shorter to wavelength λ 0 ~λ j J + 1 single wavelength is inputted to the
波長合成部72は、波長分岐部71で分波した最短の波長からj+1番目に長い波長までの単波長光を合波する。波長合成部72は、波長分岐部71と同様に波長分岐素子で構成できる。
The
なお、波長分岐部71と波長合成部72を、1組の波長分岐素子で構成する代わりに光合成器であるカプラを用いても良い。光合成器を用いた場合は、損失無しで結合することは原理的に不可能であるため、変換係数q>1を用い、後段の学習部60において信号をq倍すれば良い。
It should be noted that the
光分岐部73は、波長合成部72の出力する信号をj個に等分岐する。光分岐部73は、石英平面光導波路(PLC)、フレキシブルポリマー光導波路等で構成できる。
The optical branching
第1学習データフィルタ74は、光分岐部73の出力するj個の信号のそれぞれに、n個の学習データの先頭からj個ずつm回に分けて学習データを付与した学習対象信号を生成する。学習データx1〜xjは、学習部60から入力されるmによって次式に示すように変化する。
The first learning data filter 74 generates a learning target signal in which learning data is assigned to each of the j signals output from the optical branching
j=5,n=14とした場合、m=0ではx1=x1,…,x5=x5、m=1ではx1=x6,…,x10=x5、m=2ではx1=x11,…,x3=x14である。このように、学習データは、j個ずつm回に分けて付与される。 When j = 5 and n = 14, when m = 0, x 1 = x 1 ,..., x 5 = x 5 , and when m = 1, x 1 = x 6 ,..., x 10 = x 5 , m = 2 Then, x 1 = x 11 ,..., X 3 = x 14 . In this way, the learning data is given j times m times.
第2学習データフィルタ75は、波長分岐部71の出力するn−j個の信号のそれぞれに、n−j個の学習データを付与した学習非対象信号を生成する。m=0では波長λj+1の単波長光にx6、波長λnの単波長光にxnの学習データが付与される。
The second learning data filter 75 generates a learning non-target signal in which n−j learning data is added to each of the n−j signals output from the
光結合部76は、第1学習データフィルタ74のj個の出力信号を結合した学習対象信号を生成する。学習対象信号は、光分岐部12に出力する。
The
(第2実施形態の分岐部)
図9に、光分岐部12のより具体的な機能構成例を示す。光分岐部12は、波長分岐部121、波長合成部122、第1光分岐部123、及び第2光分岐部124を備える。
(Branching part of 2nd Embodiment)
FIG. 9 shows a more specific functional configuration example of the optical branching
波長分岐部121と波長合成部122の関係は、学習データ生成部70の波長分岐部71と波長合成部72の関係と同じである。この例では、波長分岐部121と波長合成部122で学習対象信号に含まれるλ0〜λjの波長を、最も短い波長λ0の単波長光と、それ以外の波長を含む多波長光に分岐する。
Relationship between the
第1光分岐部123は、多波長光をj個の多波長光A1〜Ajに分岐する。第2光分岐部124は、単波長光をj個の単波長光B1〜Bjに分岐する。
The first
(波長周回器)
図10に、波長周回器80の作用を模式的に示す。波長周回器80は、第1重み学習データD1〜Djと摂動重み学習データDδ1〜Dδjを入力として、第1結合値D1と第2結合値D21〜D2jを出力する。
(Wavelength circulator)
FIG. 10 schematically shows the operation of the
第1結合値D1は、j個の第1重み学習データD1〜Djの全てを合計(結合)した値である。第2結合値D21は、第1重み学習データD1を摂動重み学習データDδ1に置き代えて、摂動重み学習データDδ1と第1重み学習データD1を除く他の第1重み学習データD2〜Djを合計した値である。 The first combined value D1 is a value obtained by summing (combining) all of the j pieces of first weight learning data D 1 to D j . The second combined value D2 1 is obtained by replacing the first weight learning data D 1 with the perturbation weight learning data Dδ 1 and other first weight learning data excluding the perturbation weight learning data Dδ 1 and the first weight learning data D 1. It is a value obtained by summing D 2 to D j .
第2結合値D2jは、第1重み学習データDjを摂動重み学習データDδjに置き代えて、摂動重み学習データDδjと第1重み学習データDjを除く他の第1重み学習データD1〜Dj−1を合計した値である。 The second combined value D2 j replaces the first weight learning data D j with the perturbation weight learning data Dδ j , and other first weight learning data excluding the perturbation weight learning data Dδ j and the first weight learning data D j. It is a value obtained by summing D 1 to D j−1 .
このように、波長周回器80は、j個の第1重み学習データD1〜Djを全て結合した第1結合値D1と、j個の第1重み学習データD1〜Djの何れか1個を、該第1重み学習データに対応する摂動重み学習データに置き代えて他の全ての第1重み学習データと結合したj個の第2結合値D21〜D2jとを出力する。
Thus, the
(光結合部)
光結合部90は、光結合器91、光分岐器92、及び光結合器93を備える。図11に、光結合器91と光分岐器92の作用を模式的に示す。図12に、光結合器93の作用を模式的に示す。
(Optical coupling part)
The
光結合器91は、今回学習しない重みを付与した非学習対象信号Dj+1〜Dnを結合(合波)する。今回とは、m回の回数の何れかのことである。
The
光分岐器92は、結合した非学習対象信号Dj+1〜Dnをj+1個に等分岐する。j+1とは、同時に学習する重みの数+1の数である。
The optical branching
光結合器93は、波長周回器80を通過した今回学習する重みを付与した第1結合値D1及び第2結合値D21〜D2jのそれぞれに、非学習対象信号Dj+1〜Dnを結合させて第1出力値Oと第2出力値Oδ1〜Oδjを生成する。
The
図12に示す第1出力値Oと第2出力値Oδ1〜Oδjの関係は、図4に示した第1実施形態の両者の関係と同じである。つまり、本実施形態は、波長多重光に学習する重みが付与されている点で異なるだけで作用効果は第1実施形態と同じである。 The relationship between the first output value O and the second output values Oδ 1 to Oδ j shown in FIG. 12 is the same as the relationship between both in the first embodiment shown in FIG. That is, the present embodiment is the same as the first embodiment except that the present embodiment is different only in that a learning weight is given to the wavelength multiplexed light.
(比較例との対比)
以上説明した摂動学習装置1,2によれば重み学習を高速化できる。そこで、本実施形態の効果を確認する目的で、比較例と摂動学習装置1(図1)の学習速度の比較を行った。学習速度の比較は、ニューラルネットワークのハードウェアにおいて、1秒間に書き換え可能なパラメータの更新回数CUPS(Connections Updated Per Second)を比較することで行った。
(Contrast with comparative example)
According to the
シミュレーションの条件は、比較例を、ニューラルネットワークの規模を10000ニューロンであるとき、動作クロック3GHz、8コアのCPUを使用とした。比較例のCPUによる重み書き換え数は、1.8MCUPSと試算された。 The simulation conditions were as follows: when the neural network scale was 10,000 neurons, an operation clock of 3 GHz and an 8-core CPU were used. The number of weight rewrites by the CPU of the comparative example was estimated to be 1.8 MCUPS.
本実施形態の構成で、摂動重み演算部31で同時に計算する重みの数を10個としてシミュレーションした。条件は、入力フィルタとして用いる空間光り変調器の時定数を0.1ns、重みフィルタとして用いる空間光変調器の時定数を0.1ns、受光器として用いるアバランシェフォトダイオードの時定数を1ns、重み変化量を演算するアナログ回路の遅延を0.1ns、重み更新量を指令するコントローラの遅延を1nsと仮定した。
In the configuration of this embodiment, the number of weights simultaneously calculated by the perturbation
本実施形態の重み書き換え数は100MCPUSと試算された。比較例に対して50倍以上に高速化することができた。 The number of weight rewrites in this embodiment is estimated to be 100 MCPUS. The speed could be increased 50 times or more compared to the comparative example.
また、本実施形態によれば低消費電力化が図れる。図13に、比較した結果の一例を示す。図13(a)に、フィルタの消費電力を比較した例、図13(b)に構成部品点数を比較した例を示す。 Further, according to the present embodiment, low power consumption can be achieved. FIG. 13 shows an example of the comparison result. FIG. 13A shows an example in which the power consumption of the filter is compared, and FIG. 13B shows an example in which the number of components is compared.
ニューラルネットワークの規模は10000ニューロンで比較した。同時に学習する重みの数を10個とし、フィルタサイズを800×600ピクセル、消費電力を50VA、データ1成分当たりのフィルタサイズを8ピクセルと仮定した。 The scale of the neural network was compared with 10,000 neurons. It was assumed that the number of weights to be learned simultaneously was 10, the filter size was 800 × 600 pixels, the power consumption was 50 VA, and the filter size per data component was 8 pixels.
その条件で、比較例のフィルタの消費電力は183.3kVAと試算された。一方、本実施形態は16.7kVAと試算された。比較例に対して消費電力を約10分の1にすることができた。 Under these conditions, the power consumption of the filter of the comparative example was estimated to be 183.3 kVA. On the other hand, this embodiment was estimated to be 16.7 kVA. Compared with the comparative example, the power consumption could be reduced to about 1/10.
また、本実施形態の摂動学習装置1,2は、当該装置を構成する構成部品点数を削減することもできる。図13(b)に示すように、ニューロンに依存しないで本実施形態の構成部品点数は、比較例に対して一桁少なくて済む。なお、第2実施形態では波長周回器80を用いるため、部品点数が増加する(二点鎖線)。但し、増加分はニューロン数に依存せず10数個で一定である。よって、摂動学習装置2でも十分に構成分品点数を削減することができる。
Moreover, the
以上説明したように本実施形態の摂動学習装置1,2によれば、重み学習を、高速化、低消費電力化、及び小型化することができる。
As described above, according to the
摂動学習装置2は、光部品を用いて構成した例で説明を行った。光をキャリアとして用いると、3次元空間に光配線を形成することができ、ショートの恐れや配線の取り回しといったデメリットが少ない。
The
なお、本発明はこの例に限定されない。例えば、摂動学習装置1の分岐部10は、不等分岐の例で説明したが、等分岐する分岐部10で構成しても良い。等分岐する場合は、摂動重み演算部30と結合部50との間に、信号をj分の1に減衰する減衰器を設ければ良い。また、光部品を用いずに本実施形態の摂動学習装置1を構成しても良い。光は電磁波の一種である。よって、例えば分岐部10は、電磁波分岐器で構成することが可能である。また、結合部50も電磁波結合器で構成することが可能である。このように本発明は、上記の実施形態に限定されるものではなく、その要旨の範囲内で変形が可能である。
Note that the present invention is not limited to this example. For example, the branching
本実施の形態は、例えば階層型ニューラルネットワークの学習装置に適用することができ、光コンピューティングなどの分野に利用可能である。 The present embodiment can be applied to, for example, a learning device for a hierarchical neural network, and can be used in fields such as optical computing.
1、2:摂動学習装置
10、12:分岐部
101、10i、10n:光分波器
11:マルチプレクサ
12、73:光分岐部
121:波長分岐部
122:波長合成部
123:第1光分岐部
124:第2光分岐部
20:重み演算部
200、20i、20n:光減衰フィルタ
30:摂動重み演算部
40:第2分岐部
50:結合部
60、601、60j:学習部
61j,62j,63j,65i:差動増幅器
64j:計算部
70:学習データ生成部
74:第1学習データフィルタ
75:第2学習データフィルタ
80:波長周回器
76、90:光結合部
91:光結合器
92:光分岐器
1, 2:
Claims (8)
前記学習非対象データの前記要素ごとに、それぞれ対応する重み係数を乗じて重み学習データを計算する重み演算部と、
前記学習対象データに対応する前記重み係数に、該重み係数を補正する摂動係数を加えた摂動重み係数を生成し、該摂動重み係数を、対応する前記学習対象データに乗じてj個の摂動重み学習データを計算する摂動重み演算部と、
前記重み学習データのそれぞれをj+1個に分岐する第2分岐部と、
j+1個に分岐された重み学習データの全てを合計した第1出力値と、j+1個の重み学習データの何れか1個を、該重み学習データに対応する前記摂動重み学習データに置き代えて他の全ての重み学習データと合計したj個の第2出力値とを計算する結合部と、
j個設けられ、前記第1出力値と前記第2出力値からj個ごとに前記重み係数をそれぞれ更新する計算を、前記m回の単位で繰り返す学習部と
を備えることを特徴とする摂動学習装置。 a learning non-target data obtained by branching learning data consisting of n elements for each element; a branching unit that outputs learning target data branched for each element j times from the beginning of the learning data; and
A weight calculation unit that calculates weight learning data by multiplying a corresponding weighting factor for each element of the learning non-target data,
A perturbation weight coefficient obtained by adding a perturbation coefficient for correcting the weight coefficient to the weight coefficient corresponding to the learning target data is generated, and the perturbation weight coefficient is multiplied by the corresponding learning target data to obtain j perturbation weights. A perturbation weight calculator for calculating learning data;
A second branching unit for branching each of the weight learning data into j + 1 pieces;
The first output value obtained by summing all the j + 1 weight learning data and any one of the j + 1 weight learning data are replaced with the perturbation weight learning data corresponding to the weight learning data. A combining unit that calculates all the weight learning data of j and the total of j second output values;
a perturbation learning comprising: a learning unit which is provided with j and repeats the calculation of updating the weighting coefficient for each j from the first output value and the second output value in units of m times. apparatus.
前記分岐部は、n個の前記学習非対象データの光強度をj+1分のjの光強度を持つ信号とし、前記学習対象データの光強度をj+1分の1の光強度を持つ信号とすることを特徴とする請求項1に記載の摂動学習装置。 The learning data is an optical signal,
The branching unit sets the light intensity of the n learning non-target data as a signal having a light intensity of j + 1 / j, and the light intensity of the learning target data as a signal having a light intensity of j + 1 /. The perturbation learning device according to claim 1.
前記学習対象信号を、波長の異なるj個の単波長光と、それ以外の波長を含むj個の多波長光とに2分岐する光分岐部と、
j個の前記多波長光のそれぞれに、対応する重み係数を乗じて第1重み学習データを計算する第1重み演算部と、
j個の前記単波長光のそれぞれに対応する重み係数に、該重み係数を補正する摂動係数を加えた摂動重み係数を生成し、該摂動重み係数を、対応する前記単波長光に乗じて摂動重み学習データを計算する摂動重み演算部と、
前記学習非対象信号のそれぞれに、対応する重み係数を乗じて第2重み学習データを計算する第2重み演算部と、
j個の前記第1重み学習データとj個の摂動重み学習データを入力とし、j個の前記第1重み学習データを全て結合した第1結合値と、j個の前記第1重み学習データの何れか1個を、該第1重み学習データに対応する前記摂動重み学習データに置き代えて他の全ての第1重み学習データと結合したj個の第2結合値とを出力する波長周回器と、
前記第1結合値とn−j個の前記第2重み学習データを結合した第1出力値と、j個の前記第2結合値のそれぞれとn−j個の前記第2重み学習データを結合した第2出力値を生成する光結合器と、
j個設けられ、前記第1出力値と前記第2出力値からj個ごとに前記重み係数をそれぞれ更新する計算を、前記m回の単位で繰り返す学習部と
を備えることを特徴とする摂動学習装置。 Wavelength multiplexed light including n wavelengths is branched into multi-wavelength light including j + 1 wavelengths and single-wavelength light having a wavelength not included in the multi-wavelength light, and n learning data is included in the multi-wavelength light. A learning data generation unit that generates a learning target signal to which j pieces of learning data from the top of the learning data are given m times, and a learning non-target signal to which a weight corresponding to the single wavelength light is given,
An optical branching unit that bifurcates the learning target signal into j single-wavelength lights having different wavelengths and j multi-wavelength lights including other wavelengths;
a first weight calculator that calculates first weight learning data by multiplying each of the j multi-wavelength lights by a corresponding weight coefficient;
A perturbation weight coefficient is generated by adding a perturbation coefficient for correcting the weight coefficient to a weight coefficient corresponding to each of the j single-wavelength lights, and the perturbation weight coefficient is multiplied by the corresponding single wavelength light to perturb. A perturbation weight calculator for calculating weight learning data;
A second weight calculator that calculates second weight learning data by multiplying each of the learning non-target signals by a corresponding weight coefficient;
The j first weight learning data and the j perturbation weight learning data are input, and a first combined value obtained by combining all the j first weight learning data, and the j first weight learning data. Wavelength circulator for outputting j second combined values obtained by replacing any one of them with the perturbation weight learning data corresponding to the first weight learning data and combining with all the other first weight learning data When,
The first output value obtained by combining the first combined value and nj second weight learning data, and the j second combined value and nj second weight learning data are combined. An optical coupler for generating a second output value,
a perturbation learning comprising: a learning unit which is provided with j and repeats the calculation of updating the weighting coefficient for each j from the first output value and the second output value in units of m times. apparatus.
n個の波長を含む波長多重光を、波長ごとに分波する波長分岐部と、
前記波長分岐部で分波した最短の波長からj+1番目に長い波長までの波長成分を合波する波長合波部と、
前記波長合波部の出力する信号をj個に等分岐する光分岐部と、
前記光分岐部の出力するj個の信号のぞれぞれに、n個の学習データの先頭からj個ずつm回に分けて前記学習データを付与する第1学習データフィルタと、
前記光分岐部の出力するn−j個の信号のそれぞれに、n−j個の学習データを付与した学習非対象信号を生成する第2学習データフィルタと、
前記第1学習データフィルタのj個の出力信号を結合した学習対象信号を生成する光結合部と
を備えることを特徴とする請求項6に記載の摂動学習装置。 The learning data generation unit
a wavelength branching unit that demultiplexes wavelength multiplexed light including n wavelengths for each wavelength;
A wavelength combining unit that combines wavelength components from the shortest wavelength demultiplexed by the wavelength branching unit to the j + 1st longest wavelength;
An optical branching unit for equally branching the signal output from the wavelength multiplexing unit into j pieces;
A first learning data filter that assigns the learning data to each of j signals output from the optical branching unit by dividing j times from the beginning of n learning data into m times;
A second learning data filter that generates a learning non-target signal obtained by adding nj learning data to each of the nj signals output from the optical branching unit;
The perturbation learning device according to claim 6, further comprising: an optical coupling unit configured to generate a learning target signal obtained by combining the j output signals of the first learning data filter.
分岐部が、n個の要素から成る学習データを要素ごとに分岐した学習非対象データと、前記学習データの先頭からj個ずつm回に分けて要素ごとに分岐した学習対象データを出力し、
重み演算部が、前記学習非対象データの前記要素ごとに、それぞれ対応する重み係数を乗じて重み学習データを計算し、
摂動重み演算部が、前記学習対象データに対応する前記重み係数に、該重み係数を補正する摂動係数を加えた摂動重み係数を生成し、該摂動重み係数を、対応する前記学習対象データに乗じてj個の摂動重み学習データを計算し、
第2分岐部が、前記重み学習データのそれぞれをj+1個に分岐し、
結合部が、j+1個に分岐された重み学習データの全てを合計した第1出力値と、j+1個の重み学習データの何れか1個を、該重み学習データに対応する前記摂動重み学習データに置き代えて他の全ての重み学習データと合計したj個の第2出力値とを計算し、
j個設けられた学習部が、前記第1出力値と前記第2出力値からj個ごとに前記重み係数をそれぞれ更新する計算を、前記m回の単位で繰り返す
ことを特徴とする摂動学習方法。 A perturbation learning method performed by a perturbation learning device,
A branching unit outputs learning non-target data obtained by branching learning data composed of n elements for each element, and learning target data branched for each element j times from the beginning of the learning data,
A weight calculation unit calculates weight learning data by multiplying a corresponding weighting factor for each element of the learning non-target data,
A perturbation weight calculation unit generates a perturbation weight coefficient obtained by adding a perturbation coefficient for correcting the weight coefficient to the weight coefficient corresponding to the learning target data, and multiplies the corresponding learning target data by the perturbation weight coefficient. To calculate j perturbation weight learning data,
A second branching unit branches each of the weight learning data into j + 1 pieces;
The combining unit adds any one of the first output value obtained by summing all the weight learning data branched into j + 1 pieces and the j + 1 weight learning data to the perturbation weight learning data corresponding to the weight learning data. Replacing all other weight learning data with the summed j second output values,
A perturbation learning method characterized in that j learning units repeat the calculation of updating the weighting factor for each j from the first output value and the second output value in units of m times. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017006062A JP6655032B2 (en) | 2017-01-17 | 2017-01-17 | Perturbation learning device and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017006062A JP6655032B2 (en) | 2017-01-17 | 2017-01-17 | Perturbation learning device and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018116420A true JP2018116420A (en) | 2018-07-26 |
JP6655032B2 JP6655032B2 (en) | 2020-02-26 |
Family
ID=62985523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017006062A Active JP6655032B2 (en) | 2017-01-17 | 2017-01-17 | Perturbation learning device and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6655032B2 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1049509A (en) * | 1996-08-07 | 1998-02-20 | Kokusai Denshin Denwa Co Ltd <Kdd> | Neural network learning system |
JP2018097407A (en) * | 2016-12-08 | 2018-06-21 | 日本電信電話株式会社 | Perturbation learning apparatus and method thereof |
-
2017
- 2017-01-17 JP JP2017006062A patent/JP6655032B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1049509A (en) * | 1996-08-07 | 1998-02-20 | Kokusai Denshin Denwa Co Ltd <Kdd> | Neural network learning system |
JP2018097407A (en) * | 2016-12-08 | 2018-06-21 | 日本電信電話株式会社 | Perturbation learning apparatus and method thereof |
Non-Patent Citations (1)
Title |
---|
前田 裕ほか: "摂動を用いたリカンレントニューラルネットワークの学習則とニューロ制御への応用", 電気学会論文誌C, vol. 113, no. 6, JPN6020001930, 20 June 1993 (1993-06-20), pages 402 - 408, ISSN: 0004199250 * |
Also Published As
Publication number | Publication date |
---|---|
JP6655032B2 (en) | 2020-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Nahmias et al. | Photonic multiply-accumulate operations for neural networks | |
Pai et al. | Parallel programming of an arbitrary feedforward photonic network | |
CN108694442B (en) | Computer system and operation method using recurrent neural network | |
CN109784486B (en) | Optical neural network processor and training method thereof | |
US20210192342A1 (en) | Training of Photonic Neural Networks Through in situ Backpropagation | |
JP7103602B2 (en) | Optical partial differential arithmetic unit and optical neural network | |
CN109784485B (en) | Optical neural network processor and calculation method thereof | |
CN112001487A (en) | Photon neural network | |
CN116348886A (en) | Coherent photon computing architecture | |
Huang et al. | Programmable matrix operation with reconfigurable time-wavelength plane manipulation and dispersed time delay | |
CN107533247A (en) | Modulation pattern computing device, light control device, modulation pattern computational methods, modulation pattern calculation procedure and storage medium | |
Pleros et al. | Compute with light: Architectures, technologies and training models for neuromorphic photonic circuits | |
Cheng et al. | Photonic emulator for inverse design | |
JP2018205864A (en) | Optical neural network learning device | |
CN115222035A (en) | Photon neural network convolution acceleration chip | |
CN114565091A (en) | Optical neural network device, chip and optical implementation method for neural network calculation | |
JP6534987B2 (en) | Perturbation learning device and its method | |
JP6655032B2 (en) | Perturbation learning device and method | |
Gao et al. | Reservoir computing using arrayed waveguide grating | |
JP2024509663A (en) | optical vector multiplier | |
JP6829700B2 (en) | Optical signal processor | |
JP2019148715A (en) | Optical signal processing device | |
WO2020170872A1 (en) | Optical signal processing device | |
CN113392965A (en) | Hadamard product realization method, device and storage medium | |
Cauchon et al. | BraggNet: Complex photonic integrated circuit reconstruction using deep learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190221 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200116 |
|
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: 20200128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200131 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6655032 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |