JPH02292684A - Picture recognizing system - Google Patents

Picture recognizing system

Info

Publication number
JPH02292684A
JPH02292684A JP1112819A JP11281989A JPH02292684A JP H02292684 A JPH02292684 A JP H02292684A JP 1112819 A JP1112819 A JP 1112819A JP 11281989 A JP11281989 A JP 11281989A JP H02292684 A JPH02292684 A JP H02292684A
Authority
JP
Japan
Prior art keywords
data
neuron
output
layer
neural
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.)
Pending
Application number
JP1112819A
Other languages
Japanese (ja)
Inventor
Koji Matsumoto
幸治 松本
Ryohei Kumagai
熊谷 良平
Sunao Takatori
直 高取
Makoto Yamamoto
誠 山本
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.)
TAKAYAMA KK
Original Assignee
TAKAYAMA KK
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 TAKAYAMA KK filed Critical TAKAYAMA KK
Priority to JP1112819A priority Critical patent/JPH02292684A/en
Priority to DE69031621T priority patent/DE69031621T2/en
Priority to PCT/JP1990/000535 priority patent/WO1990013874A1/en
Priority to AT90906368T priority patent/ATE159601T1/en
Priority to EP90906368A priority patent/EP0457909B1/en
Publication of JPH02292684A publication Critical patent/JPH02292684A/en
Priority to US08/461,538 priority patent/US5553196A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To realize the processing of various kinds of feature quantities, and to improve a recognition rate by providing the neural layer of layer construction to meet the degree of abstractness of extracted data obtained from a picture processing part, and recognizing a picture according to the extracted data. CONSTITUTION:The picture inputted from an input part 200 is inputted to the picture processing part 300, and the processing part 300 processes the inputted picture, and extracts a number of groups, a number of holes, an Eulerian number, and texture feature quantity, and sends them to a recognizing part 100. The recognizing part 100 is constituted of a neural network to recognize a graphic according to the extracted data, and is provided with a data group 10 and the neural layers 20, 90. The data of low order among the extracted data is inputted to the neurons 21 to 23 of the layer 20, and besides, the data of high order is inputted to the neurons 91 to 93 of the layer 90, and they are processed. Thus, because the recognizing part 100 is of the layer construction to meet the degree of abstractness of the data and of data input configuration, various kinds of the feature quantities can be processed, and the recognition rate can be improved.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は画像認識システムに関する。[Detailed description of the invention] [Industrial application field] The present invention relates to an image recognition system.

〔従来の技術〕[Conventional technology]

従来、画像情報を認識する方法として、単純な記号の認
識に関しては、図形の膨張、収縮、細線化等の前処理の
後に所定の大きさの領域内の黒、白の領域の位置、大き
さ、相互の関係等をコード化し、登録データと比較する
方法があった。また文字の認識に関しては、座標角度分
布、最終点リスト、反射線分等の特徴を抽出し、これら
の特徴と登録データの特徴とを比較する方法があった。
Conventionally, as a method for recognizing image information, for simple symbol recognition, the position and size of black and white areas within a predetermined size area are calculated after preprocessing such as expansion, contraction, and thinning of the figure. There was a method of coding mutual relationships and comparing them with registered data. Regarding character recognition, there is a method of extracting features such as coordinate angle distribution, final point list, and reflected line segments, and comparing these features with the features of registered data.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

前者の方法では、複雑な図形、文字等の認識は入力デー
タの種類が膨大なため困難である。また後者においては
、文字の特徴と登録データの特徴と間のマッチング時に
おける許容量をあらかじめ定めなければならず、そのた
めには膨大なサンプリングデータの統計的処理が必要で
あり、またサンプリングデータ以外の手書文字の認識を
行うことは困難である。しかも一般に、手書文字の特徴
は多種多様であり、同一の文字の特徴の個人差も大きい
In the former method, it is difficult to recognize complex figures, characters, etc. because the types of input data are enormous. In addition, in the latter case, it is necessary to predetermine the allowable amount for matching between character features and registered data features, which requires statistical processing of a huge amount of sampling data, and It is difficult to recognize handwritten characters. Moreover, in general, handwritten characters have a wide variety of characteristics, and the characteristics of the same character vary greatly among individuals.

本発明はこのような従来の問題点を解消すべく創案され
たもので、多様な特mlの処理が可能であり、かつ認識
率を高め得る画像認識システムを提供することを目的と
する。
The present invention was devised to solve these conventional problems, and an object of the present invention is to provide an image recognition system that is capable of processing a variety of special MLs and that can increase the recognition rate.

〔課題を解決するための手段〕[Means to solve the problem]

本発明に係る画像認識システムは、画像を入力する入力
部と、人力された画像を処理しかつ特徴を抽出する画像
処理部と、入力されたデータに所定の重みを乗じたもの
の総和と閾値との比較結果に応じたデータを出力するニ
ューロンが並列的に設けられるとともに、上記画像処理
部から得られた抽出データの抽象度に応じた層構造のニ
ューラルレイヤを有し、その抽出データに基づいて画像
認識を行う認識部とを備え、いわゆるニューラルネント
ワークにより主要な認識の処理を行うものである。
The image recognition system according to the present invention includes an input unit that inputs an image, an image processing unit that processes the manually generated image and extracts features, and a threshold value and the sum of input data multiplied by a predetermined weight. Neurons are provided in parallel that output data according to the comparison results of It is equipped with a recognition section that performs image recognition, and performs the main recognition processing using a so-called neural network.

〔作用〕[Effect]

画像処理部により得られた入力画像の特徴を示す抽出デ
ータは、認識部のニューラルレイヤのニューロンに人力
され、これにより画像認識が行われる。すなわち画像認
識は、画像の特徴データをニューラルネットワークによ
り処理することにより行われるので、このニューラルネ
ットワークの学習機能および連想機能により画像認識率
が高められる。
Extracted data indicating the characteristics of the input image obtained by the image processing section is input to neurons of the neural layer of the recognition section, thereby performing image recognition. That is, since image recognition is performed by processing image feature data using a neural network, the image recognition rate is increased by the learning function and associative function of this neural network.

〔実施例〕〔Example〕

以下図示実施例に基づいて本発明を説明する。 The present invention will be explained below based on illustrated embodiments.

第1図において画像認識システムは画像入力部200と
、画像処理部300と、認識部100とを備え、これら
はシステムバスBを通じて相互に接続されるとともに、
CPtJ500に接続されている。画像入力部200に
はイメージスキャナ等の入力機器とI/Oとを含み、I
/Oには適宜、データ圧縮手段、データ保持のためのメ
モリ等が含まれる。画像処理部300は特徴抽出を行う
処理部310と、画像を保持するフレームメモリ330
とを備え、所望により内部に画像入力部340が設けら
れる。認識部100は、後に詳述するように、画像処理
部300で得られた抽出データに基づいて画像認識を行
うものであり、ニューロンからなる複数層のニエーラル
レイヤが構築され、このニューラルレイヤの出力データ
を記憶するメモリを備える。
In FIG. 1, the image recognition system includes an image input section 200, an image processing section 300, and a recognition section 100, which are interconnected through a system bus B.
Connected to CPtJ500. The image input unit 200 includes an input device such as an image scanner and an I/O.
/O includes data compression means, memory for data retention, etc. as appropriate. The image processing unit 300 includes a processing unit 310 that performs feature extraction and a frame memory 330 that holds images.
If desired, an image input section 340 is provided inside. As will be described in detail later, the recognition unit 100 performs image recognition based on the extracted data obtained by the image processing unit 300, and a neural layer consisting of multiple neurons is constructed, and the output data of this neural layer is It is equipped with a memory for storing.

第2図は画像処理部300における処理部3lOを示す
ものであり、処理部310は、フレームメモリ330か
らマルチブレクサ311を介して選択的に取り込んだデ
ータをローカルバスLBを通じて近傍処理部312に転
送している。近傍処理部312はデータを所定近傍領域
(例えば3×3)単位でデータを保持し、これらのデー
タを並列に演算部320に入力する。演算部320は数
値演算部321および状態演算部325を有し、近傍処
理部312の出力は数値演算部321に人力される。数
値演算部321は、乗算部322、セレクタ323、統
合部324を順次接続してなり、微分その他のオペレー
タ処理や画像間演算は数値演算部321において行われ
る。数値演算は例えば各画素の濃度に乗数を乗じた後に
これを数値的に統合する処理を行うが、同一の画素には
異なる絶対値の乗数が掛けられることはないという発明
者の知見に基づき最前段に乗算部322が配置されてい
る。これによって乗算部のカーネル数は同時処理画素数
に等しい最小値とすることができ、これにともなって後
段のセレクタ323、統合部324のゲート数も減少す
る。したがって数値演算部321は小規模回路で最大限
の機能をもつことができ、処理速度も高速化される。
FIG. 2 shows a processing section 3lO in the image processing section 300. The processing section 310 transfers data selectively fetched from the frame memory 330 via the multiplexer 311 to the neighboring processing section 312 via the local bus LB. ing. The neighborhood processing unit 312 holds data in units of predetermined neighborhood areas (for example, 3×3), and inputs these data in parallel to the calculation unit 320. The calculation section 320 has a numerical calculation section 321 and a state calculation section 325, and the output of the neighborhood processing section 312 is manually input to the numerical calculation section 321. The numerical calculation unit 321 is formed by sequentially connecting a multiplication unit 322, a selector 323, and an integration unit 324, and performs differentiation and other operator processing and inter-image calculations in the numerical calculation unit 321. In numerical calculations, for example, the density of each pixel is multiplied by a multiplier and then integrated numerically, but based on the inventor's knowledge that the same pixel is never multiplied by a multiplier with a different absolute value, A multiplication section 322 is arranged at the front stage. As a result, the number of kernels in the multiplication section can be set to a minimum value equal to the number of simultaneously processed pixels, and the number of gates in the selector 323 and integration section 324 at the subsequent stage is also reduced accordingly. Therefore, the numerical calculation section 321 can have maximum functionality with a small circuit, and the processing speed can be increased.

数値演算部321内のデータは状態演算部325に導か
れ、状態演算部325は、所定近傍領域内の画素に対し
て次のような判断または演算を行う。
The data in the numerical calculation section 321 is led to the state calculation section 325, and the state calculation section 325 performs the following judgment or calculation on pixels within a predetermined neighborhood area.

i)中央画素が処理対象画素であるか否か。i) Whether or not the center pixel is the pixel to be processed.

ii)8近傍に中央画素と異なる濃度の画素が存在する
か否か。
ii) Whether there is a pixel with a density different from that of the central pixel in the 8 neighborhood.

iii)8近傍の各画素が中央画素と同一か否か。iii) Whether each pixel in the 8 neighborhoods is the same as the central pixel.

iv)オイラー数算出のためのTFDEの各個数。iv) Each number of TFDEs for Euler number calculation.

■)所定パターンとの一致度。■) Degree of match with a predetermined pattern.

vi )その他。vi) Others.

このように数値演算とともに状態演算を並列的にしかも
別回路で行うことにより、各回昂の効率化と高速化を図
ることができる。また状態演算部325の出力はそれ自
体が有効な特徴量であり、あるいは特徴量抽出のための
有効なデータである。
In this way, by performing state calculations in parallel with numerical calculations and in separate circuits, it is possible to improve the efficiency and speed of each activation. Further, the output of the state calculation unit 325 is itself a valid feature quantity, or is valid data for extracting a feature quantity.

状態演算部325の出力は変換部313に入力され、さ
らに特徴抽出や、積算、比較などの処理により特徴量が
求められる。
The output of the state calculation unit 325 is input to the conversion unit 313, and feature quantities are further determined by processing such as feature extraction, integration, and comparison.

変換部313はスタティックRAMなどの高速メモリの
出力の分岐にフルアダーなどの軽演算部を接続し、この
軽演算部の出力を高速メモリのデータ入力にフィードバ
ックしてなるものである。
The converter 313 is constructed by connecting a light arithmetic unit such as a full adder to a branch of the output of a high speed memory such as a static RAM, and feeding back the output of this light arithmetic unit to the data input of the high speed memory.

このような構成により、同一データに同一演算を繰返し
施したり、データの積算、データの逐次比較等の複雑な
演算を小規模の回路において高速で行うことができる。
With such a configuration, it is possible to repeatedly perform the same operation on the same data, and to perform complex operations such as data integration and data successive approximation at high speed in a small-scale circuit.

演算部320、変換部313の出力は出力側のローカル
バスLBを通じてフレームメモリ330のいずれかに戻
されている。
The outputs of the calculation section 320 and the conversion section 313 are returned to one of the frame memories 330 via the local bus LB on the output side.

出力側のローカルバスLBには、さらに逐次処理部31
4が接続され、ラベリングや細線化などの逐次処理はこ
の逐次処理部で行われる。逐次処理部314は、ライン
メモリとラッチと論理部を備え、処理対象画素の1つ前
のラスクの処理後濃度を参照しつつ逐次処理を行う。
The local bus LB on the output side further includes a sequential processing unit 31.
4 is connected, and sequential processing such as labeling and thinning is performed in this sequential processing section. The sequential processing unit 314 includes a line memory, a latch, and a logic unit, and performs sequential processing while referring to the post-processing density of the rask immediately before the pixel to be processed.

このような処理部においては、極めて多様な特徴量を高
速でもとめることができ、認識部100に貴重な特徴量
を供給し得る。なおフレームメモリ330としてデュア
ルポートメモリを採用すれば、データの読出し、書き込
みを極めて高速で行い得る。
Such a processing section can obtain extremely diverse feature amounts at high speed, and can supply valuable feature amounts to the recognition section 100. Note that if a dual port memory is employed as the frame memory 330, data can be read and written at extremely high speed.

次に認識部100の構成を第3図に基づいて説明する。Next, the configuration of the recognition unit 100 will be explained based on FIG. 3.

認識部100は、システムバスBを介して、または認識
部100に直接接続された入力系、すなわち画像処理部
300から入力されたデータを処理し、処理結果を最終
出力データとして、データメモリ110に出力する。
The recognition unit 100 processes data input via the system bus B or from an input system directly connected to the recognition unit 100, that is, the image processing unit 300, and stores the processing results in the data memory 110 as final output data. Output.

認識部100にはニューラルネットワークが構築される
。ここでニューラルネットワークについて簡単に説明す
ると、ニューラルネットワークは、第4図に示すニュー
ロンエを、第5図に示すように並列に設けて層状に構成
するとともに、他の層あるいは同じ層のニューロンに接
続して構築される。ニューロンlは相互に接続されてデ
ータの授受を行い、最終段の層のニューロンから最終出
力データが得られる。ニューロンlにおけるデータ処理
において、外部または他のニューロンから入力されるデ
ータDI.、DIE、Dll、・・・DI.にはそれぞ
れ重みW,、W2、W3、・・・W,,が掛けられ、こ
れらの総和と閾値θとが比較される。
A neural network is constructed in the recognition unit 100. To briefly explain neural networks here, a neural network consists of neurons shown in Figure 4 arranged in parallel as shown in Figure 5 in a layered manner, and connected to neurons in other layers or the same layer. It is constructed as follows. Neurons l are interconnected to exchange data, and final output data is obtained from the neurons in the final layer. In data processing in neuron l, data DI. , DIE, Dll, ... DI. are respectively multiplied by weights W,, W2, W3, . . . W, and the sum total thereof is compared with the threshold value θ.

この比較方法としては種々のものが可能であるが、例え
ば、この総和が閾値θ以上の時出力データDOが「1」
となり、またこの総和が閾値θより小さい時出力データ
DOが「0」となるように定められる。すなわち、 oo=r((Σ(W1×旧五)一θ}  (1)であり
、ここでfは正規化関数である。
Various methods are possible for this comparison, but for example, when this sum is greater than or equal to the threshold θ, the output data DO is “1”.
and when this sum is smaller than the threshold value θ, the output data DO is set to be “0”. That is, oo=r((Σ(W1×old five)−θ} (1), where f is a normalization function.

認識部100は、ニューラルネットワークにおける連想
の作用を為す出力データ生成部120を有し、出力デー
タ生成部120においては、各ニューロンについての線
型閾値関数(ΣW,A.−θ)の演算が行われる。出力
データ生成部120の各部はCPU5 0 0によって
制御される。
The recognition unit 100 has an output data generation unit 120 that performs an association function in a neural network, and the output data generation unit 120 calculates a linear threshold function (ΣW, A.-θ) for each neuron. . Each part of the output data generation section 120 is controlled by the CPU 500.

W.A.の乗算は出力データ生成部120における乗算
回路121において実行される。1回毎のW.A.の演
算結果は順次積算回路122に入力され、ΣW,A.の
演算が行われる。積算回路122は、加算回路104に
フリップフロップ105を帰還的に接続してなり、加算
結果を一旦フリップフ口シブ105に保持したのち、次
のW,A,の入力と保持された加算結果とを加算してい
くことにより積算を行う。ΣW,A.の演算結果は閾値
処理部123に入力され、(ΣWiA,−θ)の演算が
行われる。さらに閾値処理部123においては、(ΣW
.A,一θ)の演算結果を正規化する等の処理を行い、
出力データとする。(ΣW.A.一θ)の演算結果はバ
ッファ106を介してデータメモリ110に入力される
W. A. The multiplication is executed in the multiplication circuit 121 in the output data generation section 120. W. A. The calculation results of ΣW, A. calculations are performed. The integration circuit 122 has a flip-flop 105 connected to the addition circuit 104 in a feedback manner, and after temporarily holding the addition result in the flip-flop 105, it connects the next input of W, A, and the held addition result. Integration is performed by adding. ΣW,A. The calculation result is input to the threshold processing unit 123, and the calculation of (ΣWiA, -θ) is performed. Furthermore, in the threshold processing unit 123, (ΣW
.. A, one θ) processing such as normalizing the calculation result,
Use as output data. The calculation result of (ΣW.A.-θ) is input to the data memory 110 via the buffer 106.

乗算回路121には重みのデータと、入力あるいは出力
データとが並列的に入力されるため、2系統の入力ライ
ンを有するが、バッファ106はそのうちの一方の入力
ラインに接続され、この入力ラインは入出力双方向のラ
インとして使用される。バッファ106は、データメモ
リ110から乗算回路121にデータが転送される際に
はハイインピーダンスとなる。
Since weight data and input or output data are input in parallel to the multiplication circuit 121, it has two input lines, and the buffer 106 is connected to one of the input lines. Used as a bidirectional input/output line. The buffer 106 becomes high impedance when data is transferred from the data memory 110 to the multiplication circuit 121.

各ニューラルレイヤのデータは、第1層についてはO次
入カデータおよび第エニューラルレイヤの重みが入力さ
れ、第2層については1次出力データおよび第2ニュー
ラルレイヤの重みが入力される。すなわち第nニューラ
ルレイヤの出力(n次出力データ)は第(n+1)ニュ
ーラルレイヤの人力となる。データメモリエIOにおい
て、重みのデータはシナプス重みエリア111に格納さ
れ、入出力データは入出力データエリア112に格納さ
れる。また閾値処理部123に設定すべき各ニューロン
の閾値は、データメモリ110またはシステムメモリ1
01に格納され、各ニューロンについての演算を開始す
る前に閾値処理部123に転送される。
Regarding the data of each neural layer, the O-order input data and the weight of the neural layer are input for the first layer, and the primary output data and the weight of the second neural layer are input for the second layer. That is, the output of the nth neural layer (nth output data) becomes the human power of the (n+1)th neural layer. In the data memory IO, weight data is stored in a synapse weight area 111, and input/output data is stored in an input/output data area 112. Further, the threshold value of each neuron to be set in the threshold value processing unit 123 is set in the data memory 110 or the system memory 1.
01, and is transferred to the threshold processing unit 123 before starting calculation for each neuron.

実際にニューラルネットワークによって実行される処理
内容は極めて複雑であるが、極めて単純な論理演算が実
行されると仮定して、本発明のニューラルネットワーク
の第1実施例を説明するとともに、本発明の第1の基本
理念を解説する。
Although the processing content actually executed by a neural network is extremely complex, the first embodiment of the neural network of the present invention will be described on the assumption that extremely simple logical operations will be executed, and the first embodiment of the neural network of the present invention will be described. Explain the basic philosophy of 1.

第6図(a)、(b)、(c)は学習の結果、A・ (
B+C)           (2)の論理演算が実
行されるに到ったニューラルネットワークを示すもので
ある。第6図(a)、(b)は比較例を示し、第6図(
C)はニューラルネットワークの第1実施例を示す。
Figure 6 (a), (b), and (c) are the results of learning, A. (
B+C) This shows the neural network that led to the execution of the logical operation in (2). Figures 6(a) and (b) show comparative examples, and Figure 6(a) and (b) show comparative examples.
C) shows a first embodiment of the neural network.

第6図(a)は、初段のニューラルレイヤ2oにデータ
群工0におけるA,B,Cの3データの全ての組合せの
数23=8個のニューロン21〜2日が設けられ、第2
段のニューラルレイヤ3oに初段ニューロン21〜2日
の出力のOR(論理和)を演算する1個のニューロン3
lが設けられた構成を示している。図中、ニューロン2
I〜28の上に付したrooOJなどの数値はデータA
、B,Cよりなるビットパターンを示し、これらのニュ
ーロンはこのビットパターンが入力されるときに出力「
1」を出力する。このニューラルネットワークにおいて
は、ニューロン数が9、シナブス数が32であり、ニュ
ーロンおよびシナブスの効率が極めて低く、所要メモリ
容量が大であるとともに、処理時間も大である。
In FIG. 6(a), the first stage neural layer 2o is provided with neurons 21 to 2, the number of all combinations of the three data A, B, and C in the data group 0, 23=8 neurons 21 to 2.
In the neural layer 3o of the first stage, there is one neuron 3 that calculates the OR (logical sum) of the outputs of the first stage neurons 21 to 2.
1 shows a configuration in which 1 is provided. In the figure, neuron 2
The numbers such as rooOJ attached above I~28 are data A.
, B, C, and these neurons output " when this bit pattern is input.
1" is output. In this neural network, the number of neurons is 9 and the number of synapses is 32, the efficiency of neurons and synapses is extremely low, the required memory capacity is large, and the processing time is also large.

第6図(b)は(2)式を以下のように展開し、A−B
   +  A−C             (3)
演算の単純化を図った例であり、初段ニューラルレイヤ
20は、A−Bの演算を処理するためのニューロン21
、A−Cの演算を処理するためのニューロン22を備え
る。第2段のニューラルレイヤ30はニューロン2l、
22の出力のORを求めるニューロン31を有する。
Figure 6(b) expands equation (2) as follows, and A-B
+ A-C (3)
This is an example in which calculations are simplified, and the first neural layer 20 includes neurons 21 for processing the calculations of A-B.
, A-C. The second stage neural layer 30 includes neurons 2l,
It has a neuron 31 that calculates the OR of the outputs of 22.

ニューロン21においては、データA,B,Cに対する
重みW.−W3は、例えばW1=1、W2=1、W3=
0に設定され、 AW,+BW2 +cw,≧2   (4)のときに出
力「1」を出力する。したがってこの場合、閾値θ=2
とされる。同様に、ニューロン22では、Wa =1 
− Ws = O、W6=1,  θ=2となる。一方
ニューロン31では、W,=1、W8=1、θ=1とな
る。
In the neuron 21, weights W. -W3 is, for example, W1=1, W2=1, W3=
It is set to 0, and outputs "1" when AW, +BW2 +cw, ≧2 (4). Therefore, in this case, the threshold θ=2
It is said that Similarly, in neuron 22, Wa =1
- Ws = O, W6 = 1, θ = 2. On the other hand, in the neuron 31, W,=1, W8=1, and θ=1.

第6図(b)のニューラルネットワークにおいて、ニュ
ーロン数は3、シナプス数は8であり、第6図(a)の
ニューラルネットワークに比較すれば、大幅にニューロ
ン効率、シナプス効率が向上している。しかし、次に述
べるように本発明によれば、さらにこれらの効率が向上
する。
In the neural network of FIG. 6(b), the number of neurons is 3 and the number of synapses is 8, and when compared with the neural network of FIG. 6(a), the neuron efficiency and synaptic efficiency are significantly improved. However, as described below, according to the present invention, these efficiencies are further improved.

第6図(C)は本発明のニューラルネットワークの第1
実施例を示すもので、この構成は、初段ニューラルレイ
ヤ20および第2段ニューラルレイヤ30を存し、初段
ニューラルレイヤ20には、データB,Cのみが入力さ
れ、そして第2段ニューラルレイヤ30には、データA
が直接入力される。初段ニューラルレイヤ20には、(
B+C)の演算を行うための1個のニューロン21が設
けられ、第2段・ニューラルレイヤ30には、A・ (
B十C)の演算を行うための1個のニューロン3lが設
けられる。ニューロン2Iは、例えば重みW1=1、W
g=1、θ=1に設定され、BW,+CW2≧1   
     (5)のとき出力「l」を出力する。一方ニ
ューロン31は、例えば、W3=1、W4 =1、θ=
2に設定され、ニューロン2lの出力をYlとすると、
Y I W 3+ A W < ≧2       (
6)のとき、出力rl」を出力する。この実施例におい
ては、ニューロン数2、シナプス数4であり、第6図(
b)の比較例よりも大幅にニューロン効率、シナプス効
率が向上している。
FIG. 6(C) shows the first neural network of the present invention.
This shows an example, and this configuration includes a first-stage neural layer 20 and a second-stage neural layer 30. Only data B and C are input to the first-stage neural layer 20, and the second-stage neural layer 30 receives only data B and C. is data A
is input directly. The initial neural layer 20 includes (
One neuron 21 is provided to perform the calculation of B+C), and the second stage/neural layer 30 has a
One neuron 3l is provided for performing the calculation of B+C). For example, the neuron 2I has a weight W1=1, W
g=1, θ=1, BW, +CW2≧1
When (5), an output "l" is output. On the other hand, the neuron 31 has, for example, W3=1, W4=1, θ=
2 and the output of neuron 2l is Yl, then
Y I W 3+ A W < ≧2 (
6), the output rl is output. In this example, the number of neurons is 2 and the number of synapses is 4.
Neuron efficiency and synaptic efficiency are significantly improved compared to the comparative example b).

ここで本発明の第1の基本理念を解説する。Here, the first basic idea of the present invention will be explained.

再び(2)式に注目すると、データB,C、は1つの作
用素r+(OR)Jにより結合されており、データAは
、その演算結果に対して作用素「×(AND)Jで結合
されている。したがって本来データB,CとデータAと
は同一次元で評価すべきものではなく、それを敢えて同
一次元で評価しようとすると、第6図(a)、(b)の
比較例のように効率の低下を招来する。
Paying attention to equation (2) again, data B and C are connected by one operator r+(OR)J, and data A is connected by the operator ``×(AND)J'' for the operation result. Therefore, originally, data B, C and data A should not be evaluated in the same dimension, but if you dare to evaluate them in the same dimension, the efficiency will be reduced as shown in the comparative example in Figure 6 (a) and (b). resulting in a decrease in

ここで、ニューロンの処理内容が下記(7)式の評価の
みであると仮定する。
Here, it is assumed that the processing content of the neuron is only the evaluation of the following equation (7).

ΣW,A.−θ          (7)(ただし、
Wi :重み、Ai :入力、θ:閾値)そして、各デ
ータについてその抽象度を定義できると仮定し、その抽
象度を「次数」と呼ぶ。
ΣW,A. −θ (7) (However,
Wi: weight, Ai: input, θ: threshold) Then, it is assumed that the degree of abstraction can be defined for each data, and this degree of abstraction is called "degree."

この次数は、1個のニューロンにおける入力データに対
し、出力データが1次だけ次数が増加すると定義する。
This order is defined as the order of output data increasing by one order with respect to input data in one neuron.

また、1つの作用素により結合されたデータ相互は同一
次数であると定義する。
Further, it is defined that data connected by one operator have the same degree.

このような定義によると、(2)式の場合、データB,
Cは同一次数であり、データAはそれよりも次数が1次
だけ高い。ここでデータB,Cの次数としてrQJを与
えるとすると、データAの次数は「1」である。
According to this definition, in the case of equation (2), data B,
C is of the same order, and data A is one order higher than that. Here, if rQJ is given as the order of data B and C, the order of data A is "1".

このデータの次数とニューラルレイヤの階層との関係を
考えると、第6図(c)において、ニューラルレイヤ2
0にはO次のデータのみが人力され、ニューラルレイヤ
30には1次のデータのみが入力されている。したがっ
て、ニューラルレイヤ20、30を入力データの次数に
対応づけ得ることが明らかであり、以後ニューラルレイ
ヤにも人力データと同一の次数を定義するものとする。
Considering the relationship between the order of this data and the hierarchy of neural layers, in Fig. 6(c), neural layer 2
Only the Oth-order data is manually input to the neural layer 30, and only the first-order data is input to the neural layer 30. Therefore, it is clear that the neural layers 20 and 30 can be associated with the order of input data, and hereinafter the same order as the human data will be defined for the neural layers as well.

そして、ニューラルネットワークに入力すべきデータ群
をその次数に応じて分類し、各次数のデ一夕をそれに対
応した次数のニューラルレイヤに入力することによって
、ニューロン効率、シナプス効率が最適化する。
Then, by classifying the data group to be input into the neural network according to its order, and inputting the data of each order to the neural layer of the corresponding order, neuron efficiency and synaptic efficiency are optimized.

また、第6図(a)、(b)に関連して説明したように
、高次のデータを低次数化して処理することも可能であ
り、この場合にはニューロン効率、シナプス効率が低下
する。したがって各データの次数は、そのデータがとり
得る最も高い次数を基準とすべきである。
Furthermore, as explained in relation to FIGS. 6(a) and (b), it is also possible to process high-order data by reducing it to a lower order, and in this case, neuron efficiency and synaptic efficiency decrease. . Therefore, the degree of each data should be based on the highest possible degree of that data.

なお、(A十B)  ・Bのように1つのデータが複数
の次数にわたって使用されることもあり、この場合、1
つのデータを複数のニューラルレイヤに入力するように
してもよい。
Note that one data may be used for multiple orders, such as (A0B)/B, and in this case, 1
One piece of data may be input to multiple neural layers.

次数の本来の意味である抽象度をより分かり易く説明す
る例として、第7図(a)〜(C)に、図形の端点を判
断するニューラルネットワークを示す。
As an example to more clearly explain the degree of abstraction, which is the original meaning of the degree, FIGS. 7(a) to (C) show neural networks for determining the end points of a figure.

図形の端点のとらえ方は種々考えられるが、ここでは、
3×3コンポリューション(第7図(a))において、
第7図( b ) (i) 〜(viii’)のいずれ
かのパターンが生じたときに、中央画素(第7図(a)
の画素E)は端点てあるとする。この端点の判断は中央
画素以外の画素A−D,F〜■のいずれか1つが図形濃
度(例えば「1」)であり、かつ中央画素Eが図形濃度
であるときに「端点」、それ以外のときに「端点てない
」とする。
There are various ways to consider the end points of a figure, but here,
In the 3×3 convolution (Figure 7(a)),
When any of the patterns shown in Fig. 7(b) (i) to (viii') occurs, the central pixel (Fig. 7(a)
It is assumed that pixel E) is an end point. This end point is judged as an "end point" when any one of the pixels A-D, F to ■ other than the center pixel has a figure density (for example, "1"), and the center pixel E has a figure density; ``There is no end point'' when .

この判断のためのニューラルネットワークは、例えば第
7図(C)のように構成され、この図はニューラルネッ
トワークの第2実施例を示す。このニューラルネットワ
ークは、8個のニューロン21〜28を有する初段ニュ
ーラルレイヤ20、および1個のニューロン31を有す
る第2段ニューラルレイヤ30を有し、画素A−D,F
−1のデータが初段ニューラルレイヤ20に、画素Eの
データが第2段ニューラルレイヤ30に入力されている
A neural network for this determination is configured, for example, as shown in FIG. 7(C), and this figure shows a second embodiment of the neural network. This neural network has a first stage neural layer 20 having eight neurons 21 to 28 and a second stage neural layer 30 having one neuron 31, and has pixels A-D, F.
-1 data is input to the first stage neural layer 20, and data of pixel E is input to the second stage neural layer 30.

初段ニューラルレイヤのニューロン21〜28はそれぞ
れ八のみ、Bのみ、Cのみ・・・が図形画素「1」であ
ることを判別し、第2段ニューラルレイヤ30のニュー
ロン31は、ニューロン21〜28のいずれかが「IJ
を出力し、かつEが図形画素「1」であるときに出力「
1」を出力する。
The neurons 21 to 28 of the first stage neural layer respectively determine that only 8, only B, only C, etc. are figure pixels "1", and the neuron 31 of the second stage neural layer 30 determines that each of the neurons 21 to 28 Either “IJ
is output, and when E is the figure pixel "1", the output is "
1" is output.

ここで各画素データA−D,F−1をO次データと考え
ると、ニューロン31の出力は2次データとなる。した
がって各画素のデータや種々の特徴量が入力データであ
るときには、各画素のデータを0次データと考えた場合
、端点データは2次データとして取扱い得ることが分か
る。画像処理部300からは、グループ数、大数、オイ
ラー数、テクスチャ特f′ll.ffi等種々のデータ
が出力されるが、これらデータの次数を考慮し最適なニ
ューラルレイヤに直接入力すべきである。
Here, if each pixel data A-D, F-1 is considered as O-order data, the output of the neuron 31 becomes secondary data. Therefore, when the data of each pixel and various feature quantities are input data, it can be seen that if the data of each pixel is considered as zero-order data, the end point data can be handled as secondary data. The image processing unit 300 outputs the number of groups, large numbers, Euler numbers, texture characteristics f'll. Various data such as ffi are output, but the order of these data should be taken into account and directly input to the optimal neural layer.

第8図(a)はニューラルネットワークの第3実施例を
示し、この実施例においてニューラルネットワークは、
データ群10とニューラルレイヤ20、90とを有し、
レイヤ90は出力データを外部に出力する出力レイヤと
なっている。
FIG. 8(a) shows a third embodiment of the neural network, and in this embodiment, the neural network:
It has a data group 10 and neural layers 20 and 90,
Layer 90 is an output layer that outputs output data to the outside.

データ群lOは、第1グループのデータl1、l2、l
3・・・と、第2グループのデータl4、15、l6・
・・とからなる。すなわちデータ群10のデータは、そ
の次数に応じて第1および第2グループの2種類に分類
されている。
The data group lO is the first group of data l1, l2, l
3... and the second group of data l4, 15, l6.
Consists of... That is, the data of the data group 10 is classified into two types, a first group and a second group, according to their order.

ニューラルレイヤ20はニューロン21、22、23・
・・を有し、また出力レイヤ90はニューロン91、9
2、93・・・を有する。ニューラルレイヤ20の各ニ
ューロンは出力レイヤ90の各ニューロンに接続される
。第1グループのデータl1、12、l3・・・はニュ
ーラルレイヤ20の各二二一ロンにそれぞれ入力され、
第2グループのデータl4、15、16・・・は出力レ
イヤ90の各ニューロンにそれぞれ入力される。
The neural layer 20 includes neurons 21, 22, 23,
..., and the output layer 90 has neurons 91, 9
It has 2,93... Each neuron of neural layer 20 is connected to each neuron of output layer 90. The first group of data l1, 12, l3... is input to each 221ron of the neural layer 20,
The second group of data l4, 15, 16, . . . is input to each neuron of the output layer 90, respectively.

ニューラルレイヤ20の各ニューロンは、例えば上記(
1)弐に示されるように、人力された各データに重みを
乗じたものの総和と閾値とを比較し、この比較結果に応
じて、出力データ「1」または「0」を出力する。出力
レイヤ90の各ニューロンは、ニューラルレイヤ20の
各ニューロンおよび第2グループのデータ14、15、
16・・・にそれぞれ重みを乗じたものの総和を求め、
この総和と閾値との比較結果に応じて、ニューラルレイ
ヤ20のニューロンと同様に「l」または「0」のデー
タを出力する。
Each neuron of the neural layer 20 is configured, for example, as described above (
1) As shown in Figure 2, the total sum of each manually inputted data multiplied by a weight is compared with a threshold value, and output data ``1'' or ``0'' is output depending on the comparison result. Each neuron in the output layer 90 has the same information as each neuron in the neural layer 20 and the second group of data 14, 15,
Find the sum of 16... multiplied by their respective weights,
Depending on the comparison result between this sum and the threshold value, data of "l" or "0" is outputted similarly to the neurons of the neural layer 20.

第1グループのデータ1l、12、13・・・は、画素
が「l」 (例えば黒)か「0」 (例えば白)かを示
す0次データであり、また第2グループのデータ14、
15、16・・・は、画素の特徴を示す高次のデータで
ある。
The first group of data 1l, 12, 13, etc. are zero-order data indicating whether the pixel is "l" (for example, black) or "0" (for example, white), and the second group of data 14,
15, 16, . . . are high-order data indicating characteristics of pixels.

しかして第3実施例において、第1グループのデータす
なわち低次のデータは、ニューラルレイヤ20のニュー
ロンに入力され、第2グループのデータすなわち高次の
データは、出力レイヤ90のニューロンに入力される。
Thus, in the third embodiment, the first group of data, ie, low-order data, is input to the neurons of the neural layer 20, and the second group of data, ie, high-order data, is input to the neurons of the output layer 90. .

したがって、ニューラルレイヤ20のニューロンは、よ
り低次の処理すなわち例えば画素そのもののデータに対
する処理を行い、出力レイヤ90のニューロンは、より
高次の処理すなわち例えば画素の持つ様々な性質等に対
する処理を行う。
Therefore, the neurons in the neural layer 20 perform lower-order processing, for example, processing on the data of the pixel itself, and the neurons in the output layer 90 perform higher-order processing, such as processing on various properties of pixels, etc. .

このように、第3実施例においては、高次のデータが直
接出力レイヤ90に入力され、ニューラルレイヤ20に
は入力されないので、シナプス数すなわち入力要素とニ
ューロンあるいはニューロン同士の接続部の数は減少し
、またニューロン数も減少する。シナプス数が少なくな
ると、ニューロンにとって演算回数が減少するために、
演算速度が上昇し、また重みデータ数も減少するので、
メモリ容量も小さくてすむ。また、ニューロン数が少な
くなると、閾値の数も少なくてすみ、これによりメモリ
容量が小さくなるとともに、演算回数も少なくなり演算
速度が上昇する。しかして本実施例によれば、小さいメ
モリ容量でかつ高速の演算処理が可能になり、単純な回
路で効率の高いニューラルネットワークが得られる。
In this way, in the third embodiment, high-order data is input directly to the output layer 90 and not to the neural layer 20, so the number of synapses, that is, the number of connections between input elements and neurons or between neurons is reduced. However, the number of neurons also decreases. As the number of synapses decreases, the number of operations required for neurons decreases, so
The calculation speed increases and the number of weight data decreases, so
The memory capacity is also small. Furthermore, when the number of neurons is reduced, the number of threshold values is also reduced, which reduces the memory capacity, reduces the number of calculations, and increases the calculation speed. According to this embodiment, high-speed arithmetic processing is possible with a small memory capacity, and a highly efficient neural network can be obtained with a simple circuit.

第8図(b)はニューラルネットワークの第4実施例を
示し、この実施例は、3つのグループの入力データ群1
0と、ニューラルレイヤ20、30および出力レイヤ9
0を有する。
FIG. 8(b) shows a fourth embodiment of the neural network, which consists of three groups of input data 1
0, neural layers 20, 30 and output layer 9
has 0.

入力データ群10は、第1グループのデータ11,12
、l3・・・と、第2グループのデータ14、15、1
6・・・と、第3グループのデ一夕17、l8、19・
・・とを備える。すなわち入力データ群は、第3実施例
と異なり、3種類に分類されている。第1のニューラル
レイヤ20はニューロン2工、22、23・・・を有し
、また第2のニューラルレイヤ30はニューロン31、
32、33・・・を有する。出力レイヤ90は、ニュー
ロン91、92、93・・・を有する。第1のニューラ
ルレイヤ20の各ニューロンハ、第2のニューラルレイ
ヤ30の各ニューロンに、また第2のニューラルレイヤ
30の各ニューロンは、出力レイヤ90の各ニューロン
にそれぞれ接続される。
The input data group 10 includes first group data 11 and 12.
, l3... and the second group of data 14, 15, 1
6... and the third group's De Ichiba 17, l8, 19.
...and is provided. That is, unlike the third embodiment, the input data group is classified into three types. The first neural layer 20 has neurons 2, 22, 23, etc., and the second neural layer 30 has neurons 31,
32, 33... The output layer 90 has neurons 91, 92, 93, . . . . Each neuron of the first neural layer 20 is connected to each neuron of the second neural layer 30, and each neuron of the second neural layer 30 is connected to each neuron of the output layer 90, respectively.

第1グループのデータ11、12、13・・・は第1の
ニューラルレイヤ20の各ニューロンに、第2グループ
のデータl4、l5、l6・・・は第2のニューラルレ
イヤ30の各ニューロンに、第3グループのデータ17
、18、19・・・は出力レイヤ90の各ニューロンに
それぞれ接続される。
The first group of data 11, 12, 13... are sent to each neuron of the first neural layer 20, and the second group of data l4, l5, l6... is sent to each neuron of the second neural layer 30. Third group data 17
, 18, 19, . . . are connected to each neuron of the output layer 90, respectively.

各ニューロンは、第3実施例と同様に、例えば上記(1
)式に従い、入力された各データに応じて、出力データ
「1」または「O」を出力する。第1グループのデータ
11、12、13・・・は0次データ、第2グループの
データ14、15、l6・・・はl次データ、第3グル
ープのデータ17、l8、工9・・・は2次データであ
る。すなわち第2のニューラルレイヤ30には高次のデ
ータが入力され、出力レイヤ90にはさらに高次のデー
タが入力される。
Each neuron is similar to the third embodiment, for example, the above (1
), output data "1" or "O" is output according to each input data. The first group of data 11, 12, 13... are zero-order data, the second group of data 14, 15, l6... are l-order data, the third group of data 17, l8, engineering 9... is secondary data. That is, high-order data is input to the second neural layer 30, and even higher-order data is input to the output layer 90.

この第4実施例においても、第3実施例と同様に、シナ
プス数は減少し、またニューロン数も減少する。したが
って、第3実施例と同様な効果が得られる。
In this fourth embodiment, as in the third embodiment, the number of synapses and neurons also decrease. Therefore, the same effects as in the third embodiment can be obtained.

第9図(a)、(b)はニューラルネットワークの第5
実施例を比較例とともに表したものであり、この例は入
力データを論理演算 (AeB)6B (([D) に従って処理する場合を示す。なおここで、eは「排他
的論理和」を示し、またA,B,C,Dは「IJまたは
「0」のデジタル値であり、この論?演算の結果も「1
」またはr■,のデジタル値として出力されるとして説
明する。
Figures 9(a) and (b) show the fifth part of the neural network.
Examples are shown together with comparative examples, and this example shows a case where input data is processed according to the logical operation (AeB) 6B (([D). Here, e indicates "exclusive OR". , and A, B, C, and D are digital values of "IJ" or "0", and the result of this logic calculation is also "1".
'' or r■, will be explained as being output as a digital value.

第9図(a)は比較例を示し、この装置は入力データを
通過させるための入力データ群10と第1および第2の
ニューラルレイヤ20、30と出力レイヤ90とを有す
る。入力データ群IOは入力データA,B,C,Dから
なる。第1のニューラルレイヤ20は4個のニューロン
2L22、23、24を有し、第2のニューラルレイヤ
30は4個のニューロン3l、32、33、34を有す
る。各データA−Dは、それぞれ第1のニューラルレイ
ヤ20の各ニューロンに入力され、第1のニューラルレ
イヤ20の各ニューロンはそれぞれ第2のニューラルレ
イヤ30の各ニューロンに接続される。一方、出力レイ
ヤ90は1個のニューロン9lを有し、このニューロン
9lには、第2のニューラルレイヤ20の各ニューロン
がそれぞれ接続される。
FIG. 9(a) shows a comparative example, and this device has an input data group 10 for passing input data, first and second neural layers 20, 30, and an output layer 90. The input data group IO consists of input data A, B, C, and D. The first neural layer 20 has four neurons 2L22, 23, 24, and the second neural layer 30 has four neurons 3l, 32, 33, 34. Each data A-D is input to each neuron of the first neural layer 20, and each neuron of the first neural layer 20 is connected to each neuron of the second neural layer 30, respectively. On the other hand, the output layer 90 has one neuron 9l, and each neuron of the second neural layer 20 is connected to this neuron 9l.

第1のニューラルレイヤ20において、各ニューロン2
lは各人力データに対して乗じられる重みと閾値とを有
し、上記(1)弐に従い、各入力データと重みの積の総
和が閾値以上の時出力データ「l」を出力し、この総和
が閾値θよりも小さい時出力データ「0」を出力する。
In the first neural layer 20, each neuron 2
l has a weight and a threshold by which each human data is multiplied, and according to (1) 2 above, when the sum of the products of each input data and the weight is greater than or equal to the threshold, output data "l" is output, and this sum When is smaller than the threshold θ, output data “0” is output.

同様にニューロン22、23、24も各入力データに応
じて、「1」またはrQ,を出力する。第2のニューラ
ルレイヤ30においても同様に、各ニューロンは、入力
データに応じて「1」または「0」を出力する。
Similarly, neurons 22, 23, and 24 also output "1" or rQ, depending on each input data. Similarly, in the second neural layer 30, each neuron outputs "1" or "0" depending on the input data.

出力レイヤ90のニューロン91も同様に、第2のニュ
ーラルレイヤ30のニューロンからの出力データに応じ
て、「1」または「0」のデータを出力する。
Similarly, the neurons 91 of the output layer 90 output data of "1" or "0" according to the output data from the neurons of the second neural layer 30.

さて論理演算(AeB)69 (CeD)(7)演算結
果は、データA,Bが不一致で、かつC,Dが一致する
とき、またA,Bが一致し、かつC,Dが不一致のとき
、「1」となる。それ以外の場合は「0」となる。この
ため、第9図(a)においては、各ニューロンは次のよ
うに構成される。
Now, the logical operation (AeB) 69 (CeD) (7) The operation result is when data A and B do not match and C and D match, and when A and B match and C and D do not match. , becomes "1". In other cases, it is "0". Therefore, in FIG. 9(a), each neuron is configured as follows.

第1のニューラルレイヤ20において、ニューロン21
、22、23、24は、A,B,C,Dを4ビットパタ
ーンで表した場合、それぞれ「01 XXJ、rlOx
x」、rxx0 1J、rXX10」の時「1」を出力
し、それ以外の場合「OJを出力する。ここで、「xX
jはそのデータを無視することを意味する。一方、第2
のニューラルレイヤ30において、ニューロン31は、
第1のニューラルレイヤ20のニューロン21のみが「
1」を出力する時rlJを出力し、それ以外の時rQJ
を出力する。またニューロン32は、第1のニューラル
レイヤ20のニューロン22のみが「1」を出力する時
「1」を出力し、それ以外の時「0」を出力する。同様
にして、ニューロン33は、第1のニューラルレイヤ2
0のニューロン23のみが「1」を出力する時「1」を
出力し、またニューロン34は、第1のニューラルレイ
ヤ20のニューロン24のみが「1」を出力する時「1
」を出力する。一方、出力レイヤ90のニューロン91
は、第2のニューラルレイヤ30のニューロンの少なく
ともひとつが「l」を出力する時「1」を出力する。
In the first neural layer 20, neurons 21
, 22, 23, and 24 are respectively "01 XXJ, rlOx" when A, B, C, and D are represented by 4-bit patterns.
x", rxx0 1J, rXX10", outputs "1", otherwise outputs "OJ".Here, "xX
j means to ignore the data. On the other hand, the second
In the neural layer 30 of , the neurons 31 are
Only the neurons 21 of the first neural layer 20 are "
1”, outputs rlJ, otherwise outputs rQJ
Output. Further, the neuron 32 outputs "1" when only the neuron 22 of the first neural layer 20 outputs "1", and outputs "0" at other times. Similarly, the neurons 33 are connected to the first neural layer 2
0 outputs "1" when only the neuron 23 outputs "1", and the neuron 34 outputs "1" when only the neuron 24 of the first neural layer 20 outputs "1".
" is output. On the other hand, neurons 91 of the output layer 90
outputs "1" when at least one neuron of the second neural layer 30 outputs "l".

したがって、A,B,C,Dの入力データがビットパタ
ーンでroooIJの場合、第1のニューラルレイヤ2
0においてニューロン23のみが「1」を出力し、他の
ニューロン21、22、24が「0」を出力する。この
結果、第2のニューラルレイヤ30においてニューロン
33が「1」を出力することとなり、出力レイヤ90の
ニューロン91が「1」を出力する。同様にしてA,B
、C,Dが、r0010」、rolooJ、rl000
」、r1110J、rllolJ、「1011」、ro
111Jの場合、第2のニューラルレイヤ30において
、いずれかのニューロンが「1」を出力し、出力レイヤ
90のニューロン91が「1」を出力する。
Therefore, if the input data of A, B, C, D is a bit pattern of roooIJ, the first neural layer 2
0, only the neuron 23 outputs "1", and the other neurons 21, 22, and 24 output "0". As a result, the neuron 33 in the second neural layer 30 outputs "1", and the neuron 91 in the output layer 90 outputs "1". Similarly, A and B
,C,D,r0010'',rolooJ,rl000
”, r1110J, rllolJ, “1011”, ro
In the case of 111J, one of the neurons in the second neural layer 30 outputs "1", and the neuron 91 of the output layer 90 outputs "1".

第9図(b)は本発明の第5の実施例を示し、この装置
は人力データ群10と第1、第2および第3のニューラ
ルレイヤ20、30、40と出力レイヤ90とを有する
。入力データ群10は、入力データA..B,C,Dか
らなる。第1のニューラルレイヤ20は4個のニューロ
ン2122、23、24、第2のニューラルレイヤ30
は2個のニューロン3工、32、第3のニューラルレイ
ヤ40は2個のニューロン4L42、出力レイヤ90は
1個のニューロン91を有する。人力データ群のデータ
A−Dは、それぞれ第1のニューラルレイヤ20の各ニ
ューロンに入力され、第1のニューラルレイヤ20の各
ニューロンはそれぞれ第2のニューラルレイヤ30の各
ニューロンに接続される。第2のニューラルレイヤ30
の各ニューロンは第3のニューラルレイヤ40の各ニュ
ーロンに接続され、第3のニューラルレイヤ40の各ニ
ューロンは出力レイヤ90のニューロンに接続される。
FIG. 9(b) shows a fifth embodiment of the present invention, and this device has a human data group 10, first, second and third neural layers 20, 30, 40 and an output layer 90. The input data group 10 includes input data A. .. Consists of B, C, and D. The first neural layer 20 has four neurons 2122, 23, 24, the second neural layer 30
has two neurons 3, 32, the third neural layer 40 has two neurons 4L42, and the output layer 90 has one neuron 91. Data A to D of the human data group are input to each neuron of the first neural layer 20, and each neuron of the first neural layer 20 is connected to each neuron of the second neural layer 30, respectively. second neural layer 30
Each neuron of the third neural layer 40 is connected to each neuron of the third neural layer 40 , and each neuron of the third neural layer 40 is connected to a neuron of the output layer 90 .

各ニューラルレイヤ20、30、40および出力レイヤ
90における各ニューロンは、第9図(a)の場合と同
様に、入力されるデータに応じて「1」または「0」を
出力する。
Each neuron in each neural layer 20, 30, 40 and output layer 90 outputs "1" or "0" depending on input data, as in the case of FIG. 9(a).

第1のニューラルレイヤ20において、ニューロン21
、22、23、24は、A..B, C, Dを4ビッ
トパターンで表した場合、それぞれ「0IXXJ、 N
Oxx」、 rxxoIJ,  rXX10」の時「1
」を出力し、それ以外の場合[OJを出力する。一方、
第2のニューラルレイヤ30において、ニューロン31
は、第1のニューラルレイヤ20のニューロン21また
は22が「1」を出力する時「1」を出力し、それ以外
の時「0」を出力する。またニューロン32は、第1の
ニューラルレイヤ20のニューロン23または24が「
1」を出力する時「1」を出力し、それ以外の時「0」
を出力する。第3のニューラルレイヤ40において、ニ
ューロン41は、第2のニューラルレイヤ30のニュー
ロン32のみが「I」を出力する時r1,を出力し、そ
れ以外の時「0」を出力する。またニューロン42は、
第2のニューラルレイヤ30のニューロン31のみが「
1」を出力する時r1,を出力し、それ以外の時「O」
を出力する。一方、出力レイヤ90のニューロン91は
、第3のニューラルレイヤ40のニューロンの少なくと
もひとつが「l」を出力する時「1」を出力する。
In the first neural layer 20, neurons 21
, 22, 23, 24 are A. .. When B, C, and D are expressed as 4-bit patterns, they are respectively "0IXXJ, N
"1" when "Oxx", rxxoIJ, rXX10"
", otherwise outputs [OJ. on the other hand,
In the second neural layer 30, neurons 31
outputs "1" when the neuron 21 or 22 of the first neural layer 20 outputs "1", and outputs "0" otherwise. Further, the neuron 32 is the same as the neuron 23 or 24 of the first neural layer 20.
When outputting ``1'', output ``1'', otherwise output ``0''
Output. In the third neural layer 40, the neuron 41 outputs r1 when only the neuron 32 of the second neural layer 30 outputs "I", and otherwise outputs "0". Further, the neuron 42 is
Only the neurons 31 of the second neural layer 30 are "
1”, outputs r1, otherwise “O”
Output. On the other hand, the neuron 91 of the output layer 90 outputs "1" when at least one neuron of the third neural layer 40 outputs "l".

?たがって、ASB,C,Dの入力データがビットパタ
ーンでroOG1」の場合、第1のニューラルレイヤ2
0においてニューロン23のみがrl,を出力し、他の
ニューロン2l、22、24がr■,を出力する。この
結果、第2のニューラルレイヤ30においてニューロン
32のみが「I J ヲ出力し、第3のニューラルレイ
ヤ40においてニューロン42が「1」を出力すること
となる。したがって出力レイヤ90のニューロン91が
rlJを出力する。同様にしてA,B,C,Dが、r0
010」、rQloOJ、「1000」、r1110J
、r1101,、rlo11r、「0111,の場合、
第2のニューラルレイヤ30において、いずれかのニュ
ーロンが「1」を出力し、これにより第3のニューラル
レイヤ40のいずれか一方のニューロンが「IJを出力
することとなり、第4のニューラルレイヤ40のいずれ
か一方のニューロンが「1」を出力する。したがって、
出力レイヤ90のニューロン9lがrlJを出力する。
? Therefore, if the input data of ASB, C, and D has a bit pattern of roOG1, the first neural layer 2
0, only the neuron 23 outputs rl, and the other neurons 2l, 22, and 24 output r■,. As a result, only the neuron 32 in the second neural layer 30 outputs "I J", and the neuron 42 in the third neural layer 40 outputs "1". Therefore, the neuron 91 of the output layer 90 outputs rlJ. Similarly, A, B, C, D are r0
010”, rQloOJ, “1000”, r1110J
, r1101,, rlo11r, “0111,”
In the second neural layer 30, one of the neurons outputs "1", which causes one of the neurons in the third neural layer 40 to output "IJ", and the fourth neural layer 40 outputs "IJ". Either neuron outputs "1". therefore,
Neuron 9l of output layer 90 outputs rlJ.

第9図(a)から容易に理解されるように、比較例にお
いて、シナブス数は36であり、ニューロン数は10で
ある。これに対し本実施例においては、第9図(b)か
ら理解されるようにシナプス数は30であり、ニューロ
ン数は10である。
As can be easily understood from FIG. 9(a), in the comparative example, the number of synabuses is 36 and the number of neurons is 10. On the other hand, in this example, the number of synapses is 30 and the number of neurons is 10, as understood from FIG. 9(b).

しかして、論理演算(AeB)IEE} (C69D)
 によって入力データを処理する場合、比較例において
36個のシナブスが必要であったのに対し、本実施例に
よれば30個のシナブスですむことが理解される。
Therefore, logical operation (AeB) IEE} (C69D)
It is understood that when input data is processed by , 36 synapses were required in the comparative example, but only 30 synapses are required according to the present embodiment.

すなわち、本実施例によればシナプス数は約2割減少し
、上記各実施例において述べたのと同様な効果が得られ
る。つまり、ニューラルレイヤの数を増加させるととも
に、出力レイヤ90側に構築されるニューラルレイヤの
ニューロン数をそれより前段のニューラルレイヤのニュ
ーロン数以下に定めることにより、シナプス数を減少さ
せることができ、認識部100(第1図)のメモリ容量
を削減するとともに演算速度を向上させることができる
That is, according to this embodiment, the number of synapses is reduced by about 20%, and the same effects as described in the above embodiments can be obtained. In other words, by increasing the number of neural layers and setting the number of neurons in the neural layer constructed on the output layer 90 side to be equal to or less than the number of neurons in the preceding neural layer, the number of synapses can be reduced, and the number of synapses can be reduced. The memory capacity of the unit 100 (FIG. 1) can be reduced and the calculation speed can be improved.

第10図(a)、(b)はニューラルネットワークの第
6実施例を比較例とともに表したものであり、この例は
入力データを論理演算 + (AfE9B)$ (CeD)) eE  (8)
に従って処理する場合を示す。
FIGS. 10(a) and (b) show the sixth embodiment of the neural network together with a comparative example. In this example, input data is subjected to logical operations + (AfE9B) $ (CeD)) eE (8)
Indicates the case where processing is performed according to the following.

第lO図(a)は比較例を示し、入力データ群10は5
個のデータA−E、初段のレイヤ20は15個のニュー
ロン、出力レイヤ90は゛1個のニューロンをそれぞれ
有する。比較例において、上記(8)式を展開して得ら
れる各項をニューラルレイヤ20の各二二一ロンヘ入力
している。したがって、全てのデータはO次データとし
て処理されている。
FIG. 10(a) shows a comparative example, where the input data group 10 is 5
The first layer 20 has 15 neurons, and the output layer 90 has 1 neuron. In the comparative example, each term obtained by expanding the above equation (8) is input to each 221-ron of the neural layer 20. Therefore, all data is processed as O-order data.

これに対し、第10図(b)は第6実施例を示し、この
構成は入力データ群10と、第1、第2、第3および第
4のニューラルレイヤ20、30、40、50と、出力
レイヤ90とを有する。第1のニューラルレイヤ20と
第2のニューラルレイヤ30は(AeB)と(CeD)
に従った処理をそれぞれ行い、第3のニューラルレイヤ
40は{(AeB) e(CeD)) に従った処理を
行う。
On the other hand, FIG. 10(b) shows a sixth embodiment, and this configuration includes an input data group 10, first, second, third and fourth neural layers 20, 30, 40, 50, and an output layer 90. The first neural layer 20 and the second neural layer 30 are (AeB) and (CeD)
The third neural layer 40 performs processing according to {(AeB) e(CeD)).

そして第4のニューラルレイヤ50および出力レイヤ9
0により、{ (AeB) e(CeD)) eEによ
る最終結果が求められる。
and a fourth neural layer 50 and an output layer 9
0, the final result is determined by { (AeB) e(CeD)) eE.

第10図(a)および第10図(b)の対比から理解さ
れるように、比較例において、シナブス数は80、ニュ
ーロン数は16であり、これに対し本実施例においては
、シナブス数は32であり、ニューロン数は10である
。しかして、本実施例によればシナプス数は約4割に減
少し、またニューロン数は約6割に減少する。したがっ
て本実施例においても、上記各実施例において述べたの
と同様な効果が得られる。
As can be understood from the comparison between FIG. 10(a) and FIG. 10(b), in the comparative example, the number of synabuses is 80 and the number of neurons is 16, whereas in the present example, the number of synabuses is 80 and the number of neurons is 16. 32, and the number of neurons is 10. According to this embodiment, the number of synapses is reduced by about 40%, and the number of neurons is reduced by about 60%. Therefore, in this embodiment as well, effects similar to those described in each of the above embodiments can be obtained.

以上の説明から理解されるように、本発明において、入
力データ群、ニューラルレイヤ、および出力レイヤから
なる層構造は、そのデータ処理において必要とする次数
、および入力データの次数に応じて最適に構成される必
要があり、また入力データはその層構造に応じて適当な
レイヤに入力される。なお、ここで次数とは、前述した
ように、データあるいは処理内容の抽象度を意味する。
As can be understood from the above explanation, in the present invention, the layered structure consisting of the input data group, neural layer, and output layer is optimally configured according to the order required for data processing and the order of the input data. Input data needs to be input to an appropriate layer depending on the layer structure. Note that the degree here means the degree of abstraction of data or processing content, as described above.

さて、ニューロンが上述のような処理を行うには、重み
が学習により適当な値に定められなければならない。こ
のため本実施例においては、後述するように、重みが時
間的に指数関数的に変化せしめられる。なお、重みの修
正方法として、特願昭63−297541号に開示され
ているように大別して3つの方法があり、これらをここ
ではそれぞれモード■、モード■、モード■と呼ぶこと
とする。
Now, in order for a neuron to perform the processing described above, the weights must be determined to appropriate values through learning. Therefore, in this embodiment, the weights are changed exponentially over time, as will be described later. There are three methods for modifying the weights, as disclosed in Japanese Patent Application No. 63-297541, and these will be referred to herein as Mode (2), Mode (2), and Mode (2), respectively.

モードIは第11図に示すように、ニューロンの重みが
そのニューロンの出力に基づいて修正されるものである
。この修正方法は、各レイヤの出力の目標値が明らかに
なっている場合に有効である。さて、ある入力に対して
そのニューロンが出力を生じた場合その出力が目標値に
一致し、あるいは目標値に十分近かった時、その時の人
出力の関係は強化されるべきである。これは、有意な入
力が与えられたシナブスの重みを高めることに相当する
。モードIにおいては、各ニューロンの出力の目標値が
予め分かっているので、各ニューロンの出力を目標値と
比較し、両者が一致あるいは十分近かった時、例えば2
値入力の場合r1,が入力されたシナブスの重みが増加
せしめられる。
In mode I, as shown in FIG. 11, the weight of a neuron is modified based on the output of that neuron. This correction method is effective when the target value of the output of each layer is clear. Now, when that neuron produces an output in response to a certain input, when that output matches the target value or is sufficiently close to the target value, the relationship between the human outputs at that time should be strengthened. This corresponds to increasing the weight of synapses given significant input. In mode I, the target value of the output of each neuron is known in advance, so the output of each neuron is compared with the target value, and when the two match or are sufficiently close, for example, 2
In the case of value input, the weight of the synapse to which r1 is input is increased.

モード■は第12図に示すように、ニューロンの重みが
最終的な出力の評価結果に基づいて修正されるものであ
る。この修正方法は、データ処理装置の処理内容を大局
的に判断する場合に有効である。このモードにおける評
価方法としては、出力レイヤの最終出力と目標値とのハ
ミング距離、あるいはピタゴラス距離の評価、あるいは
惑応的評価等が可能である。この評価の結果、出力が目
標値と一致あるいは十分近ければ、その時の入出力関係
は強化されるべきであり、その時、例えば「1」が入力
された各シナブスの重みが増加せしめられる。
As shown in FIG. 12, mode (2) is one in which the weights of the neurons are modified based on the final output evaluation results. This correction method is effective when determining the processing content of the data processing apparatus from a global perspective. As an evaluation method in this mode, evaluation of the Hamming distance or Pythagorean distance between the final output of the output layer and the target value, or perceptual evaluation is possible. As a result of this evaluation, if the output matches or is sufficiently close to the target value, the input/output relationship at that time should be strengthened, and at that time, for example, the weight of each synabus to which "1" is input is increased.

モード■は、入力をそのまま記憶するタイプの学習の場
合の重みの修正方法であり、入力とその入力に対して最
初に生じた出力との関係を強化する。すなわち、第11
図の構成において、その入力に対して「1」を出力した
ニューロンにおける、rlJが入力されたシナブスの重
みが増加せしめられる。
Mode (2) is a weight modification method for a type of learning in which inputs are memorized as they are, and strengthens the relationship between the input and the output that originally occurred for that input. That is, the 11th
In the configuration shown in the figure, the weight of the synapse to which rlJ is input in the neuron that outputs "1" in response to that input is increased.

このような重みの修正において、発明者等は、まずニュ
ーロンの重みの変化を生体の神経細胞における膜電位の
変化と仮定した。つまり、重みが生体の神経細胞におけ
る膜電位と同様に設定されるならば、データ処理装置に
おける学習の効率は生体の脳細胞と同様に極めて高くな
ると、考えられる。そしてまた、重みが膜電位と同様な
変化を示すのであれば、その変化は、一般的なRLC回
路と同様に指数関数で表現されると考えられる。
In modifying the weights in this manner, the inventors first assumed that changes in the weights of neurons were changes in membrane potential in living nerve cells. In other words, if the weights are set similar to the membrane potential of biological nerve cells, it is thought that the efficiency of learning in the data processing device will be extremely high, similar to that of biological brain cells. Furthermore, if the weight shows a change similar to the membrane potential, the change is considered to be expressed by an exponential function like a general RLC circuit.

しかして重みWは、第13図に示すように、W一±ex
p(t)            ( 9 )で表され
る。ただし、tは個々のニューロンにおける学習時間、
すなわち学習回数を表す。
Therefore, the weight W is, as shown in FIG.
It is expressed as p(t) (9). where t is the learning time in each neuron,
In other words, it represents the number of times of learning.

(9)式において、シナプスが興奮型の場合には符号は
十になり、重みWは、実線Iで示すようにOから始まっ
て最初は急速に大きくなり、学習開始から時間がたつほ
どその変化量は小さくなり最大値W.4に近づく。これ
に対し、シナプスが抑制型の場合には符号は一になり、
重みWは、実線Jで示すように0から始まって最初は急
速に小さくなり、学習開始から時間がたつほどその変化
量は小さくなり最小値W1に近づく。
In equation (9), if the synapse is excitatory type, the sign is 10, and the weight W starts from O and increases rapidly at first, as shown by the solid line I, and changes as time passes from the start of learning. The amount becomes smaller and reaches the maximum value W. Approaching 4. On the other hand, if the synapse is of the inhibitory type, the sign will be one;
As shown by the solid line J, the weight W starts from 0 and decreases rapidly at first, and as time passes from the start of learning, the amount of change decreases and approaches the minimum value W1.

学習の開始直後、そのシナブスについてあまりデータ相
関がないので、この時の重みWは小さく定められるが、
その後、データ相関が大きくなっていくので、重みWは
急速に大きくなり、これにより学習による収束が早めら
れる。これに対し、学習が進んで重みWが既に大きくな
っている場合、そのシナプスはそれまでの学習において
十分データ相関がある。したがって、その重みWをいた
ずらに変動させると、単に振動を起こすだけであり学習
における収束性を阻害することとなるが、重みWはほと
んど変化しないように定められているので、十分な収束
性が得られる。
Immediately after the start of learning, there is not much data correlation for that synapse, so the weight W at this time is set small.
Thereafter, as the data correlation increases, the weight W rapidly increases, which speeds up the convergence due to learning. On the other hand, if learning has progressed and the weight W has already become large, that synapse has sufficient data correlation in the learning up to that point. Therefore, if the weight W is changed unnecessarily, it will simply cause oscillation and impede the convergence in learning, but since the weight W is set so that it hardly changes, sufficient convergence can be achieved. can get.

なお、従来、ニューロンの出力特性として抑制型および
興奮型ニューロンが考えられており、これをニューラル
ネットワークとして最適配置するには処理内容を考慮し
た詳細な検討が必要であり、抑制型ニューロンと興奮型
ニューロンの結合は複雑である。しかし本実施例によれ
ば、ひとつのシナブスの特性として重みWの符号を+ま
たは一に選沢するだけで、抑制型、興奮型を任意に実現
でき、したがって回路構成が単純化され、回路の自由度
が高まる。なお、抑制型ニューロンの存在によって、デ
ータの分離性が向上することは、ローゼンブラット以来
よく知られたところである(1958年 F.Rose
nblatt  ” The  perceptron
:  a probabilistic  model
  for  informationstorage
  and  organization  in  
the  brain”,Psychological
 RevieII+65: 386−408)。
Conventionally, inhibitory and excitatory neurons have been considered as the output characteristics of neurons, and in order to optimally arrange them as a neural network, a detailed study that takes into account the processing content is required. Neuron connections are complex. However, according to this embodiment, by simply selecting the sign of the weight W to be + or 1 as a characteristic of one synabus, it is possible to arbitrarily realize an inhibitory type or an excitatory type, which simplifies the circuit configuration. Increased freedom. It has been well known since Rosenblatt (1958, F. Rose) that the presence of inhibitory neurons improves the separability of data.
nblatt ” The perceptron
: a probabilistic model
for information storage
and organization in
the brain", Psychological
Rev. II+65: 386-408).

しかして本実施例によれば、ニヱーラルネットワークに
おける学習の効率が向上し、最終出力データを早期に収
束かつ安定化させることができる。
According to this embodiment, the efficiency of learning in the neural network is improved, and the final output data can be converged and stabilized quickly.

また、上述のように、重みWの正負の符号を変えるだけ
で抑制型および興奮型の特性が得られるので、ニューラ
ルネットワークの回路の自由度が高まる。
Furthermore, as described above, suppressive and excitatory characteristics can be obtained by simply changing the sign of the weight W, increasing the degree of freedom of the circuit of the neural network.

なお、重みWの時間的変化は、必ずしも正確に指数関数
に定める必要はなく、例えば折れ線等で近似してもよい
Note that the temporal change in the weight W does not necessarily need to be determined exactly as an exponential function, and may be approximated by, for example, a polygonal line.

次に、ニューラルネットワークの第7〜9実施例を説明
するとともに、本発明の第2の基本理念を解説する。
Next, seventh to ninth embodiments of the neural network will be described, and the second basic idea of the present invention will be explained.

第14図(a)は本発明のニューラルネットワークの第
7実施例を示し、この実施例は、学習の結果(A+B)
の論理演算を実行するに到ったニューラルネットワーク
を示すものである。
FIG. 14(a) shows a seventh embodiment of the neural network of the present invention, in which the learning result (A+B)
This figure shows the neural network that led to the execution of the logical operations.

この構成は、1層のニューラルレイヤ20を有し、この
ニューラルレイヤ20には、データ数と同数、すなわち
2個のニューロン21、22が設けられる。各ニューロ
ン2l、22にはデータAおよびBがそれぞれ入力され
る。各ニューロン21、22は、各データの入力経路と
の接続部分すなわちシナブスにおける重みWiと、閾値
θとを有する。学習により重みW,は変化し、ニューロ
ンは、所定の処理を行うようになる。本実施例では、学
習の結果、一方のニューロン21のみが論理演算(A+
B)の処理を行い、他方のニューロン22は実質的に作
用しない。すなわちニューロン21は例えばW+=1、
W2=1、θ=1に設定され、 AW,+BW2≧1 の時、出力データ「1」を出力する。一方ニューロン2
2は、例えば、W3=0、W4=0、θ=1に設定され
、したがって常に、 A W 3 + B W a < 1 であり、閾{直θを越えることはなく、出力データ「0
」を出力する。
This configuration has one neural layer 20, and this neural layer 20 is provided with the same number of neurons 21 and 22 as the number of data, that is, two neurons 21 and 22. Data A and B are input to each neuron 2l, 22, respectively. Each neuron 21, 22 has a weight Wi in a connection part with the input path of each data, that is, a synapse, and a threshold value θ. The weight W, changes due to learning, and the neuron comes to perform a predetermined process. In this embodiment, as a result of learning, only one neuron 21 performs the logical operation (A+
B) is performed, and the other neuron 22 does not substantially act. That is, the neuron 21 has, for example, W+=1,
When W2=1 and θ=1, and AW, +BW2≧1, output data “1” is output. On the other hand, neuron 2
2 is set to, for example, W3=0, W4=0, θ=1, so that always A W 3 + B W a < 1 and the threshold {direction θ is not exceeded, and the output data “0
" is output.

しかしてニューロン21は、データA,Bの少なくとも
一方が「lJの時、出力データrl,を出力し、本実施
例のニューラルネットワークは、論理演算(A+B)を
実行する。
Thus, when at least one of the data A and B is "lJ," the neuron 21 outputs the output data rl, and the neural network of this embodiment executes the logical operation (A+B).

第14図(b)は第8実施例を示し、この実施例は、学
習の結果(AeB)の論理演算を実行するに到ったニュ
ーラルネットワークを示すものである。この構成は2層
のニューラルレイヤ20、30を有し、初段のニューラ
ルレイヤ20にはニューロン21、22が設けられ、ま
た後段のニューロン30にはニューロン3L32が設け
られる。初段のニューラルレイヤ20のニューロン21
、22には、データAおよびBが入力される。
FIG. 14(b) shows an eighth embodiment, and this embodiment shows a neural network that has come to execute the logical operation of the learning result (AeB). This configuration has two neural layers 20 and 30, the first neural layer 20 is provided with neurons 21 and 22, and the subsequent neuron 30 is provided with a neuron 3L32. Neuron 21 of the first neural layer 20
, 22, data A and B are input.

論理演算(AeB)は、(AB+AH) と展開され、
ニューラルレイヤ20において、ニューロン21が(/
XB)の処理を行い、ニューロン22が(AB)の処理
を行う。すなわちニューロン21は、例えばW+ =−
L Wz =1、θ=1に設定され、 AWI +BW2≧1 の時、出力データ「1」を出力する。一方、ニューロン
22は、例えばW3=1、W4=1、θ=1に設定され
、 AW3 +BW4≧1 の時、出力データ「1」を出力する。
Logical operation (AeB) is expanded as (AB+AH),
In the neural layer 20, neurons 21 (/
The neuron 22 processes (AB). That is, the neuron 21 has, for example, W+ =-
When L Wz =1 and θ=1, and AWI +BW2≧1, output data “1” is output. On the other hand, the neuron 22 is set to, for example, W3=1, W4=1, and θ=1, and outputs output data “1” when AW3 +BW4≧1.

ニューラルレイヤ30のニューロン3工は、(AB+A
E!)の処理を行い、例えばW,=1、W6=1、θ−
1に設定され、ニューロン21の出力をYl、二・ユー
ロン22の出力をY2とするとy,W,+Y2  Wb
  ≧1 の時、出力「1」を出力する。一方ニューロン32は実
質的に作用しない。
The three neurons of neural layer 30 are (AB+A
E! ), for example, W,=1, W6=1, θ-
1, the output of neuron 21 is Yl, and the output of Euron 22 is Y2, then y, W, +Y2 Wb
When ≧1, output “1”. On the other hand, neuron 32 does not substantially function.

しかしてニューロン31は、データA,Bの一方のみが
「1」の時出力データ「1」を出力し、両者が共に「1
」または「0」の時出力データ「0」を出力し、本実施
例のニューラルネットワークは、論理演算(AeB)を
実行する。
Therefore, the neuron 31 outputs output data "1" when only one of the data A and B is "1", and both of them output "1".
” or “0”, output data “0” is output, and the neural network of this embodiment executes a logical operation (AeB).

第14図(c)は第9実施例を示し、この実施例は、学
習の結果(A+B)Cの論理演算を実行するに到ったニ
ューラルネットワークを示すものである。この構成は2
層のニューラルレイヤ20、30を有し、初段のニュー
ラルレイヤ20にはニューロン21、22、23が設け
られ、また後段のニューロン30にはニューロン31、
32、33が設けられる。初段のニューラルレイヤ20
のニューロン21、22、23には、データASBおよ
びCが人力される。
FIG. 14(c) shows a ninth embodiment, and this embodiment shows a neural network that has come to execute the logical operation of (A+B)C as a result of learning. This configuration is 2
The first neural layer 20 is provided with neurons 21, 22, and 23, and the subsequent neuron 30 is provided with neurons 31, 31, and 30.
32 and 33 are provided. First stage neural layer 20
Data ASB and C are input manually to the neurons 21, 22, and 23.

ニューラルレイヤ20において、ニューロン21は(A
+B)の処理を行い、ニューロン22は実質的に作用せ
ず、ニューロン23は入力データCをそのまま出力する
。すなわちニューロン21は、例えばW,=1、w.=
1,W3=O、θ=1に設定され、 A W + + B W Z 十C W z≧1の時、
出力データ「1」を出力する。一方、ニューロン22は
、例えば各重みW4 、Ws 、WbがOに設定される
とともに、閾値θが1に設定され、実質的に作用しない
。またニューロン23は、例えば重みW7=0、W,=
0、W,=1、θ=1に設定され、 AW7 +I3we+CW,l≧1 の時、出力データ「1」を出力し、その他の時、出力デ
ータ「0」を出力する。
In the neural layer 20, the neurons 21 are (A
+B) is performed, the neuron 22 does not substantially act, and the neuron 23 outputs the input data C as is. That is, the neuron 21 has, for example, W,=1, w. =
1, W3=O, θ=1, and when A W + + B W Z + C W z≧1,
Outputs output data "1". On the other hand, in the neuron 22, the weights W4, Ws, and Wb are set to O, and the threshold value θ is set to 1, so that the neuron 22 does not substantially act. Further, the neuron 23 has, for example, a weight W7=0, W,=
0, W,=1, θ=1, and when AW7+I3we+CW,l≧1, output data “1” is output, and at other times, output data “0” is output.

ニューラルレイヤ30のニューロン31は、ニューラル
レイヤ20のニューロン2123の出力データに基づい
て(A+B)Cの処理を行い、例えばWz=1 ,W+
2=O、W+3=1、θ=2に設定され、ニューロン2
1の出力をY,、ニューロン22の出力をY2、ニュー
ロン23の出力を?3とすると、 Y + W + + 十Y z W r■十Y3Wl3
≧2の時、出力データ「1」を出力する。一方ニューロ
ン32、33は実質的に作用しない。
The neuron 31 of the neural layer 30 processes (A+B)C based on the output data of the neuron 2123 of the neural layer 20, for example, Wz=1, W+
2=O, W+3=1, θ=2, neuron 2
The output of neuron 1 is Y, the output of neuron 22 is Y2, and the output of neuron 23 is ? If it is 3, then Y + W + + 10Y z W r ■ 10Y3Wl3
When ≧2, output data “1” is output. On the other hand, neurons 32 and 33 do not substantially act.

しかしてニューロン3】は、データA,Bの少なくとも
一方が「1」でありかつデータCが「1」のとき出力デ
ータ「1」を出力し、本実施例のニューラルネットワー
クは、論理演算(A十B)Cを実行する。
Therefore, neuron 3] outputs output data ``1'' when at least one of data A and B is ``1'' and data C is ``1.'' 10B) Execute C.

ここで本発明の第2の基本理念を解説する。The second basic idea of the present invention will now be explained.

第7実施例において、データA,Bは1つの作用素r+
(OR)Jにより結合されており、この論理演算(A+
B)は、1層のニューラルレイヤ20によって実行され
る。
In the seventh embodiment, data A and B are one operator r+
(OR)J, and this logical operation (A+
B) is performed by one neural layer 20.

第8実施例においては、データA,Bはr(B(EX−
OR)Jにより結合されており、この論理演算(AeB
) は(AB+A113) とH開さh6。
In the eighth embodiment, data A and B are r(B(EX-
OR) J, and this logical operation (AeB
) is (AB+A113) and H open h6.

そして初段のニューラルレイヤ20においてλBとAE
が実行され、すなわち作用素rx (AND)」につい
ての論理演算が実行される。次いで、2段目のニューラ
ノレレイヤ30において(AB十AH)すなわち作用素
「+(OR)Jについての論理演算が実行される。しか
して、第8実施例の論理演算は2層のニューラルレイヤ
によって実行される。
Then, in the first stage neural layer 20, λB and AE
is executed, that is, a logical operation on the operator rx (AND) is executed. Next, in the second neural layer 30, a logical operation is performed on the operator "+(OR)J". executed.

第9実施例において、データA,Bは1つの作用素r−
1− (OR)Jにより結合されており、この論理演算
は初段のニューラルレイヤ20によって実行される。そ
の論理演算結果に対してデータCが作用素rX (AN
D)Jにより結合されており、この論理演算(A+B)
Cは2段目のニューラルレイヤ30によって実行される
。しかして第9実施例の論理演算は2層のニューラルレ
イヤによって実行される。
In the ninth embodiment, data A and B are one operator r-
1-(OR)J, and this logical operation is executed by the neural layer 20 at the first stage. The data C is the operator rX (AN
D) are connected by J, and this logical operation (A+B)
C is executed by the second stage neural layer 30. Thus, the logical operations in the ninth embodiment are executed by two neural layers.

このように、ニューラルネットワークの処理内容を論理
演算子rANDJ、rORJで表現した場合、論理演算
子の数、あるいは論理演算の構成に応じてニューラルレ
イヤの層数が増加している。
In this way, when the processing content of the neural network is expressed by the logical operators rANDJ and rORJ, the number of neural layers increases depending on the number of logical operators or the configuration of the logical operations.

なお各データの次数は前述した通りであり、その定義に
よると、例えば、論理演算(/IB)を行う第8実施例
において、データA,Bを0次とすると、初段のニュー
ラルレイヤ20の各ニューロン2工、22においてそれ
ぞれABとAEの処理が実行され、1次の出力データが
2段目のニューラルレイヤ30のニューロンに入力され
る。そして2段目のニューラノレレイヤ30において、
(XB+AB)の処理が実行され、2次の出力データが
出力される。すなわち、最終出力データは2次であり、
論理演算(AeB)は、最終出力データの次数から入力
データの次数を引いた数すなわち2層のニューラルレイ
ヤによって処理されると考えられる。
Note that the order of each data is as described above, and according to its definition, for example, in the eighth embodiment that performs a logical operation (/IB), if data A and B are 0th order, each of the first stage neural layer 20 AB and AE processing are executed in the neurons 2 and 22, respectively, and the primary output data is input to the neuron of the second stage neural layer 30. Then, in the second new layer 30,
(XB+AB) processing is executed and secondary output data is output. That is, the final output data is quadratic,
The logical operation (AeB) is considered to be processed by the number obtained by subtracting the order of input data from the order of final output data, that is, two neural layers.

発明者らは、入力データに対して最終出力データの次数
が何次高いかを判断することにより、ニューラルレイヤ
の層数を決定することができる、つまり、ニューラルレ
イヤの層数は、最終出力データの次数から人力データの
次数をひいた数であると推測した。これが本発明の第2
の基本的な思想である。次数は、前述のようにデータの
抽象度であり、そのデータの有する性質によって定まり
、例えば画像認識において、画素データは0次であり、
端点データ、大数のデータあるいはオイラー数のデータ
はさらに高次である。例えば画素データから端点データ
を求める場合、端点データの次数すなわち抽象度を考慮
し、端点データの次数から画素データの次数をひいた数
のニューラルレイヤを設ければよい。この場合の実施例
については第16図および第17図を参照して後述する
The inventors can determine the number of neural layers by determining how many degrees higher the order of the final output data is with respect to the input data. It is estimated that the number is the order of the data minus the order of the human data. This is the second aspect of the present invention.
This is the basic idea. As mentioned above, the degree is the abstraction level of data and is determined by the properties of the data. For example, in image recognition, pixel data is 0th order,
Endpoint data, large number data, or Euler number data are of higher order. For example, when obtaining end point data from pixel data, it is sufficient to take into account the degree of end point data, that is, the degree of abstraction, and provide a number of neural layers equal to the degree of end point data minus the degree of pixel data. An example in this case will be described later with reference to FIGS. 16 and 17.

第15図はニューラルネットワークの第10実施例を示
したものであり、この例は学習の結果、入力データA,
B,C,Dを論理演算 (AeB) e(CeD) に従って処理するように到った場合を示す。なおA,B
,CおよびDは「1」またはrOJO:)デジタル値で
あり、この論理演算の結果もrl,または「0」のデジ
タル値として出力されるとして説明する。
FIG. 15 shows a tenth embodiment of the neural network, and this example shows the result of learning, input data A,
A case is shown in which B, C, and D are processed according to the logical operation (AeB) e(CeD). Note that A, B
, C and D are "1" or rOJO:) digital values, and the result of this logical operation will also be explained as being output as rl, or a digital value of "0".

この実施例は、4つのニューラルレイヤ20,30、4
0、90とを有し、最終段のニューラルレイヤ90は最
終出力データを出力する出力レイ?である。第1のニュ
ーラルレイヤ2oは4個のニューロン21、22、23
、24を有し、同様に、第2のニューラルレイヤ30は
4個のニューロン3l、32、33、34を、第3のニ
ューラルレイヤ40は4個のニューロン4142、43
、44を、出力レイヤ90は4個のニューロン91、9
2、93、94を有する。各データA〜Dは、それぞれ
第1のニューラルレイヤ2oの各ニューロンに入力され
る。なお、各ニューロンは隣のニューラルレイヤの各ニ
ューロンに接続されるが、簡単のため、実質的に作用に
関係しない部分の線は、図中省略されている。
This example has four neural layers 20, 30, 4
0, 90, and the final stage neural layer 90 is an output ray that outputs final output data. It is. The first neural layer 2o has four neurons 21, 22, 23
, 24; similarly, the second neural layer 30 has four neurons 3l, 32, 33, 34, and the third neural layer 40 has four neurons 4142, 43.
, 44, and the output layer 90 has four neurons 91, 9
2, 93, and 94. Each data A to D is input to each neuron of the first neural layer 2o. Note that each neuron is connected to each neuron in the adjacent neural layer, but for the sake of simplicity, lines that are not substantially related to the action are omitted from the diagram.

各ニューロンは、入力されるデータに対して乗じられる
重みWiと閾値θとを有し、上記(1)弐に従い、各入
力データと重みの積の総和が閾値以上の時出力データ「
1」を出力し、この総和が閾値θよりも小さい時出力デ
ータr■,を出力する。
Each neuron has a weight Wi by which input data is multiplied and a threshold θ, and according to (1) 2 above, when the sum of the products of each input data and the weight is greater than or equal to the threshold, the output data “
1'', and when this sum is smaller than the threshold θ, output data r■, is output.

36 El 演)E ( A eB ) ハ、(AB+
AB) とfi開され、ニューラルレイヤ20において
、ニューロン21が(AB)の処理を行い、ニューロン
22?(AU)の処理を行う。また論理演算(CeD)
は、(CD+CI5)と展開され、ニューロン23が(
CD)の処理を行い、ニューロン24が(CIl5)の
処理を行う。
36 El performance) E (A eB) Ha, (AB+
AB) is opened, and in the neural layer 20, the neuron 21 processes (AB), and the neuron 22? (AU) is processed. Also logical operations (CeD)
is expanded as (CD+CI5), and neuron 23 is (
The neuron 24 processes (CI15).

すなわちニューロン21は、例えばW21=  1、W
2■−1、Wzz=O、W24=O、θ一lに設定され
、 A Wz+ + B Wzz + C Wz3+D W
ta≧1のとき出力データ「1」を出力する。ニューロ
ン22は例えばW2,= 1、W26=  l、W !
 ? = ’0、Wza=O、θ=1に設定され、 A Wzs+ B WZ&+ C w2?+ D W2
[1≧1のとき出力データ「1」を出力する。同様にし
てニューロン23、24の重みWLと閾値θが定められ
る。
That is, the neuron 21 has, for example, W21=1, W
2■-1, Wzz=O, W24=O, θ1 is set, A Wz+ + B Wzz + C Wz3+D W
When ta≧1, output data “1” is output. The neuron 22 is, for example, W2,=1, W26=l,W!
? = '0, Wza=O, θ=1, A Wzs+ B WZ&+ C w2? +D W2
[When 1≧1, output data “1”. Similarly, the weights WL and threshold values θ of the neurons 23 and 24 are determined.

ニューラルレイヤ30のニューロン31は、(AB+A
Er) (7)処理を行い、例えばW:u = 1 ,
Wzz=1、Wz3=O、W34=0、θ=1に設定さ
れ、ニューロン21、22、23、24の出力をそれぞ
れK,L,M,Nとすると、 ?W ff++ LWs■+MW3:I+ NW* 4
≧1の時、出力データ「1」を出力する。同様に、ニュ
ーロン33は、(CD+CD5)の処理を行い、ニュー
ロン23、24の出力の少なくとも一方が「1」の時、
出力データr1,を出力する。なおニューロン32、3
4の各重みW.は0に定められ、これらのニューロンは
実質的に作用しない。
The neurons 31 of the neural layer 30 are (AB+A
Er) (7) Perform the processing, for example, W:u = 1,
When Wzz=1, Wz3=O, W34=0, θ=1, and the outputs of neurons 21, 22, 23, and 24 are K, L, M, and N, respectively, ? W ff++ LWs■+MW3:I+ NW* 4
When ≧1, output data “1” is output. Similarly, the neuron 33 processes (CD+CD5), and when at least one of the outputs of the neurons 23 and 24 is "1",
Output data r1. Furthermore, neurons 32, 3
Each weight of 4 W. is set to 0, and these neurons have virtually no effect.

したがってニューロン31は(AeB)の結果を出力し
、ニューロン33は(CeD)の結果を出力する。
Therefore, neuron 31 outputs the result of (AeB), and neuron 33 outputs the result of (CeD).

ニューロン3l、32、33、34の出力をそれぞれE
,F,G,Hとすると、ニューラルレイヤ40のニュー
ロン41は(EG’)の処理を行い、またニューロン4
3は(EC)の処理を行う。すなわち、ニューロン41
において、例えばW41 =1、W4■=0、Wa3=
1、Waa=O、θ=1に設定され、 E Wa+ + F Wa■+GW41+HW44≧1
のとき出力データr1,を出力する。同様に、ニューロ
ン43は、例えばW45=1、W46=O、W47””
  l − W411= O、θ一lに設定され、EW
.へ+F Wab +G W47 + H W4e≧1
のとき出力データr1,を出力する。ニューロン42、
44の各重みWIはOに定められ、これらのニューロン
は実質的に作用しない。
The outputs of neurons 3l, 32, 33, and 34 are expressed as E
, F, G, H, the neuron 41 of the neural layer 40 processes (EG'), and the neuron 4
3 performs the processing of (EC). That is, neuron 41
For example, W41=1, W4■=0, Wa3=
1, Waa=O, θ=1, E Wa+ + F Wa■+GW41+HW44≧1
When , output data r1, is output. Similarly, the neuron 43 has, for example, W45=1, W46=O, W47""
l − W411=O, θ−l, EW
.. To +F Wab +G W47 + H W4e≧1
When , output data r1, is output. neuron 42,
Each of the 44 weights WI is set to O and these neurons have virtually no effect.

出力レイヤ90のニューロン91は、(EG+EC) 
の処理を行い、例えばWq+=I、Wqz=O、Wq3
=j,Wl=0、θ=1に設定され、ニューロン41、
42、43、44の出力をそれぞれP、Q..RS S
とすると、 P W91 + Q W92 + R Wqy +S 
W94≧1の時、出力データ「1」を出力する。ニュー
ロン92、93、94は実質的に作用しない。このよう
に使用目的が限定され、出力データ数が明確であるなら
ば実質的に作用しないニューロンは省略可能である。
The neuron 91 of the output layer 90 is (EG+EC)
For example, Wq+=I, Wqz=O, Wq3
=j, Wl=0, θ=1, neuron 41,
The outputs of 42, 43, and 44 are respectively P and Q. .. R.S.S.
Then, P W91 + Q W92 + R Wqy +S
When W94≧1, output data “1” is output. Neurons 92, 93, 94 have virtually no effect. If the purpose of use is thus limited and the number of output data is clear, neurons that do not substantially function can be omitted.

したがってニューロン91は、(Eel)の結果、すな
わち(AeB)e(CeD)の結果を出ノノする。
Therefore, the neuron 91 outputs the result of (Eel), that is, the result of (AeB)e(CeD).

論理演算(AeB)および(CeD)における出力デー
タの次数は、上述したように作用素「e(Eχ−OR)
」が2つの作用素rANDJと「ORJによって置き換
えられるので、それぞれ2である。したがって、論理演
算(AeB) e(CeD)における出力データの次数
は、4であり、この論理演算は、入力データと同数(4
個)のニューロンを有する4層のニューラルレイヤによ
り確実に処理される。
The order of output data in logical operations (AeB) and (CeD) is determined by the operator "e(Eχ-OR)" as described above.
" is replaced by two operators rANDJ and "ORJ, so they are each 2. Therefore, the order of the output data in the logical operation (AeB) e(CeD) is 4, and this logical operation has the same number of input data. (4
It is reliably processed by a 4-layer neural layer with 1) neurons.

第16図および第17図に、図形の端点を判断するデー
タ処理装置を示す。
FIGS. 16 and 17 show a data processing device for determining the end points of a figure.

図形の端点の七らえ方は、ここでは、第7図(a)に示
すような3×3コンポリューションにおいて、第7図(
b)(i)〜(νiii)のいずれかのパターンが生じ
たときに、中央画素(第7図(a)の画素E)は端点て
あるとする。この端点の判断は、中央画素以外の画素A
−D,F〜■のいずれか1つが図形濃度(例えば「1」
)であり、かつ中央画素Eが図形濃度であるときに「端
点」、それ以外のときに「端点でない」とする。
Here, how to arrange the end points of a figure is as shown in Fig. 7 (
b) It is assumed that when any of the patterns (i) to (viii) occurs, the central pixel (pixel E in FIG. 7(a)) is located at the end point. This end point is determined by pixel A other than the center pixel.
-D, F~■ Any one of figure density (for example, "1")
), and the center pixel E is defined as an "endpoint" when it has a graphic density, and otherwise as "not an endpoint".

この判断のためのニューラルネットワークは、例えば第
16図のように構成され、この図は本発明の第11実施
例を示す。このニューラル不ットワークは、9個のニュ
ーロン21〜29を有する第1のニューラルレイヤ20
と、9個のニューロン31〜39を有する第2のニュー
ラルレイヤ30と、9個のニューロン91〜99を有す
る出力レイヤ90とを備える。画素A〜■のデータは第
1のニューラルレイヤ20に入力される。
A neural network for this determination is configured, for example, as shown in FIG. 16, which shows an eleventh embodiment of the present invention. This neural network consists of a first neural layer 20 with nine neurons 21-29.
, a second neural layer 30 having nine neurons 31-39, and an output layer 90 having nine neurons 91-99. The data of pixels A to ■ are input to the first neural layer 20.

第1のニューラルレイヤ20のニューロン21は、画素
Eを除いた画素A〜■のうち、画素Aのみが「1」の時
、出力データrlJを出力する。
The neuron 21 of the first neural layer 20 outputs output data rlJ when only the pixel A is "1" among the pixels A to ■ excluding the pixel E.

同様に、ニューロン22、23、24、25、26、2
7、28は、それぞれ画素B,C,D,F,G,H,I
の1個のみが「1」の時、出力データ「1」を出力する
。したがって画素A−D,F〜■のいずれか1つが「l
」のとき、ニューロン21〜2日のいずれかが出力デー
タ「l」を出力する。一方、ニューロン29は、画素E
のデータをそのまま出力する。
Similarly, neurons 22, 23, 24, 25, 26, 2
7 and 28 are pixels B, C, D, F, G, H, and I, respectively.
When only one of them is "1", output data "1" is output. Therefore, any one of pixels A-D, F-■
”, one of neurons 21 to 2 outputs output data “l”. On the other hand, the neuron 29
Output the data as is.

第2のニューラルレイヤ30のニューロン31は、ニュ
ーロン2329の出力がそれぞれ「l」の時、すなわち
画素人とEがそれぞれ「1」の時、出力データ「1」を
出力する。同様に、ニューロン32〜38は、画素B(
!:Eが「1」の時、画素CとEが「1」の時、画素D
とEが「1」の時、画素FとEが「1」の時、画素Gと
Eが「IJO時、画素HとEが「l」の時、画素IとE
が「1」の時、それぞれ、出力データ「工」を出力する
。なおニューロン39は、この端点の判断処理に実譬的
に関与しない。
The neuron 31 of the second neural layer 30 outputs output data "1" when the output of the neuron 2329 is "l", that is, when the pixel and E are each "1". Similarly, neurons 32-38 are connected to pixel B (
! : When E is "1", pixel C and E are "1", pixel D
When and E are "1", when pixels F and E are "1", when pixels G and E are "IJO", when pixels H and E are "l", when pixels I and E
When is "1", output data "engine" is output respectively. Note that the neuron 39 is not actually involved in this end point determination process.

出力レイヤ90のニューロン91は、第2のニューラル
レイヤ30のニューロン31〜3日の少なくとも1つが
出力データ「1」を出力する時、すなわち第7図(b)
の(i) 〜(viii)のいずれかのパターンが生じ
た時、出力データ「1」を出力する。この時、中央画素
Eは端点てあると判断される。なおニューロン92〜9
9は、この端点の判断処理に実質的に関与しない。
The neuron 91 of the output layer 90 outputs the output data "1" when at least one of the neurons 31 to 3 of the second neural layer 30 outputs the output data "1", that is, as shown in FIG. 7(b).
When any of the patterns (i) to (viii) occurs, output data "1" is output. At this time, it is determined that the central pixel E is at the end point. Furthermore, neurons 92-9
9 is not substantially involved in this end point determination process.

ここで各画素データA−1をO次データと考えると、ニ
ューロン91の出力は3次データであり、端点の判断処
理には3段階の論理演算が施されている。つまり、ニュ
ーラルレイヤ20では、A〜D,F−1のうちの1つの
みが「l」であるか否かを判断するための論理積(例え
ばニューロン21では、(ABCI5FCRT)) が
とられる。ニューラルレイヤ30では、A−DSF−1
のうちの1つのみが「1」であり、かつEが「1」であ
るか否かを判断するための論理積(例えばニューロン3
工では、(A[DFC;F{T − E))がとられる
。ニューラルレイヤ90ではEが「1」であり、かつA
−D,F〜■のうちのいずれか1つ「1」であるという
論理和が判断される。
If each pixel data A-1 is considered to be O-order data, the output of the neuron 91 is cubic data, and three-stage logical operations are performed in the end point determination process. That is, in the neural layer 20, a logical product (for example, in the neuron 21, (ABCI5FCRT)) is taken to determine whether only one of A to D, F-1 is "l". In the neural layer 30, A-DSF-1
Only one of them is "1" and E is "1" (for example, neuron 3
In engineering, (A[DFC;F{T − E)) is taken. In the neural layer 90, E is "1" and A
A logical OR is determined that any one of -D, F to ■ is "1".

なお、この端点の判断処理に関し、ニューラルレイヤ3
0において、Eが「1」であり、かつA〜D,F−1の
うちのいずれか1つ「1」であるという論理和をとるこ
とができ、これにより、2層のニューラルレイヤによっ
て端点の判断処Elヲ行うこともできる。しかし、出力
データと入力データの次数の差が3の場合、高々3層の
ニューラルレイヤを設ければ、端点の判断処理を確実に
行うことができる。
Regarding this end point determination process, neural layer 3
0, E is "1" and any one of A to D, F-1 is "1", and by this, the end point is determined by two neural layers. It is also possible to make a judgment. However, if the difference in order between the output data and the input data is 3, the endpoint determination process can be performed reliably by providing at most three neural layers.

第17図は本発明の第12実施例を示す。この実施例に
おけるニューラルネットワークは、9個のニューロン2
1〜29を有する第1のニューラルレイヤ20と、9個
のニューロン31〜39を有スる第2のニューラルレイ
ヤ30と、9個のニューロン91〜99を有する出力レ
イヤ90とを備える。画素A−1のデータは第1のニュ
ーラルレイヤ20に入力される。
FIG. 17 shows a twelfth embodiment of the invention. The neural network in this example consists of 9 neurons 2
A first neural layer 20 having neurons 1 to 29, a second neural layer 30 having nine neurons 31 to 39, and an output layer 90 having nine neurons 91 to 99. The data of pixel A-1 is input to the first neural layer 20.

第1のニューラルレイヤ20のニューロン2lは、画素
A−D,F−Iのうちの8個以上が「1」の時、出力デ
ータ「1」を出力する。ニューロン22は、画素A−D
,F−1のうちの7個以上が「1」の時、出力データ「
1」を出力する。同様に、ニューロン23、24、25
、26、27、28は、それぞれ、画素A−D..F〜
■のうちの6個以上、5個以上、4個以上、3個以上、
2個以上、および1個以上が「1」の時、出力データ「
1」を出力する。ニューロン29は画素Eのデータをそ
のまま出力する。
The neuron 2l of the first neural layer 20 outputs output data "1" when eight or more of the pixels A-D and F-I are "1". The neuron 22 has pixels A-D.
, F-1, when 7 or more of them are "1", the output data "
1" is output. Similarly, neurons 23, 24, 25
, 26, 27, 28 are pixels A-D. .. F~
6 or more, 5 or more, 4 or more, 3 or more of ■,
When two or more and one or more are "1", the output data "
1" is output. Neuron 29 outputs the data of pixel E as is.

第2のニューラルレイヤ30のニューロン31は、ニュ
ーラルレイヤ20のニューロン21〜2日のうちニュー
ロン28のみが「1jを出力する時、出力データ「1」
を出力する。すなわち、ニューロン31は、画素A〜D
,F〜丁のうちの1個のみが「1」の時、出力データ「
1」を出力する。ニューロン32は、画素Eのデータを
そのまま出力する。なおニューロン33〜39は、この
端点の判断処理に実質的に関与しない。
The neuron 31 of the second neural layer 30 outputs the output data "1" when only the neuron 28 among the neurons 21 to 2 of the neural layer 20 outputs "1j".
Output. That is, the neuron 31 has pixels A to D.
, F to D is "1", the output data "
1" is output. The neuron 32 outputs the data of the pixel E as is. Note that the neurons 33 to 39 are not substantially involved in this end point determination process.

出力レイヤ90のニューロン91は、ニューロン3l、
32が共に「1」を出力するか否かを判断するために論
理積をとり、画素A〜D,F〜■のうちの1つのみが「
1」であり、かつEが「l」である時、出力データ「1
」を出力する。なおニューロン92〜99は、この端点
の判断処理に実質的に関与しない。
The neurons 91 of the output layer 90 are neurons 3l,
32 to determine whether they both output "1" or not, and only one of the pixels A to D, F to ■ outputs "1".
1” and E is “l”, the output data is “1”.
" is output. Note that the neurons 92 to 99 are not substantially involved in this end point determination process.

しかして、この実施例において、3層のニューラルレイ
ヤによって、端点データが判断されている。
Therefore, in this embodiment, end point data is determined by three neural layers.

上記第7〜第12実施例において、データの次数はその
データに施された処理内容の数であり、各処理はそれぞ
れのニューラルレイヤによって行われていた。ここで処
理内容の例としては、論理演算子(17)rAND,、
rORJ、rNANDJ、rNOR,であり、rEX−
ORJおよびrEX−NORJ等の場合にはrAND,
あるいは「OR」に変換されなければならない。これは
、「EX−OR,等はひとつのニューラルレイヤによっ
ては処理され得ないからである。
In the seventh to twelfth embodiments described above, the order of data is the number of processes performed on the data, and each process is performed by a respective neural layer. Here, as an example of the processing content, the logical operator (17) rAND, .
rORJ, rNANDJ, rNOR, and rEX-
In the case of ORJ and rEX-NORJ, rAND,
Or it must be converted to "OR". This is because "EX-OR, etc. cannot be processed by one neural layer.

なお、処理内容は論理演算子によって表現されるものに
限定されず、出力データの性質によって定められる。
Note that the processing content is not limited to what is expressed by logical operators, but is determined by the nature of the output data.

(発明の効果) 以上のように本発明は、画像処理部において抽出された
画像の特徴データをニューラルネットワークによって処
理し、画像認識を行うように構成されたものである。し
たがって、ニューラルネットワークの自己学習機能によ
り画像認識の性能が向上せしめられ、また連想機能によ
り画像認識の適用範囲が拡大する。しかして本発明によ
れば、多様な画像認識が可能であり、かつ認識率を高め
得る画像認識システムが得られるという効果が得られる
(Effects of the Invention) As described above, the present invention is configured to process feature data of an image extracted by an image processing section using a neural network and perform image recognition. Therefore, the self-learning function of the neural network improves the performance of image recognition, and the associative function expands the scope of image recognition. Therefore, according to the present invention, it is possible to obtain an image recognition system that is capable of performing various image recognition and can increase the recognition rate.

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

第1図は本発明の実施例を適用した画像認識システムを
示すブロック図、 第2図は特徴処理部を示すブロック図、第3図は認識部
を示すブロック図、 第4図は一般的なニューロンを示す概念図、第5図は一
般的なニューラルレイヤを示す概念図、 第6図(a)は比較例を示す概念図、 第6図(b)は他の比較例を示す概念図、第6図(C)
は本発明のニューラルネットワークの第1実施例を示す
概念図、 第7図(a)は図形処理における3x3コンボリューシ
ョンを示す図、 第7図(b)は各画素の図形濃度の状態を示す図、 第7図(C)はニューラルネットワークの第2実施例で
あって、図形処理における端点を判断する構成の例を示
す概念図、 第8図(a)はニューラルネットワークの第3実施例を
示す概念図、 第8図(b)はニューラルネットワークの第4実施例を
示す概念図、 第9図(a)は比較例を示す概念図、 第9図(b)はニューラルネソトワークの第5実施例を
示す概念図、 第10図(a)は比較例を示す概念図、第10図(b)
はニューラルネットワークの第6実施例を示す概念図、 第11図はモードIの学習を行うデータ処理装置の概念
図、 第12図はモード■の学習を行うデータ処理装置の概念
図、 第13図は重みの時間的変化を示すグラフ、第14図(
a)はニューラルネットワークの第7実施例を示す概念
図、 第14図(b)はニューラルネットワークの第8実施例
を示す概念図、 第14図(C)はニューラルネットワークの第9実施例
を示す概念図、 第15図はニューラルネットワークの第10実施例を示
す概念図、 第16図はニューラルネットワークの第11実施例を示
す概念図、 第17図はニューラルネットワークの第12実施例を示
す概念図である。 20、30、40、50、90 ・・・ニューラルレイヤ 21〜24、31〜34、41、42 91〜93・・・ニューロン 100・・・認識部 200・・・入力部 300・・・画像処理部 第 図 缶T 図 第 図 (i) (iV) (ii) (v) 第 図 (市) (vi) 第 図 第 図 缶j 図 (a) (b) (C) 第 図
Fig. 1 is a block diagram showing an image recognition system to which an embodiment of the present invention is applied, Fig. 2 is a block diagram showing a feature processing section, Fig. 3 is a block diagram showing a recognition section, and Fig. 4 is a general A conceptual diagram showing a neuron, FIG. 5 is a conceptual diagram showing a general neural layer, FIG. 6(a) is a conceptual diagram showing a comparative example, FIG. 6(b) is a conceptual diagram showing another comparative example, Figure 6 (C)
is a conceptual diagram showing the first embodiment of the neural network of the present invention, FIG. 7(a) is a diagram showing 3x3 convolution in graphic processing, and FIG. 7(b) is a diagram showing the state of graphic density of each pixel. , FIG. 7(C) is a second embodiment of the neural network, and is a conceptual diagram showing an example of a configuration for determining end points in graphic processing. FIG. 8(a) is a third embodiment of the neural network. Conceptual diagram, Figure 8(b) is a conceptual diagram showing the fourth embodiment of the neural network, Figure 9(a) is a conceptual diagram showing a comparative example, Figure 9(b) is the fifth implementation of the neural network. Conceptual diagram showing an example; Figure 10(a) is a conceptual diagram showing a comparative example; Figure 10(b)
is a conceptual diagram showing the sixth embodiment of the neural network; FIG. 11 is a conceptual diagram of a data processing device that performs mode I learning; FIG. 12 is a conceptual diagram of a data processing device that performs mode ■ learning; is a graph showing the temporal change in weight, Figure 14 (
a) is a conceptual diagram showing the seventh embodiment of the neural network; FIG. 14(b) is a conceptual diagram showing the eighth embodiment of the neural network; FIG. 14(C) is a conceptual diagram showing the ninth embodiment of the neural network. Conceptual diagram; Figure 15 is a conceptual diagram showing the tenth embodiment of the neural network; Figure 16 is a conceptual diagram showing the eleventh embodiment of the neural network; Figure 17 is a conceptual diagram showing the twelfth embodiment of the neural network. It is. 20, 30, 40, 50, 90... Neural layer 21-24, 31-34, 41, 42 91-93... Neuron 100... Recognition section 200... Input section 300... Image processing Figure Figure Can T Figure Figure (i) (iV) (ii) (v) Figure (City) (vi) Figure Figure Can j Figure (a) (b) (C) Figure

Claims (1)

【特許請求の範囲】[Claims] (1)画像を入力する入力部と、 入力された画像を処理しかつ特徴を抽出する画像処理部
と、 入力されたデータに所定の重みを乗じたものの総和と閾
値との比較結果に応じたデータを出力するニューロンが
並列的に設けられるとともに、上記画像処理部から得ら
れた抽出データの抽象度に応じた層構造のニューラルレ
イヤを有し、上記抽出データに基づいて画像認識を行う
認識部とを備えた画像認識システム。
(1) An input unit that inputs images; an image processing unit that processes the input images and extracts features; A recognition unit that includes neurons that output data in parallel and has a neural layer with a layered structure depending on the level of abstraction of the extracted data obtained from the image processing unit, and performs image recognition based on the extracted data. An image recognition system equipped with
JP1112819A 1989-04-05 1989-05-06 Picture recognizing system Pending JPH02292684A (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP1112819A JPH02292684A (en) 1989-05-06 1989-05-06 Picture recognizing system
DE69031621T DE69031621T2 (en) 1989-05-06 1990-04-25 DATA HANDLING SYSTEM
PCT/JP1990/000535 WO1990013874A1 (en) 1989-05-06 1990-04-25 Data processing system
AT90906368T ATE159601T1 (en) 1989-05-06 1990-04-25 DATA TREATMENT SYSTEM
EP90906368A EP0457909B1 (en) 1989-05-06 1990-04-25 Data processing system
US08/461,538 US5553196A (en) 1989-04-05 1995-06-05 Method for processing data using a neural network having a number of layers equal to an abstraction degree of the pattern to be processed

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1112819A JPH02292684A (en) 1989-05-06 1989-05-06 Picture recognizing system

Publications (1)

Publication Number Publication Date
JPH02292684A true JPH02292684A (en) 1990-12-04

Family

ID=14596329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1112819A Pending JPH02292684A (en) 1989-04-05 1989-05-06 Picture recognizing system

Country Status (1)

Country Link
JP (1) JPH02292684A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021507383A (en) * 2017-12-22 2021-02-22 アリババ グループ ホウルディング リミテッド Integrated memory structure for neural network processors

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021507383A (en) * 2017-12-22 2021-02-22 アリババ グループ ホウルディング リミテッド Integrated memory structure for neural network processors

Similar Documents

Publication Publication Date Title
Hollstein et al. Computer-aided design of fuzzy systems based on generic VHDL specifications
Krestinskaya et al. Feature extraction without learning in an analog spatial pooler memristive-cmos circuit design of hierarchical temporal memory
Baranyi et al. Complexity reduction of singleton based neuro-fuzzy algorithm
Maximov et al. Multi-valued neural networks I: a multi-valued associative memory
Solovyeva Types of recurrent neural networks for non-linear dynamic system modelling
Kumara et al. Use of associative memory and self-organization in conceptual design
Muezzinoglu et al. RBF-based neurodynamic nearest neighbor classification in real pattern space
Bruzzone et al. Structured neural networks for signal classification
Bodyanskiy et al. Evolving hybrid GMDH-Neuro-Fuzzy network and its applications
JPH02292684A (en) Picture recognizing system
WO2021134519A1 (en) Device and method for realizing data synchronization in neural network inference
JPH02307168A (en) Image processor
Bodyanskiy et al. Evolving GMDH-neuro-fuzzy system with small number of tuning parameters
Gai et al. Computer simulations of association-based image search mechanisms basing on theory of active perception
El-Bakry et al. Simplification and implementation of boolean functions
JPH02301876A (en) Picture processor
JPH02300868A (en) Picture processing device
Madani et al. Self-organizing multi-modeling: A different way to design intelligent predictors
Murakami et al. A comparative study of the IDS method and feedforward neural networks
EP0391404B1 (en) Data processing system
Esmi et al. A fuzzy associative memory based on Kosko's subsethood measure
JPH0395664A (en) Neural net device
Domen et al. Implementation of Massive Artificial Neural Networks with Field-programmable Gate Arrays
Kotsovsky et al. Spectral Approach to Solving the Problem of Bithreshold Separability
JPH0855098A (en) Neural network classifier and neural network configuration method