Neuronale Netze und ihre Bedeutung in der Cognitive … · Gliederung 1. Einleitung 2. Das Konzept...

36
Andrea Tasnadi, Christian Mair Zusammenfassung des Referates: Neuronale Netze und ihre Bedeutung in der Cognitive Sience

Transcript of Neuronale Netze und ihre Bedeutung in der Cognitive … · Gliederung 1. Einleitung 2. Das Konzept...

Andrea Tasnadi, Christian Mair

Zusammenfassung des Referates:

Neuronale Netze und ihre Bedeutung in der

Cognitive Sience

Gliederung

1. Einleitung

2. Das Konzept der natürlicher neuronaler Netze

2.1. Aufbau der natürlicher neuronaler Netze

2.2. Die Informationsregulierung

2.3. Neuronale Plastizität

3. Das Konzept der künstlicher neuronaler Netze

3.1. Das Grundkonzept künstlicher neuronaler Netze

3.2. Beispiel einer mathematischen Umsetzung: Rotkäppchenbeispiel

3.3. Steigerung des Komplexitätsgrades durch Hidden Layers

3.4. Lernregeln künstlicher neuronaler Netze

4. Vergleich von biologischen und künstlichen neuronaler Netze

5. Anwendungen Neuronaler Netze

5.1. Anwendungen in der Psychologie

5.2. Anwendungen in der Wirtschaft

5.3. Anwendungen in der Technik

6. Exkurs: Anleitung zur Simulation des Rotkäppchenbeispiels mit Hilfe

von „Memobrain“

6.1. Voreinstellungen anpassen

6.2. Objekteigenschaften der Unit

6.3. Umbenennen

6.4. Verbindungen erstellen

6.5. Trainingsphase

6.6. Initialisierung der Gewichte mit Zufallswerten

6.7. Testphase

7. Die Kontroverse zwischen Konnektionismus und Symbolverarbeitung

7.1 Symbolverarbeitungsansatz und konnektionistische Systeme

7.2. Gegenargumente des Symbolverarbeitungsansatzes gegen eine Zuschreibung von

„Intelligenz“ an konnektionistische Systeme

7.3. Entkräftung der Gegenargumente

7.4. Das Symbol-foundig-Problem aus konnektionistischer Perspektive

1. Einleitung

Das Faszinierende an dem Versuch, geistige Prozesse durch eine Theorie der neuronalen

Netze zu verstehen, liegt eigentlich im Umstand, dass dieser Ansatz der einzige ist, der von

allem Anfang an erklären kann, in welcher Weise Information in geistigen Prozessen

repräsentiert wird. Die Fähigkeit, Realität zu „repräsentieren“ wird ja mancher Orts von jenen

Theorien für sich beansprucht, die bei irgendwelchen höheren geistigen Vollzügen ansetzen

und versuchen, die dort zu beobachtenden mentalen Leistungen durch Abbildung in einem

möglichst redlich erstellten System von Symbolen und Symboloperationen zu verstehen.

Neuronalen Netzen wird hingegen von manchem Vertreter dieser Schule die Möglichkeit

abgesprochen, eine differenzierte repräsentationale Abbildung der Realität zu sein.1 Das

Anliegen dieser Arbeit ist es, möglichst klar darzustellen, dass der Begriff der

„Repräsentation“, legitimer Weise eher neuronalen Netzen als Symbolsystemen

zugeschrieben werden kann. Während es hier hoffentlich gelingt zu zeigen, dass in ersteren

sehr wohl ausdifferenzierte „Knotenpunkte“ zu finden sind, die durch die Verarbeitung von

Information aus der Umgebung entstanden sind und sehr eindeutig für bestimmte ihrer

Strukturelemente stehen, bleibt bei zweiteren die Frage, wie denn die Symbole und

Symboloperationen zustande kommen und wie diese adäquate Abbilder der Realität sein

können, ziemlich offen. Eine mögliche Antwort, dass diese von einem „intelligenten“

„Experten“ vorgegeben oder von einem als „intelligent“ bezeichneten System abgelesen

werden können, löst das Problem wohl kaum.

2. Das Konzept natürlicher neuronaler Netze

Der Begriff der „natürlichen neuronalen Netze“ dient herkömmlicher Weise als Synonym für

tierische und menschliche Nervensysteme. Durch biologische und medizinische Forschung

wurde gezeigt, dass diese einen stark modularen Aufbau besitzen, dessen Grundelement die

einzelne Nervenzelle ist. Diese wiederum ist heute so weit erforscht, dass man ihre

grundlegende Funktions- und Arbeitsweise verstehen und simulieren kann. Der

Informationstransport geschieht dabei über ein elektrisches Spannungssignal, das in den

einzelnen Neuron weitergeleitet wird. Im Gesamten ergibt sich folgendes Bild über Aufbau

und die Funktionsweise des biologischen Nervensystems:

1 Vgl. Fodor, 1988.

1.1. Aufbau natürlicher neuronaler Netze

Eine Nervenzelle besteht aus drei Teilen: Der Zellkörper ist analog zu anderen biologischen

Zellen aus Zellmembran, Zytoskelett und den auch sonst vorkommenden Organellen

(Zellkern, Mitochondrien, Ribosomen, ...) aufgebaut. An ihm sind sich verzweigende

Fortsätze (Dendriten) zu beobachten, die an benachbarten Nervenzellen angekoppelt sind und

von diesen einen elektrischen Impuls in Richtung Zellkern leiten können. Als Axon oder

Neurit wird jener lange, faserartige Fortsatz bezeichnet, der das elektrische Signal aus dem

Zellkörper wieder ausleitet und es an die Dendriten anderer Nervenzellen weitergibt. Er weist

an seinem Ende ebenfalls Verästelungen auf.

Abb.1: Neuron2

Durch das verzweigte Netz der Dendriten kann ein einzelnes Neuron mit bis zu

100000-200000 anderen Neuronen in Kontakt stehen.3 Die Komplexität des Netzwerkes wird

noch zusätzlich durch die Art der Koppelungen zwischen den Dendriten und Axonen

erweitert. In diesen Synapsen genannten Teilen springt, durch die elektrischen Impulse des

Axons ausgelöst, ein Transmitterstoff über einen sehr schmalen „synaptischen Spalt“ auf das

nachfolgende Neuron über und sorgt so für die Signalweiterleitung. Dabei unterscheidet man

erregende (exzitatorische) von hemmenden (inhibitorischen) Synapsen. Auch der Grad der

2 http://de.wikipedia.org/wiki/Bild:Complete_neuron_cell_diagram_german.svg3 http://de.wikipedia.org/wiki/Neuron

Erregungsweiterleitung ist sehr unterschiedlich und hängt von der Eigenart der

Transmitterstoffe sowie dem Beanspruchungsgrad der Synapse ab.

Da das menschliche Gehirn ca. 100 Milliarden (1011) Nervenzellen besitzt, welche durch ca.

100 Billionen (1014) Synapsen miteinander verbunden sind, heißt das, dass jedes Neuron im

Schnitt mit 1000 anderen Neuronen verbunden ist und somit im Prinzip jedes beliebige

Neuron von jedem Startneuron aus in höchstens 4 Schritten erreichbar ist. Es gibt allerdings

lokal deutliche Abweichungen von diesem Mittelwert. Der Cortex einer Maus hat zum

Vergleich dazu etwa 8 Millionen (8·106) Neuronen mit jeweils 8.000 Synapsen je Neuron.4

Abb. 2: Synapse5

2. Informationstransport, Informationsmodulation und Informationsregulierung in

natürlichen neuronalen Netzen

Die Information der Umwelt tritt durch Sinneszellen in das neuronale Netz ein. Diese

wandeln die von ihnen aufgenommene Information in ein Muster zeitlich nacheinander

gereihter serieller elektrischer Spannungsimpulse um, die an den/die Dendriten einer oder

mehrerer Nervenzellen weitergegeben werden und sich dort in Richtung des Zellkörpers

fortpflanzen. Im Zellkörper selbst kommt es zu einer Interaktion der in den verschiedenen

Dendriten der Zelle auftretenden elektrischen Impulse, wobei sich diese gegenseitig

verstärken oder abschwächen können. Ergibt sich am Axonhügel - das ist jener Teil des

4 http://de.wikipedia.org/wiki/Gehirn5 http://www.onmeda.de/krankheiten/depressive_verstimmungen.html?gfx=0

Zellkörpers, an dem das Axon austritt – eine hinreichend große elektrische Spannung, so löst

diese im Axon selbst einen elektrischen Impuls aus. Dieser breitet sich durch das Axon auf

andere Nervenzellen aus.

Aus dieser Funktionsweise ergibt sich, dass die Umweltinformationen in einem natürlichen

neuronalen Netz mit Hilfe von nur drei Parametern moduliert werden: dem Zeitpunkt des

Auftretens elektrischer Impulse, der Dauer des Auftretens und ihrer Frequenz.

Die Informationsregulierung geschieht innerhalb des Weitertransportes der Spannungssignale

auf viererlei Art: Erstens bestimmt die Art der Vernetzung der Neuronen untereinander,

welches Neuron prinzipiell auf welches Einfluss nehmen kann. Zweitens beeinflussen bei

einer existierenden Verbindung zwischen Neuronen die Eigenschaften der Synapsen den

Signalstrom. Drittens spielt die Art der gegenseitigen Beeinflussung der in den Zellkörper

eintretenden Signale eine gravierende Rolle und viertens hängt der Umstand, ob der

Zellkörper ein Signal in das Axon entlassen kann, davon ab, ob das aufgebaute elektrische

Potential am Axonhügel einen bestimmen Wert, den sogenannten „Schwellwert“

überschreitet. Die letzten beiden Mechanismen sind also gewissermaßen die Weise, in der das

Neuron selbst Einfluss auf die Signalverarbeitung nimmt.

3. Neuronale Plastizität

Eine grundlegende Eigenschaft natürlicher Netze ist ihr Adaptationsfähigkeit. Diese wird

durch Veränderungen in den Synapsen, Nervenzellen bzw. ganzen Zellverbänden und

Hirnarealen erreicht. Ganz allgemein unterscheidet man zwischen kortikaler und synaptischer

Plastizität, wobei letztere sich wieder in präsynaptische und postsynaptische Plastizität

unterscheiden lässt.

Die präsynaptische Plastizität besteht in einer Änderung der pro Aktionspotenzial

freigesetzten Transmittermenge oder der Geschwindigkeit, mit der der Neurotransmitter

wieder in die präsynaptische Zelle aufgenommen wird. Die postsynaptische Plastizität ergibt

sich aus einer Änderung der Anzahl von postsynaptischen Transmitter-Rezeptoren, durch die

Modifikation dieser Rezeptoren oder durch die Bildung von Enzymen, die das Verhalten der

Neurotransmitter im synaptischen Spalt verändern. Prä- und postsynaptische Änderungen

können gleichzeitig vorkommen. Olding Hebb beobachtet als erster, dass es einen kausalen

Zusammenhang zwischen der Aktivität einer Zellverbindung und deren weiteren Optimierung

gibt: Je stärker eine synaptische Verbindung beansprucht wird, desto leistungsfähiger wird

sie. Auf dieser Grundlage formulierte er 1949 die nach ihm benannte Hebbsche Lernregel,

von der noch später in dieser Arbeit die Rede sein wird.

Mit dem Begriff der kortikalen Plastizität wird meist die Plastizität des gesamten Gehirns

bezeichnet, obwohl die zugrunde liegenden Vorgänge keineswegs auf die Großhirnrinde

(Kortex) allein beschränkt sind. Sie stützt sich nicht nur auf die Veränderung der

Eigenschaften von Synapsen, sondern wird auch durch Veränderungen innerhalb der

Zellkörper, neu erzeugte Vernetzungen zwischen den Nervenzellen, ja sogar die Entstehung

neuer Nervenzellen erreicht. In der Organisation des kortikalen Wahrnehmungsapparates ist

diese kortikale Plastizität besonders gut untersucht. Seine Organisationsform wird oftmals als

kartenähnlich bezeichnet. So laufen die Sinneswahrnehmungen vom Fuß an einer Stelle des

Kortex zusammen, die des Schienbeines an einer anderen, aber benachbarten Stelle. Das

Ergebnis dieser sogenannten somatotopischen Organisation der Sinneseindrücke im Kortex

ähnelt einer Karte des Körpers. Diese Karten sind nicht starr, sondern plastisch. Das Fehlen

von Sinneseindrücken von bestimmten Teilen des Körpers, zum Beispiel nach einer

Amputation, führt dazu, dass die kortikale Karte sich derart verändert, dass der Bereich, der

zuvor für den nun fehlenden Teil zuständig war, nun nach und nach die benachbarten, nach

wie vor vorhandenen Teile des Körpers mitrepräsentiert. Dies kann in der Übergangszeit bei

den Patienten zu seltsamen Falschwahrnehmungen führen. So fühlen sie manchmal eine

Stimulierung der amputierten Gliedmaße, da die Repräsentation noch nicht vollends

"gelöscht" ist, aber bereits Nervensignale von benachbarten Regionen in den Bereich der

Repräsentation eindringen.

3. Das Konzept künstlicher neuronaler Netze

3.1. Das Grundkonzept künstlicher neuronaler Netze

Der Versuch, die Funktionsweise natürlicher neuronaler Netze nachzuahmen, ist wohl allein

deshalb sehr nahe liegend, da sich diese durch sehr klar fassbare formale Strukturen

auszeichnen: Das Vorhanden- oder Nicht-Vorhandensein eines elektrischen

Spannungsimpulses in einem Axon kann durch die Zahl 1 oder 0 repräsentiert werden. Da es

auch in biologischen Netzen keinen Zwischenzustand zwischen Erregung oder Nichterregung

eines Axon gibt, ist diese binäre Modellierung sehr zutreffend. Der Input in ein künstliches

Neuronales Netz besteht also in einem Vektor aus Nullen oder Einsen und repräsentiert

gewissermaßen den Spannungsimpulse, die aus den einzelnen Sinneszellen in das Netz

eingespeist werden. Auch der Output eines neuronalen Netzes ist ein ebensolcher, sich von

ersterem möglicherweise durch die Anzahl der Dimensionen unterscheidender Vektor. Er

stellt die Nervenimpulse dar, die in die vom Zentralnervensystem wegführenden

Nervenbahnen eingespeist werden.

Die Beeinflussung der Impulsweiterleitung durch die Synapsen als auch die Integration der

verschiedenen auf das rezipierende Neuron einwirkende Impulse wird in einer einzigen

Funktion zusammengefasst. Diese verändert in einem ersten Schritt die eingehenden 1-Werte

meist durch eine Multiplikation mit einem Zahlenwert zwischen Null und Eins, bevor sie

diese Werte in einem zweiten Schritt zusammenzählt. Diese Funktion trägt deshalb meist auch

den Namen „Summenfunktion“. Ihr Ergebnis stellt gewissermaßen das Gesamtpotential dar,

das am Axonhügel des Zellkörpers anlangt und dort gegebenenfalls einen Impuls im Axom

auslösen kann. Man kann schreiben:

Gesamtpotential = I1*w1 + I2*w2+...+ In*wn

wobei I1 , I2 , … , In die Input Einsen der durchnummerierten Dendriten und w1, w2, ..., wn die

Gewichte für diese Inputs sind.

Mancherorts wird diese Summenfunktion noch zusätzlich mit einer sogenannte

„Aktivierungsfunktion“ verknüpft, die jenen biologischen Prozess repräsentieren soll, der sich

innerhalb des Zellkörpers abspielt und der in natürlichen neuronalen Netzen das Endpotential

am Axonhügel mitbeeinflusst. In diesem Falle ergibt die obige Formel nur den sogenannten

„Nettoinput“. Dieser wird mit einem bereits als vorhanden angenommenen

Aktivierungszustand der Zelle zu einem neuen Aktivierungszustand verrechnet.

Zusätzlich wird oft noch eine „Ausgabefunktion“ eingeführt, die diesen Aktivierungszustand

mit einem Schwellwert vergleicht und dann entscheidet, ob es zu einer Ausgabe von 1 kommt

oder nicht. Diese Funktion soll den Vorgang repräsentieren, dass im Axon einer Zelle nur

dann ein Impuls ausgelöst wird, wenn am Axonhügel das elektrische Potential ein bestimmtes

Maß übersteigt. Eine zusammenfassende Übersicht soll die Zusammenhänge

veranschaulichen:

Abb. 3: Graphische Übersicht der Funktionen eines künstlichen neuronalen Netzes

Die folgende Abbildung enthält einige gebräuchliche Aktivierungs- bzw. Ausgabefunktionen, wobei die beiden letzteren am häufigsten verwendet werden.

Abb. 4.:

Aktivierungs- und

Ausgabefunktionen

Sosehr eines solche dreigliedrige Aneinanderreihung von Funktionen vielleicht unnotwendig

komplizierend wirken mag, sie ist nichtsdestoweniger der Versuch, die real in natürlichen

neuronalen Netzwerken vor sich gehenden Prozesse strukturgetreu zu modellieren. Dabei

könnte man für die Summenfunktion, die ja die in Wirklichkeit sehr viel komplexeren

Tätigkeiten der Synapsen und der Zellkerns vertreten soll, durchaus noch mathematisch

komplexere Funktionen verwenden.

Davon unberührt muss allerdings auch festgehalten werden, dass durch diese Modellierung

auch eine starke Vereinfachung gegenüber den Vorgängen in natürlichen neuronalen Netzen

einhergeht. Sie besteht darin, dass alle Nervenbahnen gewissermaßen synchronisiert werden,

da der Eingangsvektor ja immer für alle Nervenbahnen gleichzeitig einen Wert eingibt. Auch

innerhalb eines solchen Modells eines neuronalen Netzes werden Signalweiterleitungen

zwischen den einzelnen Neuronen einheitlich „getaktet“, d.h. mit derselben Frequenz

beschickt, was zusammen mit der Eigenschaft, dass sich Verbindungsgewichtungen in Regel

nur in kleinen Schritten verändern, gewisse „sprunghafte“ Phänomene innerhalb eines solchen

neuronalen Netzes ausschließt und zu einem sehr viel homogeneren und diffuseren Ablauf der

Neuroneninteraktion führt.

3.2. Beispiel einer mathematischen Umsetzung: Rotkäppchenbeispiel

Zur Verdeutlichung der Arbeitsweise eines solchen mathematisch modellierten neuronalen

Netzes sei hier die Umsetzung eines sehr einfachen Beispiels vorgeführt. Dieses wird nicht

nur in einem späteren Teil dieser Arbeit mit Hilfe des Computerprogamms Membrain noch

einmal automationsunterstützt bearbeitet, es wird hier auch die eindrucksvoll einfache

Berechnung von Summenfunktionen mit Hilfe der Matrizenrechnung vorgestellt.

Anschließend wird anhand des Beispiels auch gleich ein möglicher Lernvorgang dieses

neuronalen Netzes dargestellt. Dieser ist eigentlich Inhalt eines späteren Kapitels, wird hier

allerdings angeführt, da es mühselig wäre, dieses Beispiel an späterer Stelle wieder

aufzugreifen.

Ein Rotkäppchen wird in einem Wald 6 möglichen Eingabereizen ausgesetzt. Die ersten 3

Reize sind: Große Ohren, große Augen, große Zähne, dunkle, struppige Körperbehaarung,

Probleme mit aufrechtem Gang, charmanter Umgangston. Im Modell benutzt man dafür einen

6 dimensionalen Eingangsvektor:

Der Vektor bedeutet zum Beispiel, dass die ersten vier Eingangsreize vorhanden sind.

Immer wenn die ersten drei Reize vorhanden sind, soll das Rotkäppchen zu schreien

anfangen, weglaufen und auch nach dem Holzfäller rufen. Diese sind drei von

angenommenen 7 möglichen Ausgabeaktivitäten. Der gewünschte Ausgabevektor müsste also

7 Dimensionen aufweisen, von denen die ersten drei auf 1 stehen sollten:

Wie stellt nun ein neuronales Netz eine Beziehung zwischen den Eingabewerten und dem

Ausgabevektor her? Für jedes Ausgabeverhalten (Stelle des Ausgabevektors) müssen jeweils

alle drei Eingabewerte (Stellen des Eingabevektors) gewichtet und dann aufsummiert werden

(=drei Summenfunktionen). Liegt dieser aufaddierte Wert dann über einem vorher

festgelegten Schwellwert (auf eine Aktivierungsfunktion verzichten wir hier

einfachheitshalber), wird im Ausgangsvektor die betreffende Stelle auf 1 gesetzt

(Aktivierungsfunktion).

Diese Gewichtung und Summation kann man am einfachsten durch eine

Matrizenmultiplikation durchführen. Dabei werden alle Eingangswerte gleichzeitig gewichtet

und aufsummiert. In unserem Beispiel benötigt man eine 6x7 Matrix und multipliziert von

links:

. =

Eingangs- Ausgangs-

vektor vektor

111100

1⋅w111⋅w121⋅w13

1⋅w211⋅w221⋅w23

1⋅w311⋅w321⋅w33

0000 1

11000

w11 w12 w16

w21 w26

w71 w72 w76

1110000

Jede Stelle des Ausgangsvektor setzt sich also zusammen aus einer gewichteten Summe der

drei Eingangsreizen. Übersteigt nun eine dieser Summen den Schwellenwert, so wird in dieser

Stelle ein Ausgangssignal ausgeschickt.

Mit welchen Zahlen werden nun aber die Stellen der Matrix tatsächlich besetzt? Woher

„weiß“ ein neuronales Netz die „richtigen“ Zahlen? Diese Fragen führen wie angekündigt

etwas über dieses Kapitel hinaus, sollen aber dennoch kurz am Beispiel behandelt werden.

Die Grundidee ist dabei, dass im neuronalen Netz ein zusätzlichen Mechanismus verwirklicht

sein muss, der die anfänglich völlig beliebigen Startwerte korrigiert. Er beurteilt dazu die vom

neuronalen Netz erzeugten Outputvektoren (entweder indem er die optimale Lösung kennt

und sie mit dieser vergleicht oder anderweitige Bewertungsstrategien anwendet) und

errechnet daraus den Korrekturbedarf der Gewichtungen.

Unser Rotkäppchen könnte zum Beispiel mit Hilfe der so genannten Delta-Regel optimiert

werden. Diese setzt voraus, dass man den gewünschten Ausgangsvektor kennt und beruht auf

der Differenzenbildung zwischen diesem und dem tatsächlich errechneten Ausgangsvektor.

Diese Differenz wird mit einem Faktor (sogenannte Lernrate) multipliziert und ergibt dann

den Betrag, um den der Wert in der Gewichtsmatrix vergrößert oder verkleinert wird.

In einem Zahlenbeispiel können wir davon ausgehen, dass am Anfang der Lernphase die

Gewichtsmatix mit lauter Nullen besetzt ist. Die Gewichtsänderung der ersten Zeile der

Gewichtsmatrix lässt sich dann berechnen durch

ä1i = n * (T1 - O1) * Ii

wobei ä1i der Änderungsbetrag an der ij Stelle der Matix und T1 der tatsächliche bzw. O1 der

optimale Wert in der i Zeile des Ausgangsvektors sind.

Bei einer gewählten Lernrate von 0,1 ergibt sich:

ä11 = 0.1 * (1 - 0) * 1 = 0,1

ä12 = 0.1 * (1 - 0) * 1 = 0,1

ä13 = 0.1 * (1 - 0) * 1 = 0,1

ä14 = 0.1 * (1 - 0) * 0 = 0

ä15 = 0.1 * (1 - 0) * 0 = 0

ä16 = 0.1 * (1 - 0) * 0 = 0

Σ i=1...4

Da die Differenz zwischen erwarteten und tatsächlichem Ausgangswert auch bei der zweiten

und dritten Stelle des Ausgangvektors 1- 0 ist, verändern sich die zweite und dritte Zeile der

Gewichtsmatrix in gleicher Weise:

Dass hier alle Gewichte einer Zeile um denselben Betrag verändert werden, liegt an der

Einfachheit des Algorithmus. Um ein sensitiveres Lernen zu erreichen, müsste dieser wohl

komplexer konzipiert werden.

3.3. Steigerung des Komplexitätsgrades durch „hidden layers“

Analog zu natürlichen neuronalen Netzen, in denen eingehende Reizsignale Kaskaden von

nachfolgenden Nervenimpulsen auslösen, konstruiert man üblicherweise auch künstliche

neuronale Netze nicht nur mit einer Gruppe von Eingangsneuronen und einer anderen, die den

endgültigen Output festlegt. Dazwischen werden meist weitere „Schichten“ („ hidden layers“)

0,1 0,1 0,1 0,1 0,1 0,10,1 0,10,1 0,1 0,1 0,1 0,1 0,10 0 0 0 0 0

0 0 0

von Neuronen geschaltet, die komplexere Abhängigkeitsbeziehungen zwischen den Input-

und Outputneuronen ermöglichen. Nachfolgend soll zwischen zwei Eingabeneuronen und

einem Ausgabeneuron mit Hilfe eines neuronalen Netzes eine exklusive Oder-Beziehung

(kurz: EOR) realisiert werden. Diese soll aus den in der Tabelle angeführten Inputwerten die

angeführten Outputwerte produzieren. Auch wenn es sich dabei um ein sehr einfache

Verknüpfung von Eingangs- und Ausgangsimpulsen handelt, ist dazu bereits eine Hidden-

Layer-Schicht nötig, die allerdings aus nur einem Neuron besteht.

Wertetabelle der EOR-Verknüpfung:

Output des 1. Eingabeneurons

Output des 2. Eingabeneurons

Output des Outputneurons

0 0 01 0 10 1 11 1 0

Tabelle 1: EOR-Verknüpfung

Das dafür nötige neuronale Netz kann folgendermaßen aussehen: Es besteht aus 4 Neuronen,

die im Gaphen mit den Zahlen 1 bis 4 durchnummeriert sind. Das Neuron Nummer 3 ist die

zusätzlich zwischen Input- und Outputneuronen eingeschaltete Schicht.

Abb. 5: XOR-Netz mit 4 Zellen

Für die Aktivierungen der Neuronen werden, wie in der Tabelle sichtbar, nur die binären

Werte 0 und 1 verwendet. Die Netzeingabe wird durch folgende Summenfunktion berechnet:

Nettoinputj = netj = Output i * wij

wobei i und j die Neuronennummern und wij das Gewicht ist, das der Verbindung vom i-ten

zum j-ten Neuron eigen ist, bezeichnet.

Eine Aktivierungsfunktion ist in dieser Modellierung nicht nötig. Die Ausgabefunktion des

Neuron 3 soll einen Schwellenwert von 1,5 und jene des Neuron 4 einen von 0,5 besitzen.

Damit kann man die „Arbeitsweise“ dieses neuronalen Netzes in folgender Tabelle

zusammenfassen:

Output Neuron1:

o1

Output Neuron2:

o2

Nettoinput Neuron3:

net3

Schwellenwert

Neuron3:

Output Neuron3:

o3

Nettoinput Neuron4:

net4

Schwellenwert

Neuron4:

Output Neuron4:

o4

XOR

0 0net3 =

0*1+0*1 = 0

1,5 0net4 =

0*1+0*1+0(-2) = 0

0,5 0 0

0 1net3 =

0*1+1*1 = 1

1,5 0net4 =

0*1+1*1+0(-2) = 1

0,5 1 1

1 0net3 =

1*1+0*1 = 1

1,5 0net4 =

1*1+0*1+0(-2) = 1

0,5 1 1

1 1net3 =

1*1+1*1 = 2

1,5 1net4 =

1*1+1*1+1(-2) = 0

0,5 0 0

Tabelle 2: Arbeitsweise des XOR-Netzes

3.4. Lernregeln künstlicher neuronaler Netze

Lernregeln für künstliche Neuronale Netze sind Algorithmen, die in der Aktivitätsphase der

Netzes aus den nacheinander anfallenden Outputvektoren und den dafür verwendeten

Inputvektoren selbstständig eruieren können, in welcher Weise die Verbindungsgewichtungen

im Netzwerk verändert werden müssen, um den Outputvektor zu optimieren. Solche

Algorithmen zu entwickeln und damit ein neuronales Netz erst lernfähig zu machen ist

zweifellos der schwierigste Punkt in der Modellbildung „intelligenter“ neuronaler Netze.

Dabei liegt das Hauptproblem natürlich darin, wie denn der optimale Zustand des

Outputvektors zu definieren ist. Kennt man diesen, vereinfacht sich das Problem und man hat

mit Hilfe einer Differenzbildung zwischen optimalem Output und tatsächlichem Output ein

Maß für den Korrekturbedarf der Gewichte.

Dementsprechend unterscheidet man zwei grundlegende Ansätze von Lernregeln: Das

supervised learning setzt voraus, dass der optimale Output bekannt ist, der dann

gewissermaßen als „supervisor“ die Richtigkeit des Outputs beurteilen kann. Beim

„unsupervised learning“ fehlt diese Information.

Im folgenden kann der Länge wegen nur eine „klassische“ Auswahl von Lernregeln

dargestellt werden. Diese arbeiten teils supervised, teils unsupervised und teils in beiden

Modellen.

Die Hebb-Regel:

Sie ist gewissermaßen die Urmutter aller Regeln und basiert auf den Beobachtungen, die der

Kanadier D. O. Hebb an natürlichen neuronalen Netzen machte. Er schreibt in seinem 1949

erschienen Buch „The Organization of Behaviour“: „Wenn ein Axon der Zelle A ... Zelle B

erregt und wiederholt und dauerhaft zur Erzeugung von Aktionspotentialen in Zelle B

beiträgt, so resultiert dies in Wachstumsprozessen oder metabolischen Veränderungen in einer

oder in beiden Zellen, die bewirken, dass die Effizienz von Zelle A in bezug auf die

Erzeugung eines Aktionspotentials in B größer wird.“6

Als formaler Algorithmus kann man diese Lernregel folgendermaßen formulieren: je stärker

zwei miteinander verbundene Neuronen gleichzeitig aktiv sind – wobei man dies an der für

diese Zwecke wesentlichen Aktivierungsfunktionen festmachen kann – desto mehr wird auch

die Gewichtung bzw. im Falle eines Netzes mit Rückkoppelungen die Gewichtungen

vergrößert. Eine solche Lernstrategie kann sowohl in supervised als auch unsupervised

Netzen verwendet werden.

Die Delta-Regel:

Sie bildet in einem ersten Schritt die Differenz (das „Delta“) zwischen dem tatsächlichen und

dem gewünschten Werten im Outputvektor und verändert anschließend die Gewichtungen im

Netz so, dass jene Verbindungen, die einen verstärkenden Einfluss auf einen gewissen Wert

des Outputvektors haben, verstärkt werden, wenn der gewünschte Outputwert zu niedrig ist,

d.h. zu oft null anstatt eins ergibt. Ergibt ein bestimmter Wert des Outputvektors gemessen am

Soll-Wert zu oft eins so werden die Gewichte der Verbindungen, die für ihn verantwortlich

sind, verkleinert.

Bei komplexeren Systemen mit Hidden-Layers müssen diese Veränderungen natürlich alle

Schichten des Netzes betreffen. Weil man dabei zweckmäßigerweise von der letzten, der

6 http://www.neuronalesnetz.de/hebb.html

Outputschicht unmittelbar voran liegenden Neuronenschicht Schritt für Schritt auf die dieser

rechnerisch „früheren“ Neuronenschicht zurück schreitet, bezeichnet man eine solche

differenziertere Berechnungsmethode der Gewichtsänderungen auch als „Backpropagation“.

Das Competitive Learning:

Das Competitive Learning besteht darin, dass man einen Vergleich zwischen den

verschiedenen Outputneuronen anstellt. Bei jenem Neuron, das den stärksten Output hat (am

öftesten das Signal 1 sendet), werden die zu ihm hinlaufenden stimmulierenden Verbindungen

verstärkt. Die Verbindungen zu den anderen Outputneuronen bleiben unverändert. Der Name

rührt also daher, dass gewissermaßen das Outputneuron, das der Gewinner eines zwischen

den Outputneuronen angestellten Vergleichs ist, als einziges mit einer seine Aktivität

verstärkenden Korrektur seiner Gewichte rechnen darf.

Ähnlich wie bei regelbasierten, lernenden Systemen ist auch hier anzumerken, das die

angewendeten Lernregeln einen starken Einfluss auf das Ausmaß und die Art und Weise des

Lernens eines neuronalen Netzes hat und diese in diesem Sinne natürlich auch limitiert.

Nichtsdestoweniger muss im Hinblick auf die Kontroverse zwischen regelbasierten und

neuronalen Systemen festgehalten werden, dass die Lernregeln eines neuronalen Netzes, da

sie basale formale Vergleichsoperationen sind und deshalb inhaltlich sehr wenig festlegen,

einen sehr viel weiteren Bereich der möglichen Lernschritte eröffnen, als symboldefinierte

Lernregeln, die inhaltlich stark festgelegt sind.

4. Vergleich von biologischen und künstlichen NN

Als Abschluss der voran angeführten Darstellungen natürlicher und künstlicher neuronaler

Netze sein hier noch kurz die wichtigsten Gemeinsamkeiten und Unterschiede

zusammengefasst:

Die Gemeinsamkeiten bestehen in einer massiven Parallelität von relativ einfachen

Elementarbausteinen (Neuronen), die jeweils die Aktivierungen der Vorgängerelemente und

die Stärke der Verbindung zu ihnen zu einem Output verarbeiten. Die Eigenart und damit die

Arbeitsweise der Netze wird durch die Art der Vernetzung, die den Verbindungen

zugeschriebenen Stärken sowie durch die Eigenart den Verarbeitung innerhalb der Neuronen

bestimmt. Durch Veränderung dieser Werte erreichen natürliche wie künstliche neuronale

Netze eine Art von Plastizität, die sie „intelligent“ auf Umweltinformationen reagieren lässt.

Die prinzipiellen Unterschiede zwischen natürlichen und künstlichen neuronalen Netzen

besteht vor allem im Umstand, dass in natürlichen Netzen die Stärke eines Signals

frequenzmoduliert wird, während in künstlichen Netzen dieser zeitabhängige Parameter durch

einen Zahlenwert ersetzt wird, der die Stärke eines in regelmäßigen Abständen auftretenden

Impulses angibt (Amplitudenmodulation). Auch die meist vorgenommene zeitliche

Gleichschaltung aller Neuronen durch eine einheitliche Taktung der Aktivität ist ein

essentieller Unterschied zwischen künstlichen und natürlichen Netzen.

5. Anwendungen Neuronaler Netze

Künstliche neuronale Netze kann man in sehr vielen Bereichen verwenden: in der

Psychologie, der Astronomie, in der Küche, Medizin und Fahrzeugindustrie. Sie sind

praktisch in allen Situationen anwendbar, in denen wir einen „Predictor” (unabhängige

Variabel, Input), einen „Predicted “ (abhängige Variabel, Output) und eine Verknüpfung

zwischen den zweien haben. In dieser Arbeit werden wir aber nur über folgende

Anwendungsbereiche schreiben:

5.1. Anwendungen in der Psychologie

5.1.1. Mustererkennung

Die Spracherkennung, die Biometrie (Anwendung mathematischer Methoden in der Biologie

und Medizin), die Handschrifterkennung sind Bereiche, in denen KNN (= künstliche

neuronale Netze) viel besser sind, als die regelbasierten Systeme. Sie können zum Beispiel

zwischen Stimmen und Geräuschen, nasalen, frikativen und plosiven Laute unterscheiden.

Sie können Phonemen klassifizieren und Buchstaben erkennen.

Bei der Buchstabenerkennung werden die Buchstaben entsprechend ihrer Teile in unserem

Gehirn gespeichert.7

7 Vgl. Atkinson et al., 2001.

Das Wissen welche Teile zu einem Buchstaben gehören, befindet sich in den Verbindungen

zwischen die Neuronen. Es gibt 2 Sorten von Verbindungen:

- Erregende Verbindungen: wenn Teil X aktiv ist, wird die Aktivierung zur Buchstabe Y

weitergeleitet

- Hemmende Verbindung: wenn Teil X aktiv ist, wird die Aktivierung zur Buchstabe Y

gehemmt.

R K P

/ \ ) I

In einem für Buchstabenerkennung verantwortlichen KNN stellen die Inputs die Teile der

Buchstabe und die Outputs die Buchstaben selbst dar. Der Vorteil eines KNN in diesen Fall

ist, dass es auch dann funktioniert, wenn nicht alle Teile deutlich erkennbar sind.

5.1.2. Konjugation

In 1989 haben MacWhinney, Leinbach, Taraban und McDonald ein Modell für die

Konjugation der Artikeln in der deutsche Sprache entwickelt.8

8 Vgl. Pléh et al., 2003.

Erregende VerbindungHemmende Verbindung

Abb.6: Verbindungssorten

Abb.7: Modell für die Konjugation der Artikel in der deutsche Sprache

Aber wie funktioniert die Konjugation? Die Auswahlkriterien sind: das Geschlecht (männlich,

weiblich, neutral), die Zahl (Singular, Plural), der Fall (Nominativ, Akkusativ, Genitiv,

Dativ). Im KNN bilden diese die Input-Schicht. In einer Trainingsphase wird es dem Netz

beigebracht, für einzelne Fälle den richtigen Artikel zu finden. Diese Trainingsphase hat

folgende Teile:

1. Präsentieren von Input-Mustern (Eigenschaften des Substantives)

2. Input-Muster aktivieren einige Input-Units

3. Die aktivierten Input-Units aktivieren die Output-Units durch die Hidden-Units

4. Der Output wird mit dem erwünschten Output verglichen. Stimmen sie nicht überein, so

werden die Gewichtungen im Netz verändert. (Die Gewichtungen, die den erwünschten

Output vorschlagen, werden verstärkt, die anderen werden geschwächt.)

Das Netz war nach dem Lernprozess in der Lage, für 98% der bis dahin benutzten Substantive

den richtigen Artikel auszuwählen.

Es ist auch eine Generalisierung aufgetreten: für die Substantive, die im Lernprozess benutzt

wurden, hat das KNN in andere Fällen in 92 % der Fälle den richtigen Artikel ausgesucht.

Bei den im Lernprozess nicht benutzten Substantive waren es 61 % Prozent (Zufall - 17%).

Dieses Modell erklärt, wie Kinder lernen, einen der 6 Artikeln richtig auszuwählen. Das KNN

hat die selben Fehlertypen gemacht, wie die Kindern. Es lernt schnell und effizient, die 6

Artikeln entsprechend den semantischen und phonologischen Eigenschaften der Substantive

auszuwählen, auch dann, wenn Unregelmäßigkeiten auftreten.

5.2. Anwendungen in der Wirtschaft

5.2.1. Betrugserkennung

Einige Banken benützen Neuronale Netze, damit sie Betrugsversuche rechtzeitig erkennen

können.

Das Netz lernt die Angewohnheiten des Kontoinhabers und erkennt Unregelmäßigkeiten.

Der Input an das KNN sind die Daten des Kontoinhabers. Im Lernprozess werden die

Angewohneiten des Kontoinhaber gelernt, damit die Frage „Wer macht jetzt die

Transaktion?“ (Output) beantwortet werden kann.9

5.2.2. Human Resource

Künstliche neuronale Netze können auch bei der Selektion von Stellenbewerbern helfen, in

dem sie die Leistungsfähigkeit vorhersagen. Der Input besteht in diesen Fall aus den

biographischen Daten der Bewerber, und der Output aus den zukünftigen Leistung.10

5.3. Anwendungen in der Technik

5.3.1. Kinematik

Die Kinematik ist die Lehre von der Bewegung von Punkten und Körpern im Raum.11

Abb.8: Vorwärtskinematik

9 Vgl. http://websom.hut.fi/websom/10 Vgl. ebd.11 Vgl. http://de.wikipedia.org/wiki/Kinematik

Vorwärtskinametik beschäftigt sich mit der Frage, wie man den „Arm“ bewegen muss, damit

er die Zielposition erreicht. Das KNN hat die folgenden Teile: Input: aktuelle Position des

Armes; Output: Zielposition des Armes.12

5.3.2. Haushaltselektronik

Toaster:

In Japan gibt es schon Toaster, die mit künstlichen neuronalen Netzen arbeiten. Die

Ingenieure versuchen so den Toastprozess besser zu kontrollieren.

Das KNN hat dann folgende Teile: Input: Anfangs- und Endzustand des Brotes; Output: Hitze

und Hitzedauer.

Digitale Kamera:

Die Kameras, die mit künstlichen neuronalen Netzen arbeiten, können verschiedene

Parametern (Output) abhängig von den Umweltbedingungen (Input) verändern.13

5.4. Medizin

5.4.1. Diagnose

Mit Hilfe von Künstliche neuronale Netze kann man sehr präzise Diagnosen für Brustkrebs,

Leberschädigungen, Diabetes, Herzkrankheiten stellen.

Für die Diagnose (Output) werden hier die Messgrößen von Zellen (Input) benützt.14

5.4.2. Interaktion von Medikamente

KNN können Nebeneffekte von diversen Medikamenten, Allergien (meistens durch

Interaktion von Medikamente verursacht) erklären.

Die KNN arbeiteten mit den Komponenten des Medikamentes (Input), um die Nebeneffekte,

Allergien (Output) zu entdecken.15

12 Vgl. http://www.learnartificialneuralnetworks.com/robotcontrol.html13 Vgl. http://websom.hut.fi/websom/14 Ebd.15 Ebd.

5.4.3. Überlebenswahrscheinlichkeit

In England werden künstliche neuronale Netze für die Auswahl von Transplantationspatienten

verwendet. Basierend auf den Daten der einzelnen Patienten (Input) werden einige von ihnen

für Lebertransplantationen ausgewählt (Output).16

6. Exkurs: Anleitung zur Simulation des Rotkäppchenbeispiels mit Hilfe

von „Memobrain“

„Membrain“17 ist ein Simulator zur Erstellung graphischer neuronaler Netze. In diesen

Exkurs lernen wir das Rotkäppchenbeispiel mit Membrain zu simulieren.

6.1. Voreinstellungen anpassen

Sie müssen diese Einstellungen nur beim ersten Start von MemBrain anpassen.

1. Menüpunkt "View", Untermenüpunkt "Show Activation Spikes on Links": Hier sollte

kein Häkchen gesetzt sein.

2. Menüpunkt "View", Untermenüpunkt "Show Fire Indicators": Hier sollte ebenfalls

kein Häkchen gesetzt sein.

3. Menüpunkt "Teach", Untermenüpunkt "Set Teach Speed...": Tragen Sie im daraufhin

erscheinenden Dialog einen Wert von "1" ein (Vorgabewert ist hier "0").

a) Schritt: Units erstellen

Nachdem Sie MemBrain gestartet haben, erscheint zunächst eine Werkzeugleiste am oberen

Bildschirmrand und darunter ein schwarzer Bildschirm.

Auf dieser schwarzen Oberfläche können Sie Units platzieren, indem Sie entweder in der

Werkzeugleiste folgendes Symbol anklicken oder im Hauptmenü "Insert" "New Neurons"

auswählen.

16 Ebd.17Vgl. http://www.neuronalesnetz.de/membrain.html

Abb. 9: Platzieren von Units

Anschließend sollten Sie mittels des Symbols oder dem Betätigen der "Esc"-Taste wieder

den herkömmlichen Mauscursor bewegen können.

Für das Rotkäppchenbeispiel benötigen wir 13 Units (die Anordnung wurde nur der

Übersichtlichkeit wegen so gewählt, sie ist an sich beliebig):

Abb.10 Units in Rotkäppchenbeispiel

6.2. Objekteigenschaften der Unit

Klicken Sie auf eine Unit der oberen Schicht. Betätigen Sie nun die rechte Maustaste über

Ihrer ersten Unit und klicken im Anschluss daran auf den Unterpunkt "Properties" (der vierte

Unterpunkt von unten). Alternativ gelangen Sie auch durch einen einfachen Doppelklick an

der Unit zu dem entsprechenden Eigenschaftsmenü.

Hier werden die Objekteigenschaften unserer ersten Unit angezeigt. Im Moment soll uns

lediglich die Art der Unit interessieren. Klicken Sie dazu auf das Pull-down Menü "Type"

(oben rechts, dort steht "HIDDEN"). Sie können zwischen drei verschiedenen Arten von

Neuronen auswählen: Input-, Hidden- und Output-Units. Wählen Sie an dieser Stelle einmal

"INPUT" aus und klicken Sie anschließend auf den "OK-Button".

Abb.11: Input- und Output-Units in MemBrain

Ihre erste Input-Unit sollte nun einen hellblauen Pfeil oberhalb des Unit-Namens (in unserem

Fall "1") enthalten. Weisen Sie den anderen 5 Units in der oberen Schicht den Typ "INPUT",

den unteren 7 den Typ "OUTPUT" zu. Wenn Sie die Ctrl-Taste drücken, und gleichzeitig mit

der Pfeilspitze auf alle Units in eine Schicht klicken, können sie deren Eigenschaften auf

einmal ändern. So wird die obere Schicht zur Input-Schicht, die untere zur Output-Schicht.

6.3. Umbenennen

Wir können den einzelnen Units Namen geben. In unseren Beispiel werden zum Beispiel die

ersten 3 Units der Input-Schicht zu die Eigenschaften des Wolfes (große Ohren, große Augen,

große Zähne), und die ersten 3 der Output- Schicht zu Verhaltensmöglichkeiten des

Rotkäppchens (Weglaufen, Schreien, den Holzfäller rufen). Den Namen können Sie auch mit

dem Unterpunkt „Properties“ ändern. Klicken Sie auf eine Unit der oberen Schicht. Betätigen

Sie nun die rechte Maustaste über Ihrer ersten Unit und klicken im Anschluss auf den

Unterpunkt "Properties" (der vierte Unterpunkt von unten). Alternativ gelangen Sie auch

durch einen einfachen Doppelklick der Unit zu dem entsprechenden Eigenschaftsmenü. In der

Rubrik „Name“ können Sie den ursprünglichen Namen ändern.

Abb.12: Umbenannte Units

6.4. Verbindungen erstellen

Um zwischen zwei Units eine Verbindung zu erstellen, müssen Sie lediglich mit dem

Mauspfeil auf die untere, kleine "Lücke" einer Input-Unit fahren, so dass ein dunkelblaues

Quadrat erscheint. Drücken Sie dann mit der linken Maustaste auf dieses Quadrat und fahren

von dort aus auf die obere, kleine "Lücke" der Output-Unit. Jetzt sollte eine Input-Unit mit

einer Output-Unit verbunden sein (die Verbindung wird in rot dargestellt). Verfahren Sie

analog für alle 3 umgennanten Input-Units, so dass jede von ihnen mit jeder unbennanten

Output-Unit eine Verbindung hat.

Abb.13: Miteinander verbundene Units im Rotkäppchenbeispiel

6.5. Trainingsphase

Um in der Trainingsphase die Input- und Output-Daten für das Rotkäppchenbeispiel

einzugeben, wählen Sie im Menü unter "Teach" den "Lesson Editor" aus. Sie erreichen diesen

auch alternativ durch folgendes Symbol: .

Tabelle 3: Wahrheitstabelle für das Rotkäppchenbeispiel

Beim Rotkäppchenbeispiel soll das Netz als Output eine 1 produzieren, wenn alle Input-Units

aktiv (Activation 1) sind. Da also insgesamt 8 "Pattern" vom neuronalen Netz verarbeitet

werden sollen, generieren wir zunächst 7 weitere Pattern durch Anklicken des "New Pattern"-

Buttons auf der rechten Seite. Im mittleren Bereich des "Lesson Editors" sollte bei Ihnen nun

"Pattern No: 8 of 8" stehen.

Wenn Sie die eingegebenen Daten für spätere Zwecke sichern möchten, so können Sie dies im

Lesson Editor über den Menüpunkt "File" - "Save Lesson" tun.

6.6. Initialisierung der Gewichte mit Zufallswerten

Nun sollte das Netz noch mit Zufallswerten für die Gewichte der Verbindungen und des

Aktivierungs-Schwellwerts der Output-Unit initialisiert werden. Klicken Sie hierzu auf den

Menüpunkt "Net" - "Randomize Net". Wenn Sie sich die Verbindungen zwischen den

Neuronen einmal genauer anschauen, werden Sie bemerken, dass diese danach die Farbe

Pattern

UnitInput Outputg O g A g Z In4 In5 In6 W Sch H Ou

4Ou5

0u6 Ou7

1 0 0 0 0 0 0 0 0 0 0 0 0 02 1 0 0 0 0 0 0 0 0 0 0 0 03 0 1 0 0 0 0 0 0 0 0 0 0 04 0 0 1 0 0 0 0 0 0 0 0 0 05 1 1 0 0 0 0 0 0 0 0 0 0 06 0 1 1 0 0 0 0 0 0 0 0 0 07 1 0 1 0 0 0 0 0 0 0 0 0 08 1 1 1 0 0 0 0 0 0 0 0 0 0

mehr oder weniger stark verändert haben. Entsprechend den Zufallswerten für die

Verbindungsstärke können die Farben von bläulich über grau bis zu rötlich variieren.

Abb. 6. Fehlerkurve des neuronalen Netzes für die ersten ca. 100 Durchläufe

Öffnen Sie nun den "Net Error Viewer" (im Menü unter "Teach" zu finden oder durch

Betätigen des -Buttons).

Stoppen Sie nun die Trainingsphase des neuronalen Netzes ( oder unter "Teach" "Stop

Teacher (Auto)"). In der nun folgenden Testphase soll überprüft werden, ob sich das

neuronale Netz tatsächlich so verhält, wie wir es wollten.

6.7. Testphase

Um zu überprüfen, ob das Netz tatsächlich den richtigen Output für die 4 verschiedenen

Input-Muster produziert, öffnen Sie den "Lesson Editor" erneut.

Im "Lesson Editor" können Sie unten links im Bereich "Data to Net" dem neuronalen Netz ein

beliebiges Reizmuster ("Pattern") präsentieren. Wählen Sie mit Hilfe der Pfeil-Buttons am

rechten Rand ein gewünschtes Reizmuster aus und klicken anschließend auf "Think on Input".

Sind nicht alle 3 umbennanten Input-Units aktiv, so müsste der Aktivitätslevel der Output-

Units nur geringfügig über 0 liegen. Wenn alle Input Units aktiv sind (also große Ohren,

große Augen, große Zähne vor Rotkäppchen stehen) so wird der Aktivitätslevel der Output-

Units einen Wert nahe 1 annehmen (das Rotkäppchen wird weglaufen, schreien und den

Holzfäller rufen). Überprüfen Sie nun alle 8 Reizmuster.

7. Die Kontroverse zwischen Konnektionismus und Symbolverarbeitung

7.1. Symbolverarbeitungsansatz und konnektionistische Systeme

Im Laufe des wissenschaftlichen Diskurses über die Möglichkeit, „intelligente“ Vorgänge

durch formal definierte Systeme zu simulieren bzw. zu realisieren, entwickelten sich zwei

Ansätze heraus, die öfters als grundlegend unvereinbar dargestellt werden und die sich auch

teilweise selbst so verstehen bzw. verstanden haben.

Der Symbolverarbeitungsansatz wählt sich als Ausgangspunkt „intelligentes“ menschliches

Verhalten bzw. das davon im Bewusstsein des handelnden Individuums fassbare begriffliche

Abbild. Er benutzt die daraus extrahierbaren begrifflichen Grundelemente und versucht

anschließend ein Regelwerk zu erstellen, mit dessen Hilfe diese Gundbegriffe so miteinander

kombiniert werden können, dass sie diesselben „intelligenten“ Ergebnisse (die wiederum mit

Hilfe dieser Grundbegriffe formuliert werden) liefern wie das menschliche „intelligente“

Verhalten. Diese Grundbegriffe werden dann als „Symbole“ bezeichnet, da sie – dem hohen

Komplexheitsgrad bewussten menschlichen Denkens entsprechend – sehr klar in der

menschlichen Wahrnehmung existierende Grundmuster identifizieren, die natürlich auch in

der Wirklichkeit in einer entsprechenden Weise zu finden sind. Der symbolverarbeitende

Ansatz spricht in diesem Zusammenhang dann von einer „Repäsentationalität“ des

Symbolsystems bezogen auf die Wirklichkeit. Diese Symbole werden als nicht mehr weiter

auflösbare Grundelemente jeglichen intelligenten Vorganges betrachtet, was mit sich bringt,

dass sich die Vorstellung durchsetzt, die Simulation „intelligenter“ (im Sinne von menschlich

intelligenter) Vorgänge kann nur dadurch geschehen, dass man ein geeignetes Symbolsystem

und ein dazugehöriges Regelwerk findet.

Auch konnektionistische System kennen so etwas wie Grundelemente. Diese sind aber nicht

in sich komplexe Gebilde, sondern sehr klar formal definierbare Prozesse, die relativ leicht

durch physikalische Vorgänge ausgeführt werden können. Kombiniert man diese Prozesse

durch ebenfalls klar formal definierbare Regeln, so ergibt sich ein Gesamtsystem, das in sehr

komplexer Weise auf verschiedene Anfangsbedingungen reagieren kann. Der Unterschied

zum zuerst angeführten Symbolverarbeitungsansatz liegt also eigentlich nur darin, dass die

Grundbausteine des Systems sehr viel elementarer, damit formal definierbar, im Gegenzug

dazu aber als relativ „primitiv“ angesetzt werden und die Komplexität des Systems erst

dadurch erreicht wird, dass sehr viele dieser Grundbausteine miteinander interagieren. Beide

Systeme funktionieren im Grunde dadurch, dass Grundbausteine durch Regeln miteinander

interagieren.

7.2. Gegenargumente des Symbolverarbeitungsansatzes gegen eine Zuschreibung von

„Intelligenz“ an konnektionistische Systeme

Eine der fundamentalsten Kritiken an einem konnektionistischen Verständnis von

Intelligenzleistungen wurde von Fodor und Pylyshyn formuliert.18 Ihre Argumentation hat

Goschke19 auf zwei Kernargumente zusammengefasst: Erstens würden konnektionistische

Systeme keine strukturierten Symbole mit Konstituentenstruktur darstellen können und

zweitens können sie deshalb nicht als repräsentationale Systeme gelten.

Was man sich unter „Symbolen mit Konstituentenstruktur“ zu denken hat, leite sich bei Fodor

aus der Eigenart sprachlicher Begriffe ab. Diese ermöglichen eine fast unerschöpfliche

Anzahl an sinnvollen Aussagen. Diese Art von Produktivität, die sich gleichzeitig an eine

strenge Systematizität hält, kann man sich nach Fodor eben nur dadurch denken, dass man

per-se-konstituierte mentale Grundelemente annimmt, die durch Kombination diese

Mannigfaltigkeit und Verschiedenartigkeit der Aussagen ermöglichen. Die einzelnen

Neuronen in neuronalen Netzen würden eine solche Aufgabe nicht erbringen können, da diese

in der Gesamtheit des Netzes ja nur eine einzelne Gewichtung vornehmen, diese aber nicht

auf ein anderes Netz, das einen begrifflich ähnlichen Sachverhalt ausführt, übertragbar ist.

7.3. Entkräftung der Gegenargumente

Der Gedankengang Fodors ist soweit richtig, als dass einzelne Neuronen sicher nicht Träger

mentaler Begriffe sein können. Wie in Untersuchungen natürlicher neuronaler Netze gezeigt

werden konnte und wie es weiter unten dargestellt wird, kann ein einzelnes Neuron aber als

Indikator für einen mentalen Begriff fungieren, aus dem neurophysiologisch eindeutig

ableitbar ist, ob der betreffende Begriffsinhalt gerade im neuronalen Netz verarbeitet wird.

18 Vgl. Fodor, 1988.19 Vg. Goschke, 1989.

Das bedeutet aber nicht, dass dieses Neuron allein den Begriff neuronal definiert, sondern

dazu sind sehr viel größere, vor- und nachgeschaltete Teile des Netzes nötig. Neurologisch ist

ja zum Beispiel schon seit langem untersucht, dass der Wahrnehmungsvorgang natürlicher

neuronaler Netze in einem aufbauenden Nacheinander von Teilen des Nervensystems beruht,

in dem zuerst die von den Sinneszellen erzeugte „Pixelsuppe“ analysiert wird und die

formalen Eigenschaften von Objekten wie Farben, Ecken, Kanten usw. völlig autonom

herausgefiltert werden. Erst in einem späteren Verarbeitungsschritt werden die so gewonnen

Muster durch einen Vergleich mit abgespeicherten Gedächtnisinhalten als ein bestimmtes

Objekt identifiziert. Dieser abgespeicherte Begriff setzt deshalb natürlicherweise den ganzen

„formalen Analyseapparat“ des neuronalen Netzes voraus, ebenso wie dessen „neuronalen

Syntax“. Insofern muss man sich die neuronale „Repräsentation“ eines Begriffs sehr viel

vielschichtiger vorstellen, als dies Fodor und Pylyshyn tun.

7.4. Das Symbol-foundig-Problem aus Konnektionistischer Perspektive

Die als „Symbol-foundig-Problem“ bezeichnete Fragestellung setzt natürlich einen

Fragehorizont voraus, der von einem sehr regelgeleiteten Ansatz ausgeht. Für einen solchen

ist es essentiell, die Legitimität des Symbolbegriffes nachzuweisen. Aus einer

konnektionistischen Perspektive heraus kann eine sehr klare Vorstellung davon entwickelt

werden, wie sich komplexere geistige Konstrukte bilden können. Dieser gesamten

Fragestellung würde man aus konnektionistischer Sicht aber wohl einen anderen Namen

geben, etwa „die Abbildung von Wahrnehmungsstrukturen im neuronalen Netz“.

Von manchen Seiten werden neuronale Netze als diffuse vielstufige Rechenalgorithmen

betrachtet, die aus einem Eingangsvektor - ähnlich einer „black-box“ - in einem

unstrukturierten und deshalb im Nachhinein nicht analysierbaren Rechenvorgang einen

Ausgangsvektor erstellen. Für kleinere Netzwerke, die nur aus wenigen Zellen bestehen mag

dies auch zutreffen. In größeren Agglomerationen, in denen auch im Laufe des Algorithmus

neue Inputvektoren eingespeist werden, bilden sich allein dadurch schon Strukturen aus, weil

sich das Netz durch diese zusätzlichen Einspeisepunkte in Teilsysteme gliedert (ähnlich

einzelner Programmroutinen innerhalb eines Computerprogramms). Deren jeweilige

Endresultate können gewissermaßen als „Übergabevektoren“ betrachtet werden, in denen

Subsysteme ihre Ergebnisse an die folgenden weitergibt. Darüberhinaus ist es wohl auch

mathematisch durchaus vorstellbar, dass sich bei einem auch geschlossenen, nicht durch

weitere Inputs ergänztem Zusammenwirken von Hunderten und Tausenden

Elementarbausteinen im Rechenalgorithmus charakteristische Muster in den Gewichtungen

der Neuronenverbindungen ausbilden. Analog zum Verhalten autonomer Agenten, die in

einer nach außen hin geschlossenen Interaktion miteinander gewisse „Verhaltensmuster“

ausbilden, die sich als relativ stabile Strukturen in ihrem anfänglich völlig offen gelassenen

„Verhaltensrepertoirs“ verfestigen, ist auch zu erwarten, dass sich in größeren neuronalen

Netzen gewisse charakteristische Gewichtungsmuster bilden. Außerdem können in solch

verfestigten Gewichtungsmustern einzelne Neuronen oder Neuronengruppen eine

charakteristische Rolle übernehmen, d.h. aus ihrer Aktivität kann man Rückschlüsse über die

Art des Inputvektors ziehen.

Ein solches Bild der strukturierten Interaktion von Neuronen wird auch durch sehr detaillierte

neuere Hirnforschungen bestätigt. So legt etwa M. Spitzer, der als führender Hirnforscher des

deutschen Sprachraums gilt, ausführlich dar20, wie einzelne Neuronen zusammen mit ihren

Nachbarzellen eindeutig einzelne Begriffe repräsentieren. In der von ihm angeführten

Untersuchung konnte z.B. nachgewiesen werden, dass es bei den Probanten eine solche sehr

engräumige Nervengruppe gibt, die für den Begriff des „Sydney Opera House“ steht. Ein

bestimmtes Neuron dieser Gruppe wird nur dann aktiv, wenn der Probant entweder das Wort

„Sydney Opera House“ wahrnimmt oder ein Bild des Opernhauses sieht (wobei es völlig egal

ist, aus welcher Perspektive es aufgenommen wurde, und ob das Objekt als ganzes oder nur

ein charakteristischer Teil davon zu sehen ist!). An anderer Stelle21 stellt Spitzer

Untersuchungen vor, die zeigen, dass es im Hirn von Affen eine Neuronengruppe gibt, die die

horizontale Richtung der Armbewegung repräsentiert. Auch dabei sind die Einzelneuronen

Repäsentanten für eine gewisse Raumrichtung, die benachbarten Neuronen, die für die

benachbarten Raumrichtungen stehen, sind aber jeweils in einem schwächeren Grad

mitinvolviert. Je weiter die tatsächliche Richtung der willentlichen Armbewegung von der

Repäsentationsrichtung des Armes abweicht, desto inaktiver ist das betreffende Neuron. Diese

Neuronengruppe spiegelt also eineindeutig die Struktur des zweidimensionalen Raumes

wieder. Der Richtung der tatsächlichen Armbewegung konnte dabei genau berechnet werden,

indem man die Summe der Richtungsvektoren der aktiven Neuronen bildete, wobei der

Aktivitätsgrad der einzelnen Neuronen als Maß für den Betrag der einzelnen

20 Vgl. Spitzer, 2006.21 Vgl. Spitzer, 2005.

Richtungsvektoren diente. Dieser Rechenvorgang entspricht genau einer Summenfunktion,

wie sie im Abschnitt 3 dieser Arbeit vorgestellt wurde.

Semantische Gehalte des Bewusstseins können also durchaus als „geronnene“ Strukturen des

neuronalen Netzes aufgefasst werden. In ihnen spiegelt sich klarerweise die

Informationsstruktur der Wahrnehmung und damit in gewissem Sinne der Wirklichkeit

wieder. Insofern ist es auch möglich, sie als „Symbole“ für in der Wirklichkeit vorgegebene

Strukturelemente zu bezeichnen, auch wenn dabei klar sein muss, dass sie sich durch einen

Prozess der „neuronalen Abstraktion“ gebildet haben und nicht aus einer nicht fassbaren

geistigen Ebene stammen oder von irgendwelchen dem menschlichen Bewußtsein von allem

Anfang an innewohnenden „idea innatae“ im Sinne des Rationalismus des 17. Jahrhunderts

abgeleitet werden. Smolensky22 vergleicht das Verhältnis von neuronaler Konstruktion und

semantischem Begriffssystem mit dem von Newtonscher Mechanik und der Quantentheorie -

ein sehr treffender Vergleich um zu veranschaulichen, wie eine große Anzahl fluktuierender

Prozesse in ihrer Interaktion einen stabilen Vorgang bilden können. Auch der Ansatz von

W. Freeman, der mit Argumenten der Chaostheorie ähnliches zu begründen versucht, kann als

Veranschaulichung dienen, auch wenn die Chaostheorie allein für die genauere Erklärung

neuronaler Vorgänge wohl zu unzureichend sein wird.

Aus einem solchen Verständnis mentaler Strukturen als neuronaler Abstraktion der

Wahrnehmung ergibt sich auch, dass der Unterschied zwischen kognitiven und nicht-

kognitiven Systemen kein prinzipieller, sondern nur noch ein gradueller ist: Kognitive

Systeme unterscheiden sich von nicht-kognitiven Systemen nur durch den Komplexitätsgrad

ihrer Fähigkeit zur Extraktion von Umweltreizen und zur adaptiven Reaktion auf eine

Vielzahl von Situationen.

Theoretisch scheint es von solch einem Standpunkt aus möglich, durch künstliche neuronale

Netze Maschinen zu bauen, die dieselben kognitiven Leistungen (=Intelligenz) erbringen wie

der Mensch, sofern sich diese als reine Adaptionen an Umweltreize ergeben können. Auch die

Schaffung künstlichen Bewusstseins (=Selbstreflexivität) und damit verbundener

Intentionalität scheint davon ausgehend auf kein prinzipielles Problem zu stoßen. Dass damit

allerdings schon eine letzte, die Geistbegabtheit den Menschen erschöpfend erklärende

Theorie gefunden ist, kann natürlich nicht behauptet werden, da die Geistbegabtheit des

22 Vgl. Smolensky, 1988.

Menschen aus mehr als nur einer „kognitiv-intelligent-adaptiven“ und einer selbstreflexiven

Dimension bestehen dürfte. Im selben ambivalenten Licht stehen auch die Themen „Freiheit“

und „Verantwortung“ des Menschen.

Auch die Frage, ob es eine Ursache gibt, dass sich natürliche „kognitive Systeme“ immer

komplexer organisieren, oder ob dafür die evolutionstheoretisch angenommenen Prinzipien

von genetischer Mutation und Selektion neben der erst auf einer sehr hohen Stufe der

Evolution einsetzenden Intentionalität ausreichen (z.B. warum entwickelt ein neuronales Netz

einen Algorithmus, der darüber den Ausschlag gibt, ob und wie ein neues Neuron in das Netz

eingebaut wird), scheint auf Grundlage der Theorie der neuronalen Netze nicht beantwortbar

zu sein.

Literatur:

Atkinson, R.L., Atkinson, R.C., Smith, E.E., Bem, D.J., Nolen-Hoeksema, S (2001). Pszichológia. Budapest, Osiris Verlag

Goschke, T. (1989). Implikationen des Neuen Konnektionismus für den Begriff der mentalen Repräsentation. In B. Becker (Hrsg.), Zur Terminologie der Kognitionsforschung. GMD-Arbeitspapier Nr. 385. St. Augustin: Gesellschaft für Mathematik und Datenverarbeitung. Fodor, J.; Pylyshyn, Z. (1988). Connectionism and Cognitive Architecture. In: Cognition 28: S 3-71.

Hebb, D. (1949). The Organization of Behaviour S 62, Übersetzung nach Kandel et al., 1995, S. 700

Pléh, Cs., Kovács, Gy., Gulyás, B. (2003). Kognitív idegtudomány. Budapest, Osiris Verlag.

Smolensky, P. (1988). On the proper treatment of connectionism. In: Behavioral and Brain Sciences, 11, 1-74.

Spitzer, M. (2005). Vektoren im Kopf. Fernsehsendung produziert und ausgestrahlt vom Bayrischen Rundfunk.

Spitzer, M. (2006). Großmutterneuronen. Fernsehsendung produziert und ausgestrahlt vom Bayrischen Rundfunk.

http://de.wikipedia.org/wiki/Neuron

http://de.wikipedia.org/wiki/Gehirn

http://www.neuronalesnetz.de/hebb.html

http://websom.hut.fi/websom/

http://de.wikipedia.org/wiki/Kinematik

http://www.learnartificialneuralnetworks.com/robotcontrol.html

http://www.neuronalesnetz.de/membrain.html

http://de.wikipedia.org/wiki/Bild:Complete_neuron_cell_diagram_german.svg

http://www.onmeda.de/krankheiten/depressive_verstimmungen.html?gfx=0