Diplomarbeit, 1993
164 Seiten, Note: 1
Einleitung
1. Die Kohler´schen Versuche mit Umkehrbrillen
1.1. Einführung
1.2. Zusammenfassung der Untersuchungsergebnisse
1.3. Bedeutung der Kohler´schen Brillenversuche für die moderne Wahrnehmungsforschung
2. Aufbau und Funktionsweise des visuellen Systems
2.1. Die Stationen der visuellen Verarbeitung
2.1.1. Die funktionelle Organisation retinaler Ganglienzellen
2.1.2. Die Sehbahn und ihre Projektionen
2.1.3. Die Signalverarbeitung im Corpus Geniculatum Laterale
2.1.4. Die Signalverarbeitung im visuellen Kortex
2.1.5. Die Verarbeitung in den höheren visuellen Arealen
2.2. Ontogenetische Entwicklung und Plastizität im visuellen System
2.3. Objektrepräsentationen und Objekterkennung im visuellen System
2.3.1. Moderne Theorien des Sehens
2.3.1.1. Eine Arbeitshypothese: »Sehen als Zuordnen von internen Repräsentationen zu Objekten der Außenwelt«
3. Computersimulierte neuronale Netzwerke
3.1. Einleitung
3.2. Vergleich zwischen natürlichen und künstlichen neuronalen Netzwerken
3.3. Geschichtlicher Überblick der Entwicklung neuronaler Netzwerke
3.4. Struktur und Funktionsweise mehrschichtiger neuronaler Netze
3.4.1. Allgemeiner Aufbau
3.4.2. Der Lernvorgang in einem neuronalen Netzwerk
3.4.3. Der Informationsverarbeitungsvorgang in einem Prozessorelement
3.5. Das Backpropagation-Netzwerk
3.5.1. Aufbau eines Backpropagation-Netzwerks
3.5.2. Die generalisierte Delta - Lernregel
3.5.3. Backpropagation-Netzwerke als vereinfachte Modelle für menschliche Wahrnehmungssysteme
3.6. Interne Repräsentationen in neuronalen Netzwerken und Matrixspeichern
3.6.1. Interne Repräsentationen in neuronalen Netzwerken
3.6.2. Interne Repräsentationen in Matrixspeichern
3.6.2.1. Mathematischer Formalismus und Funktionsweise von Matrixspeichern
3.6.2.2. Entwicklung eines musterassoziierenden Matrixspeichers
3.6.2.3. Matrixspeicher als Modelle für die Großhirnrinde
3.6.2.3.1. Das Assoziativ-Speichermodell der Hirnrinde von Günther Palm
3.6.2.3.2. Anwendung des Palm´schen Assoziativspeichermodells
3.6.3. Zusammenfassung
4. Die Computer-Simulation des neuronalen Umlernvorgangs während des Tragens einer Umkehrbrille
4.1. Einleitung
4.2. Beschreibung des Seh- und Umlernvorgangs durch einen musterassoziierenden Matrixspeicher
4.2.1. Der musterassoziierende Matrixspeicher M.A.M.
4.2.2. Durchführung der Simulation
4.2.2.1. Zuordnung interner Repräsentationen zu aufrechten Objekten
4.2.2.2. Zuordnung interner Repräsentationen zu verkehrten Objekten
4.3. Zusammenfassung und Diskussion der Assoziativspeicher-Simulationsergebnisse
4.4. Simulation des neuronalen Umlernvorgangs durch ein Backpropagation-Netzwerk
4.4.1. Erzeugung des Backpropagation-Netzwerks
4.4.2. Training des Netzwerks durch die Lernmusterdateien für aufrechte und verkehrte Muster
4.4.3. Analyse der synaptischen Gewichtungen
4.4.3.1. Untersuchungsfrage
4.4.3.2. Erhebung der Gewichte
4.4.3.3. Statistische Auswertung
4.4.3.3.1. Testauswahl
4.4.3.3.2. Durchführung des T-Tests für unabhängige Stichproben
4.4.4. Simulation des Überlernens von Assoziationen
4.5. Zusammenfassung und Diskussion der Netzwerk-Simulationsergebnisse
4.6. Annahme eines »Neuronalen Erklärungsmodells« zum Umlernvorgang während des Tragens einer Umkehrbrille
Literaturliste
Bildnachweise
Anhang
Quellcode des Programms M.A.M.
Lernmusterdateien der Muster: »Buchstaben, Symbole, Ziffern«
Gewichtungen der synaptischen Verbindungen nach erfolgreichem Training
Die Brillenversuche haben eine lange Tradition und demzufolge gibt es eine Fülle von Abhandlungen zu diesem Thema. Diese Arbeiten befassen sich jedoch hauptsächlich mit der Beschreibung der kontinuierlichen Adaption des Menschen an den - durch Prismen- und Spiegelbrillen - veränderten Input an das visuelle System auf rein verhaltensbeobachtender Ebene (siehe das Kapitel 1.2).
Der Frage, wie sich diese Adaption auf neuronaler Ebene vollzieht, wurde bisher noch nicht nachgegangen.
Zu diesem Zweck müßten visuelle Systeme von Individuen, die sich erfolgreich an die veränderten Umweltbedingungen angepaßt haben, mit solchen verglichen werden, bei denen ein Umlernen nicht stattgefunden hat. Nun sind solche Untersuchungen aber mit erheblichem methodischen Aufwand verbunden, da man ja die Veränderungen in der zellulären Struktur des visuellen Systems in erster Linie mit Hilfe[1] histologischer Methoden beschreiben müßte.
Als Alternative bietet sich nun eine Technologie an, die in den letzten Jahren stark an Bedeutung gewonnen hat und sich in ihrer vergleichsweise einfachen Handhabung möglicherweise für diese Art von Untersuchungen eignet: Die Nachbildung menschlicher Wahrnehmungssysteme mit Hilfe computersimulierter neuronaler Netzwerke (Hinton, 1992; Kohonen, 1984).
Obwohl die simulierten Netzwerke im Vergleich zu ihren natürlichen Vorbildern meist drastisch vereinfacht sind (Schweizer, 1986), so lassen sich in bezug auf Aufbau, Funktionsweise und Verhalten gewisse Parallelen nicht leugnen (siehe das Kapitel 3.2). Diese Ähnlichkeiten gehen so weit, daß einige der führenden Netzwerk-Forscher der Meinung sind, daß solche Simulationen durchaus eine hohe explikative Potenz aufweisen (Hinton, 1992).
Zumindest stellen die Erkenntnisse aus Netzwerk-Simulationen eine sinnvolle Ergänzung zu den traditionellen Untersuchungsmethoden dar.
In diesem Sinne wurde Im Rahmen dieser Diplomarbeit ansatzweise versucht, bestimmte Teilaspekte des neuronalen Umlernvorgangs während des Tragens einer Umkehrbrille, mit einem computersimulierten neuronalen Netzwerk nachzubilden und die entstandenen neuronalen Strukturen auf Unterschiede zu untersuchen (Kap.4.4).
Die Versuche mit Umkehrbrillen haben eine fast hundertjährige Tradition. Schon 1896 experimentierte George Stratton mit einem Linsensystem, das ein seitenverkehrtes und auf dem Kopf stehendes Bild erzeugte (Rock, 1985). Obwohl Stratton seine mehrtägigen Selbstversuche nur einäugig durchführte, und obwohl ein Linsensystem neben der Bildumkehr noch andere, unkontrollierbare Effekte erzeugt (chromatische Aberration, Verzerrungen, usw.), konnte er trotzdem eine allmähliche Anpassung an diese veränderten Umweltbedingungen beobachten. Er kam zu dem Schluß, daß im Laufe der Zeit ein vollständiges Aufrechtsehen wieder gelernt werden kann, wenn man das Linsensystem nur lange genug trägt. Stratton wies außerdem auf die Wichtigkeit des Tastsinn es für das Wiedererlernen des Aufrechtsehens hin.
Ewert experimentierte schon mit beidäugigen Linsensystemen und konnte ebenfalls den Nachweis erbringen, daß durch eine Anpassung des äußeren Verhaltens ein Zurechtfinden in der durch das Linsensystem veränderten Umwelt möglich ist. Die Frage des Erlernens des aufrechten Sehens wurde von Ewert aber vernachlässigt (Kohler, 1951).
William Stern benutzte 1927 Prismenbrillen zur Bildumkehr. Da aber Prismen in noch viel stärkerem Maße als die beschriebenen Linsensysteme Bildverfälschungen erzeugen, wurde deutlich, daß für weiterführende Untersuchungen bessere Techniken der Bildumkehr entwickelt werden müssen.
Theodor Erismann benutzte erstmalig im Jahre 1928 eine Spiegelbrille für die Bildumkehr, die den Vorteil hatte, das auf dem Kopf stehende Bild unverfälscht und seitengetreu darzustellen. Da diese Umkehrbrille aber die Sicht auf den Boden und die Füße der Probanden verdeckte, wurden noch keine mehrtägigen Dauerversuche durchgeführt.
Am Institut für Psychologie der Universität Innsbruck wurde im Jahre 1947 diese sogenannte Erismann´sche Umkehrbrille dahingehend verbessert, daß nun der Blick des Brillenträgers auf die eigenen Füße und auf körpernahe Objekte frei war (Abb.1.1).
Die Umkehrbrille war nun » straßenfähig « (Kohler, 1951), und somit in idealer Weise für mehrtägige Dauerversuche geeignet.
Kohler unterzog sich und andere Versuchspersonen in weiterer Folge immer wieder mehrtägigen Dauerbrillenversuchen mit dieser Umkehrbrille und konnte dadurch den Nachweis erbringen, daß das menschliche visuelle System - trotz der durch die Umkehrbrille veränderten Umweltbedingungen - in der Lage ist, das Aufrechtsehen wieder zu erlernen.
Es bleibt noch zu erwähnen, daß die Versuche mit Umkehrbrillen nur einen kleinen Teil der umfangreichen und originellen Forschungsarbeit Kohler´s und Erismann´s auf dem Gebiet der visuellen Wahrnehmungsmodifikation durch optische Vorsatzgeräte ausmachten. Neben diesen Umkehrbrillenversuchen wurden weit aufwendigere Versuche mit Farbhalbbrillen, Prismen- und Halbprismenbrillen durchgeführt, wobei Kohler selbst einmal eine Prismenbrille 124 Tage ununterbrochen trug.
Während des Tragens der Umkehrbrille führten die Versuchspersonen Tagebuch über ihre Erlebnisse und Veränderungen der visuellen Wahrnehmung; parallel dazu wurde ihr äußeres Verhalten aufgezeichnet. Die Ergebnisse dieser Untersuchungen sind in der folgenden Gliederung zusammengefaßt:
- Während der ersten Tage des Tragens der Umkehrbrille sahen die Vpn. die Umwelt auf dem Kopf stehend. Die Vpn. waren in dieser Phase noch höchst unsicher und mußten begleitet werden, um Unfälle zu vermeiden.
- Nach ca. drei Tagen waren die Vpn. in der Lage, sich in ihrer noch verkehrt gesehenen Umwelt zurechtzufinden. Die Vpn. hatten gelernt, ihr »äußeres Verhalten« (Kohler, 1951) den verändert wahrgenommenen Umweltbedingungen anzupassen. Die Gesichtseindrücke erschienen aber nur dann aufrecht, wenn die gesehenen Gegenstände gleichzeitig abgetastet werden konnten, oder wenn diese sich in nächster Nähe des eigenen Körpers der Brillenträger befanden.
- Nach ungefähr neun Tagen sahen die Vpn. wieder eindeutig aufrecht.
Nach dem Abnehmen der Umkehrbrille wurde der vorher beschriebene Umlernprozeß quasi im »Zeitraffertempo« durchlaufen:
- In den ersten Minuten sahen viele Vpn. die nun richtig orientierte Umwelt noch minutenlang eindeutig verkehrt.
- Das äußere Verhalten konnte sehr schnell den veränderten Umweltbedingungen angepaßt werden.
- Noch einige Tage nach der Abnahme der Umkehrbrille konnten Augenblicke des Verkehrtsehens oder der Desorientierung beobachtet werden.
Es wurde bereits erwähnt, daß unter bestimmten Bedingungen schon nach dreitägigem Tragen einer Umkehrbrille ein zeitweiliges Aufrechtsehen möglich ist; diese Bedingungen sind in der folgenden Gliederung zusammengefaßt:
- Abtasten des gesehenen Gegenstandes: Wenn die Vpn. verkehrt gesehene Gegenstände abtasten konnten, dann wurden diese Gegenstände plötzlich als aufrecht wahrgenommen. Auch das indirekte Abtasten über einen verlängerten Taststock hatte diesen Effekt. Wichtig ist hier zu erwähnen, daß die eigenen Hände immer zuallererst als aufrecht wahrgenommen wurden.
Diese Beobachtungen Kohler´s decken sich mit den Ergebnissen aus den späteren Untersuchungen von Held, der nachweisen konnte, daß eine Anpassung an durch eine Prismenbrille veränderte Umwelt nur dann möglich ist, wenn sich die Vpn. aktiv motorisch mit dieser auseinandersetzen können (Held, 1986).
- Schwereempfindungen: Die Vpn. sahen immer dann aufrecht, wenn visuelle Eindrücke mit Schwereempfindungen einzelner Körperteile oder des gesamten Körpers einhergingen. Dazu schreibt Kohler:
Ein weiterer Faktor waren Schwereempfindungen, welche das verkehrte Bild aufzurichten vermochten; ein Gewicht an einer Schnur wurde ´unten´ gesehen, sobald die Vp. das Ende selbst in die Hand nahm; auch Gegenstände, die dahinter lagen, erschienen sofort aufrecht, wenn das Pendel ´in Ordnung´ war. Betonte Schwereempfindungen des ganzen Körpers, wie z.B. beim Aufwärtsfahren im Auto, ´kehrten die Landschaft um´ und stellten das Bild richtig.
(Kohler,1951)
- Aktivierung von internen Wissensrepräsentationen: Für Kohler ist die Aktivierung von Wissensrepräsentationen, die er unter dem Begriff der »gewohnt aufrechten Bilder« subsumiert, eine weitere Ursache für das zeitweilige Aufrechtsehen; er schreibt dazu:
Als sehr wirksamer Anlaß für das aufrechte Sehen erwies sich weiters das ´gewohnt-aufrechte´ Bild: eine Kerze, die zunächst verkehrt gesehen wurde, mit dem Docht nach unten, war plötzlich aufrecht, wenn man sie anzündete. Auch der Rauch einer brennenden Zigarette vermochte die Situation auf der Stelle umzukehren; plötzlich war für die Vp. dort ´oben´, wo der Rauch hinging u. dgl. m.
(Kohler, 1951)
Verallgemeinernd kann man zusammenfassen, daß immer dann aufrecht gesehen wurde, wenn neben dem visuellen Input zusätzliche Informationen über das Gesehene in die Wahrnehmung miteinbezogen werden konnten.
Nach Ritter konnten aus den Kohler´schen Brillenversuchen hauptsächlich drei Erkenntnisse gewonnen werden, die von entscheidender Bedeutung für die moderne Wahrnehmungsforschung waren:
- Das visuelle Wahrnehmungssystem besitzt entgegen aller bis dahin gültigen Lehrmeinungen eine große Plastizität und Lernfähigkeit.
- Im visuellen Wahrnehmungssystem existieren offenbar »intelligente« Verarbeitungsmechanismen, die selbst bei Störungen der Informationsaufnahme in der Lage sind, Eigenschaften und Merkmale der Umwelt richtig zu entschlüsseln.
- Das motorische System ist für eine erfolgreiche Adaption an veränderte Umweltbedingungen von entscheidender Bedeutung:
Damit Lernvorgänge in Gang kommen, die eine umgebungsrichtige Wahrnehmung entstehen lassen, muß eine aktive, motorische Auseinandersetzung mit der Umwelt stattfinden. ... Offenbar sind die Rückmeldungen über das eigene motorische Handeln entscheidend dafür, daß Adaption und Lernen im Wahrnehmungssystem zustande kommen.
(Ritter, 1986)
Bereits auf der Netzhaut erfolgt eine einfache Verrechnung der visuellen Information. So[2] konvergieren 108 Stäbchen und Zäpfchen der Netzhaut auf nur 106 retinale Ganglienzellen (Abb.2.1). Das bedeutet, daß jeweils 100 Sinneszellen mit einer Ganglienzelle verschaltet sind. Diese 100 Stäbchen und Zäpfchen bilden nun auf der Netzhaut ein sogenanntes Rezeptives Feld (Hubel, 1989). Dieses Rezeptive Feld (RF) ist rund und besteht aus einem RF-Zentrum und aus einer RF-Peripherie (Abb.2.2).
Nachdem immer jeweils eine Ganglienzelle für ein RF zuständig ist, spricht man vom Rezeptiven Feld einer Ganglienzelle. Da in der Netzhaut 106 Ganglienzellen existieren, kann man annehmen, daß ebensoviele RF vorhanden sein müssen. Die RF der einzelnen Ganglienzellen liegen nun aber nicht fliesenartig nebeneinander, sondern sie weisen eine starke Überlappung auf (Abb. 2.6). So erregt ein Lichtreiz von nur 0,1 mm Größe noch eine Vielzahl von in der Netzhaut nebeneinanderliegenden Ganglienzellen. Somit sammeln benachbarte Ganglienzellen Information von ähnlichen, aber nicht völlig identischen Retinabereichen (Bliem et al., 1981).
Die Aktivität einer Ganglienzelle ist abhängig vom Ort der Reizung ihres rezeptiven Feldes; man unterscheidet hierbei:
- On-Zentrum-Neurone (On-Zentrum-Ganglienzellen), die mit erhöhter Aktivität auf die Reizung ihres RF-Zentrums, und mit erniedrigter Aktivität auf die Reizung ihrer RF-Peripherie reagieren,
und
-[3] Off-Zentrum-Neurone, die mit erniedrigter Aktivität auf die Reizung ihres RF-Zentrums, und mit erhöhter Aktivität auf die Reizung ihrer RF-Peripherie reagieren.
Die Axone der retinalen Ganglienzellen treten gebündelt aus den Augen aus und bilden die beiden Sehnerven. Diese laufen an der Schädelbasis aufeinander zu und tauschen in der Sehkreuzung etwa die Hälfte ihrer Nervenfasern aus (Abb.2.3). Das linke Gesichtsfeld beider Augen wird dadurch in die rechte Sehrinde projiziert und umgekehrt (Birbaumer, 1990).
Nach der Sehkreuzung verlaufen die Ganglienaxone zum Corpus geniculatum laterale (CGL), einem Kerngebiet des[4] Thalamus, an dessen Neuronen sie synaptisch enden. Das CGL stellt somit die erste und einzige Schaltstelle auf direktem Weg zwischen Netzhaut und Hirnrinde dar.
Der »Ausgang« des CGL führt als Sehstrahlung zur Area 17 der Sehrinde, von wo aus Projektionsbahnen zu den Areae 18 und 19 ihren Ausgang nehmen.
Das CGL ist aus sechs Neuronenschichten aufgebaut, wobei die Schichten 1, 4 und 6 dem rechten, und 2, 3 und 5 dem linken Auge zugeordnet sind. Dies bedeutet, daß die Signalverarbeitung jeweils dreier Schichten im wesentlichen von einem Auge bestimmt wird. Daraus kann man schließen, daß auf dieser Ebene noch keine binokulare Verarbeitung der visuellen Signale zum Zwecke des stereoskopischen Sehens erfolgt; dies geschieht erst im visuellen Kortex.
Die Rezeptiven Felder der Ganglienzellen des CGL sind jenen der retinalen Ganglienzellen sehr ähnlich. Man unterscheidet hier ebenfalls zwischen On- und Off-Zentrum-Neuronen.
Die Sehrinde ist - wie der übrige Kortex - aus sechs Zellschichten (I...VI) aufgebaut. Die Nervenfasern der Sehstrahlung enden vor allem in den Seharealen der Zellschicht IVc, von wo aus die Informationsverarbeitung im Kortex ihren Ausgang nimmt.
Die Neurone des visuellen Kortex sind funktionell in sogenannte[5] Zellsäulen oder -platten unterteilt.
Es wechseln sich nämlich Säulen von Neuronen, die vorwiegend Informationen aus dem linken Auge verarbeiten (L in Abb.2.4), regelmäßig mit solchen ab, bei denen die Verarbeitung aus dem rechten Auge (R) dominiert. Diese parallel zur Kortexoberfläche verlaufenden Säulen werden deshalb Okuläre Dominanzsäulen genannt. Innerhalb dieser Säulen lassen sich weitere »Untersäulen« nachweisen, die senkrecht zur Kortexoberfläche orientiert sind. Die Neurone innerhalb einer solchen »Untersäule« reagieren nur auf retinale Reize derselben[6] Orientierung (z.B. auf einen um 10 Grad geneigten Lichtbalken). Man nennt deshalb eine solche Säule auch Orientierungspräferenzsäule. Jede Orientierungspräferenzsäule innerhalb einer Okulären Dominanzsäule ist nun auf eine etwas andere Reizorientierung spezialisiert.
Die bevorzugten Reizorientierungen ändern sich dabei von Säule zu Säule um jeweils 10 bis 20 Grad (In der Abb.2.4 wird dies durch die verschieden orientierten kleinen Striche innerhalb der Orientierungspräferenzsäulen angedeutet).
In 15 bis 20 Orientierungspräferenzsäulen innerhalb einer okulären Dominanzsäule für das linke (L) oder das rechte (R) Auge, sind somit alle möglichen Reizorientierungen eines Retinabereiches enthalten. Die Orientierungspräferenzsäulen zweier nebeneinanderliegender okulären Dominanzsäulen zusammengenommen, ergibt eine sogenannte Hyperkolumne (dick ausgezogener Bereich in Abb.2.4). Eine solche Hyperkolumne stellt damit einen Analysemechanismus für alle möglichen Reizorientierungen für korrespondierende Netzhautbereiche beider Augen dar. Nebeneinanderliegende Hyperkolumnen versorgen auch nebeneinanderliegende Netzhautbereiche.
Innerhalb einer Orientierungspräferenzsäule kann man aufgrund der Struktur ihrer Rezeptiven Felder und der damit verbundenen Verhaltensweisen folgende Einteilung zwischen den Neuronen aller Zellschichten treffen (Hubel, 1989):
- Einfache Zellen: Diese Neurone liegen hauptsächlich in den Schichten IVb und IVa und besitzen ellipsoide RF mit On- und Off-Arealen. Die einfachen Zellen reagieren nur dann, wenn eine Hell-Dunkel-Kontur (Kante) mit einer bestimmten Orientierung auf einen genau definierten Ort der Retina fällt.
- Komplexe Zellen: Diese reagieren - wie die Einfachen Zellen - am besten auf eine Kante mit einer bestimmten Orientierung. Innerhalb des RF eines Komplexen Neurons ist die Reizposition - aufgrund des Fehlens von On- und Off-Arealen - im Gegensatz zur Einfachen Zelle jedoch unwichtig. Eine Komplexe Zelle reagiert also dann maximal, wenn sich eine Kante mit einer bestimmten Orientierung irgendwo innerhalb einer bestimmten Netzhautregion (dem RF des Komplexen Neurons) befindet. Komplexe Zellen finden sich hauptsächlich in den Schichten II, III, V und VI des visuellen Kortex.
- Hyperkomplexe Zellen: Hyperkomplexe Zellen reagieren maximal auf bewegte Ecken oder rechte Winkel einer bestimmten Orientierung innerhalb ihrer RF. Diese Zellart ist besonders zahlreich in den Schichten II und III anzutreffen.
Die bisher besprochene visuelle Verarbeitung findet in der Area 17, der sogenannten primären Sehrinde statt. Neben dieser primären Sehrinde existieren aber noch eine Vielzahl weiterer[7] visueller Felder, die in der Fachliteratur mit dem Buchstaben V (für visuelles Feld) und einem Laufindex bezeichnet werden. In der Sehrinde des Affen (Abb.2.5) werden bis zu 15 visuelle Felder vermutet (Thompson, 1990), und wahrscheinlich besitzt der Mensch mindestens ebensoviele. Das Feld V1 entspricht der primären Sehrinde, also der Area 17. Alle übrigen visuellen Felder sind dieser primären Sehrinde übergeordnet; so bezieht das Feld V2 seinen Input aus V1, V3 aus V2 und V1, usw. Die Felder des visuellen Kortex sind damit sowohl seriell (z.B. V1 ê V2 ê V3) als auch parallel (z.B. V1 ê V2, V1 ê V3) miteinander verschaltet.
In den höheren visuellen Feldern werden die Informationen aus V1 hinsichtlich solcher Parameter wie Orientierung, Form, Größe, Farbe, Bewegung, Lage auf der Netzhaut in beiden Augen, weiter analysiert. Diese Analyse erfolgt stufenweise über die serielle Verschaltung zwischen den einzelnen visuellen Feldern. Gleichzeitig aber erfolgt über die parallele Verschaltung eine Integration der einzelnen Verarbeitungsprozesse.
Einige höhere visuelle Areale scheinen auf die Analyse komplexerer Formen als Ecken oder rechte Winkel spezialisiert zu sein; so konnten Grossberg u. Mitarb. eine Zelle im VTE-Feld (Abb.2.5) eines Affen identifizieren, die immer dann maximal reagierte, wenn ihrem Rezeptiven Feld ein Reiz in Form einer erhobenen Affenhand präsentiert wurde (Thompson, 1990).
Daß solche Ergebnisse jedoch mit Vorsicht zu interpretieren sind, wird im Kapitel 2.3 aufzuzeigen versucht.
Die Sehbahnen und Sehareale sind zum Zeitpunkt der Geburt bei allen höheren Säugern bereits ausgebildet, doch die Feindifferenzierung (Aufbau der Dominanz- und Orientierungssäulen) erfolgt erst postnatal innerhalb einer genau definierten Zeitspanne ([8] Kritische Periode). Diese Selbstorganisation des visuellen Kortex ist dabei in starkem Maße umweltabhängig und somit äußerst empfindlich gegenüber Störungen.
So können Katzen, denen während der vierten und der fünften Lebenswoche ein Auge chirurgisch verschlossen wurde, später nicht mehr beidäugig sehen; das zeitweilig verschlossene Auge bleibt lebenslänglich funktionslos. Anatomisch läßt sich bei diesen Katzen eine deutliche Schrumpfung der okulären Dominanzsäulen des einstmalig verschlossenen Auges, sowie eine Verbreiterung der okulären Dominanzsäulen des anderen Auges feststellen (Hubel & Wiesel, 1963).
Auch die Entwicklung des Konturensehens ist auf entsprechende visuelle Reize angewiesen, wie Hubel u. Mitarb. wiederum durch Versuche mit neugeborenen Katzen nachweisen konnten:
Einige Kätzchen wurden dabei in einer Umgebung aufgezogen, die nur senkrechte Streifenmuster aufwies. Bei diesen Kätzchen konnte später ein deutliches Überwiegen von Neuronen mit einer Präferenz für senkrechte Orientierungen, sowie ein schwerer Mangel an Neuronen mit anderen Orientierungspräferenzen festgestellt werden. Diese Tiere zeigten dementsprechend auch ein Verhalten, das auf eine verminderte visuelle Wahrnehmungsfähigkeit schließen ließ.
Analog dazu, konnten Menschen, die durch Hornhauttrübung in frühester Jugend erblindeten, später - nach erfolgreicher Operation - das richtige Sehen nicht wieder erlernen. Nur einige wenige Patienten erlernten unter größter Anstrengung, einfache Muster zu erkennen und sich - mit Hilfe ihres Gesichtssinnes - grob zu orientieren. Viele der Patienten brachen die Rehabilitationsversuche ab und lebten lieber weiterhin als Blinde (Singer, 1990).
Diese Versuchsergebnisse veranlassen zu der Annahme, daß das fertig entwickelte visuelle System wenig lernfähig ist. Wenn die sensible Phase für die Differenzierung der okulären Dominanz- und der Orientierungszellsäulen abgelaufen ist, bleiben die innerhalb dieser Zeit angelegten neuronalen Strukturen lebenslänglich bestehen. Es war Kohler´s Verdienst, durch seine Brillenversuche aufzuzeigen, daß auch das adulte visuelle System noch von einer erstaunlichen Plastizität ist.
Für die normale Entwicklung des visuellen Systems spielt offenbar auch das motorische System eine wichtige Rolle, wie die Untersuchungen Held´s zeigen: Held zog zwei wenige Tage alte Kätzchen so auf, daß in einem entsprechend konstruierten Apparat, sich das eine Kätzchen relativ frei bewegen konnte, während das andere dieselbe Umgebung nur passiv aus einer »Gondel« miterlebte. Entließ man die so aufgezogenen Jungtiere in ihre gewohnte Umgebung, dann zeigte sich, daß die »aktiven« Kätzchen sich schneller und effektiver in einer neuen Umgebung zurechtfanden, als die »passiven« Kätzchen (Held, 1963).
Held´s Untersuchungsergebnisse machen deutlich, daß nur durch die aktive motorische Auseinandersetzung mit der Umwelt eine normale Entwicklung des visuellen Systems möglich ist.
Schon Kohler machte - wie bereits erwähnt - die Beobachtung, daß das Abtasten eines - aufgrund einer Umkehrbrille - verkehrt gesehenen Gegenstandes, ein plötzliches Aufrechtsehen desselben bewirkte. Später konnte Held nachweisen, daß für die erfolgreiche Adaption an durch Umkehr- und Prismenbrillen veränderte Umweltbedingungen, die motorische Interaktion unbedingt erforderlich ist (Held, 1963).
Die Tatsache, daß es im Kortex Neurone gibt, die anscheinend spezifisch auf komplexe Formen reagieren (Kap.2.1.5), hat viele Leute dazu veranlaßt zu spekulieren, daß es auch Neurone in höheren visuellen Arealen geben müsse, die auf die Erkennung einzelner Objekte spezialisiert sind. Anerkannte Neurobiologen, wie z.B. David Hubel selbst, haben jedoch für derartige Spekulationen nicht viel übrig:
Spezialisieren sich die Zellen auf zentraleren Verarbeitungsstufen immer weiter, bis man schließlich auf einer bestimmten Stufe Zellen findet, die nur noch auf das Gesicht eines individuellen Menschen, beispielsweise der eigenen Großmutter, reagieren? Diese Vorstellung, die man als Großmutterzellentheorie bezeichnet hat, kann man nur schwerlich ernst nehmen. Sollten wir etwa getrennte Zellen für eine lächelnde Großmutter, eine weinende Großmutter und eine nähende Großmutter erwarten? Und unterschiedliche Zellen für verschiedene Konzepte oder Definitionen von ´Großmutter´ - die Mutter der Mutter oder die Mutter des Vaters? Und wenn wir Großmutterzelle n hätten, wohin würden sie projizieren?
(Hubel, 1989)
Eine Alternative zur Großmutterzellentheorie läßt sich aus den - 1962 von Hubel und Wiesel vorgeschlagenen - Verschaltungsmechanismen zur Erklärung der Entstehung von RF für Kanten und Winkel der einfachen, komplexen und hyperkomplexe Zellen, ableiten:
- Das Rezeptive Feld einer einfachen kortikalen Zelle, könnte durch die Konvergenz mehrerer CGL-Neurone, mit sich überlappenden konzentrischen ON-Off-RF, zustande kommen (Abb.2.6). Die On-Zentren (+) dieser RF müßten dabei in Übereinstimmung mit der Orientierungsachse des Rezeptiven Feldes der einfachen kortikalen Zelle eine gerade Linie auf der Netzhaut bilden (strichlierter Balken in Abb.2.6).
- Das RF einer Komplexen Zelle kann durch die Konvergenz mehrerer Einfacher Zellen erklärt werden (Abb.2.7). In unserem Fall ergibt das »Zusammenschalten« der RF von 3 Einfachen Zellen mit einer Präferenz für horizontal orientierte Kanten, ein größeres RF einer Komplexen Zelle, welches über den gesamten Bereich für horizontal orientierte Kanten sensibel ist (strichliertes großes Rechteck in Abb.2.7).
- Durch die Konvergenz einer inhibitorisch (hemmend) und einer exzitatorisch (erregend) wirkenden Komplexen Zelle auf eine Hyperkomplexe Zelle kann die Entstehung eines RF für horizontale Eckenreize erklärt werden (Abb.2.8). Der in Abbildung 2.8 dargestellte Kantenreiz über beide RF der Komplexen Zellen führt zu keiner maximalen Erregung der Hyperkomplexen Zelle, da der inhibitorische Input den exzitatorischen Input nivelliert. Ein auf das linke RF-Areal (ausgezogenes linkes Rechteck in Abb.2.8) begrenzter Kantenreiz würde jedoch zu einer maximalen Erregung der Hyperkomplexen Zelle führen, da die inhibitorische Komplexe Zelle nicht aktiviert wird.
Aus diesen Schaltplänen geht hervor, daß niemals nur eine Zelle an der Wahrnehmung eines einfachen visuellen Reizes beteiligt ist, sondern immer ein ganzes Netz von Neuronen. So sind nach dem obigen Modell bei der Wahrnehmung einer Kante über einen größeren Netzhautbereich (Abb.2.7) mindestens 16 Zellen gleichzeitig aktiv (12 CGL-Neurone konvergieren auf drei Einfache Zellen, welche wiederum auf eine Komplexe Zelle konvergieren). Wenn nun bei einem neurobiologischen Experiment nur die Aktivität einer dieser Zellen abgeleitet werden würde, dann könnte fälschlicherweise der Eindruck entstehen, daß genau diese Zelle für die Wahrnehmung einer Kante zuständig sei. Unter diesem Aspekt sind auch die in Kapitel 2.1.5 erwähnten Experimente von Grossberg u. Mitarb. zu sehen.
Man kann sich vorstellen, daß durch die »Zusammenschaltung« vieler kleinerer Neuronennetze mit einfachen Rezeptiven Feldern, ein größeres Netz entsteht, welches genau dann maximal aktiviert ist, wenn ein bestimmtes Objekt, beispielsweise eine Vase, im Gesichtsfeld erscheint.
Hubel bezeichnet solche Neuronennetze als »Konstellationen«:
... [ [9] Als] Alternative [zur Großmutterzellentheorie] ist anzunehmen, daß ein Objekt jeweils eine bestimmte Konstellation von Zellen zum Feuern anregt, die allesamt auch anderen Konstellationen angehören können. Wie wir wissen, führt die Zerstörung eines kleinen Gehirnstücks im allgemeinen nicht zum Verlust spezifischer Gedächtnisinhalte, und wir müssen deshalb davon ausgehen, daß die Zellen einer Konstellation nicht in einem einzigen corticalen Gebiet lokalisiert, sondern auf viele Gebiete verteilt sind. Die nähende Großmutter ist dann eine größere Konstellation, welche die Definition von Großmutter, Großmutters Gesicht und die Tätigkeit Nähen umfaßt.
(Hubel, 1989)
Diese Zellkonstellationen oder neuronalen Netzwerke kann man auch als das anatomische Substrat interner Objektrepräsentation en sehen. Somit könnte theoretisch jedem Objekt der Außenwelt ein Netzwerk aus Neuronen im visuellen System zugeordnet werden. Da sich jedoch die Objekte einer Klasse - beispielsweise Vasen - ähneln, würden sich auch die Konstellationen aktivierter Neurone für die einzelnen verschiedenen Vasen überlappen; d.h. man kann eine »Schittmenge« von Neuronen aus allen Zellkonstellationen annehmen, die bei allen Vasenformen aktiviert ist. Dieser »kleinste gemeinsame Nenner« von Neuronen würde das anatomische Substrat des Schemas »Vase« darstellen.
Aufbauend auf den Entdeckungen Hubels und Wiesels haben sich einige Computerwissenschaftler Gedanken über das Sehen gemacht (Hofstadter, 1989; Dreyfus, 1987).
Hofstadter schließt sich der Hubel´schen Theorie der »aktivierten Zellkonstellationen« direkt an:
Vielleicht wird ein Gegenstand, den man betrachtet, implizit durch seine ´Signatur ´ im Sehkortex identifiziert, d.h. durch eine Reaktion von einfachen, komplexen und hyperkomplexen Zellen zusammengenommen. Vielleicht braucht das Gehirn gar keine weiteren Erkennungsinstrumente für eine besondere Form.
(Hofstadter, 1988)
Dreyfus betont die Wichtigkeit der internen Repräsentationen für das Sehen. Er glaubt, daß Sehen und Erkennen durch einen direkten Assoziationsprozeß erfolgt:
Wenn wir eine Gestalt betrachten, ermöglicht uns eine Assoziation, die Figur als, sagen wir einmal, Großmutter zu identifizieren. Diese Assoziation beruht ausschließlich auf Gehirnzuständen, die ungefähr den Lichtverhältnissen der betrachteten Figur entsprechen.
(Dreyfus, 1987)
Die Theorien von Hofstadter und Dreyfus kann man zu den sogenannten[10] PDP-Modellen zählen, auf die im Kapitel 3.6 näher eingegangen wird.
Auch die Hypothese des Neurobiologen Wolf Singer zur Figur-Grund-Unterscheidung im visuellen System schließt direkt an die »Zellkonstellations-Theorie« von Hubel an (Singer, 1990):
Singer konnte nachweisen, daß die Antworten von Merkmalsdetektoren auf visuelle Reize rhythmisch sind, und mit einer Frequenz von ungefähr 40 Hertz oszillieren. Wenn nämlich Konturen dargeboten wurden, die sich innerhalb des Gesichtsfelds mit derselben Geschwindigkeit in die gleiche Richtung bewegten, dann begannen die oszillierenden Antworten von räumlich verteilten Merkmalsdetektoren mit ähnlichen Richtungs- und Orientierungspräferenzen, in Phase zu schwingen. Figur-Grund-Unterscheidungen sind demnach für das visuelle System dadurch möglich, daß bestimmte Neuronengruppen (Merkmalsdetektoren) - abhängig von der Art des visuellen Reizes - von asynchrone in synchrone Aktivierungszustände übergehen. Die synchron aktivierten Neuronengruppen kodieren die Figur, die asynchron aktivierten den Grund (Singer, 1990).
Diese, sich durch Phasenkohärenz auszeichnenden Neuronengruppen, nennt Singer »Ensembles« und entsprechen den Hubel´schen Zellkonstellationen. Singer glaubt, daß die verschiedenen Zellensembles mit jeweils unterschiedlichen Frequenzen oszillieren; dadurch wird eine Vermischung ihrer Antworten bei der Darbietung mehrerer Objekte (Superpositionsproblem) verhindert.
Es wurde bereits erwähnt, daß die Rezeptoren für einfache geometrische Formen wie Kanten, Ecken oder rechte Winkel immer aus Nervennetzen gebildet werden (Kap.2.2). Man könnte diese neuronalen Netzwerke auch als die anatomische Realisierung von internen Repräsentationen einfacher geometrischer Formen betrachten.
Wenn in einem bestimmten Netzhautbereich eine solche einfache geometrische Form auftaucht, dann wird demnach im visuellen Kortex die entsprechende interne Repräsentation aktiv. Da sich die Objekte der Außenwelt immer aus mehreren einfachen geometrischen Formen zusammensetzen, werden beim Betrachten dieser Objekte auch gleichzeitig mehrere interne Repräsentationen einfacher geometrischer Formen aktiv sein. Die Gesamtheit aller, beim Betrachten eines bestimmten Objekts gleichzeitig aktiven internen Repräsentationen, ergeben die interne Repräsentation des gesamten betrachteten Objekts.
Die Nervennetze, in welchen diese internen Repräsentationen angelegt sind, werden von den verschiedenen Autoren mit unterschiedlichen Bezeichnungen belegt: Hubel spricht von »Konstellationen« (Kap.2.2), Singer von »Ensemble s« (Kap.2.2.1), Hofstadter von »Signatur en« (Kap.2.2.1), und Palm von »Assembl ies« (Kap.3.6.2.3.1).
Es wurde bereits ausgeführt, daß es theoretisch möglich ist, jedem Objekt der Außenwelt ein solches Nervennetz zuzuordnen (Kap.2.2 und 2.2.1). Darauf aufbauend, soll der Vorgang des Sehens - im Sinne moderner PDP-Theorien - folgendermaßen als Arbeitshypothese formuliert werden:
Sehen könnte als Assoziation (Zuordnung) der entsprechenden internen Repräsentationen mit den Objekten der Außenwelt funktionieren.
Unter diesem Gesichtspunkt wird im Kapitel 4 versucht, den Seh- und Umlernvorgang während des Tragens einer Umkehrbrille durch ein einfaches musterassoziierendes Matrixspeichermodell zu beschreiben.
[11] Computersimulierte neuronale Netzwerke haben eine fast fünfzigjährige Geschichte und erleben nun, nach einem Einbruch während der 70´er Jahre, einen enormen Boom (siehe das Kapitel 3.3).
Sie werden mittlerweile in vielen Bereichen der Technik, Industrie und Forschung eingesetzt und sind dort nicht mehr wegzudenken. Als einige typische Einsatzbereiche wären hier Objekterkennung, Signalfilterung, Qualitätskontrolle, Kreditrisikoabschätzung und die Aktienkursprognose zu nennen.
In all diesen Bereichen bewältigen neuronale Netzwerke die an sie gestellten Aufgaben wesentlich effizienter als eigens dafür entwickelte[12] Algorithmen oder prozedurale Computerprogramme (siehe das Kapitel 3.4).
In der neurobiologischen Forschung werden neuronale Netze immer häufiger zur Hypothesengenerierung und -validierung eingesetzt (Anderson, 1989). Optimisten glauben sogar, daß dadurch in naher Zukunft ein Großteil von neurobiologischen Versuchen an Tieren überflüssig werden (Schöneburg, 1990).
Auch der beginnende Einsatz neuronaler Netze in der psychologischen Grundlagenforschung, wie beispielsweise die Arbeiten Teuvo Kohonen´s zum menschlichen Gedächtnis oder zur Farbwahrnehmung (Kohonen, 1984), macht es möglich, traditionelle Theorien und Modelle zu prüfen und eventuell weiterzuentwickeln.
Daß Ergebnisse aus Simulationen mit neuronalen Netzwerkmodellen jedoch nicht uneingeschränkt zur Interpretation der Verarbeitungsvorgänge in biologischen Systemen herangezogen werden können, wird im Kapitel 3.2 zu diskutieren versucht.
Unter diesem Aspekt ist auch der in dieser Arbeit im Kapitel 4.4 beschriebene Versuch zu werten, den neuronalen Umlernvorgang während des Tragens einer Umkehrbrille mit Hilfe eines neuronalen Netzwerks nachzubilden.
Neuronale Netzwerke sind in Struktur und Funktionsweise ihren biologischen Vorbildern nachempfunden. Sie sind Systeme aus kleinen, untereinander verbundenen Verarbeitungseinheiten (= Prozessorelemente) und sind in der Lage, durch Anpassung der Stärke der Verbindungen zwischen den einzelnen Prozessorelementen, zu lernen.
Strukturelle Ähnlichkeit und Lernfähigkeit sind aber nicht die einzigen Parallelen zu natürlichen neuronalen Netzwerken; die folgende Aufzählung soll einen Überblick über die Gemeinsamkeiten natürlicher und künstlicher Netzwerksysteme geben:
- Parallelität: Das menschliche Gehirn enthält bei einem Durchschnittsgewicht von 1300 Gramm ca. 10 Milliarden [13] Neuronen.
Jedes Neuron ist mit 1000 bis 10.000 anderen Neuronen über [14] synaptische Verbindungen in Kontakt (Abb.3.1). Viele dieser Neuronen sind gleichzeitig aktiv, und ein Neuron kann sogar gleichzeitig an mehreren Verarbeitungsvorgängen beteiligt sein (siehe das Kapitel 3.6).
In dieser hohen Konnektivität und Parallelität liegt die Leistungsfähigkeit des menschlichen Gehirns begründet. Computersimulierte neuronale Netze bestehen zwar aus weitaus weniger Neuronen (= Prozessorelemente) als das menschliche Gehirn, sind aber innerhalb eines klar definierten Aufgabenbereichs, für den sie speziell trainiert werden können, trotzdem sehr leistungsfähig.
Da die meisten neuronalen Netzwerke noch auf seriellen Rechnern nach der[15] von-Neumann - Architektur simuliert werden, kann in solchen Fällen nicht von einer »echten« Parallelität gesprochen werden. Rechner nach dieser Architektur können nämlich immer nur die Aktivität eines Prozessorelements zur selben Zeit berechnen, und dann zur Abarbeitung des nächsten Elementes springen; sie machen dies aber so schnell, daß von einer »quasi - Gleichzeitigkeit« gesprochen werden kann.
Um neuronale Netzwerke mit auch nur einigen tausend Neuronen zu simulieren, reichen die gängigen Rechnermodelle nicht mehr aus; deshalb ist man dazu übergegangen, Multiprozessorsystem e mit 10.000 oder mehr Prozessoren, von denen jeder ein Neuron simuliert, zu konstruieren (Anderson, 1989).
- Fehlertoleranz: Biologische neuronale Netzwerke zeigen auf zwei Arten fehlertolerantes Verhalten; zum einen können sie fehlerbehaftete oder unvollständige Daten richtig verarbeiten (Mustervervollständigung), zum anderen funktionieren sie selbst dann noch, wenn eine beträchtliche Anzahl von Neuronen zerstört wird (Lashley, 1950). In einem späteren Kapitel (Kap.3.6) wird demonstriert, daß computersimulierte Netzwerke sich auf ähnliche Weise fehlertolerant verhalten können.
- Globale Speicherung: Bereits 1929 schrieb der englische Neurophysiologe Karl Spencer Lashley über das Problem der Lokalisation des Gedächtnisses:
Es ist nicht möglich, den gesonderten Ort einer Gedächtnisspur irgendwo im Nervensystem aufzuzeigen.
und weiter meinte er:
... daß innerhalb eines funktionellen Bereichs die Zellen des gesamten Bereichs die Fähigkeit erlangen, in bestimmten festgelegten Mustern zu reagieren, die jede beliebige Verteilung in dem Bereich haben können.
(zitiert aus Schreiber, 1988)
Diese Theorie der Verteilung von Gedächtnisinhalten über große Teile der Hirnrinde ist bis heute gültig und aktueller denn je (Gardner, 1984). Auch computersimulierte neuronale Netze speichern[16] Muster global, also über alle Prozessorelemente verteilt, ab (siehe das Kapitel 3.6.2).
Diese verteilte Speicherung von Gedächtnisinhalten verleiht biologischen und künstlichen neuronalen Netzwerken ihre hohe Fehlertoleranz.
Trotz all dieser Gemeinsamkeiten stellt sich für viele, in diesen Forschungsbereich Involvierte, die Frage: »Sind neuronale Netze tatsächlich Modelle des menschlichen Gehirns?« (Anderson, 1989).
Diese Frage scheint durchaus berechtigt, angesichts der Tatsache, daß der Aufbau der Prozessorelemente und die Art der Verbindungen zwischen diesen Verarbeitungseinheiten, bei allen bisher entwickelten neuronalen Netzwerken - im Vergleich zu biologischen Systemen - eine mehr oder weniger starke Vereinfachung darstellt; Schweizer schreibt dazu:
Erklärter Zweck ... der ... Simulationsinstrumente ist es, die Funktion von Nervensystemen ... zu studieren - und das, ..., indem man die funktionalen Eigenschaften der Nervenzellen, die man ohnehin nur unvollkommen kennt, auch noch drastisch vereinfacht und zum Teil gar ignoriert.
(Schweizer, 1986)
Obwohl die jüngst entwickelten Netzwerkmodelle den physiologischen Gegebenheiten mehr und mehr Rechnung tragen (Anderson, 1989; Hinton, 1992), scheint eine physiologisch exakte Nachbildung schier unmöglich zu sein.
Wendet man sich jedoch von einer starr physiologischen Sichtweise ab, und betrachtet die gängigen Netzwerkmodelle in ihrer Funktionalität als Ganzes, dann scheinen diese Modelle durchaus für die psychologische und neurobiologische Grundlagenforschung geeignet zu sein (Hinton, 1992).
Weiters muß man bedenken, daß diese Netzwerkmodelle Hirnfunktionen weit besser nachbilden, als alle bisherigen Modelle der traditionellen [17] KI-Forschung, deren Vertreter noch nie zimperlich waren, direkte Vergleiche zwischen ihren Modellen und bestimmten Hirnfunktionen anzustellen (Gardner, 1984). Abschließend dazu schreibt Schweizer:
Trotz der außergewöhnlichen Vereinfachung zeigen diese [ [18] neuronalen] Netzwerke im Gegensatz zu den vorgenannten Simulationssystemen eine klar erkennbare Funktionscharakteristik, die eine neurobiologische, ja sogar psychologische Interpretation nicht nur zuläßt sondern geradewegs herausfordert.
(Schweizer, 1986)
Unter diesen Gesichtspunkten sollen auch die in dieser Arbeit beschriebenen Simulationen betrachtet werden.
Theorie und Technik computersimulierter neuronaler Netze sind keine Innovation der 80´er Jahre, sondern haben vielmehr eine fast 50-jährige Tradition.
Das Jahr 1941 kann als die Geburtsstunde des Digitalcomputers bezeichnet werden; in diesem Jahr wurde nämlich der erste programmgesteuerte Relaisrechner (»Z3«) von dem deutschen Ingenieur Konrad Zuse gebaut.
Schon knapp zwei Jahre danach veröffentlichten McCulloch und Pitts eine theoretische Abhandlung, in der sie bewiesen, daß ein Netzwerk aus einfachen Verarbeitungseinheiten (binäre Schwellenwertelemente, =McCulloch-Pitts-Neurone) anspruchsvolle Operationen ausführen kann, die sonst nur durch komplizierte Algorithmen beschreibbar sind.
Dieses erste künstliche neuronale Netzwerk war jedoch noch nicht lernfähig, da die Verbindungen zwischen den Binärneuronen noch starr waren.
Erst durch eine 1949 von Donald Hebb formulierte Lernregel, wurde erstmals eine schlüssige Theorie für die physiologischen Vorgänge während des Lernens vorgelegt, die die Entwicklung lernfähiger künstlicher neuronaler Netze ermöglichten sollte. Die Grundannahme dieser Hebb´schen Lernregel ist folgende:
Lernen geschieht durch die Veränderung der Verbindungen zwischen den Nervenzellen, indem immer dann die Verbindung zwischen zwei Neuronen verstärkt wird, wenn diese gleichzeitig aktiv sind (zitiert aus: Schöneburg, 1990).
Diese Theorie von Hebb gilt, in ein wenig differenzierterer Form, bis heute.
Renommierte Neurobiologen wie z.B. Eric Kandel oder Gerald Edelman, vertreten ebenfalls die Ansicht, daß Lernen weniger in der Ausbildung neuer Synapsen, als vielmehr in der Veränderung der Stärke bereits bestehender synaptischer Verbindungen, begründet liegt (Gardner, 1984).
Eine weitere fundamentale Theorie hat Wichtiges zur Entwicklung neuronaler Netze beigetragen: die 1950 publizierte Theorie des[19] Holographischen Gedächtnisses von Karl Lashley.
Lashley kam nach jahrelangen Lernversuchen mit Ratten zu dem Schluß, daß das Gedächtnis nicht - wie bisher angenommen - in einem bestimmten Teilgebiet des Gehirns verankert, sondern vielmehr über die gesamte Hirnrinde verteilt ist (Lashley, 1950).
Aufbauend auf den Theorien dieser modernen Hirnforscher wurden Mitte der 50´er Jahre die ersten Computersimulationen neuronaler Netzwerke durchgeführt.
1958 stellte Frank Rosenblatt ein neuronales Netz von bis dato einmaliger Leistungsfähigkeit vor; das Perceptron. Diese Netz war lernfähig, konnte einfache Muster klassifizieren und verhielt sich dabei fehlertolerant.
Rosenblatt´s Perceptron löste einen wahren Boom an Netzwerk-Neuentwicklungen aus, von denen einige bereits praktisch eingesetzt werden konnten (beispielsweise das 1960 von Bernard Widrow und Marcian Hoff entwickelte[20] Madaline, als Filter zur Unterdrückung von Echoeffekten bei Ferngesprächen).
Doch leider wurde diese erfreuliche Entwicklung 1969 durch das Buch »Perceptrons« der KI-Päpste Marvin Minsky und Seymour Papert vom M.I.T (M assachusett´s I nstitut of T echnology) in ihrem weiteren Verlauf gehemmt.
In ihrem Buch deckten sie einige Schwächen der gängigen Netzwerkmodelle auf und kamen zu dem Schluß, daß es Zeitverschwendung wäre, sich weiterhin so intensiv mit neuronalen Netzen zu beschäftigen (Schöneburg, 1990).
Da diese beiden Computerwissenschaftler zur damaligen Zeit einen erheblichen Einfluß hatten, wurde die Entwicklung neuronaler Netze für 15 Jahre fast gänzlich stillgelegt. Erst in der Mitte der 80´er Jahre sollten die neuronalen Netze wieder jene (verdiente) Aufmerksamkeit erlangen, die sie Mitte der 50´er Jahre bereits innehatten. Heute bereuen Minsky und Papert ihre damalige Schlußfolgerung bitterlich, und Minsky bezeichnet diese wörtlich als » Overkill « (Welchering, 1989).
Glücklicherweise ließen sich einige wenige Netzwerk-Forscher von dieser vernichtenden Kritik nicht beirren und konnten dadurch revolutionäre Netzwerke konstruieren.
So entwickelte der Finne Teuvo Kohonen in den 70´er Jahren leistungsfähige Assoziativspeichermodelle und Selbstorganisierende Netzwerke (Kohonen, 1984).
Inzwischen begannen sich immer mehr Physiker für die Theorie neuronaler Netze zu interessieren und konnten erstaunliche Parallelen zu Entdeckungen der[21] Festkörperphysik nachweisen. Dadurch wurde es möglich, Techniken und Methoden der theoretischen Physik zur Analyse und Konstruktion neuronaler Netze heranzuziehen. Zwei der bekanntesten von Physikern entwickelte Modelle sind das Hopfield-Modell (John Hopfield, 1982; Parallelen zur Spinglas-Theorie) und die Boltzmann-Maschine (Hinton & Sejnowski, 1985; Anleihen aus Theorien der Kristallzüchtung).
1985 sollte ein bedeutendes Jahr in der Geschichte neuronaler Netzwerke werden. Es stellt quasi eine endgültige Abrechnung mit der vernichtenden Kritik Minsky´s und Papert´s aus dem Jahre 1969 dar.
Die damals aufgedeckten Schwächen neuronaler Netze bezogen sich nämlich alle auf die Tatsache, daß diese Modelle nur eine Schicht lernfähiger Prozessorelemente (Neurone) hatten. Die damals schon existierenden mehrschichtigen Modelle wurden keiner so gründlichen Prüfung unterzogen, sondern die Kritik an einschichtigen Modellen wurde unbesehen auf mehrschichtige Netzwerke übertragen.
Im Jahre 85 aber, entwickelten Rumelhart und Hinton einen sehr leistungsfähigen Lernalgorithmus (Backpropagation-Lernregel), der es ermöglichte, für jede Schicht eines beliebig großen Netzwerks einen Fehler zu definieren, anhand dessen eine Adaption der Verbindungsstärken zwischen den einzelnen Neuronen stattfindet (siehe das Kapitel 3.5).
Es leuchtet ein, daß mehrschichtige Netzwerke um vieles leistungsfähiger als einschichtige Modelle sind, und tatsächlich konnten dadurch alle Schwächen perceptronartiger Netzwerkmodelle endgültig aus der Welt geschaffen werden.
Backpropagation-Netzwerke stellen heute die am häufigsten in der Praxis eingesetzten Netzwerktypen dar (Barr, 1991).
Neuronale Netze der üblichen Art, bestehen aus mindesten zwei Schichten von Prozessorelementen (= Neuronen). Eine Schicht stellt dabei die Eingabe- (Input-), die andere die Ausgabe- (Output-) Schicht dar.
Üblicherweise wird die Eingabeschicht als unten liegend definiert, wobei im allgemeinen Fall jedes Prozessorelement dieser Schicht mit jedem Prozessorelement der Ausgabeschicht verbunden ist (Abb.3.2). Ein einzelnes Prozessorelement erhält dabei immer mehrere verschiedene Eingangswerte, gibt aber immer denselben Ausgangswert weiter, der wiederum den Prozessorelementen der darüberliegenden Schicht als ein Eingangswert dienen kann.
Wie bereits erwähnt wurde, sind solche zweilagige Netzstrukturen für viele Problemstellungen nicht mehr angemessen, weshalb man dazu übergegangen ist, zwischen die Ein- und die Ausgabeschicht weitere Neuronenschichten einzubauen. Da diese zusätzlichen Schichten keinen direkten Kontakt mehr zur »Außenwelt« haben, werden sie in der Fachsprache als »Hidden Layer« (verborgene Schichten) bezeichnet (Abb.3.3).
Man kann gut beobachten, daß durch das Hinzufügen eines Hidden Layers das Netz deutlich an Komplexität gewonnen hat; die Zahl der Verbindungen zwischen den einzelnen Prozessorelementen hat sich von 9 auf 18 erhöht. Die Anzahl der möglichen Prozessorelemente pro Schicht und die der Hidden Layer in einem Netzwerk, wird theoretisch nur durch die Speicherkapazität und die Rechenleistung des Computers, der dieses Netz simuliert, limitiert.
Künstliche neuronale Netze lernen - analog zu ihren biologischen Vorbildern - indem sie die Stärke der Verbindungen (Synapsen) zwischen den einzelnen Prozessorelementen (Neuronen) modifizieren.
Zu Beginn des Lernvorganges, sind alle Verbindungen zwischen den einzelnen Prozessorelementen eines Netzwerks, zufällig stark gewichtet. Durch eine sogenannte Lerndatei, wird dem Netzwerk der Input (z.B. ein einfaches Muster) und der gewünschte Output vorgegeben. Das neuronale Netz wird nun während des Lernvorganges seine Verbindungsgewichte solange modifizieren, bis Input und gewünschter Output einander fehlerfrei zugeordnet werden können. Nach dem Lernvorgang (»Training« des neuronalen Netzes) ist das Netz in der Lage, auch auf unbekannte Eingaben richtig zu reagieren, d.h. das Netz ist in der Lage zu abstrahieren (Schöneburg, 1990).
Der eben beschriebene Lernvorgang wird auch als beaufsichtigtes Lernen bzw. als Lernen mit »Lehrer« bezeichnet, da dem neuronalen Netz zu jedem Input der gewünschte Output mitgeteilt wird.
Neben dieser Form des Lernens gibt es noch weitere Lernformen, auf die hier kurz eingegangen werden soll:
Lernen mit »Bewerter«: dem lernenden Netz wird während des Lernvorganges lediglich mitgeteilt, wie gut oder schlecht seine jeweiligen Resultate (Output) sind; der gewünschte Output wird dem Netz vorenthalten.
Unbeaufsichtigtes Lernen: Netze, die das unbeaufsichtigte Lernen beherrschen, werden auch als Selbstorganisierende Netze (Kohonen, 1984) bezeichnet, da sie in der Lage sind, ihre Verbindungsgewichte nur aufgrund des vorgegebenen Inputs zu modifizieren.
Neuronale Netze können erstaunliches leisten; trotzdem sind deren kleinste Einheiten, die Prozessorelemente, relativ unkompliziert aufgebaut.
Genaugenommen besitzen Prozessorelemente gar keine Struktur, sondern sind lediglich durch eine Aneinanderreihung einzelner Verarbeitungsschritte definiert (Abb.3.4).
Wenn ein neuronales Netzwerk lernt oder Eingaben bearbeitet, dann geschieht - vereinfacht dargestellt - in den einzelnen Prozessorelementen folgendes:
Die Eingaben (= Ausgaben der darunterliegenden Neuronen) werden mit den Gewichten multipliziert; die Ergebnisse dieser Multiplikation werden wiederum aufsummiert und mit einem Schwellenwert verglichen; überschreitet das Ergebnis den Schwellenwert (in unserem Fall Null), dann liefert das Prozessorelement eine Ausgabe von Eins, ansonsten ist der Output Null; dieser Output kann nun wieder der Input an darüberliegende Prozessorelemente sein, oder aber, sofern das betrachtete Prozessorelement in der Ausgabeschicht liegt, ein Teil der Gesamtantwort des neuronalen Netzes sein.
Üblicherweise wird jedoch die Informationsverarbeitung innerhalb eines Prozessorelementes anhand eines international standardisierten mathematischen Formalismus´ beschrieben; die Abbildung 3.5 soll einen Überblick über die einzelnen Verarbeitungsschritte verschaffen:
Abbildung in dieser Leseprobe nicht enthalten
Zeichenerklärung:
Abbildung in dieser Leseprobe nicht enthalten[22]
Der Informationsverarbeitungsvorgang eines Prozessorelements läuft nun im Detail in folgenden Schritten ab:
Die an den Eingängen anliegenden Signale werden durch die Inputfunktion NETi modifiziert:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.1
Zeichenerklärung:
NETi . Inputfunktion der Empfängerzelle i.
i ... Empfängerzelle
j ... Senderzelle
oj . Output der Senderzelle j.
t-1, t . 2 aufeinanderfolgende Zeitpunkte im Informationsverarbeitungsvorgang der betrachteten Zelle.
wij synaptisches Gewicht zwischen Senderzelle j und Empfängerzelle i.
neti .. Netto-Eingangssignal der Empfängerzelle i.
Die Funktion 3.1 ist in einer allgemeinen Form angegeben; es existieren jedoch mehrere, speziell auf bestimmte Netzwerktypen zugeschnittene, konkrete Inputfunktionen (Schöneburg, 1990):
- Summenfunktion
- Produktfunktion
- Maximalwertfunktion
- Minimalwertfunktion
- Majoritätsfunktion
Da die Summenfunktion eine der gebräuchlichsten Inputfunktionen darstellt, wird diese hier eingehender behandelt:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.2
Die Summen-Inputfunktion multipliziert die Ausgangswerte der Senderzellen (oj) mit den synaptischen Gewichten der Empfängerzelle (wij) und summiert dann diese Produkte zu dem Netto-Eingangssignal neti auf.
In der Abbildung 3.1 nicht eingetragen ist die sogenannte Lernregel. Die Lernregel eines neuronalen Netzes legt fest, wie sich die synaptischen Gewichte wij während des Lernens verändern sollen. Die Funktion 3.3 zeigt die allgemeine Form einer Lernregel:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.3
Zeichenerklärung:
wij .. Gewicht d. Verbindung zw. Senderzelle j und Empfängerzelle i.
wij Korrektur für das synaptische Gewicht wij.
Ganz konkret sagt die Funktion 3.3 folgendes aus:
Das neue synaptische Gewicht zwischen Zelle j und i zum Zeitpunkt t ist eine Summe aus dem synaptischen Gewicht des vorigen Lernschritts wij (t-1) (= altes synaptisches Gewicht) und dem Korrekturwert d für das synaptische Gewicht wij.
Die Berechnung des Korrekturwertes dwij unterscheidet sich von Netzwerkmodell zu Netzwerkmodell und bestimmt die eigentliche Lernfähigkeit eines neuronalen Netzes (siehe das Kapitel 3.5.2).
Im nächsten Schritt der zellulären Informationsverarbeitung wird aus neti und der Aktivität der Zelle i zum Zeitpunkt t-1 (= vorheriger Aktivierungszustand der Zelle) durch die Aktivierungsfunktion Fi der neue Aktivierungszustand a der Zelle i zum Zeitpunkt t berechnet:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.4
Analog zur Funktion 3.1 gibt es nun wiederum mehrere konkrete Aktivierungsfunktionen, von denen hier die wichtigsten kurz genannt werden sollen:
- lineare Aktivierungsfunktion
- sigmoidale Funktion
- Sinusfunktion
- lineare Schwellenwertfunktion
Da die sigmoidale Funktion die in Back-Propagation-Netzwerken am häufigsten verwendete Aktivierungsfunktion ist, soll sie an dieser Stelle eingehender behandelt werden:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.5
Zeichenerklärung:
ai . Aktivität der Zelle i.
e .. Eulersche Zahl (e = 2,71828)
g .. »gain« (engl.: Gewinn, Zunahme); bestimmt die Steilheit des Kurvenverlaufes (siehe Abb. 3.6).
neti .. Netto-Eingangssignal der Zelle i.
Die Abbildung 3.6 zeigt die Abhängigkeit der Sigmoid-Funktion vom Parameter » gain « (Schöneburg, 1990):
Je größer der Parameter »gain«, desto steiler verläuft die Sigmoid-Funktion; ist »gain« kleiner als 1, dann geht der sigmoidale Kurvenverlauf in einen linearen Kurvenverlauf über (strichlierte Gerade in Abb.3.6). Die Sigmoid-Funktion gehört zu den semilinearen Funktionen, da sie mit den linearen Funktionen das stetige Ansteigen gemeinsam hat.
Aufgrund des sigmoidalen Kurvenverlaufs werden die Eingangswerte einer Zelle i (neti) in vorteilhafter Weise modifiziert:
- Jeder beliebige Eingangswert wird auf das Intervall zwischen Null und Eins der Aktivität ai abgebildet (punktierte Linien in Abb.3.6).
- Eingangswerte, die nahe bei Null (Schnittpunkt der Koordinatenachsen) liegen, werden durch die Steilheit der Kurve in diesem Bereich stärker auseinandergezogen und damit besser getrennt.
- Sehr große positive oder negative Eingangswerte führen immer zu Aktivitäten ai nahe Eins bzw. nahe Null.
Als letzten Schritt in der Informationsverarbeitung des betrachteten Prozessorelements, bestimmt eine Ausgabefunktion fi, welchen Output o das Prozessorelement i an die nachgeschalteten Zellen, bzw. an die »Außenwelt« liefert.
Diese Ausgabefunktion fi wird in ihrer allgemeinen Form folgendermaßen angegeben:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.6
Meistens wird der Aktivierungszustand a des Prozessorelements i, direkt als Output an die nachgeschalteten Prozessorelemente weitergegeben; dann hat die Ausgabefunktion die folgende Form:
Abbildung in dieser Leseprobe nicht enthalten
Eine weitere, häufig eingesetzte Ausgabefunktion ist die »winner-take-all«-Funktion, durch die gesichert wird, daß nur dasjenige Prozessorelement einer Neuronenschicht seinen Output an die nächste Schicht weitergeben darf, welches auch den größten Aktivierungszustand aufweist.
Backpropagation-Netzwerke zählen heute zu den leistungsfähigsten Netzwerkmodellen und sind deshalb sehr gut für Muster-Assoziations-Simulation en, wie jene, welche in dieser Diplomarbeit abgehandelt werden, geeignet.
Diese Leistungsfähigkeit wird durch die Verwendung des 1986 von D. E. Rumelhart, G.E.Hinton und R.J.Williams veröffentlichten »Backpropagation-Algorithmus« ermöglicht (Rumelhart, McClelland, 1986).
Durch diesen Algorithmus wurde es möglich, auch die Gewichte der »von außen« nicht zugänglichen verdeckten Schichten adaptiv zu machen, indem der Fehler der Outputschicht zu den Elementen der vorhergehenden Schicht zurückpropagiert (»[23] backpropagated«) und diesen zugeschrieben wird.
Auf den Aufbau und die Funktionsweise des Backpropagation-Algorithmus wird im Kapitel 3.5.2 genauer eingegangen.
Backpropagation-Netzwerke bestehen aus einer Eingabe - einer Ausgabe - und mindestens einer verdeckten Schicht (Abb.3.2). Die Anzahl der möglichen Prozessorelemente pro Verarbeitungsschicht, sowie die Anzahl verdeckter Schichten ist beliebig und wird theoretisch nur durch die Rechenleistung und den Hauptspeicher des Rechners begrenzt, auf dem dieses Netzwerk simuliert wird.
Die Eingabeschicht liegt dabei immer unten und die Ausgabeschicht oben; die Verbindungen laufen nur von unten nach oben, niemals in Gegenrichtung; diese Netze arbeiten daher rückkoppelungsfrei. Aufgrund dieser Tatsache ordnet man das Backpropagation - Netzwerk deshalb den »feed-forward«-Netzwerken zu (Schöneburg, 1990).
Die Lernregel von Backpropagation-Netzwerken baut auf der sogenannten Delta-Lernregel der Adaline-Netzwerke auf. Bei dieser Lernregel wird in jedem Lernschritt der tatsächliche Output des einzelnen Prozessorelementes mit dem gewünschten Output verglichen.
Ergibt sich eine Differenz, dann werden die Gewichte adaptiert, ansonsten ist der Lernvorgang beendet.
Da der gewünschte Output dem neuronalen Netz durch eine Lerndatei mitgeteilt wird, ist es leicht möglich, den gesamten Fehler E des Netzwerks bei einem gegebenen Input zu definieren:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.7
Zeichenerklärung:
zi . erwünschter Output für das Element i.
oi . tatsächlicher Output des Elementes i.
Aus obiger Formel wird ersichtlich, daß der Gesamtfehler eines Netzwerks nichts anderes ist, als die Summe der quadrierten Abweichungen des tatsächlichen Outputs jedes einzelnen Prozessorelements, vom erwünschten Output jedes einzelnen Elements.
Das Netz kann diesen Fehler durch die schrittweise Anpassung (Lernschritte) der Verbindungsgewichte zwischen den einzelnen Prozessorelementen verringern.
In jedem Lernschritt werden die Verbindungsgewicht e nach folgender Formel neu berechnet:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.8
Zeichenerklärung:
Abbildung in dieser Leseprobe nicht enthalten
Die Berechnung der Verbindungsgewichte in einem Lernschritt ist - wie man aus obiger Formel entnehmen kann - recht einfach: zu dem Gewicht, daß in dem vorigen Lernschritt berechnet wurde (wij (t-1)) wird ein Korrekturwert (sdioi) addiert.
Dieser Korrekturwert enthält als wichtigstes Element den sogenannten Fehler für jedes Element i, der folgendermaßen berechnet wird:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.9
Zeichenerklärung:
F´(neti) .. 1. Ableitung der Aktivierungsfunktion F(net).
zi . erwünschter Output für das Prozessorelement i.
oi tatsächlicher Output für das Element i.
Im vorigen Kapitel wurde bereits auf die Aktivierungsfunktion F (neti), die den Aktivierungszustand a des Prozessorelements i zum Zeitpunkt t beschreibt, näher eingegangen.
Es wurde auch schon erwähnt, daß die in Back-Propagation-Netzwerken am häufigsten eingesetzte Aktivierungsfunktion die Sigmoid-Funktion ist:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.10
Wird diese Funktion nach neti abgeleitet, dann erhält man die Funktion F´(neti):
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.11
Während eines Lernschritts berechnet das neuronale Netz zuerst die Fehler di für die Prozessorelemente der Outputschicht. Diese Fehler werden dann zur nächsttieferen Schicht (erste verdeckte Schicht) zurückpropagiert und in die Berechnung der Fehler di der Prozessorelemente dieser Schicht miteinbezogen:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.12
Zeichenerklärung:
Abbildung in dieser Leseprobe nicht enthalten
Auch diese Fehler werden zur nächsttieferen Schicht zurückpropagiert und in die Berechnung der Fehler der Prozessorelemente dieser Schicht einbezogen. Dieser Vorgang wird so lange wiederholt, bis die Eingabeschicht erreicht ist; dann beginnt der nächste Lernschritt. Wiederum wird der Fehler der Outputschicht berechnet, der zur nächsten tiefliegenderen Schicht zurückpropagiert wird, usw...
Das Netz bricht dann den Lernvorgang ab, wenn der Gesamtoutput des Netzes unter ein gewisses Fehlerniveau - das vom Benutzer vorgegeben werden kann - fällt.
Nach Hinton, können Backpropagation-Netzwerke als stark vereinfachte Modelle menschlicher Wahrnehmungssysteme betrachtet werden:
... Die Aktivitäten der Eingabeknoten ( [24] Eingabe-Prozessorelemente) entsprechen dabei den Sinneseindrücken, die der Ausgabeknoten den Begriffen für die wahrgenommenen Gegenstände.
(Hinton, 1992)
Anderen Autoren (Schöneburg, Hansen, 1990) erscheinen Backpropagation-Netzwerke, aufgrund der Art und Weise wie diese den Fehler für die verdeckten Schichten berechnen (umgekehrter Informationsfluß), biologisch eher unplausibel.
Dieser Einwand kann aber durch die Tatsache abgeschwächt werden, daß im Kortex aller Säugetiere Nervenbahnen identifiziert wurden, die von einer Zellschicht auf die vorhergehende zurückprojizieren und von denen vermutet wird, daß diese die für das Lernen notwendigen Rückmeldungen transportieren (Birbaumer, 1990).
Den stärksten Einwand gegen Backpropagation-Netzwerke als Modelle menschlicher Wahrnehmungssysteme, stellt jedoch die Tatsache dar, daß diese Netzwerke während ihrer Lernphase auf einen Lehrer angewiesen sind, der Aufschluß über die Richtigkeit eines bestimmten Lernschritts gibt.
Gerade aber die Kohler´schen Brillenversuche machen deutlich, daß sämtliche Wahrnehmungssysteme einen Lernvorgang innerhalb eines anderen Wahrnehmungssystems sowohl einleiten, als auch korrigieren können (siehe die Kapitel 1 und 4).
Aus den letzteren Gründen erscheint es mir gerechtfertigt, ein dreischichtiges Backpropagation-Netzwerk als stark vereinfachtes Modell für das visuelle Wahrnehmungssystem anzunehmen, anhand dessen im Kapitel 4.4 versucht wird, die neuronalen Umlernvorgänge während des Tragens einer Umkehrbrille nachzubilden.
Wenn mehrlagige neuronale Netzwerke lernen, dann legen sie in den verdeckten Neuronenschichten interne Repräsentationen der Eingangsmuster an (Hinton, 1992). Diese internen Repräsentationen sind jedoch keine isomorphen Abbildungen eingegebener Muster, sondern das neuronale Netzwerk ist in der Lage, eine eigene interne Kodierung zu finden. Diese interne Kodierung ist immer abhängig von der Anzahl der verdeckten Schichten und der Anzahl der Prozessorelemente pro verdeckter Schicht des neuronalen Netzwerks; das folgende Beispiel soll dies verdeutlichen (Abb.3.7):
Das obige Netzwerk soll die Muster A bis H lernen; d.h. beim Anlegen einer dieser acht Bitfolge n an die Eingabeschicht, soll das Netzwerk dieselbe Bitfolge über die Ausgabeschicht anzeigen. Da die verdeckte Schicht des Netzwerks aber nur aus drei Prozessorelementen besteht, müssen die acht Muster »komprimiert« intern abgelegt (= repräsentiert) werden.
Nach dem erfolgreichen Lernvorgang, hat das Netz die acht Muster intern durch eine[25] Binärkodierung mit drei »[26] Bits« (ein Bit pro Prozessorelement in der verdeckten Schicht) gespeichert; z.B. könnte das Muster H intern durch den Binärkode 111 repräsentiert sein. Nachdem jedes Prozessorelement der verdeckten Schicht entweder den Wert Eins oder Null annehmen kann, und insgesamt drei »Speicher-Prozessorelemente« existieren, gibt es 23 dreistellige Binärcodes um die acht Muster abzuspeichern; das Netz ist also durch die acht abzuspeichernden Muster ausgelastet.
Obwohl die Eingabemuster intern komprimiert kodiert werden, kann doch von einer analogen internen Repräsentation gesprochen werden, da das neuronale Netz in der Lage ist, aus diesem komprimierten Kode alle Eingabemuster wieder zu rekonstruieren.
Der Vorgang der Anlegung interner Repräsentationen in der verdeckten Schicht in neuronalen Netzwerken, kann sehr gut durch einen sogenannten[27] Matrixspeicher untersucht werden, da die einzelnen Schichten eines neuronalen Netzwerks im Prinzip wie Matrixspeicher funktionieren.
Der Begriff Matrixspeicher stammt von dem deutschen Nachrichtentechniker Karl Steinbuch.
Dieser entwickelte 1961 einen Automaten namens Lernmatrix, der im wesentlichen aus einer Reihe von horizontal und vertikal übereinanderlaufenden Drähten bestand, die an ihren Kreuzungspunkten über Widerstände (R11 ... R23) verbunden werden konnten (Abb.3.8). Dieser Automat konnte verschiedene, an den vertikalen Drähten anliegende Spannungsmuster, jeweils einem horizontalen Draht zuzuordnen (Schreiber, 1988).
Der Automat war damit in der Lage, Muster zu erkennen und zu klassifizieren.
Leider hatte dieser Matrixspeicher in der Praxis keinen Erfolg, da die Leistungsfähigkeit des Systems wegen der geringen Zellenzahl und der langsamen Bauteile zu schwach war (Bentz, 1988).
Erst in der Mitte der 70´er Jahre wurde dieses Konzept von dem finnischen Computerwissenschaftler Teuvo Kohonen wieder aufgegriffen, der damit beachtliche Erfolge erzielen konnte (Kohonen, 1984).
Ein Matrixspeicher ist - allgemein gesagt - in der Lage, beliebige Ein- und Ausgabemuster durch einfache mathematische Operationen assoziativ zu speichern (Abb.3.9), d.h. einander zuzuordnen. Das eingespeicherte Ausgabemuster kann durch das »Einlesen« des Eingabemusters leicht wieder abgerufen werden. Die gespeicherten Daten werden also nicht - wie bei Digitalrechnern - über eine[28] Adresse angesprochen, sondern wiederum über ein Muster (= Schlüssel), nämlich dem jeweiligen Eingabemuster selbst.
Grundsätzlich lassen sich zwei Arten der assoziativen Speicherung unterscheiden:
- Autoassoziation: Das jeweilige Eingabemuster wird mit sich selbst assoziiert; d.h. Ein- und Ausgabemuster sind identisch.
- Heteroassoziation: Jeweils verschiedene Ein- und Ausgabemuster werden miteinander assoziiert.
Nach Meinung einiger Computerwissenschaftler (Kohonen, 1984; Palm, 1990; Bentz, 1988; Barr, 1991), lassen sich viele kognitive Funktionen ebenfalls als eine Assoziation von bestimmten Ein- und Ausgabemustern betrachten:
... genau solche Abbildungen ( [29] Assoziationen) führen biologische Netze ... fortwährend mit hoher Geschwindigkeit und Sicherheit laufend durch, ohne daß man sich dessen überhaupt bewußt wird. Zum Beispiel kann ein Teil eines Bildes mit dem kompletten Bild in Zusammenhang gebracht (vervollständigt), ein Buchstabe zu einem Laut geformt werden und vieles mehr. Sehr viele praxisrelevante Aufgabenstellungen lassen sich im Prinzip auf solche Abbildungen zurückführen: in der Mustererkennung, Klassifizierung, Optimierung, Signalverarbeitung, ... und kognitiven Informationsverarbeitung ... ist dies so.
(Barr, 1991)
Da in den letzten Jahren intensiv über Assoziativspeicher geforscht wurde, existieren mittlerweile eine Vielzahl verschiedener Modelle, die sich in ihrer Performanz oft erheblich unterscheiden (Bentz, 1988).
Im folgenden wird nun der mathematische Formalismus eines Matrixspeichermodells dargelegt, das zwar bezüglich Geschwindigkeit und Informationsaufnahmekapazität anderen Modellen unterlegen ist, sich dafür aber am ehesten als Kortex-Modell eignet (Palm, 1990):
- Einspeicherung von Ein- und Ausgabemustern: Die Eingabemuster und ihre zugehörigen Ausgabemuster müssen als binäre [30] Zeilenvektoren vorliegen (Schreiber, 1988). Durch die Multiplikation des[31] transponierten Eingabevektors ei mit dem Ausgabevektor ai erhält man die Zielmatrix Mi:
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.13
Der Index i ist ein Laufindex (i := 1...n), der die korrespondierenden Ein- und Ausgabevektoren zählt. Man erhält für jedes Paar i von Ein- und Ausgabevektoren eine Zielmatrix Mi.
- Bildung der Speichermatrix: Durch die Addition sämtlicher Zielmatrizen Mi, erhält man die Speichermatrix S (Schreiber, 1988):
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.14
In dieser Speichermatrix sind nun alle korrespondierenden Ein- und Ausgabevektoren (= Ein- und Ausgabemuster) »gespeichert«.
Abruf der Ausgabemuster: Aus der Speichermatrix S läßt sich nun ein bestimmter Ausgabevektor ai leicht wieder auslesen, indem man den zugehörigen Eingabevektor ei von links mit der Speichermatrix multipliziert (nach Schreiber, 1988):
Abbildung in dieser Leseprobe nicht enthalten
Funktion 3.15
Der Eingabevektor wird quasi als Schlüssel benutzt, um den zugehörigen Ausgabevektor abzurufen.
Zur Illustration der obigen Darstellung soll das folgende[32] Beispiel dienen:
Ein Matrixspeicher soll auf einen eingegebenen Begriff mit dessen Gegenteil antworten. Zu diesem Zweck werden die folgenden[33] Begriffspaare in das Matrixgedächtnis eingespeichert:
Salz - Pfeffer
klein - groß
Als erstes müssen die Begriffe als binäre Zeilenvektore n [34] kodiert werden:
Abbildung in dieser Leseprobe nicht enthalten
Im nächsten Schritt werden aus den Begriffspaaren durch Multiplikation die Zielmatrizen M1 und M2 gebildet:
Abbildung in dieser Leseprobe nicht enthalten
Durch die Summation der Zielmatrizen M1 und M2 erhält man die Speichermatrix S:
Abbildung in dieser Leseprobe nicht enthalten
In dieser Speichermatrix sind nun die beiden Begriffspaare gespeichert. Die Speichermatrix S kann nun »abgefragt« werden. Durch die Multiplikation der Fragevektoren mit der Speichermatrix, erhält man die zugehörigen Antwortvektoren:
Abbildung in dieser Leseprobe nicht enthalten
Diese Antworten sind einwandfrei richtig, denn die Bitfolge »1 0 0« kodiert ja den Begriff »Pfeffer«, und die Bitfolge »1 0 1« den Begriff »groß«.
Nachdem die Funktionsweise von Matrixspeichern dargelegt wurde, soll nun ein mustererkennender Matrixspeicher entwickelt werden, der auf die Eingabe eines am Kopf stehenden Buchstabens aus der Reihe »Abbildung in dieser Leseprobe nicht enthalten Abbildung in dieser Leseprobe nicht enthalten Abbildung in dieser Leseprobe nicht enthalten« , diesen richtig orientiert (L T Y) wiedergeben soll.
Die Simulation dieses Matrixspeichers erfolgte unter dem Matrizenberechnungsprogramm[35] Matlab, da dieses Programm aufgrund seiner internen Programmiersprache die Möglichkeit bietet, komfortabel eigene Funktionen zu definieren:
Die drei Zeichenpaare (Abbildung in dieser Leseprobe nicht enthalten-L, Abbildung in dieser Leseprobe nicht enthalten-T, Abbildung in dieser Leseprobe nicht enthalten-Y) werden durch sechs binäre 5 x 5 Matrizen dargestellt (der besseren Sichtbarkeit wegen sind diese Zeichen durch strichlierte Linien hervorgehoben):
Abbildung in dieser Leseprobe nicht enthalten
Zeichenerklärung:
le .. Eingabe - Abbildung in dieser Leseprobe nicht enthalten
la .. Ausgabe - L
te .. Eingabe - Abbildung in dieser Leseprobe nicht enthalten
ta .. Ausgabe - T
ye .. Eingabe - Abbildung in dieser Leseprobe nicht enthalten
ya .. Ausgabe - Y
Analog zum »Salz-Pfeffer-Beispiel« müssen nun die obigen Zeichen-Matrizen in binäre Vektoren umkodiert werden. Es gibt aber eine einfachere und auch anschaulichere Möglichkeit der[36] Umkodierung als diejenige, die in dem vorigen Beispiel beschrieben wurde (Abb.3.10).
Es werden dabei einfach die Zeilen der Zeichen-Matrix nebeneinander in einen Zeilenvektor geschrieben. Um diesen Umschreibevorgang zu automatisieren, wurde die Funktion »Mave« (Matrix [Abbildung in dieser Leseprobe nicht enthalten] Vektor) mit der internen Programmiersprache von Matlab erstellt:
function y = mave(x)[37] % Definieren des folgenden Programms als
Funktion.
% MAVE: Matrix - Vektor - Umwandlung ((c) Hartmut H., 1992).
% MAVE wandelt eine beliebig große Matrix in einen linearen
% Zeilenvektor um.
% Beispiel:
% M = [1 2 3] Eingabe einer 2 * 3 Matrix.
% 4 5 6]
% m = mave(M) Anwendung d. Funktion MAVE auf Matrix M.
% m = [1 2 3 4 5 6] Endergebnis.
%
echo off % Unterdrücken der Bildschirmmeldungen.
clc % Löschen des Bildschirms.
[m,n] = size (x)[38] ; % Berechn. d.Zeilen (m) u.Spalten (n) d.Matrix x.
s = 0; % Definieren des Spaltenzählers für den Zeilenvektor.
for i = 1:m; % Schleife, die Zeilen der Matrix hochzählt.
for j = 1:n; % Schleife, die Spalten der Matrix hochzählt.
s = s+1; % Spaltenzähler für den Zeilenvektor.
y(s) = x(i,j); % Auslesen der Elemente der Matrix x und
Eintrag in Vektor y.
end % Ende der Spaltenzähler-Schleife.
end % Ende der Zeilenzähler-Schleife.
Durch die obige Funktion können nun alle »Buchstaben-Matrizen« in Zeilenvektoren umgewandelt werden:
>> vle = mave (le)
vle =
1 1 1 1 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0
Auf diese Weise wird auch mit den Matrizen la, te, ta, ye, ya verfahren, sodaß nun alle Matrizen als Vektoren vorliegen.
Nun können durch die Multiplikation der Frage-Antwort-Vektorpaare, die Zielmatrizen M1 bis M3 gebildet werden:
>> M1 = vle[39] ' * vla
M1 =
Abbildung in dieser Leseprobe nicht enthalten
Analog dazu, werden die Matrizen M2 und M3 erzeugt. Anschließend werden diese Matrizen zur Speichermatrix S aufsummiert:
>> S = M1 + M2 + M3
S =
Abbildung in dieser Leseprobe nicht enthalten
In der obigen Speichermatrix sind nun sämtliche Ein- und Ausgabemuster repräsentiert.
Durch die Multiplikation mit den einzelnen Schlüsselvektoren (= Eingabevektoren), kann diese Speichermatrix S »abgefragt« werden:
>> l = vle * S
l =
13 2 2 2 4 9 2 2 2 0 9 0 4 0 0 9 0 4 0 0 9 9 13 9 9
>> t = vte * S
t =
16 9 9 9 14 2 5 9 5 0 2 0 14 0 0 2 0 14 0 0 2 2 16 2 2
>> y = vye * S
y =
14 5 5 5 12 2 7 5 7 0 2 0 12 0 0 2 0 12 0 0 2 2 14 2 2
Da die Antworten in Vektorform vorliegen, sollen sie - der besseren Lesbarkeit wegen - wieder in Matrizen umgewandelt werden; dies erfolgt durch die Funktion Vema (Vektor [Abbildung in dieser Leseprobe nicht enthalten] Matrix), die quasi eine »Umkehrfunktion« von Mave darstellt:
function y = vema(x)
% VEMA: Vektor-Matrix-Umwandlung; ((c) Hartmut H., 1992).
% VEMA wandelt einen beliebig großen Zeilenvektor in eine
% Matrix um.
% Beispiel:
% v = [1 2 3 4 5 6] Eingeben des Vektors v.
% M = vema (v) Aufrufen der Funktion vema.
% M = [1 2 3 Ergebnismatrix.
% 4 5 6]
%
echo off
clc
[n] = size(x); % Bestimmung d. Spaltenanzahl (n) des Vektors x.
t = 0; % Definieren des Vektor-Spaltenzählers.
z = input('Wieviele Zeilen soll die Matrix haben: ');
s = input('Wieviele Spalten soll die Matrix haben: ');
clc
if z*s > n % Überprüfen der Zeilen- und Spaltenangaben.
error ('Zeilen- oder Spaltenangabe war zu groß !!!')
end
for i = 1:z; % Beginn der Zeilenzähler - Schleife.
for j = 1:s; % Beginn der Spaltenzähler - Schleife.
t = t+1; % Vektor - Spaltenzähler.
[40] home % Plazierung d.Cursors in linke obere Bildschirmecke.
y(i,j) = x(t),% Auslesen d.Vektorelemente u.Eintrag. in Matrix.
end % Ende der Spaltenzähler - Schleife.
end % Ende der Zeilenzähler - Schleife.
Der Antwortvektor l soll nun durch die obige Funktion in eine Matrix umgewandelt werden:
>> L = vema (l)
Wieviele Zeilen soll die Matrix haben ?: 5
Wieviele Spalten soll die Matrix haben ?: 5
(Das Programm will wissen, wie die neue Matrix dimensioniert sein soll; nachdem die Eingabe-Matrix aus fünf Zeilen und fünf Spalten bestand, werden hier dieselben Werte gewählt).
L =
Abbildung in dieser Leseprobe nicht enthalten
In der Ausgabematrix ist nicht ohne weiteres das erwünschte »L« zu erkennen, da diese Matrix nach den vielen[41] Matrixmanipulationen nicht mehr binär, sondern analog ist.
Man erkennt aber, daß in der ersten Spalte und in der letzten Zeile der Ausgabematrix (Fettdruck) höhere Werte eingetragen sind, als in den übrigen Zellen der Matrix. Durch eine einfache Filterung kann das L jedoch extrahiert werden; man muß dazu jeden Zellenwert, der über einer gewissen Schwelle liegt, gleich »1« setzen, und jeden Zellenwert, der unter dieser Schwelle liegt, gleich »0«. Als [42] Schwellenwert wird hier der Mittelwert über all jene Zellenwerte berechnet, die größer als Null sind.
Diese Kleinarbeit soll jedoch von der folgenden Filter-Funktion übernommen werden:
function y = filtern(x)
% FILTERN: Matrixfilterung((c) Hartmut H., 1992).
% FILTERN wandelt eine analoge Matrix in eine binäre M. um.
% Beispiel:
% M = [1 2 3 Eingeben einer Beispiel - Matrix.
% 4 5 6]
% F = filtern (M) Aufrufen der Filterfunktion.
% s = 3.5 Berechneter Schwellenwert.
% F = [0 0 0 Gefilterte Matrix.
% 1 1 1]
%
echo off
clc
[m,n] = size (x); % Bestimmung d.Zeilen (m) u.Spalten (n) d.Matrix x.
% Berechnung des Schwellenwerts für die Filterung.
gr=0 % Initialisierung des Zählers für besetzte Zellen.
for i = 1:m;
for j = 1:n;
if x(i,j) > 0, gr=gr+1; % Zählschleife für besetzte Zellen.
end
end
end
vs = sum(x) % Berechnung des Summenvektors der Matrix x.
s = sum(vs)/gr % Matrix-Mittelwert über alle besetzte Zellen.
clc
% Umwandlung der Zelleninhalte der Matrix in Binärzahlen.
for i = 1:m;
for j = 1:n;
home
if x(i,j) > s, y(i,j) = 1, % Wenn Zelleninhalt über
% Schwelle s liegt, dann % in die neue Matrix y eine
% 1 eintragen,
else y(i,j) = 0, % ansonsten eine 0.
end
end
end
Durch die Anwendung der obigen Funktion kann nun die Antwortmatrix L komfortabel gefiltert werden:
>> L = filtern (L)
s = 4.5200 (Ausgabe des berechneten Schwellenwerts.)
L =
Abbildung in dieser Leseprobe nicht enthalten
Die Filterung fördert das erwünschte L zutage.
Man erhält somit durch die Multiplikation der Speichermatrix mit dem auf dem Kopf stehenden L, das aufrechte L. Dieselben positiven Ergebnisse erhält man auch mit den Zeichen Abbildung in dieser Leseprobe nicht enthalten und Abbildung in dieser Leseprobe nicht enthalten.
Das wirklich Verblüffende an einem Matrixspeicher ist jedoch dessen Fähigkeit, auch auf verstümmelte Eingaben die richtige Ausgabe zu liefern; diese Fähigkeit soll wieder an einem konkreten Beispiel untersucht werden:
- Eingabe einer fehlerhaften (verstümmelten) Abfragematrix (unvollständiges, auf dem Kopf stehendes L):
>> FL =
Abbildung in dieser Leseprobe nicht enthalten
- Umwandlung der Matrix in einen Zeilenvektor:
>> fl = mave (FL)
- Abfragen der Speichermatrix S durch Multiplikation:
>> antwort = fl * S
- Umwandeln des Antwortvektors in eine 5 x 5 Matrix:
>> ANTWORT = vema (antwort)
Abbildung in dieser Leseprobe nicht enthalten
- Filterung der Antwortmatrix:
>> filtern (ANTWORT)
s = 2.8000 (Filter - Schwellenwert)
Abbildung in dieser Leseprobe nicht enthalten
Trotz der Verstümmelung der Anfragematrix, wurde von der Speichermatrix die richtige Antwort geliefert.
Wenn man die ungefilterte Antwortmatrix des vollständigen Abbildung in dieser Leseprobe nicht enthalten, mit der ungefilterten Antwortmatrix des verstümmelten Abbildung in dieser Leseprobe nicht enthalten vergleicht, dann wird ersichtlich, daß die Differenzen zwischen den »erwünscht besetzten Zellen« (fett gedruckte Werte in untenstehender Tabelle) und den »unerwünscht besetzten Zellen« (mager gedruckte Werte), mit der Zunahme der Verstümmelung abnehmen; es wird dann immer schwieriger, einen Schwellenwert zu finden, durch den das gewünschte Zeichen (z.B. das L) aus der analogen Antwortmatrix extrahiert werden kann:
Die »unerwünscht besetzten Zellen« kommen durch das sogenannte »Übersprechen« (»Cross Talk«; Kohonen, 1984) zustande: da die zu lernenden Zeichen (L, T, Y) nicht an separaten Stellen in der Speichermatrix abgelegt werden, sondern jedes Matrixelement an der Speicherung jedes Zeichens beteiligt ist, liegen die Muster in einer Speichermatrix wie bei einem Hologramm quasi »übereinander« (siehe das Kapitel 3.6.2). Diese Muster können untereinander interferieren, was dann zu einer »Verrauschung« des Ausgabemusters führt.
Die Verrauschung des Ausgabemusters steigt dabei proportional zum Grad der Verstümmelung des Eingabemusters.
Die Tatsache der verteilten Speicherung von Mustern über die gesamte Speichermatrix, korreliert mit den Beobachtungen Karl Lashley´s, der Ende der 20´er Jahre schrieb:
Die gleichen Nervenzellen, die die Gedächtnisspuren einer einzelnen Erfahrung speichern, müssen auch an unzähligen anderen Aktivitäten teilnehmen.
(Lashley, 1950)
So verhält es sich auch bei den Matrixspeichern: beim Neulernen eines Zeichenpaares ändern sich immer alle Zellen der Speichermatrix; es gibt keine Speicherzellen, die spezifisch ein bestimmtes Zeichen kodieren.
Diese verteilte Musterspeicherung wird durch die Multiplikation des jeweiligen transponierten Fragevektors mit dem zugehörigen Antwortvektor erreicht, wodurch die beiden Vektoren quasi gegeneinander aufgetragen werden und dadurch die Zielmatrix (z.B. M1) bilden.
Wenn man die Zielmatrix M1 noch einmal genauer betrachtet, dann fällt auf, daß sowohl der Eingabevektor vle, als auch der Ausgabevektor vla jeweils neunmal darin enthalten ist (siehe fettgedruckte Zeilen und Spalten der Matrix M1). Aufgrund der eben beschriebenen Eigenschaft von Matrixspeichern, Muster verteilt und redundant abzuspeichern, zählt man sie (und natürlich auch die neuronalen Netzwerke) zu den sogenannten PDP-Modellen (PDP = P arallel D istributed P rocessing; parallel verteilte Datenverarbeitung; Rumelhart & McClelland, 1986).
Diese redundante, verteilte Kodierung, macht die Speichermatrix selbst ebenfalls relativ unempfindlich gegenüber »Verletzungen«.
Selbst wenn einige Zellen der Speichermatrix verändert oder gelöscht werden, kann trotzdem noch das richtige Ergebnis abgerufen werden, wie die folgende Demonstration zeigen soll:
Fünf mit »1« oder »2« besetzte Zellen der Speichermatrix S werden durch die »0« überschrieben:
>> S(1,1) = 0 (Der Wert in Zeile1, Spalte 1 der Matrix S wird durch »0« ersetzt.)
>> S(13,8) = 0, S(4,16) = 0, S(21,21) = 0, S(23,23) = 0
Aus der nun fehlerhaften Speichermatrix wird durch Multiplikation mit dem Schlüsselvektor der Antwortvektor ausgelesen:
>> antwort = vle * S
Die anschließende Umwandlung in eine Matrix durch die Funktion Vema und die Filterung durch die Funktion Filtern, ergibt die richtige Antwortmatrix:
>> Antwort =
Die Speichermatrix S konnte also trotz ihrer »Beschädigung« die richtige Antwort liefern. Der Vergleich mit der Antwortmatrix, die die unbeschädigte Speichermatrix lieferte, zeigt jedoch, daß die Antwortmatrix der beschädigten Speichermatrix ein wenig »unschärfer« ist (Die Werte einiger erwünscht besetzter Zellen sind kleiner geworden; siehe die fett gedruckten Werte in untenstehender Tabelle):
Analog zu den Ergebnissen mit den verstümmelten Eingabevektoren, nehmen auch hier die Differenzen zwischen den Werten der »erwünscht besetzten Zellen« und der »unerwünscht besetzten Zellen«, mit dem Grad der Beschädigung der Speichermatrix, ab.
Dabei ist es völlig belanglos, welche Zellen der Speichermatrix man beschädigt; entscheidend ist nur die Anzahl.
Auch diese Beobachtungen korrelieren eng mit den Ergebnissen aus Lashley´s Labyrinth-Lernversuchen mit Ratten, denen er schrittweise Teile der Hirnrinde entfernte; er schreibt 1929:
Die Fähigkeit das Labyrinth zu erlernen, ist abhängig von der Menge des funktionalen Cortexgewebes und nicht [ [43] von] dessen anatomischer Spezialisierung.
(zitiert aus Gardner, 1985)
Lashley brachte seine Untersuchungsergebnisse durch das sogenannte Massenwirkungsgesetz auf den Punkt, das folgendermaßen umrissen werden kann:
Die Effizienz, mit der eine Funktion ausgeführt werden kann, reduziert sich proportional zum Grad der Verletzung eines Hirnareals (nach Lashley, 1950).
Das Massenwirkungsgesetz kann uneingeschränkt auch auf die Matrixspeicher angewandt werden.
Neben der Fehlertoleranz, haben Matrixspeicher - aufgrund ihrer parallelen Datenverarbeitungsweise - noch eine weitere vorteilhafte Eigenschaft; ihre Schnelligkeit. Die Antwortzeit beim Anfragen der Speichermatrix mit einem Schlüsselvektor ist immer gleich kurz, egal, ob die Antwort gelernt wurde, oder nicht.
Diese Eigenschaft haben die Matrixspeicher ebenfalls mit biologischen, neuronalen Speichern gemeinsam; Bentz schreibt dazu:
Wenn ich Ihnen die Frage stelle : ´Wissen Sie die Höhe (im Vergleich zur Meereshöhe) des Amsterdamer Flughafens Schiphol?´, so werden Sie (mit großer Wahrscheinlichkeit) ´nein´ sagen. Zu dieser Antwort sind Sie spontan fähig. Weder Sie noch ich haben den Eindruck, daß Sie Ihr ganzes Orts- und Zahlengedächtnis durchforsten müssen, um zur Antwort zu kommen.
(Bentz, 1988)
Aufgrund ihrer Eigenschaften und Fähigkeiten, werden Matrixspeicher gerne als Modelle für das menschliche Gedächtnis (Kohonen, 1977; Schreiber, 1987; Bentz, 1988) oder sogar als Modelle für die gesamte Hirnrinde (Palm, 1990) herangezogen.
Kritiker wenden ein, daß sämtliche Matrixspeichermodelle auf relativ komplizierte mathematische Verfahren zurückgreifen (Matrizenrechnung) und diese Modelle deshalb als zu abstrakt einzustufen sind. Dem ist zu entgegnen, daß das einfache Matrixspeicher-Modell Karl Steinbuchs (Kap.3.6.2), selbständig in der Lage ist, Vektor- und Matrizenmultiplikationen approximativ durchzuführen (Schreiber, 1988).
Es ist also durchaus nicht abwegig, anzunehmen, daß biologische neuronale Netzwerke ebenfalls fähig sind, einfache Matrixoperationen zu[44] approximieren.
Palm geht davon aus, daß jedes Reiz-Muster (z.B. Sinneseindruck, Klang, Gegenstand, Situation, Szene) im Gehirn in neuronale Aktivität, bzw. in neuronale Aktivitätsmuster umgewandelt wird. Deshalb stellt der neuronale Aktivitätszustand ein »Abbild« der momentanen Gesamtsituation dar. Aufgrund der Ähnlichkeit gewisser Situationen, kommen bestimmte neuronale Aktivitätsmuster jedoch häufiger vor als andere. Davon ausgehend, läßt sich die Entstehung interner Musterrepräsentationen (»Begriffe« nach Palm) folgendermaßen verstehen:
Vielleicht stehen Begriffe ... für nichts anderes als für das Gemeinsame, das unerwartet oft in vielen Situationen auftaucht. Solch ein Begriff sollte dann im Gehirn durch ein sich besonders häufig einstellendes und möglichst auch besonders stabiles neuronales Aktivitätsmuster dargestellt sein.
(Palm, 1990)
Die Stabilisierung von neuronalen Aktivitätsmustern, die aufgrund von ähnlichen Situationen oft realisiert werden, wird durch die Verstärkung der Verbindungen gemeinsam aktivierter Neurone erreicht. Es werden somit: » Korrelationen in der Außenwelt ... zu Verbindungen zwischen Neuronen« (Palm, 1990).
Aufbauend auf den Theorien Hebb´s, nennt Palm diese stabilisierten neuronalen Aktivitätsmuster Assemblies (Gruppen, Vereinigungen).
Diese Assemblies sind zur selbsttätigen Mustervervollständigung fähig: wenn nämlich ein genügend großer Teil einer Assembly aktiviert wird, dann erfaßt die Erregung über das eingefahrenen Netz von Verbindungen auch die anderen beteiligten Neurone; die Assembly »zündet«.
Nach Palm lassen sich diese Assemblies durch Matrixspeicher folgendermaßen beschreiben (Abb.3.11):
Die Spalten eines Matrixspeichers entsprechen den neuronalen Dendriten und die Matrixzeilen den neuronalen Axonen. An den Kreuzungspunkten von Dendriten und Axonen werden Synapsen angenommen, deren Gewichte durch die Werte in den Matrixzellen angegeben werden. Durch die in Abbildung 3.11 eingezeichnete axonale [45] Rückkoppelungsschleife erweitert sich die Leistungsfähigkeit der neuronalen Assemblies in bezug auf die Fähigkeit der Mustererkennung, bzw. -vervollständigung. Wird nämlich ein Muster nicht auf Anhieb erkannt, dann kann das Ausgabemuster über die axonale Rückkoppelungsschleife erneut als Eingangsmuster verwendet werden. Da dieses Muster dem gesuchten mehr gleicht als das zuerst eingegebene, erhält man in diesem Verarbeitungsschritt eher das korrekte Ausgabemuster.
Unter Bezugnahme auf das Palm´sche Assoziativspeichermodell soll nun das im Kapitel 3.6.2.2 vorgestellte Matrixspeichermodell neu betrachtet werden:
Man muß sich die Ein- und die Ausgabematrizen des mustererkennenden Matrixspeicher-Modells aus Kapitel 3.6.2.2 als Neuronennetze vorstellen, bei dem jedes Matrixelement ein Neuron darstellt, das entweder aktiv (Wert »1«), oder inaktiv (Wert »0«) sein kann. Die verschiedenen Ein- und Ausgabematrizen (z.B. Abbildung in dieser Leseprobe nicht enthalten-L, Abbildung in dieser Leseprobe nicht enthalten-T, Abbildung in dieser Leseprobe nicht enthalten-Y) sind somit nichts anderes als »Aktivitätsmuster« eines neuronalen Netzes. Durch die Multiplikation der zu Vektoren umgewandelten korrespondierenden Ein- und Ausgabematrizen (= Ein und Ausgabe -Aktivitätsmuster) werden diese miteinander »korreliert«. Durch die Vektormultiplikation wird nämlich der Aktivitätszustand (»0« oder »1«) jedes Neurons des Fragevektors, mit dem Aktivitätszustand jedes Neurons des Antwortvektors multipliziert.
Die Abbildung 3.12 veranschaulicht den Vorgang der Multiplikation (Korrelation) am Beispiel der »Salz-Pfeffer« -Vektoren im Detail:
Abbildung in dieser Leseprobe nicht enthalten
Nur wenn zwei korrespondierende Neurone gleichzeitig aktiv (Wert »1«) sind, ergibt sich in der Zielmatrix (= Korrelationsmatrix) der Wert »1« (1 * 1 = 1). Diese Neurone entsprechen damit den Hebb´schen Neuronen.
Nach Hebb wird bekanntlich immer dann die Verbindung zwischen zwei Neuronen verstärkt, wenn beide Neurone gleichzeitig aktiv sind. Die Elemente der Korrelationsmatrix stellen somit die Stärke der synaptischen Verbindungen zwischen den einzelnen Neuronen dar, die ein Musterpaar kodieren.
Die Gesamtheit aller Neuronen und synaptischen Verbindungen, die bestimmte Muster (z.B. L, T, Y) kodieren, also stabile neuronale Aktivitätsmuster repräsentieren, bezeichnet man nach Hebb bzw. Palm als »cell assembly« (= Zellverband) oder auch nur als »Assembly«.
In unserem Fall erhält man durch die Summation der Korrelationsmatrizen M1, M2 und M3 eine Assembly (= Speichermatrix S), die die Zeichenpaare Abbildung in dieser Leseprobe nicht enthalten-L, Abbildung in dieser Leseprobe nicht enthalten-T, Abbildung in dieser Leseprobe nicht enthalten-Y repräsentiert.
Die Speichermatrix S beschreibt somit eine Assembly aus 25 x 25 Neuronen mit 625 synaptischen Verbindungen, deren Gewichte in die einzelnen Zellen der Matrix eingetragen sind.
Wenn man die Speichermatrix S genauer betrachtet, dann fällt auf, daß einige Zelleneinträge (fettgedruckte Werte) gegenüber dem Mittelwert über alle besetzten Zellen (1,159) erhöht sind. Diese größeren synaptischen Gewichte kommen durch die Ähnlichkeit gewisser repräsentierter Muster (z.B. Abbildung in dieser Leseprobe nicht enthalten und Abbildung in dieser Leseprobe nicht enthalten) zustande. Aufgrund der strukturellen Ähnlichkeit der entsprechenden Aktivitätsmuster, sind bestimmte Neurone öfter gleichzeitig aktiv, wodurch sich die synaptischen Verbindungen zwischen ihnen relativ zu den anderen erhöhen (eine spezifische Erhöhung bestimmter synaptischer Gewichte kann auch nach dem mehrmaligen Lernen ein und desselben Musters beobachtet werden).
Die Gesamtheit der erhöhten synaptischen Gewichte innerhalb einer Speichermatrix gibt deshalb einen Hinweis auf den »kleinsten gemeinsamen Nenner« aller repräsentierten Muster.
Vergleicht man diesen »kleinsten gemeinsamen Nenner« mit den im Kapitel 2.2 beschriebenen Hubel´schen Konstellationen, dann ergibt sich unter der folgenden Bedingung ein weiterer interessanter Aspekt:
Würde man beispielsweise dem mustererkennenden Matrixspeicher eine Reihe verschiedener Häuserformen beibringen, dann stellte der kleinste gemeinsame Nenner aller dieser Häuserformen das Schema »Haus« dar. Die Gesamtheit aller Neuronen, die durch die erhöhten synaptischen Gewichte untereinander verbunden wären, entsprächen dann dem anatomischen Substrat des Schemas »Haus«.
Zusammenfassend lassen sich über interne Repräsentationen in neuronalen Netzwerken und Matrixspeichern folgende Aussagen machen:
- Interne Repräsentationen sind die Gesamtheit der Korrelationen zwischen einzelnen gelernten Mustern, wobei der Begriff »Muster« für jede Art von Eingabe steht, wie z.B. Bild, Wort, Klang (Kap.3.6.2.3.2).
- Interne Repräsentationen werden in sogenannten Assemblies, also in Gruppen von Neuronen, die durch synaptische Verbindungen unterschiedlicher Gewichtungsstärke zusammengefaßt sind, angelegt (Kap.3.6.2.3.2).
- Die Art der Kodierung von internen Repräsentationen ist abhängig von der Primärstruktur des neuronalen Netzes (Anzahl der vorhandenen Neuronen und synaptischen Verbindungen) (Kap.3.6.1).
- Die Kodierung erfolgt über die Anpassung der synaptischen Gewichte des neuronalen Netzes und ist immer redundant (Kap.3.4.3 und 3.6.1)
- Die internen Repräsentationen haben einen analogen Charakter (Kap.3.6.1).
Bereits in der Einleitung zum allgemeinen Teil dieser Arbeit, wurde auf die Schwierigkeiten hingewiesen, neuronale Umlernprozesse »in vivo« zu untersuchen. Als Alternative zu den bereits erwähnten invasiven Methoden, bekommt der Kognitionswissenschaftler durch die Computersimulation neuronaler Netzwerke ein Werkzeug in die Hand, mit dem neuronale Umlernprozesse simuliert und analysiert werden können.
In dieser Arbeit wurde versucht, den neuronalen Umlernvorgang im visuellen System während des Tragens einer Umkehrbrille nachzubilden und dabei die, durch den Umlernprozeß induzierten, neuronalen Veränderungen zu untersuchen.
Es muß jedoch betont werden, daß für diese Simulation sämtliche in den Kapiteln 3.2 und 3.5.3 erwähnten Einschränkungen gelten, die auf die stark vereinfachten Netzwerkstrukturen zurückzuführen sind.
Weiters konnten bei dieser Simulation vielerlei Aspekte der Umkehrbrillenversuche nicht oder nur rudimentär berücksichtigt werden.
So konnten beispielsweise mit dem zur Verfügung stehenden Simulator nur Assoziationen mit unbewegten, sehr einfachen Bildern durchgeführt werden; der Aspekt der Eigen- und Objektbewegung blieb damit unberücksichtigt. Neuronale Netzwerke, die bewegte Bilder verarbeiten, wären allerdings nur mit riesigem technischen Aufwand zu realisieren (Touretzky; Pomerleau, 1989).
Auch die Interaktion mit dem, für das Umlernen so wichtigen motorischen System, konnte nur ansatzweise in das Simulationsmodell einbezogen werden (»Lernen mit Lehrer«). Eine Simulation, die diesem Umstand gerecht werden würde, müßte aus mindestens zwei parallel laufenden neuronalen Netzwerken bestehen, bei dem das eine Netzwerk das Lernen im visuellen System und das andere das Lernen im motorischen System nachbildet. Dabei müßte dem simulierten motorischen System die »Supervision« über das Lernen im simulierten visuellen System zugeteilt werden. Dies erforderte jedoch einen weitaus leistungsfähigeren Netzwerk-Simulator als jenen, der für die vorliegende Arbeit zur Verfügung stand.
Aus den genannten Gründen ist das im Rahmen dieser Arbeit verwendete Modell zur Simulation neuronaler (synaptischer) Umlernvorgänge im visuellen System, als »stark vereinfacht« zu bezeichnen.
Es sind sich jedoch die meisten Autoren darüber einig, daß solcherart vereinfachte Modelle - sofern sie nicht physiologischen Gegebenheiten widersprechen - trotzdem zum Erkenntnisgewinn herangezogen werden können (Hinton, 1992; Palm, 1990; Schweizer, 1986). Aus diesem Grund wurden die in dieser Simulation erzielten Ergebnisse verwendet, um Vermutungen darüber anzustellen, wie sich das Umlernen im visuellen System während des Tragens einer Umkehrbrille auf neuronaler Ebene abspielen könnte.
In einem ersten Simulationsschritt wurde versucht, den Seh- und Umlernvorgang, gemäß den Ausführungen in den Kapiteln 2.3.1.1 und 3.6.2.3.1, durch einen, im Rahmen dieser Arbeit erstellten, musterassoziierenden Matrixspeicher als Assoziationsprozess zu beschreiben (Kap.4.2).
Um jedoch abzuklären, wie diese Assoziation auf neuronaler Ebene realisiert wird, ist ein solcher musterassoziierender Matrixspeicher nicht mehr ausreichend. Damit kann nämlich der neuronale Umlernvorgang nicht auf eine Art und Weise simuliert werden, wie es für eine strukturanalytische Untersuchung notwendig wäre, da die Assoziation der Ein- und Ausgabemuster durch den Formalismus der Matrixmultiplikation und -addition determiniert wird (Kap.3.6.2.1).
Neuronale Netzwerke hingegen erlernen diese Assoziation durch die selbsttätige Modifikation der synaptischen Gewichtungen bereits bestehender neuronaler Verbindungen, wodurch eine »lernstoffspezifische« Struktur herausgebildet wird, die untersucht werden kann.
Aus diesem Grund wurde ein Backpropagation-Netzwerk für die weiteren Simulationen verwendet (Kap.4.4).
Mit diesem Netzwerk wurde somit ein sehr einfaches Modell des menschlichen visuellen Systems simuliert, um jene strukturellen Veränderungen auf neuronaler Ebene zu untersuchen, die sich durch das Umlernen während des Tragens einer Umkehrbrille ergeben könnten.
Im Kapitel 2.3.1.1 wurde bereits dargelegt, daß Sehen als Zuordnen von internen Repräsentationen, zu den entsprechenden Objekten der Außenwelt, definiert werden kann. Weiters wurde im Kapitel 3.6.2.3.1 das Palm´sche Assoziativspeicher-Kortexmodell vorgestellt.
Darauf aufbauend, wurde im Rahmen dieser Diplomarbeit, ein musterassoziierender Matrixspeicher (M.A.M.)[46] programmiert, anhand dessen versucht wurde, die Kerntheorien der genannten Kapitel zu validieren.
Der M uster a ssoziierende M atrixspeicher M.A.M. wurde vollständig in Turbo[47] Pascal 6.0 programmiert und liegt dieser Diplomarbeit in kompilierter Form, auf einer 3½ bzw. 5¼ -Zoll Diskette, bei (Der dokumentierte Quellcode ist im Anhang dieser Arbeit abgedruckt). M.A.M. funktioniert gemäß den in den Kapiteln 3.6.2.1 und 3.6.2.2 vorgestellten Prinzipien der Musterassoziation. Zusätzlich wurde jedoch eine Palm´sche Rückkoppelungsschleife (siehe das Kapitel 3.6.2.3.1) implementiert.
Abbildung in dieser Leseprobe nicht enthalten
(Abb.4.1).
Über den Menüpunkt A können bis zu acht verschiedene Musterpaare, mit einer Größe von bis zu 7 x 7 [48] Pixeln, eingegeben werden. Über den Menüpunkt B kann die Assembly (Speichermatrix) betrachtet werden, in welcher die zuvor eingegebenen Muster intern repräsentiert werden. Die synaptischen Gewichte dieser Assembly können über den Menüpunkt C wahlweise als Balken- oder Tortendiagramm grafisch dargestellt werden. Um die Fehlertoleranz der betrachteten Assembly zu testen, wurde der Menüpunkt D implementiert, über den die einzelnen synaptischen Gewichte der Assembly komfortabel modifiziert werden können.
Über den Menüpunkt E schließlich, können dem System Objekte (Muster) präsentiert werden, denen M.A.M. daraufhin eine interne Objektrepräsentation zuordnet. Gelingt eine solche Zuordnung nicht auf Anhieb, kann der Zuordnungsversuch über eine Palm´sche Rückkoppelungsschleife (Kap.3.6.2.3.1) wiederholt werden.
Zuerst wurden die internen Repräsentationen der drei 7 x 7 Pixel großen, einfachen Muster aus Abbildung 4.2, über den Menüpunkt A (Abb.4.1), angelegt:
Im Eingabefeld (Abb.4.3) kann der Cursor über die Tasten e (Oben), s (Links), f (Rechts) und d (Unten) an die gewünschte Stelle plaziert werden, wobei mit der + -Taste ein Pixel gesetzt bzw. wieder gelöscht werden kann.
Durch das Drücken der X-Taste kann das Eingabefeld verlassen werden, woraufhin sich das folgende Dialogfeld öffnet: »Autoassoziation (j/n)?:«. Beantwortet man diese Frage mit ja, dann wird das im Eingabefeld eingegebene Muster in´s Ausgabefeld übertragen und somit dieses Muster mit sich selbst assoziiert (siehe das Kapitel 3.6.2).
Auf diese Art und Weise wurden die internen Repräsentationen der Muster »Sektglas« (Abb.4.2), »Pudel« und »Stuhl« angelegt.
Über den Menüpunkt E können Muster (Objekte) vorgegeben werden, denen M.A.M. daraufhin versucht, die entsprechenden internen Repräsentationen zuzuordnen (Abb.4.4):
Abbildung in dieser Leseprobe nicht enthalten[49] [50]
Dem im Abfragefenster vorgegebenen Objekt »Pudel«, ordnete M.A.M. völlig korrekt die interne Repräsentation »Pudel« zu und stellte diese im Antwortfenster dar. Auch die Objekte »Sektglas« und »Stuhl«, bereiteten M.A.M. keinerlei Schwierigkeiten.
Selbst auf die Eingabe eines unvollständigen Objekts, gelang die richtige Zuordnung (Abb.4.5):
Ist ein Objekt jedoch zu sehr verstümmelt, wie jenes in Abbildung 4.6, dann kann der Assoziativspeicher eine korrekte Zuordnung nicht auf Anhieb erreichen.
Da das in Abbildung 4.6 eingegebene Sockelstück des »Sektglases« (Abfragefenster), Ähnlichkeit mit dem linken Bein des Objekts »Stuhl« aufweist, ordnete M.A.M. diesem Muster sowohl die Repräsentation »Sektglas«, als auch die Repräsentation »Stuhl« zu.
Dies resultierte in einer Überlagerung beider Muster im Antwortfeld (Abb.4.6, rechts). Über die bereits erwähnte Palm´sche Rückkoppelungsschleife (Kap.3.6.2.3.1), konnte jedoch trotzdem eine korrekte Zuordnung erreicht werden: Nach dem Drücken der X-Taste erscheint das Dialogfeld »Rückkoppelung (j/n) ?:«. Beantwortet man diese Frage mit ja, dann wird das sich im Antwortfenster befindliche Muster als Eingabemuster verwendet und somit eine neuerliche Zuordnung gestartet.
Das resultierende Antwortmuster (Abb.4.7) war nahezu korrekt; es enthielt nur noch einen Pixel der Repräsentation »Stuhl«. Wurde dieses Muster erneut rückgekoppelt, erfolgte schließlich die richtige Zuordnung der Repräsentation »Sektglas« (Abb.4.8).
Die Rückkoppelungsschleife soll einen sogenannten reverberatorischen Schaltkreis (siehe das Kapitel 3.5.3) simulieren, der gleichzeitig als Verstärker und Filter funktioniert; durch das »Wegfiltern« des einen Musters, wurde das andere verstärkt und somit ein bestimmter Wahrnehmungseindruck » stabilisiert«.
Es wurde bereits im Kapitel 3.6.2.2 dargelegt, daß eine fehlerfreie Zuordnung von internen Objektrepräsentationen zu Objekten der Außenwelt selbst dann noch möglich ist, wenn Teile der Assembly, in welcher diese Repräsentationen angelegt sind, zerstört wurden.
Über den Menüpunkt D können die einzelnen synaptischen Gewichte der besagten Assembly modifiziert werden (Abb.4.9):
Mit den Cursor-Steuerungstasten e, s, d, f und der + -Taste, können beliebige synaptische Gewichte ausgewählt und modifiziert werden.
Durch das Drücken der E-Taste, erhält man einen Statusbericht über den Beschädigungsgrad der vorliegenden Assembly (Abb.4.9, rechts unten). Über die X-Taste kann dieser Menüpunkt verlassen werden, um einen erneuten Zuordnungsversuch mit der beschädigten Assembly zu starten.
Leider lassen sich keine konkreten Aussagen darüber machen, bis zu welchem Beschädigungsgrad eine Assembly noch voll funktionsfähig bleibt, da dies von zu vielen Faktoren abhängt. So spielt sowohl die Art der Kodierung der internen Musterrepräsentationen, als auch die Anzahl und Größe dieser Muster eine Rolle. Somit variiert der größtmögliche - noch kompensierbare - Beschädigungsgrad innerhalb eines Matrixspeichermodells, von Anwendung zu Anwendung. Bei der Assembly, welche die internen Repräsentationen »Sektglas«, »Pudel« und »Stuhl« kodiert (Abb.4.9), konnten beispielsweise bis zu 3 % der synaptischen Gewichte modifiziert werden, während bei anderen Mustern der größtmögliche Beschädigungsgrad deutlich niedriger lag (ca. 2 %).
Um das wiedererlernte Aufrechtsehen nach dem mehrtägigen Tragen einer Umkehrbrille zu simulieren, wurden über den Menüpunkt A, verkehrte Muster mit aufrechten Mustern assoziiert (Abb.4.10).
Die Muster werden in diesem Unterprogramm wiederum über die + -Taste und die Cursor-Steuerungstasten e, s, d, f, in das Eingabefeld eingetragen. Nach dem Drücken der X-Taste zum Verlassen des Eingabefeldes, erscheint die Abfrage: »Wollen Sie invertieren (j/n)?:«. Durch das Drücken der j-Taste, wird das auf dem Kopf stehende Muster im Eingabefeld quasi »nach unten geklappt« und im Ausgabefeld eingetragen.
Auf diese Weise wurden die Repräsentationen der Muster »Sektglas«, »Stuhl« und »Pudel«, angelegt.
Über den Menüpunkt E wurden in weiterer Folge die verkehrten Objekte »Pudel«, »Sektglas«, »Stuhl« vorgegeben, denen M.A.M. völlig korrekt die entsprechenden aufrechten Repräsentationen zuordnete (Abb.4.11).
Entsprechend den Ausführungen in den Kapiteln 3.6.2.1 und 3.6.2.3.1, wurde ein musterassoziierender Matrixspeicher erstellt, anhand dessen versucht wurde, den Sehvorgang - wie im Kapitel 2.3.1.1 ausgeführt - als »Zuordnung von internen Repräsentationen zu Objekten der Außenwelt«, zu beschreiben.
Zu diesem Zweck wurden die internen Repräsentationen einfacher Muster angelegt, die der musterassoziierende Matrixspeicher den entsprechenden aufrechten oder verkehrten Eingabemustern korrekt zuordnete.
Wendet man dieses Assoziativspeichermodell auf die Kohler´schen Umkehrbrillenversuche an, dann könnte das Aufrechtsehen trotz Umkehrbrille durch eine neuerlernte Assoziation der verkehrten Umweltobjekte, mit bestehenden aufrechten internen Objektrepräsentationen erklärt werden.
Es wurde bereits in der Einleitung (Kap.4.1) ausgeführt, daß für eine Abklärung, wie diese Assoziation auf neuronaler Ebene realisiert wird, ein solcher musterassoziierender Matrixspeicher, im Gegensatz zu neuronalen Netzwerk-Simulationen, ungeeignet ist.
Deshalb wurde für die weiteren Simulationen ein Backpropagation-Netzwerk herangezogen.
Gemäß den Ausführungen in Kapitel 3.5.3, wurde zur Simulation des neuronalen Umlernvorgangs während des Tragens einer Umkehrbrille, ein dreischichtiges Backpropagation-Netzwerk verwendet. Dieses Netzwerk wurde auf einem gängigen Netzwerksimulator der Firma Neuro Informatik GmbH, Berlin erzeugt.
Es wurde bereits im Kapitel 3.5 darauf hingewiesen, daß die Backpropagation-Netzwerke zu den leistungsfähigsten Netzwerkmodellen zählen und in Industrie und Forschung vornehmlich für Musterverarbeitungsaufgaben eingesetzt werden. Ein weiterer Vorteil ist die relativ einfache Funktionsweise dieses Netzwerktyps, was eine genauere Analyse der synaptischen Gewichtungen ermöglicht.
Mit dem erwähnten Netzwerksimulator wurde ein dreilagiges Backpropagation-Netzwerk mit je 20 Neuronen pro Schicht erzeugt:
Abbildung in dieser Leseprobe nicht enthalten
Aus dem rechten Ausgabefenster in Abbildung 4.12 kann man entnehmen, daß insgesamt 840 synaptische Verbindungen zwischen den Neuronen übereinanderliegender Schichten aufgebaut wurden.
Da bei Netzwerken des Backpropagation-Typs immer jedes Neuron einer untenliegenden Schicht mit jedem Neuron der darüberliegenden Schicht verbunden ist, ergaben sich somit:
- 20 * 20 (= 400) Verbindungen zwischen den Neuronen der Eingabe- und der verdeckten Schicht,
und
- 20 * 20 Verbindungen zwischen den Neuronen der verdeckten- und der Ausgabeschicht.
Das machte insgesamt 800 Verbindungen für das gesamte Netzwerk. Die restlichen Verbindungen entstanden durch das sogenannte[51] Bias-Element (siehe das Kapitel 3).
Die Abbildung 4.13 soll einen Einblick in die dreidimensionale Topologie des erzeugten Netzwerks geben:
Jede Schicht des Netzwerks war 4 Neuronen »breit« und 5 Neuronen »tief«. Es wurde bereits im Kapitel 3.5.1 erwähnt, daß bei Netzwerken des Back-Propagation-Typs immer nur Neurone unmittelbar übereinanderliegender Schichten direkt miteinander verbunden sind; diese Verbindungen konnten in der nebenstehenden Grafik nur angedeutet werden, da alle 840 Verbindungen unmöglich zeichnerisch darstellbar sind.
Das erzeugte Back-Propagation-Netzwerk mußte lernen - analog zu den Simulationen mit dem musterassoziierenden Matrixspeicher - bestimmten aufrecht oder verkehrt eingegebenen Mustern (Abb.4.14, 4.15 und 4.16), die entsprechenden aufrechten internen Repräsentationen zuzuordnen.
Alle Muster wurden durch 5 x 4 Matrizen (5 Kästchen groß und 4 Kästchen breit) dargestellt.
Bei dem hier vorgestellten Netzwerk-Simulator müssen die zu lernenden Muster dem Netzwerk über eine sogenannte Lernmusterdatei mitgeteilt werden. Diese[52] ASCII-Datei gibt dem lernenden Netzwerk vor, welcher Output auf einen gegebenen Input erfolgen soll (Lernen mit Lehrer). Das Netzwerk ändert in der Lernphase seine Verbindungsstärken zwischen den Neuronen so lange ab, bis der Output auf ein bestimmtes Eingabemuster mit dem gewünschten Output übereinstimmt.
Der folgende Abdruck zeigt einen Ausschnitt aus der Lernmusterdatei für die aufrechten Muster (ein Abdruck der vollständigen Lernmusterdateien für aufrechte und verkehrte Muster findet sich im Anhang):
# [53] #
Abbildung in dieser Leseprobe nicht enthalten
Im Kopf der Lernmusterdatei müssen jeweils drei Parameter definiert werden:
- Die Anzahl der zu lernenden Musterpaare, die in dieser Datei enthalten sind (Lern_muster).
- Die Anzahl der Neurone, aus denen die Input-Schicht zusammengesetzt ist (Input_elemente).
- Die Anzahl der Neurone, aus denen die Output-Schicht zusammengesetzt ist (Output_elemente).
Die Muster selbst werden durch Matrizen der Größe 5 x 4 (fünf Zeilen und vier Spalten) eingegeben, wobei die »1« eine Aktivierung und der ».« keine Aktivierung des entsprechenden Neurons in der Input-, bzw. Output-Schicht bedeutet. Das Muster aus Einsen und Punkten stellt damit ein sogenanntes Aktivitätsmuster für die 20 Neurone der Input- bzw. Output-Schicht dar. So setzt sich z.B. das Symbol »Stuhl« (Abb.4.17) aus 10 aktiven (schwarze Kästchen) und 10 inaktiven Neuronen zusammen. Durch die zwei Aktivitätsmuster unter »Input« und »Output« wird - wie bereits erwähnt - dem Netzwerk mitgeteilt, mit welchem Output es auf einen definierten Input zu reagieren hat.
Nach dem abgeschlossenen Lernvorgang kann das trainierte Netz über eine sogenannte Ein- Ausgabeschnittstelle (Abb.4.18) getestet werden.
Das Input- und das Output-Fenster stellen die Ein- bzw. Ausgabeschicht des neuronalen Netzwerks dar. Durch die SPACE -Taste können im Inputfenster, durch das Setzen von Pixeln, Figuren eingegeben werden. Jeder gesetzte Pixel »erregt« ein Neuron der Input-Schicht; die eingegebene Figur entspricht damit einem Aktivitätsmuster in der Input-Schicht des Backpropagation-Netzwerks. Das Netzwerk ordnet diesem Aktivitätsmuster ein gelerntes Aktivitätsmuster, also eine interne Objektrepräsentation zu, welche im Output-Fenster dargestellt wird.
Zur Demonstration wurde ein Teil der »Pudel«-Figur eingegeben (Abb.4.18); trotz der nur unvollständigen Eingabe, konnte das Netzwerk die korrekte interne Repräsentation zuordnen und diese im Output-Fenster darstellen.
Insgesamt wurden zwei dreischichtige Netzwerke erzeugt, von denen das eine mit der Lernmusterdatei für aufrechte, und das andere mit der Lernmusterdatei für verkehrte Muster trainiert wurde (Abb.4.19).
Bei beiden Netzwerken wurde der zu unterschreitende und damit die Lernzeit determinierende[54] Output-Fehler auf dem - vom Simulator vorgegeben - Standardwert von 0,01 belassen (Abb.4.19, rechts unten). Die Standardwerte für die beiden[55] Lernkonstanten wurden ebenfalls nicht verändert.
Nach abgeschlossenem Training wurden die entstandenen synaptischen Gewichtungen beider Netzwerke miteinander verglichen.
Es wurde angenommen, daß sich zwischen beiden erzeugten Netzwerken, bei einer bestimmten Klasse von Gewichten, die folgenden Unterschiede ergeben:
Da das Netzwerk, welches mit den verkehrten Mustern trainiert wurde, in der Lage ist, verkehrten Mustern aufrechte Muster zuzuordnen, wurde die Vermutung angestellt, daß hier Verbindungen zwischen Prozessorelementen übereinanderliegender Schichten, die von »vorne« nach »hinten« (und umgekehrt)[56] kreuzen (Abb.4.20), stärker gewichtet sind, als jene Verbindungen des Netzwerks, welches mit aufrechten Mustern trainiert wurde. Es wurde angenommen, daß diese »kreuzenden Verbindungen« wichtig für die Assoziation der verkehrten mit den aufrechten Mustern sind.
Die Gewichte der erwähnten kreuzenden Verbindungen wurden, nach abgeschlossenem Training der beiden Netzwerke, über den im Simulator implementierten Gewichtseditor (Abb.4.21) eingesehen.
In der Gewichtsmatrix sind alle Verbindungsgewichte zwischen den Prozessorelementen einzelner Schichten eingetragen. Durch das Abfahren der einzelnen Matrixelemente mit dem Cursor, können die exakten synaptischen Gewichtungen zwischen einzelnen Prozessorelementen sichtbar gemacht und für eine spätere statistische Analyse notiert werden (Abb.4.21, rechts unten).
Abbildung in dieser Leseprobe nicht enthalten[57]
Für die statistische Analyse wurden alle Gewichte aus einem Darstellungsbereich zwischen 1 und 10 berücksichtigt. Insgesamt ergaben sich somit 105 Gewichte für das mit aufrechten und 101 Gewichte für das mit verkehrten Mustern trainierte Netzwerk (siehe Anhang).
Zur Entscheidung, ob ein parametrischer oder nicht-parametrischer Test zur Anwendung kommen sollte, wurde der Kolmogorov-Smirnov-Anpassungstest zur Prüfung auf Normalverteilung angewendet (Kolles, 1989).
Da die Gewichte beider Netzwerke sowohl negative als auch positive Werte annahmen und somit bimodale Verteilungen vorlagen, wurden die positiven und die negativen Gewichte getrennt voneinander analysiert.
Pro Netzwerk waren damit die folgenden Gruppen auf Normalverteilung zu überprüfen:
Die zu prüfenden Hypothesen lauteten:
- H0: empirische Verteilung = Normalverteilung
- H1: empirische Verteilung Normalverteilung
Die Durchführung des Kolmogorov-Smirnov-Anpassungstests erfolgte unter Zuhilfenahme des Statistikprogramms[58] Statgraphics 5.0 (Abb.4.22).
Abbildung in dieser Leseprobe nicht enthalten
Da die nominellen Signifikanzniveaus (»Approximate significance level« in Abb.4.22) sämtlicher Gruppen die vorgegebene[59] Irrtumswahrscheinlichkeit = 10 % überschritten, konnte für alle Gruppen die H0 beibehalten werden.
Somit folgten sämtliche empirischen Verteilungen der Normalverteilung.
Aufgrund dessen und der Tatsache, daß die synaptischen Gewichte auf Intervallskalenniveau vorliegen, wurde der T-Test für [60] unabhängige Stichproben für die weiteren statistischen Analysen gewählt.
Aufgrund des auf Seite 86 Gesagten wurden die folgenden Hypothesen aufgestellt:
- H0: (aufr. pos. bzw. neg. kreuzende Gewichte) = (verk. pos. bzw. neg. kreuzende Gewichte)
Der Mittelwert der »kreuzenden« positiven bzw. negativen Gewichte des mit aufrechten Mustern trainierten Netzwerks unterscheidet sich nicht vom Mittelwert der entsprechenden Gewichte des mit verkehrten Mustern trainierten Netzwerks.
- H1: (aufr. pos. bzw. neg. kreuzende Gewichte) < (verk. pos. bzw. neg. kreuzende Gewichte)
Der Mittelwert der »kreuzenden« positiven bzw. negativen Gewichte des mit aufrechten Mustern trainierten Netzwerks ist signifikant kleiner als der Mittelwert der entsprechenden Gewichte des mit verkehrten Mustern trainierten Netzwerks.
Zuerst wurde der T-Test für die positiven Gewichte der beiden Netzwerke durchgeführt (Abb.4.23):
Da das errechnete nominelle Signifikanzniveau die vorgegebenen Irrtumswahrscheinlichkeit = 5 % überschritt, wurde die H0 beibehalten.
Es ergaben sich somit keine signifikanten Mittelwertsunterschiede zwischen den positiven Gewichten kreuzender Verbindungen der mit aufrechten und verkehrten Mustern trainierten Netzwerke.
Die Berechnung des T-Tests für die negativen Gewichte (Abb.4.24) erbrachte das folgende Ergebnis:
Da das[61] einseitige nominelle Signifikanzniveau (»Sig. Level« in Abb.4.24) von 4,5 % die vorgegebene Irrtumswahrscheinlichkeit = 5 % unterschritt, konnte die H0 verworfen und die H1 angenommen werden.
Somit ist der Mittelwert der negativen Gewichte der kreuzenden Verbindungen des mit aufrechten Mustern trainierten Netzwerks signifikant kleiner als der entsprechende Mittelwert des mit verkehrten Mustern trainierten Netzwerks.
Da die Gesamtheit der negativen Gewichte sich einerseits aus den Gewichten der Verbindungen zwischen Input-Schicht und Schicht 1 und andererseits aus den Gewichten zwischen Schicht 1 und Output-Schicht zusammensetzt, wurden weitere T-Tests durchgeführt, um herauszufinden, welcher Teil dieser Gewichte für den Mittelwertsunterschied verantwortlich war (Abb.4.25 und Abb.4.26):
- Gewichte der kreuzenden Verbindungen zwischen Input-Schicht und Schicht 1:
Abbildung in dieser Leseprobe nicht enthalten
Da das nominelle Signifikanzniveau von 53 % die angenommene Irrtumswahrscheinlichkeit = 5 % überschritt, wurde die H0 beibehalten.
Die Mittelwerte der Gewichte der Verbindungen zwischen Input-Schicht und Schicht 1 unterschieden sich somit nicht signifikant voneinander.
- Gewichte der kreuzenden Verbindungen zwischen Schicht 1 und Output-Schicht:
Abbildung in dieser Leseprobe nicht enthalten
Da das einseitige nominelle Signifikanzniveau von 1,3 %, deutlich unterhalb der vorgegebenen Irrtumswahrscheinlichkeit = 5 % lag, konnte die H1 angenommen werden.
Der Mittelwert der Gewichte der kreuzenden Verbindungen zwischen Schicht 1 und Output-Schicht, des mit aufrechten Mustern trainierten Netzwerks, ist somit signifikant kleiner, als der entsprechende Mittelwert, des mit verkehrten Mustern trainierten Netzwerks.
Für diese Simulation wurde wiederum ein dreischichtiges Backpropagation-Netzwerk erzeugt, daß nun jedoch nacheinander mit den Lernmusterdateien für die aufrechten und die verkehrten Muster trainiert wurde. Dadurch sollten die Zustände vor und nach dem Tragen einer Umkehrbrille nachgebildet werden, um diese lernzeitmäßig miteinander zu vergleichen. Die folgende Tabelle gibt über die Trainingsreihenfolge Aufschluß:
Abbildung in dieser Leseprobe nicht enthalten
Beim Vergleich der[62] Lernzeiten für die aufrechten Muster fiel auf, daß das Netzwerk beim nochmaligen Erlernen (= Überlernen ) der aufrechten Musterassoziationen (Punkt 3 in obiger Tabelle) rund viermal schneller war (20 Sekunden), als beim erstmaligen Erlernen derselben Musterassoziationen (1 Minute, 21 Sekunden).
Das bedeutet, daß die synaptischen Gewichte, die für die Assoziation der aufrechten Muster zuständig waren, trotz des Überlernens mit den verkehrten Mustern, zum Teil erhalten blieben. Beim erneuten Erlernen derselben aufrechten Musterassoziationen, mußten diese Gewichtswerte nicht gänzlich neugebildet werden, sondern konnten gewissermaßen »restauriert« werden, was sich in der erheblich kürzeren Lernzeit ausdrückte.
Anhand eines Backpropagation Netzwerks wurde untersucht, ob die von »vorne nach hinten kreuzenden« Verbindungen zwischen zwei Netzwerkschichten, bei dem Netzwerk, welches mit verkehrten Mustern trainiert wurde, stärker gewichtet sind, als bei jenem Netzwerk, welches mit aufrechten Mustern trainiert wurde.
Diese Hypothese konnte für die positiven Gewichte nicht bestätigt werden, wohl aber für die negativen.
Da es sich bei negativen Gewichten jedoch um inhibitorische Gewichte handelt, müssen zur Interpretation dieses Ergebnisses die folgenden Überlegungen angestellt werden: Bei dem mit aufrechten Mustern trainierten Netzwerk waren die »kreuzenden« Bahnen - im Gegensatz zu dem mit verkehrten Mustern trainierten Netzwerk - mit hohen negativen Werten gewichtet, was sich in einem kleinen Mittelwert äußerte (Abb.4.24).
Die »kreuzenden« Bahnen des erstgenannten Netzwerks übten demnach, im Gegensatz zum zweitgenannten Netzwerk, eine starke inhibitorische Wirkung aus.
Es wird deshalb angenommen, daß das vorliegende Backpropagation-Netzwerk eine Assoziation von verkehrten mit aufrechten Mustern durchführt, indem es Verbindungen, die zwischen zwei Schichten von Prozessorelementen »von vorne nach hinten ziehen«, mit starken Gewichtungen belegt (Abb.4.20).
Die in den vorigen Kapiteln dargestellten Simulationsergebnisse sollen in diesem Kapitel dazu verwendet werden, Vermutungen darüber anzustellen, wie sich das Umlernen im visuellen System während des Tragens einer Umkehrbrille, auf neuronaler Ebene abspielen könnte. Zu diesem Zweck wird der neuronale Umlernvorgang innerhalb eines computersimulierten Netzwerks mit einem hypothetisch angenommenen neuronalen Umlernvorgang, der während des Tragens einer Umkehrbrille stattfinden könnte, in Beziehung gesetzt. Für die folgenden Ausführungen gelten sämtliche Vorbehalte, die in den Kapiteln 3.2 und 4.1 zur Sprache kamen.
Es wird angenommen, daß während des Tragens einer Umkehrbrille gelernt wird, den durch eine Umkehrbrille verkehrten Umweltobjekten die entsprechenden, in neuronalen Assemblies angelegten, aufrechten Repräsentationen dieser Objekte zuzuordnen (Kap. 4.2.2).
Der Umlernvorgang selbst ist dabei stark von Informationen aus anderen Wahrnehmungssystemen (Tastsinn, Gleichgewichtssinn, usw.) abhängig (Kohler, 1951; Ritter, 1986; Held, 1986). Diese Wahrnehmungssysteme übernehmen - analog zum »Lernen mit Lehrer« bei dem besprochenen Backpropagation-Netzwerk - die Rolle eines Lehrers, der vermutlich Rückmeldungen über die Richtigkeit einer Assoziation (eines Lernschritts) gibt.
Es wird angenommen, daß sich das Neuerlernen dieser Assoziationen auf synaptischer Ebene abspielt. Dabei könnte - analog zum beschriebenen Backpropagation-Netzwerk - eine kompensatorische Schaltung aus sich überkreuzenden Bahnen entstehen, die die Assoziation der verkehrten Außenmuster mit den aufrechten internen Objektrepräsentationen ermöglicht.
Diese kompensatorische Schaltung könnte auch nach dem Ablegen der Umkehrbrille noch eine Zeitlang bestehen bleiben, wodurch das mehrminütige Verkehrtsehen unmittelbar nach Brillenabnahme erklärt werden kann (Kap.4.4.4).
Da sich diese Neuverschaltung jedoch - aufgrund ihres kurzen Bestehens - noch nicht in so starkem Maße etabliert hat, wird diese vermutlich rasch wieder abgebaut, wodurch wiederum zum Aufrechtsehen zurückgefunden wird.
1. Alkon, D.L.: Gedächtnisspuren in Nervensystemen und künstliche neuronale Netze., Spektrum der Wissenschaft, 9/1989.
2. Anderson, J.R.: Kognitive Psychologie., Heidelberg, Spektrum der Wissenschaft, 1988.
3. Anderson, J.R.: Neuronale Netzwerke., Amsterdam, Time-Life, 1989.
4. Barr, T.: Netze im Aufwind., C´T, 4/1991.
5. Bentz, H.J.: Ein Gehirn für den PC., C´T, 10/1988.
6. Birbaumer, N.; Schmidt, R.F.: Biologische Psychologie., Berlin, Springer, 1989.
7. Bliem, H.; Moser, H.; Wild H.; Koller, A. (Hrsg.): Von der Nervenzelle zum Gehirn., Institut für Zoophysiologie und Institut für Psychologie der Universität Innsbruck, 1981.
8. Bloos, L.: Die Computer des nächsten Jahrtausend., Happy Computer, 1/1989.
9. Brockhaus, F.A.: Brockhaus, Naturwissenschaften und Technik., Mannheim, Brockhaus, 1989.
10. Brown, R.H. (Hrsg.): Artificial Intelligence., M.I.T. Press, 1979.
11. Dreyfus, H.L.; Dreyfus, S.E.: Künstliche Intelligenz., Reinbek, Rowohlt, 1987.
12. Eckmiller, R.; Werntges, H.: Neuronale Computer., C´T, 10/1988.
13. Gardner, H: Dem Denken auf der Spur., Stuttgart, Klett-Cotta, 1989.
14. Hinton, G.E.: Wie neuronale Netze aus Erfahrung lernen., Heidelberg, Spektrum der Wissenschaft, 1992.
15. Hofstadter, D.R.: Gödel, Escher, Bach., Stuttgart, Klett-Cotta, 1988.
16. Hubel, D.H.: Auge und Gehirn., Heidelberg, Spektrum der Wissenschaft, 1989.
17. Hubel, D; et al.: Gehirn und Nervensystem., Heidelberg, Spektrum der Wissenschaft, 1987.
18. Janosch, B.; Patrick, T.: Denkendes Silizium., C´T, 9/1989.
19. Kinzel, W.; Deker, U.: Denken nach Menschenart., Bild der Wissenschaft, 1/1988.
20. Kirchner, W.: Neuronales Netzchen., C´T, 9/1989.
21. Kohler, I.: Über Aufbau und Wandlungen der Wahrnehmungswelt. Österr. Akademie d. Wissenschaften., 1951.
22. Kohonen, T.: Self-organization and associative memory., Berlin, Springer, 1984.
23. Kolles, H.: Statistische Auswertungen in der Medizin., München, Jungjohann Verlagsgesellschaft, 1989.
24. Lashley, K.S.: The neuropsychology of Lashley., New York, McGraw-Hill, 1950.
25. Leckebusch, J.: Intelligenz im Netz., DOS, 9/1991.
26. Maelicke, A.: Vom Reiz der Sinne., Weinheim, VCH, 1990.
27. Malsburg, Ch.,v.: Flexible Automaten in neuronaler Architektur., Spektrum der Wissenschaft, 1/1988.
28. Minsky, M.: K-Lines., Cognitive Science, 4/1980.
29. Nauta, W.J.H.; Feirtag, M.: Neuroanatomie., Heidelberg, Spektrum der Wissenschaft, 1990.
30. Oehler, R.: Der Griff zum Gehirn., Bild der Wissenschaft, 12/1990.
31. Palm, G.: Assoziatives Gedächtnis und Gehirntheorie., Spektrum d. Wiss., 6/1988.
32. Poppe, G.: Autocad 11., Vaterstetten bei Münschen, IWT-Verlag, 1991.
33. Redding, G.M.; Wallace, B.: Effects on Prism Adaption of Duration and Timing of Visual Feedback during Pointing., Journal of Motor Behaviour, 22/1990.
34. Reichert, H.: Neurobiologie., Stuttgart, Thieme, 1990.
35. Ritter, H; Martinetz, T.; Schulten K.: Neuronale Netze., Bonn, Addison-Wesley, 1990.
36. Ritter, M. (Hrsg.): Wahrnehmung und visuelles System., Heidelberg, Spektrum der Wissenschaft, 1986.
37. Rock, I.: Wahrnehmung., Heidelberg, Spektrum d. Wiss., 1985.
38. Rumelhart, D.E.; McClelland, J.L.: Parallel distributed processing., Cambridge, MIT-Press, 1986.
39. Sarnow, K.: Netze selber knoten., C´T, 2/1992.
40. Schmidt, H.: Vom Computer zum Elektronengehirn., Bild der Wissenschaft, 12/1990.
41. Schöneburg, E.; Hansen, N; Gawelczyk, A.: Neuronale Netzwerke., Haar bei München, Markt-u.Technik-Verl., 1990.
42. Schreiber, S.B.: Natürliche Intelligenz (1)., C´T, 4/1987.
43. Schreiber, S.B.: Großer Auftritt für eine kleine Matrix., C´T, 7/1987.
44. Schreiber, S.B.: Mach´s doch selber!, C´T, 9/1987.
45. Schreiber, S.B.: Ein Computer lernt buchstabieren., C´T, 7/1988.
46. Schulze, H.H.: Computer Lexikon., Reinbek, Rowohlt, 1989.
47. Schweizer, H.J.: PN-II, Einleitung zum Handbuch., Ergänzung zur Habilitationsschrift, vorgelegt am Institut f. Psychologie d. Universität Innsbruck., 1986.
48. Seelen, W. v., et al.: Sehende Computer., C´T, 11/1988.
49. Seelos, H-J.: Wörterbuch der Medizinischen Informatik., Berlin, de Gruyter, 1990.
50. Singer, W.: Gehirn und Kognition., Heidelberg, Spektrum der Wissenschaft, 1990.
51. Stanley, J.; Bak, E.: Neuronale Netze., München, Systhema, 1992.
52. Thompson, R.F.: Das Gehirn., Heidelberg, Spektrum der Wissenschaft, 1990.
53. Touretzky, D.S.; Pomerleau, D.A.: What´s Hidden in the Hidden Layers?, BYTE, 8/1989.
54. Vogel, G.; Angermann, H.: DTV-Atlas zur Biologie., DTV, 1985.
55. Welchering, P.: Neuronale Netze., Happy Computer, 1/1989.
56. Werner, J.: Medizinische Statistik., München, Urban & Schwarzenberg, 1984.
57. Wirbeleit, F.: Diskrete Annäherung., C´T, 2/1992.
58. Würtz, R.P.: Gesichtserkennung mit dynamischen neuronalen Netzen., Spektrum der Wissenschaft, 4/1992.
59. Zerbe, K.: Do-it-yourself-Gehirnchen., C´T, 12/1989.
60. Zink, Ch. (Bearb.): Pschyrembel, Klinisches Wörterbuch., Berlin, Walter de Gruyter, 1990.
Kapitel 1:
- Abbildung 1.1: [63] aus Kohler, 1951.
Kapitel 2:
- Abbildung 2.1: aus Vogel, 1985, modifiziert.
- Abbildung 2.2: nach Hubel, 1988, modifiziert.
- Abbildung 2.3: aus Pschyrembel, 1990, modifiziert.
- Abbildung 2.4: nach Birbaumer, 1989, modifiziert.
- Abbildung 2.5: aus Thompson, 1990, modifiziert.
- Abbildung 2.6: nach Hubel, 1988, modifiziert.
- Abbildung 2.7: nach Hubel, 1988, modifiziert.
- Abbildung 2.8: nach Hubel, 1988, modifiziert.
Kapitel 3:
- Abbildung 3.1: aus Eckmiller, 1988, modifiziert.
- Abbildung 3.2: Häfele, 1992.
- Abbildung 3.3: Häfele, 1992.
- Abbildung 3.4: nach Schöneburg, 1990, modifiziert.
- Abbildung 3.5: nach Eckmiller, 1988, modifiziert.
- Abbildung 3.6: nach Schöneburg, modifiziert.
- Abbildung 3.7: Häfele, 1992.
- Abbildung 3.8: nach Schreiber, 1987.
- Abbildung 3.9: nach Barr, 1991, modifiziert.
- Abbildung 3.10: Häfele, 1992.
- Abbildung 3.11: nach Palm, 1990, modifiziert.
- Abbildung 3.12: Häfele, 1992.
Kapitel 4:
- Abbildung 4.1: [64] Screenshot; Häfele, 1992.
- Abbildung 4.2: Screenshot; Häfele, 1992.
- Abbildung 4.3: Screenshot; Häfele, 1992.
- Abbildung 4.4: Screenshot; Häfele, 1992.
- Abbildung 4.5: Screenshot; Häfele, 1992.
- Abbildung 4.6: Screenshot; Häfele, 1992.
- Abbildung 4.7: Screenshot; Häfele, 1992.
- Abbildung 4.8: Screenshot; Häfele, 1992.
- Abbildung 4.9: Screenshot; Häfele, 1992.
- Abbildung 4.10: Screenshot; Häfele, 1992.
- Abbildung 4.11: Screenshot; Häfele, 1992.
- Abbildung 4.12: Screenshot; Häfele, 1992.
- Abbildung 4.13: Häfele, 1992.
- Abbildung 4.14: Häfele, 1992.
- Abbildung 4.15: Häfele, 1992.
- Abbildung 4.16: Häfele, 1992.
- Abbildung 4.17: Häfele, 1992.
- Abbildung 4.18: Screenshot; Häfele, 1992.
- Abbildung 4.19: Screenshot; Häfele, 1992.
- Abbildung 4.20: Häfele, 1992.
- Abbildung 4.21: Screenshot; Häfele, 1992.
- Abbildung 4.22: Screenshot; Häfele, 1992.
- Abbildung 4.23: Screenshot; Häfele, 1992.
- Abbildung 4.24: Screenshot; Häfele, 1992.
- Abbildung 4.25: Screenshot; Häfele, 1992.
- Abbildung 4.26: Screenshot; Häfele, 1992.
Anhang
Quellcode des Programms M.A.M.
Lernmusterdateien der Muster: »Buchstaben, Symbole, Ziffern«
Gewichtungen der synaptischen Verbindungen nach erfolgreichem Training
Quellcode des Programms M.A.M.
M.A.M. wurde[65] fast vollständig in Turbo Pascal 6.0 programmiert und ist auf allen PC´s der[66] AT-Klasse (286, 386, 486), mit mindestens 640 KB RAM und[67] Grafikadapter (Hercules, CGA, MCGA, EGA, VGA), lauffähig.
M.A.M. funktioniert gemäß den Ausführungen in den Kapiteln 3.6.2.2 und 3.6.2.3.1, welche ergänzend zu der vorliegenden Quellcode-Dokumentation herangezogen werden können.
PROGRAM MAM;
Abbildung in dieser Leseprobe nicht enthalten
Die folgenden Lernmusterdateien aufrechter und verkehrter Muster, wurden für das Training des im Kapitel 4.4 beschriebenen Backpropagation-Netzwerks verwendet.
Die Lernmusterdateien liegen im ASCII-Format vor und haben den folgenden Aufbau:
- Im Lernmusterdatei-Kopf muß angegeben werden, wieviele Muster in der Datei enthalten sind (Lern_muster) und aus wievielen Input- bzw. Output-Prozessorelementen das zu trainierende neuronale Netzwerk besteht (Input_elemente, Output_elemente).
- Im Lernmusterdatei-Hauptteil werden die zu assoziierenden Muster als Matrizen aus Einsen und Punkten dargestellt, wobei die Eins für ein aktiviertes, und der Punkt für ein inaktiviertes Neuron steht.
Aufrechte Muster
Abbildung in dieser Leseprobe nicht enthalten
Nachfolgend sind die synaptischen Gewichtungen der »von vorne nach hintenden kreuzenden« Verbindungen, der beiden mit aufrechten bzw. verkehrten Mustern trainierten Backpropagation-Netzwerke aufgeführt.
Aufrechte Muster
Abbildung in dieser Leseprobe nicht enthalten
Verkehrte Muster
Abbildung in dieser Leseprobe nicht enthalten
Abbildung in dieser Leseprobe nicht enthalten
[...]
[1] Sämtliche nichtinvasive Methoden, wie beispielsweise EEG-Ableitungen (evozierte Potentiale, Brainmapping, usw.) oder moderne bildgebende Verfahren (CT, NMR, PET, usw.), verfügen (noch) nicht über das nötige Auflösungsvermögen, um neuronale Veränderungen auf zellulärer oder sogar synaptischer Ebene sichtbar zu machen.
[2] Konvergenz bedeutet »Zusammenfließen« bzw. Sammeln von Information; dies wird durch die Projektion vieler Neurone auf eine geringere Anzahl Neurone realisiert. Analog dazu bedeutet Divergenz »Auseinanderfließen« bzw. Verteilen von Information. Das konvergente und das divergente Verschaltungsprinzip läßt sich im gesamten Nervensystem aller Arten beobachten und stellt ein Grundprinzip der neuronalen Informationsverarbeitung dar (nach Bliem et al., 1981).
[3] Diese Beschreibung bezieht sich auf die RF der Neurone für das Schwarz-Weiß-Sehen. Die RF der Neurone für das Farbensehen sind sehr ähnlich aufgebaut. Man unterscheidet Neurone des Rot-Grün-Systems von Neuronen des Gelb-Blau-Systems (Hubel, 1989). Zentrum und Peripherie der RF dieser Neurone sind dabei Farb-antagonistisch organisiert: so reagiert z.B. ein Neuron des Rot-Grün-Systems nur dann maximal, wenn ein roter Lichtreiz in sein RF-Zentrum, bzw. wenn ein grüner Lichtreiz in seine RF-Peripherie trifft. Neurone des Gelb-Blau-Systems haben analog dazu ein »gelbes RF-Zentrum« und eine »blaue RF-Peripherie« (Birbaumer, 1989).
[4] Der Thalamus ist die größte graue Kernsubstanz des Zwischenhirns. Er ist die übergeordnete Schaltstation für die folgenden zur Großhirnrinde ziehenden sensorischen Systeme: Seh-, Hör- und somatosensorisches System. Überdies steht der Thalamus durch entsprechende Fasersysteme mit dem Kleinhirn, dem extrapyramidalen System und dem Rückenmark in Verbindung (nach Thompson, 1990).
[5] Die im folgenden beschriebenen Erkenntnisse über den Aufbau und die Funktionsweise der neuronalen Strukturen im visuellen Kortex sind der langjährigen Forschungsarbeit der Neurobiologen David Hubel und Torsten Wiesel zu verdanken, die dafür 1981 mit dem Nobelpreis für Medizin ausgezeichnet wurden.
[6] Von dieser Regel ausgenommen sind jedoch die Neurone der Zellschichten IVc; diese Neurone besitzen nämlich Rezeptive Felder, die jenen des CGL und der Retina ähnlich sind, und reagieren deshalb auch nicht orientierungsspezifisch (in der Abbildung 2.4 wird dies durch den kleinen Kreis angedeutet) (Birbaumer, 1989).
[7] Ein visuelles Feld ist als eine vollständige Kartierung der Netzhaut auf einem Kortexareal definiert (Thompson, 1990).
[8] Die Dauer der sog. Kritischen Periode unterscheidet sich dabei von Art zu Art: bei Katzen wird sie als die Zeitspanne zwischen der 3. und der 12. Lebenswoche angegeben (Hubel, 1989); bei Menschenaffen dauert sie vom Zeitpunkt der Geburt bis zum 12. Lebensmonat (Reichert, 1990). Beim Menschen selbst reicht die kritische Phase bis zum Schulalter (Singer, 1990).
[9] Anmerkungen des Verfassers sind in eckigen Klammern eingeschlossen.
[10] PDP = P arallel D istributet P rocessing = parallel verteilte Datenverarbeitung.
[11] Da der Ausdruck »Computersimulierte neuronale Netzwerke« etwas umständlich ist, soll stattdessen künftig der Ausdruck »neuronale Netzwerke« verwendet werden. Natürliche (biologische) neuronale Netzwerke werden künftig als »biologische neuronale Netze« bezeichnet.
[12] Ein Algorithmus ist eine Rechenanweisung, also die Festlegung eines Rechenvorganges durch eindeutige Regeln. Man unterscheidet endliche (begrenzte) und unendliche Algorithmen. Auf Computern werden sogenannte Algorithmussprachen (= Programmiersprachen) zur Beschreibung endlicher Algorithmen angewendet. Wenn für einen Ablauf ein Algorithmus gebildet werden kann, dann kann auch ein Computerprogramm erstellt werden, das diesen Ablauf nachbildet. Somit stellt jedes Computerprogramm selbst einen endlichen Algorithmus dar (Schulze, 1989).
[13] Nachdem die Neuronenzahl des menschlichen Gehirns nur geschätzt werden kann, differieren die Angaben darüber bei den verschiedenen Autoren zum Teil erheblich. Einige Schätzungen gehen sogar bis zu 100 Milliarden Neuronen (Schöneburg, 1990).
[14] Synapsen sind die Kontaktstellen zwischen den Neuronen eines Nervennetzes. Über sie werden Aktionspotentiale von einer Nervenzelle auf die nächste übertragen. Man unterscheidet exzitatorische (erregende) von inhibitorischen (hemmenden) Synapsen.
[15] 1945 beschrieb der Computertechniker John von Neumann den klassischen Aufbau und die Funktionsweise eines Rechners mit den Bestandteilen Zentraleinheit (CPU; Gliederung in Prozessor und Hauptspeicher) und Datenkanäle (Schulze, 1989). Fast alle heute gängigen Computermodelle sind nach dieser Architektur strukturiert.
[16] Der Begriff »Muster« steht im Rahmen der Theorie neuronaler Netzwerke nicht für Bilder, sondern vielmehr für Datenmuster. Ein Datenmuster ist nichts anderes als eine Anordnung gleichberechtigter Datenwerte; z.B. diese Bitfolge: 0 0 1 0 1 1 0 0 1.
[17] K ünstliche I ntelligenz: Forschungsrichtung, die traditionellerweise versucht, die natürliche Intelligenz des Menschen durch spezielle Algorithmen, bzw. durch prozedurale Programmierung (Advanced Programming) zu simulieren (Schulze, 1989). Seit der Mitte der 80´er Jahre werden von KI-Forschern zunehmend auch neuronale Netzwerke eingesetzt; die Forschung mit und an neuronalen Netzwerken gilt heute als ein Teilgebiet der KI.
[18] Anmerkung d. Verfassers.
[19] Dieser Ausdruck stammt aus der Laserlicht-Fotografie. Hier wird durch eine spezielle Zerlegung von Laserlicht erreicht, daß ein Gegenstand dreidimensional auf einer Bildplatte abgebildet wird. Das Besondere dabei ist jedoch, daß die Information über jeden Bildpunkt über die gesamte Bildplatte verteilt ist; d.h. daß in jedem Bruchstück des ursprünglichen Bildes das Gesamtbild enthalten ist. Außerdem können auf einer einzigen Fotoschicht mehrere Bilder gleichzeitig gespeichert werden (Gardner, 1984).
[20] Madaline = M ultiple Ada ptive Lin ear E lement.
[21] Die Festkörperphysik beschäftigt sich mit der Aufklärung der Kristallstrukturen, sowie mit den Bindungsverhältnissen zwischen benachbarten Atomen bei den sogenannten Festkörpern (= Stoffe im festen Aggregatzustand, mit definierter Form und Volumen) (nach Brockhaus, 1989).
[22] Jenes Prozessorelement, daß seinen Ausgangswert (Output) an ein nachgeschaltetes Prozessorelement weitergibt, heißt Senderzelle (j ).
Jenes Prozessorelement, daß diesen Output der Senderzelle j als Input verarbeitet, heißt Empfängerzelle i der Senderzelle j.
[23] propagate = fortpflanzen, ausbreiten.
[24] Anmerkung d. Verfassers.
[25] Kode, der aus Binärzeichen (= Zeichen aus einem Zahlenvorrat von nur zwei Zeichen) besteht.
[26] Bit = binary digit = binäre Ziffer, die nur die Werte Null oder Eins annehmen kann.
[27] Matrix = Zweidimensionaler Zahlenkörper aus m Zeilen und n Spalten von Zahlen (Schulze, 1989).
[28] Bei den Arbeitsspeichern herkömmlicher Computer werden die einzelnen Speicherplätze durchnummeriert. Diese Platznummern (= Adressen) ermöglichen den Zugriff auf den Speicherinhalt des jeweiligen Speicherplatzes.
[29] Anmerkung des Verfassers.
[30] Vektor = dimensionaler Zahlenkörper aus einer Reihe von Einzelwerten. Man unterscheidet Zeilenvektoren von Spaltenvektoren (Schulze, 1989). In der hier verwendeten Darstellungsform werden Vektoren als eindimensionale Matrizen verstanden.
[31] transponieren = Vertauschen von Zeilen und Spalten eines Vektors oder einer Matrix.
[32] Die Durchrechnung dieses Beispiels erfolgte mit dem Mathematik-Paket Mathcad for Windows (© MathSoft, 1991). Die Ergebnisse der Berechnung wurden über die Windows-Zwischenablage importiert.
[33] Da jeweils verschieden Frage- und Antwortvektoren miteinander assoziiert werden, handelt es sich bei diesem Beispiel um eine Heteroassoziation (siehe das Kap.3.6.2).
[34] Die vorliegende Kodierungsart wurde willkürlich gewählt; genausogut hätte jeder andere mehrstellige Binärkode verwendet werden können. Grundsätzlich gilt jedoch: je redundanter die Kodierung, desto leistungsfähiger verhält sich der Matrixspeicher.
[35] Matlab = Mat rix Lab oratory (© MathWorks Inc., 1989).
[36] Bentz et al. empfehlen »spärlichere« Kodierungsarten, um eine hohe Assoziativ-Speicherleistung zu erreichen. Die vorliegende Art der Kodierung wurde gewählt, um eine möglichst gute Vergleichbarkeit mit natürlichen Systemen zu gewährleisten.
[37] Das Prozentsymbol % dient bei der Programmierung unter Matlab zum Einfügen von Kommentaren.
[38] Das Semikolon unterdrückt die Bildschirmausgabe des Ergebnisses der jeweiligen Berechnung.
[39] Das Hochkomma bewirkt unter Matlab eine Transponierung einer Matrix oder eines Vektors.
[40] Durch den »home« - Befehl wird das Programm veranlaßt, die zu bildende Matrix bei jedem Spalten - Schleifendurchlauf in die linke obere Bildschirmecke zu plazieren. In Kombination mit der Programmzeile y(i,j) = x(t), deren Bildschirmausgabe durch die Verwendung des Kommas anstatt des Semikolons nicht unterdrückt wird, ergibt sich dadurch ein sogenanntes »Movie«; d.h. man kann das »Auffüllen« der Matrix mit den Vektorelementen mitverfolgen.
[41] Durch die Aufsummierung der einzelnen binären Zielmatrizen ergibt sich eine analoge Summenmatrix. Aus diesem Grund erhält man durch die Multiplikation der jeweiligen Eingabematrix mit der Summenmatrix eine analoge Antwortmatrix.
[42] Es wären durchaus noch andere Schwellenwert-Berechnungsmethoden denkbar; die vorliegende Methode der »Bildung des Mittelwerts über alle besetzten Zellen« besticht jedoch aufgrund ihrer Einfachheit und ihrer noch am ehesten gegebenen Entsprechung mit physiologischen Gegebenheiten (siehe das Kapitel 3.4.3)
[43] Anmerkung d. Verfassers.
[44] Eine Approximation ist ein Näherungsverfahren zur Berechnung komplizierter mathematischer Werte mit Hilfe der numerischen Mathematik (Schulze, 1989).
[45] Die axonale Rückkoppelungsschleife ist in der Neurophysiologie auch als reverberatorischer Kreisverband (»reverberatory circuit«; Hebb, 1949) bekannt, in dem bestimmte Erregungsmuster einige Zeit zirkulieren und dadurch verstärkt werden (Birbaumer, 1990).
[46] Ich möchte an dieser Stelle Heidrun H. für Ihre Unterstützung beim Programmieren von M.A.M. danken.
[47] M.A.M. ist auf allen PC´s der AT-Leistungsklasse mit mindestens 640 KB RAM und Grafikadapter (Hercules, CGA, MCGA, EGA, VGA) lauffähig. Der dokumentierte Quellcode des Programms ist im Anhang dieser Diplomarbeit abgedruckt.
[48] Pixel = Bildpunkt. Kleinstes Element der Darstellung von Zeichen oder Bildern auf Monitoren oder Druckern (Schulze, 1989).
[49] Schwelle = Mittelwert über alle Zellen, die größer als Null sind (siehe das Kapitel 3.6.2.2).
[50] Wenn man eine 7 x 7 - Matrix gemäß den Ausführungen in Kapitel 3.6.2.2, in einen Zeilenvektor umwandelt, dann erhält man einen Vektor mit 49 Komponenten. Da - der Übersichtlichkeit wegen - zwischen jede Vektorkomponente ein Leerzeichen gehört, ergibt das eine Zeichenkette von 97 Zeichen Länge. Nachdem im Textmodus nur 80 Zeichen nebeneinander darstellbar sind, ist somit sowohl der Ein- als auch der Ausgabevektor zu lang zur Bildschirmdarstellung.
[51] Der BIAS ist ein Prozessorelement mit der konstanten Aktivität von 1; er besitzt nur Ausgänge und keine Eingänge. Mit Hilfe des Bias-Elements wird sichergestellt, daß bestimmte Prozessorelemente immer einen Input ungleich Null erhalten (nach Schöneburg, 1990).
[52] Abkürzung für A merican S tandard C ode of I nformation I nterchange (= amerikanischer Normcode für Nachrichtenaustausch). Der ASCII-Kode ist ein normierter 7 (8) -Bit-Kode, der dem Datenaustausch zwischen Soft- bzw. Hardwareprodukten verschiedener Hersteller dient (nach Seelos, 1990).
[53] Zwischen zwei »#« können Kommentare in die Lernmusterdatei eingefügt werden.
[54] Es wurde bereits erwähnt, daß Backpropagation-Netzwerke beim Lernen, während jedes Lernzyklus´, den tatsächlichen Output mit dem erwünschten Output vergleichen und aus der Differenz den sog. Output-Fehler berechnen. Unterschreitet dieser errechnete Outputfehler den vom Benutzer willkürlich festlegbaren Outputfehler, dann wird der Lernvorgang abgebrochen und somit das Training beendet. Je kleiner der Outputfehler angesetzt wird, desto länger lernt das Netzwerk und umso leistungsfähiger wird es.
[55] Die Lernkonstante bzw. Lernrate ist als eine reelle Zahl zwischen Null und Eins definiert und gibt an, wie stark ein einzelner Lernschritt in die Veränderung der Gewichte eingeht (Schöneburg, 1990) (siehe das Kapitel 3). Ein neuronales Netzwerk lernt umso länger, je kleiner die entsprechenden Lernraten angesetzt sind.
[56] Unter von »vorne nach hinten kreuzenden Verbindungen« werden hier all jene Verbindungen zwischen zwei Prozessorelementen übereinanderliegender Netzwerk-Schichten verstanden, die in Richtung der z-Achse mindestens zwei Prozessorelemente »überspringen« (Abb.4.20). Die Verbindung zwischen dem Prozessorelement 4 der Input-Schicht und dem Prozessorelement 40 der verdeckten Schicht, wäre beispielsweise eine solche »kreuzende Verbindung«; sie »überspringt« die Prozessorelemente 8, 12 und 16.
[57] Schicht 1 = erste verdeckte Schicht.
[58] © STSC, Inc., 1991.
[59] Um den -Fehler (fälschlich beibehaltene H0 und damit unrechtmäßige Anwendung parametrischer Verfahren) kleinzuhalten, wurde die Irrtumswahrscheinlichkeit auf 10 % festgesetzt (Kolles, 1989).
[60] Da zwei Netzwerke erzeugt wurden, die mit verschiedenen Lernmustern trainiert wurden, sind die erhobenen Gewichtungen voneinander unabhängig.
[61] Da die aufgestellte Alternativhypothese »1 < 2«, eine gerichtete Hypothese darstellt, konnte am Statgraphics Auswertungsbildschirm das Schaltfeld »vs. Alt:« (Alternativhypothese) auf LT (lower than) gesetzt werden, was eine Halbierung des nominellen Signifikanzniveaus bewirkte (Kolles, 1989).
[62] Da die Lernzeiten mit der Rechenleistung des zur Simulation verwendeten Computertyps variieren, müssen - um eine Vergleichbarkeit zu gewährleisten - dessen technische Daten aufgeführt werden: sämtliche in dieser Arbeit besprochenen Simulationen wurden auf einem IBM-kompatiblen PC mit einer 80486´er CPU (33 MHZ Taktfrequenz, 256 KB Cache-Memory) durchgeführt.
[63] »aus« bedeutet: Vorlage wurde eingescannt und mit Paintbrush (© Microsoft, 1992) nachbearbeitet.
[64] Sämtliche Screenshots wurden mit Capture 1.0 (© Jewell Technologies Inc., 1989) erstellt.
[65] Lediglich die Routine zur automatischen Prozessorprüfung (siehe d. folgende Fußnote) enthält ein wenig Assembler-Code.
[66] M.A.M. führt eine automatische Prozessorprüfung durch; ist nicht mindestens ein 80286 Prozessor vorhanden, erfolgt ein Programmabbruch mit der Meldung: »Programm läuft erst ab einem 286´er-System !« (© für diesen Programmteil: Borland, 1989).
[67] Das vorliegende Programm ist mit einer automatischen Grafikkarten-Detektion ausgestattet und schaltet selbsttätig in den entsprechenden Grafikmodus (© für diesen Programmteil: Borland, 1989).
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!
Kommentare