JP3276367B2 - Neural cell network - Google Patents

Neural cell network

Info

Publication number
JP3276367B2
JP3276367B2 JP27299890A JP27299890A JP3276367B2 JP 3276367 B2 JP3276367 B2 JP 3276367B2 JP 27299890 A JP27299890 A JP 27299890A JP 27299890 A JP27299890 A JP 27299890A JP 3276367 B2 JP3276367 B2 JP 3276367B2
Authority
JP
Japan
Prior art keywords
signal
network
pulse
input
pulse train
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP27299890A
Other languages
Japanese (ja)
Other versions
JPH04148389A (en
Inventor
裕俊 江口
俊之 古田
貴史 北口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP27299890A priority Critical patent/JP3276367B2/en
Publication of JPH04148389A publication Critical patent/JPH04148389A/en
Application granted granted Critical
Publication of JP3276367B2 publication Critical patent/JP3276367B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)

Description

【発明の詳細な説明】 技術分野 本発明は、信号処理方法及びその装置、より詳細に
は、神経回路網を模倣したニューラルコンピュータに関
し、例えば、文字や図形認識、ロボットなどの運動制
御、連想記憶等に応用して好適なものである。 従来技術 生体の情報処理の基本的な単位である神経細胞(ニュ
ーロン)の機能を模倣し、さらに、この「神経細胞模倣
素子」(神経細胞ユニット)をネットワークに構成する
ことで情報の並列処理をめざしたものが、いわゆるニュ
ーラルネットワークである。文字認識や、連想記憶、運
動制御等、生体ではいとも簡単に行われていても、従来
のノイマン型コンピュータではなかなか達成できないも
のが多い。生体の神経系、特に生体特有の機能、すなわ
ち並列処理、自己学習等を模倣して、これらの問題を解
決しようとする試みが、計算機シミュレーションを中心
として、盛んに行われている。 第6図は、従来のニューラルネットワークのモデルに
ついて説明するための図で、図中、Aは、1つの神経細
胞ユニットを表し、第7図は、それをネットワークに構
成したもので、A1,A2,A3は、それぞれ神経細胞ユニット
を表わす。1つの神経細胞ユニットは、多数の他の神経
細胞ユニットと結合しており、それらから受けた信号を
処理して出力する。第7図の場合、ネットワークは階層
型であり、神経処理ユニットは、1つ前の層(図中左
側)の神経細胞ユニットより信号を受け、1つ先の層
(図中右側)の神経細胞ユニットへ出力する。 最初に、第6図に示した神経細胞ユニットAについて
説明すると、1つの神経細胞ユニットと他の神経細胞ユ
ニットとの結合の度合を表すのが、結合係数(T)と呼
ばれているものであり、i番目の神経細胞ユニットとj
番目の神経細胞ユニットの結合係数を、一般に、Tij
表す。結合には、相手のニューロンからの信号が大きい
ほど自分の出力が大きくなる興奮性結合と、逆に、相手
の信号が大きいほど自分の出力が小さくなる抑制性結合
があり、Tij>0が興奮性結合、Tij<0が抑制性結合で
あることをそれぞれ表す。j番目の神経細胞ユニットへ
の入力は、i番目の神経細胞ユニットからの出力をyi
すると、このyiにTijをかけたTijyiとして求められる。
前述のように、1つの神経細胞ユニットは多数の神経細
胞ユニットと結合しているので、全ての神経細胞ユニッ
トに対するTijyiを足し合わせたもの、すわわち、ΣTij
yiが、ネットワーク内における1つの神経細胞ユニット
への入力となる。これを内部電位と言い、ujで表す。 uj=ΣTijyi (1) 次に、この入力(=内部電位)を非線形処理すること
で、その神経細胞ユニットの出力とする。ここで用いる
非線形関数を神経細胞応答関数と呼び、次に示すよう
な、シグモイド関数f(x)を用いる。 f(x)=1/(1+e-x) (2) 第8図は、このシグモイド関数を示す図である。 上記神経細胞ユニットを、第7図に示すような、ネッ
トワークに構成し、各結合係数を与え、式(1)、
(2)を並列的に次々と計算することにより、情報の並
列処理が可能となり、最終的な出力が得られる。 第9図は、上記ネットワークを電気回路で実現したも
のの一例を示す図で(特開昭62−295188号公報)、これ
は、ネットワークへの入力や出力の信号強度を電圧で表
し、上記神経細胞ユニット間の結合係数の値を抵抗値で
実現したものである。すなわち、第9図において、複数
の増幅器33は、反転出力33a及び非反転出力33bとを有
し、かつ、各増幅器33の入力には入力電流を供給する手
段32を有しており、予め選ばれた第1の値又は予め選ば
れた第2の値であるコンダクタンス(Tij)で前記増幅
器の各々の出力を前記入力に接続する相互接続マトリッ
クス31を有している。前記のTijはi番目の増幅器の出
力とj番目の増幅器との入力との間の相互コンダクタン
スを表わし、前記コンダクタンスTijは、回路網が平衡
する複数の極小値を作るように選ばれ、複数の極小値を
持ったエネルギー関数を最小にするようにしている。結
合係数Tijが負の場合、負の抵抗値は実現できないの
で、増幅器33を用いて出力を反転させることでこれを実
現している。また、第8図で示したシグモイド関数に相
当するものとして、増幅器33を用いている。 次に、ネットワークの学習機能について説明する。 数値計算で用いられている学習法則としては、バック
プロパゲーションと呼ばれる次のようなものがある。 まず、各神経細胞ユニット間の結合係数は、最初ラン
ダムに与えておく。この状態で、ネットワークに入力を
与えると、その出力結果は、必ずしも望ましいものでは
ない。そこで、このネットワークに正解(=教師信号)
を与えて、再び、同じ入力があったとき正解になる(=
望ましい出力結果が得られる)ように、各結合係数を変
化させる。例えば、第7図に示すような階層型のネット
ワークにおいて、最終層(図の右の層)のj番目の神経
細胞ユニットの出力をyjとし、その神経細胞ユニットに
対する教師信号をdjとすると、 E=Σ(dj−yj (3) で表されるEが最小となるように、 を用いて、Tijを変化させる。さらに具体的に説明する
と、まず、次のようにδ(誤差信号)を求める。 δ=(dj−yj)×f'(uj) 〔出力層の場合〕 (5) δ=ΣδiTij×f'(uj) 〔前記より前の層(中間層)の場合〕 (6) ただし、f'はfの1階微分である。これを用いて、 ΔTij=η(δjyi)+αΔTij' Tij=Tij'+ΔTij (7) とすることで、Tijを変化させる。ただし、ΔTij'、
Tij'はそれぞれ前回の学習時での値である。ここで、η
は学習定数、αは安定化定数と呼ばれているものであ
る。各々、理論的には求められないので経験的に求め
る。このような方法で結合係数を変化させる量を求める
アルゴリズムを、バックプロパゲーションと呼んでい
る。 上記の過程、すなわち学習を繰り返すことで、やが
て、与えられた入力に対して望ましい結果が得られるよ
うなTijが決定される。このことにより、ネットワーク
の学習機能が実現できる。 第10図乃至第12図は、このようなニューラルネットワ
ークをデジタル回路で実現した例を示す図で、第10図
は、単一の神経細胞回路構成例を示し、図中、35はシナ
プス回路、36は樹状突起回路、37は細胞体回路を示す。
第11図は、第10図に示したシナプス回路35の構成例、第
12図は、第10図に示した細胞体回路37の構成例を示す図
で、第11図中のfは入力信号、wは重み付けの値、aは
フィードバック信号に掛ける倍率(1または2)であ
る。これは、神経細胞ユニットの入出力信号をパルス列
で表現し、信号の値をパルス密度で表している。結合係
数は2進数で取扱い、メモリ上に保存している。信号の
演算は次のように行う。まず、入力信号をレートマルチ
プライヤーのクロックへ入力し、結合係数をレート値へ
入力することで、入力信号のパルス密度をレート値に応
じて減らす。これは、前述のバックプロパゲーションモ
デルにおける式Tijyiの部分に相当する。次にΣTijyi
Σの部分は、樹状突起回路36によって示されるOR回路で
実現している。結合には興奮性、抑制性があるので、あ
らかじめグループ分けしておき、それぞれのグループ別
にORをとる。第10図において、F1は興奮性、F2は抑制性
出力を示す。この2つの出力を、第12図に示したカウン
ターのアップ側、ダウン側にそれぞれ入力してカウント
することで、出力が得られる。この出力は2進数である
ので再びレートマルチプライヤーを用いて、パルス密度
に変換する。この神経細胞ユニットを複数個用いてネッ
トワークを構成することによって、ニューラルネットワ
ークが実現できる。学習機能は、ネットワークの最終出
力を外部のコンピュータに入力し、コンピュータ内部で
数値計算を行い、その結果を結合係数のメモリに書き込
むことによって実現している。 しかしながら、ニューラルネットワークの試みは、計
算機シミュレーションで行われているものが多く、本来
の機能を発揮するには、並列処理が必要であり、ネット
ワークのハードウエア化は欠くことのできないものであ
る。 神経細胞ユニットのハードウエア化の試みは、ほとん
どの場合アナログ回路で行われており、これらの回路に
は以下のような問題点がある。 ネットワーク内部での信号の強度を電圧や電流などの
アナログ値で表し、内部の演算もアナログ的に行うた
め、温度特性や、電源投入直後のドリフト等により、そ
の値が変化する。 ネットワークの構成するために多くの素子を必要とす
るが、それぞれの特性を揃えることは困難である。 1つの素子の精度や安定性が問題になると、それをネ
ットワークにした場合に新たな問題が起きる可能性があ
り、ネットワーク全体における動作が予想できない。 結合係数の値が固定であり、あらかじめシミュレーシ
ョンなど他の方法で学習させた値を使わざるを得ず、自
己学習ができない。 一方、バックプロパゲーションを用いた学習方法を何
らかの手段でハードウエア化したようとした場合、学習
には多量の四則演算が必要であり、実現が困難である。
また学習方法そのものもハードウエア化に対しては不向
きである。 従来のデジタル回路を用いたネットワークも、学習は
外部のコンピュータで行っており、従って自己学習機能
を持っていない。そのうえ、パルス密度の信号をカウン
ターを用いて一旦数値(2進数)に変換し、その後再び
パルス密度に変換するため、回路の構成が複雑なものに
なっている。 以上をまとめると、従来技術では次の欠点を有する。 ネットワーク内部の演算を行うアナログ回路は、動作
に確実性がない。 数値計算による学習方法も計算が複雑であり、ハード
ウエア化に適さない。 従来のデジタル方式回路では、回路構成が複雑であ
る。 ハードウエア上で自己学習ができない。 そこで、本出願人は、先に、ネットワーク内部の演算
には、動作が確実なデジタル回路を採用し、かつ、ハー
ドウエア化が容易でシンプルな信号処理、学習方法を提
供し、さらに、実際にハードウエア自己学習を実現する
ことが可能な信号処理回路について提案した。 目的 本発明は、上述のごとき実情に鑑みてなされたもの
で、特に、本出願人が先に提案した信号処理回路を更に
改良して、入力信号パルス列や教師信号パルス列が1つ
のパターンに固定されることなく、より学習能力の高い
ネットワークを実現し、より汎用性の高い信号処理回路
を実現することを目的としてなされたものである。 構成 本発明は、上記目的を達成するために、神経細胞模倣
素子を階層型ネットワークに構成した神経細胞回路網で
あって、この神経細胞回路網の入力層の神経細胞模倣素
子への入力信号はパルス列の信号であり、この神経細胞
回路網内ではパルス列が表すパルス密度を用いて演算
し、教師信号と神経細胞回路網の出力層からの出力信号
との誤差信号からバックプロパゲーションにより、各神
経細胞模倣素子間の結合係数を変化させることによって
学習を行う神経細胞回路網において、前記神経細胞回路
網に入力する入力信号データ又は教師信号データのパル
ス列パターンが、前記神経細胞回路網が学習を行うたび
毎に、パルス密度は変えないで、パルスの並び順序を変
えることで得られる異なるパルス列パターンであること
を特徴としたものである。以下、本発明の実施例に基い
て説明する。 最初に、本発明の基本的な考え方について説明する
と、本発明の基本的な考え方は、 神経細胞ユニットに関する入出力信号・中間信号・結
合係数・教師信号などは、すべて0、1の2値で表され
たパルス列で表現する。 ネットワーク内部での信号の値は、パルス密度で表す
(ある一定時間内の「1」の数)。 神経細胞ユニット内での計算は、パルス列同士の論理
演算で行う。 結合係数のパルス列は、神経細胞ユニット内のメモリ
に格納する。 学習は、このパルス列を書き換えることで実現する。 与えられた教師信号を元に誤差を計算し、これに基づ
いて、結合係数を変化させる。この場合において、誤差
の計算及び結合係数の変化分の計算もすべて、0、1の
パルス列の論理演算で行う。 上記で示した神経細胞ユニットにより構成したネット
ワーク回路を用いて、これに教師付き学習を行わせる場
合において、入力信号及び教師信号のパルス列を、1つ
のパターンに限定せず、同じパルス密度を有する他のパ
ルス列を随時用いることで、ネットワークの学習能力を
高める。 というものであり、以下、これを具体化した実施例に基
づいて詳細に説明する。 説明は、まず、デジタル論理回路を用いた神経細胞ユ
ニットと、それを用いて構成したネットワーク回路によ
る信号処理について行い、次に、上記の処理を行う回路
の例について行う。 I.デジタル論理回路による信号処理
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a signal processing method and apparatus, and more particularly, to a neural computer that imitates a neural network, for example, character and figure recognition, motion control of a robot or the like, and associative memory. It is suitable for application to the like. 2. Description of the Related Art Parallel processing of information is achieved by imitating the functions of nerve cells (neurons), which are the basic units of information processing in living organisms, and by configuring this "neural cell mimic element" (neural cell unit) in a network. The goal is a so-called neural network. Even if it is very easily performed on a living body, such as character recognition, associative memory, and motion control, there are many that cannot be easily achieved by a conventional Neumann computer. Attempts to solve these problems by imitating the nervous system of a living body, particularly, a function unique to the living body, that is, parallel processing, self-learning, and the like, have been actively made mainly by computer simulation. Figure 6 is a diagram for explaining a model of a conventional neural network, in the figure, A is represents one neuron unit, Figure 7 is obtained by constituting it to the network, A 1, A 2 and A 3 each represent a neuron unit. One neuron unit is coupled to a number of other neuron units and processes and outputs signals received from them. In the case of FIG. 7, the network is of a hierarchical type, and the neural processing unit receives a signal from the neural cell unit of the immediately preceding layer (left side in the figure) and the neural cell in the next layer (right side in the figure). Output to the unit. First, the neuron unit A shown in FIG. 6 will be described. The degree of coupling between one neuron unit and another neuron unit is called a coupling coefficient (T). Yes, i-th neuron unit and j
The coupling coefficient of the th neuron unit is generally denoted by T ij . There are two types of coupling: excitatory coupling, in which the larger the signal from the partner's neuron, the larger the output of the partner, and conversely, the larger the signal of the partner, the smaller the output, in which the own output is smaller, and T ij > 0. An excitatory connection and T ij <0 indicate an inhibitory connection, respectively. The input to the j-th neuron unit, and the output from the i-th neuron units and y i, determined as T ij y i obtained by multiplying the T ij in the y i.
As described above, since one neuron unit is connected to many neuron units, the sum of T ij y i for all neuron units, that is, ΣT ij
y i is an input to one neuron unit in the network. This is called an internal potential and is represented by u j . u j = ΣT ij y i (1) Next, this input (= internal potential) is subjected to non-linear processing to obtain the output of the nerve cell unit. The nonlinear function used here is called a nerve cell response function, and a sigmoid function f (x) as shown below is used. f (x) = 1 / (1 + e− x ) (2) FIG. 8 is a diagram showing the sigmoid function. The above-mentioned nerve cell unit is configured into a network as shown in FIG.
By calculating (2) one after another in parallel, parallel processing of information becomes possible, and a final output is obtained. FIG. 9 is a diagram showing an example of the above-mentioned network realized by an electric circuit (Japanese Patent Laid-Open No. 62-295188), in which the signal strength of input and output to the network is represented by a voltage, The value of the coupling coefficient between the units is realized by a resistance value. That is, in FIG. 9, a plurality of amplifiers 33 have an inverting output 33a and a non-inverting output 33b, and each of the amplifiers 33 has a means 32 for supplying an input current to an input of the amplifier 33. An interconnect matrix 31 connects the output of each of the amplifiers to the input with a conductance (T ij ) of a first value or a preselected second value. T ij represents the transconductance between the output of the i-th amplifier and the input of the j-th amplifier, wherein the conductance T ij is chosen to create a plurality of local minima where the network is balanced; The energy function with multiple minima is minimized. When the coupling coefficient T ij is negative, a negative resistance value cannot be realized, and this is realized by inverting the output using the amplifier 33. An amplifier 33 is used as a function corresponding to the sigmoid function shown in FIG. Next, the learning function of the network will be described. As a learning rule used in numerical calculation, there is the following one called back propagation. First, the coupling coefficient between each neuron unit is first randomly given. In this state, if an input is provided to the network, the output result is not always desirable. Therefore, the correct answer (= teacher signal)
And again, when the same input is given, the answer is correct (=
Each coupling coefficient is changed so that a desired output result is obtained. For example, in the hierarchical network shown in FIG. 7, the output of the j-th neuron unit in the final layer (right layer in the figure) is y j, and the teacher signal for the neuron unit is d j. , E = Σ (d j −y j ) 2 (3) so that E represented by Is used to change T ij . More specifically, first, δ (error signal) is obtained as follows. δ j = (d j −y j ) × f ′ (u j ) [in the case of the output layer] (5) δ j = Σδ i T ij × f ′ (u j ) [the previous layer (intermediate layer) (6) where f ′ is the first derivative of f. Using this, T ij is changed by setting ΔT ij = η (δ j y i ) + αΔT ij ′ T ij = T ij ′ + ΔT ij (7). Where ΔT ij ',
T ij 'is a value at the time of the previous learning. Where η
Is a learning constant and α is a stabilization constant. Since each is not theoretically determined, it is determined empirically. An algorithm for obtaining the amount by which the coupling coefficient is changed by such a method is called back propagation. By repeating the above process, i.e. the learning, eventually, T ij such desired results for a given input is obtained is determined. As a result, a network learning function can be realized. 10 to 12 are diagrams showing an example in which such a neural network is realized by a digital circuit.FIG. 10 shows an example of a single nerve cell circuit configuration, in which 35 is a synapse circuit, 36 indicates a dendritic circuit, and 37 indicates a cell body circuit.
FIG. 11 is a configuration example of the synapse circuit 35 shown in FIG.
FIG. 12 is a diagram showing a configuration example of the cell body circuit 37 shown in FIG. 10. In FIG. 11, f is an input signal, w is a weighting value, and a is a magnification (1 or 2) by which the feedback signal is multiplied. It is. This means that input / output signals of the nerve cell unit are represented by pulse trains, and signal values are represented by pulse densities. Coupling coefficients are handled in binary numbers and stored in memory. The signal operation is performed as follows. First, the input signal is input to the clock of the rate multiplier, and the coupling coefficient is input to the rate value, thereby reducing the pulse density of the input signal according to the rate value. This corresponds to the expression T ij y i in the above-described back propagation model. Next, the part of {T ij y i } is realized by an OR circuit indicated by the dendrite circuit 36. Since the coupling has excitatory and inhibitory properties, it is divided into groups in advance, and OR is performed for each group. In Figure 10, F 1 is excitatory, F 2 denotes the inhibitory output. These two outputs are input to the up side and the down side of the counter shown in FIG. 12, respectively, and counted to obtain outputs. Since this output is a binary number, it is converted into a pulse density again using a rate multiplier. By constructing a network using a plurality of the nerve cell units, a neural network can be realized. The learning function is realized by inputting the final output of the network to an external computer, performing a numerical calculation inside the computer, and writing the result to a memory for coupling coefficients. However, many trials of neural networks have been performed by computer simulation, and parallel processing is required to exhibit their original functions, and hardware implementation of the network is indispensable. Attempts to implement a neural cell unit in hardware are mostly made with analog circuits, and these circuits have the following problems. The strength of a signal inside the network is represented by an analog value such as a voltage or a current, and the internal calculation is also performed in an analog manner. Many elements are required to construct a network, but it is difficult to make the characteristics of each element uniform. If the accuracy or stability of one element becomes a problem, a new problem may occur when it is made into a network, and the operation in the entire network cannot be predicted. The value of the coupling coefficient is fixed, and a value learned in advance by another method such as simulation has to be used, and self-learning cannot be performed. On the other hand, if the learning method using back propagation is realized by hardware by some means, a large amount of four arithmetic operations are required for learning, and it is difficult to realize.
Also, the learning method itself is not suitable for hardware implementation. A network using a conventional digital circuit also performs learning by an external computer, and thus does not have a self-learning function. In addition, since the signal of the pulse density is once converted into a numerical value (binary number) using a counter, and then converted into the pulse density again, the configuration of the circuit is complicated. In summary, the prior art has the following disadvantages. Analog circuits that perform calculations inside the network do not operate reliably. The learning method by numerical calculation is also complicated in calculation and is not suitable for hardware implementation. The circuit configuration of a conventional digital circuit is complicated. You cannot self-learn on hardware. Therefore, the present applicant first employed a digital circuit with a reliable operation for the operation inside the network, and provided a simple signal processing and learning method that was easy to implement in hardware. A signal processing circuit capable of realizing hardware self-learning was proposed. Object The present invention has been made in view of the above-mentioned circumstances, and in particular, further improves the signal processing circuit previously proposed by the present applicant so that the input signal pulse train and the teacher signal pulse train are fixed to one pattern. The purpose of the present invention is to realize a network having a higher learning ability without realizing a more versatile signal processing circuit. ConfigurationIn order to achieve the above object, the present invention provides a neural cell network in which a neural cell mimic element is configured in a hierarchical network, and an input signal to the neural cell mimic element of an input layer of the neural cell network is This signal is a pulse train signal. In this neural cell network, calculation is performed using the pulse density represented by the pulse train, and each neural network is backpropagated from an error signal between the teacher signal and an output signal from the output layer of the neural cell network. In a neural cell network that performs learning by changing a coupling coefficient between cell mimic elements, a pulse train pattern of input signal data or teacher signal data input to the neural cell network performs learning by the neural cell network. It is characterized by a different pulse train pattern obtained by changing the pulse arrangement order without changing the pulse density every time. It is. Hereinafter, a description will be given based on an example of the present invention. First, the basic idea of the present invention will be described. The basic idea of the present invention is that input / output signals, intermediate signals, coupling coefficients, teacher signals, etc. relating to a nerve cell unit are all binary values of 0 and 1. It is represented by the expressed pulse train. The value of the signal inside the network is represented by the pulse density (the number of “1” within a certain time). The calculation in the nerve cell unit is performed by a logical operation between pulse trains. The pulse train of the coupling coefficient is stored in a memory in the nerve cell unit. Learning is realized by rewriting this pulse train. An error is calculated based on the given teacher signal, and the coupling coefficient is changed based on the error. In this case, the calculation of the error and the calculation of the change in the coupling coefficient are all performed by the logical operation of the 0 and 1 pulse trains. In the case where the supervised learning is performed by using the network circuit configured by the neural cell unit described above, the pulse train of the input signal and the supervisory signal is not limited to one pattern, and the pulse train having the same pulse density is used. By using the pulse train at any time, the learning ability of the network is enhanced. This will be described in detail below based on an embodiment that embodies this. The description will be given first on signal processing by a nerve cell unit using a digital logic circuit and a network circuit configured using the same, and then on an example of a circuit for performing the above processing. I. Signal processing by digital logic circuit

【フォワードプロセスにおける信号演算】[Signal operation in forward process]

第1図は、1つの神経細胞ユニットに相当する部分で
あり、それを第7図に示したようにネットワークに構成
して、従来と同じ階層型として用いる。神経細胞ユニッ
トの入出力はすべて0、1に2値化され、さらに同期化
されたものを用いる。入力jの信号の値(=強度)は、
パルス密度で表現し、例えば、次に示すパルス列のよう
に、ある一定時間内にある、1の状態数で表す。 これは4/6を表す信号を示したもので、同期パルス6
個中に入力信号は1が4個、0が2個であることを表わ
している。このとき、1と0の並び方は後述するように
ランダムであることが望ましい。 一方、結合係数Tijも同様にパルス密度で表現し、0
と1のビット列として、あらじめメモリに用意してお
く。 これは、結合係数の値が3/6であることを表し、この
ときも、0と1の並び方はランダムである方が望まし
い。具体的にどうやって決めるかは後述する。そして、
この結合係数パルス列を同期クロックに応じてメモリよ
り順次読みだし、第1図のAND回路によって、入力パル
ス列とのANDをとる(yi∩Tij)。これを神経細胞ユニッ
トjへの入力とする。上記の例を用いて説明すると、信
号「101101」と入力された場合、これと同期してメモリ
から結合係数のパルス列を呼び出し、順次ANDをとるこ
とによって、 に示すようなパルス列(ビット列)「101000」が得られ
る。これは入力信号のパルス列yiが結合係数のパルス列
Tijにより変換され、その結果、神経細胞ユニットへの
入力パルス密度が2/6となることを示している。AND回路
の出力のパルス密度は、近似的には「入力信号のパルス
密度」と「結合係数のパルス密度」の積となり、アナロ
グ方式における場合の信号の積と同様の機能を有する。
これは、信号の列(パルス列)が長いほど、また、1と
0の並び方がランダムであるほど、数値の積に近い機能
になる。ランダムでないとは、1(または0)が密集し
て(密接)していることを意味する。入力パルス列と比
較して、結合係数のパルス列の長さが短く、読み出すべ
きデータがなくなってしまった場合には、再び結合係数
のパルス列の先頭に戻って、読み出しを繰り返すことで
対処できる。 1つの神経細胞ユニットは多くの入力を持つので、先
に説明した「入力信号と結合係数とのAND」も多数あ
る。次に、これらのORをとる。入力は同期化されている
ので、1番目のデータが「101000」、2番目のデータが
「010000」の場合、両者のORは「111000」となる。これ
を多入力同時に計算し出力とする。 となる。この部分は、アナログ方式における場合の、信
号の和を求める計算及び非線形関数(シグモイド関数)
の部分に対応している。一般的なパルスの演算におい
て、パルス密度が低い場合、そのORをとったもののパル
ス密度は、それぞれのパルス密度の和に近似的に一致す
る。パルス密度が高くなるにつれて、ORの出力は徐々に
飽和してくるので、パルス密度の和と結果は一致せず、
非線形性がでてくる。ORの場合、パルス密度は1より大
きくなることがなく、0より小さくなることもなく、ま
た単調増加関数であるので、シグモイド関数と近似的に
同等となる。 さて、結合には興奮性と抑制性があり、数値計算の場
合には、結合係数の符号で表し、アナログ回路の場合、
前述したように、Tijが負となる場合(抑制性結合)に
は増幅器を用いて出力を反転させ、Tijに相当する抵抗
値で他の神経細胞ユニットへ結合させている。一方、本
発明では、各結合を、Tijの正負により興奮性結合と抑
制性結合の2つのグループに分け、次いで、「入力信号
と結合係数のパルス列のAND」同士のORをこのグループ
別に演奏する。その結果、「興奮性グループの出力が
1」で、かつ「抑制性グループの出力が0」のときのみ
1を出力する。この機能を実現するためには、「抑制性
グループの出力のNOT」と「興奮性グループの出力」と
のANDをとればよい。すなわち、 となり、これを論理式で表現すると、 a=∪(yi∩Tij)(T=興奮性) (13) b=∪(yi∩Tij)(T=抑制性) (14) yj=a∩ (15) と表される。 この神経細胞ユニットを用いたネットワークの構成
は、バックプロパゲーションと同様な階層型(第7図)
とする。ネットワーク全体を同期させておけば、各層と
も上述の通りの機能で、並列的に演算することが可能で
ある。
FIG. 1 shows a portion corresponding to one nerve cell unit, which is formed into a network as shown in FIG. All inputs and outputs of the nerve cell unit are binarized to 0 and 1, and further synchronized. The value (= strength) of the signal at input j is
It is expressed by a pulse density, for example, by the number of states of one within a certain time as shown in the following pulse train. This shows a signal representing 4/6, and the sync pulse 6
The input signal indicates that there are four 1s and two 0s. At this time, it is desirable that the arrangement of 1s and 0s is random as described later. On the other hand, the coupling coefficient T ij is also represented by a pulse density,
And a bit string of 1 are prepared in advance in the memory. This indicates that the value of the coupling coefficient is 3/6, and in this case, it is desirable that the arrangement of 0s and 1s is random. How to determine specifically will be described later. And
The coupling coefficient pulse train is sequentially read from the memory in accordance with the synchronous clock, and ANDed with the input pulse train by the AND circuit of FIG. 1 (y i ∩T ij ). This is set as an input to the neuron unit j. To explain using the above example, when the signal “101101” is input, the pulse train of the coupling coefficient is called from the memory in synchronization with the signal, and by sequentially taking the AND, A pulse train (bit train) “101000” as shown in FIG. This is because the pulse train y i of the input signal is the pulse train of the coupling coefficient
It is converted by T ij, which indicates that the input pulse density to the neuron unit is 2/6. The pulse density of the output of the AND circuit is approximately the product of the “pulse density of the input signal” and the “pulse density of the coupling coefficient”, and has the same function as the signal product in the analog system.
This is a function closer to a product of numerical values as the signal train (pulse train) is longer and the arrangement of 1s and 0s is more random. Non-random means that 1 (or 0) is dense (close). When the length of the pulse train of the coupling coefficient is shorter than that of the input pulse train and there is no more data to be read, it can be dealt with by returning to the head of the pulse train of the coupling coefficient again and repeating the reading. Since one neuron unit has many inputs, there are many "AND of input signal and coupling coefficient" described above. Next, these ORs are taken. Since the inputs are synchronized, if the first data is "101000" and the second data is "010000", the OR of both is "111000". This is calculated at the same time as the multi-input and output. Becomes This part is the calculation to find the sum of the signals and the nonlinear function (sigmoid function) in the case of the analog system.
Corresponds to the part. In a general pulse calculation, when the pulse density is low, the OR of the pulse density approximately matches the sum of the respective pulse densities. As the pulse density increases, the output of the OR gradually saturates, so the sum of the pulse densities does not match the result,
Non-linearity appears. In the case of OR, the pulse density does not become larger than 1 and does not become smaller than 0, and since it is a monotonically increasing function, it becomes approximately equivalent to the sigmoid function. By the way, coupling has excitability and inhibition, and in the case of numerical calculation, it is represented by the sign of the coupling coefficient. In the case of an analog circuit,
As described above, when T ij becomes negative (inhibitory coupling), the output is inverted using an amplifier and coupled to another neuron unit with a resistance value corresponding to T ij . On the other hand, in the present invention, each connection is divided into two groups, excitatory connection and inhibitory connection, depending on the sign of T ij , and then OR of “AND of pulse train of input signal and coupling coefficient” is performed for each group. I do. As a result, 1 is output only when “the output of the excitatory group is 1” and “the output of the inhibitory group is 0”. In order to realize this function, AND of “NOT of the output of the suppressive group” and “output of the excitatory group” may be performed. That is, When this is expressed by a logical expression, a = ∪ (y i ∩T ij ) (T = excitatory) (13) b = ∪ (y i ∩T ij ) (T = inhibitory) (14) y j = A∩ (15) The configuration of the network using this neuron unit is a hierarchical type similar to back propagation (Fig. 7).
And If the entire network is synchronized, it is possible to perform calculations in parallel with the functions described above for each layer.

【学習(バックプロパゲーション)における信号演算】[Signal operation in learning (back propagation)]

以下のまたはにより誤差信号を求め、次いでで
述べる方法を用いて結合係数の値を変化させることによ
り、学習を行う。 最終層における誤差信号 最終層(第7図の右側の層)に属する各神経細胞ユニ
ットについての誤差信号を求める方法について説明す
る。 本発明では、誤差信号を以下のように定義する。すな
わち、誤差を数値で表すと、一般には正負両方の値を取
りうるが、パルス密度ではそのような表現はできないの
で、+成分を表す信号と、−成分を表す信号の2つを使
って誤差信号を表現する。 つまり、教師信号パルスと出力信号パルスの違ってい
る部分のうち、教師信号側に存在するパルスを誤差信号
パルスとし、逆に、出力信号側に存在するパルスを誤
差信号パルスとする。換言すれば、出力信号パルスに
誤差信号パルスを付け加え、誤差信号パルスを取り
除くと、教師信号パルスになる。 以上のようにして得られた誤差信号に、学習定数を用
いた処理を行うが、これは次項にて詳細に説明する。 中間層における誤差信号 中間層(第7図の中央の層)に属する各神経細胞ユニ
ットについての誤差信号δは、次のように求める。すな
わち、その神経細胞ユニットに接続している1つ先の層
(第7図における最終層)の各神経細胞ユニットにおけ
る誤差信号を集め、それを誤差信号とする。このこと
は、神経細胞ユニット内での演算式(8)〜(19)と同
様な要領で行うことができる。ただし、式(8)〜(1
9)と異なり、yは1つの信号であるのに対して、δは
正、負を表すために2つの信号を持ち、その両方の信号
を考慮しなければならない。従って、T(結合係数)の
正負、δ(誤差信号)の正負の4つに場合分けする必要
がある。 まず、興奮性結合の場合を説明する。中間層のある神
経細胞ユニットについて、1つ先の層(第7図における
最終層)の神経細胞ユニットでの誤差信号と、その神
経細胞ユニットと自分(前記中間層のある神経細胞ユニ
ット)との結合係数のANDをとったもの(=δ
Tij))を、1つ先の層の各神経細胞ユニットについて
求め、さらにこれら同士のORをとる(=∪(δ+ i
Tij)。その結果を、この層の誤差信号とする。すな
わち、次のように表される。 同様に、1つ先の層の神経細胞ユニットでの誤差信号
を用いることで、この層の誤差信号を次のようにし
て求めることができる。 次に、抑制性結合の場合を説明する。1つ先の層の神
経細胞ユニットでの誤差信号と、その神経細胞ユニッ
トと自分との結合係数のANDをとり、さらにこれら同時
のORをとった結果を、この層の誤差信号とする。すな
わち、 同様に、1つ先の層の神経細胞ユニットでの誤差信号
を用いることで、抑制性結合についてのこの層の誤差
信号を求めることができる。 1つの神経細胞ユニットから別の神経細胞ユニットへ
の結合は、興奮性の場合と抑制性の場合の2つがあるの
で、式(20)で求めたδと式(22)で求めたδのOR
をとり、この神経細胞ユニットのδとする。同様に、
式(21)で求めたδと式(23)で求めたδのORをと
り、この神経細胞ユニットのδとする。 以上をまとめると、 となる。 ここで、学習定数を用いた処理を行う。これは、数値
計算などでは、誤差信号に学習定数(学習レート)を掛
けることで実現している。この学習レートの値が1.0以
下の場合には、ネットワークの持つ学習能力がさらに高
まる。このことは、本発明におけるパルス列の演算で
は、パルス密度を低くすることに相当するので、パルス
列を「間引く」ことにより実現できる。例えば、例1で
は元の信号のパルス列が等間隔の場合、例2では元の信
号のパルス列が等間隔でない場合を示すが、共に学習レ
ート(η)=0.5では、元の信号のパルス列を1つおき
に消去(除去)する。また、y=0.33ではパルスを2つ
おきに残し、y=0.67ではパルスを2つおきに消去す
る。 このような誤差信号の「間引き」は、通常市販されて
いるカウンタの出力を論理演算することや、フリップフ
ロップを用いることによって、容易に実現できる。特
に、カウンタを用いた場合、ηの値を任意に、かつ容易
に設定できるので、ネットワーク回路の特性を制御する
ことが可能となる。 誤差信号により各結合係数を変化 上記またはにより求めた誤差信号を用いて、各結
合係数を変化させる方法を説明する。 変化させたい結合係数が属している線(第7図参照)
を流れる信号(=神経細胞ユニットに対する入力信号)
と誤差信号のANDをとる(δ∩y)。ただし、本実施例
では誤差信号は+と−の2つの信号があるので、それぞ
れを演算して求める。 このようにして得られた2つの信号をそれぞれΔT+
ΔT-とする。 これらを元にして新しい結合係数Tを求めるのである
が、本実施例におけるTの値は絶対値なので、Tが興奮
性か、抑制性かで場合分けをする。 ●興奮性の場合 元のTに対して、ΔT+の成分を増やし、ΔT-の成分を
減らす。 ●抑制性の場合 元のTに対して、ΔT+の成分を減らし、ΔT-の成分を
増やす。 以上の学習則に基づいて、ネットワーク全体の計算を
行う。
Learning is performed by obtaining an error signal as follows or by changing the value of the coupling coefficient using the method described below. Error Signal in Last Layer A method for obtaining an error signal for each neuron unit belonging to the last layer (the right layer in FIG. 7) will be described. In the present invention, the error signal is defined as follows. That is, when an error is represented by a numerical value, it can generally take both positive and negative values. However, since such a representation cannot be made with a pulse density, the error is expressed by using two signals, a signal representing a + component and a signal representing a-component. Express the signal. In other words, of the difference between the teacher signal pulse and the output signal pulse, the pulse existing on the teacher signal side is used as the error signal.
+ A pulse, conversely, the pulse present at the output signal side error signal - a pulse. In other words, adding the error signal + pulse to the output signal pulse, the error signal - when removing the pulse, the teacher signal pulse. The error signal obtained as described above is subjected to processing using a learning constant, which will be described in detail in the next section. Error Signal in Intermediate Layer The error signal δ for each neuron unit belonging to the intermediate layer (the central layer in FIG. 7) is obtained as follows. That is, error signals in each neuron unit of the next layer (final layer in FIG. 7) connected to the neuron unit are collected and used as an error signal. This can be performed in a manner similar to the arithmetic expressions (8) to (19) in the nerve cell unit. However, equations (8) to (1
Unlike 9), y is one signal, while δ has two signals to represent positive and negative, and both signals must be considered. Therefore, it is necessary to divide into four cases, that is, positive and negative of T (coupling coefficient) and positive and negative of δ (error signal). First, the case of excitatory coupling will be described. For the neuron unit having the intermediate layer, the error signal + in the neuron unit in the next layer (the last layer in FIG. 7), the neuron unit and the self (the neuron unit having the intermediate layer) AND of the coupling coefficients (= δ +
The T ij)), obtained for each neuron unit of one previous layer, further taking OR of each other (= ∪ (δ + i
T ij ). The result is taken as the error signal + of this layer. That is, it is expressed as follows. Similarly, the error signal at the neuron unit in the next layer
- By using the error signal of this layer - it can be a determined in the following manner. Next, the case of inhibitory coupling will be described. Error signal in neurons units of one previous layer - and the neuron unit and takes an AND of the coupling coefficient between themselves, the results of further taking these simultaneous OR, the error signal of this layer + . That is, Similarly, the error signal at the neuron unit in the next layer
By using + , the error signal of this layer for the suppressive coupling can be determined. Coupling from one nerve cell unit to another neuron units, because although the two cases inhibitory as for excitatory certain, [delta] was calculated by the formula (20) in the obtained [delta] + and Equation (22) + OR
And set it as δ + of this nerve cell unit. Similarly,
Takes the OR, [delta] of the neuron unit - - [delta] obtained in the equation (23) - equation (21) in the obtained [delta] to. To summarize the above, Becomes Here, processing using a learning constant is performed. This is realized by multiplying the error signal by a learning constant (learning rate) in numerical calculation and the like. When the value of the learning rate is 1.0 or less, the learning ability of the network is further enhanced. Since this corresponds to lowering the pulse density in the operation of the pulse train in the present invention, it can be realized by "thinning out" the pulse train. For example, Example 1 shows a case where the pulse train of the original signal is at regular intervals, and Example 2 shows a case where the pulse train of the original signal is not at regular intervals. In both cases, at the learning rate (η) = 0.5, the pulse train of the original signal is 1 Erase (remove) every other time. When y = 0.33, every third pulse is left, and when y = 0.67, every third pulse is erased. Such “thinning out” of the error signal can be easily realized by performing a logical operation on the output of a commercially available counter or using a flip-flop. In particular, when a counter is used, the value of η can be set arbitrarily and easily, so that the characteristics of the network circuit can be controlled. Changing Each Coupling Coefficient According to Error Signal A method of changing each coupling coefficient using the error signal obtained as described above or above will be described. Line to which the coupling coefficient to be changed belongs (see Fig. 7)
(= Input signal to neuron unit)
And the error signal (AND) (δ∩y). However, in this embodiment, since there are two error signals, + and-, the error signals are calculated and obtained. The two signals obtained in this way are represented by ΔT + ,
ΔT - to. A new coupling coefficient T is calculated based on these values. Since the value of T in this embodiment is an absolute value, cases are classified depending on whether T is excitatory or suppressive. ● For the case the original T of excitability, increase the component of [Delta] T +, [Delta] T - reducing components. ● For the case the original T inhibitory, reducing the component of [Delta] T +, [Delta] T - Increase of components. The calculation of the entire network is performed based on the above learning rules.

【ネットワークの学習操作】[Network learning operation]

第7図のような神経細胞回路網を学習させるには、前
述した通り、入力層(第7図の左側の層)に入力する入
力信号の組と、それらに対応して出力層(第7図の右側
の層)から出力されるべき望ましい出力結果(=教師信
号)の組が必要である。 しかも、それらに用いるデータは、値を密度で表した
パルス列である。前述した通り、パルス列中の1になっ
ているビットの位置は、ランダムである方が、神経細胞
ユニットの動作に望ましい。これは、毎学習時に、値は
同一であるが、パターンの異なるパルス列信号を与える
必要があることを意味する。 そこで、本発明は、前記のネットワーク回路の、入力
信号データと教師信号データのパルス列を生成するシス
テムにおいて、毎学習時における各種データのパルス列
パターンを異なったものにし、ネットワークの学習能力
を高めるものである。 以下、その構成・動作について説明する。 ネットワーク回路をある目的に学習させるのに即し
た、適当な入力信号データの組、及び、この入力データ
に対する教師信号データの組を用意する。もしくは、教
師信号データは、入力信号データに対応したものを適宜
与えても良い。学習専用の場合は、これらの組は、ネッ
トワークの外部メモリに格納しておいてもよい。これら
は、神経細胞ユニットの入力に合致するように、パルス
列に変換しておく。あるいは、数値として格納してお
き、必要に応じてパルス列に変換してもよい。入力信号
データの組は、教師信号データの組と対になっており、
読み出すときは、その対ごとに読み出すようにしてお
く。 以上を準備した後、ネットワークの学習を開始する。
今、パルス列を生成するシステムが、特願平2−67942
号で示されたように、自然界に存在する雑音(トランジ
スタの熱雑音など)を用いれば、ネットワークの学習に
用いられるパルス列は、完全なランダム性を有すること
になるので、パルス列のパターンは、毎学習時に異なる
ことになる。しかしながら、本出願人が別途提出した特
許出願の明細書に記載したような、乱数発生器を用いた
場合、乱数とはいえども疑似乱数のため、発生するビッ
トは、ある周期を持って循環することになる。従って、
データのパルス列長と乱数の周期が一致した場合、同一
の値に対しては、常に同一のパルス列パターンが生成さ
れることになる。そこで、乱数の発生周期を変化させ、
乱数の位相を変化させる。それは、乱数を発生させるた
めの基本クロックを、適宜必要な数より多く乱数発生器
に入力することで実現できる。その結果、毎学習時に異
なったパルス列パターンを得ることができ、ネットワー
クは、効果の高い学習が可能となる。 II.回路例 第2図乃至第6図は、以上のアルゴリズムを基に構成
した回路例を示す図で、ニューラルネットワークの構成
は第7図と同様である。第7図の「線」に相当する部分
の回路を第2図に、第7図の「丸」(神経細胞ユニッ
ト)に相当する部分の回路を第3図にそれぞれ示す。ま
た、最終層の出力と教師信号から最終層における誤差信
号を求める部分の回路を第4図に示す。これら3つの図
に示した回路を第7図のようにネットワークに構成する
ことによって、自己学習が可能なデジタル方式のニュー
ラルネットワークが実現できる。 まず、第2図を説明する。信号1は神経細胞ユニット
への入力信号で式(8)に相当する。式(9)の結合係
数はシフトレジスタ8に保存しておく。端子8Aがデータ
の取出し口で、端子8Bがデータの入口である。これはシ
フトレジスタと同様の機能を持つものであれば、そのほ
かのもの、例えば、RAM+アドレスコントローラ等を用
いてもよい。回路9は式(10)に相当する回路で、入力
信号と結合係数のANDをとっている。この出力は、結合
が興奮性が抑制性かによってクループ分けしなければな
らないが、あらがしめそれぞれのグループへの出力4,5
を用意し、どちらのグループに出すのかを切り替えるよ
うにした方が汎用性が高い。このため、結合が興奮性か
抑制性かを表すビットをメモリ14に保存しておき、回路
13で信号を切り替える。各入力を処理する式(11)に相
当するOR回路が第3図の回路16である。さらに式(12)
で示した、「興奮性グループが1」で、かつ、「抑制性
グループが0」のときのみ「1」を出力する回路が、第
3図の回路17である。 次に、誤差信号について説明する。最終層での誤差信
号を作る回路を第4図に示す。これは式(16)〜(19)
に相当する。最終層からの出力1及び教師信号20より誤
差信号6,7を生成する。また、中間層における誤差信号
を求める式(20)〜(23)を実現する回路を、第7図の
回路10に示す。結合が興奮性か抑制性かで用いる誤差信
号が異なるので、その場合分けを行うのが第2図の回路
12である。この回路には、あらかじめメモリ14にセット
したビットを用いる。また、誤差信号を集める演算(式
(24))は、第3図の回路18で行われる。また学習レー
トに相当する式(25)は、第3図の分周回路19で実現す
る。 次に、誤差信号を用いて、新たな結合係数を計算する
部分について説明する。これは式(26)〜(29)で表さ
れ、第2図の回路11により行われる。しかし、結合の興
奮性・抑制性によって場合分けしなければならないの
で、第2図の回路12でこれを実現している。 最後に、上記のネットワーク回路を用いたシステムを
学習させる場合について説明する。 学習に限らず、ネットワークにデータを入力するに
は、データの値を密度で表したパルス列を生成する必要
がある。その生成回路の例を第5図に(本出願人が別途
提出した特許出願の第11図に相当)示すが、これは、第
5図の入力21に乱数に変換したいデータの値を入力し、
出力22からランダムパルス列を得るものである。乱数発
生器23は、周期Tの乱数発生器である。ネットワークの
基準クロックを第5図の基本クロックとして用いてい
る。今、連続的にランダムパルス列を発生させていた場
合、発生するパルス列の位相は、毎回一致したものとな
り、ネットワークに入力するパルス列は、値が同じもの
に対しては、常に同じパルスパターンとなってしまう。
そこで、第5図の基本クロックとネットワークの基準ク
ロックを直接には接続せずに、1回の周期Tが終了して
から次の周期が開始する前までの期間に、乱数列発生用
空打ちクロック回路24から、基本クロックに1以上のク
ロックを与える。すると、前回の周期による乱数列と今
回の乱数列の位相が少なくとも1ずれることになり、毎
学習時にこれを繰り返すことで、毎回異なった乱数列=
ランダムパルスを、ネットワークに入力することができ
る。このシステムを、ネットワークの入力部及び/また
は教師信号入力部に備えることで、ネットワーク全体の
学習を行う。 なお、上記の回路は、上記実施例に限定されるもので
なく、また、一部をコンピュータなどの計算装置を用い
て代用させてもよいことはいうまでもない。 効果 以上の説明から明らかなように、本発明によると、結
合係数の固定化を避け、学習能力を高めることができ
る。
As described above, in order to train the neural network as shown in FIG. 7, a set of input signals to be input to the input layer (the left layer in FIG. 7) and the corresponding output layer (the seventh layer) are input to the input layer. A set of desired output results (= teacher signal) to be output from the right layer in the figure) is required. Moreover, the data used for them is a pulse train whose value is represented by density. As described above, it is preferable that the position of the bit that is 1 in the pulse train be random for the operation of the nerve cell unit. This means that a pulse train signal having the same value but a different pattern must be provided at each learning. Accordingly, the present invention provides a system for generating a pulse train of input signal data and a teacher signal data of the network circuit, in which the pulse train patterns of various data are made different at each learning to improve the learning ability of the network. is there. Hereinafter, the configuration and operation will be described. An appropriate set of input signal data and a set of teacher signal data corresponding to the input data are prepared for learning the network circuit for a certain purpose. Alternatively, as the teacher signal data, data corresponding to the input signal data may be appropriately given. In the case of learning only, these sets may be stored in an external memory of the network. These are converted into a pulse train so as to match the input of the nerve cell unit. Alternatively, it may be stored as a numerical value and converted into a pulse train as needed. The set of input signal data is paired with the set of teacher signal data,
At the time of reading, each pair is read. After preparing the above, learning of the network is started.
Now, a system for generating a pulse train is disclosed in Japanese Patent Application No. 2-67942.
As shown in the figure, if noise existing in the natural world (such as thermal noise of a transistor) is used, the pulse train used for learning the network has complete randomness. It will be different when learning. However, when a random number generator is used as described in the specification of a patent application separately filed by the present applicant, the generated bits circulate with a certain period because the random numbers are pseudo-random numbers. Will be. Therefore,
If the pulse train length of the data matches the cycle of the random number, the same pulse train pattern is always generated for the same value. Therefore, by changing the random number generation cycle,
Change the phase of random numbers. This can be realized by appropriately inputting more basic clocks for generating random numbers to the random number generator than necessary. As a result, different pulse train patterns can be obtained at each learning, and the network can perform highly effective learning. II. Circuit Example FIGS. 2 to 6 show circuit examples based on the above algorithm, and the configuration of the neural network is the same as that of FIG. The circuit corresponding to the "line" in FIG. 7 is shown in FIG. 2, and the circuit corresponding to the "circle" (neural cell unit) in FIG. 7 is shown in FIG. FIG. 4 shows a circuit for obtaining an error signal in the final layer from the output of the final layer and the teacher signal. By constructing the circuits shown in these three figures into a network as shown in FIG. 7, a digital neural network capable of self-learning can be realized. First, FIG. 2 will be described. Signal 1 is an input signal to the nerve cell unit and corresponds to equation (8). The coupling coefficient of equation (9) is stored in the shift register 8. Terminal 8A is a data takeout port, and terminal 8B is a data entry port. As long as it has a function similar to that of the shift register, another one such as a RAM + address controller may be used. The circuit 9 is a circuit corresponding to the equation (10), and ANDs the input signal and the coupling coefficient. This output must be grouped according to whether the coupling is excitatory or inhibitory, but the output to each group
It is more versatile to prepare a group and switch between groups. For this reason, a bit indicating whether the coupling is excitatory or inhibitory is stored in the memory 14, and the circuit
Switch the signal with 13. The OR circuit corresponding to the equation (11) for processing each input is the circuit 16 in FIG. Further equation (12)
The circuit that outputs “1” only when “excitable group is 1” and “suppressive group is 0” is circuit 17 in FIG. Next, the error signal will be described. FIG. 4 shows a circuit for generating an error signal in the last layer. This is the equation (16)-(19)
Is equivalent to The error signals 6, 7 are generated from the output 1 from the last layer and the teacher signal 20. A circuit for realizing the equations (20) to (23) for obtaining the error signal in the intermediate layer is shown as a circuit 10 in FIG. The error signal used differs depending on whether the coupling is excitatory or inhibitory.
It is 12. For this circuit, bits set in the memory 14 in advance are used. The operation of collecting error signals (Equation (24)) is performed by the circuit 18 in FIG. Equation (25) corresponding to the learning rate is realized by the frequency dividing circuit 19 in FIG. Next, a portion for calculating a new coupling coefficient using the error signal will be described. This is represented by equations (26)-(29) and is performed by the circuit 11 of FIG. However, since it is necessary to divide the cases depending on the excitability and suppression of the connection, this is realized by the circuit 12 in FIG. Finally, a case where a system using the above network circuit is learned will be described. In order to input data not only to learning but also to a network, it is necessary to generate a pulse train that represents the value of data in terms of density. An example of the generation circuit is shown in FIG. 5 (corresponding to FIG. 11 of a patent application separately filed by the present applicant). This is realized by inputting the value of data to be converted into a random number into the input 21 of FIG. ,
A random pulse train is obtained from the output 22. The random number generator 23 is a random number generator with a period T. The reference clock of the network is used as the basic clock in FIG. Now, if a random pulse train is generated continuously, the phase of the generated pulse train will be the same every time, and the pulse train input to the network will always have the same pulse pattern for those with the same value. I will.
Therefore, without directly connecting the basic clock of FIG. 5 and the reference clock of the network, during the period from the end of one cycle T to the start of the next cycle, the blanking for random number sequence generation is performed. The clock circuit 24 supplies one or more clocks to the basic clock. Then, the phase of the random number sequence of the previous cycle and the phase of the current random number sequence are shifted by at least one. By repeating this at each learning, a different random number sequence is obtained every time.
Random pulses can be input to the network. By providing this system in the input unit and / or the teacher signal input unit of the network, learning of the entire network is performed. The above circuit is not limited to the above embodiment, and it is needless to say that a part of the circuit may be substituted by a computer or other computing device. Effects As is clear from the above description, according to the present invention, it is possible to avoid the fixation of the coupling coefficient and increase the learning ability.

【図面の簡単な説明】[Brief description of the drawings]

第1図は、神経回路ユニットの1つを示す図、第2図乃
至第4図は、神経回路ユニットの各部の回路構成例を示
す図、第5図は、パルス列生成回路の一例を示す図、第
6図乃至第8図は、神経回路ユニットの動作原理を説明
するための図、第9図乃至第12図は、従来の回路構成例
を示す図である。 1……入力信号、2,3,6,7……誤差信号、4……興奮性
信号、5……抑制性信号、8……シフトレジスタ、20…
…教師信号、21……入力、22……出力、23……乱数発生
器、24……乱数列発生用空打ちクロック回路。
1 is a diagram showing one of the neural circuit units, FIGS. 2 to 4 are diagrams showing an example of a circuit configuration of each part of the neural circuit unit, and FIG. 5 is a diagram showing an example of a pulse train generating circuit. 6 to 8 are diagrams for explaining the principle of operation of the neural circuit unit, and FIGS. 9 to 12 are diagrams showing examples of a conventional circuit configuration. 1 ... input signal, 2, 3, 6, 7 ... error signal, 4 ... excitatory signal, 5 ... suppressive signal, 8 ... shift register, 20 ...
... teacher signal, 21 ... input, 22 ... output, 23 ... random number generator, 24 ... random-hit clock circuit for random number sequence generation.

フロントページの続き (56)参考文献 特開 平1−271888(JP,A) 特開 平2−33655(JP,A) 特開 平2−238721(JP,A) 特開 平2−199576(JP,A) 特開 平1−244567(JP,A) 甘利俊一・監訳,「PDPモデル − 認知科学とニューロン回路網の探索 −」,日本,産業図書株式会社・発行, 1989年 2月27日,初版,pp.321− 365 吉田、堀口、江口,「パルス密度型ニ ューロンモデルとその自己学習機能のハ ード化」,1990年電子情報通信学会春季 全国大会講演論文集,日本,社団法人電 子情報通信学会・発行,1990年 3月 5日,第6分冊,pp.56 小池誠彦,「ニューロコンピューティ ングのためのハードウェア」,電子情報 通信学会論文誌,日本,社団法人電子情 報通信学会・発行,1990年 8月25日, vol.J73−D−II,no.8,p p.1132−1145,特許庁CSDB文献番 号:CSNT199800681003 Joshua Alspector, et.al.,”Generating multiple analog n oise sources from a single linear fe edback shift・・・・”, Proc.of IEEE Int.S ymp.on Circuits an d Systems 1990.米国,1990 年 5月 3日,vol.2,pp. 1058−1061,INSPEC Acces sion Number: 3853488 平井有三・他,「完全ディジタルニュ ーロチップの構成」,電子情報通信学会 技術研究報告,日本,社団法人電子情報 通信学会・発行,1988年,vol.88, no.323(ICD88−130),pp.89 −96,JICST資料番号:S0532B (58)調査した分野(Int.Cl.7,DB名) G06N 1/00 - 7/08 G06G 7/60 JICSTファイル(JOIS) CSDB(日本国特許庁)Continuation of the front page (56) References JP-A-1-271888 (JP, A) JP-A-2-33655 (JP, A) JP-A-2-238721 (JP, A) JP-A-2-199576 (JP) , A) Japanese Patent Laid-Open No. 1-244567 (JP, A) Translated by Shunichi Amari, "PDP model-cognitive science and search for neuron networks-", Japan, Sangyo Tosho Co., Ltd., February 27, 1989, First edition, pp. 321-365 Yoshida, Horiguchi, Eguchi, "Pulse Density Neuron Model and Hardening of Self-Learning Function", Proc. Of the 1990 IEICE Spring Conference, Japan, The Institute of Electronics, Information and Communication Engineers, Japan. Published, March 5, 1990, 6th volume, pp. 56 Masahiko Koike, "Hardware for Neurocomputing", Transactions of the Institute of Electronics, Information and Communication Engineers, Japan, published by the Institute of Electronics, Information and Communication Engineers, August 25, 1990, vol. J73-D-II, no. 8, p.p. 1132-1145, Patent Office CSDB Literature No .: CNT199800681003 Joshua Alspector, et. al. , "Generating multiple analog sources from a single linear linear feedback shift ...", Proc. of IEEE Int. Symp. on Circuits and Systems 1990. United States, May 3, 1990, vol. 2, pp. 1058-1061, INSPEC Accession Number: 3853488 Yuzo Hirai et al., "Complete Digital Neurochip Configuration," IEICE Technical Report, Japan, IEICE Technical Report, Japan, 1988, vol. 88, no. 323 (ICD88-130) pp. 89-96, JICST Document No .: S0532B (58) Field surveyed (Int. Cl. 7 , DB name) G06N 1/00-7/08 G06G 7/60 JICST file (JOIS) CSDB (Japan Patent Office)

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】神経細胞模倣素子を階層型ネットワークに
構成した神経細胞回路網であって、この神経細胞回路網
の入力層の神経細胞模倣素子への入力信号はパルス列の
信号であり、この神経細胞回路網内ではパルス列が表す
パルス密度を用いて演算し、教師信号と神経細胞回路網
の出力層からの出力信号との誤差信号からバックプロパ
ゲーションにより、各神経細胞模倣素子間の結合係数を
変化させることによって学習を行う神経細胞回路網にお
いて、前記神経細胞回路網に入力する入力信号データの
パルス列パターンが、同じ入力信号値に対してはパルス
密度は同じであるが、前記神経細胞回路網が学習を行う
たび毎に毎回異なるランダムなビット位置にパルスが立
つようなパルス列パターンであることを特徴とする神経
細胞回路網。
An input signal to a neuron mimic element in an input layer of the neural cell network is a pulse train signal. In the cell network, the calculation is performed using the pulse density represented by the pulse train, and the coupling coefficient between each neuron mimic element is calculated by back propagation from the error signal between the teacher signal and the output signal from the output layer of the neuron network. In the neural cell network for learning by changing, the pulse train pattern of the input signal data input to the neural cell network has the same pulse density for the same input signal value. Is a pulse train pattern in which a pulse rises at a different random bit position each time learning is performed.
【請求項2】神経細胞模倣素子を階層型ネットワークに
構成した神経細胞回路網であって、この神経細胞回路網
の入力層の神経細胞模倣素子への入力信号はパルス列の
信号であり、この神経細胞回路網内ではパルス列が表す
パルス密度を用いて演算し、教師信号と神経細胞回路網
の出力層からの出力信号との誤差信号からバックプロパ
ゲーションにより、各神経細胞模倣素子間の結合係数を
変化させることによって学習を行う神経細胞回路網にお
いて、前記神経細胞回路網に入力する教師信号データの
パルス列パターンが、同じ教師信号値に対してはパルス
密度は同じであるが、前記神経細胞回路網が学習を行う
たび毎に毎回異なるランダムなビット位置にパルスが立
つようなパルス列パターンであることを特徴とする神経
細胞回路網。
2. A neural cell network comprising a neural network mimic element in a hierarchical network, wherein an input signal to the neural cell mimic element in an input layer of the neural cell network is a pulse train signal. In the cell network, the calculation is performed using the pulse density represented by the pulse train, and the coupling coefficient between each neuron mimic element is calculated by back propagation from the error signal between the teacher signal and the output signal from the output layer of the neuron network. In a neural cell network that performs learning by changing, the pulse train pattern of teacher signal data input to the neural cell network has the same pulse density for the same teacher signal value, but the neural cell network Is a pulse train pattern in which a pulse rises at a different random bit position each time learning is performed.
JP27299890A 1990-10-11 1990-10-11 Neural cell network Expired - Fee Related JP3276367B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27299890A JP3276367B2 (en) 1990-10-11 1990-10-11 Neural cell network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27299890A JP3276367B2 (en) 1990-10-11 1990-10-11 Neural cell network

Publications (2)

Publication Number Publication Date
JPH04148389A JPH04148389A (en) 1992-05-21
JP3276367B2 true JP3276367B2 (en) 2002-04-22

Family

ID=17521727

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27299890A Expired - Fee Related JP3276367B2 (en) 1990-10-11 1990-10-11 Neural cell network

Country Status (1)

Country Link
JP (1) JP3276367B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762131B1 (en) 2009-06-17 2014-06-24 Softwin Srl Romania Systems and methods for managing a complex lexicon comprising multiword expressions and multiword inflection templates

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Joshua Alspector,et.al.,"Generating multiple analog noise sources from a single linear feedback shift・・・・",Proc.of IEEE Int.Symp.on Circuits and Systems 1990.米国,1990年 5月 3日,vol.2,pp.1058−1061,INSPEC Accession Number: 3853488
吉田、堀口、江口,「パルス密度型ニューロンモデルとその自己学習機能のハード化」,1990年電子情報通信学会春季全国大会講演論文集,日本,社団法人電子情報通信学会・発行,1990年 3月 5日,第6分冊,pp.56
小池誠彦,「ニューロコンピューティングのためのハードウェア」,電子情報通信学会論文誌,日本,社団法人電子情報通信学会・発行,1990年 8月25日,vol.J73−D−II,no.8,pp.1132−1145,特許庁CSDB文献番号:CSNT199800681003
平井有三・他,「完全ディジタルニューロチップの構成」,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会・発行,1988年,vol.88,no.323(ICD88−130),pp.89−96,JICST資料番号:S0532B
甘利俊一・監訳,「PDPモデル −認知科学とニューロン回路網の探索−」,日本,産業図書株式会社・発行,1989年 2月27日,初版,pp.321−365

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762131B1 (en) 2009-06-17 2014-06-24 Softwin Srl Romania Systems and methods for managing a complex lexicon comprising multiword expressions and multiword inflection templates

Also Published As

Publication number Publication date
JPH04148389A (en) 1992-05-21

Similar Documents

Publication Publication Date Title
JPH07114524A (en) Signal processor
US5588090A (en) Signal processing apparatus
JP3276367B2 (en) Neural cell network
Inoue et al. Efficient hybrid neural network for chaotic time series prediction
JPH05165987A (en) Signal processor
JP3508783B2 (en) Coupling coefficient updating method and coupling coefficient updating apparatus in pulse density type signal processing network
JP3253613B2 (en) Signal processing device
JP3130913B2 (en) Signal processing device
US5519813A (en) Neuron unit for processing digital information
JP3256553B2 (en) Learning method of signal processing device
JPH05290014A (en) Signal processor
JP2549454B2 (en) Neuron mimetic network and neuron mimicking unit
JP3463890B2 (en) Neural circuit mimic element
Wang et al. Computer algebra and neurodynamics
JPH05217010A (en) Signal processor
JP2612640B2 (en) Signal processing circuit, signal processing network, signal processing device, and signal processing method
JPH03268079A (en) Signal processor
Castillo et al. Introduction to Neural Networks
JPH05135001A (en) Signal processor
JPH0567065A (en) Signal processor
JPH05108594A (en) Signal processor
JPH05108597A (en) Signal processor
JPH03260759A (en) Method and device for signal processing
JP3338713B2 (en) Signal processing device
JPH05165989A (en) Signal processor

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees