JPH05197706A - Signal processor - Google Patents

Signal processor

Info

Publication number
JPH05197706A
JPH05197706A JP4199428A JP19942892A JPH05197706A JP H05197706 A JPH05197706 A JP H05197706A JP 4199428 A JP4199428 A JP 4199428A JP 19942892 A JP19942892 A JP 19942892A JP H05197706 A JPH05197706 A JP H05197706A
Authority
JP
Japan
Prior art keywords
signal
value
output
logical
counting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4199428A
Other languages
Japanese (ja)
Other versions
JP3338713B2 (en
Inventor
Shuji Motomura
修二 本村
Toshiyuki Furuta
俊之 古田
Takashi Kitaguchi
貴史 北口
Hiroyasu Mifune
博庸 三船
Shinichi Suzuki
伸一 鈴木
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 JP19942892A priority Critical patent/JP3338713B2/en
Publication of JPH05197706A publication Critical patent/JPH05197706A/en
Application granted granted Critical
Publication of JP3338713B2 publication Critical patent/JP3338713B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Logic Circuits (AREA)

Abstract

PURPOSE:To improve the generality of this signal processor by non-linearly changing the density of output signal pulses in a forward process against that of input signal pulses in simple digital logic constitution for processing a signal expressed by a pulse string. CONSTITUTION:A signal processing means has an AND operation means for operating AND between an input signal expressed by a pulse string and a connection coefficient expressed by a pulse string, a grouping means for grouping the operation result of the AND operation means into plural groups, OR operation means 33a, 33b for operating OR between operation results in each group, a logical operation means 34 for executing the logical operation of operation results from the means 33a, 33b, pulse density changing means 47, 48 for changing the pulse density of a pulse string outputted from the means 34, and a connection coefficiency changing means for changing the connection coefficiency based upon an error signal expressed by pulse density.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、例えば画像や音声の認
識、ロボット等の位置制御、エアコンの温度制御、ロケ
ットの軌道制御等のような各種運動の制御に適用可能
な、神経細胞を模倣したニューラルコンピュータ等の信
号処理装置に関する。
INDUSTRIAL APPLICABILITY The present invention is applicable to control of various movements such as image and voice recognition, position control of robots, temperature control of air conditioners, orbit control of rockets, etc. The present invention relates to a signal processing device such as a neural computer.

【0002】[0002]

【従来の技術】生体の情報処理の基本的な単位である神
経細胞(ニューロン)の機能を模倣し、さらに、この
「神経細胞模倣素子」(神経細胞ユニット)をネットワ
ークにし、情報の並列処理を目指したのが、いわゆるニ
ューラルネットワークである。文字認識や連想記憶、運
動制御等、生体ではいとも簡単に行われていても、従来
のノイマン型コンピュータではなかなか達成しないもの
が多い。生体の神経系、特に生体特有の機能、即ち並列
処理、自己学習等をニューラルネットワークにより模倣
して、これらの問題を解決しようとする試みが盛んに行
われている。
2. Description of the Related Art The function of a nerve cell (neuron), which is a basic unit of information processing of a living body, is mimicked, and further, this "nerve cell mimicking element" (nerve cell unit) is connected to a network to process information in parallel. The aim is a so-called neural network. Although it is easy to perform character recognition, associative memory, motion control, etc. in a living body, there are many things that conventional Neumann computers cannot easily achieve. There have been many attempts to solve these problems by imitating a neural system of a living body, in particular, a function peculiar to the living body, that is, parallel processing, self-learning, etc. by a neural network.

【0003】まず、従来のニューラルネットワークのモ
デルについて説明する。図32はある1つの神経細胞ユ
ニットAを表す図であり、図33はこれをネットワーク
にしたものである。A1,A2,A3 は各々神経細胞ユニ
ットを表す。1つの神経細胞ユニットは多数の他の神経
細胞ユニットと結合しており、それらから受けた信号を
処理して出力を出す。図33の場合、ネットワークは階
層型であり、神経細胞ユニットA2 は1つ前(左側)の
層の神経細胞ユニットA1 より信号を受け、1つ後(右
側)の層の神経細胞ユニットA3 へ出力する。
First, a conventional neural network model will be described. FIG. 32 is a diagram showing a certain nerve cell unit A, and FIG. 33 is a network thereof. A 1 , A 2 , and A 3 each represent a nerve cell unit. One neuronal cell unit is coupled to a number of other neuronal cell units and processes the signals received from them to produce an output. In the case of FIG. 33, the network is hierarchical, and the nerve cell unit A 2 receives a signal from the nerve cell unit A 1 in the previous (left) layer and the nerve cell unit A in the next (right) layer. Output to 3 .

【0004】より詳細に説明する。まず、図32の神経
細胞ユニットAにおいて、他の神経細胞ユニットと自分
のユニットとの結合の度合いを表すのが結合係数と呼ば
れるもので、i番目の神経細胞ユニットとj番目の神経
細胞ユニットの結合係数を一般にTijで表す。結合に
は、相手のユニット(自己のユニットに信号を送ってく
るユニット)からの信号が大きい程自己のユニット出力
が大きくなる興奮性結合と、相手のユニットからの信号
が大きい程自己のユニット出力が小さくなる抑制性結合
とがあり、Tij>0が興奮性結合、Tij<0が抑制性結
合を表す。今、自分の神経細胞ユニットがj番目のユニ
ットであるとし、i番目の神経細胞ユニットの出力をy
i とするとこれに結合係数Tijを掛けたTiji が、自
分のユニットへの入力となる。前述したように、1つの
神経細胞ユニットは多数の神経細胞ユニットと結合して
いるので、それらのユニットに対するTiji を足し合
わせた結果なるΣTiji が、ネットワーク内における
自分の神経細胞ユニットへの入力となる。これを内部電
位といい、uj で表す。
A more detailed description will be given. First, in the nerve cell unit A of FIG. 32, the degree of coupling between another nerve cell unit and its own unit is called a coupling coefficient, and the coupling coefficient of the i-th nerve cell unit and the j-th nerve cell unit. The coupling coefficient is generally represented by T ij . For the coupling, excitatory coupling in which the larger the signal from the other unit (the unit that sends a signal to the own unit) is, the larger the own unit output is, and the larger the signal from the other unit is, the own unit output Is an inhibitory bond, where T ij > 0 represents an excitatory bond, and T ij <0 represents an inhibitory bond. Now, let's say that our nerve cell unit is the jth unit, and the output of the ith nerve cell unit is y.
If it is i , T ij y i obtained by multiplying this by the coupling coefficient T ij becomes the input to the own unit. As described above, since one nerve cell unit is connected to many nerve cell units, ΣT ij y i, which is the result of adding T ij y i for these units, is It becomes an input to the unit. This is called the internal potential and is represented by u j .

【0005】[0005]

【数1】 [Equation 1]

【0006】次に、この入力(内部電位)に対して閾値
を加えて非線形な処理をすることで、その神経細胞ユニ
ットの出力とする。この時に用いる関数を神経細胞応答
関数と呼び、非線形関数として、(2)式及び図34に示
すようなシグモイド関数を用いる。
Next, a threshold value is added to this input (internal potential) to perform non-linear processing, and the result is output from the nerve cell unit. The function used at this time is called a nerve cell response function, and the sigmoid function as shown in equation (2) and FIG. 34 is used as the nonlinear function.

【0007】[0007]

【数2】 [Equation 2]

【0008】このような神経細胞ユニットを図33に示
すようにネットワークに構成した時には、各結合係数T
ijを与え、(1)(2)式を次々と計算することにより、情
報の並列処理が可能となり、最終的な出力が得られるも
のである。
When such a nerve cell unit is constructed in a network as shown in FIG. 33, each coupling coefficient T
By providing ij and sequentially calculating equations (1) and (2), parallel processing of information becomes possible and a final output is obtained.

【0009】このような階層型ニューラルネットワーク
において、ある入力に対して望ましい結果が出力される
ように、結合係数Tijを更新していくような学習を行な
うことにより、所望のニューラルネットワークを構築す
る。このような学習方法として最も広く用いられている
のは誤差逆伝搬法、いわゆるバックプロパゲーション法
である。
In such a hierarchical neural network, a desired neural network is constructed by performing learning such that the coupling coefficient T ij is updated so that a desired result is output for a certain input. .. The most widely used such learning method is the error back-propagation method, so-called back-propagation method.

【0010】このようなネットワークを電気回路により
実現したものの一例として、図35に示すようなものが
ある。これは、特開昭62−295188号公報中に示
されるもので、基本的には、S字形伝達関数を有する複
数の増幅器1と、各増幅器1の出力を他の層の増幅器の
入力に一点鎖線で示すように接続する抵抗性フィードバ
ック回路網2とが設けられている。各増幅器1の入力側
には接地されたコンデンサと接地された抵抗とによるC
R時定数回路3が個別に接続されている。そして、入力
電流I1,I2,〜,In が各増幅器1の入力に供給さ
れ、出力はこれらの増幅器1の出力電圧の集合から得ら
れる。
An example of such a network realized by an electric circuit is shown in FIG. This is disclosed in Japanese Patent Laid-Open No. 62-295188, and basically, a plurality of amplifiers 1 having an S-shaped transfer function, and the output of each amplifier 1 is input to the input of the amplifier of another layer. A resistive feedback network 2 is provided which is connected as shown by the dashed line. The input side of each amplifier 1 has a C connected by a grounded capacitor and a grounded resistor.
The R time constant circuits 3 are individually connected. Then, the input current I 1, I 2, ~, I n is supplied to the input of the amplifier 1, the output is obtained from a set of these amplifiers 1 output voltage.

【0011】ここに、ネットワークへの入力や出力の信
号強度を電圧で表し、神経細胞ユニット間の結合の強さ
は、各細胞間の入出力ラインを結ぶ抵抗4(抵抗性フィ
ードバック回路網2中の格子点)の抵抗値で表され、神
経細胞応答関数は各増幅器1の伝達関数で表される。即
ち、図35において複数の増幅器1は反転出力及び非反
転出力を有し、かつ、各増幅器1の入力には入力電流供
給手段なるCR時定数回路3を有しており、予め選定さ
れた第1の値、又は予め選定された第2の値である抵抗
4(Tij)で増幅器3の各々の出力を入力に接続するフ
ィードバック回路網2とされている。抵抗4はi番目の
増幅器出力とj番目の増幅器入力との間の相互コンダク
タンスを表し、回路網が平衡する複数の極小値を作るよ
うに選定され、複数の極小値を持ったエネルギー関数を
最小にするようにしている。また、神経細胞間の結合に
は、興奮性と抑制性とがあり数学的には結合係数の正負
符号により表されるが、回路上の定数で正負を実現する
のは困難であるので、ここでは、増幅器1の出力を2つ
に分け、一方の出力を反転させることにより、正負の2
つの信号を生成し、これを適当に選択することにより実
現するようにしている。また、図34に示したシグモイ
ド関数に相当するものとしては増幅器が用いられてい
る。
Here, the signal strength of the input and output to the network is represented by a voltage, and the strength of the coupling between the nerve cell units is the resistance 4 (in the resistive feedback network 2) connecting the input / output lines between the cells. Is represented by the resistance value of each of the amplifiers 1, and the nerve cell response function is represented by the transfer function of each amplifier 1. That is, in FIG. 35, the plurality of amplifiers 1 have an inverting output and a non-inverting output, and the input of each amplifier 1 has a CR time constant circuit 3 as an input current supply means. The feedback network 2 connects each output of the amplifier 3 to the input by a resistor 4 (T ij ) having a value of 1 or a second value selected in advance. Resistor 4 represents the transconductance between the i-th amplifier output and the j-th amplifier input and is chosen to create multiple minima that the network will balance to minimize the energy function with multiple minima. I am trying to In addition, the coupling between nerve cells has excitability and inhibitory property, and is mathematically represented by the sign of the coupling coefficient, but it is difficult to realize the sign with a constant on the circuit. Then, by dividing the output of the amplifier 1 into two and inverting one output, positive and negative 2
It is realized by generating two signals and selecting them appropriately. Further, an amplifier is used as the one corresponding to the sigmoid function shown in FIG.

【0012】一方、デジタル回路でニューラルネットを
実現したものの例を図36ないし図38を参照して説明
する。図36は単一の神経細胞の回路構成を示し、各シ
ナプス回路6を樹状突起回路7を介して細胞体回路8に
接続してなる。図37はその内のシナプス回路6の構成
例を示し、係数回路9を介して入力パルスfに倍率a
(フィードバック信号に掛ける倍率で1又は2)を掛け
た値が入力されるレートマルチプライヤ10を設けてな
り、レートマルチプライヤ10には重み付けの値wを記
憶したシナプス荷重レジスタ11が接続されている。ま
た、図38は細胞体回路8の構成例を示し、制御回路1
2、アップ/ダウンカウンタ13、レートマルチプライ
ヤ14及びゲート15を順に接続してなり、さらに、ア
ップ/ダウンメモリ16が設けられている。
On the other hand, an example in which a neural network is realized by a digital circuit will be described with reference to FIGS. 36 to 38. FIG. 36 shows a circuit configuration of a single nerve cell, in which each synapse circuit 6 is connected to a cell body circuit 8 via a dendrite circuit 7. FIG. 37 shows a configuration example of the synapse circuit 6 in which the input pulse f is multiplied by the magnification a via the coefficient circuit 9.
A rate multiplier 10 to which a value obtained by multiplying (a multiplication factor of 1 or 2 by the feedback signal) is input is provided, and the rate multiplier 10 is connected to a synapse weight register 11 that stores a weighting value w. . 38 shows a configuration example of the cell body circuit 8, and the control circuit 1
2, an up / down counter 13, a rate multiplier 14 and a gate 15 are sequentially connected, and an up / down memory 16 is further provided.

【0013】これは、神経細胞ユニットの入出力をパル
ス列で表し、そのパルス密度で信号の量を表している。
結合係数は2進数で表し、メモリ16上に保存してお
く。入力信号をレートマルチプライヤ14のクロックへ
入力し、結合係数をレート値へ入力することによって、
入力信号のパルス密度をレート値に応じて減らしてい
る。これは、バックプロパゲーションモデルの式のTij
i の部分に相当する。次に、ΣTiji のΣの部分
は、樹状突起回路7によって示されるOR回路で実現し
ている。結合には興奮性、抑制性があるので、予めグル
ープ分けしておき、各々のグループ別にORをとる。こ
の2つの出力をカウンタ13のアップ側、ダウン側に入
力しカウントすることで出力が得られる。この出力は2
進数であるので、再びレートマルチプライヤ14を用い
て、パルス密度に変換する。このユニットをネットワー
クにすることによって、ニューラルネットワークが実現
できる。
In this case, the input and output of the nerve cell unit is represented by a pulse train, and the pulse density represents the amount of signal.
The coupling coefficient is represented by a binary number and stored in the memory 16. By inputting the input signal into the clock of the rate multiplier 14 and inputting the coupling coefficient into the rate value,
The pulse density of the input signal is reduced according to the rate value. This is the T ij of the backpropagation model equation.
It corresponds to the part of y i . Next, the Σ portion of ΣT ij y i is realized by the OR circuit shown by the dendrite circuit 7. Since the coupling has excitatory and inhibitory properties, it is divided into groups in advance and OR is taken for each group. An output is obtained by inputting these two outputs to the up side and down side of the counter 13 and counting. This output is 2
Since it is a decimal number, the rate multiplier 14 is used again to convert it into a pulse density. A neural network can be realized by making this unit a network.

【0014】[0014]

【発明が解決しようとする課題】しかしながら、前者の
アナログ回路方式には、次のような問題点がある。 信号の強度を電位や電流などのアナログ値で表し、
内部の演算もアナログ的に行わせる場合、温度特性や電
源投入直後のドリフト等により、その値が変化する。 ネットワークであるので、素子の数も多く必要とす
るが、各々の特性を揃えることは困難である。 1つの素子の精度や安定性が問題となったとき、そ
れをネットワークにしたとき、新たな問題を生ずる可能
性があり、ネットワーク全体で見たときの動きが予想で
きない。 結合係数Tijが固定であり、予めシミュレーション
などの他の方法で学習させた値を使うしかなく、自己学
習ができない。
However, the former analog circuit system has the following problems. The signal strength is represented by an analog value such as electric potential or current,
When the internal calculation is also performed in an analog manner, its value changes due to temperature characteristics, drift immediately after power-on, and the like. Since it is a network, a large number of elements are required, but it is difficult to make the respective characteristics uniform. When the accuracy or stability of one element becomes a problem, it may cause a new problem when it is used as a network, and the behavior when viewed in the whole network cannot be predicted. Since the coupling coefficient T ij is fixed and the value learned in advance by another method such as simulation is used, self-learning cannot be performed.

【0015】また、後者のデジタル回路によるネットワ
ーク構成の場合も、現実にはアップダウンカウンタ1
3、レートマルチプライヤ14を用いる等、非常に複雑
で大規模な回路となってしまう。
Also, in the latter case of the network configuration of digital circuits, the up / down counter 1 is actually used.
3. Use of the rate multiplier 14 results in a very complicated and large-scale circuit.

【0016】このように従来技術による場合、アナログ
回路方式では動作に確実性がなく、数値計算による学習
方法も計算が複雑であり、ハードウエア化に適さず、動
作が確実なデジタル方式のものは回路構成が大規模で複
雑である。
As described above, according to the prior art, the analog circuit system is not reliable in operation, and the learning method by numerical calculation is complicated in calculation. The circuit configuration is large and complicated.

【0017】このような欠点を解消するため、パルス密
度型デジタル方式の自己学習機能付きニューロンモデル
が特願平2−412448号、特願平3−29342号
等として本出願人により提案されている。しかし、この
ような提案例のニューロン素子よりも非線形性の高い
系、入力データに時間依存性を持たせたい場合や、或い
は、入力信号の値が細かく量子化されているような場合
にも対応可能に、ニューロンの汎用性・柔軟性をより高
めるためには、フォワードプロセスにおいてパルス列表
現の出力信号の情報を後の時刻の出力信号値に反映させ
ることが要望される。
In order to solve such a drawback, a pulse density digital type neuron model with a self-learning function has been proposed by the present applicant as Japanese Patent Application Nos. 2-412448 and 3-29342. .. However, it is also applicable to systems with higher non-linearity than the neuron element of the proposed example, when it is desired to make input data time-dependent, or when input signal values are finely quantized. In order to increase the versatility and flexibility of the neuron, it is required to reflect the information of the output signal represented by the pulse train in the output signal value at a later time in the forward process.

【0018】この点について、さらに説明する。パルス
密度型ニューラルネットワークには、上述したような本
出願人提案によるものの他、例えば、特開平1−244
567号公報や米国特許4893255号明細書等に示
されるものもある。何れにしても、パルス密度型ニュー
ラルネットワークにおける信号処理のやり方は、各々の
種類によって異なる。
This point will be further described. The pulse density type neural network is not limited to the one proposed by the applicant as described above, and is disclosed in, for example, JP-A-1-244.
Some are disclosed in Japanese Patent No. 567, US Pat. No. 4,893,255, and the like. In any case, the method of signal processing in the pulse density neural network differs depending on each type.

【0019】ここでは、本出願人提案によるパルス密度
型ニューラルネットワークにおける信号処理について簡
単に説明する。パルス列としては、実際にはビット列を
用いる。即ち、値として“0”又は“1”をとるビット
の列でパルス列を表し、値が“1”であるビットでパル
スを表し、値が“0”であるビットでパルスがないこと
を表す。
Here, the signal processing in the pulse density type neural network proposed by the present applicant will be briefly described. A bit train is actually used as the pulse train. That is, a train of bits that takes "0" or "1" as a value represents a pulse train, a bit having a value of "1" represents a pulse, and a bit having a value of "0" represents that there is no pulse.

【0020】信号の値は、パルスの密度、即ち、ビット
列中の値“1”のビットの密度で表す。換言すると、信
号の値はビット列中のビットの値が“1”である確率に
等しい。例えば、このニューラルネットワークに値
“X”の信号を入力した時、このニューラルネットワー
クには確率Xで値“1”のビットが入力し、確率(1−
X)で値“0”のビットが入力することになる。また、
ニューラルネットワークの出力値が“A”であるという
ことは、ニューラルネットワークが値“1”のビットを
出力する確率がAであることを意味している。
The value of a signal is represented by the density of pulses, that is, the density of bits having a value "1" in a bit string. In other words, the value of the signal is equal to the probability that the value of the bit in the bit string is "1". For example, when a signal of value "X" is input to this neural network, a bit of value "1" is input to this neural network with probability X, and the probability (1-
In X), the bit having the value “0” is input. Also,
The output value of the neural network being "A" means that the probability that the neural network outputs the bit having the value "1" is A.

【0021】ニューラルネットワーク内の各ニューロン
ユニットへは、ニューラルネットワークの外から、又
は、ニューラルネットワーク内の他の幾つかのニューロ
ンユニットから送られてきたビット列が入力信号として
入ってくる。ニューロンユニットと他のニューロンユニ
ットとの結合の強さを表す結合係数も、ビット列で表
し、入力信号の結合係数による重み付けは、入力ビット
列と結合係数ビット列との論理積をとることにより行
う。この重み付けされた入力信号を幾つかのグループに
区分けし、各区分け毎に別々に、この重み付けされた入
力信号同士の論理和をとる。次に、これらの2つの論理
和で得られたビット列に論理演算を施して新たなビット
列を生成し、そのビット列を出力信号としてニューロン
ユニットの外に出力する。図39はそのイメージを示す
ものである。図中、符号17はニューロンユニット(神
経細胞ユニット)を示す。
Each neuron unit in the neural network receives as an input signal a bit string sent from outside the neural network or from some other neuron units in the neural network. The coupling coefficient representing the strength of coupling between the neuron unit and another neuron unit is also represented by a bit string, and weighting by the coupling coefficient of the input signal is performed by taking the logical product of the input bit string and the coupling coefficient bit string. The weighted input signals are divided into several groups, and the weighted input signals are logically ORed separately for each division. Next, a logical operation is performed on the bit string obtained by these two logical sums to generate a new bit string, and the bit string is output as an output signal to the outside of the neuron unit. FIG. 39 shows an image thereof. In the figure, reference numeral 17 indicates a neuron unit (nerve cell unit).

【0022】このようなパルス密度型ニューラルネット
ワーク方式においては、1ビット分の時間前後の処理状
態を示す図40のように、あるニューロンユニット17
への入力信号であるビット列からニューロンユニット1
7の出力信号であるビット列を生成する時、各入力ビッ
ト列からニューロンユニット17へ同時に入ってきた1
ビットの組のみから出力ビット列の1ビットを生成する
ものである。
In such a pulse density type neural network system, a certain neuron unit 17 is provided as shown in FIG.
Neuron unit 1 from the bit string which is the input signal to
When the bit string which is the output signal of 7 is generated, 1 is input from each input bit string to the neuron unit 17 at the same time.
One bit of the output bit string is generated only from the set of bits.

【0023】このように、各入力ビット列からニューロ
ンユニットへ同時に入ってきた1ビットの組のみから、
出力ビット列の1ビットを生成しているために、このニ
ューロンユニットを組合せて構成されるニューラルネッ
トワークの入力値と出力値との関係は、線形になる。こ
の点を1入力1出力のニューラルネットワークで説明す
ると、模式的に、図41に示すように表すことができ
る。まず、ニューラルネットワーク18に値“X”の信
号を入力した場合の出力は、値“1”の信号を入力した
場合の出力と値“0”の信号を入力した場合の出力と
を、X:(1−X)の割合で混ぜ合わせた値となる。従
って、入力値が“1”の時のニューラルネットワーク1
8の出力を“A”とし、入力値が“0”の時のニューラ
ルネットワーク18の出力を“B”とすると、値“X”
の信号を入力した時のニューラルネットワーク18の出
力値“Y”は、Y=AX+B(1−X)となる。即ち、
このニューラルネットワーク18の入力値“X”と出力
値“Y”との関係は、図42に示すように、線形とな
る。このことは、1入力1出力のニューラルネットワー
ク18は入力値“X”と出力値“Y”との非線形な関係
を学習できない、ということを意味している。
In this way, from only the 1-bit group that has simultaneously entered each neuron unit from each input bit string,
Since one bit of the output bit string is generated, the relationship between the input value and the output value of the neural network configured by combining these neuron units becomes linear. This point will be described with a one-input one-output neural network, which can be schematically represented as shown in FIG. First, the output when the signal of the value “X” is input to the neural network 18 is the output when the signal of the value “1” is input and the output when the signal of the value “0” is input: X: The value is a mixture of (1-X). Therefore, the neural network 1 when the input value is "1"
If the output of 8 is "A" and the output of the neural network 18 is "B" when the input value is "0", the value "X" is obtained.
The output value "Y" of the neural network 18 when the signal of (1) is input is Y = AX + B (1-X). That is,
The relationship between the input value "X" and the output value "Y" of the neural network 18 is linear as shown in FIG. This means that the one-input one-output neural network 18 cannot learn the non-linear relationship between the input value “X” and the output value “Y”.

【0024】このように1入力1出力のニューラルネッ
トワークにおいて入力値と出力値との非線形な関係を学
習できない、という問題点を解決するための方法とし
て、 出力パルス列中のパルス数を数えて、同数のパルス
を持ったパルス列を生成し直して出力させるようにした
もの。 重み付けた入力信号のパルスの論理和を空間方向に
だけでなく、時間方向にもとるようにしたもの。 等も提案されているが、信号処理速度が遅い懸念があ
る。
As a method for solving the problem that the non-linear relationship between the input value and the output value cannot be learned in the one-input one-output neural network as described above, the number of pulses in the output pulse train is counted to obtain the same number. The pulse train with the pulse of is regenerated and output. The weighted input signal pulse is ORed not only in the spatial direction but also in the time direction. However, there is a concern that the signal processing speed is slow.

【0025】[0025]

【課題を解決するための手段】請求項1記載の発明で
は、パルス列で表現された入力信号とパルス列で表現さ
れた結合係数との論理積を演算する論理積演算手段と、
この論理積演算手段による演算結果を複数のグループに
分けるグループ分け手段と、各々のグループ内で前記演
算結果の論理和を演算する論理和演算手段と、これらの
論理和演算手段の演算結果に対して論理演算を施す論理
演算手段と、この論理演算手段から出力されるパルス列
に対してそのパルス密度を変更するパルス密度変更手段
と、パルス密度で表現された誤差信号に基づき前記結合
係数を変化させる結合係数可変手段とを有する信号処理
手段を設けた。
According to a first aspect of the invention, there is provided a logical product calculating means for calculating a logical product of an input signal expressed by a pulse train and a coupling coefficient expressed by the pulse train,
Grouping means for dividing the operation result by the AND operation means into a plurality of groups, OR operation means for operating the OR of the operation results in each group, and operation results of these OR operation means Logical operation means for performing logical operation, pulse density changing means for changing the pulse density of the pulse train output from the logical operation means, and the coupling coefficient is changed based on the error signal expressed by the pulse density. The signal processing means having the coupling coefficient varying means is provided.

【0026】ここに、このようなパルス密度変更手段と
して、請求項2記載の発明では、論理演算手段の演算結
果を計数するカウンタと、このカウンタの計数結果に応
じた確率のパルス列で表現された信号を発生させる信号
発生手段と、この信号発生手段による発生信号と前記論
理演算手段の演算結果との論理積を演算する論理積演算
手段とにより構成した。
Here, as such a pulse density changing means, in the invention described in claim 2, it is represented by a counter for counting the operation result of the logical operation means and a pulse train having a probability according to the count result of this counter. The signal generating means for generating a signal and the logical product calculating means for calculating the logical product of the signal generated by the signal generating means and the calculation result of the logical calculating means.

【0027】請求項2記載の発明のパルス密度変更手段
中の論理積演算手段に代えて、請求項4記載の発明で
は、信号発生手段による発生信号と論理演算手段の演算
結果との論理和を演算する論理和演算手段を設け、請求
項6記載の発明では、信号発生手段による発生信号と論
理演算手段の演算結果との論理演算を行なう論理演算手
段を設けた。これらの発明について、請求項3,5,7
記載の発明では、カウンタに代えて、アップダウンカウ
ンタを設けた。
In place of the logical product calculating means in the pulse density changing means of the invention described in claim 2, in the invention described in claim 4, the logical sum of the signal generated by the signal generating means and the calculation result of the logical calculating means is calculated. An OR operation means for performing the operation is provided, and in the invention according to the sixth aspect, the logic operation means for performing the logical operation of the signal generated by the signal generating means and the operation result of the logical operation means is provided. Regarding these inventions, claims 3, 5, 7
In the invention described, an up / down counter is provided instead of the counter.

【0028】請求項8記載の発明では、パルス密度変更
手段を、出力信号中の2値の内の特定の値である情報単
位の数を計数するカウンタと、計数手段による計数結果
を加算する加算手段と、整数値又は実数値をランダムに
生成する乱数発生手段と、前記加算手段による加算結果
と前記乱数発生手段により生成された乱数値とを比較し
て比較結果に応じて2値の内の特定の値である情報単位
を出力する比較手段と、前記出力信号中の情報単位と前
記比較手段からの出力信号中の情報単位との論理和を演
算して新たな出力信号とする論理和演算手段とにより構
成した。
According to the eighth aspect of the present invention, the pulse density changing means includes a counter for counting the number of information units, which is a specific value of the two values in the output signal, and an addition for adding the counting result by the counting means. Means, a random number generating means for randomly generating an integer value or a real value, the addition result by the adding means and the random number value generated by the random number generating means are compared, and one of two values is selected according to the comparison result. A comparison means for outputting an information unit having a specific value, and a logical sum operation for calculating a logical sum of the information unit in the output signal and the information unit in the output signal from the comparison means to obtain a new output signal. And means.

【0029】同様に、請求項9記載の発明では、パルス
密度変更手段を、出力信号中の2値の内の特定の値であ
る情報単位の数を計数するカウンタと、整数値又は実数
値をランダムに生成する乱数発生手段と、前記計数手段
による計数結果と前記乱数発生手段により生成された乱
数値とを比較して比較結果に応じて2値の内の特定の値
である情報単位を出力する比較手段と、前記出力信号中
の情報単位と前記比較手段からの出力信号中の情報単位
とがともに2値の内の特定の値をとる時には以後その特
定の値である情報単位を前記比較手段が出力する確率を
高める確率向上手段と、前記出力信号中の情報単位と前
記比較手段からの出力信号中の情報単位との論理和を演
算して新たな出力信号とする論理和演算手段とにより構
成した。
Similarly, in the invention described in claim 9, the pulse density changing means is provided with a counter for counting the number of information units which is a specific value of the two values in the output signal, and an integer value or a real value. Randomly generated random number generation means is compared with the counting result by the counting means and the random number value generated by the random number generation means, and an information unit, which is a specific value of two values, is output according to the comparison result. And the information unit in the output signal and the information unit in the output signal from the comparison unit both take a specific value of the two values, the information unit having the specific value is then compared. Probability increasing means for increasing the probability of output by the means, and logical sum calculating means for calculating a logical sum of the information unit in the output signal and the information unit in the output signal from the comparing means to obtain a new output signal. Composed by.

【0030】さらに、請求項9記載の発明によるパルス
密度変更手段中の確率向上手段に代えて、請求項10記
載の発明では、比較手段からの出力信号中の情報単位が
2値の内の特定の値をとる時には前記計数手段による計
数結果を減らす手段を設け、請求項11記載の発明で
は、比較手段からの出力信号中の情報単位が2値の内の
特定の値をとり前記出力信号中の情報単位が2値の内の
特定の値をとらない時には前記計数手段による計数結果
を減らす手段を設けた。
Further, in place of the probability improving means in the pulse density changing means according to the ninth aspect of the invention, in the invention of the tenth aspect, the information unit in the output signal from the comparing means is specified among two values. A means for reducing the counting result by the counting means is provided when taking the value of, and in the invention according to claim 11, the information unit in the output signal from the comparing means takes a specific value out of two values, and Means for reducing the counting result by the counting means when the information unit does not take a specific value out of the two values.

【0031】これらの請求項8,9,10又は11記載
の発明において、請求項12記載の発明では、出力信号
中に2値の内の特定の値である情報単位を増やす手段を
複数個連結した。
In the invention described in claim 8, 9, 10 or 11, in the invention described in claim 12, a plurality of means for increasing the information unit which is a specific value of the two values in the output signal is connected. did.

【0032】[0032]

【作用】請求項1記載の発明によれば、パルス列表現の
信号を処理する簡単なデジタル論理構成において、入力
信号と結合係数との論理積演算、グループ分けした論理
和演算、これらの論理和演算結果についての論理演算の
結果得られる信号を、そのまま出力させずに、パルス密
度変更手段によりパルス密度を変更して出力させるよう
にしたので、フォワードプロセスでの出力信号パルス密
度を、入力信号パルス密度に対して非線形に変化させ得
るものとなり、ネットワークを構築した場合の柔軟性・
汎用性の高いものとなる。
According to the invention described in claim 1, in a simple digital logic configuration for processing a signal of a pulse train representation, an AND operation of an input signal and a coupling coefficient, a grouped OR operation, and an OR operation of these The signal obtained as a result of the logical operation of the result is not output as it is, but the pulse density is changed and output by the pulse density changing means. Therefore, the output signal pulse density in the forward process is changed to the input signal pulse density. Can be changed in a nonlinear manner with respect to the flexibility of a network.
It is highly versatile.

【0033】請求項2ないし12記載の発明によれば、
このようなパルス密度変更手段をカウンタ等を用いて構
成することが具体的に示されており、確実な動作が確保
される。
According to the invention described in claims 2 to 12,
It is specifically shown that such a pulse density changing means is configured by using a counter or the like, and a reliable operation is ensured.

【0034】[0034]

【実施例】本発明の一実施例を図1ないし図31に基づ
いて説明する。まず、自己学習機能を持つパルス密度型
デジタル論理回路を用いた神経細胞ユニット(ニューロ
ン素子)及びニューラルネットワークについて説明す
る。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described with reference to FIGS. First, a nerve cell unit (neuron element) and a neural network using a pulse density type digital logic circuit having a self-learning function will be described.

【0035】まず、本実施例のニューロン及びニューラ
ルネットワークはデジタル構成によりハードウエア化し
たものであるが、基本的な考え方としては、 神経細胞ユニットに関する入出力信号、中間信号、
結合係数、教師信号などは全て、“0”“1”の2値で
表されたパルス列で表す。 ネットワーク内部での信号の量は、パルス密度で表
す(ある一定時間内の“1”の数)。 神経細胞ユニット内での計算は、パルス列同士の論
理演算で表す。 結合係数のパルス列は神経細胞ユニット内のメモリ
上に置く。 学習は、このパルス列を書換えることで実現する。 学習については、与えられた教師信号パルス列を元
に誤差を計算し、これに基づいて、結合係数パルス列を
変化させる。このとき、誤差の計算、結合係数の変化分
の計算も、全て、“0”“1”のパルス列の論理演算で
行う。 ようにしたものである。
First, the neurons and neural networks of this embodiment are digitalized and implemented as hardware. The basic idea is to input / output signals, intermediate signals,
The coupling coefficient, the teacher signal, etc. are all represented by a binary pulse train of "0" and "1". The amount of signal inside the network is represented by the pulse density (the number of "1" s within a certain fixed time). The calculation in the nerve cell unit is represented by a logical operation between pulse trains. The pulse train of the coupling coefficient is placed on the memory in the nerve cell unit. Learning is realized by rewriting this pulse train. For learning, the error is calculated based on the given teacher signal pulse train, and the coupling coefficient pulse train is changed based on the error. At this time, the calculation of the error and the change of the coupling coefficient are all performed by the logical operation of the pulse train of "0" and "1". It was done like this.

【0036】以下、この思想について説明する。まず、
デジタル論理回路による信号処理に関し、フォワードプ
ロセスにおける信号処理を説明する。図2は1つの神経
細胞ユニット(神経細胞模倣素子)20に相当する部分
を示し、ニューラルネットワーク全体としては例えば図
3に示すように階層型とされる。入出力は、全て、
“1”“0”に2値化され、かつ、同期化されたものが
用いられる。入力信号yi の値(強度)はパルス密度で
表現し、例えば図4に示すパルス列のようにある一定時
間内にある“1”の状態数で表す。即ち、図4の例は、
4/6を表し、同期パルス6個中に信号は“1”が4
個、“0”が2個である。このとき、“1”と“0”の
並び方は、ランダムであることが望ましい。
This idea will be described below. First,
Regarding signal processing by a digital logic circuit, signal processing in the forward process will be described. FIG. 2 shows a portion corresponding to one nerve cell unit (nerve cell mimicking element) 20, and the neural network as a whole is of a hierarchical type as shown in FIG. Input and output are all
The binarized and synchronized "1" and "0" are used. The value (intensity) of the input signal y i is represented by a pulse density, and is represented by the number of states of “1” within a certain fixed time as in the pulse train shown in FIG. 4, for example. That is, the example of FIG.
4/6, and the signal "1" is 4 in 6 sync pulses.
There are two "0" s. At this time, it is desirable that the arrangement of "1" and "0" is random.

【0037】一方、各神経細胞ユニット20間の結合の
度合を示す結合係数Tijも同様にパルス密度で表現し、
“0”と“1”とのパルス列として予めメモリ上に用意
しておく。図5の例は、“101010”=3/6を表
す式である。この場合も、“1”と“0”の並び方はラ
ンダムであることが望ましい。
On the other hand, the coupling coefficient T ij indicating the degree of coupling between the nerve cell units 20 is similarly expressed by pulse density,
A pulse train of "0" and "1" is prepared in advance in the memory. The example of FIG. 5 is an expression representing “101010” = 3/6. Also in this case, it is desirable that the arrangement of "1" and "0" is random.

【0038】そして、この結合係数パルス列を同期クロ
ックに応じてメモリ上より順次読出し、図2に示すよう
に各々ANDゲート21により入力信号パルス列との論
理積をとる(yi ∩ Tij)。これを、神経細胞jへの入
力とする。上例の場合で説明すると、入力信号が“10
1101”として入力されたとき、これと同期してメモ
リ上よりパルス列を呼出し、順次ANDをとることによ
り、図6に示すような“101000”が得られ、これ
は入力yi が結合係数Tijにより変換されパルス密度が
2/6となることを示している。
Then, the coupling coefficient pulse train is sequentially read from the memory in response to the synchronous clock, and the AND gate 21 takes the logical product with the input signal pulse train as shown in FIG. 2 (y i ∩ T ij ). This is used as an input to the nerve cell j. In the case of the above example, the input signal is "10.
When input as "1101", a pulse train is called from the memory in synchronization with this and "101000" as shown in FIG. 6 is obtained by sequentially performing AND, which means that the input y i is the coupling coefficient T ij. It is shown that the pulse density becomes 2/6 by the conversion.

【0039】ANDゲート21の出力のパルス密度は、
近似的には入力信号のパルス密度と結合係数のパルス密
度との積となり、アナログ方式の結合係数と同様の機能
を有する。これは、信号の列が長いほど、また、“1”
と“0”との並び方がランダムであるほど、数値の積に
近い機能を持つことになる。なお、入力パルス列に比べ
て結合係数のパルス列が短く、読出すべきデータがなく
なったら、再びデータの先頭に戻って読出しを繰返えせ
ばよい。
The pulse density of the output of the AND gate 21 is
It 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 analog coupling coefficient. This is because the longer the signal train is, the more "1"
The more random the arrangement of "0" and "0", the closer to the product of numerical values it has. When the pulse train of the coupling coefficient is shorter than the input pulse train and there is no data to be read, the head of the data may be returned to and the reading may be repeated.

【0040】1つの神経細胞ユニット20は多入力であ
るので、前述した「入力信号と結合係数とのAND」も
多数あり、次にOR回路22によりこれらの論理和をと
る。入力は同期化されているので、例えば1番目のデー
タが“101000”、2番目のデータが“01000
0”の場合、両者のORをとると、“111000”と
なる。これを多入力(m個)同時に計算し出力とする
と、例えば図7に示すようになる。これは、アナログ計
算における和の計算及び非線形関数(シグモイド関数)
の部分に対応している。
Since one nerve cell unit 20 has multiple inputs, there are also many "ANDs of the input signal and the coupling coefficient" described above, and then the OR circuit 22 takes the logical sum of these. Since the inputs are synchronized, for example, the first data is "101000" and the second data is "01000".
In the case of "0", the OR of both results in "111000". When this is simultaneously calculated by multiple inputs (m) and output, the result is as shown in Fig. 7. This is the sum of analog calculation. Calculation and non-linear function (sigmoid function)
It corresponds to the part of.

【0041】パルス密度が低い場合、そのORをとった
もののパルス密度は、各々のパルス密度の和に近似的に
一致する。パルス密度が高くなるにつれ、OR回路22
の出力は段々飽和してくるので、パルス密度の和とは一
致せず、非線形性が出てくる。ORの場合、パルス密度
は1よりも大きくなることがなく、かつ、0より小さく
なることもなく、さらには、単調増加関数であり、シグ
モイド関数と近似的に同等となる。
When the pulse density is low, the pulse density of the OR of the pulse density is approximately equal to the sum of the pulse densities. As the pulse density increases, the OR circuit 22
Since the output of is gradually saturated, it does not match the sum of pulse densities, and nonlinearity appears. In the case of OR, the pulse density does not become larger than 1 and does not become smaller than 0, and is a monotonically increasing function, which is approximately equivalent to the sigmoid function.

【0042】ところで、結合には興奮性と抑制性がある
が、本実施例でも各ニューロン間の結合においてはその
両方を持ち得るものとする。まず、結合係数が興奮性結
合係数Tij(+) か抑制性結合係数Tij(-) かにより、各
結合を興奮性結合グループと抑制性結合グループとに2
分する。そして、入力信号と各結合係数のパルス列のA
ND出力同士のORを各グループで計算する。そして、
興奮性結合グループのOR結果が“1”で抑制性結合グ
ループのOR結果が“0”の場合にのみ“1”を出力
し、それ以外の場合には“0”を出力する。図8にこの
様子を示す。
By the way, although the connection has excitability and inhibitory property, it is assumed that the present embodiment can have both of them in connection between neurons. First, depending on whether the coupling coefficient is the excitatory coupling coefficient T ij (+) or the inhibitory coupling coefficient T ij (-) , each coupling is divided into an excitatory coupling group and an inhibitory coupling group.
Share Then, A of the pulse train of the input signal and each coupling coefficient
The OR of ND outputs is calculated for each group. And
"1" is output only when the OR result of the excitatory coupling group is "1" and the OR result of the inhibitory coupling group is "0", and "0" is output otherwise. This is shown in FIG.

【0043】論理式で表現すると、次の(3)〜(5)式で
示される。
When expressed by a logical expression, it is expressed by the following expressions (3) to (5).

【0044】[0044]

【数3】 [Equation 3]

【0045】さらに、この論理結果なる信号xj のパル
ス数を計数し、その計数値に応じたパルス密度のパルス
列を生成して出力する。ただし、計数する際に、この出
力パルス列中のパルスによって、信号xj のパルス数の
計数結果を修正するようにしてもよい。このようなパル
ス信号zj と上記の論理結果なる信号xj との論理積を
とり、これを本ニューロンからの最終的な出力信号yj
とする。なお、パルス信号zj ,xj の論理積に代え
て、論理和又は他の論理演算として最終的な出力信号y
j を得るようにしてもよい。このような演算によるニュ
ーロンの各時刻の出力信号yj が、前の時刻の出力に依
存するものとなる。
Further, the number of pulses of the signal x j which is the logical result is counted, and a pulse train having a pulse density corresponding to the counted value is generated and output. However, when counting, the counting result of the pulse number of the signal x j may be corrected by the pulse in the output pulse train. The logical product of such a pulse signal z j and the signal x j resulting from the above logical result is calculated, and this is the final output signal y j from this neuron.
And It should be noted that instead of the logical product of the pulse signals z j and x j , the final output signal y is obtained as a logical sum or another logical operation.
You may get j . The output signal y j of each time of the neuron by such an operation depends on the output of the previous time.

【0046】神経細胞ユニット20のネットワークは、
階層型(即ち、図3)とする。そして、ネットワーク全
体を同期させておけば、各層とも上述した機能により計
算できる。
The network of nerve cell units 20 is
It is hierarchical (ie, FIG. 3). If the entire network is synchronized, each layer can be calculated by the functions described above.

【0047】次に、学習(バックプロパゲーション)に
おける信号演算処理について説明する。基本的には、以
下のa又はbにより誤差信号を求め、次いで、cの方法
により結合係数の値を変化させるようにすればよい。
Next, the signal calculation processing in learning (back propagation) will be described. Basically, the error signal may be obtained by the following a or b, and then the value of the coupling coefficient may be changed by the method of c.

【0048】a.最終層における誤差信号 最終層で各神経細胞ユニットにおける誤差信号を出力信
号と教師信号とにより計算する。ここに、そのときの入
力に対して望ましい出力を、教師信号としてパルス列で
与える。一般に、誤差を数値で表すと正、負の両方をと
り得るが、パルス密度ではそれを同時に表現できないの
で、+成分を表す信号と、−成分を表す信号との2種類
を用いて誤差信号を表現する。即ち、j番目の神経細胞
ユニットの誤差信号は、図9のように示される。つま
り、誤差信号の+成分は教師信号パルスと出力パルスと
の違っている部分(1,0)又は(0,1)の内、教師
信号側に存在するパルス、他方、−成分は同様に出力側
に存在するパルスである。換言すれば、出力パルスに誤
差信号+パルスを付け加え、誤差信号−パルスを取り除
くと、教師パルスとなることになる。即ち、これらの正
負の誤差信号δj(+),δj(-)を論理式で表現すると、各
々(6)(7)式のようになる。このような誤差信号パルス
を元に結合係数を後述するように変化させることにな
る。
A. Error signal in the final layer In the final layer, the error signal in each nerve cell unit is calculated from the output signal and the teacher signal. Here, a desired output with respect to the input at that time is given by a pulse train as a teacher signal. Generally, if the error is expressed by a numerical value, it can take both positive and negative values, but since it cannot be expressed simultaneously by the pulse density, an error signal can be obtained by using two kinds of signals, one representing a + component and the other representing a − component. Express. That is, the error signal of the j-th nerve cell unit is shown in FIG. That is, the + component of the error signal is a pulse existing on the teacher signal side in the portion (1, 0) or (0, 1) where the teacher signal pulse and the output pulse are different, while the − component is similarly output. It is a pulse that exists on the side. In other words, if the error signal + pulse is added to the output pulse and the error signal−pulse is removed, it becomes a teacher pulse. That is, when these positive and negative error signals δ j (+) and δ j (-) are expressed by logical expressions, the expressions (6) and (7) are obtained. The coupling coefficient is changed based on such an error signal pulse as described later.

【0049】[0049]

【数4】 [Equation 4]

【0050】b.中間層における誤差信号 まず、上記の誤差信号を逆伝播させ、最終層とその1つ
前の層との結合係数だけでなく、さらにその前の層の結
合係数も変化する。そのため、中間層における各神経細
胞ユニットでの誤差信号を計算する必要がある。中間層
のある神経細胞ユニットから、さらに1つ先の層の各神
経細胞ユニットへ信号を伝播させたのとは、丁度逆の要
領で1つ先の層の各神経細胞ユニットにおける誤差信号
を集めてきて、自己の誤差信号とする。このことは、神
経細胞ユニット内での前述した演算式(3)〜(5)や図4
〜図8に示した場合と同じような要領で行うことができ
る。ただし、神経細胞ユニット内での前述した処理と異
なるのは、yは1つの信号であるのに対して、δは正、
負を表す信号として2つの信号を持ち、その両方の信号
を考慮する必要があることである。従って、結合係数T
の正負に応じて2つの場合に分ける必要がある。
B. Error Signal in Intermediate Layer First, the above-mentioned error signal is back-propagated to change not only the coupling coefficient between the final layer and the layer immediately before it but also the coupling coefficient of the layer before that. Therefore, it is necessary to calculate the error signal in each nerve cell unit in the middle layer. Signals were propagated from the neuron unit with an intermediate layer to each neuron unit in the next layer, which is exactly the reverse of the procedure of collecting error signals in each neuron unit in the next layer. And use it as its own error signal. This means that the above-mentioned arithmetic expressions (3) to (5) in FIG.
~ It can be performed in the same manner as the case shown in FIG. However, the difference from the above-mentioned processing in the nerve cell unit is that y is one signal, while δ is positive,
That is, it is necessary to have two signals as negative signals and to consider both of them. Therefore, the coupling coefficient T
It is necessary to divide into two cases according to the positive or negative of.

【0051】まず、興奮性結合の場合を説明する。この
場合、中間層のある神経細胞ユニットについて、1つ先
の層(図3における最終層)のj番目の神経細胞ユニッ
トでの誤差信号+と、その神経細胞ユニットと自己(図
3における中間層のある神経細胞ユニット)との結合係
数のANDをとったもの(δj(+) ∩ Tij)を各神経細
胞ユニットについて求め、さらに、これら同士のORを
とる{∪(δj(+) ∩Tij)}。これをこの神経細胞ユ
ニットの誤差信号+とする。即ち、図10に示すように
なる。
First, the case of excitatory coupling will be described. In this case, for a nerve cell unit having an intermediate layer, the error signal + at the jth nerve cell unit of the layer immediately before (the last layer in FIG. 3), the nerve cell unit and the self (the middle layer in FIG. 3) For each nerve cell unit, the AND (δ j (+) ∩ T ij ) of the coupling coefficient with a certain nerve cell unit) is obtained, and the OR of these is calculated {∪ (δ j (+) ∩ T ij )}. This is the error signal + of this nerve cell unit. That is, it becomes as shown in FIG.

【0052】同様に、1つ先の層の神経細胞ユニットで
の誤差信号−と結合係数とのANDをとり、さらにこれ
ら同士のORをとることにより、この神経細胞ユニット
の誤差信号−とする。即ち、図11に示すようになる。
Similarly, the error signal of the nerve cell unit of the previous layer is ANDed with the coupling coefficient, and the OR between them is taken as the error signal of this nerve cell unit. That is, it becomes as shown in FIG.

【0053】次に、抑制性結合の場合を説明する。この
場合、1つ先の層の神経細胞ユニットでの誤差信号−と
その神経細胞ユニットと自己との結合係数のANDをと
り、さらにこれら同士のORをとる。これを、この神経
細胞ユニットの誤差信号+とする。即ち、図12に示す
ようになる。
Next, the case of inhibitory binding will be described. In this case, the AND of the error signal in the nerve cell unit of the layer one layer ahead and the coupling coefficient of the nerve cell unit and the self is taken, and further the OR between them is taken. This is the error signal + of this nerve cell unit. That is, it becomes as shown in FIG.

【0054】また、1つ先の誤差信号+と結合係数との
ANDをとり、さらにこれら同士のORをとることによ
り、同様に、この神経細胞ユニットの誤差信号−とす
る。即ち、図13に示すようになる。
Further, the error signal + of the preceding one is ANDed and the coupling coefficient is ANDed, and the OR between them is similarly taken as the error signal − of this nerve cell unit. That is, it becomes as shown in FIG.

【0055】さらに、この神経細胞ユニットの、興奮性
結合の誤差信号+と抑制性結合の誤差信号+とのORを
とり、これをこのユニットの誤差信号δi(+)とする。同
様に、興奮性結合の誤差信号−と抑制性結合の誤差信号
−とのORをとり、これをこのユニットの誤差信号δ
i(-)とする。
Further, the error signal + of the excitatory connection and the error signal + of the inhibitory connection of this nerve cell unit are ORed, and this is taken as the error signal δ i (+) of this unit. Similarly, the error signal of the excitatory coupling and the error signal of the inhibitory coupling are ORed, and this is calculated as the error signal δ of this unit.
i (-)

【0056】以上をまとめると、(8)式に示すようにな
る。
The above is summarized as shown in equation (8).

【0057】[0057]

【数5】 [Equation 5]

【0058】さらに、入力してくる誤差信号に対して各
々同じ又は異なる学習のレート(学習定数)を設けても
よい。これは、パルス列を間引くことにより実現でき
る。例えば、カウンタ的な考え方をし、図14、図15
に示すようなものとすればよい。この例では、学習レー
トη=0.5では元の信号のパルス列を1つ置きに間引
くが、元の信号のパルスが等間隔でなくても、元のパル
ス列に対して間引くことができる。図14,図15中、
η=0.5の場合はパルスを1つ置きに間引き、η=
0.33の場合はパルスを2つ置きに残し、η=0.6
7の場合はパルスを2つ置きに1回間引くことを示す。
Further, the same or different learning rates (learning constants) may be set for the input error signals. This can be realized by thinning out the pulse train. For example, a counter-like idea is adopted, and FIG.
It may be as shown in. In this example, while the learning rate η = 0.5, the pulse train of the original signal is thinned out every other pulse, but even if the pulses of the original signal are not evenly spaced, they can be thinned out with respect to the original pulse train. 14 and 15,
When η = 0.5, every other pulse is thinned out, and η =
In the case of 0.33, every other pulse is left and η = 0.6.
The case of 7 indicates that every other pulse is thinned once.

【0059】このようにして、誤差信号を間引くことに
より学習レートの機能を持たせる。このような誤差信号
の間引きは、通常市販されているカウンタの出力を論理
演算することやフリップフロップを用いることにより容
易に実現できる。特に、カウンタを用いた場合、学習定
数ηの値を任意、かつ、容易に設定できるので、ネット
ワークの特性を制御することも可能となる。
In this way, the function of the learning rate is provided by thinning out the error signal. Such thinning out of the error signal can be easily realized by logically operating the output of a counter commercially available or using a flip-flop. In particular, when a counter is used, the value of the learning constant η can be set arbitrarily and easily, so that the characteristics of the network can be controlled.

【0060】c.誤差信号に基づき各結合係数を変化さ
せる方法 変化させたい結合係数が属しているライン(図3参照)
に対応する、1つ前の神経細胞ユニットからの出力yi
と自己の神経細胞ユニットの誤差信号δj(+)又はδj(-)
とのANDをとる(δj∩yi)(図16,図17参
照)。このようにして得られた2つの信号を各々ΔT
ij(+),ΔTij(-)とする。
C. Method of changing each coupling coefficient based on the error signal The line to which the coupling coefficient to be changed belongs (see Fig. 3)
Output y i from the previous neuron unit corresponding to
And the error signal δ j (+) or δ j (-) of the own nerve cell unit
AND with (δ j ∩ y i ) (see FIGS. 16 and 17). The two signals thus obtained are respectively denoted by ΔT
Let ij (+) and ΔT ij (-) .

【0061】そして、今度はこのΔTijを元に新しいT
ijを求めるが、このTijは絶対値成分であるので、元の
ijが興奮性か抑制性かで場合分けする。興奮性の場
合、元のTijに対してΔTij(+)の成分を増やし、ΔT
ij(-)の成分を減らす。即ち、図18に示すようにな
る。逆に、抑制性の場合は元のTijに対しΔTij(+)
成分を減らし、ΔTij(-)の成分を増やす。即ち、図1
9に示すようになる。
Then, based on this ΔT ij , a new T
ij is obtained. Since this T ij is an absolute value component, it is classified depending on whether the original T ij is excitatory or inhibitory. In the case of excitability, the component of ΔT ij (+) is increased with respect to the original T ij , and ΔT
Reduce the components of ij (-) . That is, it becomes as shown in FIG. On the contrary, in the case of the suppressive property, the component of ΔT ij (+) is reduced and the component of ΔT ij (−) is increased with respect to the original T ij . That is, FIG.
It becomes as shown in 9.

【0062】以上をまとめると、(9)式のようになる。The above can be summarized as in equation (9).

【0063】[0063]

【数6】 [Equation 6]

【0064】以上の学習則に基づいてネットワークの計
算をする。
The network is calculated based on the above learning rule.

【0065】次に、以上のアルゴリズムに基づく実際の
回路構成を説明する。図20及び図1にその回路構成例
を示すが、ネットワーク全体の構成は図3と同様であ
る。図20は図2中のライン(結線)に相当する部分の
回路を示し、図1は図3中の丸(各神経細胞ユニット2
0)に相当する部分の回路を示す。これらの図20及び
図1構成の回路を図2のようにネットワークにすること
により、自己学習可能なデジタル式のニューラルネット
ワークが実現できる。
Next, an actual circuit configuration based on the above algorithm will be described. 20 and 1 show examples of the circuit configuration, the configuration of the entire network is the same as that of FIG. 20 shows a circuit of a portion corresponding to a line (connection) in FIG. 2, and FIG. 1 shows a circle (each nerve cell unit 2 in FIG. 3).
The circuit of the part corresponding to 0) is shown. A digital neural network capable of self-learning can be realized by making the circuits of the configurations of FIGS. 20 and 1 into a network as shown in FIG.

【0066】まず、図20から説明する。図中、25は
神経細胞ユニットへの入力信号であり、図4に相当す
る。図5に示したような結合係数の値はメモリとしての
シフトレジスタ26に保存しておく。このシフトレジス
タ26は取出し口26aと入口26bとを有するが、通
常のシフトレジスタと同様の機能を持つものであればよ
く、例えば、RAMとアドレスコントローラとの組合せ
によるもの等であってもよい。入力信号25とシフトレ
ジスタ26内の結合係数とは論理積演算手段としてのA
NDゲート27を備えて図6に示した処理を行なう論理
回路28によりANDがとられる。この論理回路28の
出力は結合が興奮性か抑制性かによってグループ分けし
なければならないが、予め各々のグループへの出力2
9,30を用意し、何れに出力するのかを切換えるよう
にした方が汎用性の高いものとなる。このため、本実施
例では結合が興奮性か抑制性かを表すビットをグループ
分け用メモリ31に保存しておき、その情報を用いてグ
ループ分け手段となる切換えゲート回路32により切換
える。切換えゲート回路32は2つのANDゲート32
a,32bと一方の入力に介在されたインバータ32c
とよりなる。
First, FIG. 20 will be described. In the figure, 25 is an input signal to the nerve cell unit and corresponds to FIG. The value of the coupling coefficient as shown in FIG. 5 is stored in the shift register 26 as a memory. The shift register 26 has an outlet 26a and an inlet 26b, but it may have the same function as a normal shift register, and may be, for example, a combination of a RAM and an address controller. The input signal 25 and the coupling coefficient in the shift register 26 are A as an AND operation means.
The AND is performed by the logic circuit 28 including the ND gate 27 and performing the processing shown in FIG. The output of this logic circuit 28 must be grouped according to whether the coupling is excitatory or inhibitory.
It is more versatile to prepare 9 and 30 and switch which one of them is output. For this reason, in this embodiment, a bit indicating whether the coupling is excitatory or inhibitory is stored in the grouping memory 31, and the information is used for switching by the switching gate circuit 32 serving as a grouping unit. The switching gate circuit 32 includes two AND gates 32.
a and 32b and an inverter 32c interposed between one input
And consists of.

【0067】また、図1に示すように各入力処理(図7
に相当)をする複数のORゲート構成のゲート回路33
a,33bが設けられている。さらに、同図に示すよう
に図8に示した興奮性結合グループが“1”で、抑制性
結合グループが“0”のときにのみ出力“1”を出すA
NDゲート34aとインバータ34bとによる論理演算
手段となるゲート回路34が設けられている。
Further, as shown in FIG. 1, each input process (see FIG.
Gate circuit 33 having a plurality of OR gates
a and 33b are provided. Further, as shown in the figure, the output "1" is output only when the excitatory coupling group shown in FIG. 8 is "1" and the inhibitory coupling group is "0".
A gate circuit 34, which serves as a logical operation means by the ND gate 34a and the inverter 34b, is provided.

【0068】さらに、このゲート回路34から出力され
る信号を計数するカウンタ46が設けられ、このカウン
タ46による計数値に相当する確率の密度のパルス列を
発生させる信号発生手段となるパルス列発生装置47が
設けられている。このパルス列発生装置47から出力さ
れる信号と前記ゲート回路34から出力される信号との
論理積をとり第2論理積演算手段となるANDゲート4
8が設けられている。このANDゲート48からの信号
がこの神経細胞ユニット20の最終出力とされる。ここ
に、前記カウンタ46は通常のカウンタでもよく(請求
項2記載の発明に相当)、或いは、パルスが出力されな
い時又はある間隔で減算処理するアップダウンカウンタ
としてもよい(請求項3記載の発明)。また、カウンタ
46は1データ毎にリセットされるものとしてもよい。
また、ANDゲート48に代えて、ORゲート(請求項
4,5記載の発明にいう別の論理和演算手段に相当)を
用いたり、別の論理演算処理を行なうゲート回路(請求
項6,7記載の発明にいう別の論理演算手段に相当)を
用いてもよい。
Further, a counter 46 for counting the signals output from the gate circuit 34 is provided, and a pulse train generator 47 serving as signal generating means for generating a pulse train having a density of probability corresponding to the count value by the counter 46. It is provided. An AND gate 4 serving as a second AND operation means for calculating the logical product of the signal output from the pulse train generator 47 and the signal output from the gate circuit 34.
8 are provided. The signal from the AND gate 48 is the final output of the nerve cell unit 20. Here, the counter 46 may be a normal counter (corresponding to the invention of claim 2) or an up / down counter that performs a subtraction process when a pulse is not output or at a certain interval (invention of claim 3). ). Further, the counter 46 may be reset every data.
Further, instead of the AND gate 48, an OR gate (corresponding to another OR operation means in the inventions of claims 4 and 5) is used, or a gate circuit for performing another logic operation processing (claims 6 and 7). (Corresponding to another logical operation means referred to in the described invention) may be used.

【0069】また、カウンタ46はゲート回路34から
出力される信号とパルス列発生装置47から出力される
信号、或いは、それらの2つの信号に論理演算を施した
信号を入力してカウントするアップダウンカウンタであ
ってもよい。また、カウンタ46の代わりに、複数のカ
ウンタと加算回路とメモリとを組合せた回路を用いても
よい。また、カウンタ46の代わりに、ゲート回路34
から出力される信号をカウントするカウンタとゲート回
路34から出力される信号とパルス列発生装置47から
出力される信号とに論理演算を施した信号をカウントす
るカウンタとそれらの2つのカウンタの出力値を加算す
る加算回路とメモリとを組合せた回路を用いてもよい。
The counter 46 is an up / down counter that counts by inputting the signal output from the gate circuit 34 and the signal output from the pulse train generator 47, or a signal obtained by performing a logical operation on these two signals. May be Further, instead of the counter 46, a circuit in which a plurality of counters, an adder circuit, and a memory are combined may be used. Further, instead of the counter 46, the gate circuit 34
A counter for counting the signals output from the gate circuit 34, a counter for counting the signals output from the gate circuit 34 and a signal output from the pulse train generator 47, and the output values of these two counters. A circuit in which an adding circuit for adding and a memory are combined may be used.

【0070】次に、学習処理について説明する。図1に
示す回路には誤差信号35,36が入力される。これら
の誤差信号35,36は複数のORゲート構成のゲート
回路37で各々集められた後((8)式の処理)、分周回
路38により学習レートに相当する処理(図14及び図
15の処理)を受け、1つ前の層に対する誤差信号3
9,40として出力される。ここに、中間層における誤
差信号を計算するため図10〜図13に示したような処
理は、図20中に示すANDゲート構成のゲート回路4
1により行われ、+,−に応じて、1つ前の層の神経細
胞ユニットへ出力するための誤差信号42,43が得ら
れる。
Next, the learning process will be described. Error signals 35 and 36 are input to the circuit shown in FIG. These error signals 35 and 36 are collected by the gate circuits 37 each having a plurality of OR gates (processing of equation (8)), and then the frequency dividing circuit 38 performs processing corresponding to the learning rate (see FIGS. 14 and 15). Processing) and the error signal 3 for the previous layer
It is output as 9,40. The process shown in FIGS. 10 to 13 for calculating the error signal in the intermediate layer is performed by the gate circuit 4 having the AND gate configuration shown in FIG.
The error signals 42 and 43 to be output to the nerve cell unit of the previous layer are obtained according to + and −.

【0071】このように結合が興奮性結合か抑制性結合
かによって場合分けが必要であるが、この場合分けはメ
モリ31に記憶された興奮性か抑制性かを示す情報と、
誤差信号の+,−信号39,40とに応じて、AND,
ORゲート構成のゲート回路44により行なわれる。
As described above, it is necessary to classify the connection depending on whether the connection is excitatory connection or inhibitory connection. In this case, information indicating whether the connection is excitatory or inhibitory is stored in the memory 31, and
Depending on the + and-signals 39 and 40 of the error signal, AND,
This is performed by the gate circuit 44 having an OR gate configuration.

【0072】このような誤差信号39,40に基づい
て、新たな結合係数を計算するための図16ないし図1
9に示した処理を行なうANDゲート、インバータ、O
Rゲート構成の結合係数可変回路45が設けられ、各シ
フトレジスタ26のデータ入口26b側に接続されてい
る。これにより、シフトレジスタ26に格納された結合
係数の更新書替えが行なわれる。このゲート回路45の
場合も、結合の興奮性、抑制性により場合分けが必要で
あるが、これはゲート回路44により行なわれる。
16 to 1 for calculating a new coupling coefficient based on the error signals 39 and 40.
AND gate, inverter, O for performing the processing shown in FIG.
A coupling coefficient variable circuit 45 having an R gate configuration is provided and connected to the data inlet 26b side of each shift register 26. As a result, the update and rewriting of the coupling coefficient stored in the shift register 26 is performed. In the case of the gate circuit 45 as well, it is necessary to separate the cases depending on the excitability and inhibitory property of the coupling, but this is performed by the gate circuit 44.

【0073】なお、本発明を構成する上では、上記の構
成例に限らず、同等の機能を有するものであればよく、
さらには、全てをハードウエア構成することなく、その
一部又は全部をソフトウエアで実現するようにしてもよ
い。
It should be noted that the present invention is not limited to the above-described configuration examples as long as it has equivalent functions.
Further, some or all of them may be realized by software without configuring all by hardware.

【0074】ところで、前述した説明によれば、1入力
1出力のニューラルネットワークにおいて入力値と出力
値との非線形な関係を学習可能とするため、出力パルス
列中のパルス数を数えながら、数えた値に基づいてパル
スを発生させ、発生されたパルスと出力パルスとの論理
演算を行った結果を、改めて出力信号とさせているの
で、前述したの対応方法に比して、パルス列を出力
しながら同時にそのパルス列を変更できるので信号処理
速度が速いという長所がある。ここでは、前述した内容
を拡張し、かつ、具体化し、さらには、出力パルス列中
のパルス数を数えた値とパルスを発生させる確率との対
応付けについても言及する。
By the way, according to the above description, in order to make it possible to learn the nonlinear relationship between the input value and the output value in the one-input one-output neural network, the value counted while counting the number of pulses in the output pulse train. Pulse is generated based on the above, and the result of the logical operation of the generated pulse and the output pulse is used as the output signal again. Since the pulse train can be changed, there is an advantage that the signal processing speed is fast. Here, the contents described above are expanded and embodied, and further, the correspondence between the value obtained by counting the number of pulses in the output pulse train and the probability of generating pulses is also referred to.

【0075】まず、パルス密度型ニューラルネットワー
クにおいて入力値“X”と出力値“Y”との非線形な関
係を学習できないという従前の欠点を回避するため、ニ
ューロンユニットの入力と出力との関係を非線形にすれ
ばよい、という前述した実施例に基づく思想を実現する
ための基本的構成例を図21に示す。図21に示す回路
51は、図22に示すように、神経細胞ユニット20中
に示すような位置に配設される。図1の場合であれば、
符号46〜48で示す部分に設けられる。この回路51
には、まず、カウンタ46に相当し、ニユーロン出力を
計数するカウンタ52が設けられている。また、信号発
生手段47に相当する部分は、乱数発生器53と比較器
54とにより構成され、さらに出力側には、請求項4又
は5記載の発明対応の構成としてORゲート(別の論理
和演算手段)55が設けられて構成されている。
First, in order to avoid the conventional defect that the nonlinear relationship between the input value "X" and the output value "Y" cannot be learned in the pulse density type neural network, the relationship between the input and output of the neuron unit is nonlinear. FIG. 21 shows an example of a basic configuration for realizing the idea based on the above-described embodiment that “the above-mentioned is sufficient”. The circuit 51 shown in FIG. 21 is arranged at a position as shown in the nerve cell unit 20 as shown in FIG. In the case of FIG. 1,
It is provided in the portions indicated by reference numerals 46 to 48. This circuit 51
First, a counter 52, which corresponds to the counter 46 and counts the output of the Nitron, is provided. Further, a portion corresponding to the signal generating means 47 is composed of a random number generator 53 and a comparator 54, and the output side is further provided with an OR gate (another OR gate) as a structure corresponding to the invention of claim 4 or 5. Arithmetic means) 55 is provided and configured.

【0076】これにより、まず、ニューロンからの出力
ビット列中の値“1”のビットを、カウンタ52で計数
する。このカウンタ52の出力値と乱数発生器53の出
力値とを比較器54で比較し、乱数発生器53の出力値
のほうがカウンタ52の計数値以下であれば比較器54
からは値“1”のビットを出力し、そうでなければ値
“0”のビットを出力する。この比較器54からの出力
ビットとニューロンからの出力ビットとの論理和をOR
ゲート55でとり、その結果をニューロンからの新たな
出力ビットとする。カウンタ52は神経細胞ユニット2
0が1データ分のビット列を処理し終わる毎に0クリア
される。
As a result, first, the counter 52 counts the bits of the value "1" in the output bit string from the neuron. The comparator 54 compares the output value of the counter 52 with the output value of the random number generator 53. If the output value of the random number generator 53 is less than or equal to the count value of the counter 52, the comparator 54
Outputs a bit having a value "1", and otherwise outputs a bit having a value "0". The OR of the output bit from the comparator 54 and the output bit from the neuron is ORed.
It is taken by the gate 55 and the result is used as a new output bit from the neuron. The counter 52 is the nerve cell unit 2
Whenever 0 finishes processing the bit string for 1 data, 0 is cleared.

【0077】ここに、乱数発生器53としては、通常
は、LFSR(リニアフィードバックシフトレジスタ)
が使用される。このような乱数発生器53を形成するL
FSRは、リニアに順次接続された複数個のレジスタの
所定の複数の出力部が排他的論理和を介して先頭の入力
部にフィードバック接続された構造となっており、レジ
スタに設定されたビットを複数個所からフィードバック
する際に排他的論理和で合成することで、極めて長周期
のビット列で疑似的な乱数を生成するようになってい
る。そして、このようなLFSRからなる乱数発生器5
3は、そのレジスタの個数やフィードバック接続の位置
及び設定された初期値が同一ならば出力するビット列も
同一となるので、再現性を有する乱数を生成することが
できる。
Here, the random number generator 53 is usually an LFSR (linear feedback shift register).
Is used. L forming such a random number generator 53
The FSR has a structure in which a predetermined plurality of output sections of a plurality of linearly connected registers are feedback-connected to the head input section through an exclusive OR, and the bits set in the registers are By combining with an exclusive OR when feeding back from a plurality of places, a pseudo random number is generated with an extremely long-period bit string. Then, the random number generator 5 including such an LFSR
In No. 3, if the number of registers, the position of feedback connection, and the set initial value are the same, the output bit string is also the same, so that a random number having reproducibility can be generated.

【0078】例えば、図23に例示するように、7段の
LFSRで乱数発生器531〜534を形成する場合、こ
れはリニアに順次接続された7個のレジスタ581〜5
7の所定の中間の出力部59と末端の出力部60とを
排他的論理和61を介して先頭の入力部62にフィード
バック接続し、各レジスタ58に同一の基準クロック6
3を並列に接続した構造として実施される。このような
構成において、この乱数発生器53では、時刻tにおけ
るレジスタ581 内に格納されたビットをAt と表現す
るならば、時刻(t+j)におけるレジスタ58(1+i)
には、i時間以前にレジスタ581内に格納されていた
ビットA(t-i+j)が移動していることになり、時刻(t−
1)におけるレジスタ58(1+i)内に格納されたビットは
(t-i-1)となる。例えば、同図(c)に例示したよう
に、中間の出力部59を4段目のレジスタ584に設け
た乱数発生器533では、1段目のレジスタ581内のビ
ットAtは、時刻(t−1)における4段目と7段目との
レジスタ584,587内のビットを排他的論理和61で
合成した値となっている。ここで、排他的論理和61に
よるビットの合成は“modulo2”での加算に等しいの
で、1段目のレジスタ581 内のビットAt は、 At=A(t-4)+A(t-7) (mod2) …………(10) となる。
For example, as shown in FIG. 23, when the random number generators 53 1 to 53 4 are formed by 7 stages of LFSR, these are seven registers 58 1 to 5 8 connected in a linear sequence.
A predetermined intermediate output unit 59 and a terminal output unit 60 of 8 7 are feedback-connected to the head input unit 62 via an exclusive OR 61, and the same reference clock 6 is supplied to each register 58.
It is implemented as a structure in which 3 are connected in parallel. In such a configuration, in the random number generator 53, if the bit stored in the register 58 1 at time t is represented by At, the register 58 (1 + i) at time (t + j) contains i The bit A (t-i + j) stored in the register 58 1 before the time is moved, and the time (t-
The bit stored in the register 58 (1 + i) in 1) is A (ti-1) . For example, as illustrated in FIG. (C), the random number generator 53 3 provided intermediate output section 59 to the register 58 4 of the fourth stage, the bit A t of the first stage of the register 58 in 1, the bits of the register 58 4, 58 in 7 of the fourth stage and seventh stage at time (t-1) has a synthesized value exclusive OR 61. Here, synthesis of bits by exclusive OR 61 is equal to the addition in "modulo2", bit A t of the first stage of the register 58 in 1, A t = A (t- 4) + A (t- 7) (mod2) ………… (10).

【0079】ここで、上述のような7段のLFSRから
なる乱数発生器53の各レジスタ58に所定のビットが
入力された状態である設定値は、各レジスタ58内のビ
ットが“0”か“1”の一方となるので27 =128通
りとなるが、7つの設定値が全て“0”の場合は、ビッ
トの回送を繰返しても設定値の全てが“0”のままであ
り、7つの設定値に一つでも“1”が内包される場合
は、ビットの回送を繰返すと設定値は上記組合わせの一
つに所定周期で変化する。ここで、乱数発生器53の所
定のレジスタ58内のビットAt が(10)式で規定される
場合、At のビット列は周期(27−1) の疑似的なラ
ンダム系列となることが判明している。つまり、図示し
たLFSRからなる乱数発生器53は、1周期中に(2
7−1) のビット列を生成することができるので、この
ビット列を7桁の2進数として読取ることで乱数発生器
53は1〜127の整数値を出力することになる。な
お、このようなLFSRからなる乱数発生器53の設定
値を2進数の数値として読取る場合、先頭を最下位とす
る方法と末端を最下位とする方法との両方が実施されて
いるが、ここでは先頭を最下位として説明を行なうもの
とする。ただし、ここでは乱数発生器52の先頭と末端
との何れを最下位とする方法でも成り立つようになって
いる。
Here, the set value in a state where a predetermined bit is input to each register 58 of the random number generator 53 composed of 7 stages of LFSR as described above is whether the bit in each register 58 is "0". Since it is one of "1", there are 2 7 = 128 ways, but if all 7 set values are "0", all the set values remain "0" even if the bit forwarding is repeated, If at least one of the seven set values includes "1", the set value changes to one of the above combinations in a predetermined cycle when the bit forwarding is repeated. Here, when the bit A t in a predetermined register 58 of the random number generator 53 is defined by the equation (10), the bit string of A t may be a pseudo-random sequence of period (2 7 -1) It's known. In other words, the random number generator 53 composed of the illustrated LFSR is (2
Since it is possible to generate a bit string of 7 −1), the random number generator 53 outputs an integer value of 1 to 127 by reading this bit string as a 7-digit binary number. When reading the set value of the random number generator 53 composed of such an LFSR as a binary number, both the method of setting the head to the lowest and the method of setting the terminal to the lowest are performed. Now, let us say that the beginning is the lowest. However, here, the method of setting either the beginning or the end of the random number generator 52 to the lowest is valid.

【0080】ここで、ci(=1,2,…p) を“0”
か“1”の整数(ただしcp =1)とすると、このci
によってAt を示す漸化式は、 At=c1(t-1)+c2(t-2)…+cp(t-p) (mod2) ……(11) となり、この漸化式の特性多項式は、(12)式となる。
Here, c i (= 1, 2, ... P) is set to “0”
Or an integer of "1" (where c p = 1), this c i
Recurrence formula showing a A t some, A t = c 1 A ( t-1) + c 2 A (t-2) ... + c p A (tp) (mod2) ...... (11) , and this recurrence formula The characteristic polynomial of is as shown in equation (12).

【0081】[0081]

【数7】 [Equation 7]

【0082】ここで、上述のような漸化式(11)によって
生成される乱数列は、長さ“2のp乗−1”以下の周期
を有するが、この範囲内で最大周期を生じる特性多項式
を特に原始多項式と呼称している。そして、このような
原始多項式によって生成される“2のp乗−1”の周期
のAt のビット列を、p次の線形最大周期列(Maximum
−Length Linearly Recurring Sequence)としてM
系列と呼称している。例えば、数式(10)から生成される
t のビット列は、原始多項式 f(x)=1+x4+x7 に対応する7次のM系列である。なお、7段のLFSR
からなる乱数発生器53の場合、7次のM系列のビット
列を生成するものは図23に例示した4種類に限定され
ているので、これらの乱数発生器53の原始多項式や漸
化式等を以下に例示する。
Here, the random number sequence generated by the above-mentioned recurrence formula (11) has a period of length “2 to the power of p−1” or less, but the characteristic that produces the maximum period within this range. Polynomials are especially called primitive polynomials. Then, a bit string of A t of the period of such generated by a primitive polynomial "2 of p squared -1", p order linear maximum period sequence (Maximum
-Length Linearly Recurring Sequence) M
It is called an affiliate. For example, bit string A t generated from equation (10) is a 7-order M sequence corresponding to the primitive polynomial f (x) = 1 + x 4 + x 7. In addition, 7-stage LFSR
In the case of the random number generator 53 consisting of, the number of generators of the 7th-order M-sequence bit string is limited to the four types illustrated in FIG. 23, and therefore the primitive polynomials and recurrence equations of these random number generators 53 are An example is given below.

【0083】 .同図(a)に例示した乱数発生器531 原始多項式 f(x)=1+x+x7 漸化式 At=A(t-1)+A(t-7) (mod2) M系列のビット列 表1(a)に例示 生成される乱数列 表2(a)に例示 .同図(b)に例示した乱数発生器532 原始多項式 f(x)=1+x3+x7 漸化式 At=A(t-3)+A(t-7) (mod2) M系列のビット列 表1(b)に例示 生成される乱数列 表2(b)に例示 .同図(c)に例示した乱数発生器53 原始多項式 f(x)=1+x4+x7 漸化式 At=A(t-4)+A(t-7) (mod2) M系列のビット列 表1(c)に例示 生成される乱数列 表2(c)に例示 .同図(d)に例示した乱数発生器534 原始多項式 f(x)=1+x6+x7 漸化式 At=A(t-6)+A(t-7) (mod2) M系列のビット列 表1(d)に例示 生成される乱数列 表2(d)に例示.. FIG (a) to the illustrated random number generator 53 1 primitive polynomial f (x) = 1 + x + x 7 recurrence formula A t = A (t-1 ) + A (t-7) (mod2) bit string of M series tables 1 ( Example a) Generated random number sequence Example table 2 (a). Bit string table of FIG. (B) exemplary random number generator 53 2 primitive polynomial f (x) = 1 + x 3 + x 7 recurrence formula A t = A (t-3 ) + A (t-7) (mod2) M -sequence 1 (b) Example of generated random number sequence Table 2 (b). Bit string table of FIG. (C) to the illustrated random number generator 53 3 primitive polynomial f (x) = 1 + x 4 + x 7 recurrence formula A t = A (t-4 ) + A (t-7) (mod2) M -sequence 1 (c) Example generated random number sequence Table 2 (c). Bit string table of the (d) of FIG exemplary random number generator 53 4 primitive polynomial f (x) = 1 + x 6 + x 7 recurrence formula A t = A (t-6 ) + A (t-7) (mod2) M -sequence 1 (d) illustrated Random number sequence generated Table 2 (d) illustrated

【0084】[0084]

【表1】 [Table 1]

【0085】[0085]

【表2】 [Table 2]

【0086】つまり、このようなLFSRからなる乱数
発生器53は、M系列のビット列で生成する乱数の周期
が最大であるので、発生する乱数の不規則性が極めて良
好である。ここで、このようなM系列の乱数発生器53
では、出力するビット列の周期が最大であることが予め
判明しているので、これをパルス密度やパルス数で変調
することでパルス位置が不規則な信号を生成することも
可能である。例えば、上述のような127通りの乱数を
発生する7次の乱数発生器53においてパルス密度が1
0/127の信号を要望した場合、生成された乱数が1
〜10ならばパルスを出力して乱数が11〜127なら
ばパルスを出力しないようにすれば、この信号はパルス
の位置が不規則で密度が10/127となる。このよう
にして、乱数発生器53では、M系列のビット列を生成
するので疑似的な乱数の発生周期を最大にすることがで
きる。
That is, in the random number generator 53 composed of such an LFSR, since the cycle of the random number generated by the bit string of the M series is the maximum, the irregularity of the generated random number is extremely good. Here, such an M-sequence random number generator 53
Since it is known in advance that the cycle of the output bit string is the maximum, it is possible to generate a signal with an irregular pulse position by modulating this with the pulse density or the number of pulses. For example, in the 7th-order random number generator 53 that generates 127 random numbers as described above, the pulse density is 1
If you request a 0/127 signal, the generated random number is 1
If a pulse is output if -10 and a pulse is not output if the random number is 11-127, this signal has irregular pulse positions and a density of 10/127. In this way, the random number generator 53 generates the M-sequence bit string, so that the pseudo random number generation period can be maximized.

【0087】ところで、図21に示した回路51により
神経細胞ユニット20の出力が非線形になる点について
説明する。ここでは127個のビットで1つのデータを
構成し、図21に示した回路を設けない場合の神経細胞
ユニット20の出力がパルス密度1/127である場合
を例にとって説明する。まず、カウンタ52はゼロクリ
アさせておく。値“1”のビットが127ビットからな
るニューロン出力中のどの位置に存在するかは全くラン
ダムである。今、ニューロン出力中の最初のビットが
“1”であったとすると、ORゲート55からの新たな
ニューロン出力の最初のビットは“1”となり、カウン
タ52の値は“1”に変わる。ニューロン出力中の残り
の126ビットは全て“0”であるが、残りの126ビ
ットが出力される126クロックの間にLFSRによる
乱数発生器53から“1”が出力される確率が126/
127あるため、新たなニューロン出力に値“1”のビ
ットがもう1個混じる確率も126/127となる。
Now, the point that the output of the nerve cell unit 20 becomes non-linear by the circuit 51 shown in FIG. 21 will be described. Here, an example will be described in which 127 bits configure one data, and the output of the nerve cell unit 20 when the circuit shown in FIG. 21 is not provided has a pulse density of 1/127. First, the counter 52 is cleared to zero. The position of the bit of the value "1" in the neuron output consisting of 127 bits is totally random. Now, assuming that the first bit in the neuron output is "1", the first bit of the new neuron output from the OR gate 55 becomes "1", and the value of the counter 52 changes to "1". The remaining 126 bits in the neuron output are all "0", but the probability that "1" is output from the LFSR random number generator 53 during 126 clocks when the remaining 126 bits are output is 126 /
Since there are 127, the probability that another bit with the value “1” is mixed in the new neuron output is also 126/127.

【0088】しかし、もし、値“1”のビットがニュー
ロン出力中の2番目の位置に存在していたとすると、カ
ウンタ52の値が“1”に変わった後で出力されるビッ
ト数は125個であるので、新たなニューロン出力に値
“1”のビットがもう1個混じる確率は126/127
ではなく、125/127となる。さらに、値“1”の
ビットがニューロン出力中の最後の位置に存在していた
とすると、新たなニューロン出力中に値“1”のビット
がもう1個混じる確率は0となる。
However, if the bit having the value "1" is present at the second position in the neuron output, the number of bits output after the value of the counter 52 is changed to "1" is 125. Therefore, the probability that another bit with the value “1” is mixed in the new neuron output is 126/127.
Instead, it becomes 125/127. Further, assuming that the bit having the value "1" exists at the last position in the neuron output, the probability that another bit having the value "1" is mixed in the new neuron output is 0.

【0089】このように、ニューロン出力中のどの位置
にパルスが存在するかによって異なるものの、新たなニ
ューロン出力は、回路51を付加しない場合のニユーロ
ン出力の最大2倍まで増加する。このことは、回路51
を付加しない場合のニューロン出力のパルス密度が1/
127より大きい場合でも同様である。ただし、パルス
密度は1を超えることがないので、ニューロン出力が大
きくなると、新たなニューロン出力の元のニューロン出
力に対する倍率は、次第に低下する。
As described above, the new neuron output increases up to twice as much as the Nyron output without the circuit 51, although it depends on the position of the pulse in the neuron output. This means that the circuit 51
If the pulse density of the neuron output is 1 /
The same applies when the value is larger than 127. However, since the pulse density never exceeds 1, when the neuron output becomes large, the multiplication factor of the new neuron output with respect to the original neuron output gradually decreases.

【0090】図22において、回路51がない場合のニ
ューロン出力と回路51がある場合の新たなニューロン
出力との関係を図示すると、図24のようになる。即
ち、回路51がない場合のニューロン出力が同じ値であ
っても、パルス位置が異なれば新たなニューロン出力の
値は異なるので図24には新たなニューロン出力の値に
ついて平均値をとった線を示してある。
In FIG. 22, the relationship between the neuron output when the circuit 51 is not present and the new neuron output when the circuit 51 is present is shown in FIG. That is, even if the neuron output without the circuit 51 is the same value, the new neuron output value is different if the pulse position is different. Therefore, in FIG. 24, a line obtained by averaging the new neuron output values is shown. It is shown.

【0091】図24に示す関係より、神経細胞ユニット
20の入力値と出力値との関係は、図25に示すよう
に、回路51がない場合は破線で示すような線形関係で
あり、回路51がある場合は実線で示すような非線形関
係にあることが判る。このように、図22中に示す位置
に図21に示した回路51を組込むことによって神経細
胞ユニット20の入力値と出力値との関係を非線形に変
えることができる。また、入力値と出力値との関係は、
入力値が小さいところでの立上りが急で入力値が大きい
ところでは飽和してくる、というように、ニューラルネ
ットワークに学習能力を付加するのに好ましい形とな
る。
From the relationship shown in FIG. 24, the relationship between the input value and the output value of the nerve cell unit 20 is a linear relationship as shown by the broken line in the case where there is no circuit 51, as shown in FIG. If there is, it is understood that there is a non-linear relationship as shown by the solid line. As described above, by incorporating the circuit 51 shown in FIG. 21 at the position shown in FIG. 22, the relationship between the input value and the output value of the nerve cell unit 20 can be changed non-linearly. Also, the relationship between the input value and the output value is
This is a preferable form for adding learning ability to the neural network, such that the rise at a small input value rises sharply and that at a large input value becomes saturated.

【0092】ところで、比較器54から出された値
“1”のビットが元のニューロン出力の値“1”のビッ
トと重なった場合は、そのビットは元のニューロン出力
の値“1”のビットの数を増やすのには役立たない。図
26に示した回路56は、この点を改良したものであ
り、請求項9記載の発明に相当する。図26に示す回路
では、ANDゲート57で比較器54から出力されたビ
ットとニューロン出力のビットとの論理積をとるように
している。このANDゲート57による論理積の結果が
真であれば、カウンタ64の値が“1”増える。加算器
65ではニューロン出力を計数するカウンタ66(46
又は52に相当)とこのカウンタ64の計数値との和を
とり、その値をメモリ67に格納し、比較器54による
比較に供する。従って、比較器54から出された値
“1”のビットが元のニューロン出力の値“1”のビッ
トと重なった場合は、カウンタ64及び加算器65(情
報を増やす手段を構成する)を通して、メモリ67の値
が“1”増え、重なって役に立たなかった値“1”のビ
ットの代りに、後で、ORゲート55から出力される新
たなニューロン出力中に値“1”のビットが立つ可能性
が1個分増える。元のニューロン出力中の値“1”のビ
ットが少なくて、比較器54から出される値“1”のビ
ットと元のニューロン出力の値“1”のビットとの重な
りが少ない場合や、逆に、元のニューロン出力中の値
“1”のビットの数が多くて1データ中のビット数に近
くて新たなニューロン出力のビット列の中に元のニュー
ロン出力値の値“1”のビットと重ならないビット位置
があまり残っていない場合を除いて、図26に示した回
路56を用いた場合には、回路51を用いた場合より
も、新たなニューロン出力中に値“1”のビットが増え
る。
When the bit of the value "1" output from the comparator 54 overlaps with the bit of the original neuron output value "1", that bit is the bit of the original neuron output value "1". Does not help to increase the number of. The circuit 56 shown in FIG. 26 is an improvement of this point and corresponds to the invention of claim 9. In the circuit shown in FIG. 26, the AND gate 57 takes the logical product of the bit output from the comparator 54 and the bit output from the neuron. If the result of the logical product by the AND gate 57 is true, the value of the counter 64 increases by "1". In the adder 65, a counter 66 (46
Or 52) and the count value of the counter 64, and the sum is stored in the memory 67 for comparison by the comparator 54. Therefore, when the bit of the value "1" output from the comparator 54 overlaps with the bit of the original neuron output value "1", the counter 64 and the adder 65 (constituting means for increasing information) The value of the memory 67 is increased by "1", and the bit of the value "1" may be set in the output of the new neuron output from the OR gate 55 later, instead of the bit of the value "1" which is not useful. The sex increases by one. When there are few bits of the value "1" in the original neuron output and there is little overlap between the bits of the value "1" output from the comparator 54 and the bits of the original neuron output value "1", or vice versa. , The number of bits with the value "1" in the original neuron output is large and close to the number of bits in one data, and the bit string of the new neuron output overlaps with the bit with the value "1" of the original neuron output. Except when there are not many remaining bit positions that do not exist, when the circuit 56 shown in FIG. 26 is used, the number of bits with the value “1” is increased in the new neuron output than when the circuit 51 is used. ..

【0093】ところで、元のニューロン出力の値に比
べ、新たなニューロン出力の値を図21に示した回路5
1による場合よりも、もっと大きく増やして非線形性を
強くしたい場合には、図26に代えて、図27に示すよ
うに、ANDゲート57及びカウンタ64を省略し、ニ
ューロン出力を計数するカウンタ66a,66b,〜を
複数個(図示例は、2個)設けた回路69とし、これら
のカウンタ66a,66bの値を足し合わせてメモリ6
7に格納させるようにすればよい。請求項8記載の発明
に相当するこのような回路69による場合、新たなニュ
ーロン出力の値は、元のニューロン出力の値の最大3倍
まで増える。
By the way, the new value of the neuron output is compared with the original value of the neuron output in the circuit 5 shown in FIG.
When it is desired to increase the non-linearity by increasing it more greatly than in the case of 1, the AND gate 57 and the counter 64 are omitted as shown in FIG. 66b is a circuit 69 provided with a plurality (two in the illustrated example), and the values of these counters 66a and 66b are added together to make the memory 6
7 may be stored. In the case of such a circuit 69 corresponding to the invention of claim 8, the value of the new neuron output increases up to three times the value of the original neuron output.

【0094】ところで、図21に示した回路51におい
て、ニューロン出力の最初の値“1”のビットによりカ
ウンタ52が“1”になったとする。そして、ニューロ
ン出力の次の値“1”のビットが来るまで、ニューロン
出力中にしばらく値“0”のビットが続いたとする。す
ると、この間にLFSR構成の乱数発生器53の値が
“1”になれば、新たなニューロン出力中に値“1”の
ビットが1個生成される。その後、ニューロン出力の次
の値“1”のビットが来てカウンタ52の値が“2”に
なったとする。すると、その後、乱数発生器53の値が
“1”又は“2”になった時、新たなニューロン出力中
に値“1”のビットが生成される。この場合に、乱数発
生器53の値が“1”にも“2”にもなり得るものとす
ると、値“1”のビットが2個生成され、先に生成され
た値“1”のビットと合わせて計3個生成されることに
なる。
In the circuit 51 shown in FIG. 21, it is assumed that the counter 52 is set to "1" by the bit having the first value "1" of the neuron output. Then, it is assumed that until the next bit of value "1" of the neuron output comes, the bit of value "0" continues for a while during neuron output. Then, if the value of the LFSR-configured random number generator 53 becomes "1" during this period, one bit of the value "1" is generated in the output of the new neuron. Then, it is assumed that the next bit "1" of the neuron output comes and the value of the counter 52 becomes "2". Then, when the value of the random number generator 53 becomes "1" or "2" thereafter, a bit having the value "1" is generated in the new neuron output. In this case, assuming that the value of the random number generator 53 can be either "1" or "2", two bits of the value "1" are generated, and the bit of the value "1" generated previously is generated. In total, a total of 3 will be generated.

【0095】しかし、LFSR構成の乱数発生器53は
1周期中に同じ値を2度とることはないので、1データ
のパルス長と同じ周期のLFSRを使用している場合に
は、カウンタ52の値が“2”になった後は、1データ
分のニューロン出力が出力し終わるまでLFSRの値は
“1”にはならず、従って、値“1”のビットも合計2
個までしか生成されない。
However, since the random number generator 53 having the LFSR does not take the same value twice in one cycle, when the LFSR having the same cycle as the pulse length of one data is used, After the value becomes "2", the value of LFSR does not become "1" until the output of the neuron for one data is completed, so that the total number of bits of the value "1" is 2 as well.
Only up to individual items are generated.

【0096】一方、乱数発生器53として1データのパ
ルス長と異なる周期のLFSRを用いたり、LFSR以
外の回路を用いた場合には、カウンタ52の値が“1”
の時、乱数発生器53により新たなニューロン出力中に
値“1”のビットが1個増え、次に、カウンタ52の値
が“2”になった後でさらに2個増える、といったこと
が生じ得る。このようにして、乱数発生器53として1
テータのパルス長と同じ周期のLFSR以外の回路を用
いた場合には、新たなニューロン出力中の値“1”のビ
ットの増え方が、1データのパルス長と同じ周期のLF
SRを使用した時に比べて急激になる。これは、ニュー
ラルネットワークを適用する問題によっては、非線形性
が強すぎて好ましくない場合も生ずる。
On the other hand, when an LFSR having a cycle different from the pulse length of one data is used as the random number generator 53 or a circuit other than the LFSR is used, the value of the counter 52 is "1".
At this time, the random number generator 53 increases the number of bits with the value "1" by one in the output of the new neuron, and then the value of the counter 52 increases by "2", and the number of bits increases by two more. obtain. In this way, the random number generator 53
When a circuit other than the LFSR having the same period as the data pulse length is used, the increase in the number of bits of the value “1” in the new neuron output is the LF having the same period as the pulse length of one data.
It becomes sharper than when using SR. This may occur when the non-linearity is too strong and not desirable depending on the problem of applying the neural network.

【0097】このような場合に、新たなニューロン出力
中の値“1”のビットの増え方を抑えるためには、図2
8に示すような回路70とすればよい。請求項10記載
の発明に相当するこの回路70は回路51中のカウンタ
52に代えて、アップダウン(U/D)カウンタ70を
設たものである。これにより、比較器54から値“1”
のビットが出力される度に、U/Dカウンタ70の値を
“1”減らされるので、新たなニューロン出力中の値
“1”のビットの増え方が抑制される。
In such a case, in order to suppress the increase in the number of bits of the value "1" in the output of the new neuron, in FIG.
The circuit 70 shown in FIG. The circuit 70 corresponding to the invention of claim 10 has an up / down (U / D) counter 70 in place of the counter 52 in the circuit 51. As a result, the value "1" is output from the comparator 54.
Since the value of the U / D counter 70 is decremented by "1" every time the bit of "1" is output, the increase of the bit of value "1" in the new neuron output is suppressed.

【0098】ただし、図28の構成の場合、元のニュー
ロン出力のビットの値と比較器54からの出力ビットの
値とがともに“1”であって、比較器54からの出力ビ
ットが新たなニューロン出力中の値“1”のビットを増
やすのに役立たない場合でも、U/Dカウンタ70の値
が“1”減らされてしまう。この点を考慮した場合、図
29に示すように構成すればよい。請求項11記載の発
明に相当するこの回路72の場合、比較器54の出力を
直接U/Dカウンタ71に入力させず、ニューロン出力
をNOTゲート73で否定した結果との論理積をAND
ゲート74でとって入力させるようにしたものである。
However, in the case of the configuration of FIG. 28, the bit value of the original neuron output and the value of the output bit from the comparator 54 are both "1", and the output bit from the comparator 54 has a new value. The value of the U / D counter 70 is decremented by "1" even if it is not useful for increasing the bit of the value "1" in the neuron output. In consideration of this point, the configuration may be as shown in FIG. In the case of this circuit 72 corresponding to the invention described in claim 11, the output of the comparator 54 is not directly input to the U / D counter 71, and the AND of the neuron output and the result negated by the NOT gate 73 is ANDed.
The gate 74 is used for inputting.

【0099】これにより、元のニューロン出力のビット
が“0”で、かつ、比較器54の出力ビットの値が
“1”の時のみ、即ち、比較器54からの出力ビットが
新たなニューロン出力中の値“1”のビットを増やすの
に使われた場合のみ、U/Dカウンタ71の値を“1”
減らすようにしたものである。
As a result, only when the bit of the original neuron output is "0" and the value of the output bit of the comparator 54 is "1", that is, the output bit from the comparator 54 is a new neuron output. The value of the U / D counter 71 is set to "1" only when it is used to increase the bit of the value "1" in
I tried to reduce it.

【0100】なお、図21、図26ないし図29までに
示した回路51,56,69,70,72は、複数個直
列に結合させてもよい(請求項12記載の発明に相
当)。図30に図21に示した回路51を2つ直列に接
続した例を示す。これに準じて、3個以上直列に接続し
てもよく、同様に、回路56,69,70,72を結合
させてよい。さらには、図30に示すような同一種の回
路の直列結合に限らず、異種、例えば回路51と回路5
6、といったような混在形式で結合させてもよい。何れ
にしても、2つ以上の回路を重ねることにより、新たな
ニューロン出力の非線形性を強めることができる。
A plurality of the circuits 51, 56, 69, 70, 72 shown in FIGS. 21, 26 to 29 may be connected in series (corresponding to the invention of claim 12). FIG. 30 shows an example in which two circuits 51 shown in FIG. 21 are connected in series. According to this, three or more may be connected in series, and similarly, the circuits 56, 69, 70 and 72 may be connected. Furthermore, not only the series connection of the same type of circuit as shown in FIG. 30 but also different types, for example, the circuit 51 and the circuit 5.
6 may be combined in a mixed format. In any case, the non-linearity of the new neuron output can be strengthened by stacking two or more circuits.

【0101】例えば、図21に示した回路51を1個の
みとした場合における元のニューロン出力と新たなニュ
ーロン出力との関係を示すと、図31中に破線で示すよ
うな関係となるが、図30に示すように回路51を2個
直列に接続した場合の元のニューロン出力と新たなニュ
ーロン出力との関係は同図中に実線で示すようになる。
また、直列結合の回路数や種類を工夫することにより、
神経細胞ユニット20からの出力値の入力値に対する非
線形の度合を広い範囲で強くも弱くも調整することがで
きる。
For example, the relationship between the original neuron output and the new neuron output when the number of the circuits 51 shown in FIG. 21 is only one is as shown by the broken line in FIG. 31, The relationship between the original neuron output and the new neuron output when two circuits 51 are connected in series as shown in FIG. 30 is shown by the solid line in FIG.
In addition, by devising the number and types of circuits for series coupling,
The degree of non-linearity of the output value from the nerve cell unit 20 with respect to the input value can be adjusted in a wide range, strongly or weakly.

【0102】[0102]

【発明の効果】請求項1記載の発明によれば、パルス列
表現の信号を処理する簡単なデジタル論理構成におい
て、入力信号と結合係数との論理積演算、グループ分け
した論理和演算、これらの論理和演算結果についての論
理演算の結果得られる信号を、そのまま出力させずに、
パルス密度変更手段によりパルス密度を変更して出力さ
せるようにしたので、フォワードプロセスでの出力信号
パルス密度を、入力信号パルス密度に対して非線形に変
化させ得るものとなり、非線形性の高い系、入力データ
に時間依存性を持たせたい場合や、入力信号値が細かく
量子化されているような場合にも対応可能となり、ネッ
トワークを構築した場合の柔軟性・汎用性を高めること
ができる。
According to the invention described in claim 1, in a simple digital logic configuration for processing a signal of a pulse train representation, a logical product operation of an input signal and a coupling coefficient, a grouped logical sum operation, and these logics Without outputting the signal obtained as a result of the logical operation of the sum operation result as it is,
Since the pulse density is changed and output by the pulse density changing means, the output signal pulse density in the forward process can be changed non-linearly with respect to the input signal pulse density. It becomes possible to deal with the case where data is required to have time dependency or the case where the input signal value is finely quantized, and the flexibility and versatility in the case of constructing a network can be enhanced.

【0103】請求項2ないし12記載の発明によれば、
このようなパルス密度変更手段をカウンタ等を用いて構
成することが具体的に示されており、確実な動作を確保
できる。
According to the invention described in claims 2 to 12,
It is specifically shown that such a pulse density changing means is configured by using a counter or the like, and reliable operation can be secured.

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

【図1】本発明の一実施例を示す論理回路図である。FIG. 1 is a logic circuit diagram showing an embodiment of the present invention.

【図2】論理回路図である。FIG. 2 is a logic circuit diagram.

【図3】ネットワーク構成例を示す模式図である。FIG. 3 is a schematic diagram showing a network configuration example.

【図4】論理演算例を示すタイミングチャートである。FIG. 4 is a timing chart showing an example of logical operation.

【図5】論理演算例を示すタイミングチャートである。FIG. 5 is a timing chart showing an example of logical operation.

【図6】論理演算例を示すタイミングチャートである。FIG. 6 is a timing chart showing an example of logical operation.

【図7】論理演算例を示すタイミングチャートである。FIG. 7 is a timing chart showing an example of logical operation.

【図8】論理演算例を示すタイミングチャートである。FIG. 8 is a timing chart showing an example of logical operation.

【図9】論理演算例を示すタイミングチャートである。FIG. 9 is a timing chart showing an example of logical operation.

【図10】論理演算例を示すタイミングチャートであ
る。
FIG. 10 is a timing chart showing an example of logical operation.

【図11】論理演算例を示すタイミングチャートであ
る。
FIG. 11 is a timing chart showing an example of logical operation.

【図12】論理演算例を示すタイミングチャートであ
る。
FIG. 12 is a timing chart showing an example of logical operation.

【図13】論理演算例を示すタイミングチャートであ
る。
FIG. 13 is a timing chart showing an example of logical operation.

【図14】論理演算例を示すタイミングチャートであ
る。
FIG. 14 is a timing chart showing an example of logical operation.

【図15】論理演算例を示すタイミングチャートであ
る。
FIG. 15 is a timing chart showing an example of logical operation.

【図16】論理演算例を示すタイミングチャートであ
る。
FIG. 16 is a timing chart showing an example of logical operation.

【図17】論理演算例を示すタイミングチャートであ
る。
FIG. 17 is a timing chart showing an example of logical operation.

【図18】論理演算例を示すタイミングチャートであ
る。
FIG. 18 is a timing chart showing an example of logical operation.

【図19】論理演算例を示すタイミングチャートであ
る。
FIG. 19 is a timing chart showing an example of logical operation.

【図20】各部の構成例を示す論理回路図である。FIG. 20 is a logic circuit diagram showing a configuration example of each unit.

【図21】各部の構成例を示す回路図である。FIG. 21 is a circuit diagram showing a configuration example of each unit.

【図22】その配設箇所を示す模式図である。FIG. 22 is a schematic view showing the location of the arrangement.

【図23】乱数発生のためのLFSR方式を示すブロッ
ク図である。
FIG. 23 is a block diagram showing an LFSR method for random number generation.

【図24】図22に示した回路の有無に対応させた特性
図である。
FIG. 24 is a characteristic diagram corresponding to the presence or absence of the circuit shown in FIG. 22.

【図25】入力値‐出力値特性図である。FIG. 25 is an input value-output value characteristic diagram.

【図26】変形例を示す回路図である。FIG. 26 is a circuit diagram showing a modified example.

【図27】別の変形例を示す回路図である。FIG. 27 is a circuit diagram showing another modification.

【図28】さらに別の変形例を示す回路図である。FIG. 28 is a circuit diagram showing still another modification.

【図29】さらに別の変形例を示す回路図である。FIG. 29 is a circuit diagram showing still another modification.

【図30】直列接続例を示す回路図である。FIG. 30 is a circuit diagram showing an example of serial connection.

【図31】接続回路数に対応させて特性図である。FIG. 31 is a characteristic diagram corresponding to the number of connection circuits.

【図32】従来例を示す1つのユニット構成を示す概念
図である。
FIG. 32 is a conceptual diagram showing one unit configuration showing a conventional example.

【図33】そのニューラルネットワーク構成の概念図で
ある。
FIG. 33 is a conceptual diagram of the neural network configuration.

【図34】シグモイド関数を示すグラフである。FIG. 34 is a graph showing a sigmoid function.

【図35】1つのユニットの具体的構成を示す回路図で
ある。
FIG. 35 is a circuit diagram showing a specific configuration of one unit.

【図36】デジタル構成例を示すブロック図である。FIG. 36 is a block diagram showing a digital configuration example.

【図37】その一部の回路図である。FIG. 37 is a circuit diagram of a part thereof.

【図38】異なる一部の回路図である。FIG. 38 is a different part of the circuit diagram.

【図39】提案されたパルス密度型ニューラルネットワ
ークのニューロンユニットを示す模式図である。
FIG. 39 is a schematic diagram showing a neuron unit of a proposed pulse density neural network.

【図40】その信号ビット処理例を示す模式図である。FIG. 40 is a schematic diagram showing an example of signal bit processing.

【図41】線形関係を説明するための説明図である。FIG. 41 is an explanatory diagram for explaining a linear relationship.

【図42】その線形特性図である。FIG. 42 is a linear characteristic diagram thereof.

【符号の説明】[Explanation of symbols]

20 信号処理手段 27 論理積演算手段 32 グループ分け手段 33 論理和演算手段 34 論理演算手段 45 結合係数可変手段 46 カウンタ 47 信号発生手段 48 別の論理積演算手段 52 カウンタ 53 乱数発生手段 54 比較手段 55 別の論理和演算手段 20 signal processing means 27 logical product calculating means 32 grouping means 33 logical sum calculating means 34 logical calculating means 45 coupling coefficient changing means 46 counter 47 signal generating means 48 different logical product calculating means 52 counter 53 random number generating means 54 comparing means 55 Alternative OR operation means

───────────────────────────────────────────────────── フロントページの続き (72)発明者 三船 博庸 東京都大田区中馬込1丁目3番6号 株式 会社リコー内 (72)発明者 鈴木 伸一 東京都大田区中馬込1丁目3番6号 株式 会社リコー内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Hironori Mifune Inoue 1-3-6 Nakamagome, Ota-ku, Tokyo Inside Ricoh Co., Ltd. (72) Shinichi Suzuki 1-3-3 Nakamagome, Ota-ku, Tokyo Stock company Ricoh

Claims (12)

【特許請求の範囲】[Claims] 【請求項1】 パルス列で表現された入力信号とパルス
列で表現された結合係数との論理積を演算する論理積演
算手段と、この論理積演算手段による演算結果を複数の
グループに分けるグループ分け手段と、各々のグループ
内で前記演算結果の論理和を演算する論理和演算手段
と、これらの論理和演算手段の演算結果に対して論理演
算を施す論理演算手段と、この論理演算手段から出力さ
れるパルス列に対してそのパルス密度を変更するパルス
密度変更手段と、パルス密度で表現された誤差信号に基
づき前記結合係数を変化させる結合係数可変手段とを有
する信号処理手段を設けたことを特徴とする信号処理装
置。
1. A logical product calculating means for calculating a logical product of an input signal expressed by a pulse train and a coupling coefficient expressed by a pulse train, and a grouping means for dividing a calculation result by the logical product calculating means into a plurality of groups. An OR operation means for calculating the OR of the operation results in each group, a logic operation means for performing a logic operation on the operation results of these OR operation means, and an output from the logic operation means. A signal processing means having pulse density changing means for changing the pulse density of the pulse train, and coupling coefficient changing means for changing the coupling coefficient based on an error signal expressed by the pulse density. Signal processing device.
【請求項2】 パルス密度変更手段が、論理演算手段の
演算結果を計数するカウンタと、このカウンタの計数結
果に応じた確率のパルス列で表現された信号を発生させ
る信号発生手段と、この信号発生手段による発生信号と
前記論理演算手段の演算結果との論理積を演算する論理
積演算手段とよりなることを特徴とする請求項1記載の
信号処理装置。
2. A pulse density changing means, a counter for counting the operation result of the logical operation means, a signal generating means for generating a signal represented by a pulse train having a probability corresponding to the counting result of the counter, and the signal generating means. 2. The signal processing apparatus according to claim 1, further comprising: a logical product calculating means for calculating a logical product of a signal generated by the means and a calculation result of the logical calculating means.
【請求項3】 パルス密度変更手段が、論理演算手段の
演算結果を計数するアップダウンカウンタと、このアッ
プダウンカウンタの計数結果に応じた確率のパルス列で
表現された信号を発生させる信号発生手段と、この信号
発生手段による発生信号と前記論理演算手段の演算結果
との論理積を演算する論理積演算手段とよりなることを
特徴とする請求項1記載の信号処理装置。
3. A pulse density changing means, an up-down counter for counting the operation result of the logical operation means, and a signal generating means for generating a signal represented by a pulse train having a probability corresponding to the count result of the up-down counter. 2. The signal processing apparatus according to claim 1, further comprising: a logical product calculating means for calculating a logical product of a signal generated by the signal generating means and a calculation result of the logical calculating means.
【請求項4】 パルス密度変更手段が、論理演算手段の
演算結果を計数するカウンタと、このカウンタの計数結
果に応じた確率のパルス列で表現された信号を発生させ
る信号発生手段と、この信号発生手段による発生信号と
前記論理演算手段の演算結果との論理和を演算する論理
和演算手段とよりなることを特徴とする請求項1記載の
信号処理装置。
4. A pulse density changing means, a counter for counting the operation result of the logical operation means, a signal generating means for generating a signal represented by a pulse train having a probability corresponding to the counting result of the counter, and the signal generating means. 2. The signal processing device according to claim 1, further comprising: a logical sum calculating means for calculating a logical sum of a signal generated by the means and a calculation result of the logical calculating means.
【請求項5】 パルス密度変更手段が、論理演算手段の
演算結果を計数するアップダウンカウンタと、このアッ
プダウンカウンタの計数結果に応じた確率のパルス列で
表現された信号を発生させる信号発生手段と、この信号
発生手段による発生信号と前記論理演算手段の演算結果
との論理和を演算する論理和演算手段とよりなることを
特徴とする請求項1記載の信号処理装置。
5. The pulse density changing means includes an up / down counter for counting the calculation result of the logical operation means, and a signal generating means for generating a signal represented by a pulse train having a probability corresponding to the count result of the up / down counter. 2. The signal processing apparatus according to claim 1, further comprising: a logical sum calculating means for calculating a logical sum of a signal generated by the signal generating means and a calculation result of the logical calculating means.
【請求項6】 パルス密度変更手段が、論理演算手段の
演算結果を計数するカウンタと、このカウンタの計数結
果に応じた確率のパルス列で表現された信号を発生させ
る信号発生手段と、この信号発生手段による発生信号と
前記論理演算手段の演算結果との論理演算を行なう別の
論理演算手段とよりなることを特徴とする請求項1記載
の信号処理装置。
6. A pulse density changing means, a counter for counting the operation result of the logical operation means, a signal generating means for generating a signal represented by a pulse train having a probability corresponding to the counting result of the counter, and the signal generating means. 2. The signal processing device according to claim 1, further comprising another logical operation means for performing a logical operation of the signal generated by the means and the operation result of the logical operation means.
【請求項7】 パルス密度変更手段が、論理演算手段の
演算結果を計数するアップダウンカウンタと、このアッ
プダウンカウンタの計数結果に応じた確率のパルス列で
表現された信号を発生させる信号発生手段と、この信号
発生手段による発生信号と前記論理演算手段の演算結果
との論理演算を行なう別の論理演算手段とよりなること
を特徴とする請求項1記載の信号処理装置。
7. The pulse density changing means includes an up / down counter for counting the operation result of the logical operation means, and a signal generating means for generating a signal represented by a pulse train having a probability corresponding to the count result of the up / down counter. 2. The signal processing apparatus according to claim 1, further comprising another logical operation means for performing a logical operation between the signal generated by the signal generating means and the operation result of the logical operation means.
【請求項8】 パルス密度変更手段が、出力信号中の2
値の内の特定の値である情報単位の数を計数するカウン
タと、計数手段による計数結果を加算する加算手段と、
整数値又は実数値をランダムに生成する乱数発生手段
と、前記加算手段による加算結果と前記乱数発生手段に
より生成された乱数値とを比較して比較結果に応じて2
値の内の特定の値である情報単位を出力する比較手段
と、前記出力信号中の情報単位と前記比較手段からの出
力信号中の情報単位との論理和を演算して新たな出力信
号とする論理和演算手段とよりなることを特徴とする請
求項1記載の信号処理装置。
8. The pulse density changing means has a function of adding 2 to the output signal.
A counter for counting the number of information units, which is a specific value among the values, and an adding means for adding the counting result by the counting means,
Random number generating means for randomly generating an integer value or a real number is compared with the addition result by the adding means and the random number value generated by the random number generating means, and 2 is obtained according to the comparison result.
Comparing means for outputting an information unit which is a specific value among the values, and a new output signal by calculating the logical sum of the information unit in the output signal and the information unit in the output signal from the comparing means. 2. The signal processing device according to claim 1, further comprising: a logical sum calculating means.
【請求項9】 パルス密度変更手段が、出力信号中の2
値の内の特定の値である情報単位の数を計数するカウン
タと、整数値又は実数値をランダムに生成する乱数発生
手段と、前記計数手段による計数結果と前記乱数発生手
段により生成された乱数値とを比較して比較結果に応じ
て2値の内の特定の値である情報単位を出力する比較手
段と、前記出力信号中の情報単位と前記比較手段からの
出力信号中の情報単位とがともに2値の内の特定の値を
とる時には以後その特定の値である情報単位を前記比較
手段が出力する確率を高める確率向上手段と、前記出力
信号中の情報単位と前記比較手段からの出力信号中の情
報単位との論理和を演算して新たな出力信号とする論理
和演算手段とよりなることを特徴とする請求項1記載の
信号処理装置。
9. The pulse density changing means is a means for changing the pulse density of 2 in the output signal.
A counter that counts the number of information units that are specific values among the values, a random number generation unit that randomly generates an integer value or a real value, a counting result by the counting unit, and a random number generated by the random number generation unit. Comparing means for comparing a numerical value and outputting an information unit which is a specific value out of two values according to the comparison result, an information unit in the output signal and an information unit in the output signal from the comparing means. When both take a specific value out of two values, the probability improving means for increasing the probability that the comparing means outputs the information unit having the specific value thereafter, and the information unit in the output signal and the comparing means. 2. The signal processing device according to claim 1, further comprising a logical sum calculating means for calculating a logical sum of the information unit in the output signal and a new output signal.
【請求項10】 パルス密度変更手段が、出力信号中の
2値の内の特定の値である情報単位の数を計数するカウ
ンタと、整数値又は実数値をランダムに生成する乱数発
生手段と、前記計数手段による計数結果と前記乱数発生
手段により生成された乱数値とを比較して比較結果に応
じて2値の内の特定の値である情報単位を出力する比較
手段と、この比較手段からの出力信号中の情報単位が2
値の内の特定の値をとる時には前記計数手段による計数
結果を減らす手段と、前記出力信号中の情報単位と前記
比較手段からの出力信号中の情報単位との論理和を演算
して新たな出力信号とする論理和演算手段とよりなるこ
とを特徴とする請求項1記載の信号処理装置。
10. The pulse density changing means includes a counter for counting the number of information units, which is a specific value out of two values in the output signal, and a random number generating means for randomly generating an integer value or a real value. Comparing means for comparing the counting result by the counting means and the random number value generated by the random number generating means, and outputting an information unit which is a specific value of two values according to the comparison result, and the comparing means. The information unit in the output signal is 2
When taking a specific value among the values, means for reducing the counting result by the counting means, and a logical sum of the information unit in the output signal and the information unit in the output signal from the comparing means are calculated to obtain a new value. 2. The signal processing device according to claim 1, further comprising a logical sum operation means for outputting an output signal.
【請求項11】 パルス密度変更手段が、出力信号中の
2値の内の特定の値である情報単位の数を計数するカウ
ンタと、整数値又は実数値をランダムに生成する乱数発
生手段と、前記計数手段による計数結果と前記乱数発生
手段により生成された乱数値とを比較して比較結果に応
じて2値の内の特定の値である情報単位を出力する比較
手段と、この比較手段からの出力信号中の情報単位が2
値の内の特定の値をとり前記出力信号中の情報単位が2
値の内の特定の値をとらない時には前記計数手段による
計数結果を減らす手段と、前記出力信号中の情報単位と
前記比較手段からの出力信号中の情報単位との論理和を
演算して新たな出力信号とする論理和演算手段とよりな
ることを特徴とする請求項1記載の信号処理装置。
11. The pulse density changing means includes a counter that counts the number of information units that are specific values of two values in the output signal, and a random number generating means that randomly generates an integer value or a real value. Comparing means for comparing the counting result by the counting means and the random number value generated by the random number generating means, and outputting an information unit which is a specific value of two values according to the comparison result, and the comparing means. The information unit in the output signal is 2
The information unit in the output signal has a value of 2
When a specific value out of the values is not taken, means for reducing the counting result by the counting means, and the logical sum of the information unit in the output signal and the information unit in the output signal from the comparison means are calculated and newly calculated. 2. The signal processing apparatus according to claim 1, further comprising: a logical sum operation means for producing a different output signal.
【請求項12】 出力信号中に2値の内の特定の値であ
る情報単位を増やす手段を複数個連結したことを特徴と
する請求項8,9,10又は11記載の信号処理装置。
12. The signal processing device according to claim 8, wherein a plurality of means for increasing the information unit which is a specific value of the two values in the output signal are connected.
JP19942892A 1991-11-15 1992-07-27 Signal processing device Expired - Fee Related JP3338713B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19942892A JP3338713B2 (en) 1991-11-15 1992-07-27 Signal processing device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP3-300352 1991-11-15
JP30035291 1991-11-15
JP19942892A JP3338713B2 (en) 1991-11-15 1992-07-27 Signal processing device

Publications (2)

Publication Number Publication Date
JPH05197706A true JPH05197706A (en) 1993-08-06
JP3338713B2 JP3338713B2 (en) 2002-10-28

Family

ID=26511528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19942892A Expired - Fee Related JP3338713B2 (en) 1991-11-15 1992-07-27 Signal processing device

Country Status (1)

Country Link
JP (1) JP3338713B2 (en)

Also Published As

Publication number Publication date
JP3338713B2 (en) 2002-10-28

Similar Documents

Publication Publication Date Title
JP3582737B2 (en) Signal processing device
US5485548A (en) Signal processing apparatus using a hierarchical neural network
JPH05165987A (en) Signal processor
JP3338713B2 (en) Signal processing device
JP3256553B2 (en) Learning method of signal processing device
JPH05108594A (en) Signal processor
JPH05108598A (en) Signal processor
JPH05108597A (en) Signal processor
JP3253613B2 (en) Signal processing device
JPH05135001A (en) Signal processor
JPH05108599A (en) Signal processor
JPH05307624A (en) Signal processor
JPH05290014A (en) Signal processor
JP2612640B2 (en) Signal processing circuit, signal processing network, signal processing device, and signal processing method
JPH0581229A (en) Signal processing circuit network
JP3255425B2 (en) Signal processing method
JP3463890B2 (en) Neural circuit mimic element
JPH05298276A (en) Signal processor
RU104349U1 (en) FINANCIAL TIME SERIES FORECASTING SYSTEM
JP3130913B2 (en) Signal processing device
JPH05210650A (en) Signal processor
JPH0567066A (en) Learning method and signal processor for neural network
JPH03268080A (en) Signal processor
JPH05165989A (en) Signal processor
JPH04148389A (en) Method and device for signal processing

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080809

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees