JP2536146B2 - Pattern learning device - Google Patents
Pattern learning deviceInfo
- Publication number
- JP2536146B2 JP2536146B2 JP1094563A JP9456389A JP2536146B2 JP 2536146 B2 JP2536146 B2 JP 2536146B2 JP 1094563 A JP1094563 A JP 1094563A JP 9456389 A JP9456389 A JP 9456389A JP 2536146 B2 JP2536146 B2 JP 2536146B2
- Authority
- JP
- Japan
- Prior art keywords
- layer
- value
- signal
- learning
- threshold value
- 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 - Lifetime
Links
Landscapes
- Image Analysis (AREA)
Description
【発明の詳細な説明】 (産業上の利用分野) 本願発明は、フィードフォワード型の神経回路網にお
いて、学習が十分進んでないにも関わらず学習が停止す
る状況を回避するパターン学習装置に関するものであ
る。Description: TECHNICAL FIELD The present invention relates to a pattern learning apparatus for avoiding a situation where learning stops in a feedforward type neural network even though learning has not progressed sufficiently. is there.
(従来の技術) 従来、入力パターンと出力信号との対応付けは、第1
の文献(“Associative Memory"by T.Kohonen:Springer
−Verlag:1977)に示される偽逆行列や重回帰分析によ
って行われていたが、この文献に示されるシステムは線
形システムであり非線形な対応付けができなかった。そ
れに対し、フィードフォワード形の神経回路網では、パ
ターンを入力とし、その教師として理想的な出力信号を
多数回入力して、第2の文献(“An Intorduction to C
omputing with Neural Nets"by R.P.Lippmann:IEEE.ASS
P:April 1987,pp.4−22)に示される逆伝搬学習法によ
り、入力パターンと出力信号との非線形な対応を学習す
ることができる。(Prior Art) Conventionally, the correspondence between the input pattern and the output signal is the first
Article ("Associative Memory" by T. Kohonen: Springer
-Verlag: 1977), it was performed by the pseudo-inverse matrix and multiple regression analysis, but the system shown in this document was a linear system and could not be associated nonlinearly. On the other hand, in the feed-forward type neural network, the pattern is input and the ideal output signal is input many times as a teacher, and the second document (“An Introduction to C
omputing with Neural Nets "by RPLippmann: IEEE.ASS
The back-propagation learning method shown in P: April 1987, pp. 4-22) can learn the nonlinear correspondence between the input pattern and the output signal.
(発明が解決しようとする問題点) 以上に述べたフィードフォワード型の神経回路網で
は、入力信号のベクトルに対し重みマトリクスを演算
し、その結果にシグモイド関数と呼び非線形な関数を掛
けて、結果のベクトル値を得て、さらに重みマトリクス
を演算し、シグモイド関数を掛けるという処理を神経回
路網の層数分だけ繰り返して出力信号を得る。この重み
マトリクスを初期的に乱数などにより定め、逆伝搬学習
により重みマトリクス値を修正し最適な値を求める。(Problems to be Solved by the Invention) In the feedforward type neural network described above, the weight matrix is calculated for the vector of the input signal, and the result is multiplied by a non-linear function called a sigmoid function to obtain the result. Is obtained, the weight matrix is further calculated, and a process of multiplying by a sigmoid function is repeated for the number of layers of the neural network to obtain an output signal. This weight matrix is initially determined by random numbers and the like, and the weight matrix value is corrected by back propagation learning to obtain an optimum value.
しかし、従来の学習方式では、出力信号と教師信号と
が一致せず、学習が終了していないにも関わらず、重み
マトリクスの修正が起こらない状態(学習停止状態)が
発生し、学習が進行しなくなることがある。However, in the conventional learning method, the output signal and the teacher signal do not match, and although the learning has not ended, a state in which the weight matrix is not corrected (learning stop state) occurs and the learning progresses. It may stop doing.
本願発明の目的は、上記の学習停止の状況を監視し
て、学習停止に陥った場合には、学習停止を回避して学
習を継続することができるパターン学習装置を提供する
ことにある。An object of the present invention is to provide a pattern learning device that monitors the above learning stop situation and, when learning stops, avoids learning stop and continues learning.
(問題を解決するための手段) 第1の本発明により得られるパターン学習装置は、逆
伝搬法により学習を行う入力層、出力層を含む複数の層
からなるフィードフォワード形の神経回路網と、神経回
路網内で用いられる重みマトリクスの修正量の総和を計
算して結果と、出力層の信号と教師信号との誤差の評価
量とから学習が停止しているか否か判定する手段と、学
習が停止している場合に各層からの出力信号を修正する
手段とを備えたことを特徴とする。(Means for Solving the Problem) A pattern learning device obtained according to the first aspect of the present invention is a feedforward type neural network composed of a plurality of layers including an input layer and an output layer for performing learning by a back propagation method, A means for determining whether or not learning is stopped based on the result of calculating the sum of correction amounts of the weight matrix used in the neural network and the evaluation amount of the error between the output layer signal and the teacher signal; And means for correcting the output signal from each layer when the layer is stopped.
第2の本発明により得られるパターン学習装置は、逆
伝搬法により学習を行う入力層、出力層を含む複数の層
からなるフィードフォワード形の神経回路網と、各層の
信号から計算した神経回路網内で用いられる重みマトリ
クスの修正量の評価値と、出力層の信号と教師信号との
誤差の評価量とから学習が停止しているか否かを判定す
る手段と、学習が停止している場合に各層からの出力信
号を修正する手段とを備えたことを特徴とする。A pattern learning device obtained according to the second aspect of the present invention is a feedforward type neural network consisting of a plurality of layers including an input layer and an output layer for performing learning by a back propagation method, and a neural network calculated from signals of each layer. Means for determining whether learning is stopped based on the evaluation value of the correction amount of the weight matrix used in the above and the evaluation amount of the error between the output layer signal and the teacher signal, and when the learning is stopped And means for modifying the output signal from each layer.
第3の本発明により得られるパターン学習装置は、逆
伝搬法により学習を行う入力層、出力を含む複数の層か
らなるフィードフォワード形の神経回路網と、神経回路
内で用いられるマトリクスの修正量の総和を計算した結
果と、出力層の信号と教師信号との誤差の評価量とから
学習が停止しているか否か判定する手段と、学習が停止
している場合に、入力層の信号を修正部分と、入力層以
外の層での出力信号をもとめるシグモイド関数の傾き制
御パラメータを修正する手段とを備えたことを特徴とす
る。A pattern learning device obtained according to the third aspect of the present invention is a feedforward type neural network composed of a plurality of layers including an input layer and an output for learning by a back propagation method, and a correction amount of a matrix used in the neural circuit. Means for determining whether learning is stopped based on the result of calculating the sum of the above and the evaluation amount of the error between the signal in the output layer and the teacher signal, and the signal in the input layer when the learning is stopped. It is characterized by comprising a correction part and a means for correcting the slope control parameter of the sigmoid function for obtaining the output signal in the layers other than the input layer.
第4の本発明により得られるパターン学習装置は、逆
伝搬法により学習を行う入力層、出力を含む複数の層か
らなるフィードフォワード形の神経回路網と、各層の信
号から計算した神経回路網内で用いられる重みマトリク
スの修正量の評価値と、出力層の信号と教師信号との誤
差の評価量とから学習が停止しているか否かを判定する
手段と、学習が停止している場合に、入力層の信号を修
正する手段と、入力層以外の層での出力信号をもとめる
シグモイド関数の傾き制御パラメータを修正する手段と
を備えたことを特徴とする。A pattern learning device obtained according to the fourth aspect of the present invention is a feedforward type neural network composed of a plurality of layers including an input layer and an output for learning by a back propagation method, and a neural network calculated from signals of each layer. Means for determining whether or not learning is stopped based on the evaluation value of the correction amount of the weight matrix used in, and the evaluation amount of the error between the output layer signal and the teacher signal, and when the learning is stopped, , And means for modifying the signal of the input layer, and means for modifying the tilt control parameter of the sigmoid function for obtaining the output signal in the layers other than the input layer.
第5の本発明により得られるパターン学習装置は、逆
伝搬法により学習を行う入力層、出力を含む複数の層か
らなるフィードフォワード形の神経回路網と、神経回路
内で用いられるマトリクスの修正量の総和を計算した結
果と、出力層の信号と教師信号との誤差の評価量とから
学習が停止しているか否か判定する手段と、学習が停止
している場合に、入力層の信号を修正する手段と、入力
層以外の層での出力信号をもとめるシグモイド関数の最
大値、最小値間のレンジを修正する手段とを備えたこと
を特徴とする。A pattern learning device obtained according to the fifth aspect of the present invention is a feedforward type neural network consisting of a plurality of layers including an input layer and an output for performing learning by a back propagation method, and a correction amount of a matrix used in the neural circuit. Means for determining whether learning is stopped based on the result of calculating the sum of the above and the evaluation amount of the error between the signal in the output layer and the teacher signal, and the signal in the input layer when the learning is stopped. It is characterized in that it comprises means for modifying, and means for modifying the range between the maximum value and the minimum value of the sigmoid function for obtaining the output signals in the layers other than the input layer.
第6の本発明により得られるパターン学習装置は、逆
逆伝搬法により学習を行う入力層、出力を含む複数の層
からなるフィードフォワード形の神経回路網と、各層の
信号から計算した神経回路網内で用いられる重みマトリ
クスの修正量の評価値と、出力層の信号と教師信号との
誤差の評価量とから学習が停止しているか否かを判定す
る手段と、学習が停止している場合に、入力層の信号を
修正する手段と、入力層以外の層での出力信号をもとめ
るシグモイド関数の最大値、最小値間のレンジを修正す
る手段とを備えたことを特徴とする。A pattern learning device obtained according to the sixth aspect of the present invention is a feedforward type neural network composed of a plurality of layers including an input layer and an output for performing learning by a back propagation method, and a neural network calculated from signals of each layer. Means for determining whether learning is stopped based on the evaluation value of the correction amount of the weight matrix used in the above and the evaluation amount of the error between the output layer signal and the teacher signal, and when the learning is stopped In addition, it is characterized by comprising means for modifying the signal of the input layer and means for modifying the range between the maximum value and the minimum value of the sigmoid function for obtaining the output signal in the layers other than the input layer.
(作用) 第1の発明では、学習停止状況を重みマトリクスの修
正量の総和が一定値以下になり、しかも出力信号と教師
信号との差がしきい値より大きい場合として観測し、そ
の場合に各層からの出力信号を修正して、重みマトリク
スの修正量が0となる要因を排除することにより、重み
マトリクスの修正を強制的に行い、学習停止を回避する
ことができる。(Operation) In the first invention, the learning stop situation is observed when the sum of the correction amounts of the weight matrix is less than or equal to a certain value, and the difference between the output signal and the teacher signal is larger than the threshold value. By correcting the output signal from each layer and eliminating the factor that the correction amount of the weight matrix becomes 0, the weight matrix can be forcibly corrected and the learning stop can be avoided.
第2の発明では、学習停止状況を重みマトリクスの修
正量の総和を調べるかわりに、各層の出力値ともう1層
下の層の出力値をもとに重みマトリクスの修正量を推定
し、その推定量が一定値以下になり、しかも出力信号と
教師信号との差がしきい値より大きい場合として観測
し、重みマトリクスの修正量を計算することなく学習停
止を検出できるようにする。学習停止の場合には各層か
らの出力信号を修正して、重みマトリクスの修正量が0
となる要因を排除することにより、重みマトリクスの修
正を強制的に行い、学習停止を回避することができる。In the second invention, instead of examining the sum of the correction amounts of the weight matrix for the learning stop situation, the correction amount of the weight matrix is estimated based on the output value of each layer and the output value of the layer one layer below, and Observing the case where the estimated amount is equal to or less than a certain value and the difference between the output signal and the teacher signal is larger than the threshold value, learning stop can be detected without calculating the correction amount of the weight matrix. When learning is stopped, the output signal from each layer is modified so that the modification amount of the weight matrix is 0.
By eliminating the factor that causes, the weight matrix can be forcibly modified and the learning stop can be avoided.
第3の発明では、学習停止状況を重みマトリクスの修
正量の総和が一定値以下になり、しかも出力信号と教師
信号との差がしきい値より大きい場合として観測し、そ
の場合に入力層以外の層での出力信号を計算するシグモ
イド関数の傾きを制御するパラメータを変更して、傾き
を緩やかにして、0や1の値が出力されにくくするとと
もに、入力層の信号の上限値、下限値により限定するこ
とによって、重みマトリクスの修正量が0となる要因を
排除することにより、重みマトリクスの修正を行い、学
習停止を回避することができる。In the third invention, the learning stop situation is observed when the sum of the correction amounts of the weight matrix is equal to or less than a certain value, and the difference between the output signal and the teacher signal is larger than the threshold value. The parameter that controls the slope of the sigmoid function that calculates the output signal in the layer is changed to make the slope gentle so that values of 0 and 1 are difficult to output, and the upper and lower limit values of the signal in the input layer are changed. By limiting the above, it is possible to correct the weight matrix and eliminate the learning stop by eliminating the factor in which the correction amount of the weight matrix becomes zero.
第4の発明では、学習停止状況を重みマトリクスの修
正量の総和を調べるかわりに、各層の出力値ともう1層
下の層の出力値をもとに重みマトリクスの修正量を推定
し、その推定量が一定値以下になり、しかも出力信号と
教師信号との差がしきい値より大きい場合として観測
し、重みマトリクスの修正量を計算することなく学習停
止を検出できるようにする。学習停止の場合には入力層
以外での層の出力信号を計算するシグモイド関数の傾き
を制御するパラメータを変更して、傾きを緩やかにし
て、0や1の値が出力されにくくするとともに、入力層
の信号を上限値、下限値により限定することによって、
重みマトリクスの修正量が0となる要因を排除すること
により、重みマトリクスの修正を強制的に行い、学習停
止を回避することができる。According to the fourth aspect of the invention, instead of checking the sum of the correction amounts of the weight matrix for the learning stop situation, the correction amount of the weight matrix is estimated based on the output value of each layer and the output value of the layer one layer below, and Observing the case where the estimated amount is equal to or less than a certain value and the difference between the output signal and the teacher signal is larger than the threshold value, learning stop can be detected without calculating the correction amount of the weight matrix. When learning is stopped, the parameter that controls the slope of the sigmoid function that calculates the output signal of layers other than the input layer is changed to make the slope gentle so that values of 0 and 1 are difficult to output, and By limiting the layer signal by the upper and lower limits,
By eliminating the factor in which the modification amount of the weight matrix becomes 0, the modification of the weight matrix is forcibly performed and the learning stop can be avoided.
第5の発明では、学習停止状況を重みマトリクスの修
正量の総和が一定値以下になり、しかも出力信号と教師
信号との差がしきい値より大きい場合として観測し、そ
の場合に入力層以外での層の出力信号を計算するシグモ
イド関数の最大最小値を制御するレンジパラメータを変
更して、0や1の値が出力されにくくするとともに、入
力層の信号を上限値、下限値により限定し、両者によっ
て重みマトリクスの修正量が0となる要因を排除して、
重み重みマトリクスの修正を行い、学習停止を回避する
ことができる。In the fifth invention, the learning stop situation is observed when the sum of the correction amounts of the weight matrix is equal to or less than a certain value and the difference between the output signal and the teacher signal is larger than the threshold value. Change the range parameter that controls the maximum and minimum values of the sigmoid function that calculates the output signal of the layer to make it difficult for values of 0 and 1 to be output, and limit the signal of the input layer by the upper and lower limits. , Eliminate the factor that the correction amount of the weight matrix becomes 0 by both,
Weights The weight matrix can be modified to avoid learning outages.
第6の発明では、学習停止状況を重みマトリクスの修
正量の総和を調べるかわりに、各層の出力値ともう1層
下の出力値をもとに重みマトリクスの修正量を推定し、
その推定量が一定値以下になり、しかも出力信号と教師
信号との差がしきい値より大きい場合として観測し、重
みマトリクスの修正量を計算することなく学習停止を検
出できるようにする。学習停止の場合には入力層以外で
の層の出力信号を計算するシグモイド関数の最大最小値
を制御するレンジパラメータを変更して、0や1の値が
出力されにくくするとともに、入力層の信号を上限値、
下限値により限定することによって、重みマトリクスの
修正量が0となる要因を排除することにより、重みマト
リクスの修正を強制的に行い、学習停止を回避すること
ができる。According to the sixth aspect of the invention, instead of checking the sum of the correction amounts of the weight matrix for the learning stop situation, the correction amount of the weight matrix is estimated based on the output value of each layer and the output value one layer below,
Observing that the estimated amount is below a certain value and the difference between the output signal and the teacher signal is larger than the threshold value, the learning stop can be detected without calculating the correction amount of the weight matrix. When learning is stopped, the range parameter that controls the maximum and minimum values of the sigmoid function that calculates the output signals of layers other than the input layer is changed to make it difficult for values of 0 and 1 to be output, Is the upper limit value,
By limiting the weight matrix by the lower limit value, it is possible to forcibly correct the weight matrix and eliminate learning stop by eliminating the factor that causes the correction amount of the weight matrix to be zero.
(実施例) 次に第1図から第15図を参照して本願発明の実施例に
ついて説明する。(Embodiment) Next, an embodiment of the present invention will be described with reference to FIGS. 1 to 15.
第1図及び第10図は第1の発明のパターン学習装置の
実施例を示すブロック図である。本願発明の学習装置
は、2層以上のフィードフォワード型のパターン学習装
置について適用可能であり、第1図では3層のフィード
フォワード型パターン学習装置について説明し、第10図
では2層のパターン学習装置について説明するが、4層
以上のパターン学習装置についても適用可能である。1 and 10 are block diagrams showing an embodiment of the pattern learning apparatus of the first invention. The learning device of the present invention is applicable to a feedforward type pattern learning device having two or more layers. FIG. 1 illustrates a feedforward type pattern learning device having three layers, and FIG. 10 shows two layers of pattern learning. Although the apparatus will be described, it is also applicable to a pattern learning apparatus having four or more layers.
まず第10図を参照して、第1の本発明のパターン学習
装置の2層の場合の実施例を説明をする。学習は、入力
パターンと教師信号を繰り返し与えることによりなされ
るが、まず1つの入力パターンと1つの教師信号を与え
た場合について説明する。予め、マトリクス積演算部で
用いられるマトリクスを蓄えるマトリクス記憶部1011は
乱数により初期化されているものとする。First, with reference to FIG. 10, an embodiment in the case of two layers of the pattern learning apparatus of the first present invention will be described. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. It is assumed that the matrix storage unit 1011 that stores the matrix used in the matrix product calculation unit is initialized by random numbers in advance.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値とした
端子1001より入力され、入力層記憶部1002に蓄えられ
る。入力層記憶部1002は、N0次元のベクトルを保持する
レジスタにより構成され、ベクトルの全要素はマトリク
ス積演算部1003に送られる。入力されるベクトル値をoi
0(1≦i≦N0)とし、重みマトリクス記憶部1011に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、出力層記憶部1005に保持されるベクトル値をo′
j 1(1≦j≦N1)とすると、マトリクス積演算部1003で
は、 なる計算をおこなう。ただし、ここでθj 1バイアス値で
あり、重みマトリクス記憶部1011に記憶される。結果の
oj 1(1≦j≦N1)は各々、s関数部1004において o′j 1={1+tanh(oj 1)}/2 (2) なる計算によりo′j 1をもとめ、出力信号として出力層
記憶部1005に記憶する。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 1001 and is stored in the input layer storage unit 1002. The input layer storage unit 1002 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 1003. Input vector values o i
0 (1 ≦ i ≦ N 0 ), and the matrix value held in the weight matrix storage unit 1011 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the output layer storage unit 1005 is o ′
If j 1 (1 ≦ j ≦ N 1 ), the matrix product operation unit 1003 Is calculated. However, here, it is the θ j 1 bias value and is stored in the weight matrix storage unit 1011. Of the result
o j 1 (1 ≦ j ≦ N 1) each of the s function unit 1004 o determine the j 1 'j 1 = {1 + tanh (o j 1)} / 2 (2) calculation o by comprising', as an output signal It is stored in the output layer storage unit 1005.
つぎに、重みマトリクスの修正処理の説明をする。 Next, the correction processing of the weight matrix will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子1020
より入力して教師信号記憶部1009に保持し、その値t
j(1≦j≦N1)と出力信号記憶部1005内の値o′j 1と
とを誤差信号計算部1010に転送して、誤差信号d′j 1を d′j 1=tj−o′j 1(1≦k≦N1) (3) として計算して、さらに出力信号o′j 1とから逆伝搬誤
差を評価し、 dj 1=d′j 1×oj 1×(1−oj 1) (4) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、その値をマトリクス修正部1013に転送する。さ
らに、誤差信号d′j 1は、マトリクス修正量計算部1016
にも転送され学習停止の観測に用いられる。For the output signal obtained by the above-mentioned feedforward processing, the ideal value of the teacher signal is set to the terminal 1020.
Input from the teacher signal storage unit 1009 and hold the value t
j (1 ≦ j ≦ N 1 ) and the value o ′ j 1 in the output signal storage unit 1005 are transferred to the error signal calculation unit 1010, and the error signal d ′ j 1 is d ′ j 1 = t j − o ′ j 1 (1 ≦ k ≦ N 1 ) (3), and the back propagation error is evaluated from the output signal o ′ j 1, and d j 1 = d ′ j 1 × o j 1 × ( 1-o j 1 ) (4) After calculating d j 1 (1 ≦ j ≦ N 1 ) by performing the equation, the value is transferred to the matrix correction unit 1013. Further, the error signal d ′ j 1 is calculated by the matrix correction amount calculation unit 1016.
Also used for observation of learning stop.
マトリクス修正部1013では、 wij 1=wij 1+a×dj 1×oi0 (5) θi 1=θi 1+b×dj 1 (6) なる計算により重みマトリクスを修正し、結果を再び重
みマトリクス記憶部1011に記憶する。ここで、a,bは正
値の係数であり、たとえば各々を0.2と0.1と設定するこ
とができるが、この値自体は本質的な問題ではない。The matrix correction unit 1013 corrects the weight matrix by the calculation of w ij 1 = w ij 1 + a × d j 1 × o i0 (5) θ i 1 = θ i 1 + b × d j 1 (6), and the result is It is stored again in the weight matrix storage unit 1011. Here, a and b are positive-valued coefficients, which can be set to 0.2 and 0.1, respectively, but these values themselves are not an essential problem.
マトリクス修正量計算部1016では、マトリクス修正部
1013で求められた重みマトリクスの修正量(a×dj 1×o
i 0)の総和を なる式を実行する計算により求める。ここで、|x|なる
計算は、xの絶対値を求める計算とする。さらに、出力
信号と教師信号との誤差の評価量を、(3)の実行によ
り求められた結果のd′j 1より なる式を実行することにより求め、さらに S<Th1 (9) E>Th2 なる条件判定を実行し、上記の(9)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部1017、出力層修正部1018に信号を送り、各層
の出力信号の修正を行う。実施例では、Th1を0.1とし
て、Th2を0.3としたが、これは本質的な問題ではない。
上記の条件を満たさない場合は学習停止状況にはないと
みなし、マトリクス修正量計算部1016から各層の修正部
への信号は出さない。In the matrix correction amount calculation unit 1016, the matrix correction unit
The correction amount of the weight matrix obtained in 1013 (a × d j 1 × o
i 0 ) sum It is calculated by executing the following equation. Here, the calculation | x | is a calculation for obtaining the absolute value of x. Furthermore, the evaluation amount of the error between the output signal and the teacher signal is calculated from d ′ j 1 of the result obtained by executing (3). The condition is S <Th1 (9) E> Th2, and if the condition expressed by the above formula (9) is satisfied, it is judged that the learning is stopped. Then, a signal is sent to the input layer correction unit 1017 and the output layer correction unit 1018 to correct the output signal of each layer. In the embodiment, Th1 is 0.1 and Th2 is 0.3, but this is not an essential problem.
When the above condition is not satisfied, it is considered that the learning is not stopped, and the matrix correction amount calculation unit 1016 does not output a signal to the correction unit of each layer.
学習停止の信号を受けた入力層修正部1017では、入力
層記憶部1002に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (10) なる計算を実行して入力値oi 0を修正して、再び入力記
憶部1002に格納する。この修正は第7図に示すように第
7図の701に示される曲線を、修正前の値とすると、こ
の曲線のUより大な部分Lより小な部分は各々第7図の
702,703のように修正をすることにより入力層の値が0
や1に近い値となることを避ける。ここで、Min(x,y)
とはx,yのうち小さい方を選択する関数を表し、Max(x,
y)とは、x,yのうち大きい方を選択する関数を表す。ま
た、Uは入力信号の上限値を表したとえば0.9とするこ
とができる。Lは入力信号の下限値を表したとえば0.1
とすることができる。しかし、U,Lの値は、0.9,0.1に限
らずどのような値でもよい。もちろんU>Lである。出
力層修正部1018でも、上記の(10)式と同様な計算を実
行して、出力層出力値を修正して、0や1に近い値とな
ることを避け、学習停止を引き起こすことをなくす。そ
の上で、再び式(3)から式(6)で示す計算を実行す
ることにより、学習を停止させず、重みマトリクスの修
正を実現する。The input layer correction unit 1017 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 1002, and o i 0 = Min (Max (o i 0 , L), U) (10 ) Is executed to correct the input value o i 0 and stored again in the input storage unit 1002. As shown in FIG. 7, if the curve shown by 701 in FIG. 7 is used as a value before the correction, the correction is performed such that a portion larger than U and a portion smaller than L are respectively shown in FIG.
The value of the input layer becomes 0 by modifying like 702,703.
Avoid getting close to 1 or 1. Where Min (x, y)
Is a function that selects the smaller of x and y, and Max (x,
y) is a function that selects the larger of x and y. U represents the upper limit value of the input signal and can be set to 0.9, for example. L represents the lower limit value of the input signal, for example 0.1
Can be However, the values of U and L are not limited to 0.9 and 0.1 and may be any value. Of course, U> L. The output layer correction unit 1018 also executes the same calculation as in the above equation (10) to correct the output layer output value so as to avoid a value close to 0 or 1 and prevent a learning stop. . Then, the calculations shown in the equations (3) to (6) are executed again to realize the correction of the weight matrix without stopping the learning.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
次に第1図を参照して、第1の本発明のパターン学習
装置を3層とした実施例の説明をする。学習は、入力パ
ターンと教師信号を繰り返し与えることによりなされる
が、まず1つの入力パターンと1つの教師信号を与えた
場合について説明する。予め、マトリクス積演算部で用
いられるマトリクスを蓄えるマトリクス記憶部111,112
は乱数により初期化しておく。Next, with reference to FIG. 1, an embodiment in which the pattern learning apparatus of the first aspect of the present invention has three layers will be described. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. Matrix storage units 111 and 112 for storing matrices used in the matrix product calculation unit in advance
Is initialized with a random number.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子101より入力され、入力層記憶部102に蓄えられる。
入力層記憶部102は、N0次元のベクトルを保持するレジ
スタにより構成され、ベクトルの全要素はマトリクス積
演算部103に送られる。入力されるベクトル値をoi 0(1
≦i≦N0)とし、第1層重みマトリクス記憶部112に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、中間層記憶部105に保持されるベクトル値をo′j
1(1≦j≦N1)とすると、マトリクス積演算部103で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、第1層重みマトリクス記憶部112に記憶され
る。結果のoj 1(1≦j≦N1)は各々、s関数部104にお
いて o′j 1={1+tanh(oj 1)}/2 (12) なる計算によりo′j 1をもとめ、中間層記憶部105に記
憶する。第2層重みマトリクス記憶部11に記憶される重
みマトリクスをwjk 2(1≦i≦N1、1≦j≦N2)とし、
同記憶部111に記憶されるバイアス値をθk 2とするとマ
トリクス演算部106では、 なる計算をおこなう。結果のok 2(1≦k≦N2)は各
々、s関数部107において o′k 2={1+tanh(o+ 2)}/2 (14) なる計算によりo′k 2をもとめ、出力信号として出力層
記憶部108に記憶される。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 101 and stored in the input layer storage unit 102.
The input layer storage unit 102 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 103. The input vector value is o i 0 (1
≦ i ≦ N 0 ) and the matrix value held in the first layer weight matrix storage unit 112 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the intermediate layer storage unit 105 is represented by o ′ j
If 1 (1 ≦ j ≦ N 1 ), the matrix product calculation unit 103 Is calculated. However, θ j 1 is a bias value, and is stored in the first layer weight matrix storage unit 112. Results of o j 1 (1 ≦ j ≦ N 1) each of the s function unit 104 o determine the j 1 'j 1 = {1 + tanh (o j 1)} / 2 (12) calculates o by comprising', intermediate It is stored in the layer storage unit 105. The weight matrix stored in the second layer weight matrix storage unit 11 is w jk 2 (1 ≦ i ≦ N 1 , 1 ≦ j ≦ N 2 ),
If the bias value stored in the storage unit 111 is θ k 2 , the matrix calculation unit 106 Is calculated. Results of o k 2 (1 ≦ k ≦ N 2) each of the s function unit 107 o determine the k 2 'k 2 = {1 + tanh (o + 2)} / 2 (14) calculates o by comprising' output It is stored in the output layer storage unit 108 as a signal.
つぎに、重みマトリクスの修正を行う逆伝搬処理の説
明をする。Next, the back propagation processing for correcting the weight matrix will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子102
より入力して教師信号記憶部109に保持し、その値t
k(1≦k≦N2)と出力信号記憶部108内の値o′k 2とと
を誤差信号計算部110に転送して、誤差信号d′k 2を d′k 2=tk−o′k 2(1≦k≦N2) (15) として計算して、さらに出力信号o′k 2とから逆伝搬誤
差を評価し、 dk 2=d′k 2×o′k 2×(1−o′k 2) (16) なる式を実行する計算によりdk 2(1≦k≦N2)を求め
た後に、その値をマトリクス修正部113と誤差逆伝搬部1
14に転送する。さらに、誤差信号d′k 2は、マトリクス
修正量計算部116にも転送され学習停止の観測に用いら
れる。With respect to the output signal obtained by the above-mentioned feedforward processing, the teacher signal which is an ideal value thereof is set to the terminal 102.
Input value and hold in the teacher signal storage unit 109, and the value t
k (1 ≦ k ≦ N 2 ) and the value o ′ k 2 in the output signal storage unit 108 are transferred to the error signal calculation unit 110, and the error signal d ′ k 2 is d ′ k 2 = t k − o ′ k 2 (1 ≦ k ≦ N 2 ) (15), and the back propagation error is evaluated from the output signal o ′ k 2, and d k 2 = d ′ k 2 × o ′ k 2 × (1−o ′ k 2 ) (16) After d k 2 (1 ≦ k ≦ N 2 ) is calculated by performing the equation, the value is used as the matrix correction unit 113 and the error back propagation unit 1
Transfer to 14. Further, the error signal d ′ k 2 is also transferred to the matrix correction amount calculation unit 116 and used for observation of learning stop.
マトリクス修正部113では、 wjk 2=wjk 2+a×dk 2×o′j 1 (17) θj 2=θj 2+b×dk 2 (18) なる計算により第2層重みマトリクスを修正し、結果を
再び第2層重みマトリクス記憶部111に記憶する。ここ
で、a,bは正値の係数であり、前述のとおりそれぞれ0.2
と0.1と設定できるが、この値は本質的な問題ではな
い。The matrix correction unit 113 calculates the second layer weight matrix by the calculation w jk 2 = w jk 2 + a × d k 2 × o ′ j 1 (17) θ j 2 = θ j 2 + b × d k 2 (18). The corrected result is stored again in the second layer weight matrix storage unit 111. Here, a and b are positive coefficient and 0.2
And 0.1 can be set, but this value is not an essential issue.
誤差計算部110で式(16)を実行する計算により求め
られたdk 2は、誤差逆伝搬部114に送られ、マトリクス記
憶部11内から転送された重みマトリクス値とともに、 の計算をし、さらに中間層記憶部105から転送された
o′j 1とから dj 1=d′j 1×o′j 1×(1−o′j 1) (20) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部115に転送して、 wij 1=wij 1+a×dj 1×oi 0 (21) θi 1=θi 1+b×dj 1 (22) なる式を実行する計算により第1層重みマトリクスを修
正し、結果を再び第1層重みマトリクス記憶部112に記
憶する。D k 2 obtained by the calculation of executing the equation (16) in the error calculation unit 110 is sent to the error back-propagation unit 114, and together with the weight matrix values transferred from the matrix storage unit 11, Is calculated, and the equation d j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (20) is executed from o ′ j 1 transferred from the intermediate layer storage unit 105. After calculating d j 1 (1 ≦ j ≦ N 1 ) by the calculation, it is transferred to the matrix correction unit 115 and w ij 1 = w ij 1 + a × d j 1 × o i 0 (21) θ i 1 = Θ i 1 + b × d j 1 (22) The first layer weight matrix is corrected by the calculation to execute the equation, and the result is stored again in the first layer weight matrix storage unit 112.
マトリクス修正量計算部116では、マトリクス修正部1
13,115で求められた重みマトリクスの修正量(a×dk 2
×o′j 1、a×dj 1×oi 0)の総和を なる式を実行する計算により求める。ここで、|x|なる
計算は、xの絶対値を求める計算とする。さらに、出力
信号と教師信号との誤差の評価量を、(15)式の実行に
より求められた結果のd′k 2より なる式を実行することにより求め、さらに S<Th1 (25) E>Th2 なる条件判定を実行し、上記の(25)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部117、出力層修正部118、出力層修正部119に
信号を送り、各層の出力信号の修正を行う。上記の条件
を満たさない場合は学習停止状況にはないとみなし、マ
トリクス修正量計算部116から各層の修正部への信号は
出さない。In the matrix correction amount calculation unit 116, the matrix correction unit 1
The correction amount (a × d k 2
Xo ′ j 1 , a × d j 1 × o i 0 ) It is calculated by executing the following equation. Here, the calculation | x | is a calculation for obtaining the absolute value of x. Furthermore, the evaluation amount of the error between the output signal and the teacher signal is calculated from d ′ k 2 of the result obtained by executing the equation (15). It is determined by executing the following formula, and the condition judgment of S <Th1 (25) E> Th2 is executed. If the condition expressed by the above formula (25) is satisfied, it is judged that the learning is stopped. Then, a signal is sent to the input layer correction unit 117, the output layer correction unit 118, and the output layer correction unit 119 to correct the output signal of each layer. When the above conditions are not satisfied, it is considered that the learning is not stopped, and the matrix correction amount calculation unit 116 does not output a signal to the correction unit of each layer.
学習停止の信号を受けた入力層修正部117では、入力
層記憶部102に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (26) なる計算を実行して入力値oi 0を修正して、再び入力記
憶部102に格納し、第7図で説明したように入力層の値
が0や1に近い値となることを避ける。ここで、Min
(x,y)とはx,yのうち小さい方を選択する関数を表し、
Max(x,y)とは、x,yのうち大きい方を選択する関数を
表す。なお、U,Lの値は前述のとおりである。中間層修
正部118や出力層修正部119でも、上記の(26)式と同様
な計算を実行して、中間層出力値を修正して、0や1に
近い値となることを避け、学習停止を引き起こすことを
なくす。その上で、再び式(15)から式(22)で示す計
算を実行することにより、学習を停止させず、重みマト
リクスの修正を実現する。The input layer correction unit 117, which has received the learning stop signal, reads the value o i 0 held in the input layer storage unit 102, and o i 0 = Min (Max (o i 0 , L), U) (26 ) Is executed to correct the input value o i 0 and then stored again in the input storage unit 102 to avoid that the value of the input layer becomes close to 0 or 1 as described in FIG. . Where Min
(X, y) is a function that selects the smaller of x and y,
Max (x, y) represents a function that selects the larger of x and y. The values of U and L are as described above. Also in the middle layer correction unit 118 and the output layer correction unit 119, the same calculation as in the above equation (26) is executed to correct the middle layer output value so as to avoid a value close to 0 or 1 and learn. Eliminates causing outages. Then, the calculations shown in Expressions (15) to (22) are executed again to realize the correction of the weight matrix without stopping the learning.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
次に第11図を参照して、第2の本発明のパターン学習
装置で2層とした場合の実施例の説明をする。学習は、
入力パターンと教師信号を繰り返し与えることによりな
されるが、まず1つの入力パターンと1つの教師信号を
与えた場合について説明する。予め、マトリクス積演算
部で用いられるマトリクスを蓄えるマトリクス記憶部11
11は乱数により初期化しておく。Next, with reference to FIG. 11, an embodiment in which the pattern learning apparatus of the second aspect of the present invention has two layers will be described. Learning
This is done by giving an input pattern and a teacher signal repeatedly. First, a case where one input pattern and one teacher signal are given will be described. A matrix storage unit 11 that stores the matrix used in the matrix product calculation unit in advance.
11 is initialized by a random number.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子1101より入力され、入力層記憶部1102に蓄えられ
る。入力層記憶部1102は、N0次元のベクトルを保持する
レジスタにより構成され、ベクトルの全要素はマトリク
ス積演算部1103に送られる。入力されるベクトル値をo
i0(1≦i≦N0)とし、重みマトリクス記憶部1111に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、出力層記憶部1105に保持されるベクトル値をo′
j 1(1≦j≦N1)とすると、マトリクス積演算部1103で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、重みマトリクス記憶部に記憶される。結果oj 1
(1≦j≦N1)は各々、s関数部1104において o′j 1={1+tanh(oj 1)}/2 (28) なる計算によりo′j 1をもとめ、出力層記憶部1105に記
憶する。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 1101 and stored in the input layer storage unit 1102. The input layer storage unit 1102 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 1103. Input vector value o
i0 (1 ≦ i ≦ N 0 ) and then, the matrix value held in the weight matrix storage unit 1111 w ij 1 (1 ≦ i ≦ N 0, 1 ≦ j ≦
N 1 ), the vector value held in the output layer storage unit 1105 is o ′
If j 1 (1 ≦ j ≦ N 1 ), the matrix product calculation unit 1103 Is calculated. However, here θ j 1 is a bias value and is stored in the weight matrix storage unit. Result o j 1
(1 ≦ j ≦ N 1 ) is calculated in the s-function unit 1104 as o ′ j 1 = {1 + tanh (o j 1 )} / 2 (28), and o ′ j 1 is obtained and stored in the output layer storage unit 1105. Remember.
つぎに学習停止の判定を行う部分の動作について説明
する。Next, the operation of the part that determines the learning stop will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理性的な値である教師信号を端子1102
より入力して教師信号記憶部1109に保持し、その値t
j(1≦j≦N1)と出力信号記憶部1105内の値o′j 1と
とを誤差信号計算部1110に転送して、誤差信号d′j 1を d′j 1=tj−o′j 1(1≦j≦N1) (29) として計算する。その結果はマトリクス修正量推定部11
16に送られ、学習停止の判定のための誤差評価量Eを なる式で表される計算を実行することにより求める。さ
らに出力層記憶部1105からo′j 1(1≦j≦N1)を、入
力層記憶部1102からoi 0(1≦i≦N0)をマトリクス修
正量推定部1116に転送し、マトリクス修正量の推定値
S′を以下の式で計算する。With respect to the output signal obtained by the above-mentioned feedforward processing, the teacher signal, which is a rational value, is set to the terminal 1102.
Input value and hold it in the teacher signal storage unit 1109.
j (1 ≦ j ≦ N 1 ) and the value o ′ j 1 in the output signal storage unit 1105 are transferred to the error signal calculation unit 1110, and the error signal d ′ j 1 is d ′ j 1 = t j − o ′ j 1 (1 ≦ j ≦ N 1 ) (29) The result is the matrix correction amount estimation unit 11
The error evaluation amount E for determining the learning stop is sent to 16 It is obtained by executing the calculation represented by the following equation. Further, o ′ j 1 (1 ≦ j ≦ N 1 ) is transferred from the output layer storage unit 1105 and o i 0 (1 ≦ i ≦ N 0 ) is transferred from the input layer storage unit 1102 to the matrix correction amount estimation unit 1116, and the matrix The estimated value S'of the correction amount is calculated by the following formula.
なる式を実行する計算により求める。さらに、マトリク
ス修正量推定部1116において出力信号と教師信号との誤
差の評価量を、 S′<Th1 E>Th2 (32) なる条件判定を実行し、上記の(32)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部1117、出力層修正部1118に信号を送り、各層
の出力信号の修正を行う。上記の条件を満たさない場合
は学習停止状況にはないとみなし、マトリクス修正量計
算部1116から各層の修正部への信号は出さない。 It is calculated by executing the following equation. Further, in the matrix correction amount estimation unit 1116, the evaluation amount of the error between the output signal and the teacher signal is subjected to the condition determination of S ′ <Th1 E> Th2 (32), and the condition represented by the above equation (32) is satisfied. If the condition is satisfied, it is determined that the learning is stopped, and a signal is sent to the input layer correction unit 1117 and the output layer correction unit 1118 to correct the output signal of each layer. If the above conditions are not satisfied, it is considered that the learning is not stopped, and no signal is output from the matrix correction amount calculation unit 1116 to the correction unit of each layer.
この判定条件は、誤差の評価量Eが大きいにも関わら
ず、重みマトリクスの修正量Sが0に近い場合には、学
習停止とみなしている。This determination condition considers that learning is stopped when the correction amount S of the weight matrix is close to 0 in spite of the large error evaluation amount E.
学習停止の信号を受けた入力層修正部1117では、入力
層記憶部1102に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (33) なる計算を実行して入力値oi 0を修正して、再び入力層
記憶部1102に格納し、入力層の値が0や1に近い値とな
ることを避ける。出力層修正部1118でも、上記の(33)
式と同様な計算を実行して、中間層出力や出力層出力値
を修正して、0や1に近い値となり、学習停止を引き起
こすことをなくす。The input layer correction unit 1117, which has received the learning stop signal, reads out the value o i 0 held in the input layer storage unit 1102, and o i 0 = Min (Max (o i 0 , L), U) (33 ) Is performed to correct the input value o i 0 and store it again in the input layer storage unit 1102 to avoid the value of the input layer becoming close to 0 or 1. The output layer correction unit 1118 also has the above (33)
The calculation similar to the formula is executed to correct the intermediate layer output and the output layer output value so that the value becomes close to 0 or 1 and the learning stop is not caused.
最後に、修正された各層の信号記憶部1102,1105の値
を用いて重みマトリクスの修正を行う逆伝搬処理の説明
をする。Finally, the back propagation processing for correcting the weight matrix using the corrected values of the signal storage units 1102 and 1105 of the respective layers will be described.
誤差計算部1110で予め式(29)に従って求められてい
るd′j 1と出力信号記憶部に保持される出力信号o′j 1
とから逆伝搬誤差を評価し、 dj 1=d′j 1×o′j 1×(1−o′j 1) (34) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部1112に転送して、 wij 1=wij 1+a×dj 1×oi 0 (35) θi 1=θi 1+b×dj 1 (36) なる式を実行する計算により重みマトリクスを修正し、
結果を再び重みマトリクス記憶部1111に記憶する。Error calculator 'output signal o is held at the j 1 and the output signal storage unit' advance d which is determined according to equation (29) in 1110 j 1
The back-propagation error is evaluated from and d j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (34) is calculated to execute d j 1 (1 ≦ j ≦ N 1 ) is obtained and then transferred to the matrix correction unit 1112, and w ij 1 = w ij 1 + a × d j 1 × o i 0 (35) θ i 1 = θ i 1 + b × d j 1 (36) Modify the weight matrix by a calculation that implements
The result is stored again in the weight matrix storage unit 1111.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
第2図は第2の本発明のパターン学習装置を3層のフ
ィードフォワード型の実施例を示す図である。パターン
学習は、入力パターンと教師信号を繰り返し与えること
によりなされるが、まず1つの入力パターンと1つの教
師信号を与えた場合について説明する。予め、マトリク
ス積演算部で用いられるマトリクスを蓄えるマトリクス
記憶部211,212は乱数により初期化しておく。FIG. 2 is a diagram showing an embodiment of a feedforward type of three layers of the pattern learning apparatus of the second invention. The pattern learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. The matrix storage units 211 and 212 that store the matrix used in the matrix product calculation unit are initialized in advance with random numbers.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子201より入力され、入力層記憶部102に蓄えられる。
入力層記憶部202は、N0次元のベクトルを保持するレジ
スタにより構成され、ベクトルの全要素はマトリクス積
演算部203に送られる。入力されるベクトル値をoi 0(1
≦i≦N0)とし、第1層重みマトリクス記憶部212に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、中間層記憶部205に保持されるベクトル値をo′j
1(1≦j≦N1)とすると、マトリクス積演算部203で
は、 なる計算をおこなう。ただし、ここでθj 1バイアス値で
あり、第1層重みマトリクス記憶部212に記憶される。
結果のoj 1(1≦j≦N1)は各々、s関数部204において o′j 1={1+tanh(oj 1)}/2 (38) なる計算によりo′j 1をもとめ、中間層記憶部205に記
憶する。第2層重みマトリクス記憶部211に記憶される
重みマトリクスをwjk 2(1≦i≦N1、1≦j≦N2)と
し、同記憶部211に記憶されるバイアス値をθk 2とする
とマトリクス演算部206では、 なる計算をおこなう。結果のok 2(1≦k≦N2)は各
々、s関数部207において o′k 2={1+tanh(ok 2)}/2 (40) なる計算によりo′k 2をもとめ、出力信号として出力層
記憶部208に記憶される。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 201 and stored in the input layer storage unit 102.
The input layer storage unit 202 is configured by a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 203. The input vector value is o i 0 (1
≦ i ≦ N 0 ), and the matrix value held in the first layer weight matrix storage unit 212 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the intermediate layer storage unit 205 is represented by o ′ j
If 1 (1 ≦ j ≦ N 1 ), the matrix product calculation unit 203 Is calculated. However, here, it is the θ j 1 bias value and is stored in the first layer weight matrix storage unit 212.
Results of o j 1 (1 ≦ j ≦ N 1) each of the s function unit 204 o determine the j 1 'j 1 = {1 + tanh (o j 1)} / 2 (38) calculates o by comprising', intermediate It is stored in the layer storage unit 205. The weight matrix stored in the second layer weight matrix storage unit 211 is w jk 2 (1 ≦ i ≦ N 1 , 1 ≦ j ≦ N 2 ), and the bias value stored in the storage unit 211 is θ k 2 . Then, in the matrix calculation unit 206, Is calculated. Results of o k 2 (1 ≦ k ≦ N 2) each of the s function unit 207 o determine the k 2 'k 2 = {1 + tanh (o k 2)} / 2 (40) calculates o by comprising' output It is stored in the output layer storage unit 208 as a signal.
つぎに学習停止の判定を行う部分の動作について説明
する。Next, the operation of the part that determines the learning stop will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子220
より入力して教師信号記憶部209に保持し、その値t
k(1≦k≦N2)と出力信号記憶部208内の値o′k 2とと
を誤差信号計算部210に転送して、誤差信号d′k 2を d′k 2=tk−o′k 2(1≦k≦N2) (41) として計算する。その結果はマトリクス修正量推定部に
送られ、学習停止の判定のための誤差評価量Eを なる式で表される計算を実行することにより求める。さ
らに出力層記憶部208からo′k 2(1≦k≦N2)を、中
間層記憶部205からo′j 1(1≦j≦N1)を、入力層記
憶部202からoi 0(1≦i≦N0)をマトリクス修正量推定
部216に転送し、マトリクス修正量の推定値S′を以下
の式で計算する。With respect to the output signal obtained by the above-mentioned feedforward processing, the teacher signal that is an ideal value thereof is set to the terminal 220.
Input from the teacher signal storage unit 209 and hold the value t
k (1 ≦ k ≦ N 2 ) and the value o ′ k 2 in the output signal storage unit 208 are transferred to the error signal calculation unit 210, and the error signal d ′ k 2 is d ′ k 2 = t k − It is calculated as o ′ k 2 (1 ≦ k ≦ N 2 ) (41). The result is sent to the matrix correction amount estimation unit, and the error evaluation amount E for determining learning stop is calculated. It is obtained by executing the calculation represented by the following equation. Further, o ′ k 2 (1 ≦ k ≦ N 2 ) from the output layer storage unit 208, o ′ j 1 (1 ≦ j ≦ N 1 ) from the intermediate layer storage unit 205, and o i 0 from the input layer storage unit 202. (1 ≦ i ≦ N 0 ) is transferred to the matrix correction amount estimation unit 216, and the matrix correction amount estimated value S ′ is calculated by the following formula.
なる式を実行する計算により求める。さらに、マトリク
ス修正量推定部216において出力信号と教師信号との誤
差の評価量を、 S′<Th1 E>Th2 (44) なる条件判定を実行し、上記の(44)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部217、中間層修正部218、出力層修正部219に
信号を送り、各層の出力信号の修正を行う。上記の条件
を満たさない場合は学習停止状況にはないとみなし、マ
トリクス修正量計算部216から各層の修正部への信号は
出さない。 It is calculated by executing the following equation. Further, in the matrix correction amount estimation unit 216, the evaluation amount of the error between the output signal and the teacher signal is subjected to the condition determination S '<Th1 E> Th2 (44), and the condition represented by the above formula (44) is satisfied. If the condition is satisfied, it is determined that the learning is stopped, and a signal is sent to the input layer correction unit 217, the intermediate layer correction unit 218, and the output layer correction unit 219 to correct the output signal of each layer. If the above conditions are not satisfied, it is considered that the learning is not stopped, and no signal is output from the matrix correction amount calculation unit 216 to the correction unit of each layer.
この判定条件は、誤差の評価量Eが大きいにも関わら
ず、重みマトリクスの修正量Sが0に近い場合には、学
習停止とみなしている。This determination condition considers that learning is stopped when the correction amount S of the weight matrix is close to 0 in spite of the large error evaluation amount E.
学習停止の信号を受けた入力層修正部217では、入力
層記憶部212に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (45) なる計算を実行して入力値oi 0を修正して、再び入力層
記憶部202に格納し、入力層の値が0や1に近い値とな
ることを避ける。中間層修正部218や出力層修正部219で
も、上記の(45)式と同様な計算を実行して、中間層出
力値を修正して、0や1に近い値となり、学習停止を引
き起こすことをなくす。The input layer correction unit 217 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 212, and o i 0 = Min (Max (o i 0 , L), U) (45 ) Is performed to correct the input value o i 0 and then stored again in the input layer storage unit 202 to prevent the value of the input layer from becoming a value close to 0 or 1. The middle layer correction unit 218 and the output layer correction unit 219 also perform the same calculation as in the above formula (45) to correct the middle layer output value to a value close to 0 or 1 and cause learning stop. Get rid of.
最後に、修正された各層の信号記憶部202,205,208の
値を用いて重みマトリクスの修正を行う逆伝搬処理の説
明をする。Finally, the back propagation processing for modifying the weight matrix using the modified values of the signal storage units 202, 205, 208 of the respective layers will be described.
誤差計算部210で予め式(41)に従って求められてい
るd′j 2と出力信号記憶部に保持される出力信号o′k 2
から逆伝搬誤差を評価し、 dk 2=d′k 2×o′k 2×(1−o′k 2) (46) なる式を実行する計算によりdk 2(1≦k≦N2)を求め
た後に、その値をマトリクス修正部213と誤差逆伝搬部2
14に転送する。さらに、誤差信号d′k 2は、マトリクス
修正量計算部216にも転送され学習停止の観測に用いら
れる。Error calculator 210 in advance expression 'output signal o is held in the j 2 and the output signal storage unit' d which is determined in accordance with (41) k 2
Then, the back propagation error is evaluated from d k 2 = d ′ k 2 × o ′ k 2 × (1−o ′ k 2 ) (46), and the calculation is carried out to obtain d k 2 (1 ≦ k ≦ N 2 ) Is obtained, and the obtained value is calculated by the matrix correction unit 213 and the error back propagation unit 2
Transfer to 14. Further, the error signal d ′ k 2 is also transferred to the matrix correction amount calculation unit 216 and used for observation of learning stop.
マトリクス修正部213では、 wjk 2=wjk 2+a×dk 2×o′j 1 (47) θj 2=θj 2+b×dk 2 (48) なる計算により第2層重みマトリクスを修正し、結果を
再び第2層重みマトリクス記憶部211に記憶する。In the matrix correction unit 213, the second layer weight matrix is calculated by the calculation w jk 2 = w jk 2 + a × d k 2 × o ′ j 1 (47) θ j 2 = θ j 2 + b × d k 2 (48). The corrected result is stored again in the second layer weight matrix storage unit 211.
誤差計算部210で式(46)を実行する計算により求め
られたdk 2、誤差逆伝搬部214に送られ、マトリクス記憶
部211内から転送された重みマトリクス値ととに、 の計算をし、さらに中間層記憶部205から転送された
o′j 1とから dj 1=d′j 1×o′j 1×(1−o′j 1) (50) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部215に転送して、 wij 1=wij 1+a×dj 1×oi 0 (51) θi 1=θi 1+b×dj 1 (52) なる式を実行する計算により第1層重みマトリクスを修
正し、結果を再び第1層重みマトリクス記憶部212に記
憶する。In the error calculation unit 210, d k 2 calculated by executing the equation (46), the weight matrix value transmitted to the error back propagation unit 214, and transferred from the matrix storage unit 211, Is calculated, and the equation d j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (50) is executed from o ′ j 1 transferred from the intermediate layer storage unit 205. After calculating d j 1 (1 ≦ j ≦ N 1 ) by the calculation, it is transferred to the matrix correction unit 215 and w ij 1 = w ij 1 + a × d j 1 × o i 0 (51) θ i 1 = Θ i 1 + b × d j 1 (52) The first layer weight matrix is corrected by the calculation to execute the equation, and the result is stored again in the first layer weight matrix storage unit 212.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
次に第12図を参照して、第3の本発明のパターン学習
装置の2層の場合の実施例の説明をする。学習は、入力
パターンと教師信号を繰り返し与えることによりなされ
るが、まず1つの入力パターンと1つの教師信号を与え
た場合について説明する。予め、マトリクス積演算部で
用いられるマトリクスを蓄えるマトリクス記憶部1211は
乱数により初期化しておく。Next, with reference to FIG. 12, an embodiment of the pattern learning apparatus of the third aspect of the present invention having two layers will be described. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. The matrix storage unit 1211 that stores the matrix used in the matrix product calculation unit is initialized in advance with random numbers.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子1201より入力され、入力層記憶部1202に蓄えられ
る。入力層記憶部1202は、N0次元のベクトルを保持する
レジスタにより構成され、ベクトルの全要素はマトリク
ス積演算部1203に送られる。入力されるベクトリ値をoi
0(1≦i≦N0)とし、重みマトリクス記憶部1212に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、出力層記憶部1205に保持されるベクトル値をo′
j 1(1≦j≦N1)とすると、マトリクス積演算部1203で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、重みマトリクス記憶部に記憶される。結果のoj
1(1≦j≦N1)は各々、s関数部1204において o′j 1={1+tanh(oj 1/U0)}/2 (54) なる計算によりo′j 1をもとめ、出力信号として出力層
記憶部1205に記憶する。実施例では初期的にはU0は0.75
とした。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 1201 and stored in the input layer storage unit 1202. The input layer storage unit 1202 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 1203. The input vector value is o i
0 (1 ≦ i ≦ N 0 ), and the matrix value held in the weight matrix storage unit 1212 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the output layer storage unit 1205 is set to o ′
If j 1 (1 ≦ j ≦ N 1 ), the matrix product operation unit 1203 Is calculated. However, here θ j 1 is a bias value and is stored in the weight matrix storage unit. The resulting o j
1 (1 ≦ j ≦ N 1 ) each of which obtains the j 1 'o by j 1 = {1 + tanh ( o j 1 / U0)} / 2 (54) comprising calculation' in s function unit 1204 o, as an output signal It is stored in the output layer storage unit 1205. In the embodiment, U0 is 0.75 initially.
And
つぎに、重みマトリクスの修正処理の説明をする。 Next, the correction processing of the weight matrix will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子1220
より入力して教師信号記憶部1209に保持し、その値t
j(1≦j≦N1)と出力信号記憶部1205内の値o′j 1と
とを誤差信号計算部1210に転送して、誤差信号d′j 1を d′j 1=tj−o′j 1(1≦j≦N1) (55) として計算して、さらに出力信号o′j 1とから逆伝搬誤
差を評価し、 dj 1=d′j 1×o′j 1×(1−o′j 1) (56) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、その値をマトリクス修正部1213に転送する。さ
らに、誤差信号dj 1は、マトリクス修正量計算部1216に
も転送され学習停止の観測に用いられる。With respect to the output signal obtained by the above-mentioned feedforward processing, the ideal value of the teacher signal is set to the terminal 1220.
Input from the teacher signal storage unit 1209 and hold the value t
j (1 ≦ j ≦ N 1 ) and the value o ′ j 1 in the output signal storage unit 1205 are transferred to the error signal calculation unit 1210, and the error signal d ′ j 1 is d ′ j 1 = t j − o ′ j 1 (1 ≦ j ≦ N 1 ) (55), and the back propagation error is evaluated from the output signal o ′ j 1 and d j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (56) After d j 1 (1 ≦ j ≦ N 1 ) is obtained by the calculation for executing the equation, the value is transferred to the matrix correction unit 1213. Further, the error signal d j 1 is also transferred to the matrix correction amount calculation unit 1216 and used for observation of learning stop.
マトリクス修正部1213では、 wij 1=wij 1+a×dj 1×oi 0 (57) θi 1=θi 1+b×dj 1 (58) なる計算により重みマトリクスを修正し、結果を再び重
みマトリクス記憶部1211に記憶する。The matrix correction unit 1213 corrects the weight matrix by a calculation of w ij 1 = w ij 1 + a × d j 1 × o i 0 (57) θ i 1 = θ i 1 + b × d j 1 (58) Is again stored in the weight matrix storage unit 1211.
マトリクス修正量計算部1216では、マトリクス修正部
1213で求められた重みマトリクスの修正量(a×dj 0×o
i 0)の総和を なる式を実行する計算により求める。さらに、出力信号
と教師信号との誤差の評価量を、(123)の実行により
求められた結果のd′j 1より なる式を実行することにより求め、さらに S<Th1 (61) E>Th2 なる条件判定を実行し、上記の(61)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部1217、出力層のU0修正部1218に信号を送り、
各層の出力信号を再計算する。上記の条件を満たさない
場合は学習停止状況にはないとみなし、マトリクス修正
量計算部1216から各層の修正部への信号は出さない。In the matrix correction amount calculation unit 1216, the matrix correction unit
1213 Weight matrix correction amount (a × d j 0 × o
i 0 ) sum It is calculated by executing the following equation. Furthermore, the evaluation amount of the error between the output signal and the teacher signal is calculated from d ′ j 1 of the result obtained by executing (123). The condition is S <Th1 (61) E> Th2, and if the condition expressed by the above formula (61) is satisfied, it is judged that the learning is stopped. Then, send a signal to the input layer correction unit 1217, the output layer U0 correction unit 1218,
Recalculate the output signal of each layer. If the above conditions are not satisfied, it is considered that the learning is not stopped, and no signal is output from the matrix correction amount calculation unit 1216 to the correction unit of each layer.
学習停止の信号を受けた入力層修正部1217では、入力
層記憶部1202に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L)U) (62) なる計算を実行して入力値oi 0を修正して、再び入力記
憶部1202に格納し、第7図に示すように入力層の値が0
や1に近い値となることを避ける。The input layer correction unit 1217 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 1202, and o i 0 = Min (Max (o i 0 , L) U) (62) Then, the input value o i 0 is corrected and stored again in the input storage unit 1202. As shown in FIG. 7, the value of the input layer is 0.
Avoid getting close to 1 or 1.
出力層でのU0修正部1218では、 U0=U0×c (63) なる式の計算を実現して、第8図に示すようにシグモイ
ド関数の傾きを緩やかにして、出力層出力値を再計算
し、それらが0や1に近い値となることを避け、学習停
止を引き起こすことをなくす。実施例ではパラメータc
を便宜上2とした。その上で、再び式(55)から式(5
8)で示す計算を実行することにより、重みマトリクス
の修正を実現する。1回の学習の終了後にはU0を再度初
期化する。The U0 correction unit 1218 in the output layer realizes the calculation of the formula U0 = U0 × c (63) to make the slope of the sigmoid function gentle as shown in FIG. 8 and recalculate the output layer output value. However, avoiding those values being close to 0 and 1 and preventing learning stop. In the embodiment, the parameter c
Was set to 2 for convenience. Then, again from equation (55) to equation (5
The weight matrix is modified by executing the calculation shown in 8). After the end of one learning, U0 is initialized again.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
第3図は第3の発明のパターン学習装置3層の場合の
実施例を示す図である。学習は、入力パターンと教師信
号を繰り返し与えることによりなされるが、まず1つの
入力パターンと1つの教師信号を与えた場合について説
明す。予め、マトリクス積演算部で用いられるマトリク
スを蓄えるマトリクス記憶部311,312は乱数により初期
化しておく。FIG. 3 is a diagram showing an embodiment in the case of three layers of the pattern learning device of the third invention. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. The matrix storage units 311 and 312 for storing the matrix used in the matrix product calculation unit are initialized in advance with random numbers.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子301より入力され、入力層記憶部302に蓄えられる。
入力層記憶部302は、N0次元のベクトルを保持するレジ
スタにより構成され、ベクトルの全要素はマトリクス積
演算部303に送られる。入力されるベクトル値をoi 0(1
≦i≦N0)とし、第1層重みマトリクス記憶部312に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、中間層記憶部305に保持されるベクトル値をo′j
1(1≦j≦N1)とすると、マトリクス積演算部303で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、第1層重みマトリクス記憶部に記憶される。結
果のoj 1(1≦j≦N1)は各々、s関数部304において o′j 1={1+tanh(oj 1/U0)}/2 (65) なる計算によりo′j 1をもとめ、出力層記憶部305に記
憶する。実施例では初期的にはU0は0.75とした。第2層
重みマトリクス記憶部211に記憶される重みマトリクス
をwjk 2(1≦i≦N1、1≦j≦N2)とし、同記憶部211
に記憶されるバイアス値をθk 2とするとマトリクス演算
部206では、 なる計算をおこなう。結果のok 2(1≦k≦N2)は各
々、s関数部307において o′k 2={1+tanh(ok 2)/U0}/2 (67) なる計算によりo′k 2をもとめ、出力信号として出力層
記憶部308に記憶される。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 301 and is stored in the input layer storage unit 302.
The input layer storage unit 302 is composed of a register that holds N 0 -dimensional vectors, and all elements of the vectors are sent to the matrix product calculation unit 303. The input vector value is o i 0 (1
≦ i ≦ N 0 ) and the matrix value held in the first layer weight matrix storage unit 312 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the intermediate layer storage unit 305 is represented by o ′ j
If 1 (1 ≦ j ≦ N 1 ), the matrix product operation unit 303 Is calculated. Here, θ j 1 is a bias value and is stored in the first layer weight matrix storage unit. Results of o j 1 (1 ≦ j ≦ N 1) are each determined to j 1 'o by j 1 = {1 + tanh ( o j 1 / U0)} / 2 (65) comprising calculating' s in the function unit 304 o , In the output layer storage unit 305. In the example, U0 was initially set to 0.75. The weight matrix stored in the second layer weight matrix storage unit 211 is w jk 2 (1 ≦ i ≦ N 1 , 1 ≦ j ≦ N 2 ) and the storage unit 211
If the bias value stored in is set to θ k 2 , the matrix calculation unit 206 Is calculated. Results of o k 2 (1 ≦ k ≦ N 2) are each determined to k 2 'o by k 2 = {1 + tanh ( o k 2) / U0} / 2 (67) comprising calculation' in s function section 307 o , And is stored in the output layer storage unit 308 as an output signal.
つぎに、重みマトリクスの修正を行う逆伝搬処理の説
明をする。Next, the back propagation processing for correcting the weight matrix will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子302
より入力して教師信号記憶部309に保持し、その値t
k(1≦k≦N2)と出力信号記憶部308内の値o′k 2とと
を誤差信号計算部130に転送して、誤差信号d′k 2を d′k 2=tk−o′k 2(1≦k≦N2) (68) として計算して、さらに出力信号o′k 2とから逆伝搬誤
差を評価し、 dk 2=d′k 2×o′k 2×(1−o′k 2) (69) なる式を実行する計算によりdk 2(1≦k≦N2)を求め
た後に、その値をマトリクス修正部313と誤差逆伝搬部3
14に転送する。さらに、誤差信号dk 2は、マトリクス修
正量計算部316にも転送され学習停止の観測に用いられ
る。With respect to the output signal obtained by the above-mentioned feedforward processing, the teacher signal that is an ideal value thereof is set to the terminal 302.
Input from the teacher signal storage unit 309 and hold the value t
k (1 ≦ k ≦ N 2 ) and the value o ′ k 2 in the output signal storage unit 308 are transferred to the error signal calculation unit 130, and the error signal d ′ k 2 is d ′ k 2 = t k − o ′ k 2 (1 ≦ k ≦ N 2 ) (68), the back propagation error is evaluated from the output signal o ′ k 2, and d k 2 = d ′ k 2 × o ′ k 2 × (1-o ′ k 2 ) (69) After d k 2 (1 ≦ k ≦ N 2 ) is calculated by performing the equation, the value is used as the matrix correction unit 313 and the error back propagation unit 3
Transfer to 14. Further, the error signal d k 2 is also transferred to the matrix correction amount calculation unit 316 and used for observation of learning stop.
マトリクス修正部313では、 wjk 2=wjk 2+a×dk 2×o′j 1 (70) θj 2=θj 2+b×dk 2 (71) なる計算により第2層重みマトリクスを修正し、結果を
再び第2層重みマトリクス記憶部311に記憶する。The matrix correction unit 313 calculates the second layer weight matrix by the calculation w jk 2 = w jk 2 + a × d k 2 × o ′ j 1 (70) θ j 2 = θ j 2 + b × d k 2 (71). The corrected result is stored again in the second layer weight matrix storage unit 311.
誤差計算部310で式(69)を実行する計算により求め
られたdk 2は、誤差逆伝搬部314に送られ、マトリクス記
憶部311内から転送された重みマトリクス値とともに、 の計算をし、さらに中間層記憶部305から転送された
o′j 1とから dj 1=d′j 1×o′j 1×(1−o′j 1) (73) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部315に転送して、 wij 1=wij 1+a×dj 1×oi 0 (74) θi 1=θi 1+b×dj 1 (75) なる式を実行する計算により第1層重みマトリクスを修
正し、結果を再び第1層重みマトリクス記憶部312に記
憶する。The d k 2 obtained by the calculation in which the error calculation unit 310 executes the equation (69) is sent to the error back-propagation unit 314, and together with the weight matrix values transferred from the matrix storage unit 311, Is calculated, and the equation d j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (73) is executed from o ′ j 1 transferred from the intermediate layer storage unit 305. After calculating d j 1 (1 ≦ j ≦ N 1 ) by the calculation, it is transferred to the matrix correction unit 315 and w ij 1 = w ij 1 + a × d j 1 × o i 0 (74) θ i 1 = Θ i 1 + b × d j 1 (75) The first layer weight matrix is corrected by calculation and the result is stored again in the first layer weight matrix storage unit 312.
マトリクス修正量計算部316では、マトリクス修正部3
13,315で求められた重みマトリクスの修正量(a×dk 2
×o′j 1、a×dj 1×oi 0)の総和を なる式を実行する計算により求める。さらに、出力信号
と教師信号との誤差の評価量を、式(68)の実行により
求められた結果のd′k 2により なる式を実行することにより求め、さらに S<Th1 (78) E>Th2 なる条件判定を実行し、上記の(78)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部317、出力層修正部318、出力層のU0修正部31
9に信号を送り、各層の出力信号を再計算する。上記の
条件を満たさない場合は学習停止状況にはないとみな
し、マトリクス修正量計算部316から各層の修正部への
信号は出さない。In the matrix correction amount calculation unit 316, the matrix correction unit 3
The correction amount of the weight matrix obtained in 13,315 (a × d k 2
Xo ′ j 1 , a × d j 1 × o i 0 ) It is calculated by executing the following equation. Further, the evaluation amount of the error between the output signal and the teacher signal is calculated by d ′ k 2 of the result obtained by executing the equation (68). The condition is S <Th1 (78) E> Th2, and if the condition expressed by the above formula (78) is satisfied, it is judged that the learning is stopped. Then, the input layer correction unit 317, the output layer correction unit 318, the output layer U0 correction unit 31
Send the signal to 9 and recalculate the output signal of each layer. When the above conditions are not satisfied, it is considered that the learning is not stopped, and the matrix correction amount calculation unit 316 does not output a signal to the correction unit of each layer.
学習停止の信号を受けた入力層修正部317では、入力
層記憶部302に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (79) なる計算を実行して入力値oi 0を修正して、再び入力記
憶部302に格納し、入力層の値が0や1に近い値となる
ことを避ける。The input layer correction unit 317 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 302, and o i 0 = Min (Max (o i 0 , L), U) (79 ) Is performed to correct the input value o i 0 and then stored again in the input storage unit 302 to prevent the value of the input layer from becoming a value close to 0 or 1.
中間層でのU0修正部318や出力層でのU0修正部319で
は、 U0=U0×c (80) なる式の計算を実現して、第8図の曲線801,802に示す
ようにジグモイド関数の傾きを緩やかにして、中間層出
力や出力層出力値を再計算し、それらが0や1に近い値
となることを避け、学習停止を引き起こすことをなく
す。第8図では曲線801はU0=0.75、曲線802は1.5であ
り、C=2となっている。実施例ではパラメータcを便
宜上2とした。その上で、再び式(68)から式(75)で
示す計算を実行することにより、重みマトリクスの修正
を実現する。In the U0 correction unit 318 in the middle layer and the U0 correction unit 319 in the output layer, the calculation of the formula U0 = U0 × c (80) is realized, and the slope of the zigmoid function is calculated as shown by the curves 801 and 802 in FIG. Is moderated to recalculate the output value of the middle layer and the output value of the intermediate layer, avoiding the values being close to 0 and 1 and preventing the learning from stopping. In FIG. 8, the curve 801 is U0 = 0.75, the curve 802 is 1.5, and C = 2. In the embodiment, the parameter c is set to 2 for convenience. Then, the weight matrix is corrected by executing the calculations shown in the equations (68) to (75) again.
ここで、さらに式(76)から式(78)で示す学習停止
の判定を行って、未だ式(78)が満たされているなら
ば、再度式(80)によりU0を修正することも可能であ
る。1回の学習の終了後にはU0を再度初期化する。Here, it is also possible to determine the learning stop shown in Equation (76) to Equation (78), and if Equation (78) is still satisfied, U0 can be corrected again by Equation (80). is there. After the end of one learning, U0 is initialized again.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
次に第13図を参照して、第4の本発明のパターン学習
装置の2層とした場合の実施例について説明をする。学
習は、入力パターンと教師信号を繰り返し与えることに
よりなされるが、まず1つの入力パターンと1つの教師
信号を与えた場合について説明する。予め、マトリクス
積演算部で用いられるマトリクスを蓄えるマトリクス記
憶部1311は乱数により初期化しておく。Next, with reference to FIG. 13, an embodiment in which the pattern learning apparatus of the fourth aspect of the present invention has two layers will be described. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. The matrix storage unit 1311 that stores the matrix used in the matrix product calculation unit is initialized in advance with random numbers.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子1301より入力され、入力層記憶部1302に蓄えられ
る。入力層記憶部1302は、N0次元のベクトルを保持する
レジスタにより構成され、ベクトルの全要素はマトリク
ス積演算部1303に送られる。入力されるベクトル値をoi
0(1≦i≦N0)とし、重みマトリクス記憶部1311に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、出力層記憶部1305に保持されるベクトル値をo′
j 1(1≦j≦N1)とすると、マトリクス積演算部1303で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、重みマトリクス記憶部に記憶される。結果のoj
1(1≦j≦N1)は各々、s関数部1304において o′j 1={1+tanh(oj 1/U0)}/2 (82) なる計算によりo′j 1をもとめ、出力層記憶部1305に記
憶する。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 1301 and stored in the input layer storage unit 1302. The input layer storage unit 1302 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 1303. Input vector values o i
0 (1 ≦ i ≦ N 0 ), and the matrix value held in the weight matrix storage unit 1311 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the output layer storage unit 1305 is o ′
If j 1 (1 ≦ j ≦ N 1 ), the matrix product operation unit 1303 Is calculated. However, here θ j 1 is a bias value and is stored in the weight matrix storage unit. The resulting o j
1 (1 ≦ j ≦ N 1 ) is calculated in the s-function unit 1304 as o ′ j 1 = {1 + tanh (o j 1 / U0)} / 2 (82), and o ′ j 1 is obtained and stored in the output layer. It is stored in the unit 1305.
つぎに学習停止の判定を行う部分の動作について説明
する。Next, the operation of the part that determines the learning stop will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子1320
より入力して教師信号記憶部1309に保持し、その値t
j(1≦j≦N1)と出力信号記憶部1305内の値o′j 1と
を誤差信号計算部1310に転送して、誤差信号d′j 1を d′j 1=tj−o′j 1(1≦j≦N1) (83) として計算する。その結果はマトリクス修正量推定部13
16に送られ、学習停止の判定のための誤差評価量Eを なる式で表される計算を実行することにより求める。さ
らに出力層記憶部1305からo′j 1(1≦j≦N1)を、入
力層記憶部1302からoi 0(1≦i≦N0)をマトリクス修
正量推定部1316に転送し、マトリクス修正量の推定値
S′を以下の式で計算する。For the output signal obtained by the above-mentioned feedforward processing, the ideal value of the teacher signal is output to the terminal 1320.
Input from the teacher signal storage unit 1309 and hold the value t
j (1 ≦ j ≦ N 1 ) and the value o ′ j 1 in the output signal storage unit 1305 are transferred to the error signal calculation unit 1310, and the error signal d ′ j 1 is d ′ j 1 = t j −o. It is calculated as ′ j 1 (1 ≦ j ≦ N 1 ) (83). The result is the matrix correction amount estimation unit 13
The error evaluation amount E for determining the learning stop is sent to 16 It is obtained by executing the calculation represented by the following equation. Further, o ′ j 1 (1 ≦ j ≦ N 1 ) is transferred from the output layer storage unit 1305, and o i 0 (1 ≦ i ≦ N 0 ) is transferred from the input layer storage unit 1302 to the matrix correction amount estimation unit 1316, and the matrix is transferred. The estimated value S'of the correction amount is calculated by the following formula.
なる式を実行する計算により求める。さらに、マトリク
ス修正量推定部1316において出力信号と教師信号との誤
差の評価量を、 S′<Th1 E>Th2 (86) なる条件判定を実行し、上記の(86)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部1317、出力層修正部1318に信号を送り、各層
の出力信号の修正を行う。上記の条件を満たさない場合
は学習停止状況にはないとみなし、マトリクス修正量計
算部1316から各層の修正部への信号は出さない。 It is calculated by executing the following equation. Further, in the matrix correction amount estimation unit 1316, the evaluation amount of the error between the output signal and the teacher signal is subjected to the condition determination of S ′ <Th1 E> Th2 (86), and the condition represented by the above formula (86) is satisfied. If the condition is satisfied, it is determined that the learning is stopped, and a signal is sent to the input layer correction unit 1317 and the output layer correction unit 1318 to correct the output signal of each layer. If the above conditions are not satisfied, it is considered that the learning is not stopped, and no signal is output from the matrix correction amount calculation unit 1316 to the correction unit of each layer.
この判定条件は、誤差の評価量Eが大きいにも関わら
ず、重みマトリクスの修正量Sが0に近い場合には、学
習停止とみなしている。This determination condition considers that learning is stopped when the correction amount S of the weight matrix is close to 0 in spite of the large error evaluation amount E.
学習停止の信号を受けた入力層修正部1317では、入力
層記憶部1302に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (87) なる計算を実行して入力値oi 0を修正して、再び入力層
記憶部1302に格納し、入力層の値が0や1に近い値とな
ることを避ける。出力層でのU0修正部1318では U0=U0×c (88) なる式の計算を実現して、第8図を用いて説明したよう
にシグモイド関数の傾きを緩やかにして、中間層出力や
出力層出力値を再計算し、それらが0や1に近い値とな
ることを避け、学習停止を引き起こすことをなくす。そ
の上で、再び式(81)と式(82)で示す計算を実行し、
さらに式(83)から式(86)が示す学習停止の判定を行
って、未だ式(86)が満たされているならば、再度式
(88)によりU0を修正する。The input layer correction unit 1317 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 1302, and o i 0 = Min (Max (o i 0 , L), U) (87 ) Is performed to correct the input value o i 0 and store it again in the input layer storage unit 1302 to prevent the value of the input layer from becoming a value close to 0 or 1. The U0 correction unit 1318 in the output layer realizes the calculation of the formula U0 = U0 × c (88) to make the slope of the sigmoid function gentle as described with reference to FIG. Recalculate the layer output values to avoid them approaching 0 or 1 and avoiding learning stops. Then, perform the calculations shown in equations (81) and (82) again,
Further, the learning stop determination represented by the equations (83) to (86) is determined, and if the equation (86) is still satisfied, the U0 is corrected again by the equation (88).
最後に、修正された各層の信号記憶部1302,1305の値
を用いて重みマトリクスの修正を行う逆伝搬処理の説明
をする。Finally, the back propagation processing for correcting the weight matrix using the corrected values of the signal storage units 1302 and 1305 of the respective layers will be described.
誤差計算部1310で予め式(83)に従って求められてい
るd′j 1と出力信号記憶部に保持される出力信号記憶部
に保持される出力信号o′j 1とから逆伝搬誤差を評価
し、 dj 1=d′j 1×o′j 1×(1−o′j 1) (89) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部1312に転送して、 wij 1=wij 1+a×dj 1×oi 0 (90) θi 1=θi 1+b×dj 1 (91) なる式を実行する計算により重みマトリクスを修正し、
結果を再び重みマトリクス記憶部1311に記憶する。1回
の学習の終了後にはU0は再度初期値に設定する。Evaluate the backpropagation error from j 1 Metropolitan 'output signal o is held in the output signal storage unit held by the j 1 and the output signal storage unit' that d which is determined in accordance with pre equation (83) by the error calculation section 1310 , D j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (89) After calculating d j 1 (1 ≦ j ≦ N 1 ), the matrix Transferred to the correction unit 1312 and weighted by calculation by executing the formula w ij 1 = w ij 1 + a × d j 1 × o i 0 (90) θ i 1 = θ i 1 + b × d j 1 (91) Modify the matrix,
The result is stored again in the weight matrix storage unit 1311. After the end of one learning, U0 is set to the initial value again.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
第4図は第4の本発明のパターン学習装置の3層の場
合の実施例を示す図である。学習は、入力パターンと教
師信号を繰り返し与えることによりなされるが、まず1
つの入力パターンと1つの教師信号を与えた場合につい
て説明する。予め、マトリクス積演算部で用いられるマ
トリクスを蓄えるマトリクス記憶部411,412は乱数によ
り初期化しておく。FIG. 4 is a diagram showing an embodiment of the pattern learning apparatus of the fourth aspect of the present invention in the case of three layers. Learning is performed by repeatedly giving an input pattern and a teacher signal.
A case where one input pattern and one teacher signal are given will be described. The matrix storage units 411 and 412 that store the matrix used in the matrix product calculation unit are initialized in advance with random numbers.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子401より入力され、入力層記憶部402に蓄えられる。
入力層記憶部402は、N0次元のベクトルを保持するレジ
スタにより構成され、ベクトルの全要素はマトリクス積
演算部403に送られる。入力されるベクトル値をoi 0(1
≦i≦N0)とし、第1層重みマトリクス記憶部412に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、中間層記憶部405に保持されるベクトル値をo′j
1(1≦j≦N1)とすると、マトリクス積演算部403で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、第1層重みマトリクス記憶部412に記憶され
る。結果のoj 1(1≦j≦N1)は各々、s関数部404にお
いて o′j 1={1+tanh(oj 1)}/2 (93) なる計算によりo′j 1をもとめ、中間層記憶部405に記
憶する。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 401 and is stored in the input layer storage unit 402.
The input layer storage unit 402 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 403. The input vector value is o i 0 (1
≦ i ≦ N 0 ), and the matrix value held in the first layer weight matrix storage unit 412 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the intermediate layer storage unit 405 is represented by o ′ j
If 1 (1 ≦ j ≦ N 1 ), the matrix product operation unit 403 Is calculated. However, here θ j 1 is a bias value and is stored in the first layer weight matrix storage unit 412. Results of o j 1 (1 ≦ j ≦ N 1) each of the s function unit 404 o determine the j 1 'j 1 = {1 + tanh (o j 1)} / 2 (93) o by comprising calculation', the intermediate It is stored in the layer storage unit 405.
第2層重みマトリクス記憶部411に記憶される重みマ
トリクスをwjk 2(1≦i≦N1、1≦j≦N2)とし、同記
憶部411に記憶されるバイアス値をθk 2とするとマトリ
クス演算部406では、 なる計算をおこなう。結果のok 2(1≦k≦N2)は各
々、s関数部407において o′k 2={1+tanh(ok 2)}/2 (95) なる計算によりo′k 2をもとめ、出力信号として出力層
記憶部408に記憶される。The weight matrix stored in the second layer weight matrix storage unit 411 is w jk 2 (1 ≦ i ≦ N 1 , 1 ≦ j ≦ N 2 ), and the bias value stored in the storage unit 411 is θ k 2 . Then, in the matrix calculation unit 406, Is calculated. Results of o k 2 (1 ≦ k ≦ N 2) each of the s function unit 407 o determine the k 2 'k 2 = {1 + tanh (o k 2)} / 2 (95) o by comprising calculation', the output It is stored in the output layer storage unit 408 as a signal.
つぎに、学習停止の判定を行う部分の動作について説
明する。Next, the operation of the part that determines the learning stop will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子420
より入力して教師信号記憶部409に保持し、その値t
k(1≦k≦N2)と出力信号記憶部408内の値o′k 2とと
を誤差信号計算部410に転送して、誤差信号d′k 2を d′k 2=tk−o′k 2(1≦k≦N2) (96) として計算する。その結果はマトリクス修正量推定部に
送られ、学習停止の判定のための誤差評価量Eを なる式で表される計算を実行することにより求める。さ
らに出力層記憶部408からo′k 2(1≦k≦N2)を、中
間層記憶部405からo′j 1(1≦j≦N1)を、入力層記
憶部402からoi 0(1≦i≦N0)をマトリクス修正量推定
部416に転送し、マトリクス修正量の推定値S′を以下
の式で計算する。With respect to the output signal obtained by the above-mentioned feedforward processing, the teacher signal which is an ideal value thereof is set to the terminal 420.
Input from the teacher signal storage unit 409 and hold the value t
k (1 ≦ k ≦ N 2 ) and the value o ′ k 2 in the output signal storage unit 408 are transferred to the error signal calculation unit 410, and the error signal d ′ k 2 is d ′ k 2 = t k − It is calculated as o ′ k 2 (1 ≦ k ≦ N 2 ) (96). The result is sent to the matrix correction amount estimation unit, and the error evaluation amount E for determining learning stop is calculated. It is obtained by executing the calculation represented by the following equation. Further, o ′ k 2 (1 ≦ k ≦ N 2 ) from the output layer storage unit 408, o ′ j 1 (1 ≦ j ≦ N 1 ) from the intermediate layer storage unit 405, and o i 0 from the input layer storage unit 402. (1 ≦ i ≦ N 0 ) is transferred to the matrix correction amount estimation unit 416, and the matrix correction amount estimated value S ′ is calculated by the following formula.
なる式を実行する計算により求める。さらに、マトリク
ス修正量推定部416において出力信号と教師信号との誤
差の評価量を、 S′<Th1 E>Th2 (99) なる条件判定を実行し、上記の(99)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部417、中間層修正部418、出力層修正部419に
信号を送り、各層の出力信号の修正を行う。上記の条件
を満たさない場合は学習停止状況にはないとみなし、マ
トリクス修正量計算部416から各層の修正部への信号は
出さない。 It is calculated by executing the following equation. Further, in the matrix correction amount estimation unit 416, the evaluation amount of the error between the output signal and the teacher signal is subjected to the condition determination of S ′ <Th1 E> Th2 (99), and the condition expressed by the above equation (99) is satisfied. If the condition is satisfied, it is determined that the learning is stopped, and a signal is sent to the input layer correction unit 417, the intermediate layer correction unit 418, and the output layer correction unit 419 to correct the output signal of each layer. If the above conditions are not satisfied, it is considered that the learning is not stopped, and no signal is output from the matrix correction amount calculation unit 416 to the correction unit of each layer.
この判定条件は、誤差の評価量Eが大きいにも関わら
ず、重みマトリクスの修正量Sが0に近い場合には、学
習停止とみなしている。This determination condition considers that learning is stopped when the correction amount S of the weight matrix is close to 0 in spite of the large error evaluation amount E.
学習停止の信号を受けた入力層修正部417では、入力
層記憶部402に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (100) なる計算を実行して入力値oi 0を修正して、再び入力層
記憶部402に格納し、入力層の値が0や1に近い値とな
ることを避ける。The input layer correction unit 417 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 402, and o i 0 = Min (Max (o i 0 , L), U) (100 ) Is performed to correct the input value o i 0 and store it again in the input layer storage unit 402 to prevent the value of the input layer from becoming a value close to 0 or 1.
中間層でのU0修正部418や出力層でのU0修正部419で
は、 U0=U0×c (101) なる式の計算を実現して、第8図で説明したようにシグ
モイド関数の傾きを緩やかにして、中間層出力や出力層
出力値を再計算し、それらが0や1に近い値となること
を避け、学習停止を引き起こすことをなくす。実施例で
はパラメータcを便宜上2とした。その上で、再び式
(93)と式(95)で示す計算を実行し、さらに式(97)
から式(99)で示す学習停止の判定を行って、未だ式
(99)が満たされているならば、再度式(101)によりU
0を修正する。In the U0 correction unit 418 in the middle layer and the U0 correction unit 419 in the output layer, the calculation of the formula U0 = U0 × c (101) is realized, and the slope of the sigmoid function is made gentle as described in FIG. Then, the intermediate layer output and the output layer output value are recalculated to avoid the values being close to 0 and 1 and to prevent the learning stop. In the embodiment, the parameter c is set to 2 for convenience. Then, the calculations shown in Equation (93) and Equation (95) are executed again, and then Equation (97)
From the above, the learning stop determination shown in Expression (99) is performed, and if Expression (99) is still satisfied, U is again calculated using Expression (101).
Correct 0.
最後に、修正された各層の信号記憶部402,405,408の
値を用いて重みマトリクスの修正を行う逆伝搬処理の説
明をする。Finally, the back propagation processing for correcting the weight matrix using the corrected values of the signal storage units 402, 405, 408 of the respective layers will be described.
誤差計算部410で予め式(96)に従って求められてい
るd′k 2と出力信号記憶部に保持される出力信号o′k 2
とから逆伝搬誤差を評価し、 dk 2=d′k 2×o′k 2×(1−o′k 2) (102) なる式を実行する計算によりdk 2(1≦k≦N2)を求め
た後に、その値をマトリクス修正部413と誤差逆伝搬部4
14に転送する。さらに、誤差信号dk 2は、マトリクス修
正量計算部416にも転送され学習停止の観測に用いられ
る。The error calculation unit 410 obtains d ′ k 2 previously obtained according to the equation (96) and the output signal o ′ k 2 held in the output signal storage unit.
The back-propagation error is evaluated from and d k 2 = d ′ k 2 × o ′ k 2 × (1−o ′ k 2 ) (102) is calculated to execute d k 2 (1 ≦ k ≦ N 2 ) is obtained, and then the value is calculated by the matrix correction unit 413 and the error back propagation unit 4
Transfer to 14. Further, the error signal d k 2 is also transferred to the matrix correction amount calculation unit 416 and used for observation of learning stop.
マトリクス修正部413では、 wjk 2=wjk 2+a×dk 2×o′j 1 (103) θj 2=θj 2+b×dk 2 (104) なる計算により第2層重みマトリクスを修正し、結果を
再び第2層重みマトリクス記憶部411に記憶する。The matrix correction unit 413 calculates the second layer weight matrix by the calculation w jk 2 = w jk 2 + a × d k 2 × o ′ j 1 (103) θ j 2 = θ j 2 + b × d k 2 (104). The corrected result is stored again in the second layer weight matrix storage unit 411.
誤差計算部410で式(102)を実行する計算により求め
られたdk 2は、誤差逆伝搬部414に送られ、マトリクス記
憶部411内から転送された重みマトリクス値とともに、 の計算をし、さらに中間層記憶部405から転送された
o′j 1とから dj 1=d′j 1×o′j 1×(1−o′j 1) (106) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部415に転送して、 wij 1=wij 1+a×dj 1×oi 0 (107) θi 1=θi 1+b×dj 1 (108) なる式を実行する計算により第1層重みマトリクスを修
正し、結果を再び第1層重みマトリクス記憶部412に記
憶する。1回の学習が終了した段階で、U0は初期値に戻
す。The d k 2 obtained by the calculation in which the error calculation unit 410 executes the equation (102) is sent to the error back-propagation unit 414, and together with the weight matrix values transferred from the matrix storage unit 411, Is calculated, and the formula d j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (106) is executed from o ′ j 1 transferred from the intermediate layer storage unit 405. After calculating d j 1 (1 ≦ j ≦ N 1 ) by the calculation, it is transferred to the matrix correction unit 415 and w ij 1 = w ij 1 + a × d j 1 × o i 0 (107) θ i 1 = Θ i 1 + b × d j 1 (108) The first layer weight matrix is corrected by the calculation to execute the equation, and the result is stored again in the first layer weight matrix storage unit 412. When one learning is completed, U0 returns to the initial value.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
次に第14図を参照して、第5の本発明のパターン学習
装置の2層の場合の実施例の説明をする。学習は、入力
パターンと教師信号を繰り返し与えることによりなされ
るが、まず1つの入力パターンと1つの教師信号を与え
た場合について説明する。予め、マトリクス積演算部で
用いられるマトリクスを蓄えるマトリクス記憶部1411は
乱数により初期化しておく。Next, with reference to FIG. 14, an explanation will be given of an embodiment in the case of two layers of the pattern learning apparatus of the fifth present invention. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. The matrix storage unit 1411 that stores the matrix used in the matrix product calculation unit is initialized in advance with a random number.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子1401より入力され、入力層記憶部1402に蓄えられ
る。入力層記憶部1402は、N0次元のベクトルを保持する
レジスタにより構成され、ベクトルの全要素はマトリク
ス積演算部1403に送られる。入力されるベクトル値をoi
0(1≦i≦N0)とし、重みマトリクス記憶部1411に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、出力層記憶部1405に保持されるベクトル値をo′
j 1(1≦j≦N1)とすると、マトリクス積演算部1403で
は、 なる計算をおこなる。ただし、ここでθj 1はバイアス値
であり、重みマトリクス記憶部に記憶される。結果のoj
1(1≦j≦N1)は各々、s関数部1404において o′j 1=p+(q−p){1+tanh(oj 1)}/2(110) なる計算によりo′j 1をもとめ、出力信号として出力層
記憶部1405に記憶する。実施例では初期的にはp,qをそ
れぞれ0と1とした。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 1401 and stored in the input layer storage unit 1402. The input layer storage unit 1402 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 1403. Input vector values o i
0 (1 ≦ i ≦ N 0 ), and the matrix value held in the weight matrix storage unit 1411 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the output layer storage unit 1405 is o ′
If j 1 (1 ≦ j ≦ N 1 ), the matrix product operation unit 1403 Is calculated. However, here θ j 1 is a bias value and is stored in the weight matrix storage unit. The resulting o j
1 (1 ≦ j ≦ N 1 ) is calculated in the s-function unit 1404 as o ′ j 1 = p + (q−p) {1 + tanh (o j 1 )} / 2 (110) to obtain o ′ j 1 . , And is stored in the output layer storage unit 1405 as an output signal. In the example, p and q were initially set to 0 and 1, respectively.
つぎに、重みマトリクスの修正処理の説明をする。 Next, the correction processing of the weight matrix will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子1420
より入力して教師信号記憶部1409に保持し、その値t
j(1≦j≦N1)と出力信号記憶部1405内の値o′j 1と
とを誤差信号計算部1410に転送して、誤差信号d′j 1を d′j 1=tj−o′j 1(1≦k≦N1) (111) として計算して、さらに出力信号o′j 1とから逆伝搬誤
差を評価し、 dj 1=d′j 1×o′j 1×(1−o′j 1) (112) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、その値をマトリクス修正部413に転送する。さ
らに、誤差信号dj 1は、マトリクス修正量計算部1416に
も転送され学習停止の観測に用いられる。With respect to the output signal obtained by the above-mentioned feedforward processing, the ideal value of the teacher signal is input to the terminal 1420.
Input from the teacher signal storage unit 1409, and the value t
j (1 ≦ j ≦ N 1 ) and the value o ′ j 1 in the output signal storage unit 1405 are transferred to the error signal calculation unit 1410, and the error signal d ′ j 1 is d ′ j 1 = t j − o ′ j 1 (1 ≦ k ≦ N 1 ) (111), and the back propagation error is evaluated from the output signal o ′ j 1 and d j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (112) After calculating d j 1 (1 ≦ j ≦ N 1 ) by performing the equation, the value is transferred to the matrix correction unit 413. Further, the error signal d j 1 is also transferred to the matrix correction amount calculation unit 1416 and used for observation of learning stop.
マトリクス修正部1413では、 wij 1=wij 1+a×dj 1×oi 0 (113) θi 1=θi 1+b×dj 1 (114) なる計算により重みマトリクスを修正し、結果を再び重
みマトリクス記憶部1411に記憶する。The matrix correction unit 1413 corrects the weight matrix by the calculation of w ij 1 = w ij 1 + a × d j 1 × o i 0 (113) θ i 1 = θ i 1 + b × d j 1 (114) Is again stored in the weight matrix storage unit 1411.
マトリクス修正量計算部1416では、マトリクス修正部
1413で求められた重みマトリクスの修正量(a×dj 1×o
i 0)の総和を なる式を実行する計算により求める。さらに、出力信号
と教師信号との誤差の評価量を、(111)の実行により
求められた結果のd′j 1より なる式を実行することにより求め、さらに S<Th1 (117) E>Th2 なる条件判定を実行し、上記の(117)式で表される条
件を満たした場合には学習停止状況にあると判断して、
入力層修正部1417、出力層のレンジ修正部1418に信号を
送り、各層の出力信号を再計算する。上記の条件を満た
さない場合は学習停止状況にはないとみなし、マトリク
ス修正量計算部1416から各層の修正部への信号は出さな
い。In the matrix correction amount calculation unit 1416, the matrix correction unit
1413 Weight matrix correction amount (a × d j 1 × o
i 0 ) sum It is calculated by executing the following equation. Furthermore, the evaluation amount of the error between the output signal and the teacher signal is calculated from d ′ j 1 of the result obtained by executing (111). It is determined by executing the following formula, and the condition judgment of S <Th1 (117) E> Th2 is executed. If the condition expressed by the above formula (117) is satisfied, it is judged that the learning is stopped. do it,
A signal is sent to the input layer correction unit 1417 and the output layer range correction unit 1418 to recalculate the output signal of each layer. When the above conditions are not satisfied, it is considered that the learning is not stopped, and the matrix correction amount calculation unit 1416 does not output a signal to the correction unit of each layer.
学習停止の信号を受けた入力層修正部1417では、入力
層記憶部1402に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (118) なる計算を実行して入力値oi 0を修正して、再び入力記
憶部1402に格納し、第7図に示すように入力層の値が0
や1に近い値となることを避ける。The input layer correction unit 1417 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 1402, and o i 0 = Min (Max (o i 0 , L), U) (118 ) Is executed to correct the input value o i 0 and stored again in the input storage unit 1402, and the value of the input layer is 0 as shown in FIG.
Avoid getting close to 1 or 1.
出力層でのレンジ修正部1418では、 p=p′ (119) q=q′ なる式の計算を実現して、第9図に示すようにシグモイ
ド関数のレンジを修正して、出力層出力値を再計算し、
それらが0や1に近い値となることを避け、学習停止を
引き起こすことをなくす。第9図の例では、曲線901で
はp=0、q=1、曲線902ではp=0.2、q=0.8とな
っている。その上で、再び式(111)から式(114)で示
す計算を実行することにより、重みマトリクスの修正を
実現する。1回の学習の終了後にはp,qを再度初期化す
る。The range correction unit 1418 in the output layer realizes the calculation of the equation p = p '(119) q = q', and corrects the range of the sigmoid function as shown in FIG. Recalculates
Avoid those values approaching 0 or 1 and avoiding learning stops. In the example of FIG. 9, the curve 901 has p = 0 and q = 1, and the curve 902 has p = 0.2 and q = 0.8. Then, the weight matrix is corrected by executing the calculations shown in the equations (111) to (114) again. After one learning, p and q are initialized again.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
第5図は第5の発明のパターン学習装置の3層の場合
の実施例を示す図である。学習は、入力パターンと教師
信号を繰り返し与えることによりなされるが、まず1つ
の入力パターンと1つの教師信号を与えた場合について
説明する。予め、マトリクス積演算部で用いられるマト
リクスを蓄えるマトリクス記憶部511,512は乱数により
初期化しておく。FIG. 5 is a diagram showing an embodiment of the pattern learning apparatus of the fifth invention in the case of three layers. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. The matrix storage units 511 and 512 for storing the matrix used in the matrix product calculation unit are initialized in advance with random numbers.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子501より入力され、入力層記憶部502に蓄えられる。
入力層記憶部502は、N0次元のベクトルを保持するレジ
スタにより構成され、ベクトルの全要素はマトリクス積
演算部503に送られる。入力されるベクトル値をoi 0(1
≦i≦N0)とし、第1層重みマトリクス記憶部512に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、中間層記憶部505に保持されるベクトル値をo′j
1(1≦j≦N1)とすると、マトリクス積演算部503で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、第1層重みマトリクス記憶部に記憶される。結
果のoj 1(1≦j≦N1)は各々、s関数部504において o′j 1=p+(q−p){1+tanh(oj 1/U0)}/2(12
1) なる計算によりo′j 1をもとめ、出力層記憶部505に記
憶する。実施例では初期的にはp,qをそれぞれ0と1と
した。第2層重みマトリクス記憶部511に記憶される重
みマトリクスをwjk 2(1≦i≦N1、1≦j≦N2)とし、
同記憶部511に記憶されるバイアス値をθk 2とするとマ
トリクス演算部506では、 なる計算をおこなう。結果のok 2(1≦k≦N2)は各
々、s関数部507において o′k 2=p+(p−q){1+tanh(ok 2)/U0}/2(12
3) なる計算によりo′k 2をもとめ、出力信号として出力層
記憶部508に記憶される。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 501 and is stored in the input layer storage unit 502.
The input layer storage unit 502 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 503. The input vector value is o i 0 (1
≦ i ≦ N 0 ), and the matrix value held in the first layer weight matrix storage unit 512 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the intermediate layer storage unit 505 is represented by o ′ j
If 1 (1 ≦ j ≦ N 1 ), the matrix product calculation unit 503 Is calculated. Here, θ j 1 is a bias value and is stored in the first layer weight matrix storage unit. The resulting o j 1 (1 ≤ j ≤ N 1 ) are respectively o'j 1 = p + (q-p) {1 + tanh (o j 1 / U0)} / 2 (12 in the s-function unit 504.
1) O ′ j 1 is obtained by the following calculation and stored in the output layer storage unit 505. In the example, p and q were initially set to 0 and 1, respectively. The weight matrix stored in the second layer weight matrix storage unit 511 is w jk 2 (1 ≦ i ≦ N 1 , 1 ≦ j ≦ N 2 ),
When the bias value stored in the storage unit 511 is θ k 2 , the matrix calculation unit 506 Is calculated. Results of o k 2 (1 ≦ k ≦ N 2) each of the s function unit 507 o 'k 2 = p + (p-q) {1 + tanh (o k 2) / U0} / 2 (12
3) O ′ k 2 is obtained by the following calculation and stored in the output layer storage unit 508 as an output signal.
つぎに、重みマトリクスの修正を行う逆伝搬処理の説
明をする。Next, the back propagation processing for correcting the weight matrix will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子520
より入力して教師信号記憶部509に保持し、その値t
k(1≦k≦N2)と出力信号記憶部508内の値o′k 2とと
を誤差信号計算部530に転送して、誤差信号d′k 2を d′k 2=tk−o′k 2(1≦k≦N2) (124) として計算して、さらに出力信号o′k 2とから逆伝搬誤
差を評価し、 dk 2=d′k 2×o′k 2×(1−o′k 2) (125) なる式を実行する計算によりdk 2(1≦k≦N2)を求め
た後に、その値をマトリクス修正部513と誤差逆伝搬部5
14に転送する。さらに、誤差信号d′k 2は、マトリクス
修正量計算部516にも転送され学習停止の観測に用いら
れる。With respect to the output signal obtained by the above-mentioned feedforward processing, the ideal value of the teacher signal is set to the terminal 520.
Input from the teacher signal storage unit 509 and hold the value t
k (1 ≦ k ≦ N 2 ) and the value o ′ k 2 in the output signal storage unit 508 are transferred to the error signal calculation unit 530, and the error signal d ′ k 2 is d ′ k 2 = t k − o ′ k 2 (1 ≦ k ≦ N 2 ) (124), and the back propagation error is evaluated from the output signal o ′ k 2 and d k 2 = d ′ k 2 × o ′ k 2 × (1-o ′ k 2 ) (125) After calculating d k 2 (1 ≦ k ≦ N 2 ) by calculation, the value is used as the matrix correction unit 513 and the error back propagation unit 5
Transfer to 14. Further, the error signal d ′ k 2 is also transferred to the matrix correction amount calculation unit 516 and used for observation of learning stop.
マトリクス修正部513では、 wjk 2=wjk 2+a×dk 2×o′j 1 (126) θj 2=θj 2+b×dk 2 (127) なる計算により第2層重みマトリクスを修正し、結果を
再び第2層重みマトリクス記憶部511に記憶する。The matrix correction unit 513 calculates the second-layer weight matrix by the calculation w jk 2 = w jk 2 + a × d k 2 × o ′ j 1 (126) θ j 2 = θ j 2 + b × d k 2 (127). The corrected result is stored again in the second layer weight matrix storage unit 511.
誤差計算部510で式(125)を実行する計算により求め
られたdk 2は、誤差逆伝搬部514に送られ、マトリクス記
憶部511内から転送された重みマトリクス値とともに、 の計算をし、さらに中間層記憶部505から転送された
o′j 1とから dj 1=d′j 1×o′j 1×(1−o′j 1) (129) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部515に転送して wij 1=wij 1+a×dj 1×oi 0 (130) θi 1=θi 1+b×dj 1 (131) なる式を実行する計算により第1層重みマトリクスを修
正し、結果を再び第1層重みマトリクス記憶部512に記
憶する。The d k 2 obtained by the calculation in which the error calculation unit 510 executes the equation (125) is sent to the error back-propagation unit 514, and together with the weight matrix values transferred from the matrix storage unit 511, Is calculated, and the equation d j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (129) is executed from o ′ j 1 transferred from the intermediate layer storage unit 505. After calculating d j 1 (1 ≦ j ≦ N 1 ) by the calculation, it is transferred to the matrix correction unit 515 and w ij 1 = w ij 1 + a × d j 1 × o i 0 (130) θ i 1 = θ i 1 + b × d j 1 (131) The first layer weight matrix is corrected by the calculation to execute the equation, and the result is stored in the first layer weight matrix storage unit 512 again.
マトリクス修正量計算部516では、マトリクス修正部5
13,515で求められた重みマトリクスの修正量 なる式を実行する計算により求める。さらに、出力信号
と教師信号との誤差の評価量を、式(124)の実行によ
り求められた結果のd′k 2により なる式を実行することにより求め、さらに S<Th1 (134) E>Th2 なる条件判定を実行し、上記に(81)式で表される条件
を満たした場合には学習停止状況にあると判断して、入
力層修正部517、中間層のU0修正部518、出力層修正部51
9に信号を送り、各層の出力信号を再計算する。上記の
条件を満たさない場合は学習停止状況にはないとみな
し、マトリクス修正量計算部516から各層の修正部への
信号は出さない。In the matrix correction amount calculation unit 516, the matrix correction unit 5
Amount of correction of the weight matrix found in 13,515 It is calculated by executing the following equation. Further, the evaluation amount of the error between the output signal and the teacher signal is calculated by d ′ k 2 of the result obtained by executing the equation (124). The condition is S <Th1 (134) E> Th2, and if the condition expressed by Eq. (81) is satisfied, it is judged that the learning is stopped. Then, the input layer modifying unit 517, the intermediate layer U0 modifying unit 518, and the output layer modifying unit 51.
Send the signal to 9 and recalculate the output signal of each layer. If the above conditions are not satisfied, it is considered that the learning is not stopped, and no signal is output from the matrix correction amount calculation unit 516 to the correction unit of each layer.
学習停止の信号を受けた入力層修正部517では、入力
層記憶部502に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (135) なる計算を実行して入力値oi 0を修正して、再び入力記
憶部502に格納し、入力層の値が0や1に近い値となる
ことを避ける。The input layer correction unit 517 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 502, and o i 0 = Min (Max (o i 0 , L), U) (135 ) Is performed to correct the input value o i 0 and store it again in the input storage unit 502 to prevent the value of the input layer from becoming a value close to 0 or 1.
中間層でのレンジ修正部518や出力層でのレンジ修正
部519では、 p=p′ (136) q=q′ なる式の計算を実現して、第9図で説明したようにシグ
モイド関数レンジを修正して、中間層出力や出力層出力
値を再計算し、それらが0や1に近い値となることを避
け、学習停止を引き起こすことをなくす。その上で、再
び式(120)から式(131)で示す計算を実行することに
より、重みマトリクスの修正を実現する。1回の学習の
終了後にはp,qを再度初期かする。The range correction unit 518 in the intermediate layer and the range correction unit 519 in the output layer realize the calculation of the equation p = p ′ (136) q = q ′, and as shown in FIG. 9, the sigmoid function range is calculated. Is corrected to recalculate the output value of the middle layer and the output value of the intermediate layer, avoiding the values being close to 0 and 1 and preventing the learning stop. Then, the weight matrix is corrected by executing the calculations shown in the equations (120) to (131) again. After the end of one learning, p and q are initialized again.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
次に第15図を参照して、第6の本発明のパターン学習
装置の2層での場合の実施例について説明をする。学習
は、入力パターンと教師信号を繰り返し与えることによ
りなされるが、まず1つの入力パターンと1つの教師信
号を与えた場合について説明する。予め、マトリクス積
演算部で用いられるマトリクスを蓄えるマトリクス記憶
部1511は乱数により初期化しておく。Next, with reference to FIG. 15, an embodiment of the pattern learning apparatus of the sixth aspect of the present invention having two layers will be described. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described. The matrix storage unit 1511 that stores the matrix used in the matrix product calculation unit is initialized in advance with a random number.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子1501より入力され、入力層記憶部1502に蓄えられ
る。入力層記憶部1502は、N0次元のベクトルを保持する
レジスタにより構成され、ベクトルの全要素はマトリク
ス積演算部1503に送られる。入力されるベクトル値をoi
0(1≦i≦N0)とし、重みマトリクス記憶部1411に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、出力層記憶部1405に保持されるベクトル値をo′
j 1(1≦j≦N1)とすると、マトリクス積演算部1503で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、重みマトリクス記憶部に記憶される。結果のoj
1(1≦j≦N1)は各々、s関数部1504において o′j 1=p+(q−p){1+tanh(oj 1)}/2(138) なる計算によりo′j 1をもとめ、出力信号として出力層
記憶部1505に記憶する。実施例では初期的にはp,qをそ
れぞれ0と1とした。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 1501 and stored in the input layer storage unit 1502. The input layer storage unit 1502 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 1503. Input vector values o i
0 (1 ≦ i ≦ N 0 ), and the matrix value held in the weight matrix storage unit 1411 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the output layer storage unit 1405 is o ′
If j 1 (1 ≦ j ≦ N 1 ), the matrix product operation unit 1503 Is calculated. However, here θ j 1 is a bias value and is stored in the weight matrix storage unit. The resulting o j
1 (1 ≦ j ≦ N 1 ) each of which obtains the j 1 'o by j 1 = p + (q- p) {1 + tanh (o j 1)} / 2 (138) comprising computing' in s function unit 1504 o , And is stored in the output layer storage unit 1505 as an output signal. In the example, p and q were initially set to 0 and 1, respectively.
つぎに、学習停止の判定を行う部分の動作について説
明する。Next, the operation of the part that determines the learning stop will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子1520
より入力して教師信号記憶部1509に保持し、その値t
j(1≦j≦N1)と出力信号記憶部1405内の値o′j 1と
とを誤差信号計算部1510に転送して、誤差信号d′j 1を d′j 1=tj−o′j 1(1≦j≦N1) (139) として計算する。その結果はマトリクス修正量推定部15
16に送られ、学習停止の判定のための誤差評価量Eを なる式で表される計算を実行することにより求める。さ
らに出力層記憶部1505からo′j 1(1≦j≦N1)を、入
力層記憶部1502からoj 0(1≦i≦N0)をマトリクス修
正量推定部1516に転送し、マトリクス修正量の推定値
S′を以下の式で計算する。With respect to the output signal obtained by the above-mentioned feedforward processing, the ideal value of the teacher signal is set to the terminal 1520.
Input from the teacher signal storage unit 1509 and hold the value t
j (1 ≦ j ≦ N 1 ) and the value o ′ j 1 in the output signal storage unit 1405 are transferred to the error signal calculation unit 1510, and the error signal d ′ j 1 is d ′ j 1 = t j − It is calculated as o ′ j 1 (1 ≦ j ≦ N 1 ) (139). The result is the matrix correction amount estimation unit 15
The error evaluation amount E for determining the learning stop is sent to 16 It is obtained by executing the calculation represented by the following equation. Further, o ′ j 1 (1 ≦ j ≦ N 1 ) is transferred from the output layer storage unit 1505 and o j 0 (1 ≦ i ≦ N 0 ) is transferred from the input layer storage unit 1502 to the matrix correction amount estimation unit 1516, and the matrix The estimated value S'of the correction amount is calculated by the following formula.
なる式を実行する計算により求める。さらに、マトリク
ス修正量推定部1516において出力信号と教師信号との誤
差の評価量を、 S′<Th1 E>Th2 (142) なる条件判定を実行し、上記の(142)式で表される条
件を満たした場合には学習停止状況にあると判断して、
入力層修正部1517、出力層修正部1418に信号を送り、各
層の出力信号の修正を行う。上記の条件を満たさない場
合は学習停止状況にはないとみなし、マトリクス修正量
計算部1516から各層の修正部への信号は出さない。 It is calculated by executing the following equation. Further, in the matrix correction amount estimation unit 1516, the evaluation amount of the error between the output signal and the teacher signal is subjected to the condition determination S ′ <Th1 E> Th2 (142), and the condition represented by the above expression (142) is satisfied. If it satisfies, it is judged that the learning is stopped,
A signal is sent to the input layer correction unit 1517 and the output layer correction unit 1418 to correct the output signal of each layer. If the above conditions are not satisfied, it is considered that the learning is not stopped, and no signal is output from the matrix correction amount calculation unit 1516 to the correction unit of each layer.
この判定条件は、誤差の評価量Eが大きいにも関わら
ず、重みマトリクスの修正量Sが0に近い場合には、学
習停止とみなしている。This determination condition considers that learning is stopped when the correction amount S of the weight matrix is close to 0 in spite of the large error evaluation amount E.
学習停止の信号を受けた入力層修正部1517では、入力
層記憶部1502に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (143) なる計算を実行して入力値oi 0を修正して、再び入力層
記憶部1502に格納し、入力層の値が0や1に近い値とな
ることを避ける。出力層でのレンジ修正部1318では p=p′ q=q′ (144) なる式の計算を実現して、すでに述べたようにシグモイ
ド関数の傾きを緩やかにして、中間層出力や出力層出力
値を再計算し、それらが0や1に近い値となることを避
け、学習停止を引き起こすことをなくす。その上で、再
び式(156)と式(158)で示す計算を実行することによ
り重みマトリクスの修正を実現する1回の学習の終了後
にはp,qを初期化する 最後に、修正された各層の信号記憶部1502,1505の値
を用いて重みマトリクスの修正を行う逆伝搬処理の説明
をする。The input layer correction unit 1517 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 1502, and o i 0 = Min (Max (o i 0 , L), U) (143 ) Is performed to correct the input value o i 0 and store it again in the input layer storage unit 1502 to avoid that the value of the input layer becomes close to 0 or 1. The range corrector 1318 in the output layer realizes the calculation of the equation p = p ′ q = q ′ (144) to make the gradient of the sigmoid function gentle as described above, and to output the intermediate layer output and the output layer output. Recalculate the values to avoid making them close to 0 or 1 and avoiding learning stops. Then, the calculations shown in Eqs. (156) and (158) are executed again to realize the modification of the weight matrix. After one learning, p and q are initialized. Finally, the modification is performed. The back propagation processing for correcting the weight matrix using the values of the signal storage units 1502 and 1505 of each layer will be described.
誤差計算部1510で予め式(156)に従って求められて
いるd′j 1と出力信号記憶部に保持される出力信号記憶
部に保持される出力信号o′j 1とから逆伝搬誤差を評価
し、 dj 1=d′j 1×o′j 1×(1−o′j 1) (145) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部1512に転送して、 wij 1=wij 1+a×dj 1×oi 0 (146) θi 1=θi 1+b×dj 1 (147) なる式を実行する計算により重みマトリクスを修正し、
結果を再び重みマトリクス記憶部1511に記憶する。1回
の学習の終了後にはp,qは再度初期値に設定する。Evaluate the backpropagation error from j 1 Metropolitan 'output signal o is held in the output signal storage unit held by the j 1 and the output signal storage unit' that d which is determined in accordance with pre equation (156) by the error calculation section 1510 , D j 1 = d ′ j 1 × o ′ j 1 × (1-o ′ j 1 ) (145) After calculating d j 1 (1 ≦ j ≦ N 1 ) by the calculation, the matrix Transferred to the correction unit 1512 and weighted by calculation by executing the formula w ij 1 = w ij 1 + a × d j 1 × o i 0 (146) θ i 1 = θ i 1 + b × d j 1 (147) Modify the matrix,
The result is stored again in the weight matrix storage unit 1511. After completion of one learning, p and q are set to initial values again.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
第6図は第6の本発明のパターン学習装置の実施例を
示す図である。学習は、入力パターンと教師信号を繰り
返し与えることによりなされるが、まず1つの入力パタ
ーンと1つの教師信号を与えた場合について説明する。
予め、マトリクス積演算部で用いられるマトリクスを蓄
えるマトリクス記憶部611,612は乱数により初期化して
おく。FIG. 6 is a diagram showing an embodiment of the pattern learning apparatus of the sixth invention. Learning is performed by repeatedly giving an input pattern and a teacher signal. First, a case where one input pattern and one teacher signal are given will be described.
The matrix storage units 611 and 612 that store the matrix used in the matrix product calculation unit are initialized in advance with random numbers.
まず、入力値から出力値を計算するフィードフォワー
ドの処理を説明する。入力パターンはベクトル値として
端子601より入力され、入力層記憶部602に蓄えられる。
入力層記憶部602は、N0次元のベクトルを保持するレジ
スタにより構成され、ベクトルの全要素はマトリクス積
演算部603に送られる。入力されるベクトル値をoi 0(1
≦i≦N0)とし、第1層重みマトリクス記憶部612に保
持されるマトリクス値をwij 1(1≦i≦N0、1≦j≦
N1)、中間層記憶部605に保持されるベクトル値をo′j
1(1≦j≦N1)とすると、マトリクス積演算部603で
は、 なる計算をおこなう。ただし、ここでθj 1はバイアス値
であり、第1層重みマトリクス記憶部612に記憶され
る。結果のoj 1(1≦j≦N1)は各々、s関数部604にお
いて o′j 1=p+(q−p){1+tanh(oj 1)}/2(148) なる計算によりo′j 1をもとめ、中間層記憶部605に記
憶する。p,qは1と0とする。First, a feedforward process of calculating an output value from an input value will be described. The input pattern is input as a vector value from the terminal 601 and stored in the input layer storage unit 602.
The input layer storage unit 602 is composed of a register that holds N 0 -dimensional vectors, and all the elements of the vectors are sent to the matrix product calculation unit 603. The input vector value is o i 0 (1
≦ i ≦ N 0 ) and the matrix value held in the first layer weight matrix storage unit 612 is w ij 1 (1 ≦ i ≦ N 0 , 1 ≦ j ≦
N 1 ), the vector value held in the intermediate layer storage unit 605 is represented by o ′ j
If 1 (1 ≦ j ≦ N 1 ), the matrix product calculation unit 603 Is calculated. However, θ j 1 is a bias value, and is stored in the first layer weight matrix storage unit 612. The resulting o j 1 (1 ≦ j ≦ N 1 ) is calculated as o ′ j 1 = p + (q−p) {1 + tanh (o j 1 )} / 2 (148) in the s-function unit 604. j 1 is obtained and stored in the intermediate layer storage unit 605. p and q are 1 and 0.
第2層重みマトリクス記憶部611に記憶される重みマ
トリクスをwjk 2(1≦i≦N1、1≦j≦N2)とし、同記
憶部611に記憶されるバイアス値をθk 2とするとマトリ
クス演算部606では、 なる計算をおこなう。結果のok 2(1≦k≦N2)は各
々、s関数部607において o′k 2={1+tanh(ok 2)}/2 (151) なる計算によりo′k 2をもとめ、出力信号として出力層
記憶部608に記憶される。The weight matrix stored in the second layer weight matrix storage unit 611 is w jk 2 (1 ≦ i ≦ N 1 , 1 ≦ j ≦ N 2 ), and the bias value stored in the storage unit 611 is θ k 2 . Then, in the matrix calculation unit 606, Is calculated. Results of o k 2 (1 ≦ k ≦ N 2) each of the s function unit 607 o determine the k 2 'k 2 = {1 + tanh (o k 2)} / 2 (151) calculates o by comprising' output It is stored in the output layer storage unit 608 as a signal.
つぎに、学習停止の判定を行う部分の動作について説
明する。Next, the operation of the part that determines the learning stop will be described.
上述のフィードフォワード処理により求められた出力
信号に対し、その理想的な値である教師信号を端子620
より入力して教師信号記憶部609に保持し、その値t
k(1≦k≦N2)と出力信号記憶部608内の値o′k 2とを
誤差信号計算部610に転送して、誤差信号d′k 2 d′k 2=tk−o′k 2(1≦k≦N2) (152) として計算する。その結果はマトリクス修正量推定部に
送られ、学習停止の判定のための誤差評価量Eを なる式で表される計算を実行することにより求める。さ
らに出力層記憶部608からo′k 2(1≦k≦N2)を、中
間層記憶部605からo′j 1(1≦j≦N1)を、入力層記
憶部602からoi 0(1≦i≦N0)をマトリクス修正量推定
部616に転送し、マトリクス修正量の推定値S′を以下
の式で計算する。With respect to the output signal obtained by the above-mentioned feedforward processing, the teacher signal that is an ideal value thereof is set to the terminal 620.
Input from the teacher signal storage unit 609 and hold the value t
k (1 ≦ k ≦ N 2 ) and the value o ′ k 2 in the output signal storage unit 608 are transferred to the error signal calculation unit 610, and the error signal d ′ k 2 d ′ k 2 = t k −o ′. It is calculated as k 2 (1 ≦ k ≦ N 2 ) (152). The result is sent to the matrix correction amount estimation unit, and the error evaluation amount E for determining learning stop is calculated. It is obtained by executing the calculation represented by the following equation. Further, o ′ k 2 (1 ≦ k ≦ N 2 ) from the output layer storage unit 608, o ′ j 1 (1 ≦ j ≦ N 1 ) from the intermediate layer storage unit 605, and o i 0 from the input layer storage unit 602. (1 ≦ i ≦ N 0 ) is transferred to the matrix modification amount estimation unit 616, and the matrix modification amount estimated value S ′ is calculated by the following formula.
なる式を実行する計算により求める。さらに、マトリク
ス修正量推定部616において出力信号と教師信号との誤
差の評価量を、 S′<Th1 E>Th2 (155) なる条件判定を実行し、上記の(155)式で表される条
件を満たした場合には学習停止状況にあると判断して、
入力層修正部617、中間層修正部618、出力層修正部619
に信号を送り、各層の出力信号の修正を行う。上記の条
件を満たさない場合は学習停止状況にはないとみなし、
マトリクス修正量計算部616から各層の修正部への信号
は出さない。 It is calculated by executing the following equation. Further, in the matrix correction amount estimation unit 616, the evaluation amount of the error between the output signal and the teacher signal is subjected to the condition determination of S ′ <Th1 E> Th2 (155), and the condition expressed by the above formula (155) is satisfied. If it satisfies, it is judged that the learning is stopped,
Input layer correction unit 617, intermediate layer correction unit 618, output layer correction unit 619
The signal is sent to and the output signal of each layer is corrected. If the above conditions are not met, it is considered that the learning is not stopped,
No signal is output from the matrix correction amount calculation unit 616 to the correction unit of each layer.
この判定条件は、誤差の評価量Eが大きいにも関わら
ず、重みマトリクスの修正量Sが0に近い場合には、学
習停止とみなしている。This determination condition considers that learning is stopped when the correction amount S of the weight matrix is close to 0 in spite of the large error evaluation amount E.
学習停止の信号を受けた入力層修正部617では、入力
層記憶部602に保持される値oi 0を読みだし、 oi 0=Min(Max(oi 0,L),U) (156) なる計算を実行して入力値oi 0を修正して、再び入力層
記憶部602に格納し、入力層の値が0や1に近い値とな
ることを避ける。The input layer correction unit 617 that has received the learning stop signal reads out the value o i 0 held in the input layer storage unit 602, and o i 0 = Min (Max (o i 0 , L), U) (156 ) Is performed to correct the input value o i 0 and then stored again in the input layer storage unit 602 to avoid that the value of the input layer becomes close to 0 or 1.
中間層でのレンジ修正部618や出力層でのレンジ修正
部619では、 p=p′ q=q′ (157) なる式の計算を実現して、シグモイド関数レンジを修正
して、中間層出力や出力層出力値を再計算し、それらが
0や1に近い値となることを避け、学習停止を引き起こ
すことをなくす。実施例ではパラメータp′,q′を0.2
と0.8とした。その上で、再び式(149)と式(151)で
示す計算を実行することにより各層での出力値の修正を
実現する。1回の学習の終了後にはp,qを再度初期化す
る。The range corrector 618 in the middle layer and the range corrector 619 in the output layer realize the calculation of the equation p = p ′ q = q ′ (157), correct the sigmoid function range, and output the middle layer. And output layer output values are recalculated to prevent them from becoming values close to 0 and 1 and prevent learning stop. In the embodiment, the parameters p ′ and q ′ are set to 0.2.
And 0.8. Then, the calculations shown in the equations (149) and (151) are executed again to realize the correction of the output value in each layer. After one learning, p and q are initialized again.
最後に、修正された各層の信号記憶部602,605,608の
値を用いて重みマトリクスの修正を行う逆伝搬処理の説
明をする。Finally, the back propagation processing for correcting the weight matrix using the corrected values of the signal storage units 602, 605, 608 of the respective layers will be described.
誤差計算部610で予め式(152)に従って求められてい
るd′k 2と出力信号記憶部に保持される出力信号o′k 2
とから逆伝搬誤差を評価し、 dk 2=d′k 2×o′k 2×(1−o′k 2) (158) なる式を実行する計算によりdk 2(1≦k≦N2)を求め
た後に、その値をマトリクス修正部613と誤差逆伝搬部6
14に転送する。さらに、誤差信号d′k 2は、マトリクス
修正量計算部616にも転送され学習停止の観測に用いら
れる。The output signal o ′ k 2 held in the output signal storage unit and d ′ k 2 previously obtained by the error calculation unit 610 according to the equation (152).
The back-propagation error is evaluated from and d k 2 (1 ≦ k ≦ N is calculated by executing the equation d k 2 = d ′ k 2 × o ′ k 2 × (1-o ′ k 2 ) (158). 2 ) is obtained, and then the value is calculated by the matrix correction unit 613 and the error back propagation unit 6
Transfer to 14. Further, the error signal d ′ k 2 is also transferred to the matrix correction amount calculation unit 616 and used for observation of learning stop.
マトリクス修正部613では、 wjk 2=wjk 2+a×dk 2×o′j 1 (159) θj 2=θj 2+b×dk 2 (160) なる計算により第2層重みマトリクスを修正し、結果を
再び第2層重みマトリクス記憶部611に記憶する。The matrix correction unit 613 calculates the second layer weight matrix by the calculation w jk 2 = w jk 2 + a × d k 2 × o ′ j 1 (159) θ j 2 = θ j 2 + b × d k 2 (160). The corrected result is stored again in the second layer weight matrix storage unit 611.
誤差計算部610で式(158)を実行する計算により求め
られたdk 2は、誤差逆伝搬部614に送られ、マトリクス記
憶部611内から転送された重みマトリクス値とともに、 の計算をし、さに中間層記憶部605から転送されたo′j
1とから dj 1=d′j 1×o′j 1×(1−o′j 1) (162) なる式を実行する計算によりdj 1(1≦j≦N1)を求め
た後に、マトリクス修正部615に転送して、 wij 1=wij 1+a×dj 1×oi 0 (163) θi 1=θi 1+b×dj 1 (164) なる式を実行する計算により第1層重みマトリクスを修
正し、結果を再び第1層重みマトリクス記憶部612に記
憶する。1回の学習が終了した段階で、p,qは初期値に
戻す。The d k 2 obtained by the calculation of executing the equation (158) in the error calculation unit 610 is sent to the error back-propagation unit 614, and together with the weight matrix values transferred from the matrix storage unit 611, Of o ′ j transferred from the intermediate layer storage unit 605 to
After obtaining the d j 1 (1 ≦ j ≦ N 1) by d j 1 = d 'j 1 × o' j 1 × (1-o 'j 1) (162) comprising computing that executes equation 1 Metropolitan , A calculation for transferring to the matrix correction unit 615 and executing the formula w ij 1 = w ij 1 + a × d j 1 × o i 0 (163) θ i 1 = θ i 1 + b × d j 1 (164) The first layer weight matrix is corrected by and the result is stored again in the first layer weight matrix storage unit 612. When one learning is completed, p and q are returned to initial values.
以上が1回の学習処理の説明であるが、これを繰り返
して実行することにより、学習停止により妨害されるこ
となく、学習を完了することができる。The above is a description of the learning process once, but by repeating this process, the learning can be completed without being disturbed by the learning stop.
(発明の効果) 以上の説明で明らかなように、本願発明においては学
習停止を観測して、学習停止が発生している場合には、
出力信号と教師信号との誤差の評価量が大きいにも関わ
らず、重みマトリクスの修正量が0に近い場合には、学
習が停止する。これは、中間層や出力層の信号がほぼ0
か1であり、入力信号が0に近いために、重みマトリク
スの修正量が0となるからである。この状態を本願発明
の学習装置では、中間層や出力層の信号が0や1に近い
値になることを防ぎ、入力信号が0に近い値になること
を避けることにより学習停止を回避する。(Effects of the Invention) As is apparent from the above description, in the present invention, learning stop is observed, and when learning stop occurs,
Although the evaluation amount of the error between the output signal and the teacher signal is large, the learning is stopped when the correction amount of the weight matrix is close to zero. This means that the signals in the middle layer and the output layer are almost zero.
This is because the input signal is close to 0 and the correction amount of the weight matrix becomes 0. In this state, the learning apparatus of the present invention prevents the signals in the intermediate layer and the output layer from becoming values close to 0 and 1, and avoids the input signal from becoming values close to 0, thereby avoiding learning stop.
従来の学習方法により、学習停止に陥った重みマトリ
クスを初期値として、本願発明による学習装置を用い
て、パターンの学習を行った結果、学習停止の状態を脱
出して、正しい学習を完了することができた。According to the conventional learning method, using the weight matrix in which learning is stopped as an initial value, the learning apparatus according to the present invention is used to perform pattern learning, and as a result, the state of learning stop is escaped and correct learning is completed. I was able to.
第1図及び第10図は第1の発明の実施例を示すブロック
図、第2図及び第11図は第2の発明の実施例を示す図、
第3図及び第12図は第3の発明の実施例を示すブロック
図、第4図及び第13図は第4の発明の実施例を示すブロ
ック図、第5図及び第14図は第5の発明の実施例を示す
ブロック図、第6図及び第15図は第6の発明の実施例を
示すブロック図である。第7図は、シグモイド関数の出
力値に上限値、下限値を与えて、出力値が1や0に近く
なることを防ぐ効果を示す図である。第8図は、シグモ
イド関数の傾き制御のパラメータを変更して、シグモイ
ド関数の出力値が1や0に近くなることを防ぐ効果を示
す図である。第9図は、シグモイド関数の出力値のレン
ジを変更して、出力値が1や0に近くなることを防ぐ効
果を示す図である。 図において、 102,202,302,402,502,602,1002,1102,1202,1302,1402,1
502……入力層記憶部、 103,203,303,403,503,603,1003,1103,1203,1303,1403,1
503……マトリクス積演算部、 104,204,304,404,504,604,1004,1104,1204k,1304,1404,
1504……s関数部、 105,205,305,405,505,605……中間層記憶部、 106,206,306,406,606……マトリクス積演算部、 107,207,307,407,607,607……s関数部、 108,208,308,408,508,608,1005,1105,1205,1305,1405,1
505……出力層記憶部、 109,209,309,409,509,609,1009,1109,1209,1309,1409,1
509……教師信号記憶部、 110,210,310,410,510,610,1010,1110,1210,1310,1410,1
510……誤差計算部、 111,211,311,411,511,611,1011,1111,1211,1311,1411,1
511……マトリクス記憶部、 112,212,312,412,512,612……マトリクス国分、 113,213,313,413,513,613,1013,1113,1213,1313,1413,1
513……マトリクス修正部、 114,214,314,414,514,614……誤差逆伝搬部、 115,215,315,415,615……マトリクス修正部、 116,316,516,1016,1116,1216,1316,1416,1516……マト
リクス修正量計算部、 216,416,616……マトリクス修正量推定部、 117,217,317,417,517,617,1017,1117,1217,1317,1417,1
517……入力層修正部、 118,218……中間層修正部、 119,219,1018,1118……出力層修正部、 318,318,418,419,1218,1318……U0修正部、 518,519,618,619,1418,1518……レンジ修正部。1 and 10 are block diagrams showing an embodiment of the first invention, FIGS. 2 and 11 are diagrams showing an embodiment of the second invention,
FIGS. 3 and 12 are block diagrams showing an embodiment of the third invention, FIGS. 4 and 13 are block diagrams showing an embodiment of the fourth invention, and FIGS. 5 and 14 are fifth. FIG. 6 is a block diagram showing an embodiment of the present invention, and FIGS. 6 and 15 are block diagrams showing an embodiment of the sixth invention. FIG. 7 is a diagram showing the effect of giving an upper limit value and a lower limit value to the output value of the sigmoid function to prevent the output value from approaching 1 or 0. FIG. 8 is a diagram showing the effect of changing the slope control parameter of the sigmoid function to prevent the output value of the sigmoid function from approaching 1 or 0. FIG. 9 is a diagram showing the effect of preventing the output value from approaching 1 or 0 by changing the range of the output value of the sigmoid function. In the figure, 102,202,302,402,502,602,1002,1102,1202,1302,1402,1
502 ... Input layer storage unit, 103,203,303,403,503,603,1003,1103,1203,1303,1403,1
503 ... Matrix product operation unit, 104,204,304,404,504,604,1004,1104,1204k, 1304,1404,
1504 ... s function part, 105,205,305,405,505,605 ... intermediate layer storage part, 106,206,306,406,606 ... matrix product calculation part, 107,207,307,407,607,607 ... s function part, 108,208,308,408,508,608,1005,1105,1205,1305,1405,1
505 ... Output layer storage unit, 109,209,309,409,509,609,1009,1109,1209,1309,1409,1
509 ... Teacher signal memory, 110,210,310,410,510,610,1010,1110,1210,1310,1410,1
510 …… Error calculator, 111,211,311,411,511,611,1011,1111,1211,1311,1411,1
511 ... matrix storage unit, 112,212,312,412,512,612 ... Matrix Kokubu, 113,213,313,413,513,613,1013,1113,1213,1313,1413,1
513 ... matrix correction unit, 114,214,314,414,514,614 ... error backpropagation unit, 115,215,315,415,615 ... matrix correction unit, 116,316,516,516,1016,1116,1216,1316,1416,1516 ... matrix correction amount calculation unit, 216,416,616 ... matrix correction amount estimation Part, 117,217,317,417,517,617,1017,1117,1217,1317,1417,1
517 ... Input layer correction unit, 118,218 ... Middle layer correction unit, 119,219,1018,1118 ... Output layer correction unit, 318,318,418,419,1218,1318 ... U0 correction unit, 518,519,618,619,1418,1518 ... Range correction unit.
Claims (6)
を含む複数の層からなるフィードフォワード形の神経回
路網と、神経回路網内で用いられる重みマトリクスの修
正量の総和を計算した結果と予め定めたしきい値を比較
して、前記総和の計算結果の方が小さい場合で、かつ、
出力層の信号と教師信号との誤差を求めて当該誤差を予
め与えた別のしきい値と比較して前記誤差が大きい場合
に、学習が停止していると判定する手段と、学習が停止
していると判定された場合に、各層からの出力信号の各
々を予め与えたしきい値と比較し、しきい値よりも大き
い場合にのみ、出力信号の値に当該しきい値を代入し、
さらに出力信号を予め与えた別のしきい値と比較し、し
きい値よりも小さい場合にのみ、出力信号の値に当該し
きい値を代入して、出力信号を修正する手段とを備えた
ことを特徴とするパターン学習装置。1. A feed-forward type neural network composed of a plurality of layers including an input layer and an output layer for learning by a back propagation method, and a sum of correction amounts of weight matrices used in the neural network is calculated. By comparing the result with a predetermined threshold value, when the calculation result of the sum is smaller, and
A means for determining an error between the signal of the output layer and the teacher signal, comparing the error with another threshold value given in advance, and determining that learning is stopped when the error is large, and a means for stopping the learning. If it is determined that the output signal from each layer is compared with the threshold value given in advance, only when it is larger than the threshold value, the threshold value is substituted into the value of the output signal. ,
Furthermore, the output signal is compared with another threshold value given in advance, and only when the threshold value is smaller than the threshold value, the threshold value is substituted into the value of the output signal to modify the output signal. A pattern learning device characterized by the above.
を含む複数の層からなるフィードフォワード形の神経回
路網と、各層の信号から計算した神経回路網内で用いら
れる重みマトリクスの修正量の評価値を、各層の出力値
と当該層の上位の層の入力値とから計算して、予め定め
たしきいと比較し、前記修正量の評価値が小さい場合
で、かつ、出力層の信号と教師信号との誤差を求めて当
該誤差と予め与えた別のしきい値と比較して前記誤差が
大きい場合に、学習が停止していると判定する手段と、
学習が停止していると判定された場合に、各層からの出
力信号の各々を予め与えたしきい値と比較し、しきい値
よりも大きい場合にのみ、出力信号の値に当該しきい値
を代入し、さらに出力信号を予め与えた別のしきい値と
比較し、しきい値よりも小さい場合にのみ、出力信号の
値に当該しきい値を代入して、出力信号を修正する手段
とを備えたことを特徴とするパターン学習装置。2. A feedforward type neural network consisting of a plurality of layers including an input layer and an output layer for learning by a back propagation method, and modification of a weight matrix used in the neural network calculated from signals of each layer. The evaluation value of the amount is calculated from the output value of each layer and the input value of the upper layer of the layer, and compared with a predetermined threshold, and when the evaluation value of the correction amount is small, and the output layer Means for determining the error between the signal and the teacher signal and comparing the error with another threshold value given in advance and the error is large, and determining that learning is stopped,
When it is determined that learning has stopped, each output signal from each layer is compared with a preset threshold value, and the threshold value is added to the output signal value only when it is larger than the threshold value. Means for comparing the output signal with another threshold value given in advance, and only when the output signal is smaller than the threshold value, the threshold value is substituted for the value of the output signal to correct the output signal. And a pattern learning device.
含む複数の層からなるフィードフォワード形の神経回路
網と、神経回路網内で用いられる重みマトリクスの修正
量の総和を計算した結果と予め定めたしきい値を比較し
て、前記総和の計算結果の方が小さい場合で、かつ、出
力層の信号と教師信号との誤差を求めて当該誤差を予め
与えた別のしきい値と比較して前記誤差が大きい場合
に、学習が停止していると判定する手段と、学習が停止
している場合に、入力層の信号の各々を予め与えたしき
い値と比較し、当該しきい値よりも大きい場合にのみ、
前記入力信号の値に当該しきい値を代入し、さらに当該
入力信号を予め与えた別のしきい値と比較し、当該しき
い値よりも小さい場合にのみ、当該入力信号の値に当該
しきい値を代入して、入力信号を修正する手段と、入力
層以外の層での出力信号を求めるシグモイド関数の傾き
制御パラメータをより大きな値に変更して、再度当該出
力信号の値を計算して求める手段とを備えたことを特徴
とするパターン学習装置。3. A result of calculating a sum of correction amounts of a feed-forward type neural network consisting of a plurality of layers including an input layer and an output for learning by a back propagation method and a weight matrix used in the neural network. And a predetermined threshold value is compared, and when the calculation result of the total sum is smaller, and an error between the signal in the output layer and the teacher signal is obtained, another threshold value is given in advance. When the error is large compared with, means for determining that learning is stopped, and when learning is stopped, each of the signals of the input layer is compared with a predetermined threshold value, Only if greater than the threshold
The threshold value is substituted for the value of the input signal, the input signal is compared with another threshold value given in advance, and the value of the input signal is relevant only when it is smaller than the threshold value. Change the input signal by substituting the threshold value, and change the slope control parameter of the sigmoid function that determines the output signal in layers other than the input layer to a larger value, and then calculate the value of the output signal again. A pattern learning device comprising:
含む複数の層からなるフィードフォワード形の神経回路
網と、各層の信号から計算した神経回路網内で用いられ
る重みマトリクスの修正量の評価値を、各層の出力値と
当該層の上位の層の入力値とから計算して、予め定めた
しきい値と比較し、前記修正量の評価値が小さい場合
で、かつ、出力層の信号と教師信号との誤差を求めて当
該誤差と予め与えた別のしきい値と比較して前記誤差が
大きい場合に、学習が停止していると判定する手段と、
学習が停止している場合に、入力層の信号の各々を予め
与えたしきい値と比較し、当該しきい値よりも大きい場
合にのみ、前記入力信号の値に当該しきい値を代入し、
さらに当該入力信号を予め与えた別のしきい値と比較
し、当該しきい値よりも小さい場合にのみ、当該入力信
号の値に当該しきい値を代入して、入力信号を修正する
手段と、入力層以外の層での出力信号を求めるシグモイ
ド関数の傾き制御パラメータをより大きな値に変更し
て、再度当該出力信号の値を計算して求める手段とを備
えたことを特徴とするパターン学習装置。4. A feedforward type neural network consisting of a plurality of layers including an input layer and an output for learning by a back propagation method, and a correction amount of a weight matrix used in the neural network calculated from signals of each layer. Is calculated from the output value of each layer and the input value of the upper layer of the layer, and compared with a predetermined threshold value, when the evaluation value of the correction amount is small, and the output layer Means for determining the error between the signal and the teacher signal and comparing the error with another threshold value given in advance and the error is large, and determining that learning is stopped,
When learning is stopped, each of the signals in the input layer is compared with a pre-given threshold value, and only when it is larger than the threshold value, the threshold value is substituted into the value of the input signal. ,
Further, means for correcting the input signal by comparing the input signal with another threshold value given in advance and substituting the threshold value for the value of the input signal only when the input signal is smaller than the threshold value. , Pattern learning comprising means for changing the slope control parameter of a sigmoid function for obtaining an output signal in a layer other than the input layer to a larger value and calculating the value of the output signal again. apparatus.
含む複数の層からなるフィードフォワード形の神経回路
網と、神経回路網内で用いられる重みマトリクスの修正
量の総和を計算した結果と予め定めたしきい値を比較し
て、前記総和の計算結果の方が小さい場合で、かつ、出
力層の信号と教師信号との誤差を求めて当該誤差を予め
与えた別のしきい値と比較して前記誤差が大きい場合
に、学習が停止していると判定する手段と、学習が停止
している場合に、入力層の信号の各々を予め与えたしき
い値と比較し、当該しきい値よりも大きい場合にのみ、
前記入力信号の値に当該しきい値を代入し、さらに当該
入力信号を予め与えた別のしきい値と比較し、当該しき
い値よりも小さい場合にのみ、当該入力信号の値に当該
しきい値を代入して、入力信号を修正する手段と、入力
層以外の層での出力信号を求めるシグモイド関数の最大
値最小値間のレンジを小さくしてシグモイド関数を変更
して、再度当該出力信号の値を計算して求める手段とを
備えたことを特徴とするパターン学習装置。5. A result obtained by calculating a sum of correction amounts of a feedforward type neural network consisting of a plurality of layers including an input layer and an output for performing learning by a reverse transport method and a weight matrix used in the neural network. And a predetermined threshold value is compared, and when the calculation result of the total sum is smaller, and an error between the signal in the output layer and the teacher signal is obtained, another threshold value is given in advance. When the error is large compared with, means for determining that learning is stopped, and when learning is stopped, each of the signals of the input layer is compared with a predetermined threshold value, Only if greater than the threshold
The threshold value is substituted for the value of the input signal, the input signal is compared with another threshold value given in advance, and the value of the input signal is relevant only when it is smaller than the threshold value. Change the sigmoid function by reducing the range between the maximum and minimum values of the sigmoid function that finds the output signal in layers other than the input layer and the means that corrects the input signal by substituting the threshold value A pattern learning device, comprising: means for calculating and obtaining a signal value.
含む複数の層からなるフィードフォワード形の神経回路
網と、各層の信号から計算した神経回路網内で用いられ
る重みマトリクスの修正量の評価値を、各層の出力値と
当該層の上位の層の入力値とから計算して、予め定めた
しきいと比較し、前記修正量の評価値が小さい場合で、
かつ、出力層の信号と教師信号との誤差を求めて当該誤
差と予め与えた別のしきい値と比較して前記誤差が大き
い場合に、学習が停止していると判定する手段と、学習
が停止している場合に、入力層の信号の各々を予め与え
たしきい値と比較し、当該しきい値よりも大きい場合に
のみ、前記入力信号の値に当該しきい値を代入し、さら
に当該入力信号を予め与えた別のしきい値と比較し、当
該しきい値よりも小さい場合にのみ、当該入力信号の値
に当該しきい値を代入して、入力信号を修正する手段
と、入力層以外の層での出力信号を求めるシグモイド関
数の最大値最小値間のレンジを小さくしてシグモイド関
数を変更して、再度当該出力信号の値を計算して求める
手段とを備えたことを特徴とするパターン学習装置。6. A feedforward type neural network consisting of a plurality of layers including an input layer and an output for learning by a back propagation method, and a correction amount of a weight matrix used in the neural network calculated from signals of each layer. The evaluation value of, calculated from the output value of each layer and the input value of the upper layer of the layer, compared with a predetermined threshold, in the case where the evaluation value of the correction amount is small,
Further, means for determining an error between the output layer signal and the teacher signal and comparing the error with another threshold value given in advance to determine that the learning is stopped when the error is large, When is stopped, each of the signals of the input layer is compared with a pre-given threshold value, and only when it is larger than the threshold value, the threshold value is substituted into the value of the input signal, Further, means for correcting the input signal by comparing the input signal with another threshold value given in advance and substituting the threshold value for the value of the input signal only when the input signal is smaller than the threshold value. , A means for calculating the value of the output signal again by changing the sigmoid function by reducing the range between the maximum and minimum values of the sigmoid function for obtaining the output signal in the layers other than the input layer. A pattern learning device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1094563A JP2536146B2 (en) | 1989-01-31 | 1989-04-13 | Pattern learning device |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2323589 | 1989-01-31 | ||
JP1-23235 | 1989-01-31 | ||
JP1094563A JP2536146B2 (en) | 1989-01-31 | 1989-04-13 | Pattern learning device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02277180A JPH02277180A (en) | 1990-11-13 |
JP2536146B2 true JP2536146B2 (en) | 1996-09-18 |
Family
ID=26360557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1094563A Expired - Lifetime JP2536146B2 (en) | 1989-01-31 | 1989-04-13 | Pattern learning device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2536146B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866179A (en) * | 2012-09-13 | 2013-01-09 | 重庆大学 | Online recognition and inhibition method based on non-target interference smell in electronic nose of artificial intelligent learning machine |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04262453A (en) * | 1991-02-15 | 1992-09-17 | Hitachi Ltd | Neurolearning control method and equipment |
-
1989
- 1989-04-13 JP JP1094563A patent/JP2536146B2/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102866179A (en) * | 2012-09-13 | 2013-01-09 | 重庆大学 | Online recognition and inhibition method based on non-target interference smell in electronic nose of artificial intelligent learning machine |
CN102866179B (en) * | 2012-09-13 | 2014-06-18 | 重庆大学 | Online recognition and inhibition method based on non-target interference smell in electronic nose of artificial intelligent learning machine |
Also Published As
Publication number | Publication date |
---|---|
JPH02277180A (en) | 1990-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112101530B (en) | Neural network training method, device, equipment and storage medium | |
US20090299929A1 (en) | Methods of improved learning in simultaneous recurrent neural networks | |
CN106650022A (en) | Method for predicting fault of complex electronic device | |
CN110188875A (en) | A kind of Small Sample Database prediction technique and device | |
JP2536146B2 (en) | Pattern learning device | |
JPH07282168A (en) | Chaos-recurrent neuronetwork and its learning method | |
JP3214876B2 (en) | Neural network configuration method and neural network construction support system | |
US5627944A (en) | Parallel data processing system | |
Lavaei et al. | Dynamic analysis of structures using neural networks | |
JP3168204B2 (en) | Network configuration data processing device | |
US20140006321A1 (en) | Method for improving an autocorrector using auto-differentiation | |
Lewis et al. | Neural network control of robot arms and nonlinear systems | |
JP2000259598A (en) | Optimization learning method for neural network | |
JP2022020464A (en) | Neural network processing apparatus, neural network processing method, and computer program | |
JPH05290013A (en) | Neural network arithmetic unit | |
CN113485099A (en) | Online learning control method of nonlinear discrete time system | |
TWI789042B (en) | Neural network construction method and apparatus having average quantization mechanism | |
JPH0561848A (en) | Device and method for selecting and executing optimum algorithm | |
JPH0675935A (en) | Multivariable system construction method and its device | |
JP6741159B1 (en) | Inference apparatus and inference method | |
JP3232597B2 (en) | Neural network learning device | |
KR100342886B1 (en) | Method of learning binary system | |
JPH09101944A (en) | Neural network circuit | |
JP2021182345A (en) | Image processing method, image processing apparatus, and program | |
Barbeiro et al. | Improved PDE Models for Image Restoration through Backpropagation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070708 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080708 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090708 Year of fee payment: 13 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090708 Year of fee payment: 13 |