DE102004060132B4 - Classification Tasks Learning Procedure and Hardware-Implemented RAM Pyramid - Google Patents

Classification Tasks Learning Procedure and Hardware-Implemented RAM Pyramid Download PDF

Info

Publication number
DE102004060132B4
DE102004060132B4 DE200410060132 DE102004060132A DE102004060132B4 DE 102004060132 B4 DE102004060132 B4 DE 102004060132B4 DE 200410060132 DE200410060132 DE 200410060132 DE 102004060132 A DE102004060132 A DE 102004060132A DE 102004060132 B4 DE102004060132 B4 DE 102004060132B4
Authority
DE
Germany
Prior art keywords
look
tables
ram
pyramid
implemented
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE200410060132
Other languages
German (de)
Other versions
DE102004060132A1 (en
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE200410060132 priority Critical patent/DE102004060132B4/en
Publication of DE102004060132A1 publication Critical patent/DE102004060132A1/en
Application granted granted Critical
Publication of DE102004060132B4 publication Critical patent/DE102004060132B4/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17724Structural details of logic blocks
    • H03K19/17732Macroblocks

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

Lernverfahren für Klassifikationsaufgaben, für eine Hardware-realisierte oder Rechner-realisierte RAM-Pyramide mit hierarchischer Verknüpfung von Look-Up-Tabellen,
wobei Ausgangsbits je mehrerer Look-Up-Tabellen einer niederen Stufe zu Eingangsbits einzelner Look-Up-Tabellen höherer Stufe zusammengefaßt werden,
wobei die Look-Up-Tabellen mindestens je 2 Informations-Ausgangsbits besitzen,
wobei die Look-Up-Tabellen ergänzt sind durch je eine zweite, Hardware- oder Rechner-realisierte Look-Up-Tabelle, in der zu möglichen Ausgangswerten ein repräsentativer Eingangswert eingetragen ist, der aus Komponenten entprechend der Zusammenfassungsstruktur der RAM-Pyramide besteht,
wobei über die zweiten Look-Up-Tabellen Assoziationen berechnet werden,
wobei die Ausgangswerte der Look-Up-Tabellen clusterweise gebildet werden,
dadurch gekennzeichnet, daß
den Ausgangswerten Klassenmengen zugeordnet werden, und zur Clusterung ein Entfernungsmass verwendet wird, in das neben einem Unähnlichkeitsmass zwischen Assoziationen die Mächtigkeit der Differenzmenge von Klassenmengen eingeht.
Learning method for classification tasks, for a hardware-implemented or computer-implemented RAM pyramid with hierarchical linking of look-up tables,
wherein output bits of each of a plurality of low-level look-up tables are combined to input bits of individual higher-level look-up tables,
wherein the look-up tables have at least 2 information output bits each,
wherein the look-up tables are supplemented by a respective second, hardware or computer-implemented look-up table, in which possible output values a representative input value is entered, which consists of components corresponding to the summary structure of the RAM pyramid,
whereby associations are calculated via the second look-up tables,
wherein the initial values of the look-up tables are formed cluster-wise,
characterized in that
For the clustering, a distance measure is used in which, in addition to a dissimilarity measure between associations, the power of the difference set of class sets is included.

Figure 00000001
Figure 00000001

Description

Die Erfindung betrifft einen Klassifikator, Erkenner und Assoziativspeicher, der für Aufgaben der Mustererkennung und (verlustbehafteten) Signalkomprimierung/Dekomprimierung eingesetzt werden kann, sowie Verfahren zum Bilden von Assoziationen mit einem solchen System und zum Einlernen eines solchen Systems und zum Erkennen und Klassifizieren mit einem solchen System.The Invention relates to a classifier, recognizer and associative memory, the for Tasks of pattern recognition and (lossy) signal compression / decompression can be used, as well as methods for forming associations with Such a system and for learning such a system and to recognize and classify with such a system.

Signale zu klassifizieren ist Aufgabe der klassischen Mustererkennung, die hauptsächlich eingesetzten Metoden sind:

  • – Vergleich mit vorklassifizierten Referenzmustern, auf Originaldaten oder – wie auch immer – vorverarbeiteten oder codierten Daten,
  • – statistische Verfahren, auf Basis der klassenspezifischen Verteilung vorgegebener Merkmale in einem i.a. mehrdimensionalen Merkmalsraum,
  • – Neuronale Netze.
Classifying signals is the task of classical pattern recognition, which are mainly used methods:
  • Comparison with pre-classified reference patterns, original data or, whatever, preprocessed or coded data,
  • Statistical methods, based on the class-specific distribution of given features in a multi-dimensional feature space,
  • - Neural Networks.

Konventionelle Neuronalnetze sind i.a. mehrschichtige Verknüpfungen von Neuronen mit i.a. je mehreren Eingängen und einem Ausgang. Die Neuronen werden i.a. modelliert als gewichtete Summation, gefolgt von einer nichtlinearen, i.a. monotonen ("sigmoiden") Übertragungsfunktion, im Speziellen einer einfachen Schwellwertbildung. Das Lernen besteht in der Festlegung der Gewichte und ggf. der Parameter der sigmoiden Funktion, d.h. bei einfachen Schwellwertfunktionen des Schwellwertes.conventional Neuronal networks are i.a. multilayer linkages of neurons with i.a. ever several entrances and an exit. The neurons are i.a. modeled as weighted Summation, followed by a nonlinear, i.a. monotone ("sigmoid") transfer function, especially a simple thresholding. The learning exists in determining the weights and, if necessary, the parameters of the sigmoid Function, i. for simple threshold functions of the threshold value.

Zum Lernen existieren ausgefeilte Backpropagation-Methoden zum Finden der Gewichtseinstellungen.To the There are sophisticated backpropagation methods to find the weight settings.

Das Klassifizieren besteht in (schichtweiser) Berechnung der Ausgänge (mit Multiplikationen) entprechend den eingestellten Gewichten und entprechend den Übertragungsfunktionen, wobei die Klassifikationsentscheidung i.a. von der zugeordneten Klasse desjenigen Neuros oberster Ebene abgeleitet wird, das den höchsten Ausgangswert liefert.The Classification consists in (layerwise) calculation of the outputs (with Multiplications) according to the set weights and accordingly the transfer functions, the classification decision i.a. from the assigned class derives from that neuros of the highest level, which has the highest initial value supplies.

Nachteil dieser konventionellen Neuronalnetze ist die Vielzahl zu realisierender Multiplikationen beim Klassifizieren; zur Beschleunigung wurden aufwendige spezielle Hardwarestrukturen entwickelt.disadvantage This conventional neural network is the variety to be realized Multiplication in classifying; to speed up were elaborate special Hardware structures developed.

Dieser Nachteil wird umgangen durch die sog. gewichtslosen Neuronalnetze, bei denen Übertragungsfunktionen von Neuronen direkt über Tabellen realisiert werden. Die Tabellierung kann technisch direkt in Form eines Look-Up-Tabellen-("LUT")-Bausteins realisiert sein; einzelne oder mehrere LUTs zusammengefaßt können als Speicher oder Speicherbereich realisiert sein, wobei der Speicher natürlich als RAM, ROM, PROM, externer Speicher etc. realisiert sein kann.This Disadvantage is bypassed by the so-called weightless neural networks, where transfer functions of neurons directly over Tables are realized. The tabulation can be technically direct implemented in the form of a look-up table ("LUT") block be; single or multiple LUTs can be grouped together as memory or memory area be realized, the memory of course as RAM, ROM, PROM, external Memory etc. can be realized.

Solche gewichtslose Neuronalnetze allgemein werden im folgenden kurz RAM-Netze genannt.Such In the following, weightless neural networks generally become RAM networks called.

Mit RAM-Netzen wurde vielfach versucht, die Funktion konventioneller Neuronalnetze, mit Gewichtungen, direkt nachzuvollziehen. Dies führt in aller Regel zu Adreßbreiten-Problemen und ist deshalb nicht der Ansatz der hier vorgestellten Erfindung.With RAM networks have been tried many times, the function of conventional Neural networks, with weights, to be directly traced. This usually leads about address space issues and is therefore not the approach of the invention presented here.

Mehrschichtige Netze, sowohl als konventionelle als auch als RAM-Netze, können als hierarchische Systeme angesehen werden, insbesondere wenn sie in Pyramidenform realisiert sind. Sie haben den Nachteil der mangelnden Transparenz: die Wirkung der einzelnen eingestellten Gewichte ist nicht verständlich; es ist keine anschauliche Interpretation möglich, es ist nicht nachvollziehbar, wieso beim Klassifizieren eine bestimmte Entscheidung zustandegekommen ist. Im Falle von Fehlentscheidungen bleibt nur die Möglichkleit, mit "Nachteachen" den Fehler zu beseitigen zu versuchen. Voraussagen über das Verhalten des Netzes unter bestimmten Bedingungem sind so gut wie ausgeschlossen, damit sind solche Systeme z.B. für Sicherheitsanwendungen nicht einsetzbar.multilayer Networks, both conventional and RAM networks, can be described as hierarchical systems are considered, especially if they are in Pyramid shape are realized. You have the disadvantage of lacking Transparency: the effect of each set weight is not understandable; no intuitive interpretation is possible, it is incomprehensible, why a certain decision was made when classifying is. In case of wrong decisions, only the possibility remains with "Nachteachen" to eliminate the error to try. Predictions about the behavior of the network under certain conditions is so good as excluded, such systems are e.g. for security applications Not insertable.

Es gibt auch RAM-basierte Neuronalnetze, eine Sonderform davon sind RAM-Pyramiden. RAM-Pyramiden sind hierarchische, sich nach oben verjüngende RAM-Netze.It There are also RAM-based neural networks that are a special form of it RAM pyramids. RAM pyramids are hierarchical, upwardly tapering RAM networks.

Eine Übersicht über RAM basierte Neuronalnetze erhält man aus

  • T.B. Ludermir, A. de Carvalho, A.P. Braga, M.C.P. de Souto: Weightless Neural Models: A Review of Current and Past Works. Neural Computing Surveys 2, 1999, S. 41–61.
  • http://www.scsi.berkeley.deu/~jagota/NCS
  • J. Austin: RAM Based Neural Networks, A Short History. in J. Austin (ed): RAM Based Neural Networks. World Scientific Publishing Co. Pte Ltd. Singapore, 1998, pp. 3–17.
An overview of RAM based neuronal networks is obtained
  • TB Ludermir, A. de Carvalho, AP Braga, MCP de Souto: Weightless Neural Models: A Review of Current and Past Works. Neural Computing Surveys 2, 1999, pp. 41-61.
  • http: //www.scsi.berkeley.deu/ ~ Jagota / NCS
  • J. Austin: RAM Based Neural Networks, A Short History. in J. Austin (ed): RAM Based Neural Networks. World Scientific Publishing Co. Pte. Singapore, 1998, pp. 3-17.

Für Klassifikationsaufgaben mit überwachtem Lernen existiert nach bekannter Technik für jede Klasse eine separate Pyramide.For classification tasks with monitored Learning exists by known technique for each class a separate Pyramid.

Das Problem der Handhabung von Grauwerten wurde mit speziellen Codes, "1-aus-n" oder "Thermometercode", die eine analoge Interpretation zulassen, angegangen. Diese Ansätze benötigen viel Speicherplatz.The Problem of handling gray values was using special codes, "1-out-of-n" or "thermometer code", which is an analogue Allow interpretation, tackled. These approaches take up a lot of storage space.

Aus "R.L. de Queiroz, P. Stei: LUT Filters for Quantized Processing of Signals, IEEE Transactions on Signal Processing, Vol. 52, No. 3, März 2004, ist eine RAM-Pyramide für Filteraufgaben (Bildverbesserung) bekannt, mit der diverse traditionelle Filter angenähert werden, mit gegenüber traditionellen Filtern jedoch wesentlich geringerem Aufwand.From RL de Queiroz, P. Stei: LUT Filters for Quantized Processing of Signals, IEEE Transactions on Signal Processing, Vol. 52, No. 3, March 2004, a RAM pyramid for filtering tasks (image enhancement) is known, with the various traditional filters be approximated, with respect to traditional filters but much less effort.

In EP 1 225 543 A2 , von denselben Autoren, wird die Möglichkeit des Klassifizierens von Pixeln mit Labels erwähnt wie "Kante" oder "Hintergrund" (Abschnitt [0022]), es wird jedoch nichts darüber offengelegt, ob und wie ein überwachtes Lernen durch Vorzeigen von Klassen erfolgen soll.In EP 1 225 543 A2 , from the same authors, mentions the possibility of classifying pixels with labels such as "edge" or "background" (section [0022]), but nothing is disclosed as to whether and how supervised learning should be done by presenting classes.

Aufgabe der Erfindung ist es, eine wirksame, robuste und dennoch zeiteffiziente, leicht technisch zu realisierende Architektur und zugehörige Lern- und Erkennungsverfahren zur Verfügung zu stellen, wobei eine anschauliche Interpretation der Entscheidungsfindung möglich ist.task It is an object of the invention to provide an effective, robust and yet time-efficient easy to implement architecture and related learning and Detection method available providing a vivid interpretation of decision-making possible is.

Die Aufgabe wird nach Ansprüchen 1 und 2 gelöst.The Task becomes according to claims 1 and 2 solved.

Vor Beschreibung der Lösung werden einige im folgenden verwendete Begriffe festgelegt. Die Beschreibung geschieht anhand eines Beispiels aus der Bildauswertung; die Übertragung auf eindimensionale oder mehr als zweidimensionale Daten/Signale ergibt sich daraus für den Fachmann selbstredend.In front Description of the solution some terms used below are defined. The description happens on the basis of an example from the picture analysis; the transfer to one-dimensional or more than two-dimensional data / signals for that the expert of course.

Bereich: Ein Bild bestehe aus separaten oder überlappend liegenden Bereichen, die dadurch ausgezeichnet sind, daß die Bildauswertung innerhalb eines Bereichs gleichartig ist, von Bereich zu Bereich jedoch unterschiedlich sein kann. Beispielsweise könnte zur Verarbeitung der oberen zwei Drittel eines Bildes ein erstes RAM-Netz verwendet werden, und zur Verarbeitung der (überlappenden) unteren zwei Drittel ein zweites RAM-Netz. Alles folgende bezieht sich zur Vereinfachung der Beschreibung nur auf einen einzelnen Bereich.Area: An image consists of separate or overlapping areas, which are characterized in that the image evaluation within a Area is different, but different from area to area can be. For example, could to process the top two-thirds of a picture a first RAM network can be used, and for processing the (overlapping) lower two-thirds of a second RAM network. Everything that follows relates to simplify the description only to a single area.

Region: Eine Region ist eine Untermenge eines Bereichs, die Eingangsdaten für ein RAM-Netz liefert. Beispielsweise kann ein lokaler Operator zur Detektion von kleinen Kreismustern durch ein RAM-Netz realisiert werden, wobei der Operator, wie bei lokalen Operatoren der Bildverarbeitung üblich, über den Bereich hinweggeführt wird; hierbei könnte das RAM-Netz für solche Positionen signalisieren ("feuern"), wenn das Kreismuster zentral im Operator liegt. Eine Region kann auch durch Unterabtastung eines Bereiches entstehen. Eine Region kann natürlich auch identisch mit einem Bereich sein.Region: A region is a subset of a region, the input data for a RAM network supplies. For example, a local operator for detection be realized by small circular patterns through a RAM network, wherein the operator, as usual with local image processing operators, over the Area away becomes; this could be RAM network for such positions signal ("fire") when the circle pattern is centrally located in the operator. A region can also be created by subsampling an area. A region can of course also be identical to an area.

Das folgende Beispiel arbeitet mit einer Region 2 von 9x9 Pixeln 1. Diese Region 2 wird nun hierarchisch zerlegt in Subregionen. Dabei werden je drei horizontal benachbarte Pixel 1 zusammengefasst zu Subregionen 3 mit 3x1 Pixeln, je drei vertikal benachbarte Subregionen 3 werden zusammengefasst zu Subregionen 4 mit 3x3 Pixeln, je drei horizontal benachbarte Subregionen 4 werden zusammengefasst zu Subregionen 5 mit 9x3 Pixeln, je drei vertikal benachbarte Subregionen 5 werden zusammengefasst zur Region 2 mit 9x9 Pixeln, siehe 1.The following example works with a region 2 of 9x9 pixels 1 , This region 2 is now broken down hierarchically into subregions. There are three horizontally adjacent pixels 1 summarized to subregions 3 with 3x1 pixels, three vertically adjacent subregions 3 are summarized to subregions 4 with 3x3 pixels, three horizontally adjacent subregions 4 are summarized to subregions 5 with 9x3 pixels, three vertically adjacent subregions 5 are combined to the region 2 with 9x9 pixels, see 1 ,

Diese Zerlegung wird nun auf eine Struktur mit Look-Up-Tabellen abgebildet entprechend 2:
Die Pixel-Grauwerte seien mit 6 Bit aufgelöst und werden durch LUTs 11 auf 4 Bit-Ausgangswerte 12 reduziert.
This decomposition is now mapped onto a structure with look-up tables 2 :
The pixel gray values are resolved with 6 bits and are given by LUTs 11 to 4 bit output values 12 reduced.

Je drei horizontal benachbarte Werte 12, entsprechend einer Subregion 3, werden zu 3×4=12-Bit zusammengefasst und bilden 12-Bit-Adressen für LUTs 13 mit 4-Bit Ausgängen 14.Three horizontally adjacent values 12 , according to a subregion 3 , are grouped into 3 × 4 = 12-bits and form 12-bit addresses for LUTs 13 with 4-bit outputs 14 ,

Je drei vertikal benachbarte Werte 14, entsprechend einer Subregion 4, werden zu 3×4=12-Bit zusammengefasst und bilden 12-Bit-Adressen für LUTs 15 mit 4-Bit Ausgängen 16.Three vertically adjacent values 14 , according to a subregion 4 , are grouped into 3 × 4 = 12-bits and form 12-bit addresses for LUTs 15 with 4-bit outputs 16 ,

Je drei horizontal benachbarte Werte 16, entsprechend einer Subregion 5, werden zu 3×4=12-Bit zusammengefasst und bilden 12-Bit-Adressen für LUTs 17 mit 4-Bit Ausgängen 18.Three horizontally adjacent values 16 , according to a subregion 5 , are grouped into 3 × 4 = 12-bits and form 12-bit addresses for LUTs 17 with 4-bit outputs 18 ,

Je drei vertikal benachbarte Werte 18, entsprechend Region 2, werden zu 3×4=12-Bit zusammengefasst und bilden 12-Bit-Adressen für LUT 19 mit 8-Bit Ausgang 20.Three vertically adjacent values 18 , according to region 2 , are grouped together as 3 × 4 = 12-bits and form 12-bit addresses for LUT 19 with 8-bit output 20 ,

Die gezeigte Anordnung entpricht einer Pyramide, unten beginnend mit einem 9x9-Feld von Pixeln und oben endend mit einem einzelnen Ausgangswert 20, dem Ergebniswert. Sie kann auch RAM-Pyramide genannt werden.The arrangement shown corresponds to a pyramid starting at the bottom with a 9x9 field of pixels and ending with a single output value 20 , the result value. It can also be called a RAM pyramid.

Die gezeichneten Bitbreiten sind als Beispiel zu verstehen. Die Bitbreiten können insbesondere von Stufe zu Stufe variieren, sie können auch von LUT zu LUT variieren (d.h. je nach Position innerhalb von Subregionen). Die LUT-Inhalte sind in aller Regel von Stufe zu Stufe verschieden. Wenn sowohl Bitbreiten als auch LUT-Inhalte innerhalb je einer Stufe überall gleich sind, sprechen wir im folgenden von stufenhomogenen (RAM-)Netzen oder (RAM-)Pyramiden.The drawn bit widths are to be understood as an example. The bit widths can especially vary from stage to stage, they can also vary from LUT to LUT (i.e., depending on position within subregions). The LUT content are usually different from level to level. If both Bit widths as well as LUT contents within one level are the same everywhere In the following, we will talk about step-homogeneous (RAM) networks or (RAM) pyramids.

Das Lernen bedeutet füllen der LUTs mit Werten; das Lernen wird weiter unten beschrieben. Zunächst wird das Erkennen und Klassifizieren beschrieben, wobei vorausgesetzt wird, dass das Lernen bereits stattgefunden hat.The Learning means filling the LUTs with values; learning is described below. At first that will be Recognizing and classifying, assuming that the learning has already taken place.

Erkennen und Klassifizieren:
Erkennen bedeutet:

  • – Anlegen der Regionendaten an den Adreßeingängen der LUTs 11 (unterste Stufe)
  • – Lesen und Verknüpfen der LUT 11-Ausgänge zu Adreßeingängen der LUTs 13
  • – Lesen und Verknüpfen der LUT 13-Ausgänge zu Adreßeingängen der LUTs 15, etc.
  • ...
  • – Lesen des LUT 19 Ausgangs 20.
Recognize and classify:
Recognition means:
  • - Create the region data to the address the LUTs 11 (lowest level)
  • - Reading and linking the LUT 11 Outputs to address inputs of the LUTs 13
  • - Reading and linking the LUT 13 Outputs to address inputs of the LUTs 15 , Etc.
  • ...
  • - reading the LUT 19 output 20 ,

Anmerkung: Stufenhomogene Pyramiden sind sehr speichereffizient realisierbar, da die RAM-Ausgänge unterer Stufen von den Eingängen oberer Stufen mehrfach genutzt werden können für verschiedene Subregionen gleicher Stufe. Lokale, über einen Bereich bewegliche Operatoren, wie z.B. der oben beschriebene Kreisdetektor, sind als stufenhomogene Pyramiden besonders zeiteffizient realisierbar, da die RAM-Ausgänge unterer Stufen von den Eingängen oberer Stufen zudem mehrfach genutzt werden können für verschiedene Positionen des lokalen Operators.Annotation: Step-homogeneous pyramids are very memory-efficient, because the RAM outputs lower levels from the entrances upper Steps can be used multiple times for different Subregions of equal degree. Local, movable over a range Operators, such as The above-described circular detector is known as step homogeneous pyramids particularly time-efficient feasible, since the RAM outputs lower levels from the entrances upper levels can also be used multiple times for different positions of the local operator.

Der LUT 20 Ausgang hat im Beispiel 8 Bit, entprechend 256 möglichen Werten 0..255. Beim Lernen wurden diese Werte als Codes für typische Muster-Erscheinungsformen festgelegt, s.u. (genauso sind die möglichen Werte der Ausgänge 11, 13, 15, 17 Codes für typische Erscheinungsformen der betreffenden Subregionen). Erkennungsergebnis ist also der Code (die Nummer) der typischen Erscheinungsform der aktuellen Regionendaten.The LUT 20 Output has 8 bits in the example, corresponding to 256 possible values 0..255. During learning, these values were set as codes for typical pattern appearances, see below (as are the possible values of the outputs 11 . 13 . 15 . 17 Codes for typical manifestations of the subregions concerned). The recognition result is the code (the number) of the typical appearance of the current region data.

Klassifizieren: Jedem dieser möglichen LUT 19-Werte 0..255 kann nun im Rahmen des Lernens eine Klasse zugeordnet worden sein, z.B. bei einem Zwei-Klassen-Problem:

  • Wert 0: Klasse 1
  • Wert 1: Klasse 1
  • Wert 2: Klasse 2
  • Wert 3: Klasse 1
  • ...
  • Wert 255: Klasse 2
Classify: Any of these possible LUTs 19 Values 0..255 can now have been assigned to a class as part of learning, for example in the case of a two-class problem:
  • Value 0: Class 1
  • Value 1: Class 1
  • Value 2: Class 2
  • Value 3: Class 1
  • ...
  • Value 255: class 2

Ergebnis der Klassifikation ist dann die Klasse zu dem aktuell berechneten LUT 20 Ausgangswert.The result of the classification is then the class for the currently calculated LUT 20 Baseline.

Lernen:Learn:

Im folgenden wird ein mögliches Vorgehen für das Lernen beschrieben, zur Vereinfachung der Darstellung anhand einer stufenhomogenen Lösung zu unserem Beispiel.in the the following becomes a possible Procedure for described the learning, to simplify the presentation to a step homogeneous solution our example.

Das Lernen geschieht anhand einer Sammlung von (für Klassifikationsaufgaben vorklassifizierten) Lernregionen, in einer oder zwei Phasen:
In Phase 1 geschieht das Lernen stufenweise von unten nach oben, jeweils mit einer Clusteranalyse. Bei der Beschreibung von Phase 1 werden die zentralen Begriffe "Repräsentant" und "Assoziation" eingeführt.
Phase 2, auch Backpropagation Phase genannt, kann bei Klassifikationsaufgaben in schwierigen Fällen erforderlich werden.
The learning takes place on the basis of a collection of (pre-classified for classification tasks) learning regions, in one or two phases:
In Phase 1, learning happens step-by-step from the bottom up, each with a cluster analysis. The description of phase 1 introduces the central terms "representative" and "association".
Phase 2, also called backpropagation phase, may be required for classification tasks in difficult cases.

Lernen Phase 1:Learning Phase 1:

LUT 11 soll ersichtlich einzelne Grauwerte codieren: mit 6 Bit Eingängen und 4 Bit Ausgängen sollen also 64 mögliche Grauwerte durch nur 16 mögliche Codes dargestellt werden. Bevorzugt wird nun eine (eindimensionale) Clusteranalyse für bis zu 16 Clusterzentren Nr. 0..15 durchgeführt.LUT 11 is intended to encode individual gray values: with 6-bit inputs and 4-bit outputs, therefore, 64 possible gray values should be represented by only 16 possible codes. Preferably, a (one-dimensional) cluster analysis is now carried out for up to 16 cluster centers no. 0..15.

Clusterzentrum Nr. 0 sei z.B. der Grauwert 63, Clustzerzentrum Nr. 1 der Grauwert 17, etc.Cluster center No. 0 is eg the gray value 63, Clustzer center No. 1 the gray value 17 , Etc.

Die LUT 11 wird nun an den Clusterzentrums-Grauwerten mit der Nummer des Clusterzentrums gefüllt, also an Adresse "63" mit Code "0", an Adresse "17" mit Code "1" etc.The LUT 11 is now filled at the cluster center gray values with the number of the cluster center, ie at address "63" with code "0", at address "17" with code "1" etc.

Die verbleibenden der 64 Adressen werden mit dem Code des nächstliegenden, im vorherigen Schritt bereits codierten Grauwerts gefüllt.The remaining of the 64 addresses will be with the code of the nearest, filled in the previous step already coded gray value.

Erfindungsgemäß wird LUT 11 um eine weitere, rückwärts zu interpretierende LUT 11a erweitert. LUT 11a hat 16 mögliche Eingangswerte mit je einem 6-Bit Ausgangswert. Die LUT 11a wird für Adresse "0" mit "63" beschrieben, für Adresse "1" mit "17", etc. Lut 11a ist die sog. Repräsentantentabelle: "63" ist Eingangs-Repräsentant zum Ausgangswert "0", etc.According to the invention, LUT 11 another LUT to be interpreted backwards 11a extended. LUT 11a Has 16 possible input values, each with a 6-bit output value. The LUT 11a is described for address "0" with "63", for address "1" with "17", etc. Lut 11a is the so-called representative table: "63" is input representative to the initial value "0", etc.

Ein Repräsentant zu einem Ausgangscode ist also ein TYPISCHER Eingangscode zu diesem Ausgangscode. Der Repräsentant besteht aus Komponenten entprechend der Zusammensetzung des Eingangscodes aus Ausgangscodes eine Stufe tiefer.One representative an output code is therefore a TYPICAL input code for this output code. The representative consists of components according to the composition of the input code from exit codes one step lower.

Das Lernen der darüber liegenden LUT 13 kann in prinzipiell derselben Weise geschehen. Nachdem LUT 11 und LUT 11a gefüllt sind, wird anhand der Lernregionen eine Clusteranalyse real vorkommender Subregionen 2 durchgeführt. Diese Analyse geschieht nun bereits unter Rückgriff auf die Repräsentanten LUT 11a: Eine Eingangsadresse von LUT 13 wird ersetzt durch drei entprechende Ausgangscodes von LUT 11, und diese werden durch ihre Repräsentanten aus LUT 11a ersetzt. So entsteht ein 3x1 Grauwertmuster, das Assoziation genannt wird.Learning the overlying LUT 13 can in principle be done in the same way. After LUT 11 and LUT 11a filled, the learning regions become a cluster analysis of real subregions 2 carried out. This analysis is now already taking recourse to the representatives LUT 11a : An input address of LUT 13 is replaced by three corresponding output codes from LUT 11 and these are made by their representatives from LUT 11a replaced. This creates a 3x1 gray value pattern called association.

Allgemein ist eine Assoziation eine Region oder Subregion mit typischen Daten auf dem Niveau der Ein gabedaten, (hier: Grauwerten), die einem Ausgangswert zugeordnet werden kann.Generally is an association of a region or subregion with typical data at the level of the input data, (here: gray values), which is an initial value can be assigned.

Die Assoziation zu einem Ausgangswert (z.B. von Ausgang 20 in 2) entsteht also wie folgt: Ersetze den Ausgangscode durch den Repräsentanten, also 34-Bit-Eingangscodes, ersetze (rekursiv) diese wieder durch ihre je 3 Repräsentanten, etc. bis hinab zu den repräsentativen Grauwerten. Unter Berücksichtigung der geometrischen Anordnung 1 zur Verknüpfungsstruktur 2 entsteht so eine bildhafte Assoziation zum ursprünglichen Ausgangswert.The association to an initial value (eg of output 20 in 2 ) thus arises as follows: Replace the output code by the representative, ie 34-bit input codes, replace them (recursively) by their 3 representatives, etc. down to the representative gray values. Taking into account the geometric arrangement 1 to the link structure 2 thus creates a pictorial association with the original starting point.

Bei der Clusteranalyse wird als Entfernungsmass zwischen möglichen Eingabedaten/Clusterzentren ein Unähnlichkeitsmass zwischen betreffenden Assoziationen herangezogen (z.B. einfach die Summe der absoluten Grauwertdifferenzen).at The cluster analysis is used as a measure of distance between possible Input data / cluster centers a dissimilarity between respective associations (e.g., simply the sum of the absolute gray value differences).

Wenn genau das gleiche Teil-Lernmuster zweimal eingegeben wurde, taucht es als mögliche Assoziation nur einmal auf. Das gleiche gilt bei ähnlichen Mustern mit gleichen Assoziationen. Hei der Clusteranalse ist die Anzahl der durchzuführenden Assoziations-Vergleiche also entsprechend der Kapazität der RAM-Pyramide beschränkt und nicht durch eine womöglich riesige Anzahl teilweise sehr ähnlicher Lernmuster gegeben.If exactly the same part-learning pattern was entered twice, emerges it as a possible association only once. The same applies to similar patterns with the same Associations. Hei of the cluster analysis is the number of association comparisons to be performed So according to the capacity the RAM pyramid limited and not by one possibly huge number partly very similar Given learning patterns.

Das Lernen geschieht so stufenweise von unten nach oben. Bei LUT 13 und allen folgenden werden zunächst die Clusterzentren berechnet und als Codes vergeben, mit der Repräsentantentabelle als Umkehrung davon, und die verbleibenden Adressen werden entprechend den jeweils nächstliegenden Assoziationen vergeben.The learning happens so gradually from bottom to top. At LUT 13 and all subsequent ones, the cluster centers are first calculated and assigned as codes, with the representative table as the inverse thereof, and the remaining addresses are assigned according to the closest associations.

Klassenmengen:Class amounts:

Bei Klassifikationsaufgaben werden die möglichen LUT-Ausgangswerte mit Klassenmengen verknüpft. Nimmt beim Vorzeigen eines Lernmusters der Klasse k eine LUT L den Ausgangswert a an, so wird die Klasse k in die Klassenmenge des Ausgangswertes a von LUT L aufgenommen. Klassenmengen können wie alle Mengen speichereffizient als Bitfolgen gespeichert werden, z.B. für bis zu 32 Klassen als ein 32-Bit-Wort.at Classification tasks will include the possible LUT output values Linked to class sets. When presenting a learning pattern of class k takes a LUT L the Output value a, the class k will be in the class set of Output value a of LUT L recorded. Class sets can be like all sets are stored efficiently as bit strings, e.g. For up to 32 classes as a 32-bit word.

Dieser Vorgang kann auch gleich stufenweise beim Lernen Phase 1 realisiert werden: die Klassenmenge zu einem Ausgangswert ist die Schnittmenge der Klassenmengen der Komponenten des betreffenden Repräsentanten.This The process can also be realized step by step during learning phase 1 The class set to an initial value is the intersection the class sets of components of that representative.

Eine RAM-Pyramide gilt als klassenrein, wenn bei jedem möglichen Ausgangswert die Klassenmenge maximal eine Klasse umfaßt.A RAM pyramid is considered class clean, if at every possible Output value the class set comprises at most one class.

Lernen Phase 2:Learning Phase 2:

Das Lernen Phase 1 ist nicht klassengesteuert, sondern basiert alleine auf Clusterung, es ist also genau genommen ein unüberwachtes Lernen. Dieses Lernen führt dennoch für eine Vielzahl von Fällen selbstätig auf klassenreine Netze.The Learning Phase 1 is not class-driven, but based alone on clustering, so it's strictly an unsupervised one Learn. This learning leads nevertheless for a variety of cases selbstätig on class-pure networks.

Ist die RAM-Pyramide nach dem Lernen Phase 1 nicht klassenrein, so werden in einer Art Backpropagation die Stufen, von oben beginnend, umgelernt, wobei nun in das Entfernungsmass zwischen Clustern nicht nur ein Unähnlichkeitsmass der Assoziationen (s.o.), sondern als Klassentrennungsbeitrag auch die Mächtigkeit der Differenzmenge der Klassenmengen eingeht (beispielsweise eine gewichtete Summation mit heuristisch eingestellten Gewichten).is the RAM pyramid after learning Phase 1 not class clean, so will be in a kind of back propagation the steps, starting from the top, re-learned, where now in the distance measure between clusters not only one dissimilarity of associations (see above), but also as a class separation contribution the power the difference set of the class sets is received (for example, a weighted summation with heuristically adjusted weights).

In einem iterativen Prozess, mit zunehmend stark bewertetem Klassentrennungsbeitrag und beginnend bei immer niedrigeren Stufen, kann so auch in vielen schwierigen Fällen eine klassenreine und dennoch sinnvoll clusternde Pyramide erzeugt werden.In an iterative process, with an increasingly highly rated class separation contribution and starting at ever lower levels, so too can in many difficult cases creates a class-pure, yet meaningfully clustered pyramid become.

Fehlermasse:Error Mass:

Beim Erkennen kann optional ein Fehlermass berechnet werden, das z.B. für eine Rückweisung herangezogen werden kann. Fehlermasse für jeden Eingangscode werden beim Lernen vorab in parallelen LUTs abgelegt als Unterschied zwischen der Assoziation zum Eingangscode und der Assoziation des Repräsentanten des zum Eingangscode tabellierten Ausgangscode. Diese Fehler werden beim Erkennen einfach aufsummiert, es brauchen keine Assoziationen berechnet zu werden.At the Optionally, an error metric may be calculated, e.g. for one rejection can be used. Error ground for each input code when learning in advance stored in parallel LUTs as difference between the Association to the input code and the association of the representative of the output code tabulated to the input code. These mistakes will be simply summed up on detection, it does not need any associations to be calculated.

Damit benötigt die Berechnung von Fehlermassen zusätzlich zu jedem Table-Look-Up nur einen weiteren Table-Look-Up plus eine Summation.In order to needed the calculation of error conditions in addition to each table look-up just another table look-up plus a summation.

Diese Fehlermasse sind nicht zu verwechseln mit den "Unbekannt"-Angaben bei PLNs (s.o.), die von (klassenspezifischen)-Häufigkeiten beim Lernen abgeleitet werden. Solche Häufigkeitsbetrachtungen können natürlich zusätzlich in die Clusteranalyse einbezogen werden.These Error masses should not be confused with the "unknown" values in PLNs (s.o.), which are of (class-specific) frequencies derived during learning. Of course, such frequency considerations can also be found in the cluster analysis will be included.

Hardwareumsetzuung:Hardwareumsetzuung:

3 zeigt ein Kernelement einer Hardwarestruktur zur Realisierung eines solchen RAM-Netzes für unser Beispiel. 3 shows a core element of a hardware structure for realizing such a RAM network for our example.

Das Kernelement realisiert die Berechnung eines Bereichs (s.o.) für eine LUT-Stufe einer stufenhomogenen RAM-Pyramide. Zu Anfang befinden sich die (Bild-)Daten in RAM 52. Nach Abschluß befinden sich die für diese Stufe bearbeiteten Daten in RAM 53.The core element realizes the calculation of a range (see above) for an LUT stage of a step-homogeneous RAM pyramid. At the beginning, the (image) data is in RAM 52 , Upon completion, the data processed for this stage is in RAM 53 ,

Zur Vereinfachung der Darstellung sind die Daten-Ein- und -Ausgänge der RAMs getrennt gezeichnet. Ein (ggf. zyklisch laufender) Adreßzähler 51 adres siert die beiden RAMs 52 und 53. Entprechend der Adreßzählung, im Bild z.B. zeilenweise, werden die gelesenen Daten in ein Schieberegister 54 mit zwei Schieberegisterpuffern 541 und drei Ausgängen geschoben. Die Ausgangsdaten adressieren ein weiteres RAM 55, das LUT-RAM, dessen Ausgangsdaten in RAM 53 geschrieben werden.For ease of illustration, the data inputs and outputs of the RAMs are separate records. A (possibly cyclic) address counter 51 adres siert the two RAMs 52 and 53 , According to the address count, in the picture, for example, line by line, the read data in a shift register 54 with two shift register buffers 541 and pushed three outputs. The output data address another RAM 55 , the LUT RAM, its output data in RAM 53 to be written.

Dieses Kernelement kann nun stufenweise im Ping-Pong-Betrieb oder als Wechselpuffer betrieben werden (schaltungstechnische Modifikationen hierzu sind gängige Technik und werden nicht einzeln ausgeführt) oder es können zur Parallelisierung mehrere solcher Kernelemente hintereinander als Pipeline geschaltet werden. Mit zunehmender Stufe können dabei die Adreßinkremente größer werden. Im Ping-Pong- oder Wechselpuffer-Betrieb wird das LUT-RAM über den "Stufe"-Adreßeingang umgeschaltet, ebenso beim Übergang von einem Bereich auf einen anderen.This Core element can now step by step in ping-pong operation or as an exchange buffer operated (circuitry modifications to this are common Technique and are not carried out individually) or it can to Parallelization of several such core elements in a row as Pipeline to be switched. With increasing level can do it the address increments grow. In ping-pong or swap-buffer operation, the LUT-RAM is passed through the "stage" address input switched, as well as the transition from one area to another.

Die Schieberegisterpuffer 541 können als zyklisch durchlaufenes RAM realisiert werden. Die Länge der Schieberegisterpuffer ist von Stufe zu Stufe unterschiedlich und durch die Verknüpfungsstruktur und das Format des bearbeiteten Bilds gegeben.The shift register buffers 541 can be realized as cyclic RAM. The length of the shift register buffers differs from level to level, given by the link structure and format of the edited image.

Die hierfür erforderlichen Steuereingänge sind nicht gezeichnet. Eine parallel laufende Fehlerberechnung ist nicht eingezeichnet. Einzelheiten wie die Ausblendung von Randbereichen (wegen wrap around Effekten) sind nicht gezeichnet.The therefor required control inputs are not drawn. A parallel error calculation is not located. Details such as the suppression of border areas (because of wrap around effects) are not drawn.

Vorteile:Advantages:

Da zum Erkennen lediglich eine Reihe von Speicher-Lesezyklen erforderlich ist, erreicht man eine sehr hohe Erkennungsgeschwindigkeit. Dies gilt ganz besonders bei stufenhomogenen RAM-Netzen, wie oben erläutert. Zudem ist das System mit relativ geringem Aufwand als Hardware realisierbar, insbesondere sind keine Multiplizierer erforderlich. Damit erreicht man leistungsfähige, extrem schnelle und dennoch preiswerte Erkennungssysteme.There to detect only a series of memory read cycles is required achieved a very high detection speed. This is especially true in step-homogeneous RAM networks, as explained above. In addition, the system with relatively little effort as hardware feasible, in particular no multipliers are required. This achieves powerful, extreme fast yet inexpensive recognition systems.

Wesentlich ist zudem die Transparenz des Systems: Aufgrund der hierarchisch organisierten Struktur von Assoziationen ist die interne Wirkungsweise des Systems jederzeit nachvollziehbar. Da die Eingangsbitbreite der LUTs jeweils die Ausgangsbitbreite übersteigt, findet in jeder Stufe eine Informationskomprimierung statt, und diese kann anschaulich interpretiert werden. Das Verhalten eingelernter Systeme ist auch im voraus berechenbar; damit sind solche Systeme grundsätzlich auch für sicherheitsrelevante Anwendungen denkbar. Diese Vorteile stehen in massivem Gegensatz zu konventionellen Neuronalnetzen.Essential is also the transparency of the system: due to the hierarchical organized structure of associations is the internal mode of action the system understandable at any time. Because the input bit width the LUTs each exceeds the output bit width found in each Stage an information compression instead, and this can be clearly interpreted become. The behavior of taught-in systems can also be calculated in advance; with that, such systems are basically also for Security-relevant applications conceivable. These benefits are in massive contrast to conventional neuronal networks.

Das Problem der Handhabung von Grauwerten und analogen Zwischenwerten ist speicherplatzsparend bei binärer Codierung gelöst, ohne auf spezielle Codes ("1-aus-n", "Thermometercode") zurückgreifen zu müssen.The Problem of handling gray values and intermediate analog values is memory-saving with binary Coding solved, without resorting to special codes ("1-out-n", "thermometer code") to have to.

Die RAM-Pyramide besitzt mehrere Informationsbits (s.o., plus ggf. eine Sicherheitsangabe) pro LUT, was die Mächtigkeit des Systems gegenüber bisher bekannten Ansätzen mit 1 Informationsbit grundsätzlich massiv erhöht.The RAM pyramid has several information bits (s.o., plus possibly one Safety indication) per LUT, what the power of the system compared to previously known approaches with 1 information bit in principle massively increased.

Für Klassifikationsaufgaben genügt eine einzige Pyramide (bisher wird pro Klasse eine separate Pyramide verwendet), klassengemeinsame Unterstrukturen müssen jeweils nur einmal gespeichert/adressiert werden.For classification tasks enough a single pyramid (so far, each class will have a separate pyramid used), class-specific substructures must be stored / addressed only once become.

Natürlich können als Eingangsdaten nicht nur Originaldaten, sondern auch vorverarbeitete Daten verwendet werden, z.B. geglättete Daten.Of course, as Input data not only original data, but also preprocessed Data can be used, e.g. smoothed data.

Die Verknüpfungen müssen nicht streng stufenweise realisiert sein; die Codes müssen nur von unten nach oben fortschreitend berechenbar sein.The connections have to not be realized strictly in stages; the codes just have to be calculable progressively from bottom to top.

Natürlich beziehen sich sämtliche, anhand von Bildern durchgeführten Erläuterungen, sinngemäß auch auf andere, insbesondere eindimensionale Signale.Of course, relate all, based on pictures Explanations, mutatis mutandis, too other, in particular one-dimensional signals.

Weitere Anwendungen:Other applications:

Eine alternative Anwendung eines solchen Systems betrifft die Anwendung als Assoziativspeicher, wobei die Assoziationen wie oben beschrieben gebildet werden. Solch ein Assoziativspeicher kann z.B. eingesetzt werden, um mittels lokaler Operatoren, wie oben beschrieben, Störungen in Bildern zu verringern, indem gestörte Bildregionen als fehlerfreie Assoziationen rekonstruiert werden.A alternative application of such a system concerns the application as associative memory, the associations being formed as described above become. Such an associative memory may e.g. be used by means of local operators, as described above, disturbances in Reduce images by distorting image regions as error-free Associations are reconstructed.

Eine weitere alternative Anwendung eines solchen Systems betrifft eine komprimierende Codierung und Dekomprimierung. Vorab werden beispielsweise lokale Operatoren eingelernt, wie oben geschildert. Zum Codieren werden auf das Originalbild (bzw. über das eindimensionale Originalsignal) diese Operatoren im Erkennungsmodus angewendet und es werden nur Ausgangswerte des Erkenners ausgegeben, vorzugsweise an Stellen mit kleinen Fehlermassen. Zum Dekomprimieren werden zu den Werten die Assoziationen berechnet und aus solchen Assoziationen wird das Originalbild (bzw. Originalsignal) rekonstruiert.A Another alternative application of such a system relates to a compressive coding and decompression. For example, beforehand local operators learned, as described above. For coding are applied to the original image (or via the one-dimensional original signal) these operators are applied in detection mode and it will only be Output values of the recognizer output, preferably in places with small error levels. Decompress becomes the values the associations are calculated and from such associations becomes the Original image (or original signal) reconstructed.

Schlußbemerkung:Conclusion:

Die RAM-Pyramiden können generell direkt in Hardware realisiert sein (Hardware-realisierte RAM-Pyramide) oder auf einem Rechner realisiert sein, wobei die LUTs als Teile des Arbeitsspeichers des Rechners oder von externen Speichern des Rechners realisiert sind (Rechner-Realisierte RAM-Pyramide). Wie bei anderen Realisierungsfragestellungen sind auch hier Mischformen möglich.The RAM pyramids can generally be implemented directly in hardware (hardware-implemented RAM pyramid) or be implemented on a computer, the LUTs are realized as parts of the main memory of the computer or external storage of the computer (computer-implemented RAM pyramid). As with other implementation questions, mixed forms are also possible here.

Claims (2)

Lernverfahren für Klassifikationsaufgaben, für eine Hardware-realisierte oder Rechner-realisierte RAM-Pyramide mit hierarchischer Verknüpfung von Look-Up-Tabellen, wobei Ausgangsbits je mehrerer Look-Up-Tabellen einer niederen Stufe zu Eingangsbits einzelner Look-Up-Tabellen höherer Stufe zusammengefaßt werden, wobei die Look-Up-Tabellen mindestens je 2 Informations-Ausgangsbits besitzen, wobei die Look-Up-Tabellen ergänzt sind durch je eine zweite, Hardware- oder Rechner-realisierte Look-Up-Tabelle, in der zu möglichen Ausgangswerten ein repräsentativer Eingangswert eingetragen ist, der aus Komponenten entprechend der Zusammenfassungsstruktur der RAM-Pyramide besteht, wobei über die zweiten Look-Up-Tabellen Assoziationen berechnet werden, wobei die Ausgangswerte der Look-Up-Tabellen clusterweise gebildet werden, dadurch gekennzeichnet, daß den Ausgangswerten Klassenmengen zugeordnet werden, und zur Clusterung ein Entfernungsmass verwendet wird, in das neben einem Unähnlichkeitsmass zwischen Assoziationen die Mächtigkeit der Differenzmenge von Klassenmengen eingeht.Classification task learning method, hardware-implemented or computer-implemented RAM pyramid with hierarchical linking of look-up tables, wherein output bits of each of a plurality of low-level look-up tables are combined into input bits of individual higher-level look-up tables in which the look-up tables have at least two information output bits each, the look-up tables being supplemented by a respective second hardware-or computer-implemented look-up table in which possible output values are given a representative input value is registered, which consists of components corresponding to the summary structure of the RAM pyramid, wherein via the second look-up tables associations are calculated, the output values of the look-up tables are formed cluster wise, characterized in that the output values are assigned to class quantities , and for clustering a distance measure is used, in addition to a dissimilar the degree of power between associations is the power of the difference set of class sets. Hardware-realisierte RAM-Pyramide mit hierarchischer Verknüpfung von Look-Up-Tabellen, wobei Ausgangsbits je mehrerer Luts einer niederen Stufe zu Eingangsbits einzelner LUTs höherer Stufe zusammengefasst werden, wobei die Look-Up-Tabellen mindestens je 2 Informations-Ausgangsbits besitzen, dadurch gekennzeichnet, daß ein Schieberegister (54) mit mehreren zusammengefaßten Anzapfungen eine Look-Up-Tabelle (55) adressiert.Hardware-implemented RAM pyramid with hierarchical linking of look-up tables, wherein output bits of each of a plurality of low level luts are combined into input bits of individual higher level LUTs, wherein the lookup tables have at least 2 information output bits each, characterized in that a shift register ( 54 ) with several summarized taps a look-up table ( 55 ) addressed.
DE200410060132 2004-12-13 2004-12-13 Classification Tasks Learning Procedure and Hardware-Implemented RAM Pyramid Expired - Fee Related DE102004060132B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE200410060132 DE102004060132B4 (en) 2004-12-13 2004-12-13 Classification Tasks Learning Procedure and Hardware-Implemented RAM Pyramid

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200410060132 DE102004060132B4 (en) 2004-12-13 2004-12-13 Classification Tasks Learning Procedure and Hardware-Implemented RAM Pyramid

Publications (2)

Publication Number Publication Date
DE102004060132A1 DE102004060132A1 (en) 2006-06-14
DE102004060132B4 true DE102004060132B4 (en) 2006-08-31

Family

ID=36500277

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200410060132 Expired - Fee Related DE102004060132B4 (en) 2004-12-13 2004-12-13 Classification Tasks Learning Procedure and Hardware-Implemented RAM Pyramid

Country Status (1)

Country Link
DE (1) DE102004060132B4 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1225543A2 (en) * 2000-11-28 2002-07-24 Xerox Corporation HVQ-based filtering method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1225543A2 (en) * 2000-11-28 2002-07-24 Xerox Corporation HVQ-based filtering method

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
AUSTIN, J.: RAM Based Neural Networks, A Short History. in J. Austin (ed): RAM Based Neural Networks. World Scientific Publishing Co. Pte Ltd. Singapore, 1998, pp. 3-17 *
DE QUEIROZ, R.L.; STEIN, P.A.: LUT filters for quantized processing of signals. In: IEEE Trans- actions on Signal Processing, Volume 52, Issue 3, März 2004, S. 687-693 *
LUDERMIR, T.B., CARVALHO, A. de, BRAGA, A.P., SOUTO, M.C.P. de: Weightless Neural Models: A Review of Current and Past Works. Neural Compu- ting Surveys 2, 1999, S. 41-61. http://www.scsi. berkeley.deu/ APPROX jagota/NCS *
LUDERMIR, T.B., CARVALHO, A. de, BRAGA, A.P., SOUTO, M.C.P. de: Weightless Neural Models: A Review of Current and Past Works. Neural Compu- ting Surveys 2, 1999, S. 41-61. http://www.scsi. berkeley.deu/~jagota/NCS

Also Published As

Publication number Publication date
DE102004060132A1 (en) 2006-06-14

Similar Documents

Publication Publication Date Title
DE69825196T2 (en) Image processing method and apparatus
DE69125471T2 (en) Method for automatic distinction between graphic information and text information from image data
DE3689062T2 (en) Method and device for generating high-resolution binary image data.
DE19623033C1 (en) Pattern recognition method using statistical process
DE112018004693T5 (en) IMPROVE THE EFFICIENCY OF A NEURONAL NETWORK
DE102019127282A1 (en) System and method for analyzing a three-dimensional environment through deep learning
DE102020133963A1 (en) Systems and Methods for Image Noise Reduction Using Deep Convoluted Networks
EP0523407A2 (en) Signal classification method
DE112019003587T5 (en) Learning device, operating program of learning device, and operating method of learning device
DE112020002186T5 (en) DNN TRAINING WITH ASYMMETRIC RPU UNITS
DE69820148T2 (en) Process for compression / decompression of image data
DE19545776A1 (en) Graduated display of digitally compressed waveforms
DE69123867T2 (en) Learning process for data processing system
WO2008034599A2 (en) Method and device for image processing
DE102004060132B4 (en) Classification Tasks Learning Procedure and Hardware-Implemented RAM Pyramid
EP1525442B1 (en) Method for analyzing the color deviations in images using an image sensor
DE69738363T2 (en) Coding method for digital information
EP0349819A1 (en) Digital neural network integrated circuit
DE112019001959T5 (en) SEGMENTING IRREGULAR SHAPES IN PICTURES USING DEEP AREA GROWTH
DE3917362C2 (en) Method for reducing visual artifacts due to compression over a transform in medical images
DE10048308B4 (en) Method and device for classifying objects from input image data present as a pixel pattern
DE69833836T2 (en) Method and apparatus for the scaling of images
EP0577631B1 (en) Process for compressing video images
DE19834718C2 (en) Digital image processing for a quality control system
DE202022102752U1 (en) A novel system of stacked parallel convolutional layers with an attentional module for classifying images of diabetic foot ulcers and normal skin

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee