DE4307027C2 - Memory-oriented neural network - Google Patents
Memory-oriented neural networkInfo
- Publication number
- DE4307027C2 DE4307027C2 DE4307027A DE4307027A DE4307027C2 DE 4307027 C2 DE4307027 C2 DE 4307027C2 DE 4307027 A DE4307027 A DE 4307027A DE 4307027 A DE4307027 A DE 4307027A DE 4307027 C2 DE4307027 C2 DE 4307027C2
- Authority
- DE
- Germany
- Prior art keywords
- input
- neural network
- units
- layer
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000013528 artificial neural network Methods 0.000 title claims description 45
- 239000000523 sample Substances 0.000 claims description 38
- 210000002569 neuron Anatomy 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 9
- 238000000034 method Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 230000009467 reduction Effects 0.000 description 6
- 238000005070 sampling Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000001537 neural effect Effects 0.000 description 3
- 238000003909 pattern recognition Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Description
Die Erfindung bezieht sich auf ein speicherorientiertes neuronales Netz mit einer als Verzeigerung bezeichneten Adressierung der den Ausgängen zugeordneten Einheiten, die auch als Units bezeichnet werden.The invention relates to a memory-oriented neural network with an as Disposal designated addressing of the exits assigned units, also referred to as units become.
Zur Auffindung von Lösungen für Probleme allgemeiner Art werden neben den inzwischen als klassisch bezeichneten Rechenmaschinen, die nach dem v. Neumann-Prinzip arbeiten, zunehmend die Einsatzmöglichkeiten von neuronalen Netzen untersucht. Während die klassische Rechenmaschine gemäß einem vorgegebenen Algorithmus eine eindeutige Lösung errechnet, wird mit dem neuronalen Netz in Anlehnung an die physiologische Informationsverarbeitung nach dem Ähn lichkeitsprinzip eine Lösung ermittelt, die in einer engen Beziehung mit einer für ein ähnliches Problem bereits be kannten Lösung steht. Ein Einsatzgebiet für neuronale Netze ist beispielsweise durch die maschinelle Muster erkennung gegeben, bei der der Einsatz von klassischen Rechenmaschinen an Grenzen stößt. Charakteristisch für ein neuronales Netz ist eine massive, parallel erfolgende Verarbeitung von Informationen durch eine Vielzahl von Neuronen. Zur Herbeiführung einer Lösung müssen eine große Anzahl von Neuronen untereinander in Verbindung treten. Das in Verbindungtreten von Neuronen, das im übrigen bei neuronalen Netzen mit Konnektivität bezeichnet wird, bringt insbesondere dann große Schwierigkeiten, wenn sie in exzessiver Weise mittels Verdrahtung ausgeführt wird.To find solutions to general problems are now classed as classic Calculating machines, which after the v. Neumann principle work, increasingly the possibilities of using neural networks examined. While the classic calculator according to a clear solution to a given algorithm calculated, is based on the neural network the physiological information processing after the similar principle of a solution that works in a narrow Relationship with one already for a similar problem known solution. A field of application for neural Nets is, for example, due to the machine pattern given recognition when using classic Calculating machines reach their limits. Characteristic of a neural network is a massive, parallel one Processing information through a variety of Neurons. To find a solution you need a big one Number of neurons connect with each other. The connection of neurons, the rest of the neural networks with connectivity is called is particularly difficult if it is carried out excessively by means of wiring.
In Electronics World News, Dec. 10, 1990, Seite 6, 8 ist unter der Überschrift "Hitachi′s Neural Computer" ein von J. Boyd verfaßter Artikel erschienen, in dem eine 1152 Neuronen aufweisende speicherorientierte Spezial maschine vorgestellt wird. Dem Artikel ist zu entnehmen, daß bei dieser Spezialmaschine die Neuronen in Software adressierbar sind.In Electronics World News, Dec. 10, 1990, pages 6, 8 under the heading "Hitachi’s Neural Computer" Article written by J. Boyd in which one Memory-oriented special with 1152 neurons machine is presented. The article shows that with this special machine the neurons in software are addressable.
Die Erfindung geht von der Erkenntnis aus, daß bei Vor handensein einer negativen Grundeinstellung innerhalb des Netzes lediglich positive Gewichtungen eingestellt werden müssen.The invention is based on the knowledge that in front existence of a negative basic attitude within the Network only positive weights can be set have to.
Der Erfindung liegt das Problem zugrunde, ein neuronales Netz anzugeben, bei dem die Verbindungen zwischen den unterschiedlichen Schichten zugehörigen Einheiten unter Vermeidung einer verbindungsindividuellen Verdrahtung erfolgt und bei dem eine verringerte Anzahl von Verbindungen erforderlich ist.The problem underlying the invention is a neural one Specify the network in which the connections between the units belonging to different layers Avoiding connection-specific wiring takes place and in which a reduced number of connections is required.
Die Erfindung ist gegeben durch ein speicherorientiertes neuronales Netz zur Klassifizierung von einer Mehrzahl von Eingangssonden zugeführten Eingangsmustern nach Ausgangsbedeutungen, bei demThe invention is given by a memory-oriented neural network Classification of a plurality of input probes input patterns supplied according to output meanings, at the
- - eine Mehrzahl von Neuronen repräsentierende Einheiten in einer Ausgangsschicht und gegebenenfalls in einer Zwischenschicht angeordnet sind,a plurality of units representing neurons in an initial layer and optionally an intermediate layer are arranged
- - die Einheiten der Ausgangsschicht jeweils einer Ausgangsbedeutung zugeordnet sind,- The units of the starting layer each have an initial meaning assigned,
- - jede Einheit der Ausgangsschicht eine festgelegte Anzahl von Speicherelementen umfassende Speicherglieder aufweist,- each unit of the starting layer a fixed number has memory elements comprising memory elements,
- - jedes Speicherglied eine auf eine bestimmte Eingangssonde in einer Eingangsschicht verweisende Adresse und eine Gewichtung dieser Adresse aufweist.- Each storage element one on a specific input probe address referencing in an input layer and a weighting thereof Address.
Die Erfindung bringt gegenüber einem neuronalen Netz, bei dem die Konnektivität durch Verdrahtung hergestellt wird, den Vorteil einer größeren Flexibilität beim Einrichten und Ändern von Verbindungen zwischen Neuronen mit sich. Darüber hinaus sind beim Anmeldungsgegenstand keine nega tiven Werte von Gewichtungen und Schwellenwerte der netz zugehörigen Neuronen erforderlich, wodurch sich die Hand habbarkeit des Netzes insgesamt vereinfacht.The invention teaches against a neural network which is connected through wiring, the advantage of greater flexibility when setting up and changing connections between neurons. In addition, there are no nega for the subject of registration tive values of weightings and threshold values of the network associated neurons are required, making the hand overall network availability simplified.
Die Maßnahme nach Anspruch 3 erlaubt eine Reduktion der Zahl der Verbindungen bis auf die tatsächlich erforder liche Anzahl von Verbindungen, wobei mit der Reduktion der Anzahl der Verbindungen eine entsprechende Verringe rung des Bedarfs an Speicherplätzen einhergeht.The measure according to claim 3 allows a reduction in Number of connections apart from the actually required Liche number of connections, with the reduction a corresponding reduction in the number of connections storage space requirements.
Auch die Maßnahme nach Anspruch 4 bringt eine Verringe rung der Anzahl der Verbindungen mit sich, wobei wiederum eine entsprechende Verringerung des Bedarfs an Speicher plätzen erzielt wird.The measure according to claim 4 also brings a reduction tion of the number of connections with it, again a corresponding reduction in the need for storage places is achieved.
Die Erfindung wird nun in einem zum Verständnis erforder lichen Umfang als Ausführungsbeispiel beschrieben. Dabei zeigtThe invention will now be required in order to be understood Lichen scope described as an embodiment. It shows
Fig. 1 die Struktur eines einfachen herkömmlichen neurona len Netzes, bei dem die Einheiten untereinander ver drahtet sind, FIG. 1 shows the structure of a simple conventional neurona len network in which the units are wired to each other ver,
Fig. 2 die Struktur des erfindungsgemäßen neuronalen Net zes, Fig. 2 zes the structure of the neural net according to the invention,
Fig. 3 die Struktur einer erfindungsgemäßen Einheit der Ausgangsschicht, Fig. 3 shows the structure of a unit according to the invention the output layer,
Fig. 4 ein einstufiges neuronales Netz, dessen Eingänge teilweise sich gegenseitig ausschließende aktive Zustände einnehmen, Fig. 4 is a single-stage neural network whose inputs partly to occupy mutually exclusive active states,
Fig. 5 ein mehrstufiges neuronales Netz, dessen Eingänge teilweise sich gegenseitig ausschließende aktive Zustände einnehmen. Fig. 5 is a multi-stage neural network whose inputs partly to occupy mutually exclusive active states.
Fig. 1 zeigt ein einfaches, herkömmliches, neuronales Netz zur Klassifizierung, d. h. Decodierung, von Eingangssonden a, b zugeführten digitalen Eingangsmustern. Eine Eingangs sonde möge einen aktiven Zustand einnehmen, wenn ihr ein gangsseitig ein hoher Pegel zugeführt wird bzw. einen dis aktiven Zustand einnehmen, wenn ihr eingangsseitig ein niedriger Pegel zugeführt wird. Die Eingangssonden sind jeweils mit sämtlichen Einheiten der Eingangsschicht ES verdrahtet. Im übrigen repräsentieren die Einheiten die Neuronen des neuronalen Netzes. Eine Eingangssonde, die gerade einen aktiven Zustand aufweist, gibt also ein den aktiven Zustand bezeichnendes Signal an sämtliche Einheiten der Eingangsschicht ab. Die den Einheiten der Eingangsschicht eingangsseitig zugeführten Signale werden gewichtet. Die Gewichtung kann positiv, null oder negativ sein. In der Figur sind die Gewichtungen an den Verbindungsleitungen eingetragen, wobei Verbindungsleitungen mit der Gewichtung null entfallen. In den Einheiten der Eingangsschicht wird eine Summation der gewichteten Eingangssignale vorgenommen. Überschreitet das jeweilige Summationsergebnis eine individuelle, in der Einheit eingetragene Schwelle, so gibt die Einheit selbst ein einen aktiven Zustand bezeichnendes Ausgangssignal ab. Die Einheiten sind also einfache Schaltungseinheiten mit der Funktion von Schwellwertgattern; sie nehmen ausgangsseitig einen aktiven Zustand ein, wenn die Summation der eingangsseitig geführten Gewichtungen ihre individuelle Schwelle überschreitet. In Fig. 1 geben die Einheiten der Eingangsschicht ihre Ausgangssignale über Verbindungsleitungen mit daran eingetragenen Gewichtungen an die Einheiten der Ausgangsschicht ab. Das in Fig. 1 dargestellte neuronale Netz vermag eine Klassifizierung von eingangsseitig zugeführten Mustern, "a allein", "b allein" oder "a und b gemeinsam" vorzunehmen. Das neuronale Netz nach Fig. 1 erbringt beispielsweise an dem Ausgang "a allein" keinen aktiven Zustand, wenn der Ausgang "a und b gemeinsam" einen aktiven Zustand aufweist. Fig. 1 shows a simple, conventional neural network for classification, ie decoding of input probes a, b supplied digital input patterns. An input probe may assume an active state if a high level is supplied to it on the input side or assume a disactive state if a low level is supplied to it on the input side. The input probes are each wired to all units of the input layer ES. Otherwise, the units represent the neurons of the neural network. An input probe which is currently in an active state therefore emits a signal which designates the active state to all units of the input layer. The signals fed to the units of the input layer on the input side are weighted. The weighting can be positive, zero or negative. The weights on the connecting lines are entered in the figure, connecting lines with the weighting zero being omitted. A summation of the weighted input signals is carried out in the units of the input layer. If the respective summation result exceeds an individual threshold entered in the unit, the unit itself emits an output signal which indicates an active state. The units are therefore simple circuit units with the function of threshold gates; they assume an active state on the output side when the summation of the weights carried out on the input side exceeds their individual threshold. In FIG. 1, the units of the input layer output their output signals to the units of the output layer via connecting lines with weights entered thereon. The neural network shown in FIG. 1 is able to classify patterns supplied on the input side, “a alone”, “b alone” or “a and b together”. The neural network according to FIG. 1, for example, does not have an active state at the output “a alone” if the outputs “a and b together” have an active state.
Die Struktur eines neuronalen Netzes entsprechend der Struktur des in Fig. 1 dargestellten neuronalen Netzes wird in der Fachliteratur allgemein als Perceptron be zeichnet. Bei dem in Fig. 1 dargestellten neuronalen Netz sind die Gewichtungen und die Schwellen vorgegeben. Bei massiv parallel verarbeitenden neuronalen Netzen mit einer Vielzahl von Einheiten können die Gewichtungen und die Schwellen nicht ohne weiteres von vorneherein vorgegeben werden, sie müssen vielmehr im Zuge einer Trainingsphase mit verrauschten Eingangsmustern adaptiv dimensioniert werden. Zur adaptiven Dimensionierung werden die Einheiten nach vorgegebenen Regeln prophylaktisch (vorsorglich) untereinander verbunden. Dem neuronalen Netz werden eingangsseitig verrauschte Muster zugeführt und die jeweiligen einen aktiven Zustand einnehmenden Ausgangsbedeutungen beobachtet. In Anlehnung an eine von Donald Hebb in den 40er Jahren für physiologisches Lernen postulierten Regel werden bei einem mit "back-propagation" bezeichneten Trainingsverfahren Gewichtungen, die zur Aktivierung der gewünschten Ausgangsbedeutung geführt haben, verstärkt und Gewichtungen, die zur Aktivierung von nicht-gewünschten Ausgangsbedeutungen geführt haben, geschwächt.The structure of a neural network corresponding to the structure of the neural network shown in Fig. 1 is generally referred to in the literature as a perceptron. In the neural network shown in FIG. 1, the weightings and the thresholds are predetermined. In the case of massively parallel processing neural networks with a large number of units, the weightings and the thresholds cannot be predefined from the outset, they must rather be adaptively dimensioned in the course of a training phase with noisy input patterns. For adaptive dimensioning, the units are connected prophylactically (as a precautionary measure) to one another according to predetermined rules. Noisy patterns are fed to the neural network on the input side and the respective output meanings which assume an active state are observed. In line with a rule postulated by Donald Hebb for physiological learning in the 1940s, in a training method called "back-propagation", weights that led to the activation of the desired starting meaning are increased and weights that activated the undesired starting meaning have weakened.
Fig. 2 zeigt die Struktur eines neuronalen Netzes. Eine Vielzahl von Neuronen repräsentierende Einheiten sind in mehreren Schichten angeordnet. In Fig. 2 sind lediglich eine Eingangsschicht ES und eine Ausgangs schicht AS angedeutet. Zwischen der Eingangsschicht und der Ausgangsschicht können gegebenenfalls eine Anzahl von nicht näher dargestellten Zwischenschichten vorgesehen sein. Die Eingangssonden a . . . n sind jeweils mit einer Einheit der Eingangsschicht verbunden. Im Ausführungsbeispiel mögen eine Anzahl von 10 000 Eingangssonden mit den Bildabtastpunkten eines Feldes von 100 Bildabtastpunkten zum Quadrat verbunden sein. Dem Feld mögen unterschiedliche Bilder, wie z. B. die geometrischen Bilder Kreis, Dreieck, Rechteck, zugeführt werden. Die Eingangssonden mögen bei Überschreiten einer vorgegebenen Helligkeitsschwelle des zugehörigen Bildabtastpunktes einen aktiven Zustand ein nehmen. Eine jeweilige Verteilung von aktiven Eingangssonden bildet ein Muster. Die Einheiten der Ausgangsschicht sind jeweils einer der Ausgangsbedeutungen 1 . . . m zugeord net. Im Ausführungsbeispiel mögen 100 Ausgangsbedeutungen unterschieden werden. Fig. 2 shows the structure of a neural network. A multitude of units representing neurons are arranged in several layers. In Fig. 2 only an input layer ES and an output layer AS are indicated. A number of intermediate layers, not shown, can optionally be provided between the input layer and the output layer. The input probes a. . . n are each connected to a unit of the input layer. In the exemplary embodiment, a number of 10,000 input probes may be connected to the image sampling points of a field of 100 image sampling points squared. The field likes different images, such as B. the geometric images circle, triangle, rectangle, are supplied. The input probes may assume an active state when a predetermined brightness threshold of the associated image sampling point is exceeded. A respective distribution of active input probes forms a pattern. The units of the starting layer are each one of the starting meanings 1. . . m assigned. In the exemplary embodiment, 100 initial meanings can be distinguished.
Erfindungsgemäß weist das neuronale Netz eine Adressierung der Einheiten der Ausgangsschicht auf. Jede Einheit der Ausgangsschicht kann eine Adressierung jeder der Eingangssonden vornehmen. Zu jeder Adressierung tritt die Möglich keit einer Gewichtung hinzu.According to the invention, the neural network has addressing of the units of the starting layer. Every unit of Output layer can address each of the input probes make. The possibility occurs for each addressing weighting.
Fig. 3 zeigt die Struktur einer erfindungsgemäßen Einheit der Ausgangsschicht. Die Einheiten sind jeweils durch einen Speicherbereich einer Speichereinrichtung gegeben. Die Speichereinrichtung kann prinzipiell durch jede zur Aufnahme von Binärzeichen geeignete Speichereinrichtung gegeben sein, insbesondere jedoch durch einen, einen wahlfreien Zugriff aufweisenden Speicher, der in der Fachwelt allgemein mit RAM (random access memory) bezeichnet wird. Der Speicherbereich einer Einheit der Ausgangsschicht ist in eine Mehrzahl von Speichergliedern E1 . . . Ed gegliedert. Dabei möge die Anzahl der Speicherglieder etwas größer gewählt werden als die zu erwartende Anzahl von Eingangssonden, die bei Zuführung eines Bildes einen aktiven Zustand einnehmen. Bei 10 000 Eingangssonden, wie im Ausführungsbeispiel und in der Erwartung von 10% aktiver Eingangssonden bei Zuführung eines Bildes erscheint also eine Anzahl von 1200 Speichergliedern für eine Einheit der Ausgangsschicht als ausreichend. Jedes Speicherglied enthält ein Adressenfeld zur Aufnahme einer als Zeiger bezeichneten Adresse zur eindeutigen Adressierung einer jeweiligen Eingangssonde. Im Ausführungsbeispiel weist die Adresse zur eindeutigen Adressierung von 1000 Eingangssonden eine Wortbreite von 14 bit auf. Zusätzlich zu dem Adressenfeld enthält jedes Speicherglied einen Abschnitt zur Aufnahme eines binären Wertes für eine adressenzugehörige Gewichtung. Der Abschnitt zur Aufnahme eines Wertes für die Gewichtung möge ein Binärwort mit 6 bit Breite aufnehmen können. Die Gewichtung kann also 64 unterschiedliche Werte annehmen. Wenn die räumliche Lage des Ausgangsanschlusses einer Einheit der Ausgangsschicht nicht zur Zuordnung der betreffenden Ausgangsbedeutung herangezogen werden soll, so kann jede Einheit der Ausgangsschicht einen zusätzlichen Abschnitt AB zur Bezeichnung der zugehörigen Ausgangsbedeutung erhalten. Zur eindeutigen Unterscheidung von im Ausführungsbeispiel 100 Ausgangsbedeutungen genügen für jede Einheit der Ausgangsschicht sieben Speicherelemente zur Aufnahme eines 7 bit langen Binärwortes. Im Ausführungsbeispiel beträgt der Speicherbedarf für 100 Einheiten der Ausgangsschicht mit jeweils 1200 Speichergliedern, die jeweils 20 bit aufweisen, ca. 2,4 Mbit. Wäre beim Ausführungsbeispiel für jede Ein gangssonde ein Speicherglied in jeder Einheit der Ausgangsschicht vorgesehen, so ergäbe sich ein gesamter Speicherbedarf von ca. 20 Mbit. Fig. 3 shows the structure of a unit according to the invention the output layer. The units are each given by a memory area of a memory device. In principle, the memory device can be provided by any memory device suitable for receiving binary characters, in particular, however, by a memory having random access, which is generally referred to in the technical field as RAM (random access memory). The memory area of a unit of the output layer is in a plurality of memory elements E1. . . Ed articulated. The number of memory elements should be chosen somewhat larger than the expected number of input probes, which assume an active state when an image is fed. In the case of 10,000 input probes, as in the exemplary embodiment and in the expectation of 10% active input probes when an image is supplied, a number of 1200 storage elements appears to be sufficient for one unit of the output layer. Each memory element contains an address field for receiving an address called a pointer for uniquely addressing a respective input probe. In the exemplary embodiment, the address for uniquely addressing 1000 input probes has a word length of 14 bits. In addition to the address field, each memory element contains a section for receiving a binary value for an address-related weighting. The section on the inclusion of a value for the weighting may be able to accommodate a binary word with a width of 6 bits. The weighting can therefore take 64 different values. If the spatial position of the output connection of a unit of the output layer is not to be used to assign the relevant output meaning, then each unit of the output layer can be given an additional section AB to designate the associated output meaning. To clearly differentiate between 100 output meanings in the exemplary embodiment, seven memory elements are sufficient for each unit of the output layer to hold a 7-bit binary word. In the exemplary embodiment, the memory requirement for 100 units of the output layer, each with 1200 memory elements, each having 20 bits, is approximately 2.4 Mbit. If, in the exemplary embodiment, a memory element was provided in each unit of the output layer for each input probe, the total memory requirement would be approximately 20 Mbit.
Um mit einem neuronalen Netz Klassifizierungsaufgaben aus führen zu können, sind in einer Trainingsphase, wie be reits erwähnt, die Gewichtungen voreinzustellen. Zunächst wird eine Ausgangsbedeutung und damit eine Einheit der Aus gangsschicht vorgegeben. Dem neuronalen Netz werden ein gangsseitig verrauschte Trainingsmuster angeboten. Ein verrauschtes Trainingsmuster kann dadurch gegeben sein, daß dem Feld von Bildabtastpunkten ein Bild unter unter schiedlichen Winkeln zugeführt wird und/oder daß das Bild den Eingangssonden mit unterschiedlichen Intensitäten, z. B. Beleuchtungsintensitäten, zugeführt werden. Für jede durch ein jeweiliges Trainingsmuster in den aktiven Zu stand versetzte Eingangssonde wird in der betreffenden Einheit der Ausgangsschicht in dem der betrachteten Eingangssonde zugeordneten Speicherglied der Wert der Gewichtung inkrementiert. Nach der Zuführung einer Mehrzahl von Trainingsmustern sind die Gewichtungen in den Speichergliedern der Einheiten der Ausgangsschicht voreingestellt. Die Anzahl der Trainingsvorgänge für jedes Eingangsmuster ist durch die Anzahl der Gewichtungsstufen begrenzt. Im Ausführungsbeispiel wird der maximale Wert der Gewichtung von 64 frühestens nach 64 Trainingsvorgängen erreicht. Für weitere Ausgangsbedeutungen schließen sich entsprechende Trainingsvorgänge an. Im übrigen brauchen die Trainingsvorgänge nicht am originalen neuronalen Netz durchgeführt zu werden, wenn sie als Simulation über ein Computerprogramm ablaufen. Dies liegt darin begründet, daß die Trainingsvorgänge deutlich weniger zeitkritisch sind als die eigentlichen Mustererkennungsvorgänge.To deal with a neural network classification tasks being able to lead are in a training phase, like be already mentioned to preset the weights. First becomes an initial meaning and thus a unit of out gear shift. The neural network becomes a Noisy training patterns offered on the aisle side. A Noisy training pattern can result from that the field of image sampling points one image below under is supplied at different angles and / or that the image the input probes with different intensities, e.g. B. lighting intensities are supplied. For every through a respective training pattern in the active Zu Staggered input probe is in the concerned Unit of the output layer in that of the considered input probe assigned storage element the value of the weighting incremented. After feeding a plurality of Training patterns are the weights in the memory elements of the units of the starting layer. The number of training sessions for each input pattern is limited by the number of weighting levels. in the Embodiment becomes the maximum value of the weighting out of 64 at the earliest after 64 training sessions. For further initial meanings are in accordance Training processes. Otherwise, the training processes need not performed on the original neural network to become when simulated through a computer program expire. This is because the training processes are significantly less time critical than that actual pattern recognition processes.
Im folgenden möge dem Feld von Bildabtastpunkten des er findungsgemäßen neuronalen Netzes ein Bild zugeführt wer den, was zu einem Eingangsmuster führt, bei dem ein Teil z. B. 1000 Eingangssonden einen aktiven Zustand einnehmen. Das Aktivitätsmuster der Eingangssonden wird mit sämtli chen in den Einheiten der Ausgangsschicht gespeicherten Mustern verglichen. Dazu wird beispielsweise jedes Speicherglied jeder Einheit der Ausgangsschicht einzeln bearbeitet, indem die in dem Speicherglied enthaltene Adresse decodiert und die betreffende Eingangssonde abgefragt wird. Weist die angesprochene Eingangssonde einen aktiven Zustand auf, wird der Wert der Gewichtung des betrachteten Speichergliedes einem der zugehörigen Einheit der Ausgangsschicht zugeordneten Summationsspeicher zugeschlagen. Unter der Annahme, daß durch ein hardware-token-Verfahren die Abfrage von lediglich einen aktiven Zustand einnehmenden Eingangssonden sichergestellt sei und für die Abfrage einer Eingangssonde ein Zyklus mit einer Zyklusdauer von 100 ns erforderlich ist, sind im Ausführungsbeispiel für 1000 einen aktiven Zustand aufweisende Eingangssonden und 100 Einheiten der Ausgangsschicht 1000 × 100 × 100 ns = 10 ms für einen Mustervergleichsvorgang erforderlich.In the following, the field of image sampling points of the er an neural network according to the invention what leads to an input pattern in which a part e.g. B. 1000 input probes are in an active state. The activity pattern of the input probes is included with all Chen stored in the units of the starting layer Patterns compared. For this purpose, for example, each memory element processed each unit of the starting layer individually, by the address contained in the memory element decoded and queried the relevant input probe becomes. If the addressed input probe has an active one State on, the value of the weighting of the considered Storage element one of the associated unit of the output layer allocated summation memory. Under assuming that through a hardware token process the query of only one active state Input probes are ensured and for the query an input probe a cycle with a cycle time of 100 ns is required are in the embodiment for 1000 active probes and 100 units of the starting layer 1000 × 100 × 100 ns 10 ms required for a pattern matching process.
Nun werden die Einheiten der Ausgangsschicht auf den Maximalwert von aufsummierten Gewichtungen abgefragt. Dazu mögen im Ausführungsbeispiel für 100 Einheiten der Ausgangsschicht 100 Zyklen erforderlich sein. Die Ausgangsbedeutung der Einheiten der Ausgangsschicht, die den Maximalwert von Gewichtungen aller Einheiten der Ausgangsschicht aufweist, ist die signifikante Ausgangsbedeutung und klassifiziert ein Eingangsmuster. Dabei kann ein Schwellwert für den Maximalwert festgelegt sein, unterhalb dessen ein ermittelter Maximalwert als nicht eindeutig identifizierbare Ausgangsbedeutung gilt. Als weiteres Kriterium für eine eindeutige Identifizierbarkeit einer Ausgangsbedeutung kann ein vorgegebener Abstandswert zwischen dem ermittelten Maximalwert und dem zweithöchsten Wert herangezogen werden.Now the units of the starting layer are at the maximum value queried by totaled weights. Like this in the exemplary embodiment for 100 units of the starting layer 100 cycles may be required. The initial meaning of the units of the starting layer, which is the maximum value of weights of all units of the starting layer is the significant starting meaning and classified an input pattern. A threshold value for the maximum value must be set, below which a determined Maximum value as not clearly identifiable Initial meaning applies. As another criterion for one clear identifiability of an initial meaning can be a predetermined distance value between the determined Maximum value and the second highest value become.
Nun möge ein Ausführungsbeispiel betrachtet werden, bei dem ein neuronales Netz mit 1 Million Eingängen und 1000 Einheiten der Ausgangsschicht eingangsseitig mit 1 Million Eingangssonden verbunden ist, die in einem Quadrat von 1000 × 1000 Bildabtastpunkten eines Feldes angeordnet sind. Dieses neuronale Netz möge eine Klassifikation zwi schen 1000 Ausgangsbedeutungen durchführen können. Unter der Annahme, daß nicht mehr als 10% der Eingangssonden gleichzeitig einen aktiven Zustand einnehmen, werden in jeder der Einheiten der Ausgangsschicht 120 000 Speicherglieder vorgesehen. Der Abschnitt zur Aufnahme der Adressierung möge Binärwerte mit einer Wortbreite von 20 bit zur eindeutigen Adressierung von einer Million Eingangssonden aufweisen. Der Wert für die Gewichtung möge mit einem 3-bit-Wort darstellbar sein. Für 1000 Einheiten der Ausgangsschicht, 120 000 Speicherglieder je Einheit der Ausgangsschicht und 23 bit je Speicherglied sind also für die Einheiten der Ausgangsschicht 2,76 Gbit Speicheraufwand erforderlich. Dadurch, daß lediglich Speicherglieder für eine erwartete Anzahl von einen aktiven Zustand aufweisenden Eingangssonden vorzuleisten sind, ergibt sich ein deutlich verringerter Speicheraufwand, als wenn für sämtliche vorhandene Eingangssonden Speicherglieder in jeder Einheit der Ausgangsschicht vorzuleisten wären. Für einen Mustererkennungsvorgang möge wiederum durch ein hardware-token-Verfahren sichergestellt sein, daß lediglich Speicherglieder mit einem von null abweichenden Wert der Gewichtung aufgerufen werden. Unter der Annahme, daß das Aufrufen eines Speichergliedes einen Zyklus mit 100 ns erfordert, sind für einen Mustererkennungsvorgang bei einhundert Millionen Speichergliedern 10 s erforderlich.An embodiment may now be considered at a neural network with 1 million inputs and 1000 Units of the starting layer on the input side with 1 million Input probes connected in a square of 1000 × 1000 image sampling points of a field arranged are. This neural network may have a classification between can carry out 1000 meanings. Under assuming that no more than 10% of the input probes are in an active state at the same time each of the units of the output layer 120,000 memory elements intended. The section to include addressing like binary values with a word length of 20 bits for the unique addressing of one million input probes exhibit. The value for the weight may be with be represented by a 3-bit word. For 1000 units of Output layer, 120,000 memory elements per unit of The output layer and 23 bits per memory element are therefore for the units of the output layer 2.76 Gbit memory required. Because only memory elements for an expected number of active states The result is that input probes have to be provided a significantly reduced memory requirement than if for all existing input probes storage elements in each unit of the starting layer would have to be performed. For a pattern recognition process may in turn by a hardware-token procedures just ensure that Memory elements with a non-zero value weighting. Assuming that calling a memory element a cycle with 100 ns are one hundred for a pattern recognition process Millions of memory elements required for 10 s.
Das Training für dieses neuronale Netz wird - zur Durch führung in einer annehmbar kurzen Zeit - durch eine auto matisierte Simulation mittels eines Computerprogramms durchgeführt. Wird dieses neuronale Netz unter Einbezie hung der durch Simulation ermittelten Trainingsergebnisse mit einem ROM (read only memory) als Speichereinrichtung implementiert, so kann mit um den Faktor 10 verkürzten Zykluszeiten gerechnet werden.The training for this neural network becomes - through guidance in an acceptably short time - by a car automated simulation using a computer program carried out. Will this neural network be involved? the training results determined by simulation with a ROM (read only memory) as storage device implemented, can be shortened by a factor of 10 Cycle times can be calculated.
Wie bereits weiter oben erwähnt, ist eine massive Konnek tivität charakteristisch für ein neuronales Netz. Wird die Konnektivität mittels Verdrahtung realisiert, so ist dafür ein erheblicher Aufwand erforderlich. Bei der hier vorge stellten Adressierung, bei der die Speicherglieder gewissermaßen Verbindungsdrähte realisieren, steckt der Aufwand für die Konnektivität in der Anzahl der vorzusehenden Speicherglieder. Im folgenden wird von der Erkenntnis ausgegangen, daß nicht für sämtliche Kombinationen von Eingangsinformationen Verbindungen bereitgestellt werden müssen, wenn sich Aktivitäten von bestimmten Eingängen ausschließen. In Fig. 4 möge einem einstufigen neuronalen Netz an seinen acht Eingängen E1 . . . 8 ein Binärwort mit einer Wortbreite von 4 bit zugeführt werden. Dabei möge den Eingängen 1 und 2 die erste Stelle des Binärworts (LSB), den Eingängen 3 und 4 die zweite Stelle des Binärworts, den Eingängen 5 und 6 die dritte Stelle des Binärworts und schließlich den Eingängen 7 und 8 die vierte Stelle (MSB) des Binärworts zugeführt werden. Hat eine jeweilige Stelle des Binärworts einen aktiven Zustand, so mögen die betreffenden Eingänge 1, 3, 5, 7 einen aktiven Zustand und die Eingänge 2, 4, 6, 8 einen nicht-aktiven Zustand einnehmen. Für einen nicht-aktiven Zustand einer jeweiligen Stelle des Binärworts weisen die Eingänge entgegengesetzte Aktivitäten auf. Die einer Stelle des Binärworts zugehörigen Eingänge weisen also stets sich gegenseitig ausschließende Aktivitätszustände auf. Insgesamt können 16 unterschiedliche Eingangsmuster unterschieden werden, wozu für 16 Ausgangsbedeutungen 16 Einheiten der Ausgangsschicht vorgesehen sind. Hat beispielsweise das Binärwort den Wert 0000, so weisen die Eingänge 1, 3, 5, 7 einen aktiven Zustand auf, womit die mit 1 bezeichnete Einheit der Ausgangsschicht einen signifikanten Ausgangszustand einnimmt. Bei einem Wert von 1111 für das eingangsseitig zugeführte Binärwort nehmen die Eingänge 2, 4, 6, 8 einen aktiven Zustand ein, womit die mit 16 bezeichnete Einheit der Ausgangsschicht einen signifikanten Ausgangszustand einnimmt. Bei einem neuronalen Netz nach Fig. 4 werden also nicht sämtliche möglichen 2 exp. 8 = 256 Kombinationen, sondern lediglich 2 exp. 4 = 16 Kombinationen von Eingangsmustern benutzt. Die Einheiten der Ausgangsschicht benötigen eine Verbindung nur zu den Eingängen, die einen für sie relevanten aktiven Zustand einnehmen können. Im Ausführungsbeispiel sind also für jede Einheit der Ausgangsschicht vier Verbindungen erforderlich. Die Verbindungen werden erfindungsgemäß durch Adressierung unter Verwendung von vier Speichergliedern je Einheit der Ausgangsschicht realisiert. Für das einstufige neuronale Netz nach Fig. 4 sind also insgesamt 64 Verbindungen entsprechend 64 Speichergliedern erforderlich.As already mentioned above, massive connectivity is characteristic of a neural network. If the connectivity is implemented using wiring, considerable effort is required. With the addressing presented here, in which the memory elements implement connecting wires to a certain extent, the effort for connectivity is in the number of memory elements to be provided. The following is based on the knowledge that connections do not have to be provided for all combinations of input information if activities are excluded from specific inputs. In FIG. 4, may a single stage neural network at its eight inputs E1. . . 8 a binary word with a word length of 4 bits can be supplied. Inputs 1 and 2 may have the first digit of the binary word (LSB), inputs 3 and 4 the second digit of the binary word, inputs 5 and 6 the third digit of the binary word and finally inputs 7 and 8 the fourth digit (MSB) of the binary word. If a respective position of the binary word has an active state, the relevant inputs 1, 3, 5, 7 may assume an active state and the inputs 2, 4, 6, 8 assume a non-active state. The inputs have opposite activities for a non-active state of a respective position of the binary word. The inputs associated with one position of the binary word therefore always have mutually exclusive activity states. A total of 16 different input patterns can be distinguished, for which purpose 16 units of the output layer are provided for 16 output meanings. For example, if the binary word has the value 0000, the inputs 1, 3, 5, 7 have an active state, with the unit of the output layer denoted by 1 assuming a significant output state. With a value of 1111 for the binary word supplied on the input side, inputs 2, 4, 6, 8 assume an active state, whereby the unit of the output layer denoted by 16 assumes a significant output state. In the case of a neural network according to FIG. 4, not all possible 2 exp. 8 = 256 combinations, but only 2 exp. 4 = 16 combinations of input patterns used. The units of the output layer only need a connection to the inputs, which can assume an active state relevant to them. In the exemplary embodiment, four connections are therefore required for each unit of the starting layer. The connections are realized according to the invention by addressing using four memory elements per unit of the output layer. A total of 64 connections corresponding to 64 memory elements are required for the single-stage neural network according to FIG. 4.
Fig. 5 zeigt ein neuronales Netz, das die gleiche Funktion wie das für Fig. 4 beschriebene neuronale Netz ausführt. Das neuronale Netz nach Fig. 5 weist ebenfalls acht Ein gänge auf. Zueinander komplementäre Eingangssignale werden jeweils zwei zu einem Paar von Eingängen zusammengeführten Eingängen zugeführt. In der Ausgangsschicht sind den 16 möglichen Eingangsmustern eine entsprechende Anzahl von Einheiten zugeordnet. Zwischen den Eingängen und der Ausgangsschicht ist eine Zwischenschicht ZS angeordnet. In der Zwischenschicht werden unter Einsatz weiterer Einheiten 1 . . . 8 Verbindungen unter Berücksichtigung von sich gegenseitig ausschließenden Eingangsmustern zentralisiert. So nimmt die mit 1 bezeichnete Einheit der Zwischenschicht ausgangsseitig einen aktiven Zustand ein, wenn die Eingänge 1 und 3 einen aktiven Zustand aufweisen; die mit 2 bezeichnete Einheit der Ausgangsschicht nimmt ausgangsseitig einen aktiven Zustand ein, wenn die Eingänge 1 und 4 einen aktiven Zustand einnehmen. Eine Kombination der Eingänge, die niemals gleichzeitig einen aktiven Zustand einnehmen, was z. B. für die Eingänge 1 und 2 zutrifft, erfolgt nicht. Die Einheiten der Ausgangsschicht sind mit jeweils zwei Einheiten der Zwischenschicht verbunden. Zwischen den Einheiten der Zwischenschicht und den Eingängen sind also 16 Verbindungen und zwischen den Einheiten der Ausgangsschicht und den Einheiten der Zwischenschicht 32 Verbindungen gegeben. Die Gesamtzahl der Verbindungen für das neuronale Netz nach Fig. 5 beträgt somit lediglich 48 gegenüber der Gesamtzahl von 64 Verbindungen für das neuronale Netz nach Fig. 4. Für das vorgestellte neuronale Netz mit einer Adressierung der Einheiten ergibt sich also unter Berücksichtigung von sich ausschließenden Kombinationen aktiver Zustände auf den Eingängen eine Verringerung von Speichergliedern. FIG. 5 shows a neural network that performs the same function as the neural network described for FIG. 4. The neural network of Fig. 5 also has eight one steps in production. Input signals which are complementary to one another are each fed to two inputs combined to form a pair of inputs. A corresponding number of units are assigned to the 16 possible input patterns in the output layer. An intermediate layer ZS is arranged between the entrances and the exit layer. Using additional units, 1. . . 8 connections centralized taking into account mutually exclusive input patterns. Thus, the unit of the intermediate layer designated 1 assumes an active state on the output side if the inputs 1 and 3 have an active state; the unit of the output layer denoted by 2 assumes an active state on the output side when inputs 1 and 4 assume an active state. A combination of the inputs that never assume an active state at the same time. B. for inputs 1 and 2 does not occur. The units of the starting layer are connected to two units of the intermediate layer. There are therefore 16 connections between the units of the intermediate layer and the inputs and 32 connections between the units of the output layer and the units of the intermediate layer. The total number of connections for the neural network according to FIG. 5 is therefore only 48 compared to the total number of 64 connections for the neural network according to FIG active states on the inputs a reduction in memory elements.
Eine Klassifizierung von zeitlichen Mustern ist beispiels weise bei der Spracherkennung erforderlich. Die Sprache ist mit etwa 50 unterschiedlichen Phonemen gebildet. Die Phoneme steuern den Weg durch einen Entscheidungsbaum. Die zeitlich aufeinanderfolgenden Merkmale eines jeweiligen Phonems werden abgetastet und den Eingangssonden des neuronalen Netzes zugeführt, wodurch das zeitliche Muster in ein räumliches Muster umgesetzt wird. Der Einsatz eines neuronalen Netzes läßt in den Entscheidungspunkten des Baumes eine Verbesserung der Entscheidungssicherheit er warten.A classification of temporal patterns is an example wise required for speech recognition. The language is formed with about 50 different phonemes. The Phonemes guide the way through a decision tree. The temporally successive features of a respective Phonems are scanned and the input probes of the neural network fed, creating the temporal pattern is translated into a spatial pattern. The use of a neural network leaves in the decision points of the Baumes an improvement in decision certainty waiting.
Schließlich sei noch erwähnt, daß der Trend zu einerseits einer andauernden Höherintegration von memory chips und andererseits einer ständigen Geschwindigkeitssteigerung der Mikroelektronik den Einsatz des vorgestellten Konzepts begünstigt.Finally, it should be mentioned that the trend is on the one hand an ongoing higher integration of memory chips and on the other hand a constant increase in speed microelectronics the use of the presented concept favored.
Claims (4)
- - eine Mehrzahl von Neuronen repräsentierenden Einheiten in einer Ausgangsschicht (AS) und gegebenenfalls in einer Zwischenschicht (ZS) angeordnet sind,
- - die Einheiten der Ausgangsschicht (AS) jeweils einer Ausgangsbedeutung (1 . . . m) zugeordnet sind,
- - jede Einheit der Ausgangsschicht (AS) eine festgelegte Anzahl (z. B. 20 Bit) von Speicherelementen umfassende Speicherglieder (E1 . . . Ed) aufweist,
- - jedes Speicherglied (E1 . . . Ed) eine auf eine bestimmte Eingangssonde in einer Eingangsschicht (ES) verweisende Adresse (Z1 . . . Zd) und eine Gewichtung (G) dieser Adresse aufweist.
- a plurality of units representing neurons are arranged in an output layer (AS) and optionally in an intermediate layer (ZS),
- - The units of the output layer (AS) are each assigned an output meaning (1... m),
- each unit of the output layer (AS) has a fixed number (eg 20 bits) of memory elements (E1... Ed) comprising memory elements,
- - Each memory element (E1... Ed) has an address (Z1... Zd) referring to a specific input probe in an input layer (ES) and a weighting (G) of this address.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4307027A DE4307027C2 (en) | 1993-03-05 | 1993-03-05 | Memory-oriented neural network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4307027A DE4307027C2 (en) | 1993-03-05 | 1993-03-05 | Memory-oriented neural network |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4307027A1 DE4307027A1 (en) | 1994-09-08 |
DE4307027C2 true DE4307027C2 (en) | 1995-07-20 |
Family
ID=6482079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4307027A Expired - Fee Related DE4307027C2 (en) | 1993-03-05 | 1993-03-05 | Memory-oriented neural network |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4307027C2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MY138544A (en) * | 2003-06-26 | 2009-06-30 | Neuramatix Sdn Bhd | Neural networks with learning and expression capability |
-
1993
- 1993-03-05 DE DE4307027A patent/DE4307027C2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE4307027A1 (en) | 1994-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69430744T2 (en) | Improved neural semiconductor chip architectures and neural networks in them | |
DE68925156T2 (en) | Integrated semiconductor circuit for neural network | |
DE3883192T2 (en) | Neural network circuit and structure. | |
DE69430870T2 (en) | Innovative neural circuit architecture | |
DE3924384C2 (en) | Programmable logic controller with multiple racks with relative rack insertion addressing | |
DE69430527T2 (en) | Circuit for precharging input vector components into a free neuron circuit during the detection phase | |
DE69421487T2 (en) | Methods of comparing patterns based on the use of picture element matrices and picture element vectors | |
DE1213651B (en) | Procedure and arrangement for identifying information | |
DE69224718T2 (en) | Classification procedure for computer architectures | |
DE1209340B (en) | Procedure and arrangement for identifying information | |
DE69417273T2 (en) | Method and device for pattern recognition | |
DE19636074C2 (en) | Learning-capable image processing system for classification | |
DE4307027C2 (en) | Memory-oriented neural network | |
DE69320003T2 (en) | Neural network circuit | |
DE3026055C2 (en) | Circuit arrangement for automatic character recognition | |
DE4307026C2 (en) | Memory-oriented neural network | |
EP3557490A1 (en) | Training method | |
DE4210109A1 (en) | Data sorting arrangement for computer system - selects different groups of pairs of data moulding devices, exchanging contents of each pair of comparison indicates this is appropriate | |
DE3872188T2 (en) | BINARY COMPARISON AND SORTING UNIT FOR BINARY NUMBERS. | |
DE69326968T2 (en) | Data distribution method and device | |
EP0643353A1 (en) | Data processing system and method | |
EP0469315B1 (en) | Method for visual inspection of two- or three-dimensional images | |
DE69708752T2 (en) | Data locker for high-speed peripherals | |
DE19531635C1 (en) | Sorting method for linguistic input parameter relations | |
DE19738846C1 (en) | Process for determining spacing in vector space |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |