Ulrich Ramacher · Christoph von der Malsburg (Hrsg.)
Zur Konstruktion künstlicher Gehirne
123
Herausgeber Prof. Dr. Ulrich Ramacher COM SDR Infineon Technologies AG Otto-Hahn-Ring 6 81739 München Deutschland
[email protected]
Prof. Dr. Christoph von der Malsburg Frankfurt Institute for Advanced Studies Max-von-Laue-Str. 1 60438 Frankfurt a.M. Deutschland
[email protected]
ISBN 978-3-642-00187-1 e-ISBN 978-3-642-00191-8 DOI 10.1007/978-3-642-00191-8 Springer Dordrecht Heidelberg London New York Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar. c Springer-Verlag Berlin Heidelberg 2009 Dieses Werk ist urheberrechtlich geschätzt. Die dadurch begründeten Rechte, insbesondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der Vervielfältigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Vervielfältigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des Urheberrechtsgesetzes. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften. Einbandentwurf: eStudioCalamar, Figueres/Berlin Gedruckt auf säurefreiem Papier Springer ist Teil der Fachverlagsgruppe Springer Science+Business Media (www.springer.de)
Inhaltsverzeichnis
Vorwort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0.1 Hauptergebnisse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0.2 Vorgeschichte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0.3 Danksagung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 2 6 8
1
Problematik der Modellierung künstlicher Gehirne . . . . . . . . 1.1 McCullogh–Pitts Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Lernende Netze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Pulsende Neuronen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 Architektur des Sehens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5 Die Schritte des Konstruktionsprozeß . . . . . . . . . . . . . . . . . . . . . . 1.6 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11 12 13 14 15 17 18
2
Informationsverarbeitung in Netzen mit konstanten Synapsen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Allgemeine Signalgleichungen für Pulsneuron und Synapse . . . . 2.2 Zerlegungen und ihre zeitliche Entwicklung . . . . . . . . . . . . . . . . . 2.3 Experimente mit konstanten Synapsen . . . . . . . . . . . . . . . . . . . . . 2.4 Entropie als informationsübertragende Funktion . . . . . . . . . . . . . 2.5 Betriebsbereich eines Netzes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Pulsraten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7 Auflösung und Netzgröße . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8 Anwendungsmöglichkeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9 Zur Simulationsproblematik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.10 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21 22 23 25 32 34 36 37 42 46 46
Allgemeine Theorie der Netze mit dynamischen Synapsen . 3.1 Herleitung der Signalenergie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Zeitmittel und Raummittel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Maximierung des Nicht-Wissens . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Zustandsgleichungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49 49 54 56 60
3
VI
Inhaltsverzeichnis
3.5 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 4
Makrodynamik der Netze mit konstanten Synapsen . . . . . . . 4.1 Bekannte Synapsen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Bekannte Verteilung von Synapsen . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Prüfung der Übereinstimmung von Theorie und Experiment . . 4.4 Korrelationsfreiheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Bestimmung der Signalenergie und Entropie durch die Pulsrate 4.6 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
63 64 68 70 85 85 88
5
Informationsverarbeitung mit dynamischen Synapsen . . . . . . 89 5.1 Lösungstypen der Synapsengleichungen . . . . . . . . . . . . . . . . . . . . . 90 5.2 Synchronisation der Neuronen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 5.3 Segmentation per Synchronisation . . . . . . . . . . . . . . . . . . . . . . . . . 98 5.4 Berechnung von Pulsdifferenzen und -summen . . . . . . . . . . . . . . . 100 5.5 Einfache Anwendungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 5.6 Zeitkodierung und Korrelation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 5.7 Entropie und Zustandsraum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 5.8 Vorüberlegungen zur Statistik der Synchronisation . . . . . . . . . . . 113 5.9 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
6
Netze für die Merkmalsdetektion . . . . . . . . . . . . . . . . . . . . . . . . . . 117 6.1 Visuelles System im Überblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 6.2 Simple Cells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 6.3 Erzeugung von Detektorprofilen vom Gabor-Wavelet-Typ . . . . . 124 6.4 Experimentelle Überprüfung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 6.5 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7
Netze für die Merkmalserkennung . . . . . . . . . . . . . . . . . . . . . . . . . 133 7.1 Prinzipien der Objekterkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 7.2 Netzarchitektur für die robuste Merkmalserkennung . . . . . . . . . . 137 7.3 Merkmalserkenner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 7.4 Trennschärfe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 7.5 Orthogonalität bei Rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 7.6 Invarianz gegenüber Helligkeit der Beleuchtung . . . . . . . . . . . . . . 147 7.7 Invarianz gegenüber Veränderungen der Form und Mimik . . . . . 149 7.8 Komposition mehrerer Merkmale zu einer Objektkomponente . 151 7.9 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
8
Netze für die robuste Kopfdetektion . . . . . . . . . . . . . . . . . . . . . . . 157 8.1 Ergebnisse der Kopfdetektion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 8.2 Potential und Grenzen der bisher entwickelten Seharchitektur . 163 8.3 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Inhaltsverzeichnis
9
VII
Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 9.1 Das Datenformat des Gehirns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 9.2 Selbstorganisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 9.3 Lernen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 9.4 Invariante Objekterkennung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 9.5 Strukturierte Gedächtnisdomäne . . . . . . . . . . . . . . . . . . . . . . . . . . 175 9.6 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
10 Vorüberlegungen zur mikroelektronischen Realisierung . . . . 179 10.1 Äquivalente Darstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 10.2 Mikroelektronische Darstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . 180 10.3 Grundlegende Modelle biologischer und technischer Neuronen . 183 11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 11.1 Neuron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 11.2 Adaptive Synapsen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 11.3 Bildsensoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 11.4 DA-Wandler und analoger Bildspeicher für die Bildeingabe . . . 238 11.5 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 12.1 Modellierung von Neuron und Synapse . . . . . . . . . . . . . . . . . . . . . 242 12.2 Ergebnisse der Modellierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 12.3 Simulationsmethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 12.4 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 13 Architektur und Chip-Entwurf des Merkmalserkenners . . . . 261 13.1 Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 13.2 Schnittstellen für Test und Anzeige . . . . . . . . . . . . . . . . . . . . . . . . 263 13.3 Layoutimplementierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 13.4 Demonstrator und Meßergebnisse . . . . . . . . . . . . . . . . . . . . . . . . . . 266 13.5 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 14 Architektur und Chip-Entwurf für Merkmalsdetektoren . . . 269 14.1 Digitale Darstellung der Merkmalsdetektion . . . . . . . . . . . . . . . . . 270 14.2 VLSI-Design eines neuronalen Prozessor- und RouterSchaltkreises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 14.3 Demonstration der Merkmalsdetektion . . . . . . . . . . . . . . . . . . . . . 279 14.4 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
VIII
Inhaltsverzeichnis
15 3D-Stapeltechnik für den Sehwürfel . . . . . . . . . . . . . . . . . . . . . . . . 285 15.1 Prinzip der 3D Stapelung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 15.2 Prozeßschritte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 15.3 Verbindungstechnik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 15.4 Elektrische Eigenschaften von 3D-Verbindungen . . . . . . . . . . . . . 314 15.5 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 16 Architektur eines Sehwürfels der ersten Generation . . . . . . . . 317 16.1 Dimensionen der Merkmalskaskade und Auflösungspyramide . . 317 16.2 Sparsame Implementierung des Merkmalsdetektors . . . . . . . . . . 326 16.3 Photosensor-Chip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 16.4 Chip für die restliche Auflösungspyramide . . . . . . . . . . . . . . . . . . 329 16.5 Größe des NPU-Arrays und Speicherbedarf . . . . . . . . . . . . . . . . . 332 16.6 Merkmalsdetektor-Chip für 8 Orientierungen . . . . . . . . . . . . . . . 338 16.7 Merkmalserkenner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 16.8 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 17 Ausklang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 18 Anhang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 18.1 Simulator für Kapitel 3 und 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 18.2 Axon-Modell von Hodgkin und Huxley . . . . . . . . . . . . . . . . . . . . . 364 18.3 Transistor-Grundschaltungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 18.4 Optische Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 Literaturverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
Vorwort
Unser Gehirn hat eine geschätzte Rechenleistung von 1015 Operationen pro Sekunde (wenn man eine Operation pro Synapse und Sekunde im Durchschnitt ansetzt), und ist damit ein sehr ernst zu nehmender Computer. Das Gehirn ist als Instrument zur Akquisition, Strukturierung, Indexierung und Koordinierung von Weltwissen und als Instrument flexiblen autonomen Verhaltens allen künstlichen Systemen weit überlegen. Außerdem sollten wir nicht verdrängen, daß das Gehirn die Quelle aller formalen Systeme und Algorithmen ist. Und trotz dieser Vorzüge verstehen wir nicht, wie es funktioniert, obgleich das Wissen gewaltig zugenommen hat. Seit mehr als 100 Jahren wird das menschliche Hirn beforscht. Dünne Schnitte wurden zu Millionen angelegt, an die hundert Nadeln simultan positioniert, ungezählte Experimente zu den elektrisch-chemischen Vorgängen an Synapsen und Neuronen duchgeführt, mit verschiedensten Techniken Bilder von den Hirnarealen aufgenommen und unübersehbar viele Verhaltensexperimente ausgeführt. All dies führte zu Einsichten in die vermutete Funktionsweise des Hirns, welche nur auf der Ebene von einzelnen Synapsen und Neuronen mit der quantitativen Modellierung der elektro-chemischen Vorgänge zu einer gesicherten Theorie fand [1]. Netzwerke von Neuronen und Synapsen, welche eine bestimmte Informationsverarbeitung erbringen, wurden – wenn überhaupt – sensornah aufgeklärt [2, 3, 4]. Der überwiegende Teil der Arbeiten trug also hauptsächlich bei zur phänomenologischen Beschreibung, begleitet von Vermutungen über die Wirkzusammenhänge. Von einer anerkannten Beschreibung der Informationsverarbeitung des Hirns und der Rekonstruktion seiner Leistungen sind wir deshalb weit entfernt. In dieser Situation hatten wir es uns zur Aufgabe gemacht, auf der ausschließlichen Grundlage von Neuron- und Synapsenmodellen - welche genügend einfach sind, um simulierbar zu bleiben, und genügend komplex, um nicht-triviale Erkennungsaufgaben wahrzunehmen - zu bestimmen, wie Information durch pulsende neuronale Netze dargestellt wird und wie die elementaren Muster der Vernetzung von Neuronen und Synapsen aussehen. Um nicht einfach nur ein weiteres Mosaiksteinchen der Vermutung dem eingangs
2
Vorwort
geschilderten Stand der „neuronalen Kunst“ hinzuzufügen, haben wir durch geeignete Kombination dieser elementaren informationsverarbeitenden Netze ein kleines künstliches Hirn konstruiert, welches komplette und anspruchsvolle Aufgaben auszuführen erlaubt. Damit der Leser sich frühzeitig ein Bild unserer Methodik machen kann, stellen wir unser Vorgehen und die erhaltenen Hauptergebnisse übersichtsartig vor.
0.1 Hauptergebnisse Allgemeine Erkennungskette in neuronaler Architektur Wir beschränken uns auf das Sehen und haben folgendes erstes Hauptergebnis erzielt: es liegen Module zur Merkmalsdetektion und -erkennung vor, ein Netzwerk zur Bindung verschiedener Merkmale zu einer Objektkomponente bzw. von Objektkomponenten zu Objekten, welche in geeigneter Vernetzung die robuste Erkennung von Köpfen bewerkstelligen (Kapitel 8). Damit existiert eine minimale, aber komplette Kette von Erkennungsmodulen; wir sprechen im folgenden von der Erkennungskette. Die Besonderheit unseres Ansatzes scheint darin zu bestehen, daß der gesamte Satz von Funktionen zur Merkmalsdetektion, -erkennung und Objektbindung auf der Basis eines einzigen Neuron- und Synapsenmodells realisiert werden kann – ohne weitere Zutaten an Lernalgorithmen oder Ähnlichem. Wir hegen den Verdacht, daß unser Ansatz universell ist, d.h. die vorgestellte Merkmalserkennung und Objektbindung mit derselben Struktur dieser Module und ihrer Vernetzung nutzbar ist nicht nur für Kopf-Objekte, sondern für beliebige Objekte, ja sogar für beliebige Erkennungsaufgaben. Zum Beispiel könnte das Objekt eine Bildszene sein, mit verschiedensten darin enthaltenen Subjekten, und Merkmale würden in diesem Fall durch die Anwesenheit bestimmter Subjekte in der Bildszene definiert sein. In der Sprache der Informatik ausgedrückt heißt dies, daß allein das Datenformat sich ändert, aber die Prozesse die gleichen bleiben. Darstellung von Information durch Entropie und Korrelation Ein zweites Hauptergebnis betrifft die quantitative Charakterisierung von Informationsverarbeitung in Netzen mit pulsenden Neuronen durch Entropie und Korrelation. Bezeichnet man als Zustandsraum die Menge aller Zerlegungen von unabhängig voneinander agierenden Neuronen eines Netzes in empfangende und sendende Neuronen und als Verteilung die Funktion, welche die Häufigkeit des Auftretens jeder Zerlegung verzeichnet, so ist die daraus berechnete Entropie die Grundfunktion des Netzes, welche in eindeutigem Zusammenhang mit den Pulsraten der Neuronen des Netzes steht. Dagegen mißt die Korrelation die zeitliche Abhängigkeit der Sendetätigkeit der Neuronen des Netzes und bestimmt damit Struktur und Größe des Zustandsraumes;
0.1 Hauptergebnisse
3
wenn beispielsweise 8 von 10 Neuronen in einer festen und konstanten Zeitbeziehung senden, dann lebt die Verteilung bzw. Entropie nur noch von den 2 Neuronen und dem 8-Neuronen-Cluster. Wie wir im Kapitel 5 und 7 sehen werden, tritt die Synchronisation (zeitgleiches Senden als spezielle Form einer Zeitbeziehung) auf, wenn die Merkmale eines zu erkennenden Objektes im betrachteten Bild vorliegen. Der Grad der Synchronisation wird durch ein entsprechendes Netz ermittelt und liegt als Pulsrate vor. Die Kodierung von Information geschieht also durch die zwei Größen Entropie und Korrelation, und beide werden durch Pulsraten repäsentiert. Der Streit um Raten- oder Zeitkodierung ist somit hinfällig: beides ist zur Übertragung von Information nötig. Mustererkennung mit dynamischen Synapsen am Beispiel von Köpfen Das dritte Hauptergebnis betrifft die Anwendung solcher Netze. Es zeigt sich, daß Netze mit konstanten Synapsen oder Synapsen mit festem Zeitverhalten unter realen Bedingungen zur Mustererkennung in Bildern nicht in der Lage sind, wenn das Ergebnis der Erkennung unabhängig von Anfangswerten, Signalrauschen und endlicher Genauigkeit der synaptischen Werte sein soll. Charakteristisch für diese Netze ist, daß die Korrelation sehr klein wird und im Limes großer Neuronenzahl verschwindet, somit der Zustandsraum keine Cluster bzw. Muster enthalten kann. Erst wenn dynamische Synapsen eingeführt werden, welche abhängig vom einkommenden Puls und umgebenden Potentialen am Dendriten oder an der Neuronenmembran ihr zeitliches Verhalten gemäß einer von uns entwickelten einfachen Differentialgleichung entfalten, ergibt sich die Möglichkeit zur Mustererkennung. Letztere beruht im wesentlichen auf Korrelation bzw. Dekorrelation, welche mit exitatorischen Synapsen (positives Vorzeichen für den Wechselwirkungsterm der Synapsengleichung) bzw. inhibitorischen Synapsen (negatives Vorzeichen) verwirklicht wird und in allen Stufen der Erkennungskette von der Merkmalsdetektion über die Objektbindung zum Einsatz kommt. Verbunden damit ist eine kleine Anzahl von in ihrer Verbindungsstruktur spezialisierten Teilnetzen (Kapitel 5-8). Die auf diese Weise im gesamten Netz als Entropie-Korrelation-Tupel repräsentierte Information tritt im Bild auf als eine Vielzahl von örtlich verteilten Merkmalen, welche selektiv zu Objekten zusammentreten, oder als eine spezielle Komposition von Objekten in einem Bilde, etc. In diesem Sinne können wir den umgangssprachlichen Informationsbegriff in eindeutiger Weise mit dem wohldefinierten Informationsbegriff für ein neuronales Netz verbinden, welcher durch das Entropie-Korrelations-Tupel gegeben ist.
4
Vorwort
Theorie der Dynamik neuronaler Netze Als viertes Hauptergebnis betrachten wir die Formulierung einer Theorie, welche gemessene Größen wie Entropie und Pulsrate in Abhängigkeit von den Eingangssignalen vorhersagen kann. Von zentraler Bedeutung ist hierbei die Aufstellung einer Signalenergie, welche man sich als an den Neuronmembranen aufgesammelte Ladungen und durch die Synapsen fließende Ströme vorstellen kann. Mittels dieser Signalenergie lassen sich zum einen die ursprünglichen Signalgleichungen für Synapsen und Neuronen wiedergewinnen und zum anderen Entropie und Korrelation eines Netzes berechnen. Im speziellen Fall der konstanten Synapsen bzw. Synapsen fest vorgegebenen Zeitverhaltens können wir zeigen (Kapitel 3-4), daß experimentelle und theoretische Entropiewerte um weniger als 3 % voneinander abweichen. Ein Ergebnis für dynamische Synapsen steht noch aus, wenn auch der formale Rahmen von Signalenergie und partieller Differentialgleichung für die Verteilungsfunktion formuliert werden kann. Damit steht nun eine Theorie zur Verfügung, mit welcher die Modellierung der informationsverarbeitenden Prozesse eines Gehirns angegangen werden kann. Sowohl Experiment als Theorie benötigen zu ihrer Simulation erhebliche Rechenleistung; wegen der endlichen, uns zur Verfügung stehenden Rechenkapazität begrenzt dies die Größe der in diesem Buch behandelten Netze. Für die experimentelle Bestimmung der Pulsraten sind Netze bis ca. 3000 vollvernetzte Neuronen auf einem PC ausführbar; für Stichproben-basierte Schätzungen der Entropiewerte ca. 100 vollvernetzte Neuronen. Genaue Werte der Entropie erhält man mit einem PC jedoch nur mit weniger als 30 vollvernetzten Neuronen, wobei jedoch die Grenzen des geduldigen Wartens viel eher erreicht werden – in diesem Buch werden für den Fall genauer Werte nie mehr als 11 vollvernetzte Neuronen betrachtet. Selbst mit dem allfälligen Fortschritt bei den Rechnern wird es in den nächsten zehn Jahren demnach dabei bleiben, daß nur kleine Module gerechnet und ihre typischen Eingangs-Ausgangsbeziehungen abgespeichert werden können. Die Zusammensetzung der Module zu einem Gesamtnetz wird sich deshalb immer nur auf eine beschränkte Zahl von Testbildern stützen können, welche die Kette der Eingangs-Ausgangsbeziehungen aller Module füttert. Die Theorie liefert somit nur eine Entwurfsvorlage und beschreibt die vermutete Aktion des Gesamtnetzes, so daß man nicht umhin können wird, spezielle elektronische Realisierungen der Module zu bauen. Diese werden um Größenordnungen über der Leistungsfähigkeit der PCs liegen und erlauben, eine Vielzahl wirklicher Bilder in Echtzeit zu verarbeiten und auszutesten (Kapitel 16). Neurocomputer der zweiten Generation Als fünftes Hauptergebnis stellen wir deshalb eine modulare Architektur samt ihrer schaltungstechnischen Realisierung in CMOS-Technologie vor, mit welcher die Erkennungskette und prinzipiell beliebig große Netze aufgebaut werden können. Entsprechende Kapitel behandeln die schaltungstechnische Reali-
0.1 Hauptergebnisse
5
sierung von Neuronen, Synapsen sowie Bildsensoren und von Modulen für die Merkmalsdetektion und -erkennung bzw. Objekterkennung (Kapitel 11-14). Dabei ist das gemessene Verhalten der Chip-Module in sehr guter Übereinstimmung mit dem simulatorisch bzw. theoretisch erzielten Verhalten. Da die einzelnen Chip-Module leicht tausendmal schneller als biologische Netze sein können, können diese Module wegen ihrer universellen Anwendbarkeit zeitlich mehrfach eingesetzt werden, um ein viel größeres Netz zu emulieren. Auf diese Weise können beispielsweise vollständige Merkmalspyramiden realisiert werden. Vonnöten ist dazu jedoch ein Architekturkonzept, welches Lesen/Speichern und Multiplexen der Signalwerte der Neuronen und Synapsen bewerkstelligt. Dies wiederum bedeutet die Hinzunahme einer klassischen Computerarchitektur zur Steuerung und Verwaltung der Ressourcen einerseits und Weiterleitung der Pulssignale andererseits. Anders als die erste Generation von Neurocomputern, welche entweder analog oder digital entwickelt wurde, wird die zweite Generation sich also beider Entwurfsstile bedienen. Wegen der Vielzahl der benötigten Module – verschieden sind nur wenige, da die oben erwähnte Erkenntniskette universal einsetzbar ist – mußte ferner eine neue Aufbautechnologie entwickelt werden: Einzelne Silizium-Scheiben werden zu einem Stapel aufgetürmt, und vertikal durch die Scheiben verlaufene Verbindungsleitungen ergänzen das in jeder Scheibe liegende Verbindungsnetzwerk. 6 Schichten in nur jeweils 14 µm Abstand wurden auf diese Weise miteinander verbunden, allerdings handelte es sich bei dem gefertigtem Stapel noch um einen „dummy“, mit welchem die Qualität der Verbindungsleitungen und die Ausbeute getestet wurde (Kapitel 15). Erst im nächsten Schritt ist die Integration der existierenden Chips für Merkmalserkennung und Objektbindung als 3D Stapel vorgesehen. Ein Vorschlag dafür ist in Kapitel 16 gemacht: für die entfernungsunabhängige Erkennung von 1000 Objekten mittels einer kompletten Merkmalskaskade für 8 Orientierungen und 5 Auflösungsebenen werden 59 Chips auf einer Grundfläche von ca. 70 mm2 in 14 µm Abstand aufeinandergestapelt zu einem 1 mm hohen Sehwürfel. Vom programmierbaren zum selbstorganisiernden Computer Wiewohl wir nur eine erste Generation von künstlichen Hirnen in diesem Buch vorstellen können und der Überzeugung sind, daß noch viele Generationen werden folgen müssen, um die volle Leistungsfähigkeit des menschlichen Gehirns zu erreichen, sehen wir doch ein neues Rechen-Zeitalter heraufziehen. Es gab Zeiten, da wurden Computer mit ihrer Präzision, Zuverlässigkeit und rasanten Geschwindigkeit der feuchten Materie unseres Gehirns als so weit überlegen angesehen wie das Düsenflugzeug dem Spatzen. Daß diese Zeiten vorbei sind, ist gewiß, wenn wir nur die Ergebnisse dieses Buches zugrunde legen und berücksichtigen, daß durch formale Logik inspirierte, algorithmisch gesteuerte und mit digitaler Elektronik realisierte Systeme – die heutigen Computer – an ihre Komplexitätsgrenzen stoßen. Ein Paradigmenwechsel liegt in der Luft: vom fremdorganisierten zum selbstorganisierten Computer [5].
6
Vorwort
Moore’s Law ist sowohl eine Chance als auch eine Herausforderung. Einerseits rückt die zunehmend verfügbare Rechenleistung die Nachbildung des Gehirns in den Bereich des Möglichen, andererseits werden wir dieses Eldorado nur durch Entwicklung völlig neuer Organisationsprinzipien erreichen. Ein Aspekt der Herausforderung besteht darin, die in diesem Buch beschriebenen Strukturen in ihrer Vielfalt und massiven Parallelität zu organisieren. Ein anderer besteht in der Entwicklung eines neuen Begriffs von „Computing“, der weniger auf das Rechnen im engeren Sinne abzielt als vielmehr auf die Koordination von massiven Mengen von Daten und auf das Aufgeben der für das algorithmische Konzept grundlegenden Arbeitsteilung zwischen Mensch und Maschine bzw. auf die Ansiedlung der bisher fast ausschließlich im Gehirn des Programmierers vorhandenen kreativen Infrastruktur in die Maschine. Bei der Geburt der Informatik haben mathematische Logik und formale Systeme Pate gestanden (beide nur denkbar als Produkt denkenden menschlichen Geistes). Zukünftig werden wir uns an dynamischen Systemen orientieren müssen, die mit probabilistischen Methoden, Statistik und nichtlinearen Differentialgleichungen zu beschreiben sind. Insbesondere wird es einerseits notwendig sein, eine Phänomenologie der für organisierte Systeme relevanten kohärenten Datenstrukturen zu entwickeln, andererseits müssen noch mehr theoretische Werkzeuge entwickelt werden, als sie in diesem Buche vorgestellt wurden, mit denen sich Brücken schlagen lassen zwischen den makroskopischen Datenstrukturen und den mikroskopischen Signalgleichungen von Neuronen und Synapsen. In neuronaler Sprache heißt das: Was ist die Struktur mentaler Objekte, und wie hängen diese mit dem Verhalten von Nervenzellen zusammen? Dies alles läuft auf eine Doppelstrategie zweier sich gegenseitig ermöglichender Entwicklungen heraus: Realisation einer in den Gehirnen manifesten Technologie massiv parallelen, „organischen“ Rechnens und Entwicklung einer selbstorganisierenden Daten- und Prozessarchitektur. Versuche der Achtziger Jahre, große Prozessor-Arrays zu bauen, sind vor allem am Fehlen eines Architekturkonzeptes für die Informationsverabeitung gescheitert. Letzteres braucht ein sehr tiefgreifendes Umdenken.
0.2 Vorgeschichte Vorweg schicken wir noch einige Zeilen zur Entstehung des Projektes. Es entstand in der Abteilung „VLSI System Integration“ der Zentralabteilung Technik der Siemens AG und baut auf dem 1994 ausgelaufenen „Neurocomputer“Projekt auf, welches von Prof. Ramacher geleitet wurde. Mit dem Neurocomputer SYNAPSE („SYnthezising Neural Algorithms on a Parallel Systolic Engine“) konnten allerdings nur analoge Neuronmodelle gerechnet werden, welche Signalmittelwerte und Sigmoid-ähnliche Neuronfunktionen verwendeten. Wie sich nach einigen Jahren herausstellte, waren die neuronalen Architekturen dieser Tage nicht leistungsfähig genug für Anwendungen wie Sehen.
0.2 Vorgeschichte
7
Insbesondere waren neuronale Netze dieser Entwicklungsstufe nicht zentrale, sondern Rand-Elemente der gesamten Lösungssarchitektur einer Anwendung. Mit der Unterstützung von Prof. Werrmann vom BMBF wurde von Prof. Ramacher das Nachfolge-Projekt „Electronic Eye“ ins Leben gerufen. Zusammen mit den Professoren von Seelen und von der Malsburg (Universität Bochum) und Prof. Buhmann (Universität Bonn) wurde eine Rechner-Plattform höchster Leistung für prototypische Anwendungen wie Fahrzeugsehsysteme, Überwachung von U-Bahnstationen und Video-Conferencing im Jahre 2000 konstruiert; zentrale Komponente war hierin der Vision Instruction Processor, ein hochintegrierter Chip, welcher ein großes paralleles Rechenfeld mit einer Vielzahl von allgemeinen Rechenbefehlen und zusätzlichen, auf Bildverarbeitung, Bildkodierung bzw. -dekodierung und Bilderzeugung sowie auf analoge neuronale Netze spezialisierte Befehle enthielt. Es handelte sich also um eine klassische DSP-Architektur mit erweitertem Instruktionssatz, so daß allgemeine Algorithmen der Bildverarbeitung wie auch neuronale Algorithmen in Programme einfliessen konnten. Zu Ende des Projektes konnten zwar Echtzeitanwendungen wie Überholwarner, Gesichtserkennung, MPEG2Enkodierung von Fernsehbildern und 2-dimensionale Bilderzeugung demonstriert werden; der Anteil der neuronalen Architektur in der Geamtarchitektur der Bilderkennung blieb jedoch unverändert klein. Erst im Nachfolge-Projekt „VisionIC“, welches von Prof. Ramacher aufgesetzt und von Prof. Werrmann (BMBF) unterstützt wurde, sind in einem Teilprojekt gepulste Neuronen, dynamische Synapsen und ihre informationsverarbeitenden Prozesse untersucht und ist damit der Schritt zurück zu einer rein neuronalen Architektur gemacht worden. Prof. Ramacher und Mitarbeiter (ab April 1999 bei Corporate Research von Infineon Technologies AG, der früheren Halbleiter-Sparte von Siemens) widmeten sich der Entwicklung der grundlegenen Experimente und der Theorie zur Informationsverarbeitung von gepulsten Netzen sowie dem Aufbau der Architektur der oben beschriebenen Erkenntniskette, während Prof. Schüffny und Mitarbeiter (TU Dresden) die Realisierung von dazu passenden Silizium-Chips mit pulsenden Neuronen und dynamischen Synapsen anvertraut war. Im Hauptteil des VisionIC-Projektes führten derweil die Professoren von der Malsburg, von Seelen und Buhmann ihre Bemühungen fort, klassische „Computer Vision“ und neuronale Architektur vorteilhaft zusammenzuführen. Von dieser Spannungslage zwischen Grundlagenforschung und anwendungsorientierter Forschung hat das Teilprojekt sehr profitiert. Einerseits waren die „angewandten“ Forscher frei von dem Zwang, jeden informationsverarbeitenden Prozeß in neuronaler Architektur zu realisieren, und damit in der Lage, schneller zu einer Lösung zu kommen; andererseits zeigten sie dadurch den Stand der Kunst auf, d.h. die Grenzen der robusten Objekterkennung. Und diese Grenzen sind trotz 40 Jahren Computer-Vision-Forschung deutlich wahrnehmbar. Faszinierend war aber auch zu sehen, daß bei Beschränkung des allgemeinen Objekterkennungsproblems auf Gesichter in fester Entfernung, der Anteil der „neuronal“ inspirierten Architektur an der Gesamtarchitektur do-
8
Vorwort
minieren konnte. Insbesondere war die Dynamic Link Architecture von Prof. von der Malsburg [6] ein steter Ansporn für das Teilprojekt, ihre Realisierung auf der Basis von pulsenden Neuronen und dynamischen Synapsen zu suchen. Die Ergebnisse dieses Teilprojektes von „VisionIC“, welches von 2001 bis 2004 lief und vom BMBF gefördert wurde, und nachfolgender Arbeiten sind in diesem Buch wiedergegeben. Uns ist bewußt, daß mit den Darlegungen dieses Buches nur erste kleine Schritte gemacht sind und wir nicht behaupten können, die Architektur des Sehens entschlüsselt zu haben. Wir hoffen jedoch, daß der Leser am Ende uns zustimmen kann, daß wir den Anfang eines Weges gefunden haben, auf dem weitere Erkenntnisse zu erwarten sind. Darüber hinaus war ein Ziel des Buches, die Umrisse einer neuen Disziplin sichtbar werden zu lassen, welche Anwendung, Theorie und Implementierung mit gleichem Gewicht nebeneinander stellt und diese zur Konstruktion künstlicher Gehirne zusammenführt.
0.3 Danksagung Unser Programm hätte nicht umgesetzt werden können und dieses Buch wäre nicht entstanden ohne die Professoren Kohn und Pfleiderer (Universität Ulm), Rückert (Universität Paderborn), Schüffny (Technische Universität Dresden) und die Zuarbeit ihrer Doktoranden und Diplomanden. Ebenso nicht ohne die Kollegen von Siemens bzw. Infineon (abgekürzt durch S bzw. IFX), welche an den oben beschriebenen Projekten mitarbeiteten. Den Aufschrieb der Kapitel 1 und 9 hat Christoph von der Malsburg, der Kapitel 2-8 Ulrich Ramacher besorgt, die Bearbeitung der Kapitel 11-14 hat Jens-Uwe Schlüßler und der Kapitel 15-16 Arne Heittmann übernommen. Die Endredaktion aller Kapitel lag bei Ulrich Ramacher. Mitgewirkt haben in den Kapiteln im einzelnen folgende Personen: Kap. 2: Helge Ludwig (IFX) hat die Muskelsteuerung entwickelt und simuliert. Alle anderen Simulationen sind von Dr. Arne Heittmann (S/IFX) durchgeführt worden; Kap. 3: unzählige Gespräche zur Grundlegung einer Theorie neuronaler Informationsverarbeitung habe ich mit Dr. Wieland Jass (S) geführt; Kap. 4: die effiziente Programmierung der Theorie und Ausführung aller Simulationen hat Jens Harnisch (S/IFX) übernommen; Kap. 5-8: alle neuronalen Netze wurden von Dr. Arne Heittmann (IFX) programmiert, darüberhinaus stammt von ihm die grundlegende Schaltung zur Realisierung der Pulsdifferenzschaltung in Kap. 5 und der Gabor-Wavelets in Kap. 6; Kap. 7-8: auf dem Parallelrechner der Universität Paderborn haben Prof. Rückert, Dr. Ulf Witkowski und Tim Kaulmann einige komplexe Netze zur Merkmalsdetektion und -erkennung simuliert;
0.3 Danksagung
9
Kap. 10-14: unter Anleitung von Jens-Uwe Schlüßler und Prof. René Schüffny (beide TUD) sowie Arne Heittmann (IFX) haben die Doktoranden Jörg Schreiter, Christian Mayr, Holger Eisenreich, Stefan Henker, Daniel Matolin und Jens Döge die Schaltungen und Chips für den Merkmalserkenner und die Merkmalsdetektion entwickelt; Kap. 15: Alexander Kaiser, Andreas Munding, Peter Benkart unter Anleitung von Prof. Kohn und Markus Bschorr unter Anleitung von Prof. Pfleiderer haben die einzelnen Prozeßschritte der 3D-Integration erprobt und erfolgreich getestet; wesentliche Beiträge zu der hier vorgestellten 3D-Stapeltechnik hat Dr. Holger Hübner von Infineon durch seine Vorarbeiten zu SoLID eingebracht. Allen diesen Herren möchten wir herzlichen Dank sagen für die Mitarbeit an unserem Programm – wir waren ein wundervolles Team! Schließlich möchten wir Emeritus Prof. Werner von Seelen (früher Universität Bochum) nennen, welcher unser Programm über mehr als 10 Jahre aktiv begleitete und für dessen konstruktive Kritik wir uns sehr herzlich bedanken. Zuletzt ein Dankeswort an Hr. Ditzinger und Mitarbeiter vom SpringerVerlag, ihre Betreuung und das Verständnis für unsere Wünsche waren vorbildlich.
München, im November 2008
Ulrich Ramacher Christoph von der Malsburg
1 Problematik der Modellierung künstlicher Gehirne Christoph von der Malsburg und Ulrich Ramacher
Die mit Abstand erfolgreichste Version von Informationstechnologie weist das Gehirn auf. Tierische und menschliche Nervensysteme sind flexibel im Umgang mit Unerwartetem, passen sich an, lernen, evolvieren, integrieren sich leicht in soziale Netzwerke, haben eine inhärente Tendenz, Ordnung zu bilden, sind extrem Energie-genügsam und massiv parallel, und sie agieren vor allen Dingen vollständig autonom. In allen diesen Eigenschaften sind sie der Technik weit voraus. Kein Zweifel, daß die Technik von diesem Beispiel profitieren sollte. Nun ist leider unser Wissen um Struktur und Funktion des Nervensystems zwar extensiv, aber noch längst nicht ausreichend, um als direkte Anleitung zum Nachbau zu dienen. Das bereits akkumulierte Wissen setzt jedoch Randbedingungen, die vielleicht schon jetzt deutlich genug sind, um funktionelle Nachkonstruktion in viel versprechende Richtung zu lenken. Im Gegenzug werden die Neurowissenschaften profitieren, da der Versuch technischen Nachbaus erfahrungsgemäß ein sehr scharfes Instrument ist, um tragfähige Hirnfunktionsideen aus der Masse derer auszusondern, die fehlerhaft sind. Das Gehirn ist in seiner neuronalen Grundarchitektur nicht digital und nicht algorithmisch gesteuert, sondern selbstorganisierend. Im Unterschied zum Rechner, der dank seiner digitalen Bauweise ein rein logisch beschreibbares statisches System mit deterministischem Verhalten darstellt, ist das Gehirn ein dynamisches System mit kontinuierlichen, rauschbehafteten „Rechenelementen“ und steht im Verdacht des indeterministischen Verhaltens. Dabei wird das dynamische Verhalten erzeugt durch die ausschließliche Interaktion seiner Rechenelemente untereinander sowie mit äußeren Signalquellen; von einer externen Programmierung kann keine Rede sein, stattdessen organisiert das Gehirn sich selbst. Während der Rechner nur durch die Einsicht des Programmierers gelenkt wird, hat das Gehirn eine inhärente Tendenz zur Selbstorganisation. Um dieses Verhalten zu verstehen, müssen Methoden ähnlich denen der Physik angewendet werden, welche bekanntermaßen die Grundgesetze der lokalen Wechselwirkungen von Teilchen nutzen, um die von einer Masse von Teilchen getragenen makroskopischen Erscheinungen vollständig zu beschreiben. Übersetzt auf die
12
1 Problematik der Modellierung künstlicher Gehirne
„Rechenelemente“ des Gehirns bedeutet dies, die informationsverarbeitenden Funktionen der diversen Gehirnareale und ihrer Submodule aus den Grundgesetzen der Interaktion von Pulsen, Synapsen und Neuronen abzuleiten. Diese Aufgabe hat eine Vielzahl von Disziplinen immer wieder beschäftigt und ist in mehreren Phasen abgelaufen.
1.1 McCullogh–Pitts Modell Die Neuronen in unserem Nervensystem sind komplexe Organismen, direkte, wenn auch entfernte Erben unserer freilebenden, einzelligen Urahnen. Jedes Neuron trägt, wie fast ausnahmslos alle unsere Körperzellen, ein volles Genom von etwa einem GByte mit sich. Wahrscheinlich ist jedes unserer Neuronen an Komplexität jedem heutigen Rechner samt Betriebssystem vergleichbar oder überlegen. Ihre evolvierte Komplexität befähigt sie zu selbständiger Organisation. Diese Fähigkeit kommt allein schon in der Regulierung der Auslastung der Nervenzelle zum Ausdruck [7, 8], einem wichtigen Aspekt im Rahmen der Energieoptimierung [9], und natürlich besonders auch im Rahmen der Lastverteilung von Informationsverarbeitungsaufgaben auf Nervenzellen. Das Gehirn wird als dreidimensionales Gebilde durch seine Bauteile, die Nervenzellen, von innen heraus in einem genetisch gesteuerten Wachstumsprozeß hergestellt. Man kann die Nervenzelle als Äquivalent eines einfachen Mikroprozessors ansehen, und in diesem Sinne ist unser Gehirn mit seinen geschätzten 1011 Nervenzellen und 1015 Verbindungsleitungen ein massiv paralleles, hochvernetztes System. Die einzelnen Bauteile – Zellen, Axonen, Synapsen, Dendritenzweige – sind aktiv regulierte Elemente mit multipel verschachtelten Regelkreisen. Bei der Modellierung des Gehirns besteht deshalb die erste große Herausforderung in der Beschränkung der Komplexität des biologischen Neurons samt Dendrit und Synapsen und damit in der Formulierung eines abstrakten Modells. Ein System partieller Differentialgleichungen, welches die Austauschprozesse der diversen Membrankanäle eines Neurons wiedergibt [10], ist nicht sinnvoll, wenn die informationsverarbeitenden Prozesse einer großen Menge miteinander vernetzter Neuronen untersucht werden sollen. Andererseits darf das Modell nicht zu einfach sein. Im Jahre 1943 haben McCulloch und Pitts eine Formalisierung neuronaler Hirnzellen vorgeschlagen [11], basierend auf diskreter Zeit und binären Signalen, ganz wie im heutigen digitalen Rechner. Die wesentliche Aussage der Veröffentlichung war, daß sich beliebige logische Funktionen auf diese Weise realisieren lassen. Damit können auch die universelle Turing-Maschine (abgesehen von der Unendlichkeit ihres Bandes) und somit sämtliche vorstellbaren Symbolmanipulationsprozeduren durch McCulloch–Pitts-Neuronen implementiert werden. Die undurchdringliche Wand zwischen Geist und Materie schien niedergerissen. Leider ist dieses Bild zu simpel. Offen bleibt die Frage nach dem Ursprung der Schaltung, nach dem Ursprung der zu implementierenden Funktionen und Prozeduren. Wegen ihrer starren synaptischen Verbindungen kön-
1.2 Lernende Netze
13
nen McCulloch–Pitts-Netze ferner nicht als Grundlage von Selbstorganisation dienen.
1.2 Lernende Netze Seit Turing und McCulloch & Pitts wurde die Modellierung des Gehirns und seiner Funktion kraftvoll weiterentwickelt, sowohl in algorithmischer Hinsicht im Rahmen der sogenannten Künstlichen Intelligenz, als auch in neuronaler Sichtweise (d.h. unter Betonung von Selbstorganisation) mit Modellen wie dem Assoziativen Gedächtnis [12, 13, 14] oder den geschichteten Netzwerken [15, 16, 17], letztere unter Namen wie Konnektionismus oder künstliche Neuronale Netze (KNN). Dahinter verbirgt sich eine Vielzahl von Netztypen [18, 19], welche sich allerdings hinsichtlich der wahrzunehmenden Funktion nicht unbedingt unterscheiden müssen. Die zweite Klasse von Neuron-Modellen, welche in dieser Phase sehr populär war, hinsichtlich ihrer Aufklärungskraft die in sie gesetzten Erwartungen nicht erfüllen konnte, sieht von der ursprünglichen Pulsnatur ab, stützt sich auf Pulsmittelwerte und benutzt ein Neuron-Modell, welches aus einem analogen Eingangssignal gemäß einer Sigmoidalfunktion ein analoges Ausgangssignal macht. Die damalige und heutige neuronale Sichtweise legt das Hauptgewicht auf die Erzeugung der interessierenden Strukturen durch (statistisches) Lernen, worunter oft die Soll-Ist-Wert-Angleichung mittels eines Algorithmus zur Fehlerreduzierung verstanden wird. Eine zentrale Rolle spielt dabei synaptische Plastizität: die plastische Veränderung von Verbindungsstärken zwischen Zellen unter der Kontrolle lokal verfügbarer Signale, indem diejenigen Synapsen verstärkt werden, deren übertragene Pulse das Signal der Zielzelle erfolgreich beeinflussen oder vorhersagen. Leider ist das Problem des Lernens aus natürlicher Umgebung damit noch nicht gelöst. An diesem Problem wird die Beschränkung der KNN am konkretesten deutlich. Ein neuronales Netz lernt nur dann effizient, wenn die angebotenen Eingangsmuster nicht viel mehr als 100 oder 200 bit an Information enthalten, und wenn alle Eingangsmuster zum selben Kontext gehören [20]. Wenn diese Grenzen nicht beachtet werden, wächst die Zahl der benötigten Muster und damit die Lernzeit in’s Astronomische. Das liegt daran, daß mit wachsender Muster- und System-Größe die zu findenden signifikanten neuronalen Verbindungen (d.h. solche, die wesentliche strukturelle Beziehungen ausdrücken) in einem immer größeren Meer von insignifikanten Verbindungen untergehen und mit statistischen Mitteln nicht mehr zu identifizieren sind. Der tiefere Grund für diese Schwierigkeit der KNN ist darin zu suchen, daß sie kein Mittel haben, die Zusammengehörigkeit oder Nicht-Zusammengehörigkeit von Neuronen zum Ausdruck zu bringen, geschweige denn in einer gegebenen Situation durch aktive Prozesse zu entscheiden. Dies ist das so genannte Bindungsproblem [21].
14
1 Problematik der Modellierung künstlicher Gehirne
In den 80er Jahren des letzten Jahrhunderts kam es auf der Grundlage dieser erlernten Vernetzung analoger Neuronen zu einem „Sturm auf das Gehirn“ [22]. Insgesamt kann man sagen, daß die KNNs zu einer weitverzweigten Methodik statistischen Schätzens geführt haben und damit breite Anwendung gerade auch im industriellem Rahmen finden, aber die vor 20 Jahren gesteckten Ziele bis heute nicht erreichen: das Gehirn zu verstehen und eine auf Selbstorganisation gegründete Informationstechnologie zu erarbeiten. Insbesondere sind Künstliche Neuronale Netze nur für ein enges Spektrum von Aufgaben einsatzfähig (z.B. Steuern und Regeln [23]), und sie eignen sich nicht für die Konstruktion von komplexen Gesamtsystemen, sondern nur für kleine Subsysteme in algorithmisch betriebenem Rahmen. So kann man für Anwendungen wie Bild- oder Sprachverstehen von einer „neuronalen Lücke“ sprechen, welche bis heute fortbesteht.
1.3 Pulsende Neuronen Nach dem Gesagten sind die KNN der 80er und 90er Jahre nicht geeignet für die Abbildung der kognitiven Architektur des Gehirns. Offensichtlich ist es nötig, die Modelle der Neuronen und Synapsen stärker an den biologischen Vorbildern auszurichten. Statt Signalmittelwerte werden nun Spikes oder ganze Spikefolgen betrachtet und entsprechende Neuronmodelle aufgestellt; auch die Übertragung der verschiedensten Lernalgorithmen oder Varianten der Hebb’schen Regel auf gepulste Neuronen und langsam veränderliche Synapsen ist inzwischen erfolgt [24]. Durch die Berücksichtigung der zeitlichen Signalstruktur ist es möglich, zeitliche Korrelationen zwischen Neuronen zur Kodierung von Information zu nutzen; dies kann zusätzlich zu der Kodierung vermittels Signalmittelwerten bzw. Pulsraten geschehen. Die Existenz eines „zeitlichen Bindens“ und damit die Notwendigkeit zeitlicher Korrelation sind im Gehirn in der speziellen Form synchron pulsender Neuronen experimentell gut bestätigt [25]. Wodurch aber wird eine zeitliche Korrelation herbeigeführt, wie schnell muß sie ablaufen, wie wird sie angezeigt und eingespeist in die Hierarchie der informationsverarbeitenden Module des Gehirns? Was läßt sich mit pulsenden Neuronen überhaupt an visueller Informationsverarbeitung leisten? Auf diese Fragen gibt es zur Antwort sehr viele Hypothesen, aber keine schlüssigen Nachweise in Form von Netzen, welche Neuronen, Synapsen und ihre lokalen pulsbasierten Wechselwirkungen als einzige Ausgangspunkte nehmen und damit diejenige nicht-triviale Erkennungsaufgabe vollbringen, in welcher Merkmalsdetektion, Bindung von Merkmalen zu Objekten und Unterscheidung von Objekten eingebunden sind. Letztlich muß die Orientierung an dieser Objekterkennungskette die Grundlage der Modellierung von Neuronen und Synapsen sein. Denn löst man sich von der Erkennungskette, indem man feinere Modelle von Synapsen und Neuronen aufgreift, als mit der Anwendung in nächster Zeit ausgetestet werden können, so verliert man sich in Spekula-
1.4 Architektur des Sehens
15
tionen über die Funktion größerer neuronaler Netze; und verwendet man als Grundelemente nicht Neuronen und Synapsen, sondern Konglomerate bzw. Abstraktionen dieser, so befindet man sich in der Situation eines Demokrit, welcher Atome forderte, ohne dafür die Möglichkeit des Nachweises zu haben. Eine dieser Abstraktionen sieht folgendermaßen aus. Die Vielzahl neuronaler Module, welche am Sehprozeß teilnehmen, werden durch einen Graphenbaum dargestellt; dieser besteht aus Knoten und schnellveränderlichen, dynamischen Links. Die Knoten können einzelne Neuronen, deren Cluster oder auch Verbände von Clustern darstellen. Sogenannte Links nehmen die Signale von Knoten auf und geben sie an Knoten weiter. Der Prozeß der Graphendynamik besteht dann im wesentlichen darin, aus der großen Zahl von Links eines Knotens zu all den anderen, mit denen er sich im Laufe der Zeit assoziiert hat, die sehr kleine Untermenge derer zu aktivieren (oder offen zu halten), die für den jeweiligen Kontext geeignet sind. Es wird angenommen, daß Links durch schnelle synaptische Verbindungen realisiert sind, welche ihrerseits durch die Auswertung der Korrelation der Signale der verbundenen Neuronen gesteuert werden. Mit diesen Hypothesen und Abstraktionen ist es gelungen, Anwendungen wie die Gesichtserkennung in die industrielle Praxis zu bringen [26]. Dieser Hypothese mangelte jedoch die Bestätigung durch die von unten – Neuronen, Synapsen – nach oben – Cluster, Teilnetze – betriebene Rekonstruktion; insbesondere war der neuronale Mechanismus der Korrelation und ihrer Auswertung bisher nicht geklärt. In diesem Buch nehmen wir ein einfaches Integrate-and-Fire-Neuronmodell und eine einfache gewöhnliche Differentialgleichung für die Synapse zum Ausgangspunkt für den Aufbau der oben beschriebenen Objekterkennungskette. Damit wird die „bottom-up“ gerichtete Konstruktion von Teilnetzen für Merkmalserkennung, Objektbindung und -erkennung geleistet. Die erzielten Ergebnisse scheinen zu bestätigen, daß auf diese Weise die rechte Balance zwischen Einfachheit des Aufbaus und Leistungsfähigkeit der Informationsverarbeitung geschafft wurde.
1.4 Architektur des Sehens Eine erfolgreiche kognitive Architektur wird sich nur im Rahmen praktischer, beispielhafter Anwendungen entwickeln lassen, sei es für Zwecke der Informationstechnologie oder der Neurowissenschaften. Dementsprechend gilt es, eine Funktion des Gehirns mit generischen Zügen herauszugreifen und diese im Detail zu modellieren und zu verstehen. Das Sehen spielt für uns eine zentrale Rolle, und es ist die Forschung in diesem Bereich sehr weit fortgeschritten. Es bietet sich daher als Beispielanwendung an. Außerdem wäre eine erfolgreiche Replikation des biologischen Sehprozesses von großem wissenschaftlichem und wirtschaftlichem Wert. Nun ist Sehen ein sehr komplexer Prozess, bestehend aus vielen miteinander integrierten Teilprozessen, und etwa ein Drittel unseres Gehirns ist damit
16
1 Problematik der Modellierung künstlicher Gehirne
beschäftigt. Wir konzentrieren uns daher in diesem Buch lediglich auf zwei dieser Teilprozesse, Bildsegmentierung und Objekt-Erkennen. Wir können uns dabei auf die Ergebnisse mehrerer Jahrzehnte von Forschung im Rahmen der Neurophysiologie, Psychologie und technischen Bildverarbeitung stützen. Eine zentrale Rolle spielt die Extraktion von lokalen Bildmerkmalen, und hierbei haben sich Gabor-artige Wavelets als sehr relevant herausgestellt [27, 28]. Wichtig ist auch das Wissen um eine Hierarchie von kortikalen Arealen [29], die verschiedene Bildaspekte wie lokale Form, Farbe oder Bewegung betonen und die eine Progression hin zu immer invarianteren Darstellungen realisieren, siehe etwa [30]. Der Sehprozeß des Menschen ist sequentieller Natur, indem selektive Aufmerksamkeit sich einem Strukturstück (kohärenten Objekt, Objektteil o.ä.) nach dem anderen zuwendet und das gesamte System jeweils seine Ressourcen koordiniert, um dieses Strukturstück zu analysieren und darzustellen. Wichtiger Aspekt dieses Prozesses ist die Segmentierung, d.h. die Abtrennung des Strukturstücks vom Hintergrund. Die Zusammenfassung aller Teile eines Strukturstücks zu einem Ganzen wird oft als kanonisches Beispiel des Bindungsproblems gesehen [31, 32], und es gibt zahlreiche Modelle, die dieses Problem durch zeitliche Signalkorrelation zu lösen vorschlagen, siehe etwa [33, 34, 35, 36]. Beispielhaft für Probleme der Systemorganisation bzw. -architektur ist das Problem der invarianten Erkennung. Die Erscheinung eines Objekts im Bild oder auf der Retina des Auges variiert, und das System muß das Objekt unabhängig von Translation, Skalierung, Rotation, Deformation, Teilverdeckung, Beleuchtung oder Signalrauschen erkennen und in seiner Struktur invariant darstellen, so daß andere Teilsysteme (Sprache, motorische Steuerung etc.) unabhängig von Bildvariation darauf reagieren können. Ein früher Vorschlag zur Lösung des Problems der Translationsinvarianz [15] spricht von vier Systemschichten. Die erste Schicht ist die Bilddomäne, eine zweidimensionale Mannigfaltigkeit besetzt mit Punktdetektoren. Die zweite Schicht enthält variante Merkmale: neuronale Einheiten, die lokale Muster oder „Merkmale“ extrahieren (etwa Gabor-Wavelets), wobei jede dieser Einheiten spezifisch ist sowohl im Sinne von Merkmalstyp als auch Ort. Die dritte Schicht enthält jeweils nur noch eine Einheit pro Merkmalstyp, die aktiviert wird, wenn mindestens eine Einheit dieses Typs in der zweiten Schicht aktiv ist. Auf diese Weise stellt die dritte Schicht ein gesehenes Objekt als unstrukturierte Liste von Merkmalen dar, die auf das Objekt zutreffen. Die vierte Schicht enthält Einheiten, deren Verbindungen von der dritten Schicht so strukturiert sind, daß sie selektiv auf bestimmte Mengen von Einheiten der dritten Schicht, also auf bestimmte Mengen von invarianten Merkmalen, reagieren. Wenn der in der zweiten und dritten Schicht realisierte Satz von Merkmalen differenziert genug ist, dann reagieren die Einheiten der vierten Schicht selektiv auf einen Objekttyp. Systeme dieser Art werden üblicherweise merkmalsbasiert genannt.
1.5 Die Schritte des Konstruktionsprozeß
17
Der merkmalsbasierte Ansatz hat mehrere fundamentale Probleme. Erstens ist es ein ungelöstes, oder vielleicht unlösbares, Problem, einen Merkmalssatz so zu definieren, daß keine zwei zu unterscheidenden Objekte dieselben Merkmale, wenn auch in verschiedener Anordnung enthalten. Dieses Problem wird entscheidend erschwert, wenn keine akkurate Segmentierung erfolgt ist und Merkmale des Hintergrunds mit aktiviert werden, und es wird noch entscheidender erschwert, wenn Invarianz nicht nur gegen Translation, sondern auch Skalierung und Rotation gefordert wird, so daß auf dem Weg von der zweiten zur dritten Schicht Merkmale verschiedener Größe und Orientierung miteinander identifiziert werden. Das Problem der Definition eines Merkmalssatzes muß angesichts der Komplexität der visuellen Umwelt durch Lernen gelöst werden. Dieser Versuch führt allerdings direkt zu einem zweiten Problem des merkmalsbasierten Ansatzes, dem Henne-Ei Problem, geeignete Merkmale nur nach ihrem Beitrag zum Erfolg der Objektdiskriminierung auswählen zu können, während aber Objektdiskriminierung ohne geeignete Merkmale nicht möglich ist. Ein drittes Problem mit dem merkmalsbasierten Ansatz ist die Strukturlosigkeit der invarianten Objektdarstellung in der dritten (oder gar vierten) Schicht, die es dem Rest des Systems unmöglich macht, etwa die relative Lage von Merkmalen wahrzunehmen: auf dem Weg von der zweiten zur dritten Schicht ist das Kind – die Objektstruktur – mit dem Bade – der Objektposition – ausgeschüttet worden. Es sind zahlreiche Versuche unternommen worden, die Probleme des merkmalsbasierten Ansatzes zu lösen. Ein Vorschlag, das Neocognitron von Fukushima [37] (wiederbelebt in [38]), betrifft die Einführung einer Vielzahl von Schichten, die eine Progression von Merkmalstypen enthalten, die graduell komplexer und invarianter werden. Dieser Vorschlag löst vielleicht das erste der genannten Probleme, nicht jedoch das zweite und dritte.
1.5 Die Schritte des Konstruktionsprozeß Universelle Merkmalsdetektion Es wurde gezeigt, daß Gabor-Wavelets die an sogenannten einfachen Zellen im visuellen Kortex V1 gemessenen Pulsraten mit großer Genauigkeit approximieren [28]. Wir stellen eine echtzeitfähige 6-schichtige Netzarchitektur vor, welche die Pulsraten der „simple cells“ sehr genau reproduziert. Dieses Netz ist zusammengesetzt aus konstanten und dynamischen Synapsen und besitzt in der letzten, 6. Schicht nur ein einziges Neuron. Das Merkmalsprofil repräsentiert sich dabei nicht in einer Gewichtung der Pixel, sondern in der Ankopplung an ausgesuchte Pixel. Die Übereinstimmung der so erzeugten Gabor-Wavelets mit den mathematischen ist frappant. Über die GaborWavelets hinaus können mit dem vorgestellten Netz beliebige Merkmale erfasst werden. Verbunden mit der Retina, stellen wir uns die verschiedenen Typen von Gabor-Wavelets auf je einer Fläche angeordnet und diese übereinander ge-
18
1 Problematik der Modellierung künstlicher Gehirne
stapelt vor. Die von einem Bild verursachte Vielfalt der Pulsantworten der Gabor-Wavelet-Module in allen Flächen wird im nächsten Schritt invariant selektiert. Robuste Merkmalserkennung Als Zone bezeichnen wir das Retinagebiet der möglichen Erscheinung eines Merkmals, wenn sich das zum Merkmal gehörige Objekt in der Eingangsschicht in seiner Referenzposition befindet, etwa ein Kopf in Sehfeld-füllender Entfernung als Objekt, eine Braue als Objektkomponente bzw. Merkmalszone. (Zu dem Problem, mit größeren Verschiebungen des Objektes in der Bildebene fertig zu werden, siehe Kapitel 16.) Jedes Detektor-Ausgangsneuron eines Merkmalstyps ist mit einem Erkennungsneuron unidirektional vernetzt, während die Erkennungsneuronen untereinander i.a. weder vollständig noch einfach nächstnachbarlich vernetzt sind. In der Regel sind ebenso viele Erkennungsneuronen in der Zone untergebracht als Merkmalsdetektoren. Unabhängig von der Lage und Form des Merkmals in seiner Zone und unabhängig von der Beleuchtungsstärke synchronisieren sich vollkommen autonom diejenigen Neuronen der Erkennungsschicht, welche „über“ den Neuronen der Detektorschicht liegen, die das Merkmal detektiert haben. Robuste Objektdetektion Jedem Objekt (in Referenzposition zur Retina) ordnen wir eine Anzahl von Zonen zu, in welchen je ein einziges oder mehrere Merkmale erscheinen können; im letzteren Falle werden verschiedene Merkmale zu einer Objektkomponente zusammengebunden. Die Anzahl der Zonen eines Objektes wächst im allgemeinem mit der Anzahl der zu unterscheidenden Objekte. Im nächsten Schritt binden wir die zu einem Objekt gehörigen Objektkomponenten bzw. Zonen zusammen. Nur wenn genügend viele Gabor-WaveletModule die Merkmalscharakteristik des betrachteten Objekts in den einzelnen Zonen erfasst haben, kann der Objektdetektor anschlagen. Auf diese Weise lassen sich Köpfe detektieren, auch wenn sie unterschiedliche Mimik und Pose, Lage und Helligkeit aufweisen. Potential und Grenzen dieses Vorgehens werden im Kapitel 8 erörtert.
1.6 Zusammenfassung Die Verfügbarkeit eines sehr schnellen neuro-synaptischen Bindungsmechanismus, welchen wir in Kapitel 5 vorstellen, macht eine andere Lösung des Invarianzproblems möglich als von Rosenblatt vorgeschlagen: die korrespondenzbasierte Erkennung. In unserem Ansatz ist die räumliche Anordnung der Merkmale, die in der zweiten Schicht (Merkmalsdetektion) explizit vorhanden ist, auf dem Weg zur dritten Schicht (Merkmalserkennung) beibehalten worden und dort dargestellt. Für jedes zu erkennende Objekt ist also in der
1.6 Zusammenfassung
19
dritten Schicht ein zweidimensionales Netz von merkmalsspezifischen Knoten vorhanden, das die im Objekt vorhandenen Merkmale in derselben Anordnung wie im Bild enthält. Der Kontrast zum merkmalsbasierten Ansatz besteht also nicht, wie die etwas unglückliche Namensgebung nahelegt, im Verzicht auf Merkmale, sondern auf der Darstellung und Erhaltung von Merkmalsanordnung. Damit wird die dritte Schicht zu einer komplexen Modelldomäne, mit je einem Satz von Merkmalsnetzen für jedes Objekt. Die vierte Schicht bindet die Merkmalssätze zu je einem Objekt zusammmen. Im Erkennungsvorgang muß sowohl das richtige Netzwerk als auch ein ganzes System von Punkt-zu-PunktKorrespondenzen zwischen den Knoten des Netzes und Merkmalseinheiten der zweiten und dritten Schicht aktiviert werden. Korrespondenzen werden hierbei durch dynamische Synapsen vermittelt: Sie bewirken die Synchronisation der Pulsaktivität von Knoten in der dritten Schicht. Die genannten Probleme des merkmalsbasierten Ansatzes werden im korrespondenzbasierten System durch dynamische Synapsen in natürlicher Weise gelöst, insbesondere das erste (Anordnungsvieldeutigkeit) und das dritte durch explizite Darstellung räumlicher Objektstruktur. Auch das zweite Problem wird zumindest entscheidend reduziert, indem das System bereits mit einem einfachen Standardsatz von Merkmalen, etwa Gabor-Wavelets, Objekte eindeutig erkennen kann, ohne Merkmals-Lernen in Anspruch zu nehmen. Das genannte Henne-Ei Problem tritt also nicht auf. In den Kapiteln 5–8 werden die Details der einzelnen Schritte des Konstruktionsprozesses behandelt. In Kapitel 16 wird die neuronale Architektur der kompletten Erkennungskette samt Merkmalskaskade mit 8 Orientierungen und 5 Auflösungsebenen in allen Einzelheiten sowie eine Implementierung in 3D-Technologie vorgestellt. In Kapitel 9 gestatten wir uns einen Ausblick auf offene Fragen zur invarianten Objekt- und Szenenerkennung.
2 Informationsverarbeitung in Netzen mit konstanten Synapsen Ulrich Ramacher und Arne Heittmann
In diesem Buch wird der Versuch unternommen, ein künstliches Sehsystem mit Ähnlichkeit zum menschlichen Gehirn zu konstruieren, welches komplette Bilderkennungsaufgaben ausführen kann, d.h. solche, welche Merkmalsextraktion, Bindung von Merkmalen zu Objekten und Objekterkennung umfassen. Die Ähnlichkeit sehen wir durch die Verwendung möglichst einfacher Neurone und Synapsen sowie durch die Beschränkung nur auf diese gegeben: eine Beifügung von Algorithmen zusätzlich zu den Neuron und Synapse definierenden Algorithmen versagen wir uns. Dementsprechend wird das Signalverhalten von biologischen Neuronen und Synapsen gerade so weit abstrahiert, daß noch die besagten anspruchsvollen Bilderkennungsaufgaben auszuführen sind. Genauer gesagt, es werden künstliche Neuronen betrachtet, welche bei Erreichen eines Schwellwertes einen Puls abfeuern und für die Dauer des Sendens das Membranpotential auf null setzen. Nach der Sendephase beginnt die Akkumulationsphase, dabei können externe Eingangssignale an jedem Neuron anliegen, insbesondere aber auch die synaptisch gewichteten Pulssignale anderer Neuronen. Es wird ferner angenommen, daß die Synapsen unter dem Einfluß der lokal anliegenden Signale (beispielsweise eines einkommenden Pulses und des anliegenden Membranpotentials) ihre Stärke verändern können. Von entscheidender Bedeutung für unseren Ansatz sind sowohl die Experimente als auch die Theorie. Unter Experimenten verstehen wir Simulationen von Pulsneuronen, Synapsen und daraus zusammengesetzten Netzen auf Rechnern, wobei immer wieder nur die einmal ausgewählten Signalgleichungen verwendet werden, welche die Dynamik der Synapsen und Pulsneuronen definieren. Unter Theorie eine quantitative Modellierung der in den experimentellen Messgrößen zum Ausdruck kommenden Zusammenhänge. Erst nachdem wir grundlegende Experimente und Theorie zum Einklang gebracht haben, beginnen wir mit der Konstruktion von Merkmalsdetektoren und arbeiten uns in der Erkennungskette hoch. Ziel dieses Kapitels ist zunächst die Aufstellung der Signalgleichungen für Pulsneurone und Synapsen. Sodann spezialisieren wir uns auf Synapsen mit
22
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
konstanten Gewichten und betreiben ausgiebig die experimentelle Beantwortung der Frage, was Information darstellt und wie sie verarbeitet wird. Das Studium des allgemeinen Falls der dynamischen Synapsen wird in Kapitel 5 wieder aufgenommen. Dieses Kapitel dient nicht der Einführung von Neuronen und Synapsen; dazu sei auf die einschlägige Literatur verwiesen [39, 40, 41]; siehe auch Kapitel 10.
2.1 Allgemeine Signalgleichungen für Pulsneuron und Synapse Von den N Neuronen mögen zur Zeit t0 σ Neuronen Pulse aussenden und ε andere diese Pulse empfangen; dabei gilt immer: σ + ε = N , für σ, ε = 0 . . . N . Die Pulsform kann beliebig kompliziert vorgegeben werden: beispielsweise als Kombination von aufsteigenden und abfallenden Exponentialfunktionen oder als Folge solcher Funktionen. Für unsere Bilderkennungsaufgaben reichen jedoch schon Rechtecksignale: alle Pulse dauern td Sekunden (im nachfolgenden mit 1 ms Pulsdauer festgesetzt) und sie haben eine konstante Amplitude x; mit x(t) sei die Zeitfunktion des Pulses bezeichnet. Es bezeichne ferner E(t0 ) die Menge der zur Zeit t0 empfangenden Neuronen und S(t0 ) die zu dieser Zeit sendenden. Der Anfangszustand des Netzes zur Zeit t0 ist gegeben durch die verstrichenen Sendezeiten ∆s (t0 ), s ∈ S(t0 ) sowie durch die bis zu diesem Zeitpunkt von den empfangenden Neuronen aufsummierten Membransignale ae (t0 ), e ∈ E(t0 ). Schließlich sind noch die augenblicklichen Signalwerte in (t0 ), n = 1 . . . N , des äußeren Inputs und der Synapsen Wes (t0 ) bzw. We0 (t0 ) zu verzeichnen; in können auch Pulssignale sein. Dabei bezeichnet Wes bzw. We0 die Synapse, welche das Pulssignal des s-ten Neurons zum e-ten Neuron bzw. das e-te Eingangssignal zum e-ten Neuron leitet. Als Signalgleichungen für Empfangen und Senden eines Neurons werden angesetzt1 : (1) sobald ein Neuron (es sei das e-te) nicht mehr sendet und solange es noch nicht den Schwellwert θ erreicht hat, bezeichne 1
Wählen wir Neuron- und Eingangssignale sowie den Schwellwert als dimensionslose Größen, so müssen die Synapsen die Dimension Hz haben. Hierbei ist darauf zu achten, ob man die Einheit mit der Sekunde oder mit der Millisekunde festlegt; in diesem Buch benutzen wir die Millisekunde als Einheit, so daß die Synapsen in Kilohertz angegeben sind. Der Bequemlichkeit zuliebe unterdrücken wir die Dimensionsangabe.
2.2 Zerlegungen und ihre zeitliche Entwicklung
0 ≤ ae (t) :=
Z
t
t0
X
s∈S(t0 )∩Ne
23
Wes (t′ ) xs (t′ ) + We0 (t′ ) ie (t′ ) dt′ +ae (t0 ) ≤ θ
(2.1a) den akkumulierten Signalwert des e-ten Neurons zur Zeit t. Hierbei bezeichnet Ne die Menge der Neuronen, welche mit dem e-ten Neuron verbunden sind (wir nehmen im weiteren zeitlich konstante Verbindungsstrukturen an). (2) sobald ein empfangendes Neuron den Schwellwert erreicht oder solange ein sendendes Neuron nicht aufgehört hat zu senden, gelte: 0 < xs (t)
für t0 < t ≤ t0 + td − ∆(t0 )
(2.1b)
Wir heben hervor, daß wir keinen Zerfallsterm für das akkumulierende Neuron einführen, da wir es für die in diesem Buch ins Auge gefassten Bilderkennungsaufgaben nicht benötigen. Selbstverständlich gehen wir davon aus, daß komplexere Bilderkennungsaufgaben eine Ergänzung unseres Neuronmodells und des noch zu besprechenden Synapsenmodells nötig machen werden. Um die durch eine Ergänzung zustandekommende neue Informationsverarbeitungsqualität jedoch klar hervortreten lassen zu können, entfernen wir jeden noch so gewohnten Term in den Signalgleichungen, wenn wir ihn nicht benötigen. Wir benötigen noch eine Gleichung zur Beschreibung der Synapse. Da nur lokale Wechselwirkungen zwischen Neuronen und Synapsen betrachtet werden, wird als allgemeine synaptische Gleichung angesetzt: dWes (t) = −γ · Wes (t) + Q(ae (t), xs (t)) für e ∈ E(t), s ∈ S(t) dt dWes (t) = −γ · Wes (t) für e, s ∈ E(t) , dt
(2.1c)
wobei Q eine Funktion (oder auch ein Funktional) der Sende- und Membransignale und γ eine Zerfallskonstante ist. In den späteren Kapiteln werden auch an Dendriten gelagerte Synapsen betrachtet, welche statt des Membranpotentials ein lokales Synapsenpotential verwenden (natürlich kann Gleichung (2.1c) auch für die Eingangssynapsen aufgestellt werden). Wie ersichtlich, gehorchen die Synapsen einer verallgemeinerten Hebb’schen Dynamik; ihre genaue Ausprägung, die entscheidend für den erfolgreichen Einsatz ist, werden wir erst in Kapitel 5 angeben.
2.2 Zerlegungen und ihre zeitliche Entwicklung Erreicht irgendein ae (t) den Schwellwert θ zur Zeit t = te , so geht das e-te Neuron in den Zustand des Sendens über, und damit hört die Größe ae (t)
24
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
auf zu existieren. Gleichzeitig hat sich die Zerlegung in empfangende und sendende Neuronen geändert. Ebenso ändert sich die Zerlegung, wenn eines der Neurone mit Senden aufhört: statt des Sendesignals existiert nun ein Membransignal, welches immer bei null beginnt – im Gegensatz zu ae (t0 ), welches als Anfangswert i.a. von null verschieden ist. Der Zeitpunkt des Übergangs von einer Zerlegung in die nächste kann auf eindeutige Weise bestimmt werden, wobei äußere Signale und Synapsen irgendwelche zeitliche Funktionen sein können. Bezeichne dazu τs (t0 , t) = t0 + td − ∆s (t0 ) − t
(2.2a)
τ0 = td − ∆x (t0 ) bzw. tf (0) = t0 + τ0
(2.2b)
die aktuelle verbleibende Lebenszeit des s-ten Sendeneurons zum Zeitpunkt t. Irgendeines der Sendeneuronen (angenommen das x-te) weist die kleinste Lebenszeit auf. Wenn kein Empfängerneuron früher den Schwellwert erreicht, ist die Lebenszeit der ersten Zerlegung dadurch bestimmt, daß τx (t0 , t) zu null wird. Als Lebensdauer τ0 bzw. Endzeitpunkt tf (0) der initialen Zerlegung ergibt sich dann in explizierter Form:
Ebenso wird die aktuell geschätzte verbleibende Lebenszeit τe (t0 , t) des e-ten Empfängerneurons durch θ − ae (t0 ) τe (t0 , t) := − 1 · (t − t0 ) (2.2c) ae (t) − ae (t0 ) definiert. Irgendeines der Empfängerneurone weist momentan die kleinste Lebenszeit auf; allerdings kann im nächsten Moment ein anderes die kleinste Lebenszeit erhalten. Wenn kein Senderneuron früher ablebt als ein Empfängerneuron den Schwellwert erreicht, ist die Lebenszeit der ersten Zerlegung dadurch bestimmt, daß das Minimum über alle Lebenszeiten τe (t0 , t) zu irgendeiner Zeit t zu null wird. Das Empfängerneuron mit Lebenszeit null werde wieder mit x bezeichnet. Als Lebensdauer τ0 der ersten Zerlegung ergäbe sich dann in implizierter Form: τ0 = (t − t0 ) ⇔ θ − ax (t) = 0
(2.2d)
Es muß also in jeder Zerlegung zu jeder Zeit t das über alle Empfänger- und Sendeneuronen genommene Minimum der Lebenszeiten τe (t0 , t) und τs (t0 , t) berechnet werden, um den Umschaltpunkt von einer Zerlegung in die nachfolgende zu berechnen. Diese Prozedur der Berechnung von Lebensdauer und Endzeitpunkt einer Zerlegung bleibt unverändert, auch wenn eine weitere Gleichung für die synaptische Aktivität hinzutritt. Auf diese Weise kann von Zerlegung zu Zerlegung fortgeschritten werden, wobei zu beachten ist, daß keine Zerlegung – mit Ausnahme derjenigen, in welcher alle Neuronen empfangen – länger als die Dauer eines Pulses leben kann. Die Vermutung liegt nahe, daß die durchschnittliche Dauer einer Zerlegung mit der Zahl der Neurone abnimmt.
2.3 Experimente mit konstanten Synapsen
25
Abbildung 2.1 bestätigt diese Vermutung. Da mit der Steigerung der Neuronzahl in einem vollvernetzten Netz die Zahl der Pulse, welche bei jedem Neuron eingehen, sehr schnell wächst, sind die Synapsen in Abbildung 2.1 so normiert worden, daß das Produkt aus Neuronzahl N und mittlerem Synapsenwert W konstant ist. Dabei ist dem mittleren Synapsenwert W das Werteintervall [0, 2W ] zugeordnet und angenommen, daß die Synapsen gleichverteilt sind.
Abb. 2.1 Lebenszeit der Zerlegungen als Funktion der Neuronenzahl Die Inspektion von (2.1a) zeigt, daß die Signaldynamik erhalten bleibt, wenn von dem Satz (Wes , We0 , ae (t0 ), θ) zu (Wes /θ, We0 /θ, ae (t0 )/θ, 1) übergegangen wird. Im Nachfolgenden setzen wir den Schwellwert immer auf 1, d.h. wir entledigen uns eines überflüssigen Parameters. Da eine wichtige Klasse von Netzen durch solche gegeben ist, in welchen die Synapsen durch konstante Werte bzw. feste Zeitfunktionen dargestellt werden, beginnen wir das Studium der Informationsverarbeitung mit diesem Fall.
2.3 Experimente mit konstanten Synapsen Wir betrachten ein Netz von 11 Neuronen, welche alle miteinander vernetzt sind und von denen jedes ein Eingangssignal über eine Synapse mit dem Wert 0.1 zugeleitet bekommt. Die Eingangssignale haben zufällig gewählte feste Werte zwischen 0 und 1, und die die Neurone miteinander verbindenden Synapsen weisen den Mittelwert 0.081 und eine Streuung von 34% auf. Die Zeitdauer td eines Pulses ist auf 1 ms gesetzt. Wird nun das Netz aktiviert, d.h. werden die Signalgleichungen (2.1a–c) für jedes der 11 Neurone berechnet, so erhält man für jedes Neuron eine Folge von Pulsen.
26
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
Abbildung 2.2 stellt die Pulsaktivität der 11 Neurone im Zeitintervall [4000ms, 4200ms] dar. Da sich an Abbildung 2.2 eine Charakterisierung der
Abb. 2.2 Pulsaktivität als Funktion der Zeit Pulsaktivität nicht leicht ablesen läßt, untersuchen wir die Zeitabstände zwischen den Pulsen eines Neurons (im engl. als Inter-Spike-Intervall (ISI) bezeichnet) als Funktion der Zeit (Abbildung 2.3).
Abb. 2.3 Inter-Spike-Interval eines Neurons als Funktion der Zeit
2.3 Experimente mit konstanten Synapsen
27
Es scheint sich aber auch hier keinerlei Regelmäßigkeit zu zeigen, so daß wir schließlich das Histogramm dieser Zeitabstände für jedes der 11 Neurone aufzeichnen; nach 100000 Pulsereignissen zeigt es keinerlei Änderung mehr (Abbildung 2.4). Offensichtlich signalisieren die ISI-Histogramme keine Periodizitäten, sondern einen breit verteilten Wertebereich.
Abb. 2.4 ISI-Histogramm einiger der 11 Neuronen Schließlich interessieren wir uns noch für die Häufigkeit, mit der eine Zerlegung auftritt (im engl. als joint distribution function bezeichnet) (Abbildung 2.5). Dabei sind die Zerlegungen auf der x–Achse so angeordnet, daß ganz links die Zerlegung steht, in welcher alle Neurone empfangen. Dann folgt die Gruppe der Zerlegungen, in welcher ein Neuron sendet; dann die mit zwei sendenden Neuronen, und schließlich ganz rechts die Zerlegung, in welcher alle Neurone senden. Innerhalb einer Gruppe von Zerlegungen mit beispielsweise 2 sendenden Neuronen ist die Anordnung der Größe nach geordnet, d.h. so, daß (1, 2) vor (1, 3), (2, 3) usw. steht2 . Die von links nach rechts im Mittel abfallende Häufigkeitsverteilung in Abbildung 2.5 zeigt, daß bei den gegebenen Parametern das Netz überwiegend empfängt und die Sende-Aktivität schwach ist. Wird dagegen der Mittelwert W der die Neurone verbindenden Synapsen oder der Mittelwert w 2
Die so definierte Anordnung von Zerlegungen ist in keiner Weise ausgezeichnet, so wenig wie die Anordnung der Häufigkeitswerte nach ihrer Größe. Im letzteren Fall erhält man zwar eine glatte Kurve, aber die dadurch entstandene Anordnung der Zerlegungen ist nicht direkt ersichtlich, weshalb wir die beschriebene Gruppendarstellung vorziehen.
28
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
Abb. 2.5 Häufigkeitsverteilung der Zerlegungen der Eingangssynapsen erhöht, so nimmt die Zahl der sendenden Neurone im Zeitdurchschnitt sehr schnell zu. Abbildung 2.6 gibt die Häufigkeitsverteilung der Zerlegungen für (W = 0.18, w = 0.1) wieder: wir sehen, daß sie etwa horizontal verläuft. Wird W
Abb. 2.6 Häufigkeitsverteilung für W = 0.18, w = 0.1
2.3 Experimente mit konstanten Synapsen
29
immer größer gemacht, so wird die durchschnittliche Dauer der Empfangszeit eines Neurons kleiner als die Dauer eines Pulses; d.h. die Neurone feuern gleich nach dem Erlöschen des letzten Pulses wieder. Folglich nimmt die Zahl der zum Membranpotential eines Neurons beitragenden Pulse aus früheren Zerlegungen sehr stark ab: die Durchmischung mit Information über die Sendetätigkeit im Netz wird geringer. Dies bedeutet, daß nicht mehr alle Zerlegungen vorkommen können. Abbildung 2.7 zeigt, daß zum linken Teil der x-Achse hin die Häufigkeitsverteilung bei vielen Zerlegungen verschwindet, und dies liegt nicht daran, daß zu wenig Zeit für die Simulation aufgewandt wurde: sie kommen einfach nicht mehr vor. Bei solch hoher Pulsaktivität kann das Eingangssignal die Häufigkeitsverteilung nur noch wenig beeinflussen.
Abb. 2.7 Häufigkeitsverteilung für W = 0.81, w = 0.1 In Abbildung 2.8 sind die die Eingangssignale aufnehmenden Synapsen von 0.1 auf 0.5 gesetzt; zwischen Abbildung 2.7 und 2.8 gibt es nur sehr geringe Unterschiede, ihre Häufigkeitsverteilungen sind praktisch gleich. Offensichtlich sind solche „heissen“ Netze für die Informationsverarbeitung unbrauchbar.
30
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
Abb. 2.8 Häufigkeitsverteilung für W = 0.81, w = 0.5 Ab wann ein Netz zu „heiß“ wird, können wir klar festlegen. Dazu betrachten wir die Pulsabstände zweier Neurone über eine genügend lange Zeit T . Das Histogramm dieses Inter-Spike-Intervall zwischen zwei Neuronen ist in Abbildung 2.9 und 2.10 für drei repräsentative der aus 11 Neuronen zusammenstellbaren 55 Paare als Funktion der Werte W = (0.081, 0.18, 0.81) aufgezeichnet (bei festem w = 0.1).
Abb. 2.9 ISI zwischen 2 Neuronen. 3 Paare; W = 0.081, w = 0.1
2.3 Experimente mit konstanten Synapsen
31
Abb. 2.10 dito, ausgeprägte Musterbildung sichtbar Wir sehen, wie mit steigenden Mittelwert der Synapsen die noch bei W = 0.018 andeutungsweise vorhandene Gleichverteilung immer mehr verschwindet. Dies bedeutet, daß eine beobachtbare räumlich-zeitliche statistische Regelmäßigkeit vorliegt, welche wir als Musterbildung bezeichnen wollen. Als „kaltes“ Netz definieren wir ein Netz, in welchem der Maximalwert des Histogramms aller Paare im Intervall [0, 0.05] liegt. Liegt dieser Maximalwert bei gegebenem W nicht in diesem Intervall, so ist W zu verkleinern, bis er im angegebenen Intervall liegt. Wiederholt man die zu den Abbildung 2.2 bis 2.10 führenden Experimente für verschiedene Werte von Synapsen und Anfangswerte, so bekommt man für ausreichend niedrige Mittelwerte W bzw. w immer wieder das beschriebene Verhalten: (1) Bei konstantem Input und konstanten synaptischen Verbindungen antwortet das Netz nicht mit dem Pulsmuster einer einzigen Zerlegung oder der periodischen Wiederholung der Pulsmuster von bestimmten Zerlegungen. Vielmehr werden Pulsmuster beliebiger Zerlegungen erzeugt, welche mit unterschiedlicher Häufigkeit auftreten. (2) Ist in der Zeitspanne T die Verteilung der Pulsmuster von der Dauer T der Aufzeichnung abhängig, so kann die Zeitspanne solange vergrößert werden, bis eine stationäre Verteilung erreicht ist. (3) Die aufgezeichneten stationären Verteilungen sind geringfügig abhängig von den Anfangswerten, mit denen das Netz startet. (4) Die betrachtete Signaldynamik ist nicht umkehrbar in der Zeit: von den Pulsen der aussendenden Neuronen kann nicht zurückgeschlossen werden auf die an der vorangegangenen Akkumulation beteiligten früheren Pulse. Diese Beobachtungen geben Anlaß zu der Vermutung, daß die Statistik der vom Netz produzierten Signale die einzig reproduzierbaren Meßgrößen liefern kann.
32
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
2.4 Entropie als informationsübertragende Funktion Eine der zentralen Fragen dieses Buches ist die nach der informationsübertragenden Funktion eines Netzes. Wir verstehen darunter nicht diejenige Funktion, welche zu jedem Zeitpunkt den Signalwerten der Eingänge die Signalwerte der sendenden Ausgangsneurone zuordnet. Denn liegen etwa zu einem bestimmten Zeitpunkt konstante Signale an den Eingängen eines Netzes an; dann werden in der Regel sehr viele Zerlegungen durchlaufen, so daß dem konstanten Eingangssignal eine Menge von Pulsvektoren zuzuordnen wäre. Weiterhin zeigt die Beobachtung, daß es einige Zeit dauern kann, bis das Netz mit einer neuen Zerlegung reagiert, wenn der Eingang sich ändert. Es kann also die informationsübertragende Funktion eines Netzes nicht eine Zeitfunktion sein, welche zur Zeit t Eingangssignale auf Ausgangspulsmuster abbildet. Sondern es muß über eine bestimmte Zeit die Wirkung der Eingangssignale auf das Netz verfolgt und Mittelwerte zur Charakterisierung gefunden werden. Wie obige Experimente zeigen, lassen sich über eine Zeitspanne T konstant gehaltene Eingangssignale einer stationären Verteilung von Zerlegungen des Netzes zuordnen. Besitzt das Netz N Neuronen, so stellt der Logarithmus der Verteilung einer beliebigen Zerlegung + log2 (N ) die Nachricht über diese Zerlegung dar. Als Wissen oder Information über die Erscheinungsvielfalt der Zerlegungen eines Netzes wird der Erwartungswert der Nachricht, d.h. die mit der Verteilung gewichtete Nachricht eingeführt. Das maximale Wissen, log2 (N ), ist erreicht, wenn die Lösungen der Signalgleichungen (2.1a–c) bekannt sind. Das maximale Wissen minus dem aktuellen Wissen wird üblicherweise als Nicht-Wissen bzw. Entropie bezeichnet. Ist sie klein, ist das Wissen um die Erscheinungsvielfalt der Zerlegungen im Netz groß, und umgekehrt. Somit könnten wir den konstanten Eingangssignalen die Entropie des Netzes zuordnen. Um sicher zu sein, daß diese Wahl zum Ziel führt, müssen wir noch ein Experiment nachholen, in welchem statt konstanter Eingangssignale eine Pulsfolge an jedem Eingangsneuron anliegt, denn wir werden Netze miteinander verbinden müssen, um zu intelligenten Funktionen zu kommen. Wir überprüfen deshalb, ob eine eingangsseitige stationäre, von einem ersten kalten Netz in der Zeitspanne T erzeugte Häufigkeitsverteilung von Zerlegungen das zweite Netz wieder mit einer stationären Häufigkeitsverteilung von Zerlegungen antworten läßt. Dies ist in der Tat der Fall, wie Abbildung 2.11 zeigt. Seien pi bzw. pa die stationären Häufigkeiten, mit denen die eingangsseitigen bzw. ausgangsseitigen Zerlegungen erscheinen, so bezeichnen die Ausdrücke X X pi · ln pi bzw. Sout = − pa · ln pa (2.3) Sin = − i
a
die Entropie, welche während der Zeitspanne T eingangs- bzw. ausgangsseitig erzeugt wurde. Von einer sinnvollen Definition der Informationsverarbeitung
2.4 Entropie als informationsübertragende Funktion
33
Abb. 2.11 Stationäre Eingangsverteilung erzeugt stationäre ausgangsseitige Verteilung als einer Abbildung von eingangsseitiger auf ausgangsseitige Entropie muß verlangt werden, daß sie reproduzierbar ist. Wir wählen dafür zum einen 200 verschiedene Synapsensätze von gleichem Mittelwert und gleicher Streuung bei festgehaltenem Anfangswert aus (Abbildung 2.12 oben) und zum anderen variieren wir die Anfangswerte a(t0 ) bzw. ∆(t0 ) zwischen 0 und θ bzw. 0 und 1 ms 200-mal und halten dabei den Synapsensatz fest (Abbildung 2.12 unten). Die Abbildungen 2.12 zeigen links die Entropie und rechts die Häufigkeitsverteilung samt Maximum und Minimum. Offensichtlich variiert die bisher definierte Entropie ein wenig, weshalb wir nun die über alle Anfangswerte und Repräsentanten gemittelte Entropie zur Charakterisierung der Netzdynamik verwenden. Im nachfolgenden werden wir diese Entropie bzw. die Häufigkeitsverteilung als in diesem Sinne gemessen und definiert verwenden. Wir können somit als informationsübertragende Funktion eines Netzes die Funktion definieren, welcher einer Ensemble-basierten eingangsseitigen Häufigkeitsverteilung von Zerlegungen bzw. Entropie eines ersten Netzes eine ausgangsseitige Häufigkeitsverteilung von Zerlegungen bzw. Entropie eines zweiten Netzes zuordnet.
34
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
Abb. 2.12 Entropie und Häufigkeitsverteilung bei Variation der Synapsen (oben) und der Anfangswerte (unten)
2.5 Betriebsbereich eines Netzes Für die Anwendung ist die Abhängigkeit der Entropie eines Netzes von den Synapsen und den Eingangssignalen wichtig. Die Entropie der Eingangssignale sehen wir als Variable an, und wir interessieren uns für den Betriebsbereich, in welchem die Synapsen variieren können und die Netz-Entropie noch eine brauchbare Funktion der eingangsseitigen Entropie bleibt. Zur Generierung von Sin verwenden wir ein kaltes Netz. In Abbildung 2.13a wird die Netzentropie Sout aufgezeichnet als Funktion der eingangsseitig angelieferten Entropie Sin und des Mittelwert W der die Neurone koppelnden Synapsen Wes ; dabei sind die eingangsseitigen Synapsen alle auf den Wert 0.3 gesetzt. Die Streuung der Synapsen beträgt 34%, die Variation der Anfangswerte und synaptischen Repräsentanten erfolgt je 200-mal, und die Simulationszeit ist jeweils 2000 s.
2.5 Betriebsbereich eines Netzes
35
(a) äußere Kopplung we0 = 0.3
(b) äußere Kopplung erhöht auf we0 = 0.8
Abb. 2.13 Entropie als Funktion von Eingangsentropie und innerer Kopplung Abbildung 2.13b unterscheidet sich von Abbildung 2.13a dadurch, daß die Eingangssynapsen alle auf den Wert 0.8 gesetzt sind. Wie erwartet, ergibt sich eine Sättigung für die Entropie als Funktion der synaptischen Mittelwerte W bei jeweils fester Eingangsentropie. Der nutzbare kalte Betriebsbereich ergibt sich mit eher kleinen Mittelwerten.
36
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
2.6 Pulsraten Aus der Häufigkeitsverteilung der Zerlegungen lassen sich verschiedene interessante Größen ableiten, darunter auch die Pulsrate. Zum einen können wir die Pulsrate eines Neurons als Anzahl der Pulse pro Zeitintervall einführen; damit sie stationär wird, muß die Messzeit genügend groß gewählt werden. Zum anderen können wir die bereits aufgenommene stationäre Verteilung der Zerlegungen hernehmen und zunächst die Häufigkeit ermitteln, mit der das betrachtete Neuron n als sendendes vorkommt. Letztere ergibt sich als Summe der Häufigkeiten derjenigen Zerlegungen, in welchem das Neuron n als sendendes Neuron vorkommt, und werde bezeichnet mit Pn . Dann beträgt die Anzahl der vom Neuron n im Zeitraum T abgefeuerten Pulse gerade Pn ·T /td . Somit ergibt sich die Pulsrate Fn eines Neurons n zu: Fn =
Pn td
(2.4)
Ebenso wie die Entropie ist damit auch die Pulsrate als das Mittel über alle Anfangswerte a(t0 ) bzw. ∆(t0 ) und Repräsentanten einer vorgegebenen synaptischen Gleichverteilung ermittelt worden, also im Sinne einer Ensemblebetrachtung. Abbildung 2.14 (links) zeigt die Pulsraten von den 14 Neuronen eines vollvernetzten Netzes (gleiches Eingangssignal i = 0.5 für alle Neurone). Steigern wir die Zahl der Neurone, so nimmt die Streuung der mittleren Pulsrate F des Netzes ab (Abbildung 2.14, rechts). Dies steht im Einklang mit der mit der Zahl der Neuronen steigenden Auflösung eines Netzes. Ebenso geht
Abb. 2.14 Pulsraten von 14 Neuronen eines Netzes (links) und Streuung der mittleren Pulsrate als Neuronen als Funktion der Netzgröße (rechts)
2.7 Auflösung und Netzgröße
37
mit größer werdendem Netz ein hohes Maß an Defekt-Toleranz einher. Abbildung 2.15 zeigt, wie mittlere Pulsrate und Streuung sich ändern, wenn zufallsmäßig 1, 2, 3 oder 4 von den 14 Neuronen „tot“ sind, d.h. nicht mehr feuern können. Gemessen an der Netz-immanenten Auflösung (siehe Abbildung 2.14) und der beschränkten eingangsseitigen Auflösung zeigt sich in der Tat eine „graceful degradation“.
Abb. 2.15 Mittlere Pulsrate und Streuung über der Zahl der toten Neuronen Mit der Ableitung der Entropie als informationsübertragender Grundfunktion eines Netzes mit konstanten Synapsen ist dem oft verwendeten Begriff der Pulsratenkodierung somit eine klare Grundlage bereitet. Weil die Entropie die ursprüngliche Größe ist und in der bisherigen Verwendung des Begriffes „Pulsratenkodierung“ der eindeutige informationstheoretische Anschluss fehlt, werden wir die Entropie weiterhin in den Vordergrund stellen, auch wenn aus Sicht des Anwenders die Pulsrate die praktischere Größe ist. Ohne weitere Belege anzuführen, teilen wir mit, daß die für konstante Synapsen erhaltenen Ergebnisse auch gelten, wenn Synapsen mit festen Zeitfunktionen oder Neurone mit (festen Sequenzen von) exponentiell ansteigenden und abfallenden Pulsfunktionen herangezogen werden.
2.7 Auflösung und Netzgröße Wir betrachten ein Netz mit 9 vollvernetzten Neuronen, welche über ihre Eingangssynapse (alle gleich und konstant w = 0.1) an ein einziges Eingangssignal gekoppelt sind (zwischen 0 und 1 variierend). Wir bestimmen nun, wie groß das vollvernetzte Netz mindestens sein muß, damit eine vorgegebene eingangsseitige Auflösung von der Streuung der Pulsrate des Netzes nicht
38
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
verschlechtert wird. In Abbildung 2.16 ist die maximale bzw. minimale mittlere Pulsrate des Netzes als Funktion des Eingangssignals aufgezeichnet; beide Pulsraten sind jeweils durch eine Gerade approximiert. Hierbei wurden die Anfangswerte und die synaptischen Werte je 10-mal variiert.
Abb. 2.16 Auflösung eines Netzes Als Netz-immanente Auflösung definieren wir den relativen Abstand der Steigungen der Geraden: A=
Gruen(i) − Rot(i) Rot(i)
Da der Einsatz eines Netzes keinen Sinn macht, wenn die eingangsseitige Auflösung kleiner ist als die Netz-immanente, ergeben sich aus Abbildung 2.16 drei Eingangsintervalle, welche sicher voneinander trennbar sind – egal, welche Anfangsbedingungen oder Synapsensätze gewählt wurden: [0, 0.24], [0.4, 0.6] und [0.8, 1]. Abbildung 2.17 zeigt, daß die Auflösung eines Netzes umso besser wird, je mehr Neuronen sich im Netz befinden. Statt dieser rigorosen, punktmäßigen Trennung empfiehlt sich die ökonomischere Histogramm-basierte, welche wir als nächstes betrachten. Um ein anschauliches Beispiel zu haben, gehen wir von einem Eingangsbild von 6 × 6 Pixeln aus. Die Helligkeit falle von links nach rechts linear von 1 nach 0 ab, und in jeder der sechs Spalten mögen alle Pixel gleiche Helligkeit (horizontaler Grauwertkeil) haben. Jedes Pixel werde an ein Pulsneuron geführt, und alle Pulsneuronen seien untereinander vollständig vernetzt. Das Netz befinde sich im kalten Betriebsbereich. Als zweites Bild lassen wir das Netz ein Bild
2.7 Auflösung und Netzgröße
39
Abb. 2.17 Netzgröße versus Auflösung von gleicher Größe und gleichmäßiger Helligkeit betrachten, welche dem Mittel des ersten Bildes entspricht. Abbildung 2.18 (links) zeigt, das ein einziges Netz (also mit festem Synapsensatz) die Entropien der Bilder 1 und 2 trennen kann, wenn wir ideale, unverrauschte Bilder betrachten und beim Netz über 200 Anfangswerte variieren. Lassen wir jedoch zweihundert zu 8% verrauschte Variationen der Bilder 1 und 2 zu, so ergeben sich schon bei nur einem Anfangswert überlappende Histogramme für 4 repräsentative Sätze von Synapsen (Abbildung 2.18, rechts). Genauere Aufschlüsse über die Überlappungen der einzelnen Netze gibt Abbildung 2.19.
Abb. 2.18 Pulsratenverteilungen für Bilder 1 und 2 ohne (links) und mit Rauschen (rechts)
40
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
Abb. 2.19 Details der Überlappung aus Abbildung 2.18 Eine Vielzahl von Simulationen hat darüberhinaus gezeigt, daß der Grauwertkeil und ein daraus durch irgendeine Permutation hervorgegangenes Bild in der Tat in dem vorgestellten Sinne überlappen und damit nicht trennbar sind. Gleiches gilt für die Verwendung nicht vollständig vernetzter Neuronen. Will man dennoch mehr räumliche Auflösung haben – was gleichbedeutend ist mit einer Erkennung von räumlichen Mustern – so muß das Netz stark vergrößert werden, damit die Schwankung der mittleren Pulsrate des Netzes kleiner wird, und/oder die Variation der synaptischen Werte stark eingeschränkt werden. Letzteres ließe sich durch sogenannte Lernalgorithmen erreichen, welche wir jedoch aus den zu Anfang genannten Gründen nicht einsetzen, oder durch zeitlich veränderliche Synapsen. In den Kapiteln 5 und 6 zeigen wir, daß mit dynamischen Synapsen die räumliche Mustererkennung auf ökonomische Weise realisierbar wird – ganz ohne Rekurs auf irgendwelche Lernalgorithmen. Betrachten wir nun die zeitliche Auflösung. Wir interessieren uns zunächst für die Einschwingzeit: wann wird eine Pulsrate stationär, wenn das Netz von einem Anfangswert gestartet wird? Sie hängt nur wenig ab von der Netzgröße (Abbildung 2.20) und beträgt circa 600 ms. Als nächstes fragen wir nach der Reaktionszeit, wenn im eingeschwungenen Netz mit 30 vollvernetzten Neuronen der Eingangswert von 1 auf 0.8 zurückgenommen wird. Sie ist abhängig von der Integrationszeit, welche der Messung der Pulsrate zugrunde liegt. Bei etwa 180 ms erzielen wir eine schnelle Trennung der Pulsraten für den Sprung des Eingangssignals von 1 auf 0.8 (Abbildung 2.21), d.h. die Schwankungen der Pulsraten für die beiden Eingangswerte überlappen gerade nicht. Wollen wir die Signalauflösung vergrößern – Sprung von 1 auf 0.9 – so hilft die Vergrößerung des Netzes nicht, sondern nur die Vergrößerung der Integrationszeit.
2.7 Auflösung und Netzgröße
41
Abb. 2.20 Einschwingzeit eines Netzes mit 10 (links), 100 (rechts) Neuronen
Abb. 2.21 Reaktionszeit eines Netzes bei unterschiedlichem Integrationsfenster für die Messung der Pulsrate Halten wir also fest: 1. Zur Unterscheidung von räumlichen Mustern sind Netze mit konstanten Synapsen nur schwer in der Lage, da Zahl und Größe der eingesetzten Netze mit dem Grad der gewünschten räumlichen Auflösung sehr schnell steigen. 2. Je kleiner die zeitliche Auflösung gewählt wird, desto weniger Signalauflösung ist verfügbar.
42
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
2.8 Anwendungsmöglichkeiten Die Hintereinanderschaltung von Netzen, bei welcher alle Ausgänge eines Netzes mit den Eingängen des nachfolgenden Netzes verbunden sind, führt zu nichts Neuem, ist aber dennoch instruktiv. Bei genügend vielen Netzen weist das letzte Netz einen Entropiewert auf, der im „Rauschen“ liegt, d.h. im unteren S-Kurven-Bereich (Abbildung 2.22, siehe auch Abbildung 2.13). In diesem Sinne ergibt sich eine endliche Reichweite bzw. natürliche Abschirmung eines Netzes von anderen.
Abb. 2.22 Entropieabfall bis zum Rauschen innerhalb einer Kaskade Eine nützliche Grundanordnung ist die Verbindung der Ausgänge von Netz N1 und N2 mit den Eingängen eines einzigen vollvernetzten Netzes N . Bezeichnen wir mit S1 und S2 die Entropien der Netze N1 und N2 und mit S die Entropie des Netzes N . In Abbildung 2.23a ist S als Funktion von S1 und S2 aufgetragen (die Netze N1 und N2 arbeiten im kalten Betriebsbereich). Da die Ebene S = 0.551 S1 + 0.542 S2 − 0.531 im Rahmen der inhärenten Auflösungsmöglichkeit der Eingangs- bzw. Ausgangspulsraten eine sehr gute Approximation darstellt (Abbildung 2.23b), können wir das Netz als linearen Mischer von Entropien charakterisieren. Wir werden im Kapitel 5 sehen, daß solche Netze ein wichtiger Bestandteil von Merkmalsdetektoren sind.
2.8 Anwendungsmöglichkeiten
43
(a)
(b)
Abb. 2.23 Mischung von Entropien (a) und lineare Approximation mit 13% Fehler (b)
44
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
Wenden wir uns nun einem Netz zu, bei welchem jedes Eingangsneuron von ein und demselben konstanten Eingangssignal versorgt wird. Das Eingangssignal variiere zwischen 0 und 1, und die Auflösung sei mittels der Größe des Netzes eingestellt, wie früher erörtert. Wie in Abbildung 2.24 dargestellt, folgt die mittlere Pulsrate fast linear der Höhe des Eingangssignals im nutzbaren Bereich. Da auch die Streuung sehr gering ist, kann jedes Neuron des Netzes angezapft werden und eine Pulsrate weiterleiten, die mit der mittleren Pulsrate des Netzes sehr genau übereinstimmt. Dies ist hilfreich, bedenkt man, daß eine örtliche exakte Verbindungserstellung bei großen Netzen in natürlichen Nervenarealen kaum genau erfolgen kann.
Abb. 2.24 Pulsraten der Neuronen und ihr Mittelwert als Funktion des Eingangssignals Dieses Netz wollen wir nun zur Steuerung eines idealisierten Muskels benutzen. Um die Aktion eines Muskels – eine Längenkontraktion auszuführen und damit Arbeit zu verrichten – zu kopieren, verwenden wir eine Vielzahl von in Reihe geschalteten Federn (Abbildung 2.25), welche ebenso viele Muskelfasern verkörpern sollen. Viele dieser Muskelfasern schalten wir parallel und erhalten so einen „Muskel“. Als Dynamik einer Feder i mit Ruhelage qi setzen wir an: dxi = −γ(xi (t) − qi (t)) − β(2xi − xi+1 − xi−1 ) (2.5) dt Jeder der 20 Muskelfasern bestehe aus 5 Federn; parallel liegende Fasern koppeln wir steif miteinander, so daß die Kontraktion einer Feder die parallel liegenden Federn mitbewegen muß. Die 100 Federn seien angeschlossen an 100
2.8 Anwendungsmöglichkeiten
45
Abb. 2.25 Abstraktes Muskelmodell Neurone (jede Feder an ein Neuronausgang), und es sei angenommen, daß jede Feder sich proportional zur angelieferten Pulsrate kontrahiert. Das Netz der 100 Neurone arbeite im kalten Bereich. In Abbildung 2.26 ist gezeigt, daß die mittlere Pulsrate des Netzes dem Eingangssignal folgt und dieser abstrakte „Muskel“ sich entsprechend dem Steuersignal bzw. der Pulsrate zusammenzieht und entspannt.
Abb. 2.26 Pulsrate folgt Eingangssignal, und Muskelkontraktion folgt Pulsrate Dasselbe Ergebnis läßt sich auch erzielen, wenn statt des konstanten Eingangssignals Pulssignale verwendet werden; dann ist die Muskelkontraktion der eingangsseitigen Entropie bzw. mittleren Pulsrate proportional. Wir sehen in der motorischen Steuerung ein weiteres wichtiges Anwendungsgebiet von Netzen mit konstanten Synapsen. Allerdings sind diese Net-
46
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
ze nicht für höhere intelligente Aufgaben als alleinige Komponente brauchbar. Der Grund für diese Beschränkung liegt, wie dargelegt, darin, daß die mit solchen Synapsen erzeugten informationsübertragenden Funktionen beschränkt sind auf die Entropie und die daraus hergeleitete Pulsrate. Jede Mustererkennung setzt aber räumliche oder zeitliche Korrelationen voraus, welche mit den betrachteten Netzen nicht abbildbar sind, wie wir in Abschnitt 2.7 gezeigt hatten. Solche anspruchsvolleren Aufgaben können erst mit dynamischen Synapsen angegangen werden (Kapitel 5 - Kapitel 8).
2.9 Zur Simulationsproblematik Damit die Histogramme zu den Häufigkeiten der Zerlegungen stationär werden, muß die Häufigkeitsfunktion bis auf ungefähr 1 · 10−6 genau bestimmt werden (siehe Abbildung 2.5). Dies verlangt mindestens 200000 Zerlegungen. Bedenkt man, daß Zeitmittel bzw. Häufigkeitsfunktion über verschiedene Anfangswerte und Repräsentanten von Synapsen bestimmt werden müssen, so kommt leicht ein Tag Simulationszeit zusammen. Für größere Netze (> 30 Neurone, d.h. nicht mehr in 1 GB Hauptspeicher haltbar) ist die Simulation auf PCs nicht mehr durchführbar. Verzichtet man auf die Ermittlung der Entropie und benutzt stattdessen die Messung der Pulsrate, so braucht es mindestens 1000 Pulse per Neuron, um zu einer stabilen Pulsrate zu kommen (Abbildung 2.20). Im Gegensatz zu oben, wo man mit der Speicherung des Histogramms an die Speichergrenze stößt, wirkt bei Messung der Pulsrate nur noch der Speicherplatz zum Speichern der Gewichte als Grenze. Netze mit etwa 1000 vollvernetzten Neuronen lassen sich so simulieren. Da für größere Netze die Simulation also nicht mehr durchführbar ist, entsteht der Wunsch nach einer theoretischen Modellierung des Verhaltens solcher Netze. Im nächsten Kapitel wird damit begonnen.
2.10 Zusammenfassung Wenn Gehirne die Information eines Bildes aufnehmen können, so ist die erste wichtige Frage die nach der informationsübertragenden Funktion irgendeines Netzes von Pulsneuronen. Wir beschränken uns zunächst auf konstante Werte oder feste Zeitfunktionen für die Synapsen. Da in diesem Falle das zeitliche Auftreten der einzelnen Pulse der Neuronen eines Netzes nicht wiederholbar ist, sondern einzig die Häufigkeit ihres zeitlichen Auftretens, sind wir gezwungen, exakt definiertes Wissen in Gestalt der dynamischen Grundgleichungen zu verbinden mit statistischen Größen, nämlich den Erwartungswerten für Pulsabstand oder Pulszahl. Netze mit konstanten Synapsen sind durch Mittelwerte charakterisierbar: Pulsrate für jedes einzelne Neuron samt Variation, und gemittelte Pulsrate über die Neuronen des Netzes. Alle Statistik des Netzes gründet auf der
2.10 Zusammenfassung
47
Häufigkeitsfunktion, mit der die Zerlegungen einer Menge von N Neuronen in ε empfangende und N − ε sendende vorkommen, 0 ≤ ε ≤ N . Um reproduzierbare Größen zu erhalten, muß ein Ensemble von Netzen betrachtet werden, über deren verschiedene Anfangswerte und Sätze von Synapsen gleichen Mittelwerts und gleicher Streuung gemittelt wird. Aus der so bestimmten Häufigkeitsfunktion gehen Entropie, Pulsraten sowie zeitliche und räumliche Signalauflösung hervor. Die informationsübertragende Funktion des Netzes ist somit die Entropie des Netzes, welche ihrerseits eine Funktion der Entropie der eingangsseitig angelieferten Pulssignale ist. Eine solche Größe wie die Entropie bzw. ihre Verteilungsfunktion als grundlegend einzuführen, paßt zu der seit den Anfängen der Gehirnforschung geäußerten Vermutung, daß neuronalen Netzen eine Signalverarbeitung eignen müsse, die defekt-tolerant ist, also gegen Ausfälle einzelner Neuronen und Synapsen gefeit. In der Tat läßt sich diese oft als Robustheit zitierte Eigenschaft einer pulsneuronalen Informationsverarbeitung experimentell belegen. Für die Anwendung müssen Netze mit konstanten Synapsen im kalten Bereich betrieben werden; bei geeigneter Wahl der Schwellwerte und Pulsdauer läßt sich die Pulsrate in den biologischen Bereich von einigen Hertz bis hundert Hertz legen. Dann ist gewährleistet, daß die Sendetätigkeit der Neuronen nicht korreliert und somit keine Musterbildung im Pulssignalraum des Netzes präexistiert, wenn keine solche in den Eingangssignalen enthalten ist. Eine künstliche, nicht durch den Eingang bewirkte Musterbildung setzt immer ein, wenn die Eingangssignale sehr groß sind oder die synaptische Kopplung der Neuronen untereinander groß ist gegenüber der synaptischen Kopplung der Neurone an die eingehenden Pulssignale. Für die Anwendung ist ferner wichtig die Größe eines Netzes. Die von einem Netz erreichte Genauigkeit der Pulsverarbeitung wird bestimmt durch die erreichbare Auflösung für Entropie bzw. Pulsrate. Beider Auflösung ist eine Funktion der eingangsseitigen Signalauflösung (Rauschen), des gewählten Synapsensatzes und der Zahl der Neuronen im Netz. Je größer die gewünschte Auflösung der eingangsseitigen Signale seitens des Netzes angesetzt wird, desto größer müssen die Netze und desto kleiner die systematische Schwankung der synaptischen Werte gehalten werden. Aufgrund der Vermischung der eingangsseitig vorhandenen Signalwerte auf den Membranen der miteinander verbundenen Neurone sind diese Netze somit in inhärenter Weise und durch die allfälligen Schwankungen der Werte für Signale und Synapsen in systematischer Weise in ihrer Auflösungsfähigkeit von räumlich-zeitlichen Mustern beschränkt. Insbesondere lassen sich eingangsseitig vorhandene 2-dimensionale Bilder in ihren Pixeln beinahe beliebig rekombinieren, ohne daß die Entropie oder mittlere Pulsrate des Netzes diese unterscheiden könnte. Da Muster eine wichtige Information vermitteln, die allen höheren Sinnen zugrunde liegen, müssen neben den Pulsrate-kodierten Netzen noch wesentlich andere existieren.
48
2 Informationsverarbeitung in Netzen mit konstanten Synapsen
Als wichtige Anwendungen von Netzen mit konstanten Synapsen können jedoch genannt werden: die Steuerung von Muskeln und die strukturlose Vermischung von Entropien.
3 Allgemeine Theorie der Netze mit dynamischen Synapsen Ulrich Ramacher
Die experimentelle Beobachtung der Wahrscheinlichkeit des Vorkommens, der Dauer und zeitlichen Präsenz von Zerlegungen bzw. Pulsmustern ist eine der möglichen Vorgehensweisen, um zu der Charakterisierung einer stationären Verteilung zu kommen. Bei größeren Netzen wächst jedoch die Simulationszeit schnell an, so daß eine theoretische Erfassung notwendig wird. Da die konstanten Synapsen einen Spezialfall der zeitabhängigen, dynamischen Synapsen darstellen, entwickeln wir gleich die allgemeine Theorie. Zu diesem Zweck führen wir den Begriff der Signalenergie eines Netzes ein: Es wird gezeigt, daß sowohl die Signalgleichungen als auch die Entropie aus der Signalenergie hergeleitet werden können. Damit gelingt es, die Zustandskurven des Netzes z.B. für die Abhängigkeit der Entropie von den Eingangssignalen auf theoretischem Wege bereitzustellen. Die hier entwickelte Theorie gilt für den allgemeinen Fall der dynamischen Synapsen, für beliebige Eingangssignale (> 0) und rechteckige Pulssignale x der Dauer td . Die Berücksichtigung beliebiger Pulssignale brächte aufwendigere Rechnungen und für die Anwendungen in der Bildverarbeitung, wie sie in diesem Buch behandelt wird, keinen zusätzlichen Nutzen. Nach der Entwicklung der allgemeinen Theorie spezialisieren wir sie im Kapitel 4 auf den Fall der konstanten Synapsen und überprüfen die Theorie mittels der in Kapitel 3 durchgeführten Experimente mit konstanten Synapsen.
3.1 Herleitung der Signalenergie Da zu jeder Zeit das Netzwerk für einen begrenzten Zeitraum im Zustand einer der 2N Zerlegungen der Menge der Pulsneurone in empfangende und sendende verweilt, genügt es, die Signalenergie in jeder Zerlegung zu definieren. Dazu sei eine beliebige Zerlegung mit empfangenden Neuronen herausgegriffen. Dann gibt es insgesamt Nε solche Zerlegungen mit genau ε Neuronen, welche mit i = 1 . . . Nε abgezählt seien. Mit {εi} werde eine solche Zerlegung bezeichnet.
50
3 Allgemeine Theorie der Netze mit dynamischen Synapsen
Weiter bezeichne tεi die Startzeit und τεi die Dauer einer solchen Zerlegung. Schließlich bezeichnen wir mit Eεi bzw. Sεi die Menge der empfangenden bzw. sendenden Neuronen der Zerlegung {εi} zur Zeit (tεi , tεi + τεi ). Alle Größen seien dimensionsfrei gewählt. Die Signalenergie wird hergeleitet für den allgemeinen Fall von dynamischen Synapsen (2.1c). Zur Vereinfachung der Rechnungen spezialisieren wir den Term Qes jedoch zu dem Ausdruck, wie wir ihn für alle weiteren Anwendungen brauchen werden1 : Qes (t) = µ · (ae (t) − θ/2) Qes (t) = 0 sonst .
für e ∈ Eεi , s ∈ Sεi ∩ Ne ,
(3.1)
Die Signalenergie einer Zerlegung denken wir uns zusammengesetzt aus erstens der Synapsenenergie und zweitens der Membranenergie, unter deren Einfluss sich die Synapsen verändern. Als Synapsenenergie einer Zerlegung {εi} definieren wir: ( ) X X 1 X 1 X Wes (t)2 · xs + We0 (t)2 · ie (t) + Wes (t)2 , 2 2 e∈Eεi
e∈Eεi s∈Sεi ∩Ne
s∈Sεi ∩Ne
(3.2a) wobei mit dem zweiten Term die Synapsenenergie berücksichtigt wird, welche ohne anliegende Pulse in den Synapsen aufgrund ihrer Eigendynamik noch vorhanden sein kann. Als Gesamtenergie der auf den Membranen abgespeicherten Pulse definieren wir: 1 X (ae (t) − θ/2)2 . 2
(3.2b)
e∈Eεi
Nun setzen sich die Membransignale aus den Pulsen früherer Zerlegungen zusammen, so daß wir für das Membransignal des e-ten Empfängerneurons bekommen: ae (t) =
Ze X
X
z=1 s∈{Sεi(z) ∩Ne }∪{0}
Mes (tεi(z+1) ) − θ/2 .
Dabei ist Mes bestimmt durch 1
So wenig verschieden dieser Ausdruck strukturell von der bekannten Hebb’schen Regel auch erscheinen mag, so drastisch sind jedoch die von ihm bewirkten Änderungen der Signaldynamik. Wie wir im Kapitel 4 sehen werden, ist erst mit der Möglichkeit des Wachsens und Fallens der Synapsenwerte - impliziert durch den Qes null setzenden Referenzpunkt ae = θ/2 und die richtige Wahl des Vorzeichens von µ – eine intelligente Informationsverarbeitung möglich. Diese Regel ist von U. Ramacher im April 1999 gefunden worden und hat sich außerordentlich bewährt [42, 43]. Sie macht so unterschiedliche Dinge wie Bildsegmentation, Bindung von Merkmalen zu Objekten und Pulsdifferenzberechnung möglich.
3.1 Herleitung der Signalenergie
Mes (tεi(z+1) ) :=
Z
tεi(z+1)
tεi(z)
Mes (tεi(z+1) ) :=
Z
tεi(z+1)
tεi(z)
tεi(ze+1 ) = t,
Wes (t′ ) · xs dt′
51
oder
We0 (t′ ) · ie (t)dt′ ,
(3.2c)
tεi(ze ) = tεi , . . . , tεi(1) = te ,
wobei z die Anzahl ze der Zerlegungen {εi(z)} abzählt, welche zwischen (Wieder-)Einsatz der Akkumulation des e-ten Neurons zur Zeit te und der aktuellen Zerlegung {εi} auftraten. Neben den gerade betrachteten (e, s)Kombinationen von M betrachten wir noch folgende: Z t e ∈ Eεi , s ∈ Eεi ∩ Ne : Mes (t) := Wes (t′ ) dt′ (3.2d) tεi(z)
und führen für diese Variablen zunächst jedoch keine zusätzlichen Energieanteile ein. Als Signalenergie hεi einer Zerlegung werde nun definiert:
hεi (t) :=
1 X 2
X
e∈Eεi s∈{Sεi ∩Ne }
1 X 2
X
e∈Eεi s∈Eεi ∩Ne
Wes (t)2 · xs +
1 X We0 (t)2 · ie (t) + 2 e∈Eεi
µ X (ae (t) − θ/2)2 . Wes (t)2 − 2
(3.3)
e∈Eεi
Man beachte, daß für die nur Sender enthaltende Zerlegung die Signalenergie null ist. Betrachtet man die Ableitungen der Signalenergie hεi nach den unabhängigen Variablen Wes und Mes für alle (e, s)-Kombinationen, so ergibt sich: ∂hεi ∂hεi = −µ · (ae (t) − θ/2) , = Wes (t) · xs ∂Mes ∂Wes ∂hεi ∂hεi e ∈ Eεi : = −µ · (ae (t) − θ/2) , = We0 (t) · ie (t) ∂Me0 ∂We0 ∂hεi ∂hεi e ∈ Eεi , s ∈ Eεi ∩ Ne : = 0, = Wes (t) . ∂Mes ∂Wes
e ∈ Eεi , s ∈ {Sεi ∩ Ne } :
Offensichtlich gilt die Beziehung:
e ∈ Eεi , s ∈ {Sεi ∩ Ne } ∪ {0} ∪ {Eεi ∩ Ne } :
dMes ∂hεi = , ∂Wes dt
(3.4a)
52
3 Allgemeine Theorie der Netze mit dynamischen Synapsen
so daß eine Änderung von W über die Änderung von h eine solche von M bewirkt; umgekehrt sollte im Sinne von actio und re-actio auch die Veränderung von h durch M auf W zurückwirken, so daß versuchsweise gesetzt werde: e ∈ Eεi , s ∈ {Sεi ∩ Ne } ∪ {0} ∪ {Eεi ∩ Ne } : −
∂hεi dWes = , ∂Mes dt
(3.4b)
Hiermit gewinnt man die Gleichungen: e ∈ Eεi , s ∈ {Sεi ∩ Ne } ∪ {0} : e ∈ Eεi , s ∈ {Sεi ∩ Ne } :
dWes , dt dWes 0= , dt
µ · (ae (t) − θ/2) =
welche mit den Signalgleichungen (2.1c) bis auf den Verlustterm identisch sind. Halten wir einen Moment inne und blicken auf das bisher dargelegte zurück: die Signalenergie in Gleichung (3.3) haben wir, scheint es, recht willkürlich angesetzt und die Gleichung (3.4b) nur geraten; alles mit dem Ziel, die ursprünglichen Signalgleichungen in eindeutiger Weise aus der Signalenergie abzuleiten. Wir müssen uns deshalb vergewissern, daß dieses Vorgehen eine mathematische Grundlage aufweist. Die Gleichungen (3.4a, b) erhält man auch, wenn von der partiellen Differentialgleichung erster Ordnung für eine Funktion Jεi (t, Mes ) ausgegangen wird: ∂Jεi (t, Mes , Me0 ) + hεi (We0 , Me0 , Mes , Wes ) = 0 . ∂t Hierin ist Mes eine Variable, welche nicht schon als Funktion gemäß Gleichung (3.2c) definiert ist, und Wes = ∂Jεi /∂Mes die zu Mes konjugierte Variable, definiert für alle (e, s)-Kombinationen. Die Lösung dieser partiellen Differentialgleichung läßt sich abwälzen auf die Lösung ihrer charakteristischen Gleichungen [44]: dMes ∂hεi dWes ∂hεi , , e ∈ Eεi , s ∈ {Sεi ∩ Ne } ∪ {0} ∪ {Eεi ∩ Ne } , = =− dt ∂Wes dt ∂Mes d(∂Jεi /∂t) ∂hεi =− , dt ∂t X X dMes dMes dJεi ∂Jεi X Wes (t) Wes (t) = + (t) + (t) . dt ∂t dt dt e∈Eεi
s∈{Sεi ∩Ne }∪{0}
s∈{Eεi ∩Ne }
Die erste Zeile dieses Gleichungssystems stimmt überein mit (3.4a, b). Insbesondere ergeben sich die M -Variablen, wie in (3.2c-d) definiert. Die restlichen charakteristischen Gleichungen dienen zur Bestimmung der Funktion
3.1 Herleitung der Signalenergie
53
J, von der in diesem Kapitel kein Gebrauch gemacht wird. Wir haben somit die Signalenergie in eine partielle Differentialgleichung eingebettet, deren charakteristische Gleichungen u.a. die Signalgleichung (2.1c) liefert, bis auf den Verlust-Term. Jedoch kann die obige partielle Differentialgleichung um einen Term erweitert werden, welcher den Zerfallsterm aus (2.1c) erzeugt. Mit der partiellen Differentialgleichung ∂Jεi + γ · Jεi (t, Me0 , Mes ) + hεi (We0 (t), Me0 (t), Mes , Wes ) = 0 ∂t
(3.5a)
lauten die charakteristischen Gleichungen sodann: dMes ∂hεi dWes ∂hεi , , = = −γ · Wes (t) − dt ∂Wes dt ∂Mes e ∈ Eεi , s ∈ {Sεi ∩ Ne } ∪ {0} ∪ {Eεi ∩ Ne } ,
∂Jεi ∂hεi d(∂Jεi /∂t) = −γ · − , dt ∂t ∂t X dJεi dMes ∂Jεi X Wes (t) = + (t) + dt ∂t dt e∈Eεi
s∈{Sεi ∩Ne }∪{0}
X
Wes (t)
s∈{Eεi ∩Ne }
(3.5b)
dMes (t) . dt
Speziell ergibt sich mit der ersten Zeile von (3.5b) die allgemeine Form der synaptischen Gleichung zu: dWes (t) = − γ · Wes + µ · (ae (t) − θ/2) , e ∈ Eεi , s ∈ {Sεi ∩ Ne } ∪ {0} , dt dWes (t) = − γ · Wes , e ∈ Eεi , s ∈ {Eεi ∩ Ne } . dt (3.6) Diese Gleichungen fallen mit (2.1c) zusammen. Die weiteren Signalgleichungen (2.1a, b) sind in die Definition von hεi (3.3) bereits eingeflossen: in (3.2b) wird das Membranpotential eines Neurons verwendet in Übereinstimmung mit (2.1a), desweiteren wird in hεi direkt das Sendesignal xs (t) benutzt, welches (2.1b) erfüllt, und ferner werden die Phasen der Akkumulation und des Sendens berücksichtigt durch die Indizierung der Signalenergie mit der Zerlegung {εi}, während derer Dauer die Gleichungen (2.1a,-c) gelten2 . 2
Die Gleichung (3.5a) ohne den Verlustterm ist in der Physik als HamiltonJacobi’sche Differentialgleichung bekannt, der Ausdruck h als Hamiltonfunktion, welche die Energiefunktion des betrachteten Systems darstellt (natürlich mit anderen dynamischen Variablen). Das Konzept der Hamiltonfunktion ist grundlegend für alle Gebiete der Physik, stellt insbesondere das Bindeglied zwischen Mechanik, Thermodynamik und Quantenmechanik dar.
54
3 Allgemeine Theorie der Netze mit dynamischen Synapsen
Damit sind die Signalgleichungen (2.1a-c) in eindeutiger Weise aus einer partiellen Differentialgleichung erster Ordnung ableitbar. Die partielle Differentialgleichung ist ihrerseits eindeutig definiert durch die Signalenergie. Da wir im ersten Kapitel gesehen haben, wie aus den Signalgleichungen sich die Entropie durch statistische Betrachtung ergab, so suchen wir nun nach einer Möglichkeit, aus der Signalenergie direkt die Entropie abzuleiten. Da die Entropie eine gemittelte Größe darstellt, wollen wir zunächst den zeitlichen Mittelwert H der Signalenergie eines Netzes mittels einer „räumlichen“, nur auf die Variablen M,W sich stützenden Häufigkeitsfunktion bestimmen und alsdann die damit konstruierbare Entropie berechnen.
3.2 Zeitmittel und Raummittel Die gemittelte Signalenergie H ergibt sich experimentell dadurch, daß wir die Signalgleichungen lösen – mit dem Zeitpunkt t0 beginnend und über die Beobachtungszeit T sich erstreckend – und diese Lösungen für jede durchfahrene Zerlegung in die Signalenergie einsetzen und sodann das zeitliche Mittel fortlaufend berechnen. Um jedoch mehr als den puren Mittelwert zu erhalten – nämlich einen strukturierten Ausdruck mit Information über den Einfluß von Synapsen und Eingangssignalen auf den Mittelwert – analysieren wir die Summe der gemittelten Energien derjenigen Zerlegungen, welche im Zeitraum der Beobachtung von der Signaldynamik erzeugt werden. Die Größe Bεi zeige an, wie oft im betrachteten Netz (vom Zeitpunkt t0 beginnend) in der Zeitspanne T die Zerlegung {εi} vorgekommen ist; weiter bezeichne tεi(ν) die Startzeit des v-ten Vorkommens und τεi(ν) die Dauer dieser Zerlegung (mit Ausnahme der Zerlegung {ε}, in der alle Neuronen empfangen, dauert jede Zerlegung höchstens eine Pulslänge). Damit ergibt sich als Mittel der Energie:
H(t0 , T ) =
N X
N ε X
ε=0 i=1
Bεi 1 X T ν=1
tεi(ν) +τεi(ν)
Z
hεi (Mεi (t), Wεi (t), iεi (t), tεi(ν) ) dt ,
tεi(ν)
(3.7) wobei mit Wεi , Mεi die in der Zerlegung εi(ν) vorkommenden Synapsen und Membransignalanteile gemeint sind. Prinzipiell ist H errechenbar aus dieser Gleichung und den Signalgleichungen (2.1a-c), allerdings ist dies durchführbar nur für kleinere Netze (siehe Abschnitt 2.9). Die weitere Auswertung von (3.7) geschieht mit Hilfe der Umwandlung von Zeitintegralen in Raumintegrale (bzw. Histogramme) mittels einer Häufigkeitsfunktion φεi(ν) (Mεi , Wεi , iεi ; tεi(ν) , τεi(ν) ), welche auf prozentualer Basis zählt, wie oft die Synapsen und Membransignalanteile in der Zerlegung {εi(ν)} mit einem bestimmten Wertesatz während der Beobachtungszeit T vorkommen:
3.2 Zeitmittel und Raummittel
H(t0 , T ) =
N Bεi Z N X ε X X
55
diεi dMεi dWεi φεi(ν) (Mεi , Wεi , iεi ; tεi(ν) , τεi(ν) )
ε=0 i=1 ν=1
· hεi(ν) (Mεi , Wεi , iεi ; tεi(ν) ) .
(3.8)
Hierbei wurden folgende Abkürzungen benutzt: Z
diεi dMεi dWεi =
Y Z
e∈Eεi
die · ·
Y
Y
e∈Eεi s∈{Sεi ∩Ne }∪{0}
Y
Y
e∈Eεi s∈{Eεi ∩Ne }∪{0}
Z
Z
dMes dWes dMes dWes .
Um die Darstellung übersichtlich zu halten, werden die Integralgrenzen erst in den konkreten Rechnungen eingesetzt. Zu beachten ist, daß die Eingangssignale ie Konstanten, irgendwelche Zeitfunktionen oder die Pulssignale darstellen können, welche von einem Netz an das betrachtete angeliefert werden; es gilt jedoch, daß keine Synapsen des betrachteten Netzes zum anliefernden Netz existieren dürfen, weil anderenfalls die Netze nicht auftrennbar sind. Weiter nehmen wir i.a. an, daß die Eingangssignale in ihrem zeitlichen Verlauf oder aber – wenn es sich um Pulse handelt – in ihrem zeitlichen Eintreffen unbekannt sind und somit in der Häufigkeitsfunktion als Variablen auftauchen; andererseits müssen eingangsseitig gemessene Pulsraten in der Modellierung der Häufigkeitsfunktion berücksichtigt werden können. Im Folgenden wird der Übersichtlichkeit wegen die Abhängigkeit von φεi(ν) von seinen Parametern tεi(ν) und τεi(ν) unterdrückt. Für die Häufigkeitsfunktion ergibt sich aus
1=
N X
N ε X
ε=0 i=1
Bεi 1 X T ν=1
tεi(ν) +τεi(ν)
Z
dt
(3.9)
tεi(ν)
durch Übergang zum Raumintegral, daß die Wahrscheinlichkeit Pεi(ν) des Auftretens der Zerlegung εi(ν) gegeben ist durch: Z τεi(ν) = diεi dMεi dWεi φεi(ν) (Mεi , Wεi , iεi ) =: Pεi(ν) . T Als Signal-Entropie wird angesetzt:
S0 :=
N X
N Bεi Z ε X X
diεi dMεi dWεi φεi(ν) (Mεi , Wεi , iεi )
ε=0 i=1 ν=1
· ln φεi(ν) (Mεi , Wεi , iεi ).
(3.10)
(3.11)
56
3 Allgemeine Theorie der Netze mit dynamischen Synapsen
Diese Signal-Entropie ist die von der Signaldynamik produzierte und sie ist nur null, wenn wir für φ ein Produkt von δ-Funktionen einsetzen, welches sich auf die genaue Kenntnis der Lösungen der Signalgleichungen stützt. Da diese Kenntnis für größere Systeme nicht vorliegt, müssen wir die Häufigkeitsfunktion empirisch konstruieren mittels „Zeitmittel gleich Raummittel“, also unter Verzicht auf das genaue Wissen der Werte der Signalgleichungen und der Anfangswerte. Die gemessene Entropie S0 ist somit nicht null3 .
3.3 Maximierung des Nicht-Wissens Es werde nun angenommen, daß nur noch bekannt ist, mit welcher Wahrscheinlichkeit eine Zerlegung ψ auftritt und welche mittlere Energie dieser Zerlegung zukommt; d.h. die Lösungen der Signalgleichungen sind nicht mehr bekannt. Erinnern wir uns des in Abbildung 2.1 dargestellten Zusammenhangs zwischen Netzgröße und mittlerer Lebenszeit einer Zerlegung, dann sehen wir, daß noch wenig Nicht-Wissen zugelassen wird. Jetzt ist es sinnvoll, diejenige Verteilung zu suchen, welche die Nebenbedingungen (3.8, 3.10) erfüllt und das Nicht-Wissen, d.h. die Entropie, maximal macht. Mit der Berechnung der Funktionalableitung von
S0 +
+
N Bεi ε X X
ε=0 i=1 ν=1
Z λεi(ν) Pεi(ν) − diεi dMεi dWεi ψεi(ν) (Mεi , Wεi , iεi )
ε=0 i=1 ν=1
Z βεi(ν) Hεi(ν) − diεi dMεi dWεi ψεi(ν) (Mεi , Wεi , iεi ) · hεi(ν)
N X
N Bεi N X ε X X
(3.12)
ergeben sich für die neue Verteilung bzw. Entropie die Ausdrücke: ψεi(ν) (Mεi , Wεi , iεi ) = exp −λεi(ν) + 1 − βεi(ν) · hεi(ν) (Mεi , Wεi , iεi ) , N Bεi N ε XXX Pεi(ν) · (λεi(ν) − 1) + βεi(ν) · Hεi(ν) . S1 = ε=0 i=1 ν=1
(3.13)
Mit ξεi(ν) := λεi(ν) − 1 errechnet sich: 3
In der Mathematik wird die Häufigkeitsfunktion als Dichtefunktion bezeichnet; in der Statistik und Informationstheorie wird sie auch als Verteilungsfunktion oder kurz Verteilung bezeichnet. Um die Begriffswelt nicht unnötig zu strapazieren, benutzen wir von nun an die Bezeichnung „Verteilung“.
3.3 Maximierung des Nicht-Wissens
ξεi(ν) = − ln Pεi(ν) + ln
Z
57
diεi dMεi dWεi exp −βεi(ν) · hεi(ν) (Mεi , Wεi , iεi ) .
Also erhält man für die Entropie den Ausdruck:
S1 :=
N Bεi N X ε X X
ε=0 i=1 ν=1
βεi(ν) · Hεi(ν) −
N Bεi N X ε X X
Pεi(ν)
ε=0 i=1 ν=1
Z · ln Pεi(ν) − ln diεi dMεi dWεi exp −βεi(ν) · hεi(ν) (Mεi , Wεi , iεi ) .
(3.14)
Da gegenüber (3.11) Wissen aufgegeben wurde, gilt S0 < S1 . Aber auch die Entropie S1 ist für größere Netze experimentell nicht ermittelbar, da dem Wechsel der Zerlegungen i.a. nicht zu folgen ist. Im nächsten Schritt werde das Wissen um die Zeiten tεi(ν) und Zeitdauern τεi(ν) , die Vielfachheiten Bεi und die mittleren Energien Hεi(ν) aufgegeben; insbesondere ist damit nicht mehr bekannt, aus welcher Zerlegung eine betrachtete Zerlegung herkommt bzw. in welche Zerlegung sie übergehen wird. D.h., daß in (3.8) auch die ν-Summe durch eine zeitunabhängige ersetzt werden muß. Nun ist es nötig, sich daran zu erinnern, daß die Verteilung φεi(ν) von der Startzeit und der Dauer bzw. der Endzeit einer Zerlegung abhängt. Da die tεi(ν) eindeutige Funktionen von den Anfangswerten a0εi := aεi(ν) (tεi(ν) ) und ∆0εi := ∆εi(ν) (tεi(ν) ) sind, alles Wissen darüber aber aufgegeben ist, zieht die ν-Summation die Integration über die Anfangswerte einer Zerlegung nach sich. Ebenso könnte man meinen, impliziere der Endzeitpunkt tεi(ν) + τεi(ν) eine Integration über alle Endwerte a1εi := aεi(ν) (tεi(ν) + τεi(ν) ) und ∆1εi := ∆εi(ν) (tεi(ν) +τεi(ν) ). Dem ist aber nicht so, denn die Endwerte der Membranpotentiale ergeben sich aus ihren Anfangswerten und den M -Werten zu Ende der Zerlegung, welche ja in der M -Integration schon berücksichtigt sind. Gleichermaßen ergeben sich die Endwerte ∆εi(ν) (tεi(ν) + τεi(ν) ) gemäß (2.2b, d) als Ausdruck ∆0εi + td − ∆x (tεi(ν) ) mit x als ablebendem Sendeneuron oder als ∆εi(ν) (tεi(ν) ) + τεi(ν) , wobei τεi(ν) die Zeit bezeichnet, welche das Empfängerneuron x benötigte, um den Schwellwert als erstes Empfängerneuron zu erreichen, bevor irgendwelche Sendeneurone ableben konnten. In den Endwerten steckt also allein die Information über den Wechsel der Zerlegung. Da wir diese Information aber nicht haben, bedingt die ν-Summe für die Endwerte eine Summation über alle Zerlegungen {ε′ i′ }, in welche eine Zerlegung {εi} übergehen kann, und wir erhalten:
58
3 Allgemeine Theorie der Netze mit dynamischen Synapsen
H(t0 , T ) =
N X
N ε X
ε=0 i=1
N X
N ε′ X
ε′ =0 i′ =1
Z
diεi da0εi d∆0εi dMεi dWεi (3.15a)
fεiε′ i′ (Mεi , Wεi , a0εi , ∆0εi , iεi ) · hεi (Mεi , Wεi , a0εi , iεi ) .
Da die Signalenergie keine Information über den Übergang von einer Zerlegung in die andere enthält, können wir die innere Summation in die Redefinition der Verteilung ziehen und verwenden dafür denselben Buchstaben:
H(t0 , T ) =
N N X ε Z X
diεi da0εi d∆0εi dMεi dWεi
ε=0 i=1
(3.15b)
fεi (Mεi , Wεi , a0εi , ∆0εi , iεi ) · hεi (Mεi , Wεi , a0εi , iεi ) . Die neue Verteilung ist zu normieren, N N X ε Z X
diεi da0εi d∆0εi dMεi dWεi fεi (Mεi , Wεi , a0εi , ∆0εi , iεi ) = 1 ,
(3.16)
ε=0 i=1
und die Entropie
−
N X
N ε X
ε=0 i=1
Z
diεi da0εi d∆0εi dMεi dWεi
(3.17)
fεi (Mεi , Wεi , a0εi , ∆0εi , iεi ) · ln fεi (Mεi , Wεi , a0εi , ∆0εi , iεi ) := S2
muß unter den Nebenbedingungen (3.15b, 3.16) extremal werden. Wir bekommen nach einiger Rechnung: fεi (Mεi , Wεi , a0εi , ∆0εi , iεi ) = exp[−ξ − β · hεi (Mεi , Wεi , a0εi , iεi )] , N N ε XX Zεi , S2 = ξ + β · H , ξ := ln Z , Z = Zεi =
Z
ε=0 i=1
diεi da0εi d∆0εi dMεi dWεi exp[−β · hεi (Mεi , Wεi , a0εi , iεi )] .
Allgemein ergibt sich aus der Identität
(3.18)
3.3 Maximierung des Nicht-Wissens
H =−
1 ∂Z ∂ξ =− · ∂β Z ∂β
59
(3.19)
der Wert von β, so daß schließlich Z und damit ξ und S2 feste Werte haben (H ist durch (3.7) gegeben bzw. als meßbar eingeführt). Es ist praktisch, folgende Abkürzung für das Zeit- bzw. Raummittel einer beliebigen Funktion R(M, W, a0 , ∆0 , i) einzuführen: N N N X N X ε Z ε X X hRεi i := diεi da0εi d∆0εi dMεi dWεi hRi := ε=0 i=1 0 fεi (Mεi , Wεi , aεi , ∆0εi , iεi ) · ε=0 i=1
(3.20)
Rεi (Mεi , Wεi , a0εi , ∆0εi , iεi ) .
Damit und aus (3.19) ergibt sich für die Variation der Signalenergie: [∆h]2 := hh2 i − hhi2 =
∂2ξ . ∂β 2
(3.21)
Die Variation sollte mit zunehmender Netzgröße gegen null streben. Als Wahrscheinlichkeit für das Auftreten der Zerlegung {εi} ergibt sich mit (3.16) und (3.10)4 : Z
Zεi τεi = . Z T (3.22) Weiter ergibt sich als Wahrscheinlichkeit dafür, daß ein Neuron n in der Akkumulationsphase bzw. Sendephase ist, der Ausdruck: Pεi =
PAn :=
diεi da0εi d∆0εi dMεi dWεi fεi (Mεi , Wεi , a0εi , ∆0εi , iεi ) =
N N X ε X ε=0 i=1
Pεi , Aεi,n
bzw.
PSn :=
N N X ε X
Pεi , Sεi,n
(3.23)
ε=0 i=1
Hierbei hat Aεi,n bzw. Sεi,n den Wert 1, wenn n ein Empfänger bzw. Sender in der Zerlegung {εi} ist, sonst den Wert 0. Damit läßt sich die Pulsrate eines Neurons und die mittlere Pulsrate eines Netzes in einfacher Weise anbinden an die theoretische Beschreibung der Netzdynamik. Denn ist PAn · T die Summe der Akkumulationszeiten des Neurons n im Beobachtungszeitraum T , so ist die Anzahl der von Neuron n im Zeitraum T abgefeuerten Pulse gegeben durch (1 − PAn ) · T /td . Somit beträgt die Pulsrate Fn eines Neurons n bzw. die mittlere Pulsrate F des Netzes: 4
Diese Größe, das Integral der Verteilung über die Variablen einer Zerlegung, ist im Kapitel 2 auch als Verteilung der Zerlegungen bezeichnet worden. Wir hoffen, daß sich aus dem Sinnzusammenhang die eindeutige Auflösung dieser Doppelverwendung ergibt.
60
3 Allgemeine Theorie der Netze mit dynamischen Synapsen
PSn 1 = td td
N −1 X
N ε X
Zεi · Sεi,n Z
N −1 X
N ε X
Zεi . Z ε=0 i=1 ε=0 i=1 (3.24a) Die mittlere Pulsrate eines Netzes läßt sich mit (3.24a) kürzer schreiben:
Fn =
F =
bzw. F =
1 1 · td N
(N − ε)
1 ∂ξ 1 1 · , · hAnzahl der Sender =: #si = · td N N ∂td
(3.24b)
wobei wir den Umstand nutzen, daß die Integrale über die ∆0 (3.18) in (N −ε) der Zerlegung {εi} den Wert td haben. Definieren wir die Variation der mittleren Pulsrate gemäß (3.21), so ergibt sich: 1 1 · (h#s2 i − h#si2 ) t2d N 2 2 N N N −1 N −1 ε ε X X 1 Zεi X 1 X Zεi 2 = 2 · 2 − (N − ε) (N − ε) t N Z Z
[∆F ]2 :=
d
ε=0
i=1
ε=0
∂ξ 1 ∂h#si 1 1 ∂ 1 td · · = · · · = td N 2 ∂td td N 2 ∂td ∂td 2 1 1 ∂ ξ ∂ξ = · + td · 2 · td N 2 ∂td ∂td F 1 ∂F = . + · td · N N ∂td
i=1
(3.24c)
Da im kalten Bereich die Pulsrate und ihre Ableitung beschränkt sind, ergibt sich für große Netze eine verschwindende Schwankung der Pulsrate. Dies stimmt überein mit den Experimenten (Abbildung 2.14 rechts).
3.4 Zustandsgleichungen Weitere nützliche Beziehungen erhält man, wenn die Entropie nach dem konstanten Wert des Eingangssignals ie bzw. dem zeitlichen Mittelwerten ˆie der Eingangssignale ie (t) abgeleitet wird. Es bezeichne Xe irgendeinen der konstanten Eingangssignalwerte bzw. seinen Mittelwert. Da β = β(H(Xe ), Xe ) und ξ = ξ(H(Xe ), Xe ) sind, muß auch S = S(H(Xe ), Xe ) sein. Damit ergibt sich für das Differential von S die Beziehung:
3.5 Zusammenfassung
61
X ∂ξ ∂β dS = dξ + H · dβ + β · dH = · dXe + β · dH +H · ∂Xe ∂Xe e X ∂β ∂β · dXe + β · dH + A(Xe ) + H · −H · = ∂Xe ∂Xe e (3.25) X ∂S ∂S = A(Xe ) · dXe + β · dH ⇔ = A(Xe ) , =β ∂Xe ∂H e Z Z ∂S ∂H ⇔ S = ds = dXe . + β(Xe ) · ∂Xe ∂Xe A(Xe ) ist eine Abkürzung für den Ausdruck: N N X ε Z X ε=1 i=1
∂ ∂Xe
=
N X
da0εi d∆0εi dMεi dWεi Z
N ε X
ε=1 i=1
diεi exp[−ξ − β ·
1 ∂Zεi Z ∂Xe β
hεi (Mεi , Wεi , a0εi , iεi )]
(3.26) ξ,β fixed
. fixed
Die letzte Zeile von (3.25) besagt, daß wir die partiellen Ableitungen ∂S/∂Xe und ∂H/∂Xe sowie β als Funktion der Eingangssignale ausrechnen bzw. vermessen müssen, um die Entropie zu kennen. Die Berechnung von (3.26) für den allgemeinen Fall der dynamischen Synapsen ist ungleich aufwendiger als für den Fall der konstanten Synapsen. Da der „konstante Fall“ für die Anwendungen wichtig ist, unterbrechen wir hier die weitere Darlegung der Theorie des allgemeinen Falls und spezialisieren uns im nächsten Kapitel auf konstante Synapsen. Die Überprüfung der „konstanten Theorie“ geschieht ebenfalls in diesem Kapitel anhand der Experimente des Kapitel 2.
3.5 Zusammenfassung Die experimentell gefundenen Größen der Entropie und Pulsrate werden in zwei Schritten hergeleitet. Zunächst werden die ursprünglichen Signalgleichungen für Neuronen und Synapsen vermittels einer verallgemeinerten HamiltonJacobi’schen partiellen Differentialgleichung in eindeutiger Weise mit der Signalenergie des Netzes verbunden; letztere ist die Summe der an den Membranen und in den Synapsen gespeicherten Energie. Dann kann im nächsten Schritt der zeitliche Mittelwert der Signalenergie in einen räumlichen Mittelwert unter Verwendung einer Verteilungsfunktion gewandelt werden. Diese
62
3 Allgemeine Theorie der Netze mit dynamischen Synapsen
Funktion zählt, wie oft im Laufe der Beobachtungszeit vom Netz jeder Satz von Synapsen- und Neuronwerten für jede Zerlegung angenommen wird. Bei kleinen Netzen kann die Dichtefunktion experimentell bestimmt werden; theoretisch gelingt ihre Bestimmung im Falle der konstanten Synapsen durch die Lösung eines Optimierungsproblems: gesucht wird diejenige Dichtefunktion, welche die mittlere Signalenergie ergibt und das Nicht-Wissen maximal macht. Letzteres ist dadurch entstanden, daß die Signalgleichungen zwar genau bekannt sind, aber messtechnisch nicht zugänglich oder rechnerisch nicht mehr lösbar sind. Die Entropie erweist sich als grundlegende Größe, von welcher beispielsweise die Pulsrate eines beliebigen Neurons (und a fortiori die mittlere Pulsrate des Netzes) abgeleitet werden kann oder auch die Abhängigkeit der Entropie von den Eingangssignalen, seien es konstante Signale oder Pulssignale5 .
5
Die in diesem Kapitel gegebene Darstellung des Zusammenhangs von Signalgleichungen und Entropie wird einige Leser an die Thermodynamik erinnern. Dort ist die Energiefunktion die Hamilton’sche Funktion der Energie eines Teilchensystems, welche einerseits über die Hamilton-Jacobi’sche partielle Differentialgleichung die Bewegungsgleichungen der Teilchen (Mikrodynamik) erzeugt und andererseits die Entropiemaximierung durch die Vorgabe des Energiemittels berechenbar macht (Makrodynamik). Eine einfache Übertragung der Thermodynamik war jedoch nicht möglich, da die endliche Zeitdauer einer Zerlegung in Gasen beispielsweise nur ihre Entsprechung findet, wenn die Molekeln inelastisch stoßen würden. Die Behandlung eines solchen Falls war und ist mir nicht bekannt, weshalb die Besinnung auf die grundlegende Gleichheit von Zeitmittel und Raummittel erfolgte.
4 Makrodynamik der Netze mit konstanten Synapsen Ulrich Ramacher und Jens Harnisch
Für konstante Synapsen reicht es, die partielle Differentialgleichung ∂Jεi (Mεi , iεi (t)) + hεi (Mεi , Wεi , iεi (t)) = 0 ∂t
(4.1)
mit der Signalenergie 1 X hεi (Wεi , iεi (t)) = 2
e∈Eεi
(
X
s∈Sεi ∩Ne
2 Wes
· xs +
2 We0
)
· ie (t)
zu betrachten, denn dann lauten die charakteristischen Gleichungen (3.5b): dMe0 dWes dWe0 dMes = Wes · xs bzw. = We0 · ie , = 0 bzw. = 0, dt dt dt dt X W 2 die d(∂Jεi /∂t) e0 =− · , (4.2) dt 2 dt e∈Eεi ( ) X dJεi 1 X 2 2 = Wes · xs + We0 · ie (t) = hεi (Wεi , iεi (t)) . dt 2 e∈Eεi
s∈Sεi ∩Ne
Wir haben es also mit einem System zu tun, dessen Makrodynamik nur noch von den Anfangswerten jeder Zerlegung und den äußeren Signalen abhängt, nicht aber mehr von den synaptischen Variablen.
64
4 Makrodynamik der Netze mit konstanten Synapsen
4.1 Bekannte Synapsen Wir nehmen zunächst an, daß die Werte der Synapsen bekannt sind. Das Wissen um die W - bzw. M -Funktionen bringen wir in die Wandlung des Zeitmittels in ein Raummittel ein und erhalten:
∧ εi ∧ e ∈ Eεi ∧ s ∈ Sεi ∩ Ne : ∧ εi ∧ e ∈ Eεi :
Z
Z
′ ′ dWes δ(Wes − Wes ) = 1 , ′ ′ dWe0 δ(We0 − We0 ) = 1 ,
Z
Z
dMes φ(Mes ) = 1 dMe0 φ(Me0 ) = 1 .
Für das Raummittel der Energie bekommen wir damit: N N X ε Z X ε=0 i=1
diεi da0εi d∆0εi fεi (a0εi , ∆0εi , iεi ; Wεi ) · hεi (iεi ; Wεi ) = H ,
(4.3a)
wobei wir mit f wieder die unbekannte Verteilung bezeichnen, auch wenn sie nun von weniger Variablen abhängt; das Semikolon trennt Parameter von Variablen. Dementsprechend ist die Verteilung zu normieren gemäß: N N X ε Z X
diεi da0εi d∆0εi fεi (a0εi , ∆0εi , iεi ; Wεi ) = 1,
(4.3b)
ε=0 i=1
und die Entropie
−
N X
N ε X
ε=0 i=1
Z
diεi da0εi d∆0εi fεi (a0εi , ∆0εi , iεi ; Wεi ) · ln fεi (a0εi , ∆0εi , iεi ; Wεi ) := S
muß extremal werden unter den Nebenbedingungen (4.3a,b). Wir bekommen:
4.1 Bekannte Synapsen
65
fεi (a0εi , ∆0εi , iεi ; Wεi ) = exp[−ξ − β · hεi (iεi ; Wεi )] , N N ε XX Zεi , S = ξ + β · H , ξ := ln Z , Z = ε=1 i=1
Z
diεi da0εi d∆0εi exp[−β · hεi (iεi ; Wεi )] ! Z Y Z θ Y Z td 0 0 dae · diεi exp[−β · hεi (iεi ; Wεi )] = d∆s ·
Zεi =
s∈Sεi
0
−ε = tN · θε · d
Z
0
e∈Eεi
diεi exp[−β · hεi (iεi ; Wεi )] .
(4.4)
Wieder ergibt sich aus der Identität H =−
∂ξ 1 ∂Z =− · ∂β Z ∂β
(4.5a)
der Wert von β, so daß schließlich Z und damit ξ und S feste Werte haben. Analog verfährt man mit allen weiteren, im Kapitel 3 entwickelten Darlegungen. Wir betrachten zunächst den Fall, daß die Eingangssignale konstant sind. A. Konstante Eingangssignale: ˆie = ie Die Energie hängt nurmehr von Parametern ab und die Verteilung f ist bezüglich ie eine Deltafunktion. Es ergibt sich mit (4.4) für Zεi : −ε Zεi = tN · θε · e−β·hεi (iεi ,Wεi ) . d
(4.5b)
Daraus berechnet sich mit (4.5a):
N N N N X N X N X ε ε ε X X X Zεi hhεi i = H= Pεi · hεi (iεi , Wεi ) . · hεi (iεi , Wεi ) = Z ε=0 i=1 ε=0 i=1 ε=0 i=1 (4.5c) Dies ist ein sehr plausibles Resultat. Indem wir für H den gemessenen Mittelwert einsetzen, kann daraus der Ausdruck für β berechnet werden, so daß nunmehr S = ξ + β · H in berechenbarer Form vorliegt. S läßt sich auch schreiben:
66
4 Makrodynamik der Netze mit konstanten Synapsen
S=
N X
N ε X
ε=0 i=1
=
N N X ε X ε=0 i=1 N X
=−
Pεi · [ln Z + β · hεi (iεi , Wεi )] Pεi · [− ln Pεi + ln Zεi + β · hεi (iεi , Wεi )]
N ε X
ε=0 i=1
(4.5d)
Pεi · [ln Pεi − (N − ǫ) · ln td − ǫ · ln θ] .
An dieser Stelle sei daran erinnert, daß wir als experimentelle Entropie in Kapitel 2 nur den ersten Summanden der Klammer in (4.5d) berücksichtigen konnten. Mit (3.26) ergibt sich schließlich für ∂S/∂ie : N N X ε X ∂S W 2 · Aεi,e W2 Pεi · e0 = −β = −β · PAe · e0 , (4.6a) ∂ie 2 2 ε=1 i=1 und für ∂S/∂xs : N N X ε X
∂S = −β ∂xs ε=1
i=1
Pεi ·
X W 2 · χεi (e, s) es , 2
(4.6b)
e∈Eεi
wobei die Größe χεi,e (e, s) den Wert 1 hat, wenn s ∈ {Sεi ∩Ne } gilt, sonst null. Zu beachten ist, daß diese Beziehung ebenso wie (4.6a) nur für festgehaltene Signalenergie H gilt (siehe 3.25). R B. Pulse als Eingangssignale: ˆie := 1/T · ie (t)dt = x · Fe · td
Da ein in der Praxis wichtiger Fall derjenige ist, bei welchem die Eingangssignale die von einem anderen Netz angelieferten Pulssignale sind, nehmen wir nun an, daß nur die Verteilungen ω(ie ) der Eingangswerte 0 oder 1 jeden Neurons vom anliefernden Netz bekannt sind, nicht aber die Zeiten, wann ein Puls eintrifft. Da die Pulse am jeweiligen e-ten Eingang unabhängig von dem empfangenden Netz auftreten, bekommen wir für die Verteilung aus (3.18): Y fεi (Mεi , Wεi , a0εi , ∆0εi , iεi ) = φεi (Mεi , Wεi , a0εi , ∆0εi ; ω(iεi )) · ω(iεi ) e∈Eεi
und aus der Normierungsbedingung für jedes ω(ie ), Z 1 = die ω(ie ) , ergibt sich als Normierungsbedingung für φεi :
4.1 Bekannte Synapsen
1=
Z
67
da0εi d∆0εi dMεi dWεi φεi (Mεi , Wεi , a0εi , ∆0εi ; ω(iεi )) .
Die Berechnung des Energiemittels gemäß (3.15b) ergibt mit der Zerle0 , iεi ) in unserem Fall der bekannten Gewichte gung hεi = h1εi (Wεi ) + h0εi (Wεi (und unter Wiederbenutzung von f als Symbol für die verbliebene unbekannte Verteilung):
H=
N X
N ε X
ε=0 i=1
"
Z
da0εi d∆0εi fεi (a0εi , ∆0εi ; ω(iεi ))
· h1εi (Wεi ) +
X Z
e∈Eεi
W 2 · ie die ω(ie ) · e0 2
#
(4.7) .
Bezeichne {ten }n∈N die (nicht bekannten) Zeitpunkte des Erscheinens eines Pulses am e-ten Eingang. Das Eingangssignal läßt sich dann folgendermaßen aufschreiben:
ie (t) = x · χe (t) , mit χe (t) =
(
1 0
für ten < t < ten + 1ms sonst .
Gehen wir mit dieser Beschreibung in die Transformation des Zeitmittels in ein Raummittel (3.15b) ein, so erbringt die Integration über ie nur einen von null verschiedenen Term:
H=
N N X ε Z X
da0εi d∆0εi fεi (a0εi , ∆0εi ; ω(iεi ))
ε=0 i=1
"
X ω(ie = x) · W 2 · ie e0 · h1εi (Wεi ) + 2 e∈Eεi
#
(4.8a) .
Die Entropie N N X ε Z X S=− da0εi d∆0εi fεi (a0εi , ∆0εi , ω(iεi )) · ln fεi (a0εi , ∆0εi , ω(iεi )) (4.8b) ε=0 i=1
wird maximal für die Verteilung: fεi (a0εi , ∆0εi , ω(iεi )) = exp[−ξ − β · hεi (; Wεi , ωεi )] , X ωe (ie = x) · W 2 · ie e0 mit hεi (; Wεi , ωεi ) :=h1εi (Wεi ) + . 2 e∈Eεi
68
4 Makrodynamik der Netze mit konstanten Synapsen
Da die Wahrscheinlichkeit ωe (ie = x) identisch ist mit dem Produkt aus Pulsrate und Pulsdauer, Fe · td , und der zeitliche Mittelwert ˆie eines eingangsseitigen Pulssignals ie gegeben ist durch Fe · td · x, brauchen wir nur i durch ˆi zu ersetzen. Insbesondere ergibt sich für Zεi : ˆ
−ε Zεi = tN · θε · e−β·hεi (;Wεi ,iεi ) , d
(4.8c)
und für H ergibt sich mit (4.8a):
H=
N X
N ε X
ε=0 i=1
Z
da0εi d∆0εi fεi (a0εi , ∆0εi ; ˆiεi ) · hεi (; Wεi , ˆiεi ) .
(4.8d)
Nach Ersetzen von i durch ˆi gelten sodann (4.6a,b).
4.2 Bekannte Verteilung von Synapsen Es liege nunmehr nur noch das Wissen um die Verteilung v(W ) der synaptischen Gewichte vor (typisch etwa für die elektronische Realisierung von neuronalen Netzen). In diesem Fall haben wir es mit einem Ensemble von Netzen zu tun, welche sich bezüglich der möglichen Anfangswerte und des Satzes der gewählten Werte für die Synapsen unterscheiden. In diesem Buch spezialisieren wir uns der Einfachheit halber auf eine Gleichverteilung, welche durch den Mittelwert W bzw. w und durch das Intervall [W − ∆W, W + ∆W ] bzw. [w − ∆w, w + ∆w] gegeben sei. Da wie im Fall der Pulse als Eingangssignale ein Teil der Verteilung f bekannt ist, können wir die Darlegungen aus Abschnitt 4.1 übertragen und erhalten:
∧ εi ∧ e ∈ Eεi ∧ s ∈ Sεi ∩ Ne : ∧ εi ∧ e ∈ Eεi :
Z
Z
dWes v(Wes ) = 1 , dWe0 v(We0 ) = 1 ,
Z
Z
dMes φ(Mes ) = 1 dMe0 φ(Me0 ) = 1 .
Bezeichnen wir wieder die verbleibende Verteilung mit f , so gilt:
4.2 Bekannte Verteilung von Synapsen
N X
N ε X
ε=0 i=1
Z
N N X ε Z X
diεi da0εi d∆0εi fεi (a0εi , ∆0εi , iεi ; W ) = 1 ,
diεi da0εi d∆0εi fεi (a0εi , ∆0εi , iεi ; W )
ε=0 i=1
−
N X
N ε X
ε=0 i=1
Z
69
Z
vεi (Wεi ) · hεi (Wεi , iεi ) = Hεi ,
diεi da0εi d∆0εi fεi (Mεi , a0εi , ∆0εi , iεi ; W ) · ln fεi =: S , (4.9a)
wobei die W -Integrale von W − ∆W bis W + ∆W bzw. w − ∆w bis w + ∆w reichen. Daß die verbleibende Verteilung f parametrisiert ist durch Mittelwert W bzw. w und Streuung ∆W bzw. ∆w, sei der Lesbarkeit zuliebe durch die alleinige Notierung von W hinter dem Semikolon angezeigt. Desgleichen für die Energie h. Die Berechnung der W -Integrale ergibt:
hεi (iεi ; W ) =
Z
dWεi vεi (Wεi ) · hεi (Wεi , iεi )
W2 (∆W )2 =x· seεi · + + 2 6 e=1 ε X
ε X e=1
ie
!
w2 (∆w)2 + 2 6
.
(4.9b)
Hierbei bezeichnet seεi die Anzahl der mit dem e-ten empfangenden Neuron verbundenden und gleichzeitig sendenden Neurone in der Zerlegung {εi}. Damit bekommen wir wieder für die Energie den Ausdruck
H=
N N X ε Z X ε=0 i=1
da0εi d∆0εi fεi (a0εi , ∆0εi , iεi ; W ) · hεi (iεi ; W ) .
(4.9c)
Führen wir die Funktionalvariation durch, so ergibt sich nun: fεi (a0εi , ∆0εi , iεi ; W ) = exp[−ξ − β · hεi (iεi ; W )] , S = ξ + β · H , ξ := ln Z , N Z N ε XX −ε ε Zεi , Zεi = tN · θ · diεi exp[−ξ − β · hεi (iεi ; W )] . Z= d ε=1 i=1
(4.10a)
Für konstante Eingangssignale folgt analog zu (4.5c und 4.6a-b):
70
4 Makrodynamik der Netze mit konstanten Synapsen
H=
N N X ε X ε=0 i=1 N X
∂S = −β ∂ie ε=1
Pεi · hεi (iεi ; W ) ,
N ε X i=1
N N X ε X
∂S = −β ∂xs ε=1
i=1
Pεi ·
w2 (∆w)2 · Aεi,e , + 2 6
e∈Eεi
(4.11a)
X W2 (∆W )2 Pεi · · + χεi (e, s) . 2 6
Handelt es sich um Pulse als Eingangssignale, so erhalten wir: fεi (a0εi , ∆0εi ; W ) = exp[−ξ − β · hεi (ˆiεi ; W )] , S = ξ + β · H , ξ := ln Z , N N ε XX −ε Zεi , Zεi = tN · θε · exp[−ξ − β · hεi (ˆiεi ; W )] . Z= d ε=1 i=1
(4.10b)
Analog für (4.11a):
H=
N N X ε X ε=0 i=1 N X
∂S = −β ∂ˆie ε=1
Pεi · hεi (ˆiεi ; W ) ,
N ε X i=1
N N X ε X
∂S = −β ∂xs ε=1
i=1
Pεi · Aεi,e · Pεi ·
X
e∈Eεi
w2 (∆w)2 + 2 6
(4.11b)
,
W2 (∆W )2 χεi (e, s) · + 2 6
.
4.3 Prüfung der Übereinstimmung von Theorie und Experiment A. Bekannte Synapsenwerte, konstante Eingangssignale Wir betrachten ein vollvernetztes Netz mit 9 Neuronen; pro Netz sind hunderttausend Pulsereignisse und hundert verschiedene Anfangsbedingungen spendiert worden. Die eingangsseitigen Synapsen hatten Werte aus dem Intervall [0.6, 1.0], die anderen Synapsen lagen mit ihren Werten in [0.2, 0.4]. Der
4.3 Prüfung der Übereinstimmung von Theorie und Experiment
71
Schwellwert hat den Wert θ = 5, und td beträgt 1 ms (wir verwenden 1 ms als Einheit und messen dementsprechend Synapsenwerte in kHz). An dieser Stelle sei daran erinnert, daß wir als Verteilung hier die Verteilung der Häufigkeiten der Zerlegungen meinen, also die Größen Pεi ; im nachfolgenden sind die experimentell bestimmten Werte Pεi mit den von der Theorie gegeben Werten Pεi = Zεi /Z verglichen. Stellvertretend für viele andere Simulationen zeigen die Abbildungen 4.1a, 4.1b die Verteilungen für bekannte Synapsen bzw. Synapsenverteilungen bei konstantem Eingangssignal von i = 0.1 bzw. i = 1.0; die experimentelle Verteilung ist grün, die theoretische blau markiert.
(a) i = 0.1
Abb. 4.1 Experimentelle und theoretische Verteilung bei bekannten Synapsen Charakteristisch für den kalten Betrieb sind die von links nach rechts fallenden Kurven. Steigert man das Eingangssignal immer weiter, beispielsweise auf i = 10, so steigt die Kurve von rechts nach links und zeigt damit an, daß das Netz überwiegend feuert (Abbildungen 4.1c). Daß dabei die Übereinstimmung zwischen Theorie und Experiment trotz einer mittleren Pulsrate von 673Hz noch so gut ausfällt, zeigt an, daß die Wandlung des Zeitmittels zum Raummittel offensichtlich ausreichend genau modelliert wurde.
72
4 Makrodynamik der Netze mit konstanten Synapsen
(b) i = 1
(c) i = 10
Abb. 4.1 (Forts.) Experimentelle und theoretische Verteilung bei bekannten Synapsen
4.3 Prüfung der Übereinstimmung von Theorie und Experiment
73
Besonders deutlich wird die Güte der Modellierung, wenn 100 verschiedene Anfangswerte pro Netz und 1000 Netze betrachtet werden, welche sich nur in den Synapsensätzen unterscheiden (Gleichverteilung aus W ± ∆W bzw. w ± ∆w), und die experimentellen bzw. theoretischen Verteilungen arithmetisch gemittelt werden (Abbildungen 4.2, nach 11:32 Stunden Simulation).
Abb. 4.2 Gemittelte experimentelle bzw. theoretische Verteilungen für 1000 gleichartige Netze mit verschiedenen Synapsensätzen; i = 1.0 Da sich die Entropie experimentell nur durch die Bestimmung der Häufigkeiten des Auftretens jeder Zerlegung als Funktion der jeweiligen Anfangswerte für ae und ∆s bestimmen läßt, führt dies zu der Einführung von Datentypen mit schon mehr als 128bit Genauigkeit, wenn das Intervall von 0 bis td bzw. θ in mehr als 10 Intervalle geteilt werden soll. Um den Programmieraufwand und die Simulationszeit erträglich zu halten, verzichten wir auf den Vergleich von experimenteller und theoretischer Entropie und verwenden stattdessen die P Funktion − Pεi ·ln Pεi mit den experimentell bzw. den theoretisch bestimmten Werten für Pεi . Da die theoretische Entropie neben dieser Funktion noch eine Pweitere, einfach berechenbare enthält (siehe Gleichung (4.5d)), wollen wir − Pεi · ln Pεi als Teilentropie bezeichnen; der Vergleich dieser Teilentropien
74
4 Makrodynamik der Netze mit konstanten Synapsen
ist bereits aussagekräftig genug, was den Nachweis der Übereinstimmung von Experiment und Theorie angeht. In Abbildung 4.3a sind die experimentelle und theoretische Teilentropie aufgezeichnet und in Abbildung 4.3b sind H, mittleres Interspike-Intervall ISI und β als Funktion des Eingangssignals aufgetragen. Die Teilentropien liegen bei dem betrachteten Eingangssignalbereich von 0.1 bis 1.0 weitestens 3% auseinander.
(a) Experimentelle und theoretische Teilentropie als Funktion des Eingangssignals
(b) Experimentelle Energie H, β (linke Ordinate) sowie ISI (rechte Ordinate) als Funktion des Eingangssignals
Abb. 4.3
4.3 Prüfung der Übereinstimmung von Theorie und Experiment
75
Abbildung 4.3c bzw. Abbildung 4.3d zeigen experimentelle und theoretische Pulsraten der Neuronen des Netzes für ein Eingangssignal der Stärke 0.8 bzw. seine mittlere Pulsrate (gemäß Gleichung (3.24a)) als Funktion des Eingangssignals; auch hier zeigt sich die Brauchbarkeit der Modellierung im kalten Betriebsbereich.
(c) Experimentelle bzw. theoretische Pulsraten der einzelnen Neuronen des Netzes bei Eingangssignal 0.8
(d) Mittlere experimentelle bzw. theoretische Pulsrate des Netzes als Funktion des Eingangssignals
Abb. 4.3 (Forts.)
76
4 Makrodynamik der Netze mit konstanten Synapsen
B. Bekannte Synapsenwerte, bekannte Eingangspulsverteilungen Statt konstanter Eingangssignale legen wir nun Pulse an die verschiedenen Eingänge an, welche eine Wiederholrate zwischen 100 und 900 Hz aufweisen; mit diesen hohen Pulsraten erreichen wir Vergleichbarkeit mit den konstanten Eingangswerten (100 Hz bewirkt im Zeitmittel einen konstanten Eingang von 0.1). Als Pulsgenerator verwenden wir, wie früher schon, ein Netz mit 9 Neuronen, welches mit konstanten Eingangssignalen angeregt wird. Das untersuchte Netz ist dasselbe wie im Abschnitt A. Die Abbildungen 4.4a,b zeigen die experimentelle und theoretische Verteilung für ein vollvernetztes Netz von 9 Neuronen bei Eingangspulsraten von 100 bzw. 900 Hz, und in Abbildung 4.4c sehen wir die Kurven für experimentelle und theoretische Teilentropie als Funktion der mittleren Eingangspulsrate, in Abbildung 4.4d die für ISI, β und H. Abbildung 4.4e zeigt die mittlere Pulsrate des Netzes im Vergleich von Theorie und Experiment als Funktion der Eingangspulsrate.
(a) Experimentelle und theoretische Verteilung für Eingangspulsrate 100Hz
Abb. 4.4
4.3 Prüfung der Übereinstimmung von Theorie und Experiment
77
(b) dito, für Eingangspulsrate 900Hz
(c) Experimentelle und theoretische Teilentropie als Funktion der Eingangspulsrate
Abb. 4.4 (Forts.)
78
4 Makrodynamik der Netze mit konstanten Synapsen
(d) Experimentelle Energie H, β (linke Achse) sowie ISI (rechte Achse) als Funktion der Eingangspulsrate
(e) Experimentelle und theoretische mittlere Pulsrate als Funktion der Eingangspulsrate
Abb. 4.4 (Forts.)
4.3 Prüfung der Übereinstimmung von Theorie und Experiment
79
C. Bekannte Synapsenverteilung, konstante Eingangssignale Wir betrachten wieder ein vollvernetztes Netz mit 9 Neuronen; pro Netz sind wieder hunderttausend Pulsereignisse und hundert verschiedene Anfangsbedingungen betrachtet worden. Der Schwellwert hat wieder den Wert θ = 5, und td beträgt 1 ms. Die eingangsseitigen Synapsen haben Werte aus dem Intervall [0.9, 0.3], die anderen Synapsen liegen mit ihren Werten in [0.15, 0.45]. Als Verteilung der Synapsen wählen wir Gleichverteilung, jede andere Verteilung kann, wie bereits gesagt, jedoch auch verwendet werden, wenn sie nur bekannt ist (siehe 4.9a). Die Abbildungen 4.5a-c zeigen experimentelle und theoretische Verteilungen für n = 10, 100 und 1000 synaptischen Wertesätze; bereits mit 100 Synapsensätzen erhält man stationäre Verteilungen.
(a) Experimentelle und theoretische Verteilung für n = 10 synaptische Wertesätze und i = 0.5
Abb. 4.5
80
4 Makrodynamik der Netze mit konstanten Synapsen
(b) dito, für n = 100
(c) dito, für n = 1000
Abb. 4.5 (Forts.)
4.3 Prüfung der Übereinstimmung von Theorie und Experiment
81
Abbildung 4.5d zeigt die experimentelle und theoretische Entropie als Funktion des Eingangssignals, Abbildung 4.5e die Mittelwerte der Energie und des Interspike-Intervalls sowie den Wert von β als Funktion des Eingangssignals. Schließlich zeigt Abbildung 4.5f die experimentell und theoretisch bestimmte mittlere Pulsrate. Wieder ergibt sich eine zufriedenstellende Übereinstimmung von Experiment und Theorie.
(d) Experimentelle und theoretische Entropie als Funktion des Eingangssignals
(e) Experimentelle Energie H, β (links) sowie ISI (rechts) als Funktion des Eingangssignals
Abb. 4.5 (Forts.)
82
4 Makrodynamik der Netze mit konstanten Synapsen
(f) Experimentelle und theoretische mittlere Pulsrate des Netzes als Funktion des Eingangssignals
Abb. 4.5 (Forts.) D. Bekannte Synapsen- und Eingangspulsverteilungen Statt konstanter Eingangssignale legen wir nun wieder Pulse an die verschiedenen Eingänge an, welche 500 Hz Wiederholrate aufweisen. Die eingangsseitigen Synapsen haben wieder Werte aus [0.3, 0.9] und die anderen Synapsen aus [0.15, 0.45]. Abbildung 4.6a zeigt experimentelle und theoretische Verteilung, und in Abbildung 4.6b,c sehen wir die Kurven für experimentelle und theoretische Entropie bzw. experimentelle Energie, ISI und β als Funktion der mittleren Eingangspulsrate. Die experimentelle und theoretische mittlere Pulsrate des Netzes als Funktion der mittleren Eingangspulsrate zeigt schließlich Abbildung 4.6d1 .
1
Dem Leser ist nicht entgangen, daß Schwellwert und Pulsdauer von der Theorie auch mit von 1 verschiedenen Werten zugelassen sind. Im Kapitel 2 hatten wir beide Werte auf 1 gesetzt und entsprechende Reskalierungen der Synapsen vorgenommen, so daß die Statistik der Feuerereignisse invariant blieb. Da die Anforderungen an die Genauigkeit der Simulation der Theorie jedoch abhängen von den Werten von θ und td und da eine mikroelektronische Realisierung der betrachteten Netze ebenfalls von der Einstellbarkeit des Schwellwertes und der Pulsdauer profitiert, sind wir seit Kapitel 3 zum allgemeinen Fall zurückgekehrt.
4.3 Prüfung der Übereinstimmung von Theorie und Experiment
83
(a) Experimentelle und theoretische Verteilung für eine Eingangspulsrate von 500 Hz
(b) Experimentelle und theoretische Entropien als Funktion der mittleren Eingangspulsrate
Abb. 4.6
84
4 Makrodynamik der Netze mit konstanten Synapsen
(c) Experimentelle Energie H, β sowie ISI (rechts) als Funktion der Eingangspulsrate
(d) Experimentelle und theoretische mittlere Pulsrate des Netzes als Funktion der mittleren Eingangspulsrate
Abb. 4.6 (Forts.)
4.5 Bestimmung der Signalenergie und Entropie durch die Pulsrate
85
4.4 Korrelationsfreiheit Die für Netze mit konstanten Synapsen im kalten Betriebsbereich beobachtete Abwesenheit von Korrelationen zwischen den Zündzeitpunkten irgend zweier Neurone wollen wir nun theoretisch begründen. Der Ausdruck der Entropie stützt sich auf den Logarithmus des Zerlegungsvolumen und das Produkt von β mit dem Erwartungswert der Signalenergie. Der erste Term beschreibt, wie groß der Raum der möglichen Zerlegungen ist, der zweite weist auf die Proportionalität von Entropie und Energie hin. Da wir in den Signalgleichungen und dem Ausdruck für die Signalenergie nur die Werte der Synapsen und der Eingangssignale finden, nicht aber die Membranpotentiale oder weitere Terme, welche den Übergang einer Zerlegung in eine andere spezifiziert, so gibt es keinen Hinweis darauf, daß von den 2N möglichen Zerlegungen nicht alle vorkommen dürften. Dementsprechend war bei der Maximierung der Entropie – also des Nicht-Wissens – eine Verteilung entstanden, welche sich erstens auf alle möglichen Zerlegungen stützt und zweitens dafür immer den gleichen strukturellen Ausdruck formuliert. Daraus folgt, daß jede 2-Neuron-Korrelation sehr klein bzw. null ist (im Grenzfall großer Netze). Denn würde es ein Paar von Neuronen geben, welches nur als sendendes bzw. akkumulierendes Paar in Erscheinung tritt, nie jedoch das eine als Sender und das andere als empfangendes, so müsste die Verteilung für die Konstellation (1e, 2s) bzw. (1s, 2e) null sein. Dies ist aber nicht der Fall. Somit stimmt Theorie und Experiment auch hierin überein.
4.5 Bestimmung der Signalenergie und Entropie durch die Pulsrate Wir betrachten beispielsweise das im letzten Kapitel beschriebene Netz zur Erzeugung der eine Muskelkontraktion steuernden Pulse. Wir haben es also mit einem vollvernetzten Netz von 100 Neuronen zu tun, welches von einem konstanten Eingangssignal (für alle Neurone über eine Synapse identischen Wertes zugeführt) ausgesteuert wird. Unsere Aufgabe sei die Berechnung der Zunahme der Entropie zwischen zwei Zeitpunkten, während derer die Eingangssignale beispielsweise proportional zur Zeit anwachsen: i(t) = a · (t − t0 ). Die Änderung des Eingangssignals muß dabei so langsam erfolgen, daß sich bei jedem Eingangswert stationäre Verhältnisse im Netz einstellen können. Es ist heutzutage nicht möglich, für ein solches Netz die Statistik zu simulieren. Über die Theorie bekommen wir jedoch Zugang. Darin ist die Größe H als zu messender Mittelwert der Signalenergie vorausgesetzt. Für größere Netze wie das jetzt betrachtete ist dies nicht durchführbar. Und wenn ein solches Netz in Silizium implementiert worden wäre, könnte man nicht von der verbrauchten elektrischen Leistung auf die Signalenergie schließen, wie wir sie in (3.3) definiert hatten. Dagegen sind die Pulsraten der Messung bzw. Simulation auch für sehr große Netze zugänglich und können als Funktion der
86
4 Makrodynamik der Netze mit konstanten Synapsen
Eingangssignale erfasst werden. Darum bietet sich an, die Größe β aus den Beziehungen von (3.24a,b) für die Pulsraten der Neurone eines Netzes zu bestimmen und sodann das so gewonnene β in (4.5c, 4.8d, etc.) zur Bestimmung von H zu nutzen. Hier bietet sich an, gleich die mittlere Pulsrate des Netzes zu messen, um die Genauigkeit zu steigern; im Falle von bekannten Synapsen und konstanten Eingangssignalen erhalten wir für die mittlere Pulsrate:
1 F = td · N
N P
N ε P
−ε e−β·hεi (Wεi ,iεi ) (N − ε) · tN · θε · d 1 ∂ξ i=1 = . · N N ∂td N ε P P −ε e−β·hεi (Wεi ,iεi ) tN · θε · d
ε=1
ε=1
(4.12a)
i=1
Dadurch sind wir in der Lage, eine Eichkurve für β als Funktion des Eingangssignals und der gemessenen Pulsrate aufzunehmen: β = β(F (i)). Der Vergleich mit der β(H(i))-Kurve, welche sich aus der gemessenen Energie H ergab, zeigt eine sehr gute Übereinstimmung, obwohl nur ein einziges Netz mit 10 verschiedenen Anfangswerten zur Bestimmung der Pulsrate herangezogen wurde (Abbildung 4.7). Bei Mittelung über 10 und mehr Netze gleichen sich die β-Kurven immer besser an2 .
Abb. 4.7 Vergleich von β(F (i)) mit β(H(i))
2
Bei größeren Netzen genügt die Speicherkapazität des PC nicht mehr, um alle Zerlegungen zu erfassen. Es empfiehlt sich dann, eine untere Schranke für den Beitrag einer Zerlegung zur Summe in (4.12a) festzulegen. Das so bestimmte β ist dann in (4.5c, etc.) einzusetzen, wobei auch hier die entsprechenden Zerlegungen mit Beiträgen unter der festgelegten Schranke entfallen.
4.5 Bestimmung der Signalenergie und Entropie durch die Pulsrate
87
Damit können wir nun die expliziten Ausdrücke für H und S berechnen:
H(i) =
N X
N ε X
ε=0 i=1
Zεi (β) · hεi (i) , Z(β)
S(i) = ln Z(β) + β · H(i) .
(4.12b)
In Abbildung 4.8 sind die aus β(F, i) berechneten Werte für H und S wiedergegeben und mit den experimentell gemessenen Werten verglichen. Da die Übereinstimmung in dem uns interessierenden Interval [0,1] vortrefflich ist, haben wir ein praktikables Verfahren zur Verfügung, welches nur über Messung der mittleren Pulsrate die Energie und Entropie des Netzes bestimmen läßt. Da mit zunehmender Größe des Netzes die Pulsraten der einzelnen Neurone immer weniger voneinander abweichen (siehe (3.24b) und Abbildung 2.14b), genügen schon wenige ausgewählte Neuronen, um zu einem zuverlässigen Wert für F zu kommen. Bemerkenswert ist die sehr gute Übereinstimmung über den großen Eingangsbereich, welcher die Pulsraten zwischen 0 und etwa 170 Hz variieren läßt.
Abb. 4.8 Theoretische Werte für H und S als Funktionen von β(H, i) bzw. β(F, i) Im Anhang findet sich eine Anleitung zur Bedienung des Simulators, mit dem alle Experimente dieses Kapitels nachvollzogen werden können. Darüberhinaus kann der Leser bevorzugte Werte für Schwellwert und Pulsdauer vorgeben.
88
4 Makrodynamik der Netze mit konstanten Synapsen
4.6 Zusammenfassung Die Theorie wird zunächst am Beispiel der Netze mit konstanten Synapsen überprüft. Die Übereinstimmung von experimentell bestimmter und theoretisch vorhergesagter Entropie, mittlerer Pulsrate des Netzes etc. ist frappant. Dies gilt für die Fälle konstanter oder gepulster Eingangssignale und für beliebige Werteverteilungen der Synapsen. So grundlegend die Energie und ihr Mittelwert auch für die Aufstellung der Theorie ist, so schwierig ist jedoch die Bestimmung der Energiewerte in einer Implementierung, wenn es sich nicht um eine Simulation auf dem Rechner handelt, sondern um eine elektronische Implementierung oder eine biologische. Dann ist die Messung der Pulsrate wegen ihrer leichten Zugänglichkeit angesagt, aus welcher über die Theorie die mittlere Energie und die Entropie ausgerechnet werden können. In der Tat stimmen die so bestimmten Entropieund Energiewerte mit den experimentell bestimmten sehr gut überein. Bei größeren Netzen mit mehr als 30 Neuronen können Näherungsverfahren eingesetzt werden, welche nur die Beiträge der häufig vorkommenden Zerlegungen berücksichtigen. Ferner zeigt sich, daß die Netze spärlich pulsen müssen, da sie anderenfalls die Eingangsinformation nicht mehr korrekt verarbeiten könnten. Damit steht die Dynamik der Netze mit pulsenden Neuronen und konstanten Synapsen auf einem soliden Fundament.
5 Informationsverarbeitung mit dynamischen Synapsen Ulrich Ramacher und Arne Heittmann
Wie wir mittels der Inter-Pulse-Inter-Neuron-Histogramme gesehen hatten (Abbildungen 2.9-2.10, Kapitel 2), kann ein Netz mit konstanten Synapsen im kalten Betriebsbereich nicht bevorzugt in einer Teilmenge der Menge aller Zerlegungen aktiv sein und im Rest gar nicht. Deshalb kann es auch keine Pulsmuster hervorbringen. Weiterhin kann es auch nur sehr eingeschränkt räumliche Pulsmuster erkennen, da die Permutation der Eingangssignale sich nicht eindeutig auf verschiedene Werte von Pulsrate und Entropie des Netzes abbilden läßt. Eine Abbildung von eingangsseitigen räumlichen Pulsmustern in ebensolche des Netzes ist somit mit kalten Netzen nicht möglich. Andererseits ist die Verwendung heißer Netze, die Pulsmuster aufweisen, ausgeschlossen, da solche Netze nur wenig auf Eingangssignale reagieren. Dies kann uns nicht überraschen, denn Netze mit konstanten Synapsen bilden, wenn sie sich im kalten Betriebsbereich befinden, eine eingangsseitige Entropie in eine Entropie des Netzes ab – beides vermittelt als Trommelfeuer von Pulsen, welche keinerlei Korrelation aufweisen. Folglich können auch nur räumlich-zeitlich gemittelte Größen wie z.B. Helligkeit oder die mittlere Pulsrate als Information übertragen werden. Wollen wir dagegen im Bild bestehende örtliche Korrelationen wie z.B. zusammenhängende Pixelmengen gleicher Helligkeit und/oder Farbe in einem Netz abbilden, dann müssen wir den Typus des Netzes wechseln und einen solchen wählen, der es erlaubt, Information mit Hilfe von Entropie und Korrelation zu erkennen, zu verabeiten und zu übertragen. Einen neuen Typus können wir nur durch Änderungen an den Neuronen oder Synapsen hervorbringen. Hier hilft die Theorie des letzten Kapitels herauszufinden, ob Änderungen am Neuron-Modell die Abbildung von Korrelationen unterstützen könnten. Denn die Form des Neuronsignals anders als durch ein Rechtecksignal festzulegen oder die Hereinnahme eines Membranverlusttermes komplizieren nur die Berechnung der Zustandssummen Zεi und führen nicht zur Einschränkung des Raumes der möglichen Zerlegungen, was Voraussetzung für die Existenz von Korrelationen und damit für die Abbildung von eingangsseitigen Korrelationen auf netzseitige wäre. Somit bleibt
90
5 Informationsverarbeitung mit dynamischen Synapsen
nur, die Synapsen mit einem dynamischen Verhalten aufwarten zu lassen; zur Steuerung dieses Verhaltens kommen die Ankunft eines einkommenen Pulssignals und das rückwärtig anliegende Membranpotential als lokale Ursachen in Betracht. Gleichung (3.6) des Kapitel 2 brachte diese Auffassung in einer einfachen Differentialgleichung zum Ausdruck. Wie dadurch Korrelationen in den IPIN-Histogrammen sichtbar gemacht werden und welche elementaren Anwendungsschritte damit möglich werden, wird in diesem Kapitel gezeigt.
5.1 Lösungstypen der Synapsengleichungen Mit dem durch (3.1) definierten Synapsenpotential hatte sich aus (2.1c) die Gleichung 3.6 ergeben, welche hier noch einmal wiedergegeben sei: dWes (t) = − γ · Wes + µ · (ae (t) − θ/2) , e ∈ Eεi , s ∈ {Sεi ∩ Ne } ∪ {0} , dt dWes (t) = − γ · Wes , e ∈ Eεi , s ∈ {Eεi ∩ Ne } . dt Wir nehmen immer an, daß die Synapsen nur positive Werte annehmen können und daß sie beschränkt sind. Nochmalige Differentiation ergibt unter Verwendung von (2.1a): ¨ es + γ W ˙ es − µ · Wes · xs = µzes , e ∈ Eεi , s ∈ S(t) := {Sεi (t) ∩ Ne } ∪ {0} : W ˙ es = −γWes , e ∈ Eεi , s ∈ {Eεi (t) ∩ Ne } : W mit
˙ ˙ es = dWes , W ¨ es = dWes , zes := W dt dt
X
s6=s′ ∈S(t)
Wes′ · xs′ (t) + We0 · ie . (5.1)
Gleichung (5.1) hat zwei Klassen von Lösungen, je nach Vorzeichen von µ. Fall sign(µ) < 0. Es lautet die homogene Lösung (alle zes = 0): λ Wes (t) = A · sin · (t − B) · e−0.5·γt , e ∈ Eεi , s ∈ S(t) , 2 Wes (t) = C0 · e−γt ,
e ∈ Eεi , s ∈ {Eεi (t) ∩ Ne } ,
wobei λ die Wurzel aus 4|µx|−γ 2 > 0 ist und die Konstanten A, B, C0 sich aus den Anfangswerten zum Zeitpunkt tx (t0 einer Dynamik oder tεi irgendeiner Zerlegung) bestimmen zu: A=
sin
λ
B = tx −
2
·
λ W (tx ) · e0.5·γtx , r := , λ ˙ · arctan r γ · W (t ) x + 2W (tx ) 2
λ · arctan r , C0 = W (tx ) · eγtx . 2
5.2 Synchronisation der Neuronen
Als inhomogene Lösung können wir vorläufig schreiben1 : Z ′ 2 t λ ′ ′ Wes (t) = · (t − t ) · e0.5·γ·(t −t) dt′ . zes (t ) · sin λ tx 2
91
(5.2a)
Es handelt sich also um eine gedämpfte Schwingung der Synapse unter dem Einfluß einer Anregung zes . Wie wir gleich sehen werden, unterstützen solche Synapsen nicht die Korrelation. Ganz anders im nächsten Fall. Fall sign(µ) > 0. Die homogene Lösung lautet nun: Wes (t) = C1 · e0.5·(λ−γ)t + C2 · e−0.5·(λ+γ)t ,
Wes (t) = C0 · e
−γt
,
e ∈ Eεi , s ∈ S(t) ,
e ∈ Eεi , s ∈ {Eεi (t) ∩ Ne } ,
wobei λ die Wurzel aus 4µx + γ 2 ist. Aus den Anfangsbedingungen ergibt sich für die Konstanten: ˙ (tx ) (λ + γ) · W (tx ) + 2W · e−0.5·(λ−γ)tx , 2λ ˙ (tx ) (λ − γ) · W (tx ) − 2W · e+0.5·(λ+γ)tx , C2 = 2λ C0 = W (tx ) · eγtx .
C1 =
Die Struktur der inhomogenen Lösung ergibt sich wieder zu: Z ′ 2 t λ ′ ′ Wes (t) = · (t − t ) · e0.5·γ·(t −t) dt′ . zes (t ) · sinh λ tx 2
(5.2b)
Also haben wir es mit exponentiell ansteigenden bzw. abfallenden Synapsen unter dem Einfluß einer Anregung zes zu tun. Wie im nächsten Abschnitt gezeigt wird, unterstützen dynamische Synapsen mit positivem µ die Bildung von Korrelationen bzw. Ordnung; die mit negativem µ bewirken die Auflösung von Korrelationen bzw. Ordnung, also Dekorrelation bzw. Unordnung.
5.2 Synchronisation der Neuronen Daß es sich beim zweiten Fall mit positivem µ um etwas Neuartiges handelt, wollen wir an einem 2-Neuron-System klar machen, welches zwei dynamische Synapsen zwischen den Neuronen und für die Eingangssynapsen solche mit konstanten und gleichen Werten verwendet. Das Eingangssignal soll für beide Neuronen gleich sein und einen Wert zwischen 0 und 1 haben; ohne wechselseitige Synapsen liege die Pulsfrequenz beispielsweise bei 10 Hz. Wir nehmen 1
Für die genaue Berechnung der unabhängigen Lösungen verweisen wir auf ein Lehrbuch über Differentialgleichungen (z.B. Kamke).
92
5 Informationsverarbeitung mit dynamischen Synapsen
an, daß beide Neurone zum Anfangszeitpunkt empfangen und die Differenz der Membranpotentiale weniger als den halben Schwellwert beträgt (Abbildung 5.1a). Aus (3.6) entnehmen wir, daß beide Synapsen exponentiell gegen null streben. Erst wenn das Membranpotential eines Neurons (wir nennen es das zweite) durch Aufladung vermöge des Eingangssignals den halben Schwellwert übersteigt und das andere Neuron (wir nennen es das erste) schon den Schwellwert erreicht hat und also einen Puls aussendet, wendet sich das Synapsenverhalten des zweiten Neurons ins exponentiell Steigende und bringt – in seiner Stärke abhängig vom Anfangswert des Membranpotentials und von den Koeffizienten γ und µ – das Membranpotential näher an den Schwellwert heran, als es das zweite Neuron bis dahin nur vermöge des Eingangssignals hätte tun können: der Abstand der Pulse zwischen Neuron 1 und 2 nimmt ab.
Abb. 5.1 Illustration der Synchronisation im 2-Neuron-System Infolgedessen wird das zweite Neuron zünden, bevor das erste Neuron den halben Schwellwert erreicht hat, so daß das erste Neuron nur vermittels des (für beide Neurone gleichen) Eingangssignals den Schwellwert ein zweites Mal erreichen und einen Puls aussenden kann. Und zu diesem Zeitpunkt ist das Membranpotential des zweiten Neurons schon näher am Schwellwert als beim ersten Mal, so daß der Pulsabstand beider Neurone weiter abnimmt. Wegen der endlichen Pulsdauer nimmt in der Folge der Pulsabstand weiter ab bis zu einem Bruchteil von 1 ms, wird aber nie null (in der Zeichnung nicht darstellbar). Abbildung 5.1b zeigt, daß der aktive Part der Synchronisation beim ersten Neuron liegt, wenn zu Beginn der Abstand der Membranpotentiale mehr als den halben Schwellwert ausmacht. Wird der geschilderte Gleichlauf beider Neuronen durch irgendeine Störung (etwas ungleiche Eingangssignale) beeinträchtigt, so versuchen die Synapsen, den Gleichlauf wiederherzustellen. In anderen Worten: die dynamischen Synapsen bewirken eine Verkürzung der Zeit bis zum Feuern mit dem Ziel, diese möglichst zu null werden zu lassen. Im Ergebnis erhalten wir zwei Neurone, welche fast zeitgleich senden. Dies nennen wir Synchronisation2. 2
Auf analytischem Wege kann hergeleitet werden, daß das 2-Neuron-System bei positivem µ immer zu der eben beschriebenen Synchronisation führt. Und zwar
5.2 Synchronisation der Neuronen
93
Ein ebensolches Verhalten ist mit negativem µ nicht zu erhalten, wie die Abbildung 5.2a zeigt, welche die Korrelation der Pulsaktivität des 2-NeuronSystems für verschwindendes, positives oder negatives µ darstellt. Die Eingangssynapsen betragen 0.1, µ = 0.3 ms−2 , γ = 0.1 ms−1 , T = 20 s und i1 = 0.5.
(a)
Abb. 5.2 Korrelation in einem 2-Neuron-Netz als Funktion von i2 ; i1 = 0.5 Dabei haben wir folgende Definition der Korrelation verwandt:
Ckl
( R χ(xk ) χ(xl ) 1 =R , χ(xn ) = χ(xk ) χ(xk ) 0
wenn Neuron n sendet sonst .
Das Wesen der Synchronisation, mit minimalem Aufwand eine beinahe vollständige Entkoppelung der Neurone zu erreichen, zeigt sich in den Abbildungen 5.2b,c. Die Pulsrate ist von dem Wert von µ praktisch unabhängig; allein die Entropie zeigt einen Einbruch, wenn die Eingangssignale gleiche Werte annehmen. Letzteres ist leicht einsehbar, da die Menge der Zerlegungen durch die Synchronisation auf „beide senden“ bzw. „beide empfangen“ eingeschränkt worden ist, also auf die Hälfte. Wir sind somit auf sehr einfache, wenn auch überraschende Weise zu einem Musterbildungsprozeß gelangt: der Synchronisation der Aussendung von Pulsen zum fast gleichen Zeitpunkt. Wir können diesen Musterbildungsprozeß in eindeutiger Weise dem Eingangsbild zuordnen, welches hier nur aus 2 Pixeln gleichen Helligkeitswertes besteht. Diese für alle möglichen Anfangsbedingungen, so daß die oben gegebene Darstellung repräsentativ ist. Wegen der relativen Neuheit unserer dynamischen Synapsen haben wir es vorgezogen, eine plastische Schilderung ihrer Dynamik zu geben.
94
5 Informationsverarbeitung mit dynamischen Synapsen
(b) Mittlere Pulsrate
(c) Entropie
Abb. 5.2 (Forts.) Mittlere Pulsrate und Entropie als Funktion von i2 ; i1 = 0.5
5.2 Synchronisation der Neuronen
95
spezielle Korrelation wird somit in die spezielle Korrelation der zeitgleichen Pulstätigkeit (identische Pulsrate und verschwindende Zeitdifferenz beim Beginn der Pulse) abgebildet. Dabei ist die Pulsrate der Helligkeit proportional. Wir wiederholen obiges Experiment auf größerer Skala mit 14 vollvernetzen Neuronen (Abbildung 5.3). Wenn alle Eingangssignale gleich sind, stellt sich beim vollvernetzten Netz ein fast zeitgleiches Feuern ein: nach einer kurzen Anlaufzeit haben fast alle Neurone innerhalb von 0.2 ms, nachdem ein erstes Neuron zu feuern begann, angefangen zu feuern und innerhalb 0.2 ms, nachdem ein erstes Neuron zu feuern aufhörte, aufgehört zu feuern. Bei idealer Synchronisation würden alle Neurone sich wie ein Netz von Neuronen ohne verbindende Synapsen verhalten, welche alle mit demselben Anfangswerten begonnen und gemäß des für alle gleichen Eingangssignals das Membranpotential zum selben Zeitpunkt erreicht haben würden. Bei negativer Kopplung ergibt sich eine Pulsaktivität, wie wenn das Netz mit konstanten Synapsen ausgestattet wäre; die eingangsseitige Korrelation wird nicht im Netz als solche sichtbar.
Abb. 5.3 Pulsaktivität in 14-Neuron-Netz für µ = 0.3 (links) und µ = −0.3 (rechts) Prinzipiell Gleiches und dennoch in seiner Erscheinung Verschiedenes zeigt sich beim nächstnachbarlich verbundenen Netz von 20 × 24 Neuronen, welchem ein 20 × 24 Pixel großes Bild wie Abbildung 5.4a vorgesetzt sei. Hier benötigt die Synchronisation längere Zeit, bis sie sichtbar wird, und erscheint in anderer Form als beim vollvernetzten Netz. Zunächst bilden sich je nach
96
5 Informationsverarbeitung mit dynamischen Synapsen
Anfangswerten an verschiedenen Positionen des Netzes 2-Neuron-Subsysteme, welche eine Synchronisation aufbauen; diese kann durch die umliegenden anderen 2-Neuron-Subsysteme gestört werden. Schließlich setzen sich die Subsysteme mit den günstigsten Zeitdifferenzen durch und synchronisieren benachbarte Subsysteme. Auf diese Weise bilden sich im Netz mehrere Teilstücke von Pulswellenfronten, welche sich ausdehnen und bei Berührung miteinander verschmelzen. Am Ende setzt sich eine einzige Welle durch, welche über das Segment gleicher Helligkeit hinweg rollt. Ihre Wiederkehrfrequenz ist in eindeutiger Weise durch die Geometrie und Größe des Netzes und durch die Pulsrate der Neurone bzw. die Helligkeit des Bildes gegeben. Besonders plastisch zeigt sich der Synchronisationsprozeß im Video. Abbildung 5.4b zeigt einen Ausschnitt der Pulsaktivität mit zwei sich ausbreitenden Wellen: die eine läuft mit höherer Geschwindigkeit auf dem einbeschriebenen hellen Rechteck (links) und die andere mit langsamerer Geschwindigkeit auf dem dunkleren Hintergrund (rechts).
(a) Testbild mit weißem Rechteck auf Hintergund mit 10 % Rauschen
(b) Wellenfronten im eingeschwungenen, synchronisierten Zustand
Abb. 5.4 Synchronisation Man sieht deutlich im inneren Rechteck die (nach links sich ausdehnende) Wellenfront, und auf dem dunkleren Hintergrund sieht man ebenfalls eine
5.2 Synchronisation der Neuronen
97
Puls-Wellenfront sich in alle Richtungen ausdehnen. Es ist sehr eindrucksvoll zu sehen, daß beide Wellen nur in ihrem Bereich laufen können: an den Grenzen des helleren Rechtecks stoppen sie. Damit ist gezeigt, daß die Synchronisation die Segmentation des hier vorgelegten Bildes bewirken kann (mehr davon im nächsten Abschnitt). Offensichtlich ist ein direkt vor der Wellenfront liegendes Neuron immer kurz vor dem Schwellwert und bekommt mit der es erreichenden Wellenfront durch die plötzlich in ihrem Wert ansteigende Synapse soviel Energie, daß es sofort zündet und dadurch die Wellenausbreitung fortsetzt. Da die Synapsen sehr schnell in ihrem Wert zerfallen, speisen sich die hinter der Wellenfront liegenden Neuronen allein aus dem (für alle Neuronen im Wert gleichen) Eingangspixel, so daß in dem gesamten Netz nur die Synapsen aktiv sind, welche direkt vor der sie im nächsten Moment erreichenden Wellenfront liegen. Diese Synapsen bewirken somit das Zustandekommen der Synchronisation und ihrer Erhaltung mit minimaler Energie. Die Abhängigkeit der Pulsrate der Neuronen in der Wellenfront des inneren Rechtecks von seiner Helligkeit zeigt Abbildung 5.4c; der Zusammenhang ist recht linear im kalten Betriebsbereich.
Abb. 5.4 (Forts.) (c) Pulsrate der Neurone in der Wellenfront des inneren Rechtecks in Abhängigkeit seiner Helligkeit Schließlich zeigt Abbildung 5.5 noch einen Ausschnitt der Pulsaktivität des Netzes, wenn das Bild von Abbildung 5.4a anliegt, aber µ negativ ist. Es zeigt sich keinerlei Musterbildung, also keinerlei Ordnung, wie besonders eindrücklich wieder im Video zu sehen ist. Es scheint, daß oszillatorische Syn-
98
5 Informationsverarbeitung mit dynamischen Synapsen
Abb. 5.5 Unordnung bei negativem µ für Bild aus Abbildung 5.4a apsen keinen Kollektivgeist entwickeln können3 . Wir sehen Synapsen mit positivem µ als besondere Spezies der exitatorischen und solche mit negativem µ als besondere Spezies der inhibitorischen Synapsen an. In der Literatur ist der Gebrauch von inhibitorischen Synapsen zumeist mit negativen Synapsen verbunden, wohingegen unsere Synapsen immer positive Werte annehmen (allein µ in (3.1) kann positiv oder negativ sein). Unsere Klassifizierung stützt sich darauf, daß Synapsen mit positivem µ die Bildung und diejenigen mit negativem µ die Auflösung von Ordnung bzw. Mustern bewirken.
5.3 Segmentation per Synchronisation Wir überprüfen die Fähigkeit zur Segmentation zunächst mit einer einfachen Szene. Im linken Teil von Abbildung 5.6 befindet sich das Bild, und im rechten Teil sind die umrandeten Gebiete angezeigt, in denen sich jeweils eine synchrone Pulswelle ausbreitet. 3
Im Falle von µ < 0 stellt (5.1) ein System von gekoppelten und gedämpften Oszillatoren dar, welches in der Physik von elementarer und umfassender Bedeutung ist. Daß mit solchen Oszillatoren keine Synchronisation dauerhaft aufrecht erhalten werden kann, sondern nur kurzzeitige Schwebungen existieren können, in welchem die Frequenzen der Oszillatoren nur sehr wenig verschieden sind, ist lange bekannt. Der Fall µ > 0 hat bisher keine Bedeutung in der Physik erlangt; eventuell könnten emergente Systeme profitieren.
5.3 Segmentation per Synchronisation
99
Abb. 5.6 Segmentierung einer virtuellen Szene (70 × 70 Pixel bzw. Neuronen, flächig vernetzt)
(a)
(b) bei anderer Beleuchtung
Abb. 5.7 Segmentation eines realen Bildes (156 × 127 Pixel)
100
5 Informationsverarbeitung mit dynamischen Synapsen
Offensichtlich fügen sich die umrandeten Gebiete zu Silhouetten der abgebildeten Gegenstände, wobei jedoch ein Gegenstand im allgemeinen aus mehreren umrandeten Zonen besteht. Bei einer natürlichen Szene (Abbildung 5.7a) bleibt diese Silhouettierung erhalten und entwickelt eine gewisse Robustheit gegen Beleuchtungsschwankungen (Abbildung 5.7b). Wird die Auflösung des Bildes vervierfacht und werden nun 65888 Neurone mit 262520 Synapsen in flächiger Vernetzung eingesetzt, so scheint die Silhouettierung reicher und schärfer zu werden (Abbildung 5.7c). Deutlich wird jedoch auch, daß die Übergänge von einem Segmentationsgebiet zum anderen nicht repräsentiert sind, was uns nicht wundern kann, wenn wir nur einen „Fleck“-Detektor einsetzen; denn darum handelt es sich bei unserem flächigen Netz mit positivem µ. Im nächsten Abschnitt widmen wir uns den Netzen, mit welchen Differenzen von Pulsen und damit Gebiete konstanten Gradientens angezeigt werden können.
(c)
Abb. 5.7 (Forts.) Segmentation bei 4-fach höherer Auflösung (284×232 Pixel)
5.4 Berechnung von Pulsdifferenzen und -summen Neben den Netzen mit rein exitatorischen Synapsen (µ > 0) sind diejenigen von Bedeutung, welche exitatorische und inhibitorische Synapsen (µ < 0) kombinieren. Sie versetzen uns in die Lage, die Differenz und Summe von Pulsraten zu ermitteln. Wir betrachten zwei Pulsneurone, welche über eine Eingangssynapse jeweils ein Pixel empfangen können und welche keine verbindenden Synapsen haben – sie dienen einfach zur Pulswandlung eines Signalwertes. Die Eingangssynapsen seien als gleich und konstant angenommen. Die Pixelwerte werden durch Neuron N1 und N2 in je eine Pulsfrequenz übersetzt, und falls es sich
5.4 Berechnung von Pulsdifferenzen und -summen
101
um benachbarte Pixel handelt, ist es naheliegend, den Pixelgradienten als Pulsdifferenz zu realisieren. Dazu verwenden wir das in Abbildung 5.8 skizzierte Netz, in welchem die Verbindungslinien von den Neuronen N1 , N2 zu Neuron N3 die bekannten dynamischen Synapsen andeuten. Darüberhinaus gibt es ein weiteres Neuron N4 , dessen Dendrit mit N3 verbunden ist. Eine dynamische Synapse, welche sowohl vom N1 - wie auch vom N3 -seitigen Signal gesteuert wird, ist an diesen Dendriten gelagert. Wir wir gleich sehen werden, ist die Struktur der DGL einer dendritischen Synapse gleich der einer membranseitigen Synapse – bei dieser steuern zwei Pulssignale, bei jener ein Pulssignal und ein Membransignal das Verhalten.
Abb. 5.8 Netz zur Pulsdifferenzbestimmung Das Neuron N3 hat keinen äußeren Eingang und startet deshalb immer mit dem Membranpotential von null. Ohne Signal von N1 wird wegen des negativen Vorzeichens von µ das Membranpotential von N3 gemäß (3.6) beim Eintreffen eines Signals von N2 schnell ansteigen. Erst wenn das Membranpotential die Hälfte des Schwellwertes überschreitet, wird sein weiteres Anwachsen gedämpft. Wie stark, wird durch die Wahl von γ2 und µ2 festgelegt. So läßt sich erreichen, daß N3 durch N2 immer nur mit einem Wert oberhalb der Hälfte des Schwellwertes vorgeladen wird, nie aber zum Zünden gebracht werden kann, solange das Signal von N1 ausbleibt. Insbesondere können weitere von N2 gelieferte Pulse N3 nicht zünden, da die verbindende Synapse sperrt.
102
5 Informationsverarbeitung mit dynamischen Synapsen
Wegen des positiven Vorzeichens von µ1 und des über der Hälfte des Schwellwertes liegenden Membranpotentials bringt ein Signal von N1 das Neuron N3 direkt zum Zünden. Durch Wahl der Koeffizienten läßt sich erreichen, daß ein einziger Puls von N2 zur stabilen Vorladung von N3 genügt und ein einziger Puls von N1 dann die Zündung von N3 bewirkt, wann immer er eintrifft (Abbildung 5.9). Umgekehrt: ist N3 nicht vorgeladen, so bewirkt ein Puls von N1 nie ein Zünden von N3 , wie (3.6) zeigt. Demnach identifiziert das angegebene Netz genau die Situation, daß N2 einen Puls empfangen hat und irgendwann danach von N1 Pulse empfangen wurden. Dies stellt eine „2 vor 1“-Zeitrelation dar, welches dieses Netz mit dynamischen Synapsen realisiert.
Abb. 5.9 Vorladung und Feuern bei Neuron N3 Wieviele Pulse N1 empfangen hat, bevor N2 wieder einen Puls bekommt, wird dagegen nicht angezeigt. Gerade dies stellt aber die Differenz da. Dazu brauchen wir Neuron N4 . Dieser zweite Teil des Netzes zur Pulsdifferenzbestimmung bedient sich einer dynamischen Synapse W41 , welche nicht an der Membran, sondern am Dendriten sitzt. Das Membranpotential von Neuron N4 ergibt sich zu:
a4 (t) :=
Z
t
t0
iD (t′ )dt′ , iD (t′ ) = W41 · x1 (t) + W43 · x3 (t) ,
(5.3a)
und die Differentialgleichungen für die dendritische Synapse lautet: Z dW41 = −γ · (W41 − w) + µ · W41 (t′ ) · x1 (t′ )dt′ − r · x3 (t) , µ, r > 0 . dt (5.3b) R w ist der synaptische Ruhewert, und r ist so gewählt, daß W41 (t′ )·x1 (t′ )dt′ − r · x3 (t) < 0 gilt, wenn N3 einen Puls sendet. Pulst N3 (und damit auch N1 ),
5.4 Berechnung von Pulsdifferenzen und -summen
103
so ist W41 in kürzester Zeit zu null geworden, und N4 akkumuliert einen sehr kleinen Strom. Pulst N3 nicht, so wächst W41 stark an, wenn N1 pulst. Durch geeignete Wahl der Koeffizienten µ, r läßt sich erreichen, daß fast jeder Puls von N1 zur Zündung von N4 führt. Damit wird an N4 im Mittel die Differenz der Pulse ausgegeben. In Abbildung 5.10 ist die Pulsrate von N4 und N1 als Funktion der Stärke des Eingangssignals aufgezeichnet; N2 wird auf konstantem Eingang gehalten. Diese Differenzbildung funktioniert nur, solange die Pulsrate von N1 höher
Abb. 5.10 Pulsrate von N4 nach Abbildung 5.8 liegt als die von N2 . Ist dies nicht der Fall, repetiert N4 die Pulsrate von N1 . Eine nach „beiden Seiten“ symmetrische Anordnung zeigt Abbildung 5.11. Hierbei wird von Neuron N4a angezeigt, daß i1 > i2 ist, und von N4b , das i2 > i1 ist4 . Die obige Anordnung läßt sich verallgemeinern auf mehrere Eingänge N11 . . . N1n , welche die Differenz zwischen der Pulssumme von N11 . . . N1n und den Pulsen von N2 bildet. Für die reine Summenbildung von beispielsweise i11 und i12 benötigen wir nicht mehr die Verbindungen zu Neuron N3 , sondern nur diejenigen zu Neuron N4 , also die Synapsen auf dem Dendriten, welcher seinerseits zu allen Neuronen N1n vezweigt ist. Die Inspektion von (5.3b) zeigt, daß wir die dendritischen Synapsen in diesem speziellem Fall durch einfache dynamische Synapsen ersetzen können, für die der Schwellwert zu null zu setzen ist (Abbildung 5.12). Damit ergibt sich der in Abbildung 5.13 gezeigte Verlauf, welcher recht linear ist. Natürlich kann die Summenbildung 4
Wegen ihrer grundlegenen Bedeutung möchten wir hervorheben, daß die Anordnung der Neuronen und Synapsen zum Zwecke der Pulsdifferenzbestimmung nach Abbildung 5.8 von Arne Heittmann vorgeschlagen wurde.
104
5 Informationsverarbeitung mit dynamischen Synapsen
Abb. 5.11 Netz zur symmetrischen Pulsdifferenzbestimmung (wie schon die Differenzbildung) nicht im mathematischen Sinn genau sein, da Pulse von N11 . . . N1n zur fast gleichen Zeit eintreffen können; es tritt also immer ein gewisser Verlust ein, wie in Abbildung 5.13 zu sehen ist.
Abb. 5.12 Netz zur Pulssummenbestimmung über mehrere Eingänge
5.4 Berechnung von Pulsdifferenzen und -summen
105
Abb. 5.13 Summe der vom Netzwerk aus Abbildung 5.12 erzeugten Pulsraten mit den Eingängen i11 und i12
106
5 Informationsverarbeitung mit dynamischen Synapsen
5.5 Einfache Anwendungen Betrachten wir nun zwei Netze, welche im kalten Bereich laufen, und entwerfen wir ein Netz, welches die Differenz oder Summe der mittleren Pulsraten beider Netze ermittelt. Es genügt, für die beiden Eingangsnetze konstante Synapsen zu verwenden; nur das die Differenz bzw. Summe bildende Netz wird mit dynamischen Synapsen versehen. Summenanordnung. Die beiden Eingangsnetze seien mit je 11 vollvernetzten Neuronen versehen und zufällig seien in jedem Netz 4 Neurone ausgewählt, welche über je eine konstante Synapse (für alle gleich) mit den 4 Summennetzen verbunden sind (Abbildung 5.14).
Abb. 5.14 Netz zur Bestimmung der Pulsratensumme von Netz 1 und 2
Abb. 5.15 Pulsraten von Netz 1 (schwarz) und 2 (rot). Die Summation (obere schwarze Linien) ist affin-linear mit dem Offset 0.53. Finale Ausgabe in der Mitte (rot).
5.5 Einfache Anwendungen
107
Die Ausgänge der Summennetze sind über gleiche konstante Synapsen mit einem einzigen Neuron verbunden. Der Wert seiner Synapsen kann so bemessen werden, daß die Pulsrate des letzten Neurons abzüglich des oben erwähnten Verlusts proportional zum Mittelwert der Summe der 4 Pulsraten ist, es also im kalten Bereich arbeitet (Abbildung 5.15). Differenzanordnung. Wie oben. Außerdem sind alle ersten bzw. zweiten Ausgänge der Differenznetze über gleiche konstante Synapsen mit einem linken bzw. rechten Neuron verbunden (Abbildung 5.16, links). Der Wert der konstanten Synapse ist so bemessen, daß die Pulsrate des linken bzw. rechten Neurons eine affin-linear Funktion des Mittelwerts der 4 Differenzpulsraten ist. Sind die Pulsraten des Netzes 1 alle niedriger als die vom Netz 2, so gibt das rechte Ausgangsneuron Pulse ab mit der Differenzpulsrate der beiden Netze, das linke Ausgangsneuron pulst dagegen minimal (Abbildung 5.16, rechts).
Abb. 5.16 Netz für Pulsdifferenz (links) und Pulsratendifferenz der Netze 1 und 2 (rechts) Nehmen wir nun an, daß nicht alle Pulsraten der zufällig herausgegriffenen Neuronen des Netzes 1 über den Pulsraten des Netzes 2 liegen; dann tragen beide Ausgangsneuronen zur Pulsaktivität bei. Dies ist insbesondere der Fall bei identischen Netzen mit identischen Eingangssignalen, so daß beide Netze in ihrer mittleren Ausgangspulsrate übereinstimmen. Da wir diesem speziellen Fall eine Differenzpulsrate von null zuschreiben würden, macht es Sinn, dem Differenzpulsraten-Netz noch eine symmetrische Differenzstufe nachzuschalten (Abbildung 5.17).
108
5 Informationsverarbeitung mit dynamischen Synapsen
Abb. 5.17 Erweitertes Netz zur Bestimmung der Pulsratendifferenz
Abb. 5.18 Pulsratendifferenz der Netze 1 und 2 nach Abbildung 5.17 Abbildung 5.18 zeigt, daß dadurch eine gute Annäherung an die erwartete Pulsrate von null erreicht wird. Synchrondetektor. Die dendritische Synapse ist wie die direkt an der Neuronmembran gelagerte Synapse eine Funktion von zwei Eingangssignalen. Als allgemeine Differentialgleichung ihres Verhaltens setzen wir an: Z dWes ′ ′ ′ = −γ(Wes − w)(t) + µ · Wes (t ) · xs (t )dt − r · is (t) . (5.3c) dt Darin sind w der Ruhewert der Synapse und is der auf die Synapse wirkende dendritische Strom, welcher ein einziges Pulssignal (wie in (5.3b)) oder eine gewichtete Überlagerung mehrerer Pulse darstellen kann. In dem Fall µ > 0 verhält sich die Synapse, wie gesehen, wie ein asymmetrischer AntiKoinzidenzdetektor und im Falle µ < 0 wie ein Koinzidenzdetektor, wenn
5.5 Einfache Anwendungen
109
R
wieder die leicht realisierbare Bedingung Wes (t′ ) · xs (t′ )dt′ − r · is (t) < 0 gilt. Denn liegen entweder xs oder is an, so liefert die Synapse nur einen sehr kleinen oder gar keinen Strombeitrag in den Dendriten; liegen beide an, so wächst W zunächst sehr schnell und damit der von der Synapse gelieferte Strom Wes · xs (t), ehe die Synapse wieder gegen ihren Ruhewert geht. Aus diesem Grundverhalten kombiniert sich eine Vielfalt von Funktionen für das Neuron, auf dessem Dendriten eine beliebige Abfolge von positiven oder negativen dynamische Synapsen liegt. Ein wichtiger Spezialfall ist der, bei welchem auf dem Dendriten nur Synapsen mit negativem µ liegen (Abbildung 5.19).
Abb. 5.19 Synchrondetektor (µ < 0) Der gesamte an Neuron Ne gelieferte Strom beträgt: ie =
N X s=1
Wes (t) · xs (t) .
(5.3d)
Falls keine zwei der einkommenden Pulse überlappen, streben alle Synapsen von ihrem Ruhewert sehr schnell gegen null, so daß der Strom ie am Ende sehr klein ist. Überlappen irgendwelche zwei Pulse, so liefert der dem linken Ende zuliegende Puls der mehr rechts liegenden Synapse des zweiten Pulses einen kleinen Vorstrom, der zunächst die Synapse wachsen und, abhängig vom Wert von r, sodann fallen macht. Wählt man r so groß, daß die Synapse über die gesamte Zeit exponentiell wachsen kann, so wird ie am Ende sehr groß; wählt man r genügend klein, so ist die Phase des exponentiellen Wachstums vernachlässigbar gegenüber der Phase des exponentiellen Fallens, und der Strom ie ist ca. 2 · w · x. Der Wert r legt somit fest, ab wieviel gleichzeitig feuernden Neuronen ein exponentieller Stromanstieg erfolgen kann. Integriert man diesen Strom mit einer membranseitigen dynamischen Synapse, welche eine einstellbare Schwelle λ · θ besitzt und der Differentialgleichung Z dWe ′ ′ ′ = −γ(We − w)(t) + µ · We (t ) · ie (t )dt − λ · θ , µ, λ > 0 , (5.3e) dt gehorcht, so läßt sich mit Neuron Ne immer dann ein Puls erzeugen, wenn eine bestimmte, mit r und λ festgelegte Anzahl von Neuronen gleichzeitig feuert. Abbildung 5.20 zeigt das Membranpotential als Funktion von λ und
110
5 Informationsverarbeitung mit dynamischen Synapsen
der Anzahl gleichzeitig feuernder Neuronen. Für das Paar von Koeffizienten r = 1 ms, λ = 0.05 ms bedeutet jeder Puls des Synchrondetektors, daß mindestens 10 Erkennungsneuronen synchron feuern und für mindestens 0.5 ms überlappen müssen.
Abb. 5.20 Membranpotential als Funktion von λ und der Anzahl gleichzeitig feuernder Neuronen
5.6 Zeitkodierung und Korrelation Da die Synchronisation ein fast zeitgleiches Pulsen bedeutet und dadurch Eingangssignale gleicher Stärke kodiert, können wir von einer speziellen Form der Zeit-Kodierung sprechen. Mit der Zeitkodierung ist natürlich das Auftreten einer Pulsrate für jedes Neuron verbunden. Von der Pulsratenkodierung mit konstanten Synapsen unterscheidet sich die Zeitkodierung jedoch dadurch, daß alle Neurone fast zeitgleich pulsen. Diese Musterbildung ist die neue Qualität, welche die Pulsratenkodierung nicht aufweist. Immer dann, wenn eine Mittelung über dem Eingangssignalraum gewünscht ist, ist die Pulsratenkodierung angebracht; ist dagegen eine räumlichzeitliche Korrelation aufzuspüren und zu kodieren, so ist die Zeitkodierung
5.7 Entropie und Zustandsraum
111
mit dynamischen Synapsen die rechte Wahl. Wie aus den Experimenten dieses Kapitels hervorgeht, macht die Zeitkodierung die Pulsratenkodierung nicht überflüssig, vielmehr bestehen beide nebeneinander: Entropie und Korrelation sind je ein Freiheitsgrad für die Kodierung von Information. Letzteres kommt in Abbildung 5.2c sehr deutlich zum Ausdruck.
5.7 Entropie und Zustandsraum Sowohl für konstante wie dynamische Synapsen ergeben sich Verteilungen und Entropien; bei dynamischen Synapsen ist die Entropie aber nicht mehr die einzige informationsübertragende Funktion, sondern es tritt die Korrelation der Zündzeitpunkte von Paaren oder größeren Teilmengen des Netzes hinzu. Diese Korrelation ist grundsätzlich bildgesteuert und als Folge davon bildet sich ein Zustandsraum, dessen Anzahl der existenten Zerlegungen durch das Bild gesteuert wird. Auf diesem bildgesteuerten Zustandsraum gibt es dann immer noch eine merkbare Statistik und also eine Häufungsfunktion bzw. Entropie. Die Festlegung der Übertragungscharakteristik eines Netzes mit dynamischen Synapsen bedarf also der Angabe des Zustandsraumes und der Entropie. Dementsprechend wird der Begriff der informationsübertragenden Funktion eines Netzes erweitert auf die Abbildung eines Paares (Zin , Ein ), welches das Eingangsnetz charakterisiert, in das Paar (Zout , Eout ), welche das Netz charakterisiert. Diese Erweiterung ist natürlich auch anwendbar für Netze mit konstanten Netzen, mit der Folge, daß der Zustandsraum immer maximal und auf der Eingangs- und Ausgangsseite gleich ist (weshalb wir ihn in unserer ersten Fassung der informationsübertragenden Funktion auch nicht erwähnt hatten). Im Falle eines vollvernetzten Netzes mit 10 · 10 Neuronen beobachtet man beispielsweise, daß alle Neurone nach einer Aufbauphase von 0.01 ms synchron feuern und innerhalb von 0.01 ms nach einem zuerst ablebenden Sendeneuron aufgehört haben zu senden, wenn alle Neurone das gleiche Eingangssignal mit 1 Prozent Rauschen sehen (Abbildung 5.21). Statt mit 2100 Zerlegungen haben wir es mit einigen tausenden Zerlegungen zu tun – eine beträchtliche Verringerung der Größe des Zustandsraums. Dieses Experiment lehrt uns auch, daß die Zeitauflösung von zu erkennenden Ereignissen durchaus stark unter der Dauer eines Pulszugs liegen kann. Abbildung 5.22 zeigt, daß die Anfangswerte verschwindenden Einfluß auf die Verteilung im synchronen Zustand haben, wie es ja auch zu erwarten ist; dies ist ganz anders bei Netzen mit konstanten Synapsen (Abbildung 2.12). Dies bedeutet, daß die Statistik wesentlich durch den Synchronisationsprozeß bestimmt ist. Das Netz wird von 3 verschiedenen Anfangswerten gestartet (links ohne Rauschen im Eingangssignal, rechts mit 10 % Rauschen) und das Aktivitätshistogramm (relative Anzahl der gleichzeitig feuernden Neuronen) aufgezeichnet. Das ideale Aktivitätshistogramm bei rauschfreiem und für alle Neuronen gleichem Eingangssignal würde eine Häufigkeit von null für alle mit
112
5 Informationsverarbeitung mit dynamischen Synapsen
Abb. 5.21 Synchronisationsvorgang ist ca. 80 mal kürzer als die Pulsdauer 1 bis 10 feuernden Neuronen besetzten Zerlegungen aufweisen und nur für die Zustände „alle empfangen“ bzw. „alle senden“ eine von null verschiedene Häufigkeit ausweisen. Wie der linke Teil von Abbildung 5.22 zeigt, kommen wir diesem Ideal mit nur 11 Neuronen schon recht nahe: die ganze Sendeaktivität bis auf 0.1 % wird von der Zerlegung mit allen 11 Neuronen bestritten. Im rechten Teil von Abbildung 5.22 sehen wir, daß keine Zerlegungen mit 10 bzw. 11 sendenden Neuronen vorkommen, wenn die Eingangssignale zu 10 % verrauscht sind. Immerhin machen die 500 Zerlegungen mit 7 bis 9 Sendern gegenüber den restlichen 1536 Zerlegungen mit 1 bis 6 sendenden Neuronen noch etwa 50 % der gesamten Sendeaktivität aus (gegenüber nahezu 100 % für 11 Neuronen bei rauschfreiem Eingang), so daß die Synchronisation noch klar sichtbar ist.
5.8 Vorüberlegungen zur Statistik der Synchronisation
113
Abb. 5.22 Häufigkeit des gleichzeitigen Auftretens von 1 bis 11 sendenden Neuronen ohne (links) und mit 10 % Rauschen (rechts)
5.8 Vorüberlegungen zur Statistik der Synchronisation Netze mit exitatorischen Synapsen antworten auf im Eingang vorliegende Korrelationen, wie sie im letzten Abschnitt besprochen wurden, mit Synchronisation der Pulstätigkeit: der Zustandsraum, d.h. die Menge der möglichen Zerlegungen, schrumpft enorm, und die Entropie springt auf niedrige Werte. Sind umgekehrt entsprechende Bildmuster im Eingangsbild nicht vorhanden, besteht also das Bild im wesentlichen aus Rauschen, so ist der Zustandsraum von maximaler Größe und die Entropie groß. Da beim Übergang vom einen zum anderen Bild sich der Korrelationsinhalt immer ändert, kann der Zustandsraum in Bruchteilen einer Sekunde beträchtlich schrumpfen, so daß die in Kapitel 3 entwickelte stationäre Theorie nicht mehr genügt, sondern eine zeitabhängige Theorie der Verteilungen aufgestellt werden muß. Da wir keinen Anlaß haben, die Signalenergie zu verändern – schließlich ist die bisher formulierte der Quell aller Synchronisationserscheinungen – müssen wir die Information aus einer genaueren Analyse der Signalgleichungen und des Prozeß der Ausbildung von Wellen etc. holen. Hieraus muß sich dann eine partielle Differentialgleichung für die Verteilung und das Volumen des Zustandsraumes gewinnen lassen, welche die Veränderung des Zustandraumes kontrollieren. Erst dann kann zu der Formulierung und Ableitung einer Statistik der Zerlegungen übergegangen werden, wie sie in den bisher betrachteten Experimenten deutlich zum Vorschein gekommen ist. Die theoretische Behandlung läßt sich integral formulieren in dem speziellen asymptotischen Fall, daß die Synchronisation bereits wohl ausgeprägt
114
5 Informationsverarbeitung mit dynamischen Synapsen
ist. Dann ist die durch Beobachtung zugängliche Wellenbildung etc. als weitere Nebenbedingung der Entropiemaximierung formulierbar. In jedem Falle aber werden die Rechnungen sehr umfangreich und langwierig. Deshalb wollen wir erst die Anwendungen der dynamischen Synapsen in den folgenden Kapiteln entwickeln und uns ein Bild machen von dem Bedarf an Theorie für den allgemeinen Fall von dynamischen Synapsen.
5.9 Zusammenfassung Da räumliche Mustererkennung durch Netze mit konstanten Synapsen wegen der unkontrollierten, informationsvernichtenden Vermischung der Eingangssignale auf den Membranen der Neuronen nicht funktionieren kann, muß eine Netzdynamik konstruiert werden, welche eingangsseitig vorliegende örtliche Zusammenhänge wiedergeben kann. Die von uns definierten sehr schnellen, dynamischen Synapsen vom exitatorischem Typ sind in der Lage, räumlichzeitliche Korrelationen der Pulsaktivität von Neuronen hervorzubringen, wenn entsprechende Korrelationen in den Eingangssignalen vorliegen. Diese Erscheinung ist eindeutig im Sinne einer Ursache-Wirkung-Beziehung. Damit tritt neben der Entropie die Korrelation als weitere Dimension der Information auf, d.h. die noch bei Netzen mit konstanten Synapsen geltende Gleichheit von Entropie und Information ist aufgebrochen. In der theoretischen Beschreibung kann dem Rechnung getragen werden durch die Schrumpfung des Zustandsraums auf ein sehr viel kleineres Volumen, in welchem die immer noch vorhandene Stochastik sich abspielt. Im allgemeinen Fall der dynamischen Synapsen muß eine partielle Differentialgleichung für die Verteilungsfunktion in Abhängigkeit von der in den Eingangssignalen vorliegenden Korrelation gelöst werden. Die Fähigkeit der dynamischen Synapsen, einfache Muster zu detektieren, zeigt sich bei der Segmentation von Bildern in Flecken gleicher Pixelhelligkeit: zusammenhängende Pixelmengen gleicher Helligkeit oder Farbe werden als Einheit detektiert vermöge der synchronen Pulstätigkeit aller Neuronen, welche mit den Pixeln der zusammenhängenden Teilmenge gleicher Helligkeit über gleich starke konstante Synapsen und untereinander durch dynamische Synapsen verbunden sind. Die Pulsrate gibt dabei den Wert der Pixelhelligkeit wieder. Da die Synchronisation bei jeder Helligkeit eintritt (wenn sie nur für alle Pixel bis auf Rauschen gleich ist), ist die Segmentation robust gegenüber Änderungen der Helligkeit. Die Charakteristik der Synchronisation ist somit das Zusammenbinden von gleichen Dingen zu einem Ganzen. Wie verschiedene Dinge zu einem Ganzen gebunden werden können, wird in Kapitel 8 behandelt; es geschieht jedoch nicht durch Synchronisation (obgleich auch mittels dynamischer Synapsen). Die Vielseitigkeit der dynamischen Synapsen zeigt sich in der Fähigkeit, auch Intensitätsgradienten zu detektieren. Anders als bei der Segmentation
5.9 Zusammenfassung
115
sind dazu nicht nur Synapsen mit positivem µ, sondern auch negativem µ erforderlich, und solche, welche an einen Dendriten gelagert sind. Ob membranoder dendritseitig gelagert – die Differentialgleichung ist strukturell für beide Typen von Synapsen gleich: die eine ist spannungs- und die andere stromgesteuert. Netze mit nur negativen µ zerstören jede im Eingang vorliegende Korrelation, sie dekorrelieren. In der richtigen Mischung von exitatorischen (d.h korrelierenden) und inhibitorischen (d.h dekorrelierenden) Synapsen lassen sich jedoch Intensitätsgradienten detektieren und damit Netze angeben, welche die Pulsdifferenz zwischen zwei Eingängen als Mittelwert der Pulsrate des Netzes ausgeben können. Eine zweite wichtige Frage – die nach den grundlegenen Rechenarten der Informationsverarbeitung mit gepulsten Neuronen – erfährt damit eine erste Beantwortung. Es gibt: 1. die strukturlose Mischung von Information durch Netze mit konstanten Synapsen, 2. die zeitliche Synchronisation von mit exzitatorischen Synapsen aufgebauten Netzen zur Anzeige einer räumlichen Signalkorrelation; 3. die Bildung von Pulsdifferenzen und -summen sowie 4. die Feststellung von Konizidenz bzw. Antikoinzidenz mit Netzen aus korrelierenden und dekorrelierenden Synapsen. Damit lassen sich alle benötigten Stufen der Objekterkennungskette verwirklichen, wie in den folgenden Kapiteln gezeigt wird. In den nächsten drei Kapiteln werden die bis jetzt vorliegenden informationsverarbeitenden Funktionen der Korrelation und Dekorrelation eingesetzt zur Merkmals- bzw. Objektdetektion und -erkennung.
6 Netze für die Merkmalsdetektion Arne Heittmann und Ulrich Ramacher
Mit den im Kapitel 5 vorliegenden Grundrechenregeln für Pulse lassen sich Merkmalsanzeiger aufbauen. Beispielsweise für die Anzeige einer Kante könnten wir eine genügend hohe Zahl von Rezeptoren links und rechts der Kante auf ihrer ganzen Länge hin anordnen (Abbildung 6.1).
Abb. 6.1 Rezeptoren links und rechts einer Kante Je ein links und rechts auf etwa gleicher Höhe liegendes Rezeptorneuron bezeichnen wir als Rezeptorpaar, welches wir mit dem Netz zur Bestimmung der Pulsdifferenzrate nach Abbildung 5.8 verbinden. In diesem Zusammenhang bezeichnen wir diese Anordnung auch als Gradientendetektor. Wie können nun die Einzelantworten der Gradientendetektoren miteinander verknüpft werden, um einen zusammenhängenden Detektor mit einem einzigen gepulsten Ausgangssignal zu erhalten? Eine Minimalanforderung an das durch Verknüpfung entstehende Pulssignal ist, daß die Pulsrate dieses Signals mit der Anzahl der ansprechenden Gradientendetektoren steigt. Denn je mehr Gradientendetektoren ansprechen, umso mehr wird der Raum der möglichen In-
118
6 Netze für die Merkmalsdetektion
tensitätsverteilungen auf dem rezeptiven Feld eingeschränkt und umso mehr steigt die Wahrscheinlichkeit, daß eine Kante mit der gegebenen Vorzugsrichtung tatsächlich gegeben ist. Zusätzliche Forderungen können z.B. sein, daß den inneren Gradientendetektoren mehr Gewicht zugewiesen wird als den am Rand befindlichen Detektoren. In diesem Buch werden wir die Verknüpfung der einzelnen Detektorantworten immer durch eine einfache, gleichgewichtete Summation realisieren (Abbildung 6.2a).
(a)
(b)
Abb. 6.2 Einfache Anzeigeschaltung für eine Kante (a) und Symbol für einen symmetrischen Gradientendetektor mit N Eingangspaaren (b) Für die symmetrische Differenzbildung über N Eingangssignal-Paare verwenden wir das Symbol aus Abbildung 5.11 und spezifizieren Ein- und Ausgänge gemäß Abbildung 6.2b. Im allgemeinen können die so verknüpften Gradientendetektoren beliebig mit Rezeptoren der Retina verbunden werden. Neben Kanten mit vorgegebener Vorzugsrichtung lassen sich ebenso Krümmungen, Kreissegmente oder willkürliche, spezialisierte Formen durch die räumliche Anordnung der einzelnen Rezeptoren vorgeben, für die der so verknüpfte Detektor (Neuron 5) besonders gut, d.h. mit hoher Pulsrate, anspricht. Auf diese Weise könnte man sich verschiedene Merkmale angezeigt denken, und es stellte sich allein die Frage, wie viele von diesen benötigt werden. Tatsächlich ist die reale Bilderwelt sehr vielfältig. Es existieren Texturen, Kanten
6.1 Visuelles System im Überblick
119
und Krümmungen mit beliebigen Orientierungen und lokal sich ändernden Grauwertgradienten, um nur einige Beispiele zu erwähnen. Die Vielfältigkeit der Bildstrukturen in der interessierenden realen Bilderwelt muß sich daher angemessen in der Vielfalt und Selektivität der verwendeten Detektoren widerspiegeln, um genügend Information aus den visuellen Szenen für ein intelligentes Bildverarbeitungssystem zu extrahieren. Aus Sicht der Computer − V ision − Disziplin würde die Antwort auf die obige Frage nach der nötigen Anzahl von Merkmalen abhängen von der Vorgabe einer oder mehrerer Bilderwelten und die Lösung eines Optimierungsproblems bedeuten; nämlich mit einer minimalen Zahl von Merkmalen, gewonnen aus einer minimalen Teilmenge der Bilderwelt(en), eine größtmögliche Unterscheidung von Objekten auf der gesamten Bildermenge zu bewerkstelligen. Je nach Wahl der Teilbilderwelt stellte sich eine mehr oder weniger große Robustheit ein. Damit verbunden wäre auch eine Bestimmung der örtlichen Verteilung der Rezeptorpaare, welche i.a. nicht so einfach ausfallen würde wie in Abbildung 6.1. Da wir jedoch in der seltenen Lage sind, experimentelle Befunde zur Merkmalsdefinition im visuellen Bereich des Hirns von Säugern nutzen zu können, schlagen wir diesen Weg nicht ein. Dementsprechend geben wir zunächst einen Überblick zur grundlegenden Anatomie der ersten Schichten des visuellen Systems von Säugetieren und referieren die wichtigsten experimentellen Hinweise zur Informationsverarbeitung mittels Gabor-Wavelet-Funktionen in diesen Schichten. Der Rest des Kapitels beschäftigt sich mit der Konstruktion eines neuronalen Netzes für beliebige Typen von Gabor-Wavelets und der Vermessung seiner Eigenschaften.
6.1 Visuelles System im Überblick Die Umwandlung von Licht in elektrische Signale und letztlich in eine Folge von Aktionspotentialen (Spikes, Pulse) erfolgt in der Retina. Abbildung 6.3 zeigt die fünf typischen Zelltypen (A) und deren Verschaltung untereinander (B). Einfallendes Licht wird zunächst von photorezeptiven Zellen in kontinuierliche elektrische Signale umgewandelt und führt dort zu einer sogenannten Hyperpolarisation der Membran (Abbildung 6.3(B), Zelle links oben). Über synaptische Verbindungen wird dieses Signal an die Horizontal- und Bipolarzellen weitergeleitet. Die lokale Verschaltung der Horizontal- und Bipolarzellen führt u.a. durch laterale Inhibition zu einer lokalen Kontrastverstärkung der Bildinformation. Die auf diese Weise vorverarbeitete Bildinformation wird schließlich an die Ganglion-Zellen weitergeleitet und dort in eine Folge von Aktionspotentialen umgewandelt. Die Axone der Ganglion-Zellen bilden den optischen Nerv (Sehnerv, Nervus opticus). Der optische Nerv leitet die als Folge von Ausgangspulsen kodierte visuelle Information weiter zu dem lateral geniculate nucleus (LGN, Ganglion geniculatum laterale), welcher eine Art Schaltstation zwischen der Retina und dem primären visuellen Kortex darstellt, vgl. Abbildung 6.4.
120
6 Netze für die Merkmalsdetektion
Abb. 6.3 Schnitt durch die Retina (A) und lokale Verschaltung der Horizontalund Bipolarzellen (B) (nach [45])
Abb. 6.4 Nervus opticus und Ganglion geniculatum laterale (nach [45])
6.2 Simple Cells
121
Ein Teil der Sehnerven kreuzt sich am sogenannten optischen Chiasma, wodurch die beidseitige visuelle Information in jeder der beiden Gehirnhälften verfügbar ist. Neurone der Retina, des LGN und des primären visuellen Kortex reagieren auf Stimuli in lokal abgegrenzten Bereichen des visuellen Feldes auf der Retina. Die lokal abgegrenzten Bereiche werden rezeptive Felder genannt. Stimuli, welche außerhalb des rezeptiven Feldes eines gegebenen Neurons auftreten, führen zu keiner Reaktion des Neurons, während derselbe Stimulus innerhalb des rezeptiven Feldes zu einer signifikanten Reaktion des Neurons führen kann. Historisch werden Neurone der Retina, des LGN und des primären visuellen Kortex in zwei Klassen unterteilt. Die Unterteilung erfolgt abhängig davon, ob verschiedene Stimuli auf unterschiedlichen Bereichen des visuellen Feldes für ein Neuron linear aufsummiert werden oder nicht. Beispiele für die Klasse der „linearen“ Zellen bilden X-Zellen auf der Retina von Katzen, P-Zellen auf der Retina und im LGN bei Primaten sowie „sC“ im primären visuellen Kortex des Menschen. Beispiele für die Klasse der „nichtlinearen“ Zellen bilden Y-Zellen auf der Retina von Katzen, M-Zellen auf der Retina und im LGN bei Primaten sowie „complex cells“ im primären visuellen Kortex.
6.2 Simple Cells Im Mittelpunkt der folgenden Betrachtungen sollen die sogenannten „simple cells“ (sC) des primären visuellen Kortex stehen. Die rezeptiven Felder der sC sind auf kleine, abgegrenzte Bereiche des visuellen Feldes beschränkt (Abbildung 6.5).
Abb. 6.5 Lage der „simple cells“ Zudem erweisen sich sC als sensitiv erstens hinsichtlich der StimulusOrientierung (z.B. Drehwinkel eines Balkens) und zweitens hinsichtlich der
122
6 Netze für die Merkmalsdetektion
Raumfrequenz (z.B. vertikaler Abstand mehrerer Balken) des präsentierten Stimulus. Diese zunächst als unvereinbar erscheinenden Eigenschaften bedingten zu Beginn der Untersuchungen zu den systemtheoretischen Eigenschaften von sC in den frühen 60er Jahren die Entstehung unterschiedlicher Theorien, wonach sC entweder Raumfrequenzfilter oder Merkmalsdetektoren im Sinne der Detektion von Orientierungen einzelner Kanten seien. Tatsächlich lassen sich beide Eigenschaften der sC mit einer einheitlichen Theorie beschreiben. Mitte der 70er Jahre erkannten Maffei und Fiorentini im Rahmen ihrer Experimente [46], daß das Antwortverhalten der sC in Bezug zum Stimulus linear ist. Vollständige Aufklärung gelang Jones und Palmer im Jahre 1987 [47, 48, 49]. In ihrem Experiment werden bei vorhandener Hintergrundbeleuchtung hellere und dunklere Lichtpulse der Retina appliziert (Abbildung 6.6) und die Anzahl der von einer ausgewählten sC erzeugten Pulse in Abhängigkeit des Reizortes aufgezeichnet.
Abb. 6.6 Reizorte auf der Retina für helle und dunkle Lichtpulse In Abbildung 6.7a,b sind die mit der Zeit sich einstellenden Konturen getrennt für die helleren und dunkleren Lichtpulse angegeben. Subtrahiert man das mit den dunkleren Lichtpunkten erhaltene Profil von dem mit den helleren Lichtpunkten erhaltenen, so ergeben sich mit zunehmender Anzahl der Lichtpulse immer deutlicher die Umrisse von Gabor-Wavelets.
6.2 Simple Cells
123
(a) 64-512 spikes
(b) 1024-8192 spikes
Abb. 6.7 2D-Histogramm der Anzahl der Pulse über der Zeit (nach [2])
124
6 Netze für die Merkmalsdetektion
Im einzelnen wurden 36 sC von Katzen und ihr zweidimensionales räumliches und spektrales Profil vermessen; dabei zeigte sich, daß gemessene und mit Gabor-Wavelets erzeugte Profile statistisch ununterscheidbar waren (Abbildung 6.7c). Natürlich ist mit diesen Experimenten nicht der neuronale Bauplan offenbar geworden; dieser Aufgabe, die gemessene Eingangs-Ausgangsbeziehung mit Hilfe eines neuronalen Netzes zu rekonstruieren, widmen wir uns nun.
(c)
Abb. 6.7 (Forts.) Beispiel eines gemessenen und gefitteten Profils sowie statistischer Fehler (nach [3])
6.3 Erzeugung von Detektorprofilen vom Gabor-Wavelet-Typ Lineare Filter lassen sich in einer klassischen, analogen neuronalen Architektur realisieren. Die kontinuierliche Übertragungsfunktion eines Filters wird dabei zunächst durch eine diskret abgetastete Version ersetzt. Die einzelnen Filterkoeffizienten, die durch die Abtastung entstehen, werden dann als Synapsen mit kontinuierlichen Gewichten interpretiert. Jede dieser Synapsen erhält auf der Sendeseite je ein Pixel des rezeptiven Feldes zugeordnet, welches z.B. entsprechend der lokal einfallenden Intensität ein analoges Signal I(x, y) abgibt. Dieser analoge Wert ergibt multipliziert mit dem Gewicht der angeschlossenen Synapse den synaptischen Strom, der auf der Membran eines allen gemeinsamen Empfängerneurons aufsummiert wird. Der analoge Ausgangswert des
6.3 Erzeugung von Detektorprofilen vom Gabor-Wavelet-Typ
125
Neurons ist dabei umso höher, je höher der aufsummierte synaptische Strom ist, und repräsentiert eine mittlere Pulsrate eines Netzes von Pulsneuronen. Wird die Übertragungsfunktion des Empfängerneurons im linearen Bereich angesteuert, entsteht ein lineares Ein-Ausgangsverhalten, d.h. das Neuron realisiert ein lineares Filter. Dabei benötigt das Netzwerk individuelle positive wie negative Gewichtswerte, um das Filter mittelwertfrei zu implementieren. Diese Sichtweise führt zu der Implementierung von Filterkernen, wie sie von der klassischen Filtertheorie und Bildverarbeitung seit Jahrzehnten angewendet werden. Nach unserer Auffassung sichert diese Art der Implementierung, welche Eingangs- und Ausgangsignale über eine Filtermatrix verbindet, zwar die gemessene Eingangs-Ausgangs-Beziehung, sie trägt aber weder der besonderen Signaldarstellung durch Pulse Rechnung, noch eröffnet sie tiefere Einsichten in die Art und Weise, wie mit Pulsen Signal- und Informationsverarbeitung realisiert werden kann. Im nachfolgenden werden wir ein neuronales Netz zur Erzeugung von Gabor-Wavelet-ähnlichen Profilen vorstellen, welches überdies nur mit Synapsen mit positiven Werten auskommt. Die Charakterisierung eines Detektors durch die lokale Intensitätsverteilung, für die der Detektor besonders sensitiv ist, soll nun im folgenden mathematisch näher beschrieben werden. Für die Charakterisierung sind drei grundlegende Fragen zu klären: (i) gibt es eine Charakteristik, durch die der Detektor in seinen wesentlichen Eigenschaften beschrieben werden kann? (ii) mit welcher Operation wird eine Grauwertverteilung I(x, y) zusammen mit der Charakteristik in ein Ausgangssignal (z.B. Pulsrate) überführt? (iii) Für welche spezielle Grauwertverteilung I(x, y) wird die Detektorantwort maximal? Mit der klassischen, linearen Signaltheorie wurden diese Fragen für lineare Systeme hinreichend beantwortet. Da die hier betrachteten Pulsneuronen nicht als lineare Systeme beschrieben werden können, ist es nicht unmittelbar möglich, die Ergebnisse der linearen Signaltheorie zu übertragen. Dennoch lassen sich grundlegende Ideen auf die hier beschriebenen Systeme übertragen. Dazu ein kurzer Rückblick auf die linearen Systeme. In der Theorie der linearen Systeme wird die Charakteristik eines Filters (Detektors) durch einen Filterkern G beschrieben. G ist hier eine (kontinuierliche oder diskrete) Funktion, die von Ortskoordinaten x und y abhängig ist. Die Filterantwort g am Ort x0 , y0 als Reaktion auf eine Intensitätsverteilung I auf der Retina entsteht durch (kontinuierliche oder diskrete) Faltung des Filterkerns G mit der Intensitätsverteilung I auf der Retina R: Z I(x, y) · G(x − x0 , y − y0 ) dxdy. (6.1) g(x0 , y0 ) = R
Im Falle eines endlichen, lokal beschränkten rezeptiven Feldes eines Detektors reicht es aus, die Faltung über dem rezeptiven Feld statt der vollständigen Retina auszuführen. Sind Filterkern G und Intensitätsverteilung I über
126
6 Netze für die Merkmalsdetektion
dem rezeptiven Feld identische Funktionen, dann wird bekanntermaßen die Filterantwort g maximal (Autokorrelation), d.h. der Verlauf des Filterkerns G(x, y) gibt die Verteilung der (normierten) Intensitätswerte vor, für die die Filterantwort (Detektorantwort) maximal wird. Für einen gegebenen Filter (Detektor) lässt sich die Charakteristik G durch Abtastung des rezeptiven Feldes bestimmen. Im einleitenden Abschnitt über die Charakterisierung der Detektorprofile der sC wurde von dieser Methode Gebrauch gemacht. Die gemessene Mittelwertfreiheit der Filterfunktion G bei einer homogenen Intensitätsverteilung I(x, y) = B impliziert:
g(x0 , y0 ) = B ·
Z
R
G(x − x0 , y − y0 ) dxdy = 0
für alle (x0 , y0 ) .
Wählt man nun in einem weiteren Experiment I(x, y) = B + (H − B) · δ(x − x1 , y − y1 ) ,
d.h. entspricht die Intensitätsverteilung einem einzelnen hellen Lichtpunkt an der Stelle (x1 , y1 ), der von einer Hintergrundintensität B umgeben ist, so ergibt sich die Filterantwort (Detektorantwort) zu: (H − B) · G(x1 − x0 , y1 − y0 ) ,
(6.2a)
(B − D) · G(x1 − x0 , y1 − y0 ) .
(6.2b)
für einen dunkleren Lichtpunkt:
Durch dieses Experiment kann sofort der Filterkoeffizient G Punkt für Punkt abgelesen und damit die charakteristische Intensitätsverteilung, für die die Filterantwort maximal wird, bestimmt werden. Analoge Überlegungen lassen sich nun für die gepulste Detektorantwort nach Abbildung 6.2a-b anstellen. Wir nehmen zunächst an, daß sich die Detektorcharakteristik ebenfalls durch eine Funktion G beschreiben läßt. Zunächst muß die Mittelwertfreiheit des Detektors garantiert werden; verwenden wir unseren Gradientendetektor (Abbildung 5.8 und 6.2a), so können wir dies zusichern, wenn wir auf die Ausgänge 5a, b noch eine symmetrische Differenzstufe folgen lassen (Abbildung 6.8, siehe auch die Abbildungen 5.11, 5.15).
Abb. 6.8 Symbol für den Merkmalsdetektor Den verbliebenen Offset bezeichnen wir als Rauschen.
6.3 Erzeugung von Detektorprofilen vom Gabor-Wavelet-Typ
127
Appliziert man nun eine Verteilung in der Form eines Lichtpunktes bzw. erregt man allgemeiner eine kleine Region (Rechteck in Abbildung 6.9, Bezugspunkt ist seine linke untere Ecke) des rezeptiven Feldes einer einzigen sC gleichförmig mit der Helligkeit H, während man den Hintergrund gleichförmig mit der Helligkeit B erregt, können die Pulsraten der Neuronen N5a,b bzw. N7a,b analysiert werden.
Abb. 6.9 Abtastung des rezeptiven Feldes einer simple cell Wir nehmen dazu an, daß im beleuchteten Rechteck keine Paare liegen, sondern nur immer einer der Eingänge eines Paares, davon aber viele; der verwendete Lichtpunkt ist somit kleiner als der mittlere Abstand der Eingänge eines Paares und größer als eine Lichtzelle der Retina. Für jeden Gradiententektor gemäß Abbildung 5.8 ist die Pulsrate in erster Näherung (siehe Abbildung 5.10) durch (H − B)+Rauschen am Ausgang N4a (wenn Eingang 1 im Rechteck und Eingang 2 außerhalb des Rechtecks liegen) bzw. am Ausgang N4b gegeben (wenn Eingang 2 im Rechteck und Eingang 1 außerhalb des Rechtecks liegen). Gemittelte Werte (getrennt für beide Fälle) stellen sich an N5a und N5b in Abbildung 6.2a-b ein. Liegt nun ein Merkmal mit bestimmter Richtungscharakteristik in dem beleuchteten Rechteck vor, so bekommen wir ein eindeutiges Ergebnis, wenn wir die symmetrische Differenz der an N5a,b ausgegebenen Pulse gemäß Abbildung 6.8 ermitteln: Einer der beiden Ausgänge enthält Rauschen, der andere ein signifikantes Pulssignal, je nachdem wie das Merkmal ausgerichtet ist. Bezeichnen wir mit n1 (x, y) bzw. n2 (x, y) die Dichte der Eingänge des Typs 1 bzw. 2 auf der Retina, so bekommen wir für die Pulsrate des Neurons N5a bzw. N5b die Werte Z Z (H − B) · dxdy n1 (x − x0 , y − y0 ) bzw. (H − B) · dxdy n2 (x − x0 , y − y0 ) ,
(6.3a)
und dementsprechend für N7a , N7b :
128
6 Netze für die Merkmalsdetektion
Z Z (H−B)· dxdy (n1 −n2 ) (x−x0 , y−y0 ) , (H−B)· dxdy (n2 −n1 ) (x−x0 , y−y0 ).
(6.3b) Wir nehmen an, daß N7a die signifikante Pulsrate erzeugt; da die experimentelle Bestimmung des Pulsratenprofils die Übereinstimmung mit GaborWavelets ergeben hat, sollten wir wählen: G(x − x0 , y − y0 ) = (n1 − n2 ) (x − x0 , y − y0 ) .
(6.3c)
Damit ergibt sich in der Tat eine hervorragende Übereinstimmung (Abbildung 6.10).
(a)
(b)
Abb. 6.10 (a) Sensorverteilung der Eingänge 1 (weiss) und 2 (schwarz) für ein ausgewähltes Gabor-Wavelet; (b) Gabor-Wavelet (links) und seine Pulsdarstellung (rechts) (N7a − N7b ) Die Verbindungsdichten n1 , n2 bestimmen also das Filterprofil G (bis auf einen Normierungsfaktor). Umgekehrt können durch Vorgabe eines GaborWavelettyps die passenden Dichten eingestellt werden.
6.4 Experimentelle Überprüfung
129
6.4 Experimentelle Überprüfung Abbildung 6.11 zeigt drei Stimuli: Kante, gebogene Kante und gedrehte Kante. Die Stimuli bedecken 17 × 17 Pixel und werden über den Detektor hinweg bewegt bzw. gedreht. Für eine Versetzung von a = 0 entspricht das gleichanteilsfreie Intensitätsprofil dem obigen Detektorprofil G. Experimentell wurden die Pulsraten von Neuron N5a und Neuron N7a des Gabor-Wavelet-Detektors gemäß Abbildung 6.8 in Abhängigkeit der eingangsseitigen Intensitätsverteilung auf dem rezeptiven Feld bestimmt. Abbildung 6.12 zeigt die Pulsraten von Neuron N5a (links) bzw. Neuron N7a (rechts) für die Kante im Vergleich zu einem idealen Gabor-Filter für verschiedene Versetzungen; Abbildung 6.13 die für die gebogene Kante und Abbildung 6.14 die für im Bereich 0 < a < 180◦ gedrehte Kante.
Abb. 6.11 Die drei ausgewählten Stimuli
Abb. 6.12 Idealer (blau) und gemessener (rot) Verlauf für Stimulus „Kante“ an N5a (links) bzw. an N7a (rechts)
130
6 Netze für die Merkmalsdetektion
Abb. 6.13 Idealer (blau) und gemessener (rot) Verlauf für „gebogene Kante“ an N5a (links) bzw. an N7a (rechts)
Abb. 6.14 Idealer (blau) und gemessener (rot) Verlauf für „gedrehte Kante“ an N5a (links) bzw. an N7a (rechts) Die Steigung des charakteristischen Verlaufes der Pulsrate von Neuron N5a ist dabei immer wesentlich flacher als die des idealen Verlaufes, während die Steigung des charakteristischen Verlaufes der Pulsrate von Neuron N7a und der ideale Verlauf nahezu identisch sind. Dies bestätigt noch einmal die Wirksamkeit der nachgeschalteten symmetrischen Differenzstufe. Abbildung 6.15 zeigt stellvertretend für viele andere je einen horizontal bzw. vertikal ausgerichteten komplexen Gabor-Wavelet; in der ersten Reihe ist der mathematische Gabor-Wavelet und in der zweiten Reihe die mit der vorgestellten Netzarchitektur erzeugten Pulsraten aufgezeichnet.
6.5 Zusammenfassung
131
Abb. 6.15 Idealer (oben) und gemessener (unten) Verlauf von verschiedenen Gabor-Wavelets für ein Gesicht
6.5 Zusammenfassung Die Wahl der Dichten n1 und n2 der Eingangsneuronen bestimmt zum einen die Charakteristik des Merkmals. Auf diese Weise lassen sich Gabor-Wavelets mit großer Genauigkeit implementieren. Zum anderen bestimmt die für alle Differenzpaare vorgesehene Mittelung die Merkmalscharakteristik. Denkbar sind gewichtete Mittelungen mit individuellen synaptischen Gewichten für die Verbindung jedes Neuron N4 mit dem Neuron N5 . Hierdurch ließen sich Kern und Peripherie eines Merkmales zweckmäßig voneinander absetzen. Wir haben ferner gesehen, daß der Merkmalsdetektor zwar dynamische Synapsen zur Differenzbildung einsetzt, aber nur die Pulsrate ausgibt. Für diesen Typ von Merkmalsdetektor spielt also die Zeitkodierung nur intern eine Rolle. Wir haben in diesem Buch nur Merkmale für die Bildverarbeitung im Blick, erwarten jedoch, daß der vorgestellte Merkmalsdetektor breit und allgemein anwendbar ist, da die Subtraktion von Daten bzw. ein Datengradient eine allgemeine Aufgabe der Informationsverarbeitung im menschlichen Gehirn sein muß. Allein das Datenformat gilt es herauszufinden, was gleichbedeutend ist mit der Konstruktion der dafür erforderlichen neuronalen Netzstruktur. Offensichtlich hängt die Zahl der benötigten Merkmalsdetektoren von der gestellten Aufgabe ab, und es erheben sich die Fragen, wie jedes Merkmal über die Bildebene verteilt angeordnet sein muß und die verschiedenen Merkmale miteinander bei der Objekterkennung verknüpft werden. Die nachfolgenden Kapitel geben darauf sukzessive Antwort. Darüber hinaus geht aus der Konstruktion des Merkmalsdetektors seine Universalität hervor: die Verteilung der Anzapfpunkte an den Eingangspulsstrom kann sich jedem beliebigen Profil anpassen.
7 Netze für die Merkmalserkennung Ulrich Ramacher und Arne Heittmann
Betrachten wir ein mit 1024 × 768 Pixeln aufgelöstes Bild und überdecken es mit einem Gitter von 69 × 85 Gabor-Waveletdetektoren, so daß wir an jedem Gitterknoten die Pulsrate von N7a bzw. N7b angezeigt bekommen. Jeder Detektor weist 128 Sensorpaare auf; ferner wollen wir es nicht bei einem Typ von Gabor-Wavelet belassen, sondern 6 komplexe, d.h. 12 reellwertige Gabor-Waveletdetektoren einsetzen. An jedem Gitterknoten nehmen wir einen Vektor auf mit den Pulsantworten der 12 Ausgangsneurone der zugehörigen Gabor-Waveletdetektoren. Ein weiteres 12-faches Gitter mit jeweils 18 × 22 Knoten lassen wir ein Referenzgesicht knapp überdecken (Abbildung 7.1 Mitte) und ziehen es über das feinmaschige größere Gitter.
Abb. 7.1 Referenzgesicht, Merkmalsgitter und Referenzgesicht mit veränderter Miene Dabei ist ein Knoten des zweiten Gitters realisiert als Neuron, welches mittels 12 konstanter Synapsen verbunden ist mit je einem der 12 an einem Gitterknoten sitzenden Ausgangsneuronen des feinmaschigen ersten Gitters (Abbildung 7.2). Jede Synapse ist dabei auf einen Wert gesetzt, der umgekehrt proportional zu der Pulsrate des Ausgangsneurons ist, wenn das Re-
134
7 Netze für die Merkmalserkennung
Abb. 7.2 Detektoranordnung für 12 Gabor-Wavelets ferenzgesicht mit unveränderter Miene vorgelegt wird (Abbildung 7.1 links). Alle Neurone des zweiten Netzes sind nächstnachbarlich durch dynamische Synapsen mit positiven µ vernetzt. Die Speicherung des Gesichtes ist also in den Werten seiner Eingangssynapsen abgelegt, und die Anzeige des Gesichtes geschieht durch die dynamischen Synapsen der Nächstnachbarvernetzung per Synchronisation. Gemäß seiner Konstruktion verwenden wir das kleinere Gitter zur Anzeige der Korrelation, denn bei Betrachtung des Referenzgesichtes (auch mit etwas anderem Ausdruck, siehe Abbildung 7.1 rechts) wird an der Stelle der besten Überdeckung eine synchrone Pulswelle und somit eine deutliche Absenkung der experimentell gemessenen Entropie auftreten (Abbildung 7.3). Die Robustheit ist jedoch unzureichend; denn betrachtet man einen anderen Kopf, so ist an der Stelle optimaler Überdeckung (angezeigt durch die kleinste Entropie nicht ein einziges synchrones Pulsgebiet, sondern sind viele kleine und sehr verschieden gelegene synchrone Pulsgebiete (als zusammenhängende Gebiete gleicher Helligkeit) zu beobachten (Abbildung 7.4). Ein Kopferkenner – geschweige denn ein Gesichtserkenner – ist durch die einfache Kopplung von Merkmalsdetektoren direkt an ein das Objekt (in diesem Falle der Kopf) erkennendes Netz so jedenfalls nicht zu bekommen – einmal abgesehen davon, daß diese Anordnung kein von Belichtungsschwankungen unabhängiges Verhalten aufweisen würde.
7 Netze für die Merkmalserkennung
135
Abb. 7.3 Experimentelle Entropie sinkt deutlich bei Position größter Kongruenz
Abb. 7.4 Gebiete unterschiedlicher Pulsrate bei optimaler Überdeckung der Referenz mit Fremdgesicht verdeutlichen fehlende Robustheit
136
7 Netze für die Merkmalserkennung
7.1 Prinzipien der Objekterkennung Stellen wir uns irgendeine Bilderwelt vor, in der es eine festgelegte Anzahl von Objekten zu erkennen gilt, und denken wir uns jedes Objekt (z.B. einen Kopf) in eine Anzahl von nicht-überlappenden Objektkomponenten (wie beispielsweise die Braue und die Nase) zerlegt vor; jede dieser Objektkompomponenten definiere eine (Bild-)Zone, in welcher ihre Komponente irgendwie auftreten kann, und innerhalb dieser Zone seien so viele verschiedene Merkmalsschichten angeordnet wie zur Komponentenerkennung nötig. Da jedes Objekt in unterschiedlichen Entfernungen auftreten und deshalb eine Objektkomponente samt zugehöriger Zone nicht mehr erkennbar sein kann, sondern das Objekt (hier der Kopf) dabei selbst zu einer Komponente eines neuen Objektes (hier die menschliche Figur) wird, oder ein Perspektivenwechsel das Objekt in eine neue Zerlegung von Komponenten (beispielsweise Profil oder Hinteransicht eines Kopfes) überführen kann, ist die Erkennung von Objekten eine Konstruktionsaufgabe, welche folgenden Prinzipien gehorchen sollte: 1. Für eine gegebene Bilderwelt sollte jedes Objekt gerade soviel Objektkomponenten bzw. Zonen aufweisen, daß die Erkennung des Objektes sichergestellt ist. 3. Innerhalb jeder Zone sollte die Zahl der verschiedenen Merkmalstypen gerade so klein gehalten werden, daß die Erkennung der Objektkomponente innerhalb ihrer Zone noch gelingt. Ebenso ist die Überdeckung einer Objektkomponente in einer Zone durch Merkmalsdetektoren eines Typs mit gerade so vielen vorzunehmen, wie nötig sind zur Erkennung der Objektkomponente. 3. Entfernungs-, Rotations- und Beleuchtungsinvarianz sollten in dem Bereich herrschen, in welchem Objektkomponenten noch nicht verschwinden. 4. Beim Verschwinden von einigen, aber nicht allen Objektkomponenten und Erscheinen von neuen Komponenten oder beim Auftreten neuer Objekte sollte die Architektur der Erkennung um Objekte bzw. Objektkomponenten, Zonen, neue oder mehr Merkmale modular erweiterbar sein . Diese Prinzipien zielen auf eine möglichst knappe, robuste Beschreibung eines Objektes und setzen die Definition des Objektes als durch Bindung von Objektkomponenten Geschaffenes voraus. Wir wissen, daß der Mensch die Invarianz von Gegenständen unter Bewegung erkennen und Gegenständen eine Bedeutung zuerkennen kann, so daß sie gegebenenfalls Objektstatus erhalten. Wenn wir die Detektorgrundausstattung des visuellen Systems mit einer Merkmalspyramide voraussetzen, so scheint es nicht zwingend, daß nur eine minimale Anzahl von Objektkomponenten, Merkmalstypen und Merkmalen zur Objekterkennung benutzt wird, wie die obigen Prinzipien fordern. Ganz im Gegenteil; beim Aufbau der Bilderwelt und bei der ersten Begegnung mit einem Objekt erschließt sich seine Bedeutung i.a. noch nicht im vollen Umfang, und so könnte es besser sein, die riesige Anzahl von Synapsen dazu zu benutzten, eine möglichst große Anzahl
7.2 Netzarchitektur für die robuste Merkmalserkennung
137
von Objektkomponenten etc. anzulegen. D.h. die Anzahl der Objektkomponenten, verschiedenen Merkmalstypen und Exemplare jeden Merkmalstyps könnte sehr viel höher liegen, als für die Unterscheidung des Objektes in der bestehenden Bilderwelt schlussendlich nötig ist. Ein Mechanismus der Ausdifferenzierung könnte sich dann zunutze machen, daß der Prozeß der Objektdefinition kein augenblicklicher, sondern ein zeitlich ausgedehnter ist: im Verlauf der Interaktion mit dem Objekt wird sich erst erweisen, welche Objektkomponenten bedeutungstragend sind und welche nicht. Zu Ende dieses Prozesses könnten wir somit eine minimale Anzahl von Objektkomponenten etc. vorfinden. Den obigen statischen Prinzipien, welche den ausgereiften, finalen Objektstatus betreffen, wollen wir somit folgende dynamische Prinzipien zur Seite stellen: 5. Bei der ersten Begegnung mit einem Objekt wird es mit maximaler Auflösung gespeichert: jedes lokal vorherrschende Merkmal beliebiger Auflösung zählt als Objektkomponente. 6. Durch weitere Begegnungen und Interaktionen mit dem Objekt können sich Objektkomponenten auflösen oder vereinigen zu einer neuen Objektkomponente, je nachdem, ob sie bedeutungslos sind oder eine gemeinsame Bedeutung tragen. 7. Jeder Objektkomponente wird eine Zone zugeordnet, in welcher sie alleinig und in irgendeiner ihr möglichen Verformung vorkommen kann, wenn das Objekt in Normallage präsent ist. Perspektivische Drehungen, welche die Objektkomponenten sichtbar lassen, sind mit den Zonen berücksichtigt. 8. Jedem Objekt ist ein maximaler Bereich zugeordnet, in welchem es als verkleinertes Abbild des Objektes in Normallage erkannt werden kann. 9. Perspektivische Drehungen der Normallage, welche Objektkomponenten verschwinden oder neue erscheinen lassen, ergänzen die Objektbeschreibung. Im nachfolgenden verwenden wir die Prinzipen 1 - 4 und 7 als Ausgangspunkt der Konstruktion; für die Prinzipien 5, 6 und 9 können wir noch keine Netze vorweisen. Für Prinzip 8 schlagen wir in Kapitel 16 eine Architektur vor, welche allerdings wegen ihrer Größe nicht mehr simulierbar ist.
7.2 Netzarchitektur für die robuste Merkmalserkennung Da wir eine große Zahl von Objekten erkennen wollen, werden wir selbst bei Beschränkung auf festen Betrachtungsabstand viele Gabor-Wavelets benötigen, welche je nach Objekt an unterschiedlichsten Stellen der Retina vorhanden sein müssen; deshalb stellen wir uns die Detektoren eines jeden Typs mehr oder weniger regelmäßig und flächenfüllend mit der Retina verbunden vor (siehe Näheres dazu in Kapitel 16). Da bei Betrachtung eines Objektes (oder einer Objektklasse) im festen Abstand und beispielsweise in Frontalsicht die Lage des Abbildes eines Objektes (der Klasse) auf der Retina i.a.
138
7 Netze für die Merkmalserkennung
etwas variieren wird und da die markanten Komponenten eines Objektes nur wenig oder gar nicht überlappend im Bildgebiet des Objektes verteilt sind, können wir jeder Objektkomponente eines Objektes eine größtmögliche Zone ihres Auftretens auf der Retina zuordnen. Nehmen wir beispielsweise die Brauen-Augen-Partie eines Gesichts: an dieser Stelle gibt es keinen Überlapp mit anderen markanten Partien eines Gesichts, selbst wenn Braue und Auge alle ihnen mögliche Veränderungen durchführen (Abbildung 7.5).
Abb. 7.5 Zonen als maximale Gebiete der Erscheinung einer Objektkomponente In dieser Zone liegen eine Vielzahl von Detektoren unterschiedlichen Typs, und wir beschränken uns auf einen in dieser Zone dominierenden Typ, d.h. wir modellieren die Objektkomponente durch nur einen Gabor-Wavelet. Davon liegen in der 20 × 24 Pixel großen Zone genau 480 im Pixel-Abstand folgende horizontale Detektoren mit je einem rezeptivem Feld von 13 × 13 Pixeln. Eine Braue oder ein Auge wird also von je einem Merkmalsdetektortyp bzw. einer Zone überdeckt. Zu bestimmen ist die größte zusammenhängende Menge von Detektoren in der Zone, welche mit der gleichen Pulsrate pulsen. Dazu bedarf es mehrerer Zwischenschritte. Für jede Zone bestimmen wir als erstes die mittlere Helligkeit und ziehen sie von der Antwort der GaborWavelets ab; dazu bedienen wir uns der Pulsdifferenzschaltung und beachten, daß die Differenz asymmetrisch berechnet wird: nur wenn die Gabor-WaveletPulsrate größer als ihre mittlere Pulsrate ist, feuern die Neuronen der Schicht 4 (Abbildung 7.6). Der Schicht 4 folgt die Schicht 5, welche aus wieder 20 × 24 Neuronen besteht, die über eine konstante Synapse des Wertes 1/10 von der Schicht 4 versorgt werden.
7.2 Netzarchitektur für die robuste Merkmalserkennung
139
Abb. 7.6 Abzug der mittleren von der aufgenommenen Merkmalsintensität Ohne weitere Vernetzung ergibt sich auf dieser Schicht (oder den Schichten 1 und 4) das in Abbildung 7.7 gezeigte Bild der Aktivität, aufgenommen als Zahl der gleichzeitig feuernden Neuronen in einem gleitenden 2ms-Fenster in jeder der 6 Zonen. Zwar gibt Abbildung 7.7 nicht wieder, welche der 20 × 24 Neuronen einer Zone feuern, aber es ist gut zu sehen, daß selten mehr als 4 Neuronen feuern, meistens nur 2; auf dieser Basis läßt sich jedenfalls nicht die Aussage treffen, daß ein Merkmal in seiner Zone anwesend ist oder nicht.
Abb. 7.7 Zahl der gleichzeitig sendenden Neuronen der Schicht 5 jeder Zone (ohne laterale Vernetzung) als Funktion der Zeit und gemessen mit 2 ms Zeitfenster.
140
7 Netze für die Merkmalserkennung
Rufen wir uns deshalb die Funktion eines Fleckdetektors in Erinnerung (siehe Kapitel 5, Abschnitt 5.3) und betrachten die Schicht 4 als die Schicht, welche über gleiche und konstante Synapsen an die 20 × 24 Neuronen eines Fleckdetektors gekoppelt sind. Da irgendwo in der Zone das Merkmal liegen muß, wird eine entsprechende Menge von Detektoren mit der gleichen Pulsrate anschlagen, und also werden die zugeordneten Fleckdetektorneuronen mit einem im Mittel gleichen Pulsstrom beliefert. Je nach der Vernetzung wird über die Fleckdetektorneuronen gleicher Pulsrate eine Welle hinweglaufen (Nächstnachbarvernetzung) oder werden alle Neuronen gleicher Pulsrate zum fast gleichen Zeitpunkt feuern (Vollvernetzung), da die Neurone des Fleckdetektors durch dynamische Synapsen mit positivem µ verbunden sind. Unabhängig davon, wie wir die Vernetzung wählen: immer wird das Phänomen der Synchronisation sich zeigen, an welchem Ort das Merkmal in der Zone auch erscheint (Lageunabhängigkeit). Wählen wir die Nächstnachbarvernetzung, so wird nur das Merkmal erkannt, welches mit dem betrachteten Gabor-Wavelet ideal übereinstimmt; wählen wir die Vollvernetzung, so können alle durch die Vollvernetzung von 20 × 24 Neuronen erlaubten Kombinationen von Merkmalsdetektoren zu einer Braue kombinieren, was nicht sinnvoll ist. Die weitere Optimierung muß demnach darin bestehen, eine Vernetzung der Fleckdetektorneuronen zu finden, welche das mögliche Auftreten von einer Braue in all seinen Verformungen bestmöglich abdeckt, ohne mehr als eine Braue darzustellen (Verformungsunabhängigkeit). In horizontaler Richtung wählen wir eine Vernetzung für die Schicht, welche von jedem Neuron bis zu seinem linken und rechten 4. Nachbarn reicht (Abbildung 7.8). In vertikaler Richtung verbinden wir das Neuron mit seinem oberen und unteren Nachbarn und ebenso in den beiden Diagonalen. Jedes Neuron hat somit 14 Synapsen, die zu den angegebenen Nachbarneuronen ausgreifen. Insgesamt werden für das 20 × 24 Feld von Neuronen der 5. Schicht 6100 dynamische und 480 konstante Synapsen gebraucht. Abbildung 7.9 zeigt einen Ausschnitt der Pulsaktivität für die betrachtete Brauen-Zone, wenn die Braue in Normalgestalt vorliegt; 8 Neuronen der Schicht 5 feuern zeitgleich in der Zeile 4 (blaue Kreise). Die Synchronisation ist besonders eindrücklich im Video sichtbar.
Abb. 7.8 Vernetzung jedes Neurons der Schicht 5 (Ausschnitt aus dem 20 × 24 Feld)
7.3 Merkmalserkenner
141
Wie in den beiden vorigen Kapiteln ausgeführt, ist der Einsatz der Synchronisation abhängig von der Anzahl der Eingänge gleicher Pulszahl und dem Kopplungsfaktor µ derjenigen Synapsen, welche die 24 Neuronen untereinander verbinden; je größer µ gewählt wird, umso weniger gleiche Eingänge reichen aus, aber auch umso weniger Auflösung wird erzielt. Natürlich hängt die Synchronisation auch von der Vernetzung der 480 Neuronen untereinander ab. Mit unserer Wahl der Vernetzung erhalten wir ein brauchbares Erkennungsverhalten der Schicht 5 bei Veränderung der Helligkeit der Zone und der Form des Merkmals sowie eine ausreichende Orthogonalität bei verschiedenen Merkmalen. Bevor wir uns dessen vergewissern, wollen wir noch eine Ergänzung der Schicht 5 vornehmen, welche Zustand und Grad der Synchronisation auf dem Feld anzeigen kann.
Abb. 7.9 Synchronisation in der Schicht 5 bei Vorliegen der Braue
7.3 Merkmalserkenner Zu jeder Zeile des 20 × 24 Feldes der Schicht 5 geben wir zwei Synchrondetektoren (Kapitel 5, Abschnitt 5.5), welche mit den 24 Neuronen einer Zeile durch dynamische Synapsen verbunden sind (siehe Abbildung 7.10). Die Synapsen der beiden Dendriten unterscheiden sich nur in dem Wert des Koeffizienten r (siehe (5.3c)) und haben gemeinsam den Koeffizienten λ = 1/2. Die r-Werte bemessen wir so, daß einmal bereits je ein Puls einer Zeile zur Auslösung des Synchrondetektorneurons N2 führt, ein andermal erst mindestens 4 gleichzeitige Pulse zur Auslösung des Synchrondetektorneurons N1 führen. Die Auswahl des Wertes 4 ist natürlich zu verändern, wenn Größe des Merkmals und Pixelauflösung anders gewählt werden sollen.
142
7 Netze für die Merkmalserkennung
Abb. 7.10 Erweiterung des Synchrondetektors für eindeutige Auslösung (Ausschnitt aus dem 20 × 24 Feld der Schicht 5, eine Zeile zeigend) Zwei Synchrondetektoren sind nötig, um Fehlauslösungen zu vermeiden, wie sie von nur einem Synchrondetektor produziert werden. Denn wird der Schwellwert von Neuron N1 mit 4 Pulsen nicht erreicht, weil nur 2 gleichzeitige Pulse vorliegen, wird N1 nicht unerheblich vorgeladen und ein nachfolgender 2-er Puls könnte es zur Auslösung bringen. Abhilfe bringt die in Abbildung 7.10 gezeigte Anordnung. Ein von Neuron N2 ausgelöster Puls wird um 4 ms verzögert durch die Einfügung von 3 weiteren Neuronen mit Synapsen des Wertes 1.2. Das Neuron N3 sendet seinen Puls über eine dynamische Synapse mit positivem µ an das Synchrondetektorneuron N1 und über eine konstante Synapse des Wertes 0.025 an das Neuron N4 . Die Synapse W13 gehorcht der normalen Synapsengleichung, dW13 = −γ · W13 (t) + µ · (a1 (t) − 0.5 θ) , µ = 25 , dt während für die Synapse W41 die dendritische Gleichung gilt (µ = 50): dW41 = −γ · (W41 − w41 )(t) + µ · dt
Z
W41 (t′ ) · x1 (t′ ) dt′ − r · 0.025 x3 (t′ ) .
Wenn Neuron N1 feuert, kann dies bedeuten, daß mindestens 4 gleichzeitige Pulse vorhanden sind; dann pulst Neuron N2 gleichzeitig mit N1 , wegen der Verzögerung aber N3 noch nicht, so daß die dendritische Synapse W41 den N1 -Puls verstärkt und N4 feuert. Wenn Neuron N1 feuert, kann dies jedoch, wie oben erwähnt, auch anders zustande kommen. Nehmen wir an, daß das Membranpotential von N1 schon oberhalb des halben Schwellwertes liegt (liegt es unterhalb, kann N3 nicht einwirken); dann kann ein von N2 nach N3 gelaufener Puls N3 und N1 fast gleichzeitig auslösen. Mit der Folge, daß die dendritische Synapse W41 sperrt und nur der sehr kleine Strom 0.025 · x3 für 1 ms von N4 akkumuliert wird. Damit ist gezeigt, daß Neuron N4 nur dann feuert, wenn das Merkmal mit mindestens der Stärke 4 in der Zeile vorliegt. Das Neuron N5 summiert die Antwort aller Zeilen der Schicht 5. Die gesamte Anordnung von der Schicht 5 bis zum Neuron N5 bezeichnen wir als Merkmalserkenner. Betrachten wir nun wieder unsere Braue in Idealgestalt und zeichnen die Signalantworten der erweiterten Synchrondetektoren der 20 Zeilen in Abbildung 7.11 auf.
7.4 Trennschärfe
143
Abb. 7.11 Signalantworten des erweiterten Synchrondetektors für eine Braue Für jede Zeile (soweit sie eine Signalantwort enthält) ist die Anzahl der gleichzeitig feuernden Neuronen der Schicht 5 angegeben und sind die Pulsantworten der Neuronen N1 und N4 aufgezeichnet. Wie deutlich zu sehen ist, lassen nur 4 oder mehr gleichzeitig pulsende Neuronen den Synchrondetektor zünden1 .
7.4 Trennschärfe Die Wahl der lokalen Vernetzung in Schicht 5 bestimmt auch, wie trennscharf der Merkmalserkenner ist (als solchen wollen wir die Schicht 5 samt erweiterten Synchrondetektoren nun bezeichnen). Dazu betrachten wir einen 2 Pixel breiten horizontalen Strich, nehmen die Aktivität der Schichten 4 und 5 samt Synchrondetektoren auf und teilen den Strich sodann in zwei Hälften, die vertikal voneinander weg bewegt werden. Als brauchbar erweist sich die Vernetzung, wenn sie getrennte Striche als getrennte Aktivität wiedergibt und wenn die Stärke der Aktivität der Strichlänge proportional ist. Da der Strich länger als die Braue gewählt ist, setzen wir den Schwellwert für den einen Synchrondetektor nun von 4 auf 10, d.h. 10 Neuronen müssen gleichzeitig pulsen. Der obere Teil der Abbildung 7.12a gibt die Aktivität der Schicht 4 wieder, also die (um den Mittelwert bereinigte) Pulsrate der Merkmalsdetektorschicht; in der unteren Abbildung ist aufgezeichnet, wieviele Neuronen pro Zeile gleichzeitig in der Schicht 5 pulsen (nur die Zeilen sind gezeigt, in denen die Antwort von null verschieden ist), darüber sind die Antworten der Neuronen N1 und N4 des erweiterten Synchrondetektors aufgezeichnet. Etwa 15 Neuronen pulsen zeitgleich bei ungeteiltem Strich. 1
Der Vorschlag zur Erweiterung des Synchrondetektors geht auf A. Heittmann zurück.
144
7 Netze für die Merkmalserkennung
(a)
Abb. 7.12 Signalantworten des erweiterten Synchrondetektors für einen Strich Bei knapp getrennten Strichen sind es etwa 8 Neuronen (Abbildung 7.12b), und diese Anzahl ändert sich auch nicht, wenn die beiden Striche weiter voneinander weggezogen werden (Abbildung 7.12c). Erst wenn die vertikale Vernetzung der Schicht 5 ebensolche Ausmaße annähme wie die horizontale, wären die Striche in Abbildung 7.12b nicht mehr getrennt.
7.4 Trennschärfe
145
(b) Strich geteilt und Teile leicht versetzt
(c) Teile deutlich getrennt
Abb. 7.12 (Forts.) Signalantworten des erweiterten Synchrondetektors für einen Strich
146
7 Netze für die Merkmalserkennung
7.5 Orthogonalität bei Rotation Das betrachtete horizontale Merkmal sollte nach Drehung um 90 Grad keine Signalantwort bei seinem horizontalen Merkmalserkenner hervorbringen. Wenn der Kopf so gedreht wird, daß sich die Braue um den Mittelpunkt der Zone von 0 bis 90 Grad dreht, erwarten wir deshalb spätestens bei > 45 Grad ein Abreißen des Signals des Neurons N4 ; Abbildung 7.13a,b zeigen das gemessene Verhalten: zwischen 45 und 90 Grad antwortet N4 nicht mehr. Sehr schön ist in Abbildung 7.13a zu sehen, daß Synchronisation in der Schicht 5 nicht zur Auslösung des Merkmalserkenners führt, wenn sie unterkritisch ist. Die Vernetzung der Schicht 5 ist also brauchbar.
(a) Rotation der Braue um 45 Grad
(b) Rotation der Braue um 90 Grad
Abb. 7.13 Signalantwort des Synchrondetektors bei Rotation der Braue
7.6 Invarianz gegenüber Helligkeit der Beleuchtung
147
7.6 Invarianz gegenüber Helligkeit der Beleuchtung Nicht verwunderlich ist – da bereits in Kapitel 5, Abschnitt 5.3, Abbildung 5.7a,b ersichtlich – daß der Synchrondetektor im weiten Helligkeitsbereich einsetzbar ist. Wir betrachten ein helles, ein mittelhelles und ein dunkles Bild, und für jede Zone jedes Bildes führen wir die Signale der Zeilen über eine konstante Synapse des Wertes 1/20 auf das Neuron N5 , welches die Zonenantwort bzgl. des betrachteten Merkmals abgibt. Auf diesem Wege erhalten wir für die drei Bilder die in Abbildung 7.14a-c aufgezeichneten Zonenantworten. Zur Illustration der unterliegenden Vorgänge ist für jedes Bild eine ausgewählte Zone gezeigt, welche die Synchronisation in der Schicht 5 und die Signale des erweiterten Synchrondetektors zeigt.
(a) bei heller Beleuchtung
Abb. 7.14 Signalantwort der Merkmalserkenner in Zone 1 − 6
148
7 Netze für die Merkmalserkennung
(b) bei mittelheller Beleuchtung
(c) bei dunker Beleuchtung
Abb. 7.14 (Forts.) Signalantwort der Merkmalserkenner in Zone 1 − 6
7.7 Invarianz gegenüber Veränderungen der Form und Mimik
149
7.7 Invarianz gegenüber Veränderungen der Form und Mimik Wir beschränken uns in diesem Kapitel auf einen Kopf in Frontalsicht, festem Abstand und erlauben Drehungen, welche die Objektkomponenten noch nicht verschwinden lassen, und verwenden dabei die beschriebenen Gesichtszonen. In Abbildung 7.15a sehen wir einen Kopf mit 4 verschiedenen Gesichtsausdrücken, so daß sich beispielsweise die Brauen an unterschiedlichen Orten befinden. Die Merkmalsextraktion erfolgt gemäß Abbildung 6.12 durch je einen horizontalen Gabor-Wavelettyp pro Objektkomponentenzone. Darauf folgen die Schichten 3 − 5 (letztere mit den Synchrondetektoren für jede Zeile ergänzt) und die Summation aller Zeilen der Schicht 5 durch das Neuron N5 , welches den Merkmalserkenner abschließt.
(a)
Abb. 7.15 Referenzkopf mit drei weiteren unterschiedlichen Gesichtsausdrücken Sodann testen wir die vorgeschlagene Architektur mit den gegebenen Gesichtsausdrücken und erhalten das in Abbildung 7.15b-e wiedergegebene Ergebnis. Aufgezeichnet ist für jede Zone wieder die N5 -Antwort des jeweiligen Merkmalserkenners als Funktion der Zeit. Für alle Zonen beginnt die Pulsaktivität sich nach ca. 100 ms zu stabilisieren. In Zonen schwacher Merkmalsintensität läuft die Synchronisation auf einer längeren Zeitskala ab, zeigt aber ebenfalls eindeutige Antworten in allen Beispielen. En passant sei vermerkt, daß die Simulation der vier Gesichter auf einem High-end PC bereits zwei Tage gedauert hat – ohne Unterbrechung durch ein anderes Programm.
150
7 Netze für die Merkmalserkennung
(b) für Miene 1
(c) für Miene 2
(d) für Gesicht 3
Abb. 7.15 (Forts.) Signalantwort der Merkmalserkenner der Zonen 1 − 6
7.8 Komposition mehrerer Merkmale zu einer Objektkomponente
151
(e) für Gesicht 4
Abb. 7.15 (Forts.) Signalantwort der Merkmalserkenner der Zonen 1 − 6
7.8 Komposition mehrerer Merkmale zu einer Objektkomponente Im letzten Abschnitt haben wir pro Zone bzw. Objektkomponente nur ein einziges Merkmal zugelassen. Nehmen wir nun an, daß mehr als nur ein einziges Merkmal für die Kodierung einer Objektkomponente nötig ist; in dem Beispiel der Augen-Braue-Region könnten es neben den horizontalen und vertikalen Gabor-Wavelets weitere zur Erfassung von Schrägen sein. Jeder Merkmalserkenner ermittelt die Stärke der Erscheinung des Merkmals. Die Stärke wird zum einen angezeigt durch die Pulsrate des Neuron N5 , welche der Beleuchtungshelligkeit proportional ist, und zum anderen durch die Korrelation der Pulse der Neuronen der Schicht 5. Dabei kann die Korrelation der Pulse sehr klein sein bzw. als perfekte Synchronisation in Erscheinung treten, je nachdem ob das Merkmal fehlt oder deutlich vorhanden ist. Das Neuron N5 wollen wir von nun an als Erkennungsneuron eines Merkmals bezeichnen. Die Verknüpfung der von den Neuronen N5 jedes Merkmalserkenners abgegebenen Signale S1 bis Sn – wenn es sich um n Merkmale pro Zone handelt – durch ein Netz muß so geschehen, daß unabhängig von der zeitlichen Reihenfolge des Feuerns der Neuronen N5 dann und nur dann ein Pulssignal erzeugt wird, wenn alle n Merkmale vorliegen. Da dies unabhängig von der Pulsrate jedes Synchrondetektors zu geschehen hat, liegt die Information über das Vorliegen aller Merkmale einzig und allein in der Präsenz aller Signale S1 bis Sn . Wenn alle Merkmale vorliegen, kommen diese in irgendeiner zeitlichen Reihenfolge vor, welche sich überdies wegen der unterschiedlichen Pulsraten der einzelnen Synchrondetektoren beständig ändern kann. Es wird also ein Netz gesucht, welches die Koinzidenz von n Signalen S1 bis Sn feststellt. Genau dies bewirkt das Netz von Abbildung 7.16; dabei haben wir n = 4 gesetzt. Seine Wirkungsweise stützt sich auf die des „2-vor-1“-Detektors, welcher den ersten Teil des Pulsdifferenzdetektors ausmacht (Kapitel 5). Betrach-
152
7 Netze für die Merkmalserkennung
Abb. 7.16 Netz zur Verknüpfung der Signale Sx zu einem Zonendetektor ten wir die erste Reihe von Neuronen in Abbildung 7.16 und beginnen mit den zwei linken Neuronen; S2 kann das eine Neuron vorladen und S1 den Puls auslösen bzw. umgekehrt für das andere Neuron. Somit kann detektiert werden, ob S1 vor oder nach S2 pulst. Schreiten wir in der Reihe weiter nach rechts, so wird nacheinander abgeprüft, ob S3 vor oder nach dem Paar (S1 ,S2 ) seinen Puls feuert und ob S4 vor oder nach S3 liegt, wenn S3 vor oder nach dem Paar (S1 ,S2 ) seinen Puls feuert. In der ersten Reihe können so 8 der 24 möglichen zeitlichen Reihenfolgen der Eingangssignale S1 bis S4 detektiert werden, in der zweiten Reihe weitere 4, in der dritten Reihe weitere 6, und in den folgenden drei Reihen je 2 weitere Reihenfolgen. Sobald also jedes der Erkennungsneuronen N5 mindestens einen Puls abgefeuert hat, feuert sofort das Neuron NZ .
7.8 Komposition mehrerer Merkmale zu einer Objektkomponente
153
Schon die erste Reihe genügt, um eindeutig anzuzeigen, daß die Objektkomponente vorhanden ist; denn sind alle Merkmale vorhanden, so wird nach einer gewissen Zeit eine der in der ersten Reihe detektierbaren Reihenfolgen des zeitlichen Vorkommens der Signale S1 . . . S4 erscheinen und damit das Zonenneuron NZ einen Puls abgeben (dabei ist die dynamische Synapse des Zonenneurons NZ in ihrem Schwellwert so bemessen, daß ein einziger einlaufender Puls das Neuron NZ zum Zünden bringen kann, siehe auch (5.3e)). Die folgenden Reihen haben also nur die Funktion, die Anzeige der Objektkomponente zu beschleunigen, wenn sie denn vorliegt. Es ist ferner deutlich zu sehen, daß kein Puls abgeben wird, wenn nicht alle Merkmale vorliegen. Da bei Bildwechsel ein Teil der Neuronen vorgeladen ist, könnte es zu einer Fehlauslösung des Zonendetektors kommen. Diese zu unterdrücken bewirkt die einfache Schaltung in Abbildung 7.17. Wenn Neuron NR einen Puls aussendet, so feuern auch N1 und N2 , egal, welche Vorladungen auf den Membranen liegen; die Neurone N3 und N4 dagegen feuern nicht, da ihre dendritischen Synapsen durch Wahl des positiven Vorzeichens (Kapitel 5, Abschnitt 5.5) als Anti-Koinzidenzdetektoren fungieren. So wird eine sichere Entladung der Neurone N1 , N2 erzielt. Überlagert sich umgekehrt ein einkommender Puls mit einem Reset-Puls oder gibt es keinen Reset-Puls, so erzeugen N3 bzw. N4 Pulse wie in Abbildung 7.16.
Abb. 7.17 Zonendetektormodul mit Reset-Schaltung Wegen der analytischen Ableitbarkeit des Verhaltens des Zonendetektors könnten wir auf das entsprechende Experiment verzichten; der Vollständigkeit halber zeigt Abbildung 7.18 das Feuern des Zonendetektors als Funktion der Zahl der gleichzeitig anliegenden künstlich erzeugten Signale S1 . . . S4 und des Reset-Pulses von NR für einige der 24 möglichen Kombinationen von Eingangssignalen. Man sieht deutlich, daß nur eine 4-er Gruppe den Zonendetektor auslöst, wenn kein Rest-Puls zugegen ist.
154
7 Netze für die Merkmalserkennung
Abb. 7.18 Verhalten des Zonendetektors Die Erweiterung der Architektur des Zonendetektors für den Fall, daß nicht alle Merkmale einer Objektkomponente vorliegen müssen, sondern nur eine Mindestzahl präsent sein muß, liegt auf der Hand; ferner mag es nötig sein, die Pulsraten der Synchrondetektoren (und damit die Helligkeit) für die Feststellung der Existenz einer Objektkomponente heranzuziehen. Soweit sind unsere Arbeiten jedoch noch nicht gediehen, daß diese Verallgemeinerungen berücksichtigt werden müßten. Andererseits erwarten wir, daß sie eine Rolle spielen, wenn eine größere Zahl von Objekten studiert werden soll, als in diesem Buch behandelt werden kann.
7.9 Zusammenfassung Die robuste Objekterkennung beginnt mit der robusten Erkennung der Objektkomponenten. Der Merkmalserkenner ist ein Netz, welcher in Neuron-zuNeuron-Manier mit den Merkmalsdetektoren eines bestimmten Merkmalstyps in der betrachteten Zone durch gleiche und konstante Synapsen verbunden ist; die Vernetzung der Neuronen des Merkmalserkenners untereinander ist i.a. keine Vollvernetzung, aber auch nicht eine einfache Nächst-Nachbar-Vernetzung, sondern muß individuell optimiert werden. Bei Vorliegen des Merkmals ergibt sich so eine vollständige Synchronisation derjenigen Neuronen, welche sich über den in der Merkmalsdetektorschicht anschlagenden Neuronen befinden.
7.9 Zusammenfassung
155
Grad und Ausmaß der Synchronisation können mit dem Synchrondetektor ermittelt werden, und es kann anwendungsspezifisch festgelegt werden, welche Zahl von Neuronen mindestens synchron feuern muß, damit das Merkmal als anwesend klassifizierbar ist. Die vorgestellte Merkmalserkennung funktioniert weitgehend unabhängig von der Lage des Merkmals in seiner Zone und ist robust genug, um mit Verformungen des idealen Merkmals zurecht zu kommen. Prinzipbedingt gegeben ist die weitgehende Unabhängigkeit der Merkmalserkennung von der Stärke der Beleuchtung. Benötigt eine Objektkomponente mehrere verschiedene Merkmalstypen, so werden die Ausgänge der jeweiligen Merkmalserkenner einem Zonendetektor zugeführt, welcher die Koexistenz dieser Signale feststellt. Dieser Zonendetektor verwendet dynamische Synapsen beiderlei Typs und „zählt“ die Merkmale; nur wenn alle Merkmale (oder eine bestimmte, vorher festgelegte Anzahl) vorhanden sind, erzeugt er einen Puls. Diese Anzeige funktioniert bereits, wenn jeder Merkmalserkenner erst einen Puls abgegeben hat, und ist daher unabhängig von den Pulsraten der verschiedenen Merkmalserkenner. Die beleuchtungsunabhängige, pulsratenunabhängige Bindung verschiedener Merkmale zu einer Objektkomponente ist somit die Funktion des Zonendetektors.
8 Netze für die robuste Kopfdetektion Ulrich Ramacher und Arne Heittmann
Um die vorliegenden, kopfabhängigen Ergebnisse für die Merkmalserkennung auf eine repräsentative Zahl von Köpfen zu verallgemeinern, bieten sich zwei Wege an: den der Bestimmung einer einzigen, minimalen Menge von Zonen für alle betrachteten Köpfe oder den der Anpassung der von Kopf zu Kopf variierenden Zonenabstände an den jeweilig betrachteten Kopf. Den ersten Weg können wir einschlagen, ohne die bisher entwickelte Merkmalsarchitektur zu ergänzen; wir erwarten allerdings eine mit der Zahl der Köpfe stärker werdende Überlappung gewisser Zonen, welche die Erkennungsqualität gegenüber dem Ein-Kopf-Fall verschlechtern könnte. Für den zweiten Weg muß eine Netzarchitektur erst noch entwickelt werden, welche die beschriebene Anpassung vornimmt. Beide Wege scheinen nötig; denn die Klasse der Stühle beispielsweise läßt sich nicht wie die Klasse der Köpfe beschreiben. Wenn als Objektkomponenten die Lehne, die Sitzfläche und die Stuhlbeine bestimmt werden, so kommen jede einzeln in großer Varietät vor, so daß eine Bestimmung von festen Zonen nicht sehr aussichtsreich erscheint. In diesem Kapitel nehmen wir die Bestimmung der Zonen für eine repräsentative Anzahl von 1500 Köpfen vor (Abbildung 8.1). Die Zonen sind auf Augen, Nase und Mund konzentriert und berücksichtigen unterschiedliche Stellungen der Merkmale zueinander, wenn die Personen unterschiedliche Gesichtsausdrücke zeigen. Den Zonen sind jeweils horizontale Gabor-Wavelet-Detektoren eines Typs zugeordnet. Ein Punkt einer Zone bezieht sich auf die N7 -Schicht der Gabor-Wavelet-Implementierung; d.h. die Gabor-Wavelets können noch bis zu ca. 3/4 ihres rezeptiven Feldes über die Zone hinausreichen. Es verbleibt dann die Aufgabe, einen Kopferkenner zu demonstrieren, der beleuchtungs- und mienenunabhängig ist, wenn frontal präsentierte Gesichter im festen, das Sehfeld ausfüllenden Abstand gezeigt werden. Da wir die Zonenbestimmung mit einem statistischen Verfahren vornehmen, können wir die Merkmalsarchitektur des letzten Kapitels unverändert übernehmen. Einzig ein Netz für die Objekterkennung (hier ein Kopf) muß konstruiert werden.
158
8 Netze für die robuste Kopfdetektion
Abb. 8.1 Optimale Zonen, aus 1500 Köpfen extrahiert
8.1 Ergebnisse der Kopfdetektion In den 6 Zonen wird die Präsenz der jeweiligen Objektkomponenten mittels der im letzten Kapitel vorgestellten Zonendetektoren ermittelt. Die Signale Z1 . . . Z6 können dann einem Netz zugeführt werden, welches nach dem in Kapitel 7, Abbildung 7.16 dargelegten Rezept aufgebaut ist, mit dem Unterschied, daß nun 6 statt 4 Signale den Eingang stellen. Die Ausgänge der einzelnen Reihen des so entstehenden Objektdetektors werden dem ObjektNeuron NO zugeführt, und dieses feuert nur dann, wenn alle 6 Zonen in einem Kopfbild vorliegen. Damit sind Objektkomponenten zu einem Objekt zusammengebunden. Wie im letzten Kapitel erwähnt, kann der Objektdetektor nach Bedarf ergänzt werden, so daß das Vorliegen von irgendwelchen oder von ganz bestimmten n < 6 Zonen angezeigt wird. Wir beschränken uns hier auf den Fall n = 6. Da wir die Invarianz gegenüber Beleuchtungsänderungen für jede einzelne Zone bereits nachgewiesen haben, können wir diese auch für den Objektdetektor erwarten. Waren im vorigen Kapitel die Zonen für einen bestimmten Kopf maßgeschneidert, so sind sind sie nun aus einer Menge von 1500 Köpfen extrahiert worden. Wir müssen deshalb überprüfen, ob die in Kapitel 7 demonstrierte Mienen- und Poseninvarianz für alle Köpfe gegeben ist. Da die Simulation eines Kopfes mit 4 verschiedenen Mienen bereits 2 Tage Rechenzeit auf einem hochwertigen PC benötigt, können wir keinen vollständigen Test unserer Erkennungsarchitektur machen; stattdessen haben wir solche Köpfe aus der Galerie ausgesucht, bei denen unsere Architektur keine leichte Aufgabe haben würde: Bärte, Brillen, schwache Kontraste, verschiedene Geschlechter. In den Abbildungen 8.2 a-n sind die Aktivitätsdiagramme der 6 Zonendetektoren und des Objektdetektors für 14 ausgewählte Köpfe gezeigt. Mit schwieriger werdenden Bildern nimmt auch die Zahl der gleichzeitig feuernden Zonendetektoren bzw. der Grad der Objekterkennung ab.
8.1 Ergebnisse der Kopfdetektion
159
Diese Ergebnisse zeigen die Brauchbarkeit des Kopfdetektors für frontale Posen in fester und Sehfeld füllender Entfernung. Verfeinerte Abstimmungen der merkmalstypischen Vernetzung in der Schicht 5 eines Merkmalserkenners, mehr Merkmale und zusätzliche Information zum Bildszenario werden zukünftig erlauben, die Erkennungsrate kräftig zu verbessern – ohne mehr einzusetzen als die bisher geschilderte Erkennungskette bzw. -architektur.
(a) Kopf 1, alle Zonendetektoren antworten sicher
(b) Kopf 2, dito
(c) Kopf 3, dito
Abb. 8.2 Aktivitätsdiagramme der Zonendetektoren (Köpfe 1-3)
160
8 Netze für die robuste Kopfdetektion
(d) Kopf 4, dito
(e) Kopf 5, dito
(f) Kopf 6, Zone 1 ungenügend erfasst
(g) Kopf 7, Zone 6 ungenügend erfasst
Abb. 8.2 (Forts.) Aktivitätsdiagramme der Zonendetektoren (Köpfe 4-7)
8.1 Ergebnisse der Kopfdetektion
161
(h) Kopf 8, Zone 4 ungenügend erfasst
(i) Kopf 9, Zonen 2 und 6 ungenügend erfasst
(j) Kopf 10, Zonen 1 und 2 ungenügend erfasst
(k) Kopf 11, Zonen 4 und 6 ungenügend erfasst
Abb. 8.2 (Forts.) Aktivitätsdiagramme der Zonendetektoren (Köpfe 8-11)
162
8 Netze für die robuste Kopfdetektion
(l) Kopf 12, Zonen 1 und 4 ungenügend erfasst
(m) Kopf 13, Zonen 1 und 2 ungenügend erfasst
(n) Kopf 14, Zonen 1, 2 und 6 ungenügend erfasst
Abb. 8.2 (Forts.) Aktivitätsdiagramme der Zonendetektoren (Köpfe 12-14)
8.2 Potential und Grenzen der bisher entwickelten Seharchitektur
163
8.2 Potential und Grenzen der bisher entwickelten Seharchitektur Hatten wir uns bisher auf Frontalsicht und einen das Sehfeld füllenden Betrachtungsabstand gestützt, so müssten wir im nächstem Schritt größere Drehungen und/oder teilweise Verdeckungen des Kopfes bzw. aus größerer Entfernung aufgenommene Kopfbilder zulassen, bei welchen einige der bisher betrachteten Objektkomponenten eventuell nicht mehr sichtbar bleiben. Der vorgelegte Kopfdetektor muß also in mehrfacher Hinsicht ergänzt oder es müssen weitere Kopfdetektoren hinzugenommen werden, deren Signale einem nun notwendig werdenden Kopferkenner zuzuführen sind. Betrachten wir etwa Köpfe im Profil, so müssten die Zonen vollständig neu definiert werden, und ein neuer Kopfdetektor würde entstehen. Dasselbe gilt für die Hinteransicht eines Kopfes. Da nur einer der Kopfdetektoren anschlagen darf, genügte als Objekterkenner eine einfache Antikoinzidenzschaltung wie in Abbildung 5.19, nun aber mit µ>0. Betrachten wir als nächstes verdeckte Köpfe, beispielsweise einen geneigten Kopf mit Hut, welcher die Augenpartie verdeckt; in diesem Falle mögen Mund- und Nasenzone noch ausreichende Information für die Zonendetektoren bieten. Dies sicherlich nicht mehr, wenn ein Schal Mund und Nase bedeckt. Wir vermuten, daß in beiden Fällen mit der eigentlichen Kopferkennung die Erkennung weiterer Objekte einhergehen muß. Deren Koexistenz festzustellen könnte wieder mit einer Schaltung nach Abbildung 7.16 geleistet und als Detektion einer bestimmten Szenenkomposition bezeichnet werden. Abbildung 8.3 zeigt das Schema der bisher entwickelten Architektur des Sehens, soweit sie durch die Experimente bestätigt wurde und durch die vorstehenden Überlegungen fortsetzbar scheint. Die bisherige Architektur verbindet die Retina mit den diversen Schichten der Merkmalsdetektoren, welche nach Größe und Typ spezifiziert sind. Abhängig vom Objekt sind bestimmte Merkmalsdetektorschichten zonenweise mit Merkmalserkennern verbunden. Wie muß diese Architektur ergänzt werden, wenn die Entfernungsinvarianz hinzugenommen wird? Je nach Entfernung werden die Zonen kleiner ausfallen, somit auch die entsprechenden Merkmalsdetektoren, und die Abstände der Zonen zueinander werden mit der Entfernung variieren. Ausgehend von der bisher betrachteten Referenzposition eines Kopfes und seiner Zonen könnte man die weiteren, durch die zentralperspektivische Verkleinerung definierten Zonen Schicht für Schicht mit den beschriebenen Merkmalserkennern und Objektdetektoren ausrüsten. Die kontinuierliche Entrückung eines Kopfes in größere Entfernung ist das Ergebnis von sehr vielen, aber in jedem Fall endlich vielen Merkmalsdetektoren; entweder müsste die Merkmalspyramide sehr fein gestuft sein oder es einen Interpolationsprozeß geben. Entsprechend der Auflösung der Merkmalspyramide könnten im ersteren Fall sehr viele mit der Entfernung bzw. Auflösung gestufte Objektdetektoren für den Objekttypus „Kopf“ erforderlich sein. Dies würde sicher funktionieren, erscheint aber sehr aufwändig. In Kapitel 16 wird
164
8 Netze für die robuste Kopfdetektion
Abb. 8.3 Stand der Architektur des Sehens jedoch gezeigt, daß selbst mit einigen 10 Auflösungsebenen und einigen Tausend Objekten die Zahlen der benötigten Neuronen im einstelligen Prozentbereich und der Synapsen im Promille-Bereich (bezogen auf die Gesamtzahl aller Neuronen und Synapsen des Gehirns) liegen, so daß auf einen Interpolationsmechanismus verzichtet werden könnte. Darüberhinaus berührt das Sehen die zentrale Frage nach der Architektur der „inneren Leinwand“: Wie ist es möglich, daß wir die Welt als Bilder sehen, wo wir doch eine Pulssignaldarstellung für die gesamte Erkennungskette verwenden? Nun, welches Bild auch immer auf die Retina projiziert wird - es wird zerlegt in viele einzelne Pulsantworten von Merkmalsdetektoren. Dabei ist die Pulsfrequenz proportional zur Intensität des Merkmals. Wenn wir nun über jedem Pixelort des Bildes die Pulsantworten der darüberliegenden Merkmalsdetektoren in gewichteter Weise - ähnlich einer inversen Gabor-Wavelet Transformation - so aufsummieren könnten, daß die Differenz der Pulsraten von Pixel und gewichteter Summe verschwindet, so hätten wir eine innere Leinwand konstruiert, welche pulsratenäquivalent zu dem PixelInput ist. Das Rätsel der zeitkontinuierlichen Bildempfindung ist damit aber noch nicht gelöst. Leider können wir in diesem Abschnitt über die Architektur eines entfernungsinvarianten Objekterkenners (siehe V orschlag dazu in Kapitel 16), eines Gedächtnisses oder einer inneren Leinwand nur Gedankenexperimente anstellen, denn zur Zeit ist es uns nicht möglich, entsprechende Experimente mit
8.3 Zusammenfassung
165
leistungsfähigeren Rechnern durchzuführen. Die Simulation der Experimente zur Kopfdetektion des Abschnitt 8.1 hat beispielsweise bereits 1 21 Wochen auf einem PC mit 2.4 GHz Taktfrequenz und 2 GB Hauptspeicher benötigt.
8.3 Zusammenfassung Die bisher vorgestellte Architektur des Sehens kann nur als ein erster Schritt gesehen werden, auch wenn wichtige Ergebnisse erzielt wurden. Den Mechanismus der Merkmalsdetektion, der helligkeitsinvarianten Bindung von Merkmalstypen zu Objektkomponenten und von Objektkomponenten zu Objekten haben wir universell vorliegen; ferner haben wir die Erscheinungsvielfalt von Objektkomponenten mit der Zonenarchitektur nach Abbildung 7.6 und 7.8 einer ersten Lösung zugeführt. Die nächsten Schritte müssen die entfernungsinvariante Erkennung von Objekten und den Aufbau einer Objektbibliothek bringen, zu der nicht nur Köpfe, sondern auch Autos, Tische, Gabeln, etc. gehören. Dies wird viel Mühe kosten, denn für jedes Objekt sind Zonen bzw. Merkmalstypen zu definieren, und sicher müssen diese Merkmale komplexer als bei Köpfen ausfallen, wie das Beispiel der Klasse der Stühle verdeutlicht. Immer werden jedoch mehrere Merkmale zu Objektkomponenten und letztere zu Objekten robust zusammengebunden werden müssen. Und die Robustheit wird immer zu realisieren sein als eine Klasse von Invarianzen gegenüber Beleuchtung, Entfernung, Deformation, Drehung, etc. Bedenkt man die Vielfalt der Effekte, welche das betrachtete Neuronenbzw. Synapsenmodell beim Aufbau von Grundstrukturen zur Extraktion von Information bis jetzt hervorgebracht hat, so scheint der Baukasten gefüllt genug, um die Konstruktion einer solchen Objektbibliothek zu beginnen. Natürlich fehlen noch einige Kompositionen der elementaren Bausteine, wie z.B. die „innere Leinwand“ oder das Gedächtnis; denn bis jetzt werden von der Retina empfangende Lichtsignale durch die Erkennungskette in eine Vielfalt von Signalantworten von Merkmalsdetektoren zerlegt, welche ihrerseits den Erkennern auf Zonen- und Objektebene zugeführt werden. Die Tatsache, daß wir Arme und Beine besitzen, zeigt an, daß die Objektwelt mit einer Kartierung erfasst sein muß, welche die Position von Objekten in 2- und 3-dimensionalem Raum notieren kann; auch dafür ist eine „innere Leinwand“ hilfreich. Zwar ist es leicht zu vermuten, daß die Pulssignale der an der Beschreibung des Objektes teilnehmenden Merkmalsdetektoren vermittels einer zu der Erkennungskette invers gerichteten Transformation in ein Bild auf der „inneren Leinwand“ gewandelt würden. Schwerer wird es jedoch, die „innere Leinwand“ zu konstruieren. Aber ein neues Wissenschaftsgebiet - wie die Konstruktion von künstlichen Hirnen - durchschreitet man nicht in einem Jahrzehnt.
9 Ausblick Christoph von der Malsburg
Sinn und Inhalt dieses Buches ist es, Schritte auf ein Verständnis der Funktion des tierischen oder menschlichen Gehirns hin zu tun, wobei unsere Methodik darin besteht, konstruktiv vorzugehen, indem wir beispielhafte Prozesse der visuellen Funktion mit konkreten neuronalen Modellen nachbilden. Gleichzeitig beabsichtigen wir, nach dem biologischen Vorbild die Grundlagen für eine neue Form von Informationstechnik zu umreißen. Da die bisher beschriebenen Funktionen nur ein Anfang sind, geben wir hier einen Ausblick, um darzulegen, wie wir den genannten Zielen durch konsequente Fortführung der hier begonnenen Arbeiten näher kommen können. Insbesondere müssen wir unsere Aufmerksamkeit auf diesem Weg zwei Grundfragen widmen: der Interpretation physischer Hirnzustände als Datenformat für die Darstellung mentaler Vorstellungen sowie den Mechanismen der Selbstorganisation und des Lernens. Zur Illustration der Möglichkeiten, die sich durch die vorgeschlagenen Konzepte ergeben, erörtern wir beispielhaft die Probleme der invarianten Objekterkennung (insoweit sie über die in Kapitel 7-8 behandelten Invarianzen hinausgeht) und der visuellen Szenendarstellung.
9.1 Das Datenformat des Gehirns Was das Datenformat des Gedächtnisses angeht, wird allgemein (und auch von uns) angenommen, daß dieses durch die Struktur der neuronalen Verbindungen im Gehirn gespeichert wird. Diese ist der strukturelle Rahmen für aktive Hirnzustände, ist Protokoll und Bodensatz vergangener Hirnzustände und wird durch Lernen und Selbstorganisation immer besser konditioniert. Zum Datenformat des aktuellen, schnell veränderlichen Hirnzustandes gibt es eine allgemein herrschende Lehrmeinung, die wir jedoch als grob unvollständig kritisieren [21]. Nach dieser Lehrmeinung sind einzelne Neuronen (oder Neuronengruppen) als Elementarsymbole anzusehen. Dabei bedeutet elementar nicht unbedingt Einfachheit, da recht komplexe Dinge durch Einzelzellen kodiert sein können, wie etwa im Fisch der Fluchtreflex durch die
168
9 Ausblick
Mauthnerzelle. Elementar sind die Symbole vielmehr, indem sie nur den einen Freiheitsgrad haben, mehr oder weniger aktiv zu sein. Nach dieser Lehrmeinung ist der Hirnzustand durch den Vektor der Aktivitäten aller Neuronen vollständig beschrieben. Daß Neuronen als Elementarsymbole angesehen werden können, beruht auf einer sehr soliden experimentellen Basis. Wenn dies jedoch alles wäre, dann ließe sich im Hirn nur eine sehr enge Modellwelt mit Objekten oder Situationen aus einem beschränkten Vorrat darstellen. Was wir statt dessen brauchen ist ein Datenformat, das die Vielfalt unserer Geisteswelt, wie etwa der stets veränderlichen visuellen Situationen vor unserem Auge, als strukturiertes Aggregat von Symbolen darstellt, die ihrerseits wieder Kombinationen einfacherer Elemente sein können. Mit einem Wort, das Datenformat muß Vielfalt durch Kombinatorik hervorbringen. Kombinatorik wiederum ist nur möglich durch strukturierte Bindung von Elementen. Um etwa den Anblick eines Mobiltelefons zu erzeugen, müssen Komponenten wie Fläche, Farbe, Kante, Schirm, Taste, alphanumerische Symbole etc. vielfach instantiiert, mit spezifischen Werten und Unterstrukturen für Form, Position etc. versehen und in eine Anordnung gebracht werden. Darüber hinaus muß das ganze Objekt seinerseits als Einheit in größerem Handlungsrahmen behandelt werden können. Auf diese Weise kann die Gesamtheit der Vorstellungsphänomene realisiert werden durch schnell veränderliche, hierarchisch strukturierte Komplexsymbole, in denen eine große Vielzahl von Elementen und Gliedern nicht nur mental wach, sondern in geeigneter Weise miteinander verknüpft ist. Eine Eigenschaft des Datenformats muß somit sein, Signalbzw. Informationsinhalte und Abbildungen dieser von niedrigster bis höchster Abstraktionsstufe mit einheitlicher Struktur zu beschreiben. Auf der Ebene der Neuronen und Synapsen befinden wir uns auf der feinsten Stufe der Modellierung, was sich niederschlägt in der Konstruktion jeder neuen Funktion im ausschließlich Kleinen, nämlich durch Neuronen und Synapsen. Auf einer höheren, abstrakteren Ebene jedoch können z. B. durch Verhaltensexperimente gewonnene Zusammenhänge gefunden werden, welche Orientierung und Inspiration für die Konstruktion darstellen. Hier redet man nicht von Neuronen und Synapsen, sondern von bestimmten Stellen in Hirnarealen oder bestenfalls von Neuronengruppen. Erst recht nicht redet man von Synapsen, da deren Tätigkeit nur schlecht messbar ist und nur in den Membranpotentialen der Neuronen indirekt zutage tritt. Wenn Gegenstand eines Experimentes zwei Neuronengruppen sind, so können nur Pulsereignisse des einen Ortes mit denen des anderen korrelieren bzw. nicht korrelieren (wobei Korrelation hier im umgangssprachlichen Sinne aufgefaßt ist). Mehr ist selten festzustellen. Die die zwei Mengen von Pulsereignissen verbindende Abbildung wird somit höchst indirekt formuliert, und die Realisierung durch ein Synapsennetz bleibt in der Regel unaufgeklärt. An seine Stelle tritt oftmals die Hypothese einer Beziehung, welche zwischen Neuronengruppen herrschen soll. Damit die Beschreibung der Beziehung sich am wenigsten weit von der authentischen, im Gehirn vorliegenden Struktur
9.2 Selbstorganisation
169
entfernt, ist es geschickt, die dominante Funktion von Synapse bzw. Neuron als signalverarbeitendes bzw. signalgebendes Aggregat in die Definition des Datenformats aufzunehmen. Ein Datenformat, auf dessen Basis derartige hierarchisch strukturierte Gebilde leicht vorstellbar sind und welches größtmögliche Nähe zur neuronalen synaptischen Grundstruktur hält, ist der dynamische Graph. Seine Knoten entsprechen den Neuronen oder Neuronengruppen des klassischen Datenformats. Darüber hinaus aber hat ein dynamischer Graph Kanten oder Links, die auf derselben Zeitskala wie die Knoten aktiviert oder deaktiviert werden können. So kann in unserem Beispiel etwa ein Knoten T aste durch aktive Links mit einem Knoten für eine bestimmte Position auf der Telefonoberfläche und mit Knoten für quadratischeF orm und Symbol 1 verbunden werden, wobei diese ihrerseits ihre Substanz durch Links zu feineren Strukturelementen erhalten. Auf feinster Komplexitätsstufe sind Knoten und Links in den Elementen des Gehirns als Neuronen und Synapsen direkt implementiert. Auf Stufen höherer Komplexität sind Knoten ihrerseits bereits strukturierte Netze, und ihre Beziehungen, die Kanten des Graphen, werden durch Strukturbeziehungen dieser Netze dargestellt [50]. Experimentelles Wissen einerseits und die Imagination vermuteter Zusammenhänge andererseits müssen sich somit auf verschiedenen Abstraktionstufen verschieden substantiieren. Graphen stellen somit ein sehr ausdrucksstarkes Datenformat dar. Nach dieser Vorstellung haben sowohl das Gedächtnis wie der aktive Hirnzustand die Form von Graphen, von strukturierten Netzen. Die langsam veränderlichen, permanenten Gewichte der Synapsen stellen dabei einen strukturellen Rahmen dar, in dem durch externe Anregung und durch dynamische Wechselwirkungen der aktive Hirnzustand durch selektive Aktivierung von Knoten und Links herausgebildet wird. Den Herausbildungsprozessen von Gedächtnis und Hirnzustand müssen wir uns deshalb als nächstes zuwenden.
9.2 Selbstorganisation In den Kapiteln 5-8 hätten wir den Begriff der Selbstorganisation für das Phänomen der Synchronisation verwenden können: Lokale Pulsereignisse schaffen auf globaler Netzwerkskala eine Gleichschaltung des Pulsverhaltens aller Neuronen. Von diesem physikalisch inspirierten Gebrauch des Wortes wollen wir jedoch absehen und stattdessen den Begriff der Selbstorganisation in dem Sinne der Selbst-Herausbildung einer Struktur (realisiert durch Neuronen und Synapsen, modelliert durch einen dynamischen Graphen) zum Zwecke der Informationsaufnahme oder der Erreichung eines Zieles verwenden. Mit dieser Definition zielen wir auf die offenbare Fähigkeit des Gehirns, selbständig auf äußere Reize zu reagieren oder eigenständig zu handeln, in anderen Worten: sich selbst zu organisieren. Demgegenüber steht die Fremdorganisation des Computers per Programm.
170
9 Ausblick
Natürlich ist die Enträtselung der Selbstorganisation als konkreter Mechanismus noch nicht gelungen, weshalb wir uns ihr im Rahmen des dynamischen Graphs nur auf abstrakterer Ebene nähern können. Von vorrangigem Interesse sind die Mechanismen der Selbstorganisation dynamischer Graphen auf der schnellen Zeitskala der Hirnfunktion. Die visuelle Objekterkennung als typischer Prozeß braucht nur etwa 100 ms [51]. Die sichere Pulsantwort vom Anfang bis zum Ende eines strukturierten, bereits gebildeten Graphen für die Bilderkennung benötigt bei guter Beleuchtung ca. 200 ms, wie in Kapitel 7-8 dargelegt wurde. Für die Herausbildung eines neuen dynamischen Graphen (in der Sprache der Modellierung) oder Neuron-Synapsen-Verbandes (in der Sprache der Realisierung) wird ungleich mehr Zeit benötigt. Wenn etwa ein vorher nie gesehener Gegenstand erfaßt werden muß, ist der dynamische Graph zum Teil vordefiniert, da er sich der Merkmalskaskade bedient. Aber die Herausbildung von Zonen zur Erfassung der wesentlichen Merkmale ist noch nicht geschehen. Dieser Teil des Graphen muß sich selbst organisieren. Wir gehen davon aus, daß Selbstorganisation sich auf vorgebildete Funktionen bzw. Netze stützt. Dazu gehören ganz wesentlich: • • • •
die Erfassung einer Menge von bisher nicht erfassten, neuen Merkmalsaktivitäten in verschiedenen (noch nicht markierten) Zonen der Retina als Entropie- oder Puls-Spitze, die Einordnung des unbekannten Gegenstandes im Zusammenhang der Bildszene, die Gedächtnis-gespeiste Bewertung hinsichtlich elementarer Reflexe, Bedürfnisse und des Nutzens, gegebenenfalls die Zuordnung eines Satzes von Zonen- bzw. Merkmalserkennern und Bindung zum Objekt.
Die Schritte 2) - 4) können parallel einhergehen und bedürfen der Herausbildung neuer Merkmale auf verschiedenen Ebenen des Datenformats und der Korrelation mit dem im Gedächtnis gespeicherten Inhalt. Dabei liegt uns die Grundstruktur des Merkmalsdetektors bereits vor (allein die Verteilung der Eingangspaare (1,2) müßte angepasst werden, siehe Abb. 6.2), sie stellt allerdings nur die Spitze des Eisbergs dar, wenn Gedächtnis und Assoziation einbezogen werden. Auf feinster Ebene muß sich dies alles in den bekannten, elementaren Prozessen vollziehen: Links erzeugen Signalkorrelationen zwischen den Knoten, Signalkorrelationen ihrerseits verändern durch Mechanismen synaptischer Plastizität Links. Dadurch werden zunächst unstrukturierte bzw. vorstrukturierte Graphen solange verändert, bis Konfigurationen erreicht sind, die sich selbst stabilisieren anhand einer allgemeinen Zielgröße wie z. B. der Entropie oder Korrelation. Die bekannten Mechanismen synaptischer Plastizität verstärken dabei erfolgreiche Links. So werden erregende Synapsen durch den Erfolg einlaufender Pulse belohnt, die nachfolgende Zelle binnen kurzer Zeit zu erregen (spiketiming-dependent plasticity [52]), wie durch die Mechanismen in (3.6) formuliert.
9.3 Lernen
171
Es ist eine spannende Frage, wie das durch solche Plastizitätsregeln definierte Universum strukturierter Graphen zu charakterisieren ist und in welcher Weise dieses Musteruniversum als generelle Grundlage geistiger Prozesse dienen kann. Nach einer früher geäußerten Vermutung [21] sind die organisierten Netze des Gehirns abbildbar auf topologische Graphen: Ein topologischer Graph kann in einen niedrig- (etwa zwei-) dimensionalen Raum so eingebettet werden, daß alle Verbindungen kurzreichweitig sind. Zu nützlichen Anwendungen topologischer Graphen sei auf den Abschnitt Visuelle Invarianz unten verwiesen. Zu den wesentlichen Eigenschaften unserer Umwelt gehören Lokalisierung in Raum und Zeit, Körnigkeit, Einbettung spezifischer Strukturen in fein-zugrob Hierarchien und ein gehöriges Maß an Selbstorganisation in der uns umgebenden Natur selbst. Selbstorganisation in unserer Definition reagiert auf äußere Reize und verarbeitet diese selbständig. Es ist deshalb nicht zu verwundern, daß strukturierte Graphen diese Umgebungseigenschaften reflektieren, gewissermaßen prästabilierte Harmonie zwischen Hirnvorgängen und Umwelt besteht. Diese Schlussfolgerung wird auch durch die no-free-lunch Theoreme [53] nahegelegt, nach denen sich alle Lern- oder Optimierungsmechanismen jeweils nur für eine spezifische Anwendungsdomäne eignen. Um die Kluft zwischen abstrakter Vorstellung und Konstruktion zu schliessen, ist es ratsam, den Mechanismus der Selbstorganisation in einer möglichst kleinen Anwendungswelt zu studieren, welche andererseits komplett genug ist, einen universellen Mechanismus der Selbstorganisation zu offenbaren.
9.3 Lernen So wenig genetische Information ausreicht, die Struktur des Gehirns frei zu programmieren, so wenig genügt die beim Lernen aufgenommene Information dazu. Nach Auskunft von Psychologen nehmen wir mit einem einzelnen sensorischen Eindruck weniger als 100 bit an Information auf. Wenn jeder sensorische Eindruck eine Sekunde braucht, dann können wir in den weniger als 2 · 109 Sekunden wacher Lebenszeit nur 2 · 1011 bit an Information aufnehmen (auch dies eine sehr großzügige Schätzung), also viel weniger als die 7 · 1015 bit Informationsgehalt der Großhirnschaltung. Auch aus dieser Betrachtung folgt, daß sich das Gehirn auf vordefinierte Strukturen stützen muß. Bis heute ist der Mechanismus autonomen Lernens aus natürlicher Umgebung ein ungelöstes Rätsel. Der Kern des Problems besteht darin, daß erstens aus den Sinnesdaten signifikante Muster auszuwählen sind - d.h. also Muster von zukünftigem Wert -, und daß zweitens diese Muster an geeigneter Stelle strukturiert abzulegen sind. Voraussetzung für den Lernvorgang ist also das Erkennen von Sinnesmustern relativ zu evolutionär vordefinierten Schemata oder zu bereits gelernten Mustern. Wir stellen uns vor, daß der ein Lernereignis einleitende Erkennungsvorgang aus dem sensorischen Eingang relativ zu gespeicherten Mustern ein klei-
172
9 Ausblick
nes Mustersegment auswählt, das dadurch thematisch identifiziert wird und auf diese Weise einem kleinen Hirnsegment zu dessen Modifikation zugeordnet werden kann. (Dies ist der Grundgedanke, der auch dem Mixture-of-Experts Modell [54] zu Grunde liegt.) Die Prinzipien des statistischen Lernens werden auf diese Weise anwendbar. Diese greifen ja, wie in Kapitel 1 erörtert, nur dann, wenn relativ kleine und thematisch homogene Muster angeboten werden, und wenn das zu modifizierende System klein ist. Das von Grossberg beschworene Plastizitäts-Stabilitäts-Dilemma [55], nach dem einerseits Lernen natürlich Plastizität voraussetzt, andererseits aber vergangene Gedächtnisspuren möglichst nicht zerstört werden sollten, wird auf diese Weise gelöst, da nur die erkannten neuronalen Muster angesprochen werden. Die Aussonderung eines Teils der Sensor- und der Gedächtnisdomäne des Gehirns zur Teilnahme am Lernprozeß wird durch fokale Aufmerksamkeit bewirkt. Aufmerksamkeit bedeutet keineswegs eine Unterdrückung der Aktivität im Rest des Gehirns [56], es erscheint aber auf Grund jüngerer experimenteller Befunde [57] wahrscheinlich, daß der Aufmerksamkeitsfokus durch Oszillationen im Gammabereich (40 − 80 Hz) definiert wird. Man kann vermuten, daß zur Definition des Aufmerksamkeitsfokusses unter allen in einem Moment aktiven Neuronen eine Untermenge ausgesondert wird, die durch besonders starke momentane Kopplung ausgezeichnet ist, woraufhin die darin befindlichen Neuronen in kohärente Oszillationen übergehen. Der in Kapitel 5 beschriebene Fleckdetektor kann vielleicht als Spezialfall für diesen Prozeß angesehen werden. Die mit den Oszillationen verbundene Konzentration von neuronalen Pulsen auf enge Zeitintervalle könnte eine entscheidende Rolle bei der Induktion oder Verstärkung von synaptischer Plastizität spielen. Nach kurzer Zeit ermüden die Zellen und Verbindungen im Aufmerksamkeitsfokus, so daß sich dieser auf einer neuen Zell- und Verbindungsmenge etablieren kann. Die bisherigen Erörterungen dieses Kapitels sind abstrakter Natur und müssen in spezifischen Anwendungen konkretisiert werden, wozu der nächste Abschnitt Anlaß gibt.
9.4 Invariante Objekterkennung Eine sehr große Klasse von zu speichernden Mustern ist visueller Natur und bezieht sich auf konkrete Objekte oder Szenen unserer unmittelbaren Umwelt. Diese treffen auf unser Gehirn in Form retinaler Lichtverteilungen. Demselben Objekt entspricht dabei eine unendliche Vielzahl möglicher Bilder, je nach Position, Größe, Orientierung, Beleuchtung, usw. Diese Vielfalt ist so weit als möglich zu reduzieren durch Transformation der Bilder in eine invariante Normalform. In Kapitel 7-8 haben wir konkrete Architekturen für die Erkennung von Köpfen bei Variation von Beleuchtung, Form und bei eingeschränkter Drehung realisiert. Für weitergehende und mächtigere Variationen - Position, Größe, Rotation in der Bildebene - ist diese Transformation in objektunabhängiger Weise durch schnell schaltende Faserprojektionen möglich
9.4 Invariante Objekterkennung
173
(dynamic links, [21, 58, 59] oder shif ter circuits, [60]). Auf dieser Hierarchiestufe könnte in schematischer Form ein einfaches System so aussehen wie in Abbildung 9.1. Ein Segment einer Bilddom¨ ane (primärer visueller Kortex) wird durch ein dynamisches Faserprojektionssystem auf ein invariantes Fenster geworfen.
Abb. 9.1 Prinzip der invarianten Objekterkennung: Ein Segment der Bilddomäne (links) wird durch eine temporär aktivierte Faserprojektion auf ein invariantes Fenster (Mitte) transportiert. Diese invariante Darstellung des Segments wird mit gespeicherten Objektmodellen in einer Modelldomäne (rechts) verglichen. Wenn ein Modell mit großer Ähnlichkeit gefunden wird, ist das Segment erkannt. Das auf diese Weise invariant (d.h., in normierter Position, Größe und Orientierung) dargestellte Bildsegment kann nun mit gespeicherten Objektmodellen verglichen werden, worunter eventuell ein passendes ist, das auf diese Weise erkannt wird. Nach jeder Augenbewegung oder Bildveränderung müssen neue dynamische Links aufgebaut werden. Die Repräsentation eines Bildsegments (so wie der ganzen Bilddomäne) hat die Form eines zweidimensionalen, lokal vernetzten Feldes von Merkmalserkennerzellen (wie z. B. im Objekterkenner in Kapitel 8 beschrieben). Am Ende einer erfolgreichen Objekterkennung sind die aktivierten Faserverbindungen zwischen Bilddomäne und invariantem Fenster und zwischen diesem und dem Modell in der Modelldomäne homeomorphe Abbildungen, durch die Zellen gleichen Merkmalstyps unter Erhaltung ihrer Nachbarschaftsbeziehungen verbunden werden. Wenn das Bild des Objekts in der Bilddomäne in Größe oder Orientierung vom Standard abweicht, müssen auch die Verbindungen zwischen den Merkmalszellen (sofern die Merkmale nicht selbst größen- und orientierungsinvariant sind) variabel sein [61]. Da solche variablen Faserprojektionen leicht auch lokale Deformationen kompensieren können, und da einige Aspekte der Beleuchtungsproblematik sich durch Signalnormalisierung lösen lassen, wird auf diese Weise ein großer Teil des Invarianzproblems gelöst. Ein nach diesem Schema
174
9 Ausblick
gestaltetes Objekterkennungssystem in konkreter neuronaler Form ist in [62] ausgearbeitet worden (wenn auch nicht in dem in diesem Buch realisierten Detail) und liefert sehr respektable Gesichtserkennungsergebnisse auf großen Datenbasen. Das in Kapitel 8 dargestellte Modell eines Gesichtsfinders bzw. Kopferkenners deckt einen Teil der hier beschriebenen Funktionalität ab (indem lediglich die Beziehung zwischen dem invarianten Fenster und einer aus einem einzigen Modell bestehenden Modelldomäne realisiert ist), verwirklicht diesen Teil dafür aber in voller neuronaler Konkretheit. Es ist wichtig zu beobachten, daß die zur Realisierung des beschriebenen Objekterkennungssystems herangezogenen Netzstrukturen alle vom topologischen Typ sind (s. vorletzter Abschnitt). Erstens hat die Darstellung von Bildern oder Bildsegmenten in der Bilddomäne die Form von zweidimensionalen Netzen mit kurzreichweitigen Verbindungen (eine auf soliden experimentellen Füßen stehende Tatsache; siehe auch Kapitel 7-8). Ebenso die Darstellungen von Bildsegmenten im invarianten Fenster sowie von Objekten in der Modelldomäne. Wenn diese Darstellungen am Ende des Erkennungsvorgangs Punkt für Punkt durch temporär aktivierte Linkstrukturen in nachbarschaftserhaltender Weise miteinander verknüpft sind, so hat das so realisierte Gesamtgebilde ebenfalls die Form eines topologischen Graphen. Dieses Gesamtgebilde ist ein Attraktor im Sinne der oben diskutierten synaptischen Plastizitätsregeln. Prinzipiell ist es denkbar, daß die für den Objekterkennungsvorgang notwendigen nachbarschaftserhaltenden Faserprojektionen jedesmal durch ab initio-Selbstorganisation aktiviert werden, wie in [63] modelliert. Dieses würde aber jeweils mehrere Sekunden benötigen, hundertmal langsamer als experimentell beobachtet [51]. Es ist daher zu fordern, wie oben angedeutet, daß die geordneten Faserprojektionen in einem frühen Entwicklungsstadium (vielleicht sogar vor Geburt) angelegt und gespeichert werden [64], so daß während der Objekterkennung nur jeweils eine dieser Verbindungsstrukturen aktiviert werden muß. Dies führt zu einer sehr schnellen Objekterkennung von weniger als einer Zehntelsekunde [62]; siehe auch Kapitel 8). Wie oben erwähnt ist Mustererkennung eine Voraussetzung für das Lernen. Umgekehrt ist Lernen wichtig für den Erkennungsvorgang. Bei der Geburt werden dem System einfachste Mechanismen und Suchmuster mit auf den Weg gegeben, um dieses Wechselspiel in Gang zu bringen. Diese Mechanismen greifen nur in einfachen Situationen, und in einem selbstverstärkenden Prozeß müssen sie durch Lernen verbessert werden. Unter den ersten signifikanten Mustern befinden sich vielleicht die gegen einen statischen Hintergrund bewegten Bilder von Objekten, die durch einfaches zeitliches Filtern identifiziert und herausgehoben werden können. Mit der Zeit jedoch muß die Figur-Hintergrundabtrennung durch plastische Veränderung von horizontalen Verbindungen in der Bilddomäne und durch Anlegen immer besserer Modelle im Sinne schematischer Beschreibungen potentiell signifikanter Muster graduell verbessert werden. Ebenso werden Merkmaldetektoren und deren Vernetzung durch Lernen verbessert werden, und schließlich ist in der Modelldomäne
9.5 Strukturierte Gedächtnisdomäne
175
ein immer reicheres und vollständigeres Repertoire von Modellen und Modellstücken durch Lernen anzulegen. In diesem Abschnitt und in Kapitel 7-8 wurde davon ausgegangen, daß in der Modelldomäne jedes Objekt in der Form eines separaten Netzwerkes dargestellt wird, welches darüber hinaus das Objekt als Ganzes abdeckt. Eine solche monolithische Darstellung ist für einige Objektklassen, darunter Gesichter, durchaus geeignet; die überwiegende Menge von Objekttypen muß dagegen flexibel als Kollage von Teilmodellen zusammengesetzt werden [65]. Es ist daher angebracht, die Struktur der Modell- oder Gedächtnisdomäne näher zu diskutieren.
9.5 Strukturierte Gedächtnisdomäne Unser visuelles System tastet die uns umgebende Szene mit gezielter Aufmerksamkeit ab und erkennt vertraute Muster. Da diese Muster auf Grund langjähriger Erfahrung durch Verbindungen zu anderen Modalitäten mit Bedeutung (Name, Form, Textur, Material, funktionelle Bedeutung, geeignete Handgriffe u.s.w.) angereichert sind, wird die Szene diesen entsprechend aufgeschlüsselt und interpretiert. Die von uns wahrgenommene visuelle Realität unserer Umgebung spielt sich in unserem Kopf ab, wenn sie auch von außen angeregt ist. Es ist beeindruckend, welches scheinbar unendliche Detail uns da zur Verfügung steht, und bis zu welchem Grade dieses Detail von uns mit Bedeutung gefüllt wird. Diese visuelle Wirklichkeit ist demnach zwar, wie gesagt, von außen angeregt, aber seiner Substanz nach zu ganz großen Teilen eine Kollage von Strukturstücken, die unserem Gedächtnis entstammen. Um das zu leisten, baut unser Gedächtnis im Laufe der visuellen Erfahrung einen Modellbaukasten auf, der eine ungeheure Masse an Muster-Repräsentationen enthält, die in flexibelster Weise mit den visuellen Phänomenen verbunden werden können, die wir in unserer Umgebung wahrnehmen. Das System muß beim Betrachten, zum Beispiel eines Stuhls, die Flexibilität haben, auf eine große Vielfalt von Formen, Materialien und Blickwinkeln einzugehen (Abbildung 9.2). Das tut es, wie in psychophysischen Versuchen überzeugend nachgewiesen [66], durch Zerlegen in bekannte Formteile (Stangen, Platten, Ecken, Flächenstücke etc.), die ihm aus Erfahrung bekannt sind, und mit deren Lagebeziehungen es umzugehen gelernt hat. Diese Formteile werden von dem System erkannt, und es verbindet sie durch dynamische Faserverbindungen unter Deformation mit der augenblicklichen invarianten Darstellung des Stuhls und miteinander. Deformation ist erforderlich, da die Formteile in ihren Dimensionen variieren und sich ja auch mit der Perspektive verkürzen und deformieren. Jedes Aktivieren von Formteilen und deren Anbinden an die invariante Segmentdarstellung ist ein Erkennungsvorgang, ganz so wie im letzten Abschnitt beschrieben. Die Formteile sind zweidimensionale topologische Netze, mit Merkmale tragenden Zellen, deren Verteilung dem Formteil ein unverwechselbares Gesicht gibt.
176
9 Ausblick
Abb. 9.2 Dekompositionsszenario am Beispiel eines Stuhls Zu den Merkmalen gehören Formeigenschaften, wie lokale Kanten, Helligkeitsgradienten, etc. Jedes Formteil kann sich seinerseits mit weiteren Repräsentationen - etwa mit Farbverteilungen und Texturen - bekleiden, wieder durch dynamische Punkt-zu-Punkt-Faserverbindungen. Für jedes bekannte dreidimensionale Formteil der Umgebung gibt es in der Gedächtnisdomäne mehrere Repräsentationsnetze, um Ansichten aus verschiedener Perspektive wiederzugeben. Diese Ansichten werden über eine übergeordnete Netzstruktur miteinander verbunden, so daß bei Rotation des Stuhls vor unserem Auge die Repräsentation jedes Formteils der Perspektive entsprechend koordiniert gewechselt wird. Auf diese Weise ist die Darstellung des invarianten Bilds eines Objekts - wie ein konkreter unter bestimmter Perspektive gesehener Stuhl - ein komplexes, hierarchisch aufgebautes Netzwerk, zusammengesetzt aus SubNetzwerken, jedes von ihnen aus der Erfahrung gelernt, stabilisiert durch Netzwerk-Selbstorganisation, und miteinander verbunden durch homomorphe Abbildungen. Eine ausgezeichnete Stellung unter diesen Abbildungen haben selbstverständlich diejenigen, die die Gedächtnisdomäne, vermittelt durch die Darstellung im invarianten Fenster, mit der Bilddomäne und dadurch mit dem Objekt draußen verbinden. Der Einfluß des Bildes auf das Entstehen der Repräsentation in der Gedächtnisdomäne ist aber weniger als Kopiervorgang zu verstehen, sondern vielmehr als Lenken eines Gestaltbildungsprozesses so wie ein Dirigent mit leichter Hand das Orchester lenkt oder die Gene den Morphogeneseprozeß im Embryo.
9.6 Zusammenfassung
177
Die Darstellung eines Stuhls in seiner konkreten bildlichen Form ist eine Sache, seine funktionelle Einbindung in eine Handlungsplanung eine andere. Die Funktion des Stuhls ist es, mir eine Sitzfläche in bequemer Höhe, Form und Größe in erreichbarer Nähe zu bieten (eine Eigenschaft, die ja zur Definition eines Stuhls als solchem gehört). Gibson hat diese Formteile Af f ordances genannt, also Gelegenheiten zum Ansatz meiner Manipulationen und Handlungen. Es ist daher wichtig, daß die für die Funktion wichtigen Formteile eines Objekts sich auf geeignete Weise mit den Netzwerken der Handlungsplanung in meinem Gehirn verbinden. Umgekehrt wird das Erkennen des Stuhls durch die Darstellung der Gesamtszene unterstützt, da Stühle vorzugsweise in bestimmten Regionen bestimmter Szenen vorkommen. Grundlage für unsere Orientierung und die Planung unserer Bewegungen ist die innere Darstellung der uns umgebenden Szene in ihrer Gesamtheit. Diese Darstellung kann man sich vielleicht auf der Basis einer Leinwand, eines zweidimensionalen Netzes von Punktdarstellern denken, von denen jeder für eine von mir aus gesehene Raumrichtung steht. Die Leinwand würde nach dieser Vorstellung im Laufe des Erkennungsvorgangs bevölkert, indem Symbole an ihre entsprechenden Punkte oder Regionen geheftet werden. Diese Symbole können sich auf Objekte beziehen, oder auf Flächentypen wie F ussboden, W and, Landschaf t oder Himmel, insbesondere aber muß dort auch Information über Entfernungen und Flächenorientierungen angeheftet werden [67], welche für die genaue Ausführung von Bewegungen wichtig sind. Das Anheften von Symbolen an der Leinwand geschieht durch Aktivieren von Verbindungen von den Zellen und Netzen, die das erkannte Material darstellen. Auf Grund von neurologischer und neurophysiologischer Evidenz ist es wahrscheinlich, daß sich die Leinwand im parietalen Kortex (wo- oder wie-Pfad) und die erkannten Objekte im temporalen Kortex (was-Pfad) befinden [68]. Wir haben den subjektiven Eindruck, die uns umgebende Szene sei in unserem Inneren in allem Detail gleichzeitig vorhanden, jeder Grashalm, etwa, in der betrachteten Wiese. Diesen Eindruck kann ich jederzeit experimentell bestätigen, indem ich meine Aufmerksamkeit blitzschnell auf jedes beliebige Detail lenke, und siehe, es ist da. Dieser Eindruck ist aber natürlich eine Illusion, indem nur das Detail, auf das ich meine Aufmerksamkeit (und meinen Blick) lenke, in meinem Geist aktiviert wird, um dann sogleich wieder zurückzusinken, ins Nichts oder allenfalls auf die Form eines abstrakten Schattens des gesehenen Dings, per aktivierter Verbindung an die Szenenleinwand geheftet.
9.6 Zusammenfassung Um das Gehirn in seiner Struktur und Funktion zu verstehen und seine Rekonstruktion voranzubringen, sind mehrere grundsätzliche Fragen zu beantworten. Dazu gehören das Datenformat des Gedächtnisses und des Hirnzustandes und die Mechanismen, durch die diese Datenstrukturen organisiert werden. Dazu ist nicht Universalität gefordert — die passive Bereitschaft des
178
9 Ausblick
Rechners, jede von Menschen erdachte Struktur aufzunehmen — sondern weitgehend autonome Strukturierung durch Selbstorganisation und Lernen. Ein sehr vielseitig verwendbares Datenformat ist der Graph, dessen Knoten aus Elementarsymbolen gebildet wird, die durch dynamische Verbindungen in flexibler Weise zu komplexen Symbolen verknüpft werden können. Graphen werden durch Netzwerk-Selbstorganisation gebildet, durch deren Mechanismen ein Universum strukturierter Netze definiert wird. Zu diesem Universum gehören auch topologische Netze, die sich dadurch auszeichnen, daß in ihnen bei geeigneter Einbettung in einen niedrig-dimensionalen Raum nur kurzreichweitige Verbindungen vorkommen. Diese topologischen Graphen sind ideal für die Anwendung auf den Sehvorgang, indem Bilder als lokalvernetzte, zweidimensionale Netze dargestellt werden können, und indem im Erkennungsvorgang und beim Aufbau zusammengesetzter Objektmodelle homomorphe Punkt-zuPunkt-Abbildungen eine zentrale Rolle spielen. Die Erkennung und Darstellung von Objekten und Szenen ist so durch Verknüpfung von netzartigen Strukturstücken wie aus einem Modellbaukasten in einem der Kristallbildung analogen Prozeß möglich. Die Anwendung dieser Ideen ist nicht auf den Sehvorgang beschränkt. Vielmehr kann erwartet werden, daß andere Prozesse im Gehirn nach ähnlichen Prinzipien ablaufen und daß eine große Vielfalt von informationstechnischen Anwendungen sich in ähnlicher Weise werden behandeln lassen.
10 Vorüberlegungen zur mikroelektronischen Realisierung Ulrich Ramacher, Jens-Uwe Schlüßler und Jörg Schreiter
10.1 Äquivalente Darstellungen Die Berechnung der Aktivitätsdiagramme in den Abbildungen 8.2 a-n hat 10 Tage Simulationszeit benötigt. Eine statistische Überprüfung oder signifikante Verbesserung der Architektur auf dem Wege der Simulation per PC ist deshalb kein auf Dauer gangbarer Weg. Es bieten sich zwei Möglichkeiten an, eine wesentliche Verbesserung zu erreichen: 1. die Generierung von äquivalenten Darstellungen für die einzelnen Schritte der Erkennungskette und 2. die mikroelektronische Realisierung von dynamischen Synapsen und Pulsneuronen. Der erste Weg ist noch nicht systematisch bearbeitet, so daß wir uns auf einige Hinweise beschränken. Die erste Komponente eines Objekterkenners ist der Merkmalsdetektor, welchem wir eine Gabor-Wavelet-Charakteristik gegeben haben. Nachdem wir die sehr gute Übereinstimmung zwischen mathematischen und experimentellem Gabor-Wavelet-Detektor in Kapitel 6 gezeigt haben, könnten wir das Übertragungsverhalten des konstruierten Detektors samt vorgelagertem Pixel-Pulswandler durch das pixelgesteuerte Übertragungsverhalten des mathematischen Gabor-Wavelets ersetzen und danach den Analogwert der Gabor-Wavelettransformation in eine Pulsrate wandeln. Dies führte jedoch nicht zu einer wesentlichen Verkürzung der Simulationszeit. Ein anderes Ergebnis erhalten wir, wenn wir den Neuronenkomplex N1 -N4 durch einen Differenzzähler ersetzen. Dies erlaubt eine sehr viel schnellere Simulation als die Berechnung der Differentialgleichungen für die dynamischen Synapsen bei sehr guter Übereinstimmung mit dem analogen Original. Das Übertragungsverhalten des anschließenden Merkmalserkenners könnte man versuchen zu kopieren, indem man die Gleichheit der Pulsrate in einem zusammenhängenden Gebiet der Zone feststellt, also Segmentationstechniken einsetzt. Diese benötigen jedoch sehr viel Rechenzeit, so daß eine analoge Realisierung immer im Vorteil ist.
180
10 Vorüberlegungen zur mikroelektronischen Realisierung
Die Bindung von verschiedenen Merkmalstypen zu einer Objektkomponente bzw. von Objektkomponenten zu einem Objekt ist dagegen mit Vorteil in klassischer Logik zu implementieren. Ziel dieser äquivalenten Darstellungen ist es, die Simulationszeit gegenüber der Referenzimplementierung durch Signalgleichungen um mindestens eine Größenordnung zu verkürzen, so daß solche Darstellungen eine Orientierungshilfe bei weiterführenden Experimenten sein können, in welchen der nächste Schritt einer Seh-Architektur in rein synaptisch-neuronaler Architektur getestet werden soll. Computer-Vision-basierte Algorithmen könnten also durchaus ein Element der Konstruktion von Künstlichen Gehirnen sein, wenn sie die geforderte Äquivalenz einhalten [69]. Dementsprechend könnten neben den analogen auch digitale Realisierungen zum Zuge kommen. Entscheidend bei diesem Vorgehen ist, daß eine synaptisch-neuronale Architektur für einen Schritt des Sehens vorgelegen hat, bevor eine äquivalente Funktion bzw. Darstellung konstruiert wird. Denn anderenfalls würde der Willkür Tür und Tor geöffnet und es zur Einführung von Computer-Visionbasierten Funktionen kommen, die nicht realisiert werden könnten durch ausschließlich Synapsen und Neurone (die letzten 50 Jahre lehren uns doch sehr eindrücklich, daß bei Verzicht auf den neuronalen Ansatz das Sehen nicht verstanden werden kann).
10.2 Mikroelektronische Darstellungen Das Simulationszeit-Problem ist uns ein ständiger Begleiter in Kapitel 2-8 gewesen. Im letzten Kapitel ist betont worden, daß wir erst am Anfang des Verständnisses des Gehirns stehen und daß wir noch viel mehr Merkmale zu den visuellen hinzunehmen müssen - insbesondere auch nicht-visuelle um in der Objekterkennung zu den nötigen Abstraktionen zu kommen. Die Vernetzung und Gesamtgröße des Netzes wird damit schneller steigen als die Leistungsfähigkeit der Computer. Selbst das Auffinden von äquivalenten Darstellungen wird dieses Problem nicht wesentlich reduzieren können, so daß andere Lösungen ins Auge gefasst werden müssen. Die vorläufig einzig mögliche scheint die mikroelektronische Realisierung von dynamischen Synapsen und Integrate-and-Fire-Neuronen zu sein. Dabei sehen wir zwei große Herausforderungen: erstens die Implementierung der Signalgleichungen für Neurone und dynamische Synapsen im Sinne einer äquivalenten Darstellung und zweitens die Gestaltung der Systemarchitektur. Bei der ersten steht die genügend gute Verwirklichung der durch die Signalgleichungen gegebenen wertmäßigen und zeitlichen Funktionsverläufe von Neuronen und Synapsen mittels analoger Schaltungen im Vordergrund. Die erreichbare Verwirklichung ist niemals ideal, und je näher sie dem Ideal kommen soll, umso mehr Aufwand wird getrieben werden müssen. Nur wenig Abstriche müssen bei der Implementierung von Integrate-and-Fire-Neuronen gemacht
10.2 Mikroelektronische Darstellungen
181
werden, doch erfordern dynamische Synapsen einen sehr hohen Aufwand, wollte man die Differentialgleichung als analoge Schaltung mit einer Genauigkeit von 8 bit oder mehr realisieren. Der Schlüssel zur optimalen Implementierung liegt in der Besinnung auf das robuste Verhalten der dynamischen Synapsen: Liegt ein Puls an, soll der Wert der Synapse steigen oder fallen, je nachdem ob das Membranpotential oberhalb oder unterhalb des halben Schwellwertes liegt; ähnlich bei einer dendritischen Synapse. Dieses Verhalten haben wir mit einer Differentialgleichung produziert, aber wir hätten auch eine andere Regel wählen können; z.B. hätten wir ein festes quadratisches Wachstum bzw. einen quadratischen Abfall des synaptischen Wertes verlangen können, wenn das Membranpotential oberhalb bzw. unterhalb des halben Schwellwertes liegt und ein Puls anliegt. Ein gemischtes, logisch-arithmetisches Verhalten wäre aber auch möglich. In dieser Hinsicht darf unsere Differentialgleichung nicht zu hoch bewertet werden; sie ist einfach nur eine gut handhabbare Formulierung des geschilderten synaptischen Verhaltens, welche den Vorzug hat, anspruchsvolle Bildverarbeitung zu ermöglichen und Theorie und Experiment in einfacher Weise zu verbinden. Erst eine biophysikalische Detailanalyse wird zeigen können, wie gut unsere Differentialgleichung die wirklichen biologischen Vorgänge trifft oder inwieweit sie diese Vorgänge abstrahiert. Die vorliegende Robustheit in der Formulierung der Synapsengleichung kann jedenfalls für die mikroelektronische Realisierung mit Vorteil genutzt werden. Bei der zweiten Herausforderung kommt es darauf an, den natürlichen Pulsratenbereich von einigen zehn bis hundert Hertz zu verlassen und das elektronische Netz im 10 kHz - 1 MHz-Bereich laufen zu lassen. Die Vorgänge innerhalb der Erkennungskette laufen somit tausend- bis hunderttausendmal schneller ab. Dadurch kann das elektronische Netz im Zeitmultiplex für die Emulation von Tausenden von Neuronen eingesetzt werden, was Voraussetzung für eine kostengünstige Realisierung ist. Denken wir etwa an die Zonenarchitektur der Merkmalskaskaden; dort muß jedes Merkmal (z.B. ein GaborWavelet) in der Fläche als mehr oder weniger regelmäßiges Gitter (von GaborWavelets) vorhanden sein. Dieses Gitter kann im MHz-Bereich abgetastet und die gewonnene Signalmenge in einem Speicher abgelegt werden, von wo aus sie einem elektronischen Grundmodul zugeführt wird, welches elektronische Realisierungen von Neuronen und dynamischen Synapsen samt deren Grundverknüpfung bereitstellt, wie sie für die Gabor-Wavelet-Filterung (siehe Kapitel 6) benötigt wird. Eine weitere Erhöhung der effektiven Frequenz über 100 MHz hinaus ist nicht ratsam, da die Verlustleistung noch erträglich bleiben und die sequentielle Abarbeitung eines großen Netzes bei Gewährleistung der Gleichzeitigkeit noch gegeben sein muß. Da jenseits der Merkmalskaskade zur Objektebene hin die Netze kleiner werden, kann eine Zusammenfassung mehrerer Funktionen in ein weiteres Grundmodul angebracht sein. Aber wie viele Grundmodule sind optimal? Es scheint klar zu sein, daß ein Grundmodul für Neurone und ein zweites nur für Synapsen nicht optimal ist, da dann der Datentransport von und zum Speicher die Verlustleistungsaufnahme dominiert. Ebenso klar scheint, daß ei-
182
10 Vorüberlegungen zur mikroelektronischen Realisierung
ne Totalimplementierung des gesamten Netzes nur mit einem Speicher für die Signaleingangs- und ausgangswerte zu einer zu großen Chipfläche führen muß. Dazwischen liegt das Optimum - dieses ausfindig zu machen, ist die Aufgabe des Systemarchitekten. Neben den bereits erwähnten Entwurfskriterien Fläche (=Kosten) und Verlustleistungsaufnahme müssen wir die Flexibilität berücksichtigen; sie verlangt nach der Wiederverwendung möglichst weniger verschiedener Grundmodule im Aufbau von Netzen. Unwillkürlich drängen sich hier FPGAähnliche Strukturen zur Realisierung der Grundmodule auf: statt Logikgatter wünschten wir uns analog betriebene Transistoren für Neuronen und Synapsen, Multiplexer würden verschiedene Kombinationen dieser ermöglichen, und die Signalwerte würden in Sample&Hold-Zellen gespeichert. Dazu ein wenig digitaler Overhead für die programmierbare Steuerung von Input/Output und Vernetzung - und schon wäre unser spezielles Grundmodul als FieldProgrammable Neural Array realisiert. Mit den Netzen der Erkennungskette, welche universell, d.h. unabhängig vom Datenformat einsetzbar sind, liegt eine erste Bestimmung von Grundmodulen vor - insbesondere Merkmalsdetektor und Merkmalserkenner - von der wir uns führen lassen sollten bei der Bewältigung der geschilderten Definitions-Herausforderung. In den nachfolgenden sechs Kapiteln gehen wir zunächst auf die Realisierung von Einzelelementen ein: Photosensoren, Neuronen und Synapsen, Grundschaltungen für die Summation bzw. Differenzbildung von Pulsraten. Als Fertigungstechnologien setzen wir 130 nm, 90 nm und 65 nm CMOSTechnologien ein. Damit sind die neuronalen Komponenten verfügbar, aus denen sich die in Kapitel 5-8 beschriebenen Netze zusammensetzen. Wegen seiner Einfachheit stellen wir als erstes Grundmodul die Merkmalserkennung vor, wie sie in Kapitel 7 beschrieben ist; sie ist komplett analog implementiert, und trotz des nur grob angenäherten synaptischen Verhaltens läßt sich in voller Übereinstimmung mit den Simulationen die Synchronisation der Neuronen vorführen, wenn genügend viele Merkmalsdetektoren die gleiche Pulsrate empfangen: eine Pulswelle saust über den Chip. Die Bindung von verschiedenen Merkmalen zu einer Objektkomponente bzw. von Objektkomponenten zu einem Objekt gestalten wir in klassischer Schaltungstechnik. Es folgt die Beschreibung eines Chips mit einem Grundmodul für die Detektion von Gabor-Wavelet-Merkmalen, wie dies in Kapitel 6 vorgestellt wurde. Hier werden ausschließlich digitale Komponenten benutzt, welche die Pulsdifferenzbestimmung, das Multiplexen und die Ereignisspeicherung übernehmen. Die Übereinstimmung mit idealen Gabor-Wavelets wird nachgewiesen. Im Kapitel 15 beschreiben wir eine dreidimensionale Stapeltechnik für Silizium-Chips und einen Prototypen mit 6 Silizium-Schichten zum Test der 3D-Verbindungsmatrix. Im letzten Kapitel präsentieren wir schließlich die Architektur eines Sehwürfels, mit welchem eine aus 8 Orientierungen und 5 Auflösungsebenen bestehende Merkmalskaskade in Echtzeit abgearbeitet werden kann und 1000 Objekte erkannt werden können. Dazu werden 59 Chips benötigt, welche zu einer Höhe von 1 mm aufgestapelt sind auf einer Grundfläche
10.3 Grundlegende Modelle biologischer und technischer Neuronen
183
von rund 1 cm × 1 cm. Für weitergehende Schlüsse bezüglich der Herausforderungen an die Schaltungstechnik künftiger Technologiegenerationen sei auf Kapitel 16 verwiesen, insbesondere dessen letzter Abschnitt. Die restlichen Seiten dieses Kapitels wollen wir dazu nützen, ausgehend vom Aufbau biologischer Neuronen und Synapsen verschiedene Verhaltensmodelle in der Reihenfolge zunehmender Abstraktion und entsprechend abnehmender Komplexität Revue passieren zu lassen. Diese Aufzählung soll noch einmal daran erinnern, wie nötig eine Bescheidung bei der Implementierung künstlicher Neuronen und Synapsen ist. Sie endet mit den Modellen von Synapse und Neuron, welche diesem Buch von Anfang an zugrunde gelegt wurden.
10.3 Grundlegende Modelle biologischer und technischer Neuronen Aufbau biologischer Neuronen Die Mehrzahl der Neuronen läßt eine dreigliedrige äußere Struktur erkennen: Aus dem Zellkörper, dem Soma, sprießen ein oder mehr stark verzweigte Fortsätze, die Dendriten, und ein mitunter sehr langer schwächer verzweigter Fortsatz, das Axon. Elektrophysiologische Untersuchungen an isolierten Neuronen und auch in vivo haben ergeben, daß entlang des Axons elektrische Impulse weitergeleitet werden, die eine Amplitude von etwa 100 mV und einen stereotypen Verlauf von 1 bis 2 Millisekunden Dauer haben. Diese Impulse werden als Aktionspotentiale bezeichnet. Die Entstehung dieser Aktionspotentiale kann durch elektrochemische Prozesse innerhalb der Zelle und der sie umgebenden interzellulären Flüssigkeit erklärt werden [24]. Die in der Zelle enthaltenen Ionen (Na+ , K+ , Ca2+ , Mg2+ , Cl− und Aminosäurerestionen A− ) wandern entsprechend dem Konzentrationsunterschied (Diffusionsstrom) und dem elektrischen Feld (Driftstrom) durch die Ionenkanäle in der Zellmembran. In der Zellmembran enthaltene besondere Eiweißmoleküle, sogenannte Ionenpumpen, sorgen für die Aufrechterhaltung des Konzentrationsgefälles. Im Anhang 18.2 ist ein elektrisches Modell für die Entstehung der Aktionspotentiale, das Axon-Modell von Hodgkin und Huxley [70], in den Grundzügen dargestellt. Dieses Modell ist geeignet, den Verlauf eines Aktionspotentiales, wie es im Soma in der Nähe des Ansatzes zum Axon entstehen kann, zu beschreiben. Wird in den elektrischen Teil des Modells ein Stromimpuls I eingespeist, z.B. ein Rechteckimpuls I(t) = I0 (H(t) − H(t − t0 )) mit der Amplitude I0 und der Dauer t0 (mit H als Sprungfunktion), so kann die Membranspannung U eine kurze Spitze mit einem Scheitelwert von bis zu ca. +35 mV durchlaufen. Es zeigt sich dabei wie im biologischen Vorbild ein Schwellwertverhalten: bei fester Dauer t0 des eingeleiteten Stromimpulses werden Aktionspotentiale ausgelöst, wenn I0 oberhalb eines Schwellwertes Ith liegt.
184
10 Vorüberlegungen zur mikroelektronischen Realisierung
Synapsen Synapsen sind die Verbindungsstellen der Neuronen untereinander, wo der Reiz gerichtet von der präsynaptischen zur postsynaptischen Zelle weitergegeben wird1 . Aus [24] und [39] kann man folgende Beschreibung zusammenfassen: Ein Aktionspotential erreicht die Synapse über das Axon, und aus dem Endknöpfchen der präsynaptischen Zelle wird eine als Neurotransmitter bezeichnete Substanz in den synaptischen Spalt, den Raum zwischen den Zellen in der Synapse, ausgeschüttet. Diese diffundiert zur postsynaptischen Seite und bindet sich dort vorübergehend an Rezeptormoleküle. Ionotrope Rezeptoren nehmen direkten Einfluss auf die Durchlässigkeit eines zugehörigen Typs von Ionenkanälen. Metabotrope Rezeptoren lösen bei Anbindung des Neurotransmitters eine Kaskade chemischer Reaktionen aus, die am Ende die Durchlässigkeit bestimmter Ionenkanäle steuert. Der Neurotransmitter wird anschließend zu einem Teil wieder in das präsynaptische Endknöpfchen resorbiert, der verbleibende Teil von entsprechenden Enzymen abgebaut. Postsynaptische Reaktion Durch die Ausschüttung, Diffusion, temporäre Bindung an die Rezeptoren und schließlich den Abbau des Neurotransmitters eventuell zusammen mit dem zeitlichen Ablauf der metabotropen Reaktionskaskade ergibt sich ein bestimmter Zeitverlauf der Durchlässigkeit eines spezifischen Typs von Ionenkanälen im Bereich der Synapse. Entsprechend der Differenz zwischen der Membranspannung und der Umkehrspannung der von dem Ionenkanal durchgelassenen Ionen fließt im Bereich der Synapse ein Strom (PSC – post synaptic current) durch die Zellmembran. Aktionspotentiale, die erregende Synapsen erreichen, können ein Aktionspotential des postsynaptischen Neurons auslösen. Aktionspotentiale, die hemmende Synapsen erreichen, können postsynaptische Aktionspotentiale unterdrücken, die sonst durch erregende Synapsen ausgelöst würden. Der resultierende Strom durch die Synapse wird entsprechend als exzitatorischer (EPSC) bzw. inhibitorischer (IPSC) postsynaptischer Strom bezeichnet. Zur Modellierung wird der Zeitverlauf des synaptischen Leitwertes meist explizit angegeben. Viele Synapsen lassen sich entweder durch eine Exponentialfunktion −a(t−tf ) gS (t) = gc S H(t − tf ) e
(10.1)
oder, zur Berücksichtigung der endlichen Geschwindigkeit, mit der sich die Kanäle öffnen, durch die Differenz zweier Exponentialfunktionen gut modellieren,
1
−a ln(a/b) −b ln(a/b) −a(t−tf ) gS (t) = gc − e−b(t−tf ) / e a−b − e a−b , S H(t − tf ) e
(10.2)
Die ungerichteten elektrischen Synapsen, die in bestimmten Bereichen des Nervensystems ebenfalls vorkommen, werden hier nicht weiter behandelt.
10.3 Grundlegende Modelle biologischer und technischer Neuronen
185
die für b → a in die als Alpha-Funktion bezeichnete Funktion −a(t−tf ) gS (t) = gc S H(t − tf ) e a(t − tf )e
(10.3)
übergeht [24]. Darin sind H die Sprungfunktion (10.4), ( 0 t < 0s H(t) = 1 t ≥ 0 s,
(10.4)
und tf der Zeitpunkt des Impulses, der die Synapse erreicht und den PSC auslöst. Die Parameter a ∈ R s−1 und b ∈ R s−1 werden an den Zeitverlauf angepasst, gc S ist die Amplitude des synaptischen Leitwertes. Letztere liegt in der Größenordnung einiger 10 pS für einzelne Synapsen. Abbildung 10.1 zeigt beispielhaft den Verlauf des synaptischen Leitwerts entsprechend den Gleichungen (10.1), (10.2) und (10.3) für ausgewählte Werte der Parameter.
1
(10.1) (10.2)
gS (t)/c gS
(10.3)
0.8
0.6
0.4
0.2
0
0
5
10
15 t / ms
Abb. 10.1 Verlauf des synaptischen Leitwerts gS (t) entsprechend den Gleichungen (10.1), (10.2) und (10.3) normiert auf seinen Scheitelwert gc S für tf = 0; a = 400 s−1 ; b = 2 000 s−1 . Mit der Veränderung des synaptischen Leitwertes ist eine Änderung der Membranspannung im Bereich der Synapse verbunden, die als postsynaptisches Potential (PSP) bezeichnet wird. Je nach Stromrichtung des PSC unterteilt man PSP ebenfalls in exzitatorische (EPSP) und inhibitorische (IPSP) postsynaptische Potentiale.
186
10 Vorüberlegungen zur mikroelektronischen Realisierung
Aktionspotentiale an exzitatorischen Synapsen depolarisieren die Membran (U (t) > UR für t > tf ). Die von inhibitorischen Synapsen geleiteten Ionen haben eine Nernst-Spannung nahe dem Ruhepotential, meist geringfügig darunter. An einer Zelle in Ruhe verringert ein Aktionspotential an einer inhibitorischen Synapse die Membranspannung kaum, erhöht jedoch ihren Leitwert für eine kurze Zeit. In dieser Zeit wird ein von einer benachbarten exzitatorischen Synapse ausgelöstes EPSP in seiner Amplitude vermindert und klingt schneller zum Ruhepotential ab. Diese Form der Verminderung der postsynaptischen Depolarisation wird als silent inhibition bzw. wegen der Parallelschaltung des Membranleitwertes und des synaptischen Leitwertes als shunting inhibition bezeichnet. In einigen in der Literatur beschriebenen Modellen [39] werden PSC oder PSP vereinfachend als synaptischer Strom IS (t) := U0 gS (t)
(10.5)
bzw. Membranspannung in der Umgebung der Synapse US (t) := U0 R0 gS (t)
(10.6)
einer unabhängigen Quelle mit expliziter Zeitabhängigkeit beschrieben. Darin ist gS eine der Funktionen entsprechend (10.1) bis (10.3). Die Konstanten U0 ∈ R V und R0 ∈ R Ω werden passend gewählt, um die Amplitude von PSC bzw. PSP zu erhalten. Synaptische Effizienz Ein einlaufendes Aktionspotential löst an einer Synapse nicht immer eine postsynaptische Reaktion aus. Die Ausschüttung des Neurotransmitters erfolgt mit einer gewissen Wahrscheinlichkeit p [39]. Viele Neurone leiten Aktionspotentiale an nachfolgende Neurone über eine Vielzahl von Synapsen weiter. Auch die Menge des ausgeschütteten Neurotransmitters unterscheidet sich von Synapse zu Synapse. Das kann durch unterschiedliche Werte des Parameters gc S in (10.1) bis (10.3) berücksichtigt werden. Zusammen mit der Übertragungswahrscheinlichkeit p und der Anzahl der an einer Verbindung beteiligten Synapsen ergibt sich eine Effektivität w der Verbindung von der prä- zur postsynaptischen Zelle. Im Mittel ist die Amplitude des zusammengefassten synaptischen Leitwertes der Verbindung proportional zur Effektivität w. Deshalb kann w als Stärke oder Gewicht der Verbindung vom präzum postsynaptischen Neuron aufgefasst werden. In einem Netz aus mehreren Neuronen können diese zur Unterscheidung mit natürlichen Zahlen indiziert werden. Das Gewicht einer Synapse am postsynaptischen Neuron i mit dem präsynaptischen Neuron j trägt dann den Doppelindex ij: wij .
10.3 Grundlegende Modelle biologischer und technischer Neuronen
187
Dentritischer Baum, abschnittsweise Modelle und Punktneuron Viele der Synapsen eines Neurons befinden sich an den Zweigen des Dendritenbaums. Bei der Modellierung biologischer Neuronen wird der Dendritenbaum häufig als passives Leitungsnetz aufgefasst, mit dem die einzelnen Synapsen verbunden sind. Die Teile dieses Leitungsnetzes entsprechen den Zweigen des Dendritenbaumes. Sie sind durch ihren Kapazitäts-, Längswiderstands- und Querleitwertbelag gekennzeichnet. Der Kapazitätsbelag entspricht dem Produkt aus Kapazitätsflächenbelag und dem Umfang des Dendritenzweiges, der Längswiderstandsbelag ergibt sich aus der Leitfähigkeit des Zytoplasmas und der Querschnittsfläche. Der Querleitwertsbelag ergibt sich aus der Art und Dichte der Ionenkanäle. Auch die Ionenkanäle in den Wänden des Dendritenbaumes zeigen einen spannungsabhängigen Übergang zwischen der leitfähigen und der undurchlässigen Konfiguration. Das lineare Modell eines passiven Leitungsnetzes gilt darum nur näherungsweise. Für die numerische Analyse wird der Dendritenbaum in diskrete Abschnitte zerlegt. Jeder einzelne Abschnitt wird durch konzentrierte Zustandsvariablen und ein entsprechendes elektrisches Modell aus konzentrierten Bauelementen beschrieben. Die Abschnitte sind untereinander durch Widerstände zwischen den Knoten, die das Potential des Zytoplasmas tragen, verbunden. Das Soma wird in der Regel ebenfalls als ein Abschnitt modelliert, in dem darüber hinaus Aktionspotentiale gebildet werden können. Bei der Modellierung biologischer Neuronen wird der Dendritenbaum in bis zu viele hundert Abschnitte eingeteilt. Zur Simulation des Verhaltens in Computern beschränkt man sich auf einige wenige Abschnitte. Alle diese Modelle werden als abschnittsweise Modelle (compartmental models) bezeichnet. Zur weiteren Vereinfachung werden die zeitlichen Vorgänge im dendritischen Baum vernachlässigt und die synaptischen Eingaben als instantan am Soma wirksam betrachtet. Daraus ergibt sich eine Beschreibung, in der nur Zustandsvariablen für den Soma-Abschnitt auftreten. Entsprechende Modelle werden als Punktneuronen bezeichnet, weil alle Effekte vernachlässigt werden, welche durch die räumliche Ausdehnung biologischer Neuronen gegeben sind. Spike Response Model (SRM) Formale Modelle pulsgekoppelter Neuronen gehen von der im Hodgkin-HuxleyModell (siehe Anhang 18.2) beschriebenen Sichtweise eines Schwellwertes der Membranspannung aus. Vernachlässigt man die unter geeigneten Bedingungen geringe Abhängigkeit der Auslösung des Aktionspotentiales vom weiteren Verlauf der Membranspannung nach Überschreitung des Schwellwertes sowie die (gegenüber den anderen Vorgängen meist kurze) Zeit zwischen der Überschreitung des Schwellwertes und dem Maximum des Aktionspotentiales, so kann der Zeitpunkt tf , zu dem die Membranspannung U den Schwellwert Uth überschreitet,
188
10 Vorüberlegungen zur mikroelektronischen Realisierung
dU (tf ) >0 (10.7) dt als Zeitpunkt des Aktionspotentials (kurz: Feuerzeitpunkt) aufgefasst werden. Der genaue Verlauf des Aktionspotentials ist dabei belanglos. Deshalb kann die Ausgabe des Neurons in dieser Vereinfachung allein durch die Angabe (n) der Feuerzeitpunkte tf , n ∈ N beschrieben werden. Die übrigen Zustandsvariablen detaillierter Modelle werden dabei in der Regel vernachlässigt. Ein allgemeines Modell für Punktneuronen (vgl. Abschnitt 10.3) ist in [24] beschrieben. Einzige Zustandsvariable ist die Membranladung Q, die wegen der linearen Membrankapazität durch die Membranspannung U dargestellt wird. Zu den Feuerzeitpunkten kann sich die Membranspannung unstetig verändern. Der Verlauf der Membranspannung U (t) zwischen zwei aufein(n) (n+1) ander folgenden Feuerzeitpunkten t ∈ (tf , tf ) ist unabhängig von ihrem Verlauf in den Intervallen zwischen anderen Feuerzeitpunkten, d.h. für (n+i) (n+i+1) t ∈ tf , tf , i ∈ Z, i 6= 0, i < n. Deshalb ist zum Zeitpunkt t jeweils nur der letzte Feuerzeitpunkt (n) (10.8) tˆf := max t′ t′ ∈ {tf , n ∈ Z}, t′ < t U (tf ) = Uth ,
zu beachten. Zwischen den Feuerzeitpunkten ist im SRM die Membranspannung Ui des i-ten Neurons eine Linearkombination X X (n) Ui (t) = Uη (t − tˆf,i ) + wij Uǫ (t − tˆf,i , t − tf,j ) j∈Ni
n∈Z
+
Z
0
∞
κ(t − tˆf,i , s)Ii (t − s) ds
(10.9)
aus dem Aktionspotential einschließlich des Überschwingens beim Abklingen Uη (t − tˆf ), den mit den synaptischen Verbindungsstärken wij gewichteten (n) synaptischen Potentialen (PSP) Uǫ (t − tˆf,i , t − tf,j ) und der linear zeitvariant gefilterten kontinuierlichen Eingabe Ii (t). Ein veränderlicher Schwellwert ′ (t − tˆf,i ) kann stets durch einen entsprechend angepassten Verlauf des AkUth ′ (t − tˆf,i ) + Uth und einen festen tionspotentiales Uη′ (t − tˆf,i ) := Uη (t − tˆf,i ) − Uth Schwellwert Uth berücksichtigt werden. Die Membranspannung und alle ihre Komponenten sind von der seit dem letzten Feuerzeitpunkt verstrichenen Zeit t − tˆf,i abhängig. Die Amplitude und der Verlauf der synaptischen Eingaben ist darüberhinaus von der Zeit (n) zwischen dem eintreffenden Aktionspotential, d.h. dem Feuerzeitpunkt tf,j des präsynaptischen Neurons j, und dem letzten Feuerzeitpunkt tˆf,i des postsynaptischen Neurons abhängig. Das PSP kann dieser Interpretation entsprechend umgeschrieben werden, indem man in (10.9) Uǫ (t − tˆf,i , t − tf,j ) durch Uǫ′ (tf,j − tˆf,i , t − tˆf,i ) mit Uǫ′ (t′ , t′′ ) := Uǫ (t′′ , t′′ − t′ ) ersetzt. Motiviert von dem Gedanken, die Antwort der Membranspannung auf einen kurzen Impuls des Membranstromes zu erfassen, wird im SRM der nichtsynaptische, kontinuierliche Eingangsstrom durch ein lineares Filter geleitet,
10.3 Grundlegende Modelle biologischer und technischer Neuronen
189
dessen Reaktion auf einen Dirac-Impuls vom zeitlichen Abstand zum letzten Feuerzeitpunkt tˆf,i des Neurons abhängt.
Integrate-And-Fire-Modell (IAF) Ein vereinfachtes Modell eines Punktneurons kann durch die elektrische Schaltung in Abbildung 10.2 dargestellt werden. Die Membran wird mit der Membrankapazität C und dem festen Leitwert G nachgebildet. Das Eingangssignal ist der Strom I: X X (n) Ii (t) = Ii0 (t) + Iǫ,ij (t − tf,j ), (10.10) j∈Ni n∈N
der sich aus der Summe der kontinuierlichen Komponente Ii0 (t) und der syn(n) aptischen Komponenten Iǫ,ij (t− tf,j ) zusammensetzt und zur Unterscheidung mehrerer Neuronen mit i indiziert ist. Für dieses Eingangssignal bildet die Membran einen Tiefpass mit dem Ausgangssignal Ui , der in der Literatur als leaky integrator bezeichnet wird. Ii0
Rmin
Ii
Iǫ,i1
Id ǫ,ij 0 (n) (n+1) tf,j tf,j
G
Iǫ,i2
C
Ui
Uth
td
U0
Iǫ,ij
(n+2)
tf,j
Abb. 10.2 Schaltung des IAF-Modells Der Feuerzeitpunkt tf ist durch Uth = lim− Ui (t)
(10.11)
t→tf
mit dem Schwellwert Uth gegeben. Dabei wird die Membranspannung Ui auf die Reset-Spannung U0 zurückgesetzt: lim Ui (t) = U0 .
t→t+ f
(10.12)
In einer praktischen Realisierung erfolgt das Rücksetzen durch einen Rechteckimpuls der Dauer td bei endlicher Stromstärke, die z.B. durch den
190
10 Vorüberlegungen zur mikroelektronischen Realisierung
Widerstand Rmin begrenzt werden kann. Der Rücksetzvorgang im idealisierten IAF-Modell kann als Grenzfall für td → 0, Rmin → 0 aufgefaßt werden. Dabei geht der Ausgangsimpuls in einen Dirac-Impuls über, zu dessen Zeitpunkt die Membranspannung Ui instantan auf den Wert U0 zurückgesetzt wird. Das Ausgangssignal des IAF-Neurons ist durch die Angabe der Feuerzeitpunkte (n) tf , n ∈ N vollständig beschrieben. Die synaptischen Eingaben werden durch unabhängige Stromquellen mit einem von der seit dem letzten Feuerzeitpunkt tˆf,j des präsynaptischen Neurons j verstrichenen Zeit t − tˆf,j abhängigen Strom Iǫ,ij dargestellt. Häufig gewählt wird ˆ
Iǫ,ij (t) = IS wij e−a(t−tf,j ) H(t − tˆf,j ).
(10.13)
Zusammen mit der Impulsantwort g(t) =
1 −tG/C e C
(10.14)
des linearen Membranmodells ergibt sich ein PSP ähnlich (10.2): UPSP = g · Iǫ,ij ,
(10.15)
mit UPSP(t) =
IS wij −a(t−tˆf,j ) ˆ e − e−(t−tf,j )G/C H(t − tˆf,j ) G − aC
(10.16)
und der Bezugsstromstärke IS .
Vereinfachtes IAF-Modell mit adaptiven Synapsen Der in diesem Buch gewählten CMOS–VLSI–Implementierung liegt ein weiter vereinfachtes Integrate-and-Fire-Modell zu Grunde, das in [71, 72, 73] vorgestellt wurde. Gegenüber dem häufig verwendeten IAF-Modell mit leaky integrator wird der Membranleitwert vernachlässigt und G = 0 gewählt. Die Ausgangsimpulse haben eine von null verschiedene, endliche Dauer td von 1 ms. Die Neuronen sind durch Synapsen verbunden, deren Gewichte entsprechend einer vom Hebbschen Postulat inspirierten Adaptionsregel verändert werden. Gewichte und Eingaben werden zur weiteren Vereinfachung auf nicht-negative Werte beschränkt. Neuron Der Signalfluß im Neuron ist schematisch in Abbildung 10.3 gezeigt. Das Neuron i ist durch eine zweiwertige Zustandsvariable xi ∈ {0, 1} und eine kontinuierliche Zustandsvariable ai ∈ R gekennzeichnet, die in Analogie zu Ui als
10.3 Grundlegende Modelle biologischer und technischer Neuronen xj1
191
wij1 (n)
(n)
tf,i ; ai (tf,i ) = 0 xjn
wijn Z
wi0 I0i
xi θ
td ai
Abb. 10.3 Blockschaltbild des einfachen IAF-Neurons und Bezeichnung der Signale Membranpotential bezeichnet wird. xi stellt gleichzeitig das Ausgangssignal des Neurons dar. Während der Pausen zwischen den Impulsen ist xi = 0, und die Membran wird von 0 bis zum Schwellwert θ aufgeladen: X dai (t) = wij (t) xj (t) + wi0 Ii dt 0 ≤ ai (t) ≤ θ . (10.17) j∈Ni xi = 0
Darin bedeutet neben den bereits eingeführten Zeichen wij (t) für die (adaptiven) Koppelgewichte, die die Ausgänge xj weiterer Neuronen mit dem Eingang des Neurons i verbinden, Ii eine kontinuierliche Eingabe an das Neuron i, die mit einem festen Gewicht wi0 gewichtet wird. Die Laufvariable j der Summe durchläuft alle Elemente der Menge Ni der Indizes der Neuronen, die eine Verbindung hin zum Neuron i haben. Die Gewichte und kontinuierlichen Eingaben sind auf nicht-negative Werte beschränkt:
(10.18) (10.19)
wij (t) ≥ 0 wi0 Ii ≥ 0 .
Erreicht das Membranpotential ai den Schwellwert θ, so wechselt der Zu(n) stand des Neurons. Dieser Zeitpunkt wird als n-ter Feuerzeitpunkt tf,i des Neurons i bezeichnet: (n) ai (tf,i ) = θ, n ∈ N . (10.20)
Ab dem Feuerzeitpunkt wird der Impuls der Dauer td abgegeben: xi (t) = 1 ,
(n)
(n)
(tf,i ≤ t < tf,i + td ) .
(10.21)
Während dieser Phase wird das Membranpotential auf null zurückgesetzt, einkommende Pulssignale sind kurzgeschlossen:
192
10 Vorüberlegungen zur mikroelektronischen Realisierung (n)
(10.22)
ai (tf,i + td ) = 0 . Danach wechselt erneut der Zustand des Neurons, (n)
(10.23)
xi (tf,i + td ) = 0 , (n)
(n+1)
und es gilt für tf,i + td < t < tf,i wieder (10.17). Ohne EinschränkungPder Allgemeinheit können die Einheiten für die Signalstärke (wi0 Ii und j∈Ni wij xj ) und die Zeit so gewählt werden, daß td = 1 und θ = 1 gilt. Durch das kontinuierliche Eingangssignal wird das Neuron zum PulsgeneratorP der Frequenz f . Wenn keine weiteren Eingangssignale vorhanden sind, d.h. j∈Ni wij xj ≡ 0, nimmt f den Wert ff =
1 td + θ/(wi0 Ii )
(10.24)
der Freilauffrequenz an. In Abbildung 10.4 ist diese in Abhängigkeit der Eingabe wi0 Ii dargestellt. 1
ff 1/td
0.1
0.01
0.001 0.001
0.01
0.1
1
10
w0i Ii / (θ/td )
Abb. 10.4 Freilauffrequenz ff des einfachen IAF-Neurons in Abhängigkeit von der kontinuierlichen Eingabe wi0 Ii .
Adaptive Synapsen Eine adaptive Synapse bzw. ein Koppelgewicht soll so vergrößert bzw. verringert werden, daß das postsynaptische Neuron dem präsynaptischen Neuron nacheilt bzw. vorauseilt. Zu diesem Zweck werden die kontinuierlichen und diskreten Zustände der gekoppelten Neuronen in einer der Synapse zugeordneten Funktionseinheit ausgewertet, um ein Signal zu erhalten, aus dem die
10.3 Grundlegende Modelle biologischer und technischer Neuronen
193
Phasenbeziehung der beiden Neuronen entnommen werden kann. Prinzipiell kommen dafür die lokal verfügbaren Signale ai , aj und xi , xj in Frage (Abbildung 10.5). In [71] wurden ursprünglich zwei entsprechende Adaptionsregeln vorgestellt. Da nur ein einkommender Puls und das empfangende Membranpotential, nicht aber benachbarte Membranpotentiale als lokale Ursache-Wirkungsglieder in Frage kommen, haben wir es mit der schon in Kapitel 5 vorgestellten Differentialgleichung zu tun:
w˙ij (t) = −γwij (t) +
(
µ · (ai (t) − θ/2) falls xi = 0 ∧ xj = 1 0 sonst .
wij
(10.25)
xj wij
xi
xj Adaption
ai
Abb. 10.5 Gewichtsadaption in Abhängigkeit von der Phasenbeziehung der lokalen Signale Im Kapitel 11 wird die analoge Implementierung dieses Modells und ein angepasstes Verhaltensmodell der elektronischen Schaltung vorgestellt. Das Verhaltensmodell wird für vergleichende Untersuchungen, z.B. der Synchronisation, der Ermittlung zulässiger Toleranzen mit Hilfe von Monte-CarloSimulationen sowie für Systemsimulationen (Kapitel 12) eingesetzt. Von verschiedenen Autoren [74, 75] werden biologisch motivierte neuronale Mikroschaltungen beschrieben, die eine bestimmte, durch ihre Struktur festgelegte Funktion erfüllen. Die Mikroschaltungen, die in [74] behandelt werden, enthalten inhibitorische und exzitatorische Synapsen. Sowohl von Maass als auch von Eckhorn [76] wird postuliert, daß die Extrahierung von Korrelationen zwischen Eingangspulsfolgen eine der Hauptverarbeitungsfunktionen dieser Mikroschaltungen darstellt, z.B. in der Merkmalsverknüpfung im V4Bereich der Säugetier-Bildverarbeitung. Hierbei nimmt Eckhorn an, daß die für die Korrelationsfindung nötige synchrone Aktivität zwischen Neuronen nur mit inhibitorischen Synapsen erreicht werden kann. Wie wir in Kapitel 5 nachgewiesen haben, läßt sich die Synchronisation der Pulstätigkeit der Neuronen aber gerade mit unseren exzitatorischen Synapsen und auf keinen Fall mit inhibitorischen erzielen.
194
10 Vorüberlegungen zur mikroelektronischen Realisierung
Es gibt also keine grundsätzlichen Hindernisse auf dem Weg zu rein exzitatorischen Mikroschaltungen, auch wenn diese in der Biologie noch nicht explizit nachgewiesen wurden. Dieser Mechanismus, eine Korrelationsfindung durch wechselseitige Verstärkung oder Abschwächung von vorwärtsgerichteten Synapsen statt einer lateralen Inhibition, ist durchaus biologisch plausibel. In [77] werden biologische Messungen vorgestellt, die nahe legen, daß die im V1-Bereich des visuellen Kortex gefundene Interaktion zwischen korrelierten rezeptiven Feldern nicht durch laterale Inhibition, sondern durch Modulation der vertikalen exzitatorischen Synapsen erreicht wird.
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren Jens-Uwe Schlüßler, Jörg Schreiter und Stephan Henker
11.1 Neuron Jeder in diesem Buch vorgestellten CMOS-VLSI-Implementierung eines neuronalen Netzwerkes liegt das in Abschnitt 10.3 erläuterte IAF-Neuronmodell zugrunde. Das Membranpotential wird als eine kontinuierliche Zustandsvariable ai beschrieben und ergibt sich aus der Integration der Eingangssignale des Neurons. In der elektronischen Realisierung ist dieses Membranpotential durch einen Spannungswert (Akkumulatorpotential) gegeben, welcher durch die auf der Membrankapazität gespeicherten Ladung erzeugt wird. Ein mit Hysterese behafteter Schwellwertschalter bestimmt durch Vergleich mit einer Referenzspannung aus dem Akkumulatorpotential die zweiwertige Zustandsvariable xi ∈ {0, 1} des Neurons i. Zum Feuerzeitpunkt nimmt xi den Wert 1 an, der für die Dauer td erhalten bleibt, was durch die gezielte Entladung der Kapazität über eine Entladestromquelle erreicht wird. Schaltungskonzept für ein IAF-Neuron Der Spannungshub zwischen dem Ruhepotential nach der Impulsabgabe und dem Schwellwert ist durch die Betriebsspannung auf Werte in der Größenordnung von 1 V beschränkt. Die Stromstärke der Eingangssignale und die Größe der MOS-Kapazität können gegeneinander abgewogen werden, wobei eine kleine Kapazität auch eine kleine Stromstärke erfordert. Für letztere lagen Erfahrungen bis hinunter zu einigen 10 nA vor. Mit 10 nA, 1 V und 10 ms Integrationsdauer (entsprechend einer Pulsrate von 100 Hz) ergäbe sich eine erforderliche Kapazität von 100 pF . Allein für die Integrationskondensatoren in 128 × 128 Neuronen für ein entsprechendes Merkmalsdetektor- bzw. -erkennerfeld würden dafür ca 320 mm2 Chipfläche benötigt. Deshalb wurde die Arbeitsgeschwindigkeit um das 100-fache erhöht. Die nun noch erforderliche Kapazität von etwa 1 pF belegt immer noch einen bedeutenden Anteil der Fläche der Implementierung des Neurons, erlaubt jedoch, 128 × 128 Neuronen
196
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
auf der vorgegebenen Chipfläche unterzubringen. Die Impulsdauer wurde mit 1/10 des geringsten Impulsabstandes, d.h. 1 µs festgelegt. Gemäß (10.17) folgt unter Beachtung von (10.22) das Membranpotential dem Integral der Eingangssignale: ! Z t X (11.1) wkl (t′ ) xl (t′ ) + wk0 Ik . dt′ ak (t) = (n)
t′ =tf,k +td
l∈Nk
Außerdem kann der Verlauf des Membranpotentials während der Sendephase (xk = 1) beliebig gewählt werden, weil er selbst keine Bedeutung hat. Zum Beispiel kann das Membranpotential ak als stetig angenommen werden, so daß es beim Übergang von der Empfangs- in die Sendephase und umgekehrt seinen Wert beibehält. Während der Sendephase kann so der Akkumulator in einem noch zu wählenden Verlauf entladen werden. Eine besonders einfache Implementierung ergibt sich, wenn das Membranpotential durch die auf einem Kondensator gespeicherte Ladung und die Eingangssignale durch Ströme dargestellt werden, die den Kondensator umladen. Zur praktischen Realisierung wird die Gate-Bulk-Kapazität eines MOSTransistors genutzt, weil eine flächensparende Implementierung bei hoher Kapazität angestrebt wird. Von allen Strukturen, die mit der CMOS-Technologie verfügbar sind, hat sie den höchsten Flächenbelag, der vor allem durch die geringe Dicke des Gate-Oxids zustande kommt. Die Eingangs- und Entladeströme dieses MOS-Kondensators werden durch MOS-Transistoren geschaltet. Parasitäre Ladungsinjektionen durch die Schaltvorgänge können das Membranpotential unzulässig beeinflussen. Die Dimensionierung einer flächenoptimalen Schaltungsanordnung erfordert deshalb große Sorgfalt. Die wesentlichen Zusammenhänge sind im Anhang 18.3 beschrieben. Das Membranpotential ak wird durch eine Ladung Q(ak ) so dargestellt, daß diese bis auf eine Konstante Q0 proportional zum Membranpotential ak ist: Q(ak ) = Q0 + qak .
(11.2)
Den Zuständen ak = 0 und ak = θ entsprechen die Ladungen Q0 = Q(0) und Qθ = Q(θ).
(11.3)
Die Kapaziät integrierter Kondensatoren ist in der Regel spannungsabhängig und durch QC (U ) oder C(U ) mit C(U ) =
d QC (U ) dU
(11.4)
gegeben. Dem Membranpotential ak ist damit die Spannung U (ak ) mit QC U (ak ) = Q(ak )
(11.5)
11.1 Neuron
197
zugeordnet. In Analogie zu Q0 und Qθ entsprechen den Zuständen ak = 0 und ak = θ die Spannungen U0 und Uθ mit QC (U0 ) = Q(0) und QC (Uθ ) = ˜ so daß für alle ak ∈ [0, θ] stets Q(θ). Jedoch gibt es im allgemeinen kein U, ˜ U (ak ) = U0 + ak U gilt. Abbildung 11.1 zeigt den zur Integration der Eingangssignale verwendeten MOS-Kondensator und eine mögliche Zuordnung des Membranpotentials ak zur Ladung Q(ak ) sowie den dazugehörigen prinzipiellen Verlauf der Spannung U (ak ), der wegen der Nichtlinearität der MOS-Kapazität gekrümmt ist. Ik0
U
Q
Ik1
U0
Q0 U (ak )
Ikn Q(ak )
Q(ak )
U (ak )
Uθ
Qθ
ak 0
θ
Abb. 11.1 Links: Integration der neuronalen Eingangssignale mit einem MOSKondensator. Rechts: Beispielhafte Zuordnung des Membranpotentials zu Ladung und Spannung des MOS-Kondensators. Für die Adaptionsfunktion µ · (ai (t) − θ/2) wird ein Signal benötigt, das bis auf eine Konstante dem Membranpotential proportional ist. Näherungsweise kann dazu U (ak ) verwendet werden, wenn die Abweichung von einem linearen Kondensator nicht zu groß ist. Bei einem MOS-Kondensator ist das für U (ak ) ≥ Uth (NMOS) bzw. U (ak ) ≤ UDD − Uth bei PMOS der Fall. Darin sind mit Uth die Schwellspannung des als Kondensator verwendeten MOS-Transistors und mit UDD die Betriebsspannung der Schaltung bezeichnet. Der nutzbare Spannungsbereich ist um die Schwellspannung kleiner als die Betriebsspannung. Die in Abbildung 11.1 eingetragene Stromrichtung ergibt sich aus der Wahl der Gewichtsschaltung. Bei positivem Eingangssignal nimmt die Spannung U (ak ) ab. Dementsprechend werden Q(ak ) und U (ak ) gewählt, wie in der Prinzipdarstellung in Abbildung 11.1 rechts gezeigt ist. Um die Ladungsmenge, die durch die Stärke des Eingangsstromes und die Arbeitsgeschwindigkeit vorgegeben ist, in einem möglichst kleinen Kondensator aufnehmen zu können, muß der Spannungshub so groß wie möglich gewählt werden. Die Hysterese des Schwellwertschalters kann bereits mit einer einfachen Schaltung auf |U (θ) − U (0)| ≈ UDD − Uth ausgedehnt werden, so daß der näherungsweise lineare Bereich des MOS-Kondensators ganz genutzt werden kann. Die Eingangssignale werden als Ströme Ik0 bis Ikn dargestellt. Mit einer noch zu bestimmenden Bezugsstromstärke IN gilt
198
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Ik0 = IN wk0 Ik
(11.6)
und Ikν(l) (t) = IN wkl (t) xk (t) ,
(11.7)
wobei ν(l) ∈ {1, 2, . . . , |Nk |} die Elemente l der Menge Nk der mit dem Neuron k verbundenen Neuronen indiziert. Durch die Eingangsströme Ik0 , . . . Ikn wird der Akkumulator, also der MOS-Kondensator, von U0 bis Uθ umgeladen. Um die Impulsabgabe und die damit verbundene Umladung des Akkumulators von Uθ auf U0 zu erreichen, wird eine Schaltung gemäß Abbildung 11.2 verwendet. Die Hysterese des Schwellwertschalters wird so eingestellt, daß seine Schaltschwellen bei U0 und Uθ liegen. Ik0 Ik1 Ikn
xk
Q(ak ) xk · Id
U (ak )
Abb. 11.2 Blockschaltbild des Neurons Sobald das Membranpotential die Schwelle zur Impulsabgabe erreicht (ak = θ, U (ak ) = Uθ ), schaltet der Schwellwertschalter das Ausgangssignal auf xk = 1 um. Gleichzeitig wird der Eingangsstrom Ii = Ik0 + . . . + Ikn abgeschaltet und ein Entladestrom Id eingeschaltet. Dadurch sinkt das Membranpotential, die entsprechende Spannung U (ak ) nähert sich U0 . Erreicht das Membranpotential die andere Schwelle ak = 0, U (ak ) = U0 , so schaltet der Schwellwertschalter wieder um, und es beginnt erneut die Integration der Eingangssignale, während xk = 0 ist. Eine Möglichkeit, den Platzbedarf für den Integrationskondensator zu verringern, besteht im Einsatz eines MillerIntegrators. Genauere Untersuchungen zeigten jedoch, daß wegen des zusätzlichen Aufwandes für den notwendigen invertierenden Verstärker und eines isolierten Kondensators der Platzbedarf des gesamten Integrators auf diese Weise kaum verringert werden kann. Entladestromquelle Der Entladestrom xk Id für den Akkumulator wird von einer einfachen Stromquelle mit Schalter gemäß Abbildung 11.3b bereitgestellt.
11.1 Neuron UDD
199
UDD
Cgs,Q
Cgs,S MS
MQ Uref
Us Cgd,Q
(m) Um
(m) Um
Cgd,S Cgs,Q
Cgs,S MS Us
MQ Uref
(a) Cgd,S
(a) Cgd,Q
Ua
Ua Id
a)
b)
Abb. 11.3 Entladung der Membrankapazität durch eine einfache Stromquellenschaltung mit Schalter. Der Strom durch den Stromquellentransistor MQ wird mit einer Referenzspannung Uref eingestellt. Mit der Schaltspannung Us wird der Strom ein- und ausgeschaltet. Vernachlässigt man zunächst die Abhängigkeit ihres Ausgangsstromes Id von der Ausgangsspannung Ua , so ergibt sich gemäß Abbildung 11.2 die einfache Beziehung zwischen Id und der Impulsdauer td : td = (Q0 − Qθ )/Id .
(11.8)
Der Betrag der Abweichung der Impulsdauer bei einer Abweichung des Entladestromes beträgt in linearer Näherung ∆td ∆Id = (11.9) td Id .
Das gilt in ähnlicher Weise auch für die genauere Betrachtung der Entladung eines nichtlinearen Kondensators mit einem spannungsabhängigen Strom: td =
Z
U0
Uθ
C(U ) dU . I(U )
(11.10)
Für den Betrag der Abweichung der Impulsdauer bei einer Abweichung des Entladestromes folgt mit dem Mittelwertsatz der Integralrechnung in linearer Näherung ∆td ∆Id = (11.11) td Id (U∗ ) , mit Uθ ≤ U∗ ≤ U0 .
200
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Aus den in Kapitel 12 beschriebenen Systemsimulationen läßt sich schlussfolgern, daß für eine über die Neuronen normalverteilte Impulsdauer td eine relative Standardabweichung von σ(td ) ≤ 1 % toleriert werden kann. Wegen (11.9) bzw. (11.11) muß auch der Entladestrom Id dieselbe geringe relative Abweichung haben. σ(Id ) σ(td ) = ≤ 0.01. Id td
(11.12)
Wie im Anhang 18.3 dargestellt, ist die lokale zufällige relative Abweichung des Drainstromes im Bereich schwacher Inversion am größten. Die Beziehung (11.12) ist unabhängig vom gewählten Entladestrom sicher erfüllt, wenn sie im Bereich schwacher Inversion erfüllt ist. Auf der Grundlage der Mismatch-Parameter der Fertigungstechnologie ergibt sich mit der Annahme L > 0, 8 µm eine minimale Gate-Fläche von 9 µm2 , um σ(td )/td ≤ 0,01 zu erfüllen. Mit W = L = 3 µm ist auch die Annahme über die minimale Gate-Länge erfüllt. Der Schalttransistor wird an der Source-Seite des Stromquellentransistors angeordnet, vgl. Abbildung 11.3b. Gegenüber der genauso einfachen Anordnung in Abbildung 11.3a hat sie den Vorteil der geringeren Störung der Membranspannung Ua beim Ein- und Ausschalten der Entladestromquelle, wie im Folgenden kurz begründet wird. Unmittelbar vor dem Einschalten der Entladestromquelle hat die Membranspannung Ua den Wert Uθ erreicht, der in der gewählten Implementierung etwa der Schwellspannung eines NMOS-Transistors entspricht. In der Schaltung a) ist der Knoten (m) dabei durch den Stromquellentransistor MQ auf etwa UDD aufgeladen worden. Beim Einschalten kommt es zum Ladungsausgleich zwischen den Knoten (a) und (m), der wegen des sehr großen Kapazitätsverhältnisses Ca /CgdQ ≫ 1 auf Um = Ua ≈ Uθ führt. Durch Ladungsinjektion aus dem Schalttransistor MS kommt es zu einer Abweichung von dieser Spannung. Zur Abschätzung dieser Abweichung durch (18.19) wird angenommen, daß der Schalttransistor MS nur während des Schaltvorganges einen Kanal besitzt und die Kanalladung sofort wieder abgibt, da der Betrag seiner Schwellspannung durch den Body-Effekt erhöht ist. Deshalb ist QC zu vernachlässigen. Außerdem können gegenüber C2 = Ca die übrigen Kapazitäten vernachlässigt werden: ∆Ua,1 ≈ −
(Us1 − Us0 ) · (Cg1 + Cg2 ) . Ca
(11.13)
Die Gate-Drain- und Gate-Source-Kapazität des Schalters wird wesentlich von der Overlap-Kapazität bestimmt, d.h. Cg1 = Cg2 = Cov = 0,4 fF · W/µm. Das Einsetzen ergibt für die Spannungsänderung beim Einschalten in Schaltung a): ∆Ua ≈
3,6 fC = 3 mV. 1,2 pF
(11.14)
11.1 Neuron
201
Bis zum Ausschalten der Entladestromquelle hat die Membranspannung Ua nahezu die Betriebsspannung erreicht, und der Stromquellentransistor MQ bleibt gerade noch in der Sättigung des Weak-Inversion-Bereiches. Beim Ausschalten in der Schaltung a) teilt sich die injizierte Ladung auf die Knoten (a) und (m) auf. Beim schnellen Ausschalten werden nur die Hälfte der Kanalladung und die Ladung der Overlap-Kapazität am Knoten (a) auf letzteren übertragen, m = 1/2 in (11.15). Beim langsamen Ausschalten gelangt dagegen nahezu die gesamte injizierte Ladung auf (a), mit m = 1 in (11.15). Der auf die parasitären Kapazitäten am Knoten (m) gelangte Teil der injizierten Ladung wird anschließend durch den Stromquellentransistor MQ zum Betriebsspannungsanschluss abgeleitet. Zur näherungsweisen Berechnung der Spannungsänderung am Knoten (a) ′ (t′2 ) =1,5 V-1,4 V=0,1 V verwird wieder (18.19) mit Q′C aus (18.18) und U1,2 wendet. Es ergibt sich Q′C + (Us1 − Us0 ) · (Cg1 + Cg2 ) Ca 6,2 fC + 3,6 fC =m· = m · 8,2 mV . 1,2 pF
∆Ua,2 ≈ m
(11.15)
Der in der Praxis erreichte Wert liegt zwischen 4 und 8 Millivolt. In Schaltung b) wurde der Knoten (m) vor dem Einschalten der Entladestromquelle durch den Stromquellentransistor MQ auf die Spannung Uθ des Knotens a aufgeladen. Beim Einschalten des Schalttransistors MS werden seine Kanalladung QC und die zur Umladung seiner Parasitärkapazitäten erforderliche Ladung aus dem Betriebsspannungsanschluß entnommen, da durch den Einschaltvorgang ein Spannungsausgleich zwischen dem Knoten (m) und dem Betriebsspannungsanschluß erfolgt. Lediglich durch zusätzliche Kopplung, die durch ein geeignetes Layout sehr klein gehalten werden kann, kommt es zu einer sehr kleinen Änderung der Membranspannung. Beim Ausschalten in Schaltung b) verteilt sich die injizierte Ladung auf den Betriebsspannungsanschluß und den Knoten (m). Solange der Kanal des Schalttransistors MS während des langsamen Abschaltens noch besteht, fließt diese Ladung in den Betriebsspannungsanschluß, mit m ≈ 0 in (11.15). Im für diese Schaltung ungünstigen Fall des schnellen Ausschaltens gelangt die Hälfte der insgesamt durch MS injizierten Ladung auf (m), mit m = 1/2 in (11.15). Dieser Teil der injizierten Ladung gelangt anschließend über den Stromquellentransistor auf den Knoten (a) und verursacht eine Spannungsänderung von höchstens 4 mV. In beiden Fällen treten in Schaltung b) die kleineren Abweichungen gegenüber dem idealen Verhalten auf, weswegen ihr der Vorzug gegeben wird. Schwellwertschalter Der Schwellwertschalter soll eine große Hysterese haben, um den durch die Betriebsspannung vorgegebenen Bereich gut auszunutzen, damit die Kapazität
202
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
des Integrators so klein wie möglich bleiben kann. Der realisierte Schwellwert θ des Neurons ist proportional zur Hysterese. Deshalb soll sie von außen einstellbar sein. Systemsimulationen (siehe Kapitel 12) ergaben auch hier eine maximal zulässige relative Standardabweichung für den Schwellwert von unter einem Prozent. Wegen der Proportionalität gilt diese Forderung auch für die Hysterese. Die Forderungen werden von einem Schwellwertschalter erfüllt, der als Differenzverstärker mit positiver Rückkopplung realisiert ist (Abbildung 11.4). Das auf den nicht-invertierenden Eingang zurückgeführte Ausgangssignal wird so begrenzt, daß es entweder den oberen oder unteren Schwellwert des Schwellwertschalters annimmt.
Ud
v
Ufb Uminus
Uplus
Abb. 11.4 Funktionsprinzip des Schwellwertschalters Zur Erklärung der Funktion wird vereinfachend eine harte Begrenzung angenommen: Uplus + Uminus Ufb = min max v · Ud + , Uminus , Uplus , 2
(11.16)
wobei v ≫ 1 die Differenzverstärkung und Uminus und Uplus der untere bzw. obere Schwellwert sind. Für Eingangsspannungen zwischen den Schwellwerten Uminus +∆U < Ua < Uplus − ∆U gibt es zwei stabile Zustände: Ufb = Uplus und Ufb = Uminus . Von Ufb = Uplus schaltet der Schwellwertschalter mit Ua > Uplus − ∆U auf Ufb = Uminus um. Entsprechend schaltet er von Ufb = Uminus mit Ua < Uminus + ∆U auf Ufb = Uplus um. Aus (11.16) ergibt sich: ∆U = (Uplus + Uminus )/2v. Die Schaltschwellen können als Referenzspannungen an die gesamte Schaltung für alle Neuronen gemeinsam angelegt werden. Die Eingangs-Offsetspannung Uoffs des Verstärkers im Schwellwertschalter, die zu einem Versatz Ua′ = Ua + Uoffs der Eingangsspannung führt, wirkt sich auf den oberen und unteren Schwellwert gleich aus und wird deshalb vollständig kompensiert. Zusammen ermöglicht dies die Einhaltung eines nahezu gleichen Schwellwertes θ für alle Neuronen. Die Schaltung des Somas mit Integrationskondensator bzw. Akkumulator, Schwellwertschalter und Umschalter für den Eingangsstrom ist in Abbildung 11.5 dargestellt. Der Schwellwertschalter ist ein dreistufiger Verstärker
11.1 Neuron
MP5 MP4 Utd MN6 Iin Pn i=1 Iki
0,5 0,8
Uswitch MN2
3 3
MN5 Ua
14 14
20nA
MP1 MP0 0,5 0,8
0,5 0,8
MN0 0,5 2
0,5 0,8
203
Uplus MP3
MN1 MN4 Ufb Uminus MN13 0,5 Ubias 2
MP7
MP8
MP11 Upulse
20nA
MN8
MN14
Abb. 11.5 Schaltung des Soma: Die W/L-Verhältnisse der Transistoren sind in 1µm 1µm angegeben, wenn sie nicht minimal, d.h. mit W/L=0,4/0,5 dimensioniert sind. mit der spannungsbegrenzten positiven Rückkopplung durch den Umschalter MP3 und MN4 . Sein Ausgangssignal Uswitch steuert auch den Umschalter für den Eingangsstrom MP5 und MN6 . Die erste Stufe wird von einem differentiellen Paar (MN1 , MN2 ) mit Stromspiegel (MP0 , MP1 ) gebildet. Der Tail-Strom des differentiellen Paares (durch MN0 ) fließt ununterbrochen. Wegen der Verlustleistung ist er so klein wie möglich zu wählen. Jedoch nimmt bei sinkender Tail-Stromstärke die Geschwindigkeit der gesamten Schaltung beim Umschaltvorgang ab. Damit entsteht nicht nur ein Zeitversatz zwischen dem Überschreiten der Schaltschwelle durch das Eingangssignal und der Flanke des Ausgangssignales, sondern die Schaltung verbleibt auch länger im Bereich zwischen den stabilen Zuständen. Dabei fließt in den Ausgangsstufen des Schwellwertschalters erheblicher Querstrom. Ein günstiger Kompromiss konnte für einen Tail-Strom von 20 nA, der in der Größenordnung des Aussteuerbereiches des Eingangsstromes Ia liegt, erreicht werden. Die zweite Stufe ist eine einfache PMOS-Source-Stufe (MP7 ) mit Stromquellenlast (MN13 ), die wesentlich zur Spannungsverstärkung des Verstärkers im Schwellwertschalter beiträgt. Ihr Strom wurde aus den gleichen Gründen wie der Tail-Strom des Differenzverstärkers festgelegt. Der Einfachheit halber wurden beide Stromquellentransistoren gleich dimensioniert. Die dritte Stufe ist ein einfacher Inverter (MN8 , MP8 ) in minimaler Dimensionierung. Das Eingangssignal ist bis zu seinem Eingang so hoch verstärkt, daß der Querstrom verursachende Eingangsspannungsbereich in den relevanten Betriebsfällen schnell durchschritten wird. Die positive Rückkopplung erfolgt durch den Umschalter (MN4 , MP3 ), über den je nach Schaltzustand die obere (Uplus ) oder untere (Uminus ) Schaltschwelle an den nichtinvertierenden Eingang des Verstärkers angelegt wird. Die Schaltung wird durch den Ausgangsinverter (MP11 und MN14 ), die Entladestromquelle (MP4 und MP5 ) und den Schalttransistor MN6 ergänzt. Der Ausgangsinverter (MP11 und MN14 ) entkoppelt das high-Signal der neuronalen Impulse zur Weiterleitung an die übrigen Neuronen des Netzwerks.
204
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Mit dem Schalttransistor MN6 und der abschaltbaren Entladestromquelle wird zwischen den Zuständen „Integration der Einganssignale x = 0“ und „Impulsabgabe x = 1“ des Neurons umgeschaltet. Dimensionierung Für Transistoren in Analogschaltungen sollte im allgemeinen l > lmin gewählt werden. Die Transistoren des Differenzverstärkers MN1 , MN2 , MP0 und MP1 sollten näherungsweise paarweise übereinstimmen. Aus den Angaben zum Matching liest man ab, daß die Übereinstimmung für Längen unterhalb 2 · lmin stark abnimmt. Für die Weite der Transistoren ist für die verwendete Technologie keine derartige Einschränkung angegeben. Deshalb wurden die vier Transistoren mit W/L = wmin /2 lmin = 500 nm/800 nm dimensioniert. Für die meisten anderen Transistoren genügte bereits W/L = wmin /lmin = 500 nm/400 nm, um ein genügend schnelles Umschalten zu erreichen. Nur die als Stromquellen verwendeten Transistoren MN0 und MN13 werden so lang gewählt, daß der Einfluss ihres Ausgangswiderstandes vernachlässigbar bleibt. Ohne ein Optimum zu suchen, wurde dies mit W/L = wmin /5 lmin = 500 nm/2µm erreicht. Durch eine weniger großzügig gewählte Länge hätte sich hier nicht nennenswert Fläche sparen lassen. Ein weiterer Aspekt für die Dimensionierung ist die Dauer des Umschaltvorganges. Sie darf die Dauer des Impulses nicht wesentlich beeinflussen. Deshalb sollte die Differenz zwischen der Dauer des Umschaltens zu Beginn des Impulses (von Ufb = Uminus nach Ufb = Uplus ) und der Dauer des Umschaltens am Ende des Impulses (von Ufb = Uplus nach Ufb = Uminus ) von Neuron zu Neuron nicht zu sehr schwanken. Das läßt sich am einfachsten sicherstellen, indem die Dauer des Umschaltvorganges selbst genügend klein gehalten wird. Ohne die Abweichung der genannten Differenz von Neuron zu Neuron noch einmal zu überprüfen, wurde für die Dauer des Umschaltvorganges max(tr , tf ) ≤ td /100 festgelegt, weil für eine über die Neuronen normalverteilte Impulsdauer td eine relative Standardabweichung von höchsten 1% zugelassen war. Dynamisches Verhalten Pn Legt man an das Neuron Eingangssignale Ik0 . . . Ikn mit ISk = i=1 Iki an, so werden für ISk > 0 Impulse mit einem Abstand von tI = (Q0 − Qθ )/ISk erzeugt. Für ISk ≤ 0 verharrt das Neuron im Zustand x = 0. Für ISk < 0 steigt dabei die Spannung Ua an, bis sie außerhalb des Betriebsspannungsbereiches begrenzt wird, indem die parasitäre Diode des Drain-Gebietes von MP 4 in Abbildung 11.5 leitfähig wird und den Eingangsstrom ISk ableitet. In der Schaltung des neuronalen Netzes in diesem Buch kommt nur der Fall ISk > 0 mit Impulserzeugung zum Einsatz. Auch bei vollständig abgeschalteten Eingaben führen die Ausgangstransistoren der adaptiven Synapsen
11.1 Neuron
205
(Abschnitt 11.2) und der kontinuierlichen Eingabe (Abschnitt 11.4) noch einen Weak-Inversion-Strom, der zu ISk > 0 führt. Abbildung 11.6 zeigt den Verlauf der Spannung Ua und des Impulsausganges Upulse bei konstantem Eingangssignal.
V 1
Upulse
0 0
0.1
0.5
0.4
0.3
0.2
0.6
1
0.9
0.8
0.7
V 1 0 1.6 1.4 V 1.2 1 0.8 0.6 0.4 0.2 0
Uswitch 0
0.1
0.5
0.4
0.3
0.2
0.6
1
0.9
0.8
0.7
Ua
0
0.1
0.3
0.2
0.4
0.5
0.6
1
0.9
0.8
0.7
t / ms
Pn Abb. 11.6 Impulserzeugung im Neuron bei konstanter Eingabe i=1 Iki = 3, 5 nA. Simulierter Verlauf der Signale der Schaltung in Abbildung 11.5. Um das Verhalten an den Umschaltpunkten (Abb. 11.7) beschreiben zu können, muß der Schwellwertschalter zusammen mit seinem Eingangssignal ISk und dem Umschalter zwischen diesem und der Entladestromquelle (MN6 , MP5 ) betrachtet werden. 1.6
1.6
1.4
Ua Upulse Uswitch
1.4
V 1.2
1.2
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-3
-2
-1
0
1
t-t1 / ns
-20
-10
0
10
20
30
40
t-t2 / ns
Abb. 11.7 Details des Verlaufes der Signale in Abbildung 11.6 an den Umschaltpunkten Upulse (t1 ) = UDD /2, Ua (t1 ) ≈ Uminus und Upulse (t2 ) = UDD /2, Ua (t2 ) ≈ Uplus . Während der Integrationsphase ist Ufb = Uminus , und aus dem Integrationskondensator fließt der Eingangsstrom Ia = ISk heraus. Die MembranspaRt nung Ua folgt dem Integral des Eingangssignales: Ua (t) = Uplus − tf Ia (t′ ) dt′ .
206
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Erreicht die Membranspanung Ua die untere Schaltschwelle Uminus , so steigt Ufb , und durch die positive Rückkopplung schaltet das Neuron in die Impulsphase um. Gleichzeitig wechselt der Eingangsstrom des Integrators von Ia = ISk nach Ia = Id . Während der Impulsabgabe ist Ufb = Uplus , und die Membranspannung steigt an, bis sie Uplus erreicht, und das Neuron wieder in die Integrationsphase umschaltet. Neben der positiven Rückkopplung durch das Umschalten der Schaltschwelle mit den Transistoren MP3 und MN4 besteht eine negative Rückkopplung durch das Umschalten zwischen dem Eingangssignal und der Entladestromquelle mit den Transistoren MP5 und MN6 . Es muß sichergestellt werden, daß an den Umschaltpunkten die positive Rückkopplung überwiegt und das Neuron weder einen stabilen Arbeitspunkt erreicht noch sich in eine Schwingung um den unteren Umschaltpunkt herum begibt. Ein stabiler Arbeitspunkt würde einen Fixpunkt des Systems voraussetzen: Ia = 0
(11.17)
Ua = Ufb .
(11.18)
Gleichung (11.17) wird Pnerreicht, wenn der Umschalter (MN6 , MP5 ) zwischen dem Eingangsstrom i=1 Iki und Entladestrom Id sich in einer Zwischenstellung befindet. Wegen des Integrationskondensators ist Ua dabei nahezu unveränderlich. Deshalb wird (11.18) mit Ufb ≈ Uminus bzw. Ufb ≈ Uplus erreicht. Die gemeinsame Gate-Spannung Uswitch der Transistoren MP3 , MN4 , MP5 und MN6 , bei der Pn dies der Fall ist, kann wie folgt abgeschätzt werden. Der Eingangsstrom i=1 Iki liegt im Weak-Inversion-Bereich des Schalttransistors MP5 der Entladestromquelle. Um (11.17) zu erfüllen, liegt Uswitch zwischen UDD und UDD − Uth . Bei dieser Spannung ist MN4 durchgesteuert, wenn Uminus nicht zu groß gewählt wird. MP3 führt einen Weak-Inversion-Strom, der durch MN4 fließt und dort eine sehr geringe Drain-Source-Spannung hervorruft. Es ist deshalb Ufb ≈ Uminus . Ein Fixpunkt kann deshalb höchstens am unteren Umschaltpunkt auftreten. In der vorliegenden Schaltung sind die Arbeitspunkte, die in der Umgebung des unteren Umschaltpunktes durchlaufen werden, ebenso instabil wie der Fixpunkt bei der Gleichspannungsanalyse. Dies zeigen Kleinsignalanalysen, deren Ergebnisse in Abbildung 11.8 dargestellt sind. Die drei Teile des Diagramms A stellen einen Ausschnitt aus Abbildung 11.6 dar. Der Pfeil kennzeichnet den unteren Umschaltpunkt Ua ≈ Uminus . In den Diagrammen B1 und B2 ist die Akkumulatorspannung Ua in der Umgebung des Umschaltpunktes dargestellt sowie die Spannung der positiven Rückkopplung Ufb und des Stromes in Akkumulator Ia . Zur besseren Übersicht wurde der Nullpunkt der Zeitachse an die Stelle Ua (t0 ) = Ufb (t0 ) verschoben. In den Diagrammen C1 und C2 ist der interessante Bereich noch einmal mit gestreckter Zeitachse bei unverändertem t0 und mit denselben Ordinaten dargestellt. An ausgewählten Stellen (E bis L) wurden Kleinsi-
11.1 Neuron Upulse
Uswitch Ua
500 nA 50 5 0 -5 -50 -500
Ia
Ia
B2
C2 E
0.41
V
F
Ua Ufb
Ua Ufb
B1
C1
G
207
HJ K L
0.40 A
0.39 -100 0.2 0.25 0.3 t / ms D
0
100 200 300 400 350 t-t0 / ns
420
t-t0 / ns
E
F
G
H
J
K
L
Abb. 11.8 Kleinsignalverhalten des Soma am Gleichgewichtspunkt und in der Umgebung des unteren Umschaltpunkts. gnalanalysen des Soma durchgeführt. Das Eingangssignal ist eine KleinsignalStromquelle am Akkumulator (d.h. parallel zu Ua ), das Ausgangssignal ist die Schaltspannung Uswitch . Die Kleinsignalanalysen an verschiedenen Arbeitspunkten sind in den Diagrammen D bis L als Ortskurven der Transferimpedanz Z(p) := U switch (p)/I a (p) in einem verzerrten Koordinatensystem dargestellt. Der Betrag der Darstellung A(p) ist |A(p)| := k log(|Z(p)|/Z0 ) mit passend gewählten k und Z0 , während das Argument bei der Darstellung beibehalten wird: arg A(p) := arg Z(p).) Der untersuchte Frequenzbereich reicht bis 10 GHz, Frequenzdekaden sind durch Punkte entlang der Ortskurven markiert. Der Punkt mit f ≈ 0 ist durch einen kleinen Kreis hervorgehoben. Diagramm D zeigt das Kleinsignalverhalten für den instabilen Gleichgewichtspunkt der Schaltung bei der Gleichspannungsanalyse. Die übrigen Kleinsignalanalysen wurden an den mit gleichen Buchstaben gekennzeichneten Arbeitspunkten, die während des Betriebs durchlaufen werden, durchgeführt.
208
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Eine genaue Betrachtung zeigt, daß die in positiver Winkelrichtung gewandte Spitze in den Diagrammen D bis H auf zwei dominante Polstellen in der rechten Halbebene der komplexen Frequenz p zurückgeht. Die Instabilität dieser Arbeitspunkte kann auch am Verlauf der Ortskurve durch die Quadranten I, II zurück in I und IV abgelesen werden. D.h. nach dem die Akkumulatorspannung Ua die untere Schaltschwelle geringfügig unterschritten hat, befindet sich das Soma in einem instabilen Arbeitspunkt, der zum Umschalten führt. Erst nachdem sich die Schaltschwelle durch die positive Rückkopplung deutlich geändert hat, durchläuft die Schaltung wieder eine Folge lokal stabiler Arbeitspunkte, wie aus den Diagrammen J bis L abgelesen werden kann. Es ist ersichtlich, daß die Schaltgeschwindigkeit im sinnvollen Eingangssignalbereich stets ausreichend groß ist. Die Dauer des Umschaltvorganges und die Anstiegs- und Abfallzeit des Ausgangssignals sind kürzer als ein Hundertstel der Ausgangsimpulsdauer von 1 µs. Die Ergebnisse zeigen, daß die Anforderungen an die Schaltung des Soma mit der Dimensionierung mit Minimaltransistoren und den empirisch festgelegten Werten für die Länge und Arbeitspunktströme der Analogtransistoren erreicht werden. Layout Die vorangegangenen Überlegungen zur optimalen Schaltungsdimensionierung auf der Basis von analytischen Rechnungen und Netzwerksimulationen haben die erforderlichen Parameter für die geometrischen Abmessungen der Transistoren und Kapazitäten geliefert. Die Herausforderung besteht darin, ein möglichst flächensparendes Layout zu konstruieren, da diese Zelle vervielfacht (hier 128×128) im Chip eingesetzt wird. In Abbildung 11.9 ist die Ansicht des vollständigen Layouts einer Neuronzelle mit den in den folgenden Abschnitten beschriebenen Synapsenschaltungen sowie mit Test- und Ausleseschaltungen gezeigt.
Abb. 11.9 Layoutansicht einer Neuronschaltung mit vier adaptiven Synapsen sowie Auslese- und Testschaltungen
11.2 Adaptive Synapsen
209
11.2 Adaptive Synapsen Die Blockstruktur einer Hardwareimplementierung des Synapsenmodells ist in Abbildung 11.10 gezeigt. Die Akkumulator- und Schwellwertschaltung im rechten Teil des Bildes ist mit vier einkoppelnden Synapsen beschaltet. Jede dieser Synapsen besteht aus dem Speicher für Koppelgewichtswerte wkl und einer Adaptionsschaltung, die diese Gewichtswerte entsprechend der Adaptionsregel (10.25) in Abhängigkeit von den Akkumulatorpotentialen beeinflußt.
xk ak
xl xl
Adaption
wkl
Abb. 11.10 Schaltung eines Neurons mit vier einkoppelnden Synapsen Die Spannung über dem aus einem MOS-Transistor gebildeten Integrationskondensator sinkt von der oberen Schaltspannung des Schmitt-Triggers bei ak = 0 bis zur unteren Schaltspannung bei ak = θ ab. Die Schaltung der Synapsen soll folgende Eigenschaften haben: • • •
analoge Speicherung des Synapsengewichts wij , kontinuierliche Änderung des Synapsengewichtes proportional zu einem Eingangssignal der Synapsenschaltung: Iadapt ∝ w˙ ij , Ausgangsstrom proportional zum Synapsengewicht und mit dem neuronalen Ausgangssignal xj geschaltet: Ipulse ∝ wij xj .
Speicherung der Synapsengewichte Die besonders einfache Realisierung in Abbildung 11.11 ergibt sich, wenn das Synapsengewicht wij als Gate-Ladung eines MOS-Transistors MN0 gespeichert wird: QG = Q0 wij . Sie kann durch den Eingangsstrom Iadapt kontinuierlich verändert werden: w˙ ij = Q˙ G /Q0 = Iadapt /Q0 . Der Drainstrom des Transistors wird geschaltet und dient als Ausgangssignal. Damit er annähernd proportional zur Gate-Ladung ist, wird der Transistor - wie im näherungsweise linearen Strom-Spannungswandler von Vittoz [78] - im Ohmschen Bereich betrieben. Dazu wird die Drain-Spannung von MN0 mit Hilfe eines weiteren Transistors MN5 nahezu konstant gehalten. MN5 wird mit konstanter Gate-Spannung und im Weak-Inversion-Bereich betrieben. Seine Gate-Source-Spannung ändert sich um nur ca. 65mV je Dekade des
210
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren Ipulse MN5
MN6 3 3
Ucdiv2
3 3
Ucdiv1
Upulse MN3
Uwsetval Uwsetcol
MP5
Uwsetrow
MP4
3 0,4
3 0,4
MN4
MN0 Iadapt
1 80
Uweight
Abb. 11.11 Schaltung einer Synapse Drainstromes. Der nutzbare Spannungsbereich am Gate des Gewichtsspeichertransistors (Uweight ) liegt zwischen etwa 0, 4 V (Schwellspannung von MN0 ) und 1, 4 V , also etwa 0, 1 V unterhalb UDD wegen der Sättigung der Schaltung, die den Adaptionsstrom Iadapt bereitstellt. Der Bereich des Gewichtsstroms wurde mit Ipulse = (0 . . . 2) nA und der des Adaptionsstromes für die kontinuierliche Adaption entsprechend (10.25) mit Iadapt = (−2 . . . 2) nA festgelegt. Die maximale Änderungsrate des Gewichts beträgt max(|w˙ ij |) = 0, 01. In der Systemsimulation wurden Gewichtswerte bis etwa wij ≤ 0.2 erreicht. Um den Gewichtsspeicher gut auszunutzen, soll das maximale Gewicht dem nutzbaren Spannungsbereich von ca. 1 V entsprechen. Daraus ergibt sich eine erforderliche Gate-Kapazität des Gewichtsspeichertransistors von max(Iadapt ) td max(|wij |) 1V max(|w˙ ij |) 2 nA · 10 µs · 0, 2 = 1V · 0, 01 = 400 fF.
CG,MN0 =
(11.19)
Dem entspricht eine Gate-Fläche von W · L = 80 µm2 . Um die Funktion des näherungsweise linearen Spannungs-Strom-Wandlers sicherzustellen, muß MN0 im Ohmschen Bereich und in starker Inversion betrieben werden. Das kann jedoch nur mit einem Drainstrom von ca. 100 nA erreicht werden. Um dennoch den geringen Ausgangsstrombereich von 0 . . . 2 nA
11.2 Adaptive Synapsen
211
zu erreichen, wird ein Stromteiler aus den Transistoren MN5 und MN6 eingesetzt. Es ist Ucdiv1 −Ucdiv2 ID6 nUT . =e ID5
(11.20)
Mit ID6 /ID5 ≈ 100 kann MN0 mit W/L = 1 µm/80 µm dimensioniert werden. Im Layout wird MN0 durch eine Reihenschaltung aus 8 Transistoren mit je W/L = 1 µm/10 µm ersetzt, was das Verhalten der Schaltung jedoch nicht wesentlich ändert. Der Drain-Strom der gesamten Anordnung wird durch die Schalttransistoren MN3 und MN4 abgeschaltet. Sie können nicht durch einen einzigen Schalttransistor in Reihe mit MN0 ersetzt werden, weil sonst im ausgeschalteten Zustand ein Strompfad von der Betriebsspannung UDD zum Ausgang Ipulse bestünde. Die Schaltung wird ergänzt durch zwei Auswahltransistoren MP4 und MP5 zur Voreinstellung des Gewichts mit einer extern anzulegenden Spannung Uwsetval . Wegen des Spannungsbereiches (0, 4 . . . 1, 5) V werden dafür PMOSTransistoren eingesetzt. Abbildung 11.12 zeigt den Verlauf der Spannung Uweight am Gewichtsspeicher und den Ausgangsstrom Ipulse bei eingeschalteter Synapse in
Abb. 11.12 Spannung am Gewichtsspeicher und Ausgangsstrom der Synapse bei Upulse = UDD
212
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Abhängigkeit von der als Ladung Qweight dargestellten Gewichtsstärke. Die recht große Abweichung vom angestrebten linearen Zusammenhang Ipulse ∝ Qweight − Q0 stört die Synchronisation nicht wesentlich und wird zugunsten der Einfachheit der Schaltung in Kauf genommen. Die Adaptionsvorgänge verlaufen so langsam, daß die Synapsenschaltung quasistatisch betrieben wird und ihr dynamisches Verhalten bis auf die Integration des Adaptionsstromes Iadapt vernachlässigt werden kann. Die Störung der Membranspannung Ua des nachgeschalteten Neurons beim Ein- und Ausschalten der Synapse wird dadurch gering gehalten, daß der Schalttransistor MN4 vom Ausgang durch den Stromteilertransistor MN6 getrennt ist. Adaption der Synapsengewichte Bereits zu Beginn der Schaltungsentwicklung wurde der Ansatz verfolgt, die Adaptionsregel nur mit grober Näherung zu implementieren, um die Schaltung einfach, stromsparend und klein zu halten. Die Adaptionsregel entsprechend Gleichung (10.25) hat die Form: (11.21)
w˙ij = −γwij + µ · (ai − θ/2) .
Das Produkt µ · (ai − θ/2) kann durch einen einfachen Zwei-QuadrantenMultiplizierer dargestellt werden, der aus einem differentiellen Paar mit einer Tail-Stromquelle besteht. An der Tail-Stromquelle wird der Faktor µ eingestellt. An die beiden Eingänge des differentiellen Paares werden in Form von Spannungen das Membranpotential als Ua und der feste Wert θ/2 angelegt. Abbildung 11.13 zeigt die gesamte Adaptionsschaltung.
I(w˙ij ) ai
U(ai )
Ma
I(γ) I(µ)
Uweight
wij
Mb
U(θ/2)
Mγ
Uwmin
Abb. 11.13 Schaltungsimplementierung der Adaptionsfunktion. Die durch diese Schaltung realisierte Differentialgleichung lautet: ( i /2 ) tj < t < tj + td,j −γ(wij ) + µ tanh( ai −θ vi w˙ij = (11.22) −γ(wij ) sonst ,
11.2 Adaptive Synapsen
213
wobei vi eine Normierungskonstante ist. Der Term γwij wurde durch die in Abbildung 11.14 (oben) dargestellte Funktion γ(wij ) (Strom I1 ) ersetzt. Um genügend große Spannungsbereiche für das Eingangssignal U (ai ) sowie für die Ausgangsspannung Uweight erlauben zu können, muß das Ausgangssignal durch zwei Stromspiegel zusammengefügt werden. Der Term γwij wird durch einen Transistor Mγ mit fester Gate-Source-Spannung realisiert.
0
−γ · wij
-0.2
I1
-0.4 -0.6 -0.8 -1
0
1
0.2
0.4
0.6
wij /wmax
1
0.6
ai /θ
1
µ(ai − θ/2) I2
0.5 0 -0.5 -1
0
0.2
0.4
Abb. 11.14 Vergleich der idealisierten Adaptionsfunktion mit der implementierten Funktion für die beiden Terme γwij (oben) und µ · (ai − θ/2) (unten). Der Adaptionsstrom ist proportional zur Gewichtsänderung und setzt sich aus zwei Teilströmen zusammen: w˙kl ∼ I(w˙kl ) = I1 + I2 . In der Systemsimulation konnte gezeigt werden, daß trotz stark vereinfachenden Annahmen die Synchronisation der Neuronen nicht wesentlich beeinträchtigt wird: Der Transistor Mγ kann so betrieben werden, daß er bereits bei sehr kleinen Spannungen Uweight − Uwmin , denen auch kleine Gewichtswerte entsprechen, in die Sättigung kommt. Da nur positive Gewichtswerte Verwendung finden, hat sein Verhalten für Uweight < Uwmin keine Bedeutung. Auch die Eingangsspannung des differentiellen Paares vom Multiplizierer, Ma und Mb , braucht nicht auf den näherungsweise linearen Bereich |Ua,i − Uθ /2| < 2nUT beschränkt werden. Die Spannung Uweight des Gewichtsspeichers kann direkt angelegt werden. Die in Abbildung 11.13 gezeigte Implementierung stellt eine relative grobe Näherung der Adaptionsregel (10.25) dar. Diese wird akzeptiert, weil zur
214
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
VLSI-Implementierung größerer Netzwerke besonders flächensparende und verlustleistungsarme Schaltungen verwendet werden müssen und nur die Fähigkeit zur Synchronisation sichergestellt werden muß.
11.3 Bildsensoren Dieser Abschnitt stellt Schaltungen vor, die der Stimulierung neuronaler Netzwerke mit Bildinformationen dienen. Als Bildsensor soll ein System zur ortsauflösenden Messung der Strahlungsleistung von sichtbarem Licht verstanden werden, welches der Aufnahme von Bildern dient. Bildsensoren auf Halbleiterbasis bestehen üblicherweise aus einer matrixförmigen Anordnung von separaten Photodetektoren, die allgemein als Pixel bezeichnet werden. Über eine Optik wird ein reales Bild auf den Bildsensor geworfen, welches von den Photodetektoren in elektrische Signale umgewandelt wird, die proportional zur empfangenen Strahlungsleistung sind. Zum Auslesen des aufgenommenen Bildes werden die Pixel der Matrix häufig sequentiell angesteuert, da die Anzahl der verfügbaren Signalwege meist begrenzt ist. Der analoge Signalwert wird digitalisiert und als Matrix gespeichert, deren Elemente somit den Grau- oder Farbwert eines gemessenen Bildpunktes repräsentieren. Für die vorgesehene Anwendung in neuronalen Netzwerken können die Signalwerte der einzelnen Pixel direkt als Eingangssignal eines neuronalen Elementes genutzt werden. Dabei kann entweder der Ausgangsstrom- bzw. Spannungswert des Pixels oder der in Form einer Pulsrate digital kodierte Analogwert weitergegeben werden. Der lichtelektrische Effekt Zur Realisierung von elektronischen Bildsensoren sind elektrische Bauelemente zur Messung von Strahlungsenergie notwendig. Sichtbares Licht ist als elektromagnetische Welle mit Wellenlängen zwischen 380 und 700 nm nicht direkt messbar. Zur Messung der Strahlungsintensität existieren neben photochemischen auch elektrische Verfahren. Entgegen der Vielfalt der möglichen chemischen Reaktionen auf die Einwirkung von Licht existiert jedoch nur ein physikalischer Effekt, der die Verbindung von Licht und elektrisch messbaren Größen erlaubt: der lichtelektrische Effekt. Der lichtelektrische Effekt, oder Photoeffekt, ist ein physikalischer Vorgang, bei dem Licht seine Energie vollständig an Elektronen abgibt. Beim äußeren Photoeffekt treten die Elektronen nach der Energieaufnahme aus der Oberfläche des beleuchteten Materials heraus. Die ersten Beobachtungen zum Photoeffekt stammen aus dem Jahr 1887 von Heinrich Hertz. Erst 1905 konnte der Photoeffekt von Albert Einstein mit der Quantentheorie des Lichts erklärt werden. Danach besitzt ein Lichtquant der Frequenz f die Energie E = h · f , wobei h das Plancksche Wirkungsquantum darstellt. Beim äußeren Photoeffekt tritt ein Elektron der Masse me aus dem Material aus, wenn die vom Photon übertragene Energie größer als die materialabhängige Austrittsarbeit WA ist. Allgemein gilt:
11.3 Bildsensoren
215
me · v 2 , (11.23) 2 wobei v die Geschwindigkeit des Elektrons nach dem Austritt aus dem Metall bezeichnet. h · f = Wa +
Halbleiter-Photosensoren Bei Halbleitern tritt der innere Photoeffekt auf. Dieser beruht auf demselben Prinzip wie der äußere Photoeffekt, die Elektronen treten hier jedoch nicht aus der Oberfläche des Materials aus. Wird ein Halbleiter beleuchtet, so nehmen die Elektronen die Energie der Lichtquanten auf und erhöhen ihr Energieniveau. Ist die aufgenommene Energie größer als die Bandlücke, so wechseln die Elektronen aus dem Valenzband in das Leitungsband und stehen als frei bewegliche Ladungsträger zur Verfügung. Der innere Photoeffekt bildet somit die Basis für die moderne Strahlungsmessung, die Photovoltaik und die Digitalkameratechnik. Photosensoren auf Halbleiterbasis sind besonders einfach in bestehende mikroelektronische Fertigungsprozesse integrierbar. Sie zeichnen sich gegenüber anderen Systemen durch höhere Empfindlichkeit und eine wesentlich geringere Verlustleistung aus. In digitale Systeme eingebettete Halbleitersensoren bieten außerdem gute Kompatibilität zu Rechensystemen. Dadurch werden die Verarbeitung von Bildsignalen und die Verwendung von konventionellen Speicherbausteinen zur Speicherung von digitalen Bildern möglich. Die Analyse der optoelektischen Eigenschaften von Halbleiter-Photosensoren basiert auf der Kenntnis der spektralen optischen Generationsrate G(λ, x), die die Anzahl der generierten Ladungsträger pro Zeiteinheit in Abhängigkeit von der Wellenlänge λ in einer Tiefe x des Halbleiters angibt. Eine detaillierte Darstellung der Zusammenhänge der optischen Generation ist im Anhang 18.4 enthalten. Photodiode Das neben dem Photowiderstand gebräuchlichste elektronische Bauelement zur Strahlungsmessung ist die Photodiode, die als eine mehrschichtige Halbleiterstruktur aufgebaut und damit eine oder mehrere Potentialbarrieren aufweist. In allen Halbleiterfertigungstechnologien sind derartige mehrschichtige Halbleiterstrukturen verfügbar, die für die Realisierung von Photodioden herangezogen werden können. Für eine gezielte und qualitative hochwertige Anwendung sind unter Umständen technologische Zusatzschritte, z.B. zur Modifikation des Dotierungsprofils, notwendig. Durch das elektrische Feld in den Raumladungszonen einer Mehrschichtstruktur (pn-Übergang) werden die durch Strahlungseinwirkung generierten
216
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Ladungsträger separiert und driften in entgegengesetzte Gebiete. Dieser Photostrom kann anschaulich als Verschiebung der U-I-Kennlinie der Diode dargestellt werden (Abbildung 11.15). Dabei wird beispielsweise in der Photovoltaik der Betrieb der Diode im 4. Quadranten zur Umwandlung von Strahlung in elektrische Energie ausgenutzt. Für die Strahlungsmessung interessanter ist der Betrieb der Photodiode in Sperrrichtung im 3. Quadranten. Im unbeleuchteten Fall fließt bei Anlegen einer Sperrspannung der Sperrstrom (Dunkelstrom) I0 , zu dem sich bei Beleuchtung der Photostrom Iph addiert. Idio
Udio
p
n
Potentielle Energie der Elektronen
Raumladungszone
e·(UD-Udio)
ohne Beleuchtung
Leitungsband
Udio
h·f Valenzband
Iph mit Beleuchtung
photogenerierter Stromfluß Iph
Abb. 11.15 Halbleitervorgang bei Bestrahlung und U-I-Kennlinie einer Photodiode Zur Bestimmung der spektralen Photostromdichte jph (λ) muß das Halbleitergleichungssystem unter Berücksichtigung der Photogeneration gelöst werden. Eine gebräuchliche Näherung ergibt sich unter der Annahme, daß alle photogenerierten Ladungsträger zum Stromfluss beitragen. Die spektrale Photostromdichte entspricht dann dem Integral der Generationsrate G(λ, x) über der jeweiligen Dicke der photoelektrisch aktiven Schicht des Halbleiters:
jph (λ) = e ·
Z
(x0 +d)
x0
G(λ, x)dx = e · ηq (λ) · π(λ, 0) · (1 − e−β(λ)·d ) · e−β(λ)·x0 .
(11.24) Die gesamte Photostromdichte jph kann durch Integration über die Wellenlänge berechnet werden. Dazu müssen die Photonenflußdichte π(λ, 0) der einfallenden Strahlung sowie die materialspezifischen Wellenlängenabhängigkeiten von ηq (λ) und β(λ) bekannt sein. Die Dicke d ist allgemein gegeben durch denjenigen Bereich des jeweiligen Bauelements, in dem eine genügend hohe Feldstärke vorhanden ist, um die generierten Ladungsträger zu trennen.
11.3 Bildsensoren
217
Für einen abrupten pn-Übergang berechnet sich diese Sperrschichtdicke ds nach [79] zu:
ds =
s
2ǫH (NA + ND ) · (UD − Udio ) eNA ND
mit
UD = UT · ln
NA ND . (11.25) n2i
Aus Gleichung (11.25) ist ersichtlich, daß der Photostrom mit zunehmender Dicke anwächst. Eine große Sperrschichtdicke ist somit vorteilhaft, um die ortsabhängige Generationsrate optimal zu nutzen. Voraussetzung dafür ist jedoch, daß die photogenerierten Ladungsträger aufgefangen werden können, bevor sie rekombinieren. Dazu muß ihre Driftlänge lD = µτ E größer als d sein. Die Driftlänge wird wiederum von der Beweglichkeit µ der jeweiligen Ladungsträger , deren Lebensdauer τ und der elektrischen Feldstärke E bestimmt und stellt als Beschreibung der Driftbewegung der Ladungsträger den mittleren Weg eines Ladungsträgers dar, der in Gegenwart eines elektrischen Feldes bis zur Rekombination zurückgelegt wird. Weiterhin ist zu erkennen, daß die spektrale Empfindlichkeit der Photodiode von der Tiefe x0 abhängig ist, in der sich die Raumladungszone befindet. Tiefe und Dicke sowie damit verbunden auch die spektrale Empfindlichkeit des Bauelements sind technologisch über das Dotierungsprofil und in Grenzen elektrisch über die Sperrspannung einstellbar. Beispielsweise können Photodioden als Wannen-Substrat-Dioden in großen Tiefen oder als Diffusionsdioden nahe der Substratoberfläche realisiert werden. Auch eine Kombination von verschiedenen Dioden ist möglich. Dual-Junction-Dioden besitzen dabei zwei pn-Übergänge, Triple-Junction-Photodioden sind mit drei übereinanderliegenden pn-Übergängen ausgestattet. Für derartige Multikanal-Photodioden besteht jedoch die Forderung, daß sie ähnliche absolute Empfindlichkeiten aufweisen und sich im wesentlichen nur in ihrem spektralen Verlauf unterscheiden. Werden die Photodioden in unterschiedlichen Tiefen implantiert, ist jedoch aus Gleichung (11.24) und (11.25) ersichtlich, daß die Dioden zur Einhaltung dieser Forderung ähnliche Sperrschichtdicken und damit ähnliche Dotierungskonzentrationen aufweisen müssen. Die Photonendichte nimmt generell mit der Eindringtiefe ab, somit ist auch für Strahlung mit größeren Wellenlängen eine verringerte Empfindlichkeit in großen Substrattiefen zu erwarten. In natürlichen Umgebungen wird dies jedoch meist durch eine größere Intensität von roter und infraroter Strahlung kompensiert. Nachteilig ist jedoch, daß die Dotierungskonzentrationen technologisch bedingt sind und demzufolge nicht im Entwurfsprozeß beeinflußt werden können. Die Kenntnis von Dotierungsprofilen erlaubt allerdings eine generelle Aussage über die Eignung einer bestimmten Technologie zur Realisierung von Multikanal-Photodioden und entsprechenden Sensoren. Die mit Photodioden erreichbaren Photoströme sind jedoch generell gering. Einer Beleuchtungsstärke von 500 lx, die vom Auge als sehr hell empfunden wird, entsprechen bei einer Wellenlänge von 555 nm ca. 2,05 · 106 Pho-
218
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
tonen, die pro Sekunde auf eine Fläche von 1 µm2 auftreffen. Bei einem typischen Absorptionskoeffizienten β555nm von 0, 5 µm−1 für Silizium ergeben sich 1,03 · 106 generierte Elektronen-Loch-Paare pro µm3 und Sekunde, wenn eine Quanteneffizienz von 100% angenommen wird. Bei Vernachlässigung der Rekombination und mit der Annahme, daß alle Elektronen zum Stromfluß beitragen und das photoaktive Volumen eine Ausdehnung von 10 × 10 × 1µm3 besitzt, ergibt sich ein photogenerierter Strom von ca. 16 pA. Integrierender Photosensor Photodioden lassen sich zum Aufbau eines integrierenden Photodetektors verwenden. Die Photoelektronen werden dabei auf der Sperrschichtkapazität der Photodiode akkumuliert. Die Sperrschichtkapazität ist von der Spannung über der Diode abhängig und beträgt für einen abrupten pn-Übergang über der homogenen Fläche A ohne Berücksichtigung der Randeffekte:
Csp = A ·
s
ǫeNA ND · 2(NA + ND )UD
mit UD = UT · ln
r
NA ND . n2i
UD = C0 · UD − U
r
UD , UD − U (11.26)
Bei konstantem Photostrom Iph ist der zeitliche Spannungsverlauf über der Diode bestimmt durch die Differentialgleichung Csp (U ) ·
dU (t) = −Iph dt
(11.27)
und hat die Lösung: Iph t · (Iph t)2 U (t) = U (0) − + 4UD C02
p 2 − U U (0) UD D . UD C0
(11.28)
Der Verlauf der Diodenspannung (Abbildung 11.16) ist für hinreichend kurze Zeiten in Näherung linear und ermöglicht so die Annahme einer linearen Beziehung zwischen der Bestrahlungsstärke und dem messbaren Spannungswert. Zu beachten ist, daß sowohl Photostrom Iph als auch die Kapazität C sich proportional zur Diodenfläche A verhalten. Die Spannung über der Diode ist somit bei gegebener Beleuchtungsstärke nicht abhängig von der Diodenfläche. Dies ist jedoch nur in erster Näherung korrekt. Eine Photodiode besitzt nicht nur eine flächenbezogene Kapazität, sondern auch periphere Kapazitäten. Zudem sind Kapazitäten in externen Schaltungen vorhanden. Mit Verkleinerung der Diodenfläche verringert sich folglich der Photostrom stärker als die Kapazität, und damit sinkt auch der erreichbare Spannungshub. Zudem erhöht sich der Einfluß von flächenunabhängigen Rauschtermen, so daß
11.3 Bildsensoren
219
2,0 1,5
UD = 0,7V Iph = 16pA
1,0
-U [V]
U(0) = 2V C0 = 60fF
0,5 0 -0,5 0
1
2
3
4
5 t [ms]
6
7
8
9
10
Abb. 11.16 Darstellung des zeitlichen Verlaufs der Diodenspannung nach Gleichung (11.27) der Signal-Rausch-Abstand (SNR) sinkt. Die Größe der Photodiode bestimmt somit entscheidend den Dynamikbereich des Pixels und sollte daher maximal ausgelegt werden. Multikanal-Photosensoren Die spektrale Empfindlichkeit des pn-Übergangs einer Photodiode ist von der Implantationstiefe abhängig. Photodioden in unterschiedlichen Tiefen lassen sich somit zum Design von Farbsensoren verwenden, die zusätzliche Farbkanäle für eine verbesserte Farbkorrektur bieten. Die Tiefe der verschiedenen Photodioden ist dabei durch das Dotierungsprofil festgelegt. Die Einflußmöglichkeiten beim eigentlichen Schaltungsentwurf sind auf die Auswahl der entsprechenden Strukturen begrenzt. Allgemein stehen Wannen-SubstratDioden und Diffusions-Dioden zur Verfügung. Im hier betrachteten 90nmFertigungsprozeß liegen die Übergänge der Wannen- und Diffusionsdioden in ca. 1 µ bzw. 200 nm Tiefe. Vergleichbare Dioden sind in jedem CMOS-Prozeß verfügbar, wobei sich die Lage der Raumladungszonen in den Prozessen unterscheidet. In einem Triple-Well-Prozeß mit isolierten p-Wannen ist eine weitere Diode realisierbar [80], [81], deren Übergang z.B. in der 90 nm-Technologie in einer Tiefe von ca. 700 nm liegt. Diese Dioden können dabei nicht nur lateral, sondern auch vertikal angeordnet werden, wie in Abbildung 11.17 illustriert. Auf diese Weise sind pro Pixel mehrere Farbkanäle auf der gleichen optisch aktiven Fläche realisierbar. Diese können für eine Verbesserung der Farbkorrektur verwendet werden. Die Tripel-Well-Struktur erlaubt zusätzlich eine vierte Diode in Form eines n-Wannen/p+ Übergangs. Da diese Diode jedoch in einer vergleichbaren Tiefe wie die einer pWannen/n+ Diode liegt, sind auch ähnliche spektrale Eigenschaften zu er-
220
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
a)
b)
Ein-Kanal-Dioden als Diffusion-Substrat- bzw. Wannen-Substrat-Aufbau
Zwei-Kanal-Diode als Diffusion-Wannen-SubstratAufbau
c) Drei-Kanal-Diode als Diffusion-isolierte WanneWanne-Substrat-Aufbau
Abb. 11.17 Strukturen für Photodioden im CMOS-Prozess warten, wodurch sie für die Realisierung eines weiteren farbsensitiven Kanals nicht geeignet ist. Voraussetzung für eine gemeinsame Nutzung dieser Photodioden ist jedoch, daß die verschiedenen Elemente ähnliche absolute Empfindlichkeiten aufweisen, um eine optimale Auswertung der verschiedenen Farbkanäle zu gewährleisten. Die Photodioden benötigen zur Einhaltung dieser Forderung ähnliche Sperrschichtdicken und damit ähnliche Dotierungskonzentrationen. Dies kann jedoch in einem Standard-CMOS-Prozeß im allgemeinen nicht erfüllt werden. Die Dotierungskonzentration der Diffusionen übersteigt die Dotierungskonzentration des Substrates und der Wannen um ein Vielfaches. Dementsprechend sind auf Grundlage von Standardprozessen keine qualitativ hochwertigen Multikanal-Photodioden zu erwarten. Hochwertige Photosensoren auf CMOS-Basis werden folglich spezielle Prozesse mit mindestens zwei zusätzlichen Masken und Arbeitsschritten erfordern, bei denen zusätzliche Implantationen für die Photodioden eingebracht werden. Außerdem ist eine geeignete Wahl der Farbfilter erforderlich, um die Möglichkeiten der Farbkorrektur mittels spektraler Rekonstruktion [82] und die praktischen Gegebenheiten beim Schaltungsentwurf auszunutzen. Die spektralen Eigenschaften der elektronischen Photoelemente sind dabei im wesentlichen durch die Technologie bestimmt und ändern sich bei deren Wechsel. Im herkömmlichen Entwurfsprozeß für Sensoren auf der Basis des Dreibereichsverfahrens besteht die Forderung, daß Farbfilter und Sensor zusammen die Lutherbedingung erfüllen müssen [83]. Somit ist es notwendig, bei jedem Wechsel der Technologie auch die Farbfilter an die neuen Sensoreigenschaften anzupassen. Prinzipiell können Farbfilter ermittelt werden, die eine exakte Rekonstruktion der gewünschten Zielcharakteristik ermöglichen. Die genaue Nachbildung der CIE-Charakteristik oder einer entsprechenden Linearkombination ist jedoch in der Regel nur mit sehr aufwendigen Methoden möglich [83], die allgemein nicht für eine Miniaturisierung geeignet sind. Es stehen somit keine beliebigen Farbfiltercharakteristiken für Mosaikfilter zur Verfügung. Prinzipiell stellen Multikanal-Farbsensoren geringere Anforderungen an die Farbfilter, da sich die höhere Dimension des Sensorraumes zur Farbkorrektur ausnutzen läßt. Dies kann bereits bei der Filterauswahl Berücksichtigung finden. Beispielsweise ist es sinnvoll, daß das Sensorelement möglichst viel Strahlungsenergie empfängt. Dadurch wird eine entsprechende Aussteuerung auch bei gerin-
11.3 Bildsensoren
221
ger Belichtungszeit gewährleistet. In diesem Fall müssen die Farbfilter nur einen schmalen Spektralbereich absorbieren. Im Gegensatz dazu absorbieren herkömmliche Farbfilter Licht über einen weiten Spektralbereich und lassen nur wenig Strahlung bis zum Sensor passieren. Das Problem der Verstärkung des Sensorrauschens bei stark korrelierten Sensorkanälen ist dabei unter der Voraussetzung, daß das Photonenrauschen den dominierenden Rauschterm des Sensors darstellt, nicht kritisch. Sensoren mit schmalbandigen Farbfiltern werden bei identischen Belichtungszeiten nur wenig ausgesteuert und weisen folglich ebenfalls einen stark verringerten Signal-Rausch-Abstand auf. Eine Korrelation zwischen den Farbkanälen des Sensors ist zudem vorteilhaft für das sogenannte „Demosaicing“. Bei herkömmlichen Farbbildsensoren wird die Genauigkeit der Farbaufnahme allein durch die Farbfiltercharakteristik bestimmt, bei Multikanal-Farbsensoren sind die Zielcharakteristiken jedoch relativ unabhängig von den spektralen Eigenschaften der Farbfilter mit der Korrekturmatrix einstellbar. In den vorgenommenen Analysen war bereits mit acht unabhängigen Sensorkanälen eine angemessene Rekonstruktion des CIENormalbeobachters möglich [84, 82]. Auch Wechsel der Fertigungstechnologie sind bei Multikanal-Farbsensoren unkritisch, da in diesen Fällen nur andere Koeffizienten für die Farbkorrektur benötigt werden. Diese ergeben sich direkt aus der spektralen Empfindlichkeit des neuen Sensorentwurfs. Durch Kombination von verschiedenen Farbfiltern und Photodioden werden verschiedene Realisierungen möglich, die sich hinsichtlich des technischen Aufwands und der erreichbaren Qualität der Farbaufnahme unterscheiden. Integrierte CMOS-Pixelschaltungen Basistechnologien CMOS und CCD Zur Nutzung von Halbleiterphotosensoren ist es notwendig, die im photoempfindlichen Element gespeicherte Ladung auszulesen und einer Auswertung zuzuführen. Dafür existieren zwei verschiedene Prinzipien, die auf der Anwendung von CMOS- bzw. CCD-Bauelementen1 beruhen. Analoge CMOSTechnik erlaubt, den Photostrom bzw. die akkumulierte Photoladung zu verstärken, zu transformieren, zu digitalisieren und mit anderen Werten zu verrechnen [85]. Die Sensoren können dabei gemeinsam mit den Verarbeitungselementen auf einem Schaltkreis integriert werden und ermöglichen so kostengünstige Sensorsysteme [86, 87] (Abbildung 11.18). Aufgrund von technologischen Mängeln der frühen Fertigungsverfahren war die CMOS-Technik jedoch für die Verarbeitung der geringen Signalpegel der Photosensorik zunächst nicht gut geeignet. Das Problem wurde besonders durch die herstellungsbedingte Variation der Parameter der verwendeten Bauelemente verursacht. Durch die Schwellspannungsvariation der Transistoren, 1
Charged Coupled Device - ladungsgekoppeltes Bauelement
Vertikalsteuerung
Vertikalsteuerung
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren Vertikalsteuerung
222
Horizontalsteuerung Horizontalsteuerung
Passive Pixelzellen (PPS) mit externem Verstärker und A/D-Wandler
Horizontalsteuerung
Aktive Pixelzellen (APS) mit internem Verstärker und externem A/D-Wandler
Digitale Pixelzellen (DPS) mit internem Verstärker und A/D-Wandler
Abb. 11.18 Verschiedene Varianten für den Aufbau eines CMOS-Bildsensors die Dunkelströme der Photodioden und die zusätzlichen Leckströme und Parasitärkapazitäten besitzt jede Pixelzelle eine individuelle ortsabhangige Charakteristik, die durch das sogenannte Fixed Pattern Noise (FPN) beschrieben wird. Der schlechte Signal-Rausch-Abstand der CMOS-Technik führte daher zu einer verstärkten Konzentration auf die CCD-Technik, die sich in der lang anhaltenden Dominanz von CCD auf dem Gebiet von Photosensoren widerspiegelt. Auf CCD-Sensoren können jedoch wegen der spezialisierten Fertigungstechnik keine anderen Bauelemente realisiert werden. Steuerschaltungen, Signalkonvertierung und -verarbeitung müssen daher mit zusätzlichen Schaltkreisen außerhalb des eigentlichen Sensors implementiert werden. Mit den technologischen Verbesserungen des Herstellungsprozesses und den Möglichkeiten von algorithmischen Fehlerkorrekturen [88] wurden Photosensoren auf CMOS-Basis wieder interessant. Es besteht nun die Möglichkeit, auch umfangreiche Auswerte- und Verarbeitungsschaltungen auf dem Sensorchip zu integrieren [86] bzw. Photosensor-Arrays in Systems on Chip (SoC) einzubetten [89]. Pixelschaltung Die auf der CMOS-Technologie basierenden aktiven Pixelschaltungen (APS) enthalten Verstärkerstrukturen innerhalb des Pixels, die durch die Entkopplung der Photoelemente von der externen Schaltung für verbesserte Empfindlichkeit und höhere Auslesegeschwindigkeiten sorgen [90, 89]. Aktive Pixelschaltungen enthalten im wesentlichen drei Komponenten: das Photoelement, eine Reset- und eine Ausleseschaltung. Zusätzlich können auch andere Elemente zur Erweiterung der Funktionalität enthalten sein [91]. Als lichtempfindliches Element für die gewählte Zielsetzung ist nur die Photodiode geeignet, da sie als einzige die Realisierung von mehreren spektralen Kanälen pro Pixel und damit Multikanal-Sensoren erlaubt. Im StandardCMOS-Prozeß stehen drei verschiedene Dioden zur Verfügung, die jedoch nicht beliebig kombinierbar sind. Zudem gestaltet sich die Berechnung des Quantenwirkungsgrades dieser Strukturen im allgemeinen schwierig, da eine Reihe von notwendigen Parametern, wie beispielsweise Reflexions- und Ab-
11.3 Bildsensoren
223
sorptionseigenschaften der Halbleiterschichten oberhalb der Photodiode, im wesentlichen unbekannt und nur durch Messungen am fertigen Schaltkreis zu ermitteln sind. Ebenso sind die Verhältnisse der Dotierung und der lokalen Störstellen in der Regel nicht direkt verfügbar. Als Schätzung auf Basis von Messungen an Vorgängertechnologien wird daher angenommen, daß der Quantenwirkungsgrad den Wert 0.5 nicht übersteigt (Abbildung 11.19).
Abb. 11.19 Modell für die Abschätzung der Quanteneffizienz Als Pixelschaltung bieten sich Schaltungen mit einfachem Ausleseverfahren und einem Reset mit MOS-Transistor an, die je wahlweise als NMOS oder PMOS ausgeführt werden können. Dabei ergibt sich der maximal nutzbare Signalhub des Pixels entsprechend Tabelle 11.1. Reset Transistor NMOS NMOS
Spannung über Diode 0 . . . VDD − Vt0n 0 . . . VDD − Vt0n
AusleseTransistor NMOS PMOS
Spannung am Eingang Vt0n . . . VDD 0 . . . VDD − Vt0p
PMOS PMOS
0 . . . VDD 0 . . . VDD
NMOS PMOS
Vt0n . . . VDD 0 . . . VDD − Vt0p
nutzbarer Spannungshub VDD − 2Vt0n VDD − max(Vt0n , Vt0p ) VDD − Vt0n VDD − Vt0p
Tabelle 11.1 Dynamikbereiche verschiedener Schaltungsvarianten Es ist zu erkennen, daß die allgemein übliche Schaltungsvariante mit NMOS-Reset und NMOS-Auslese den geringsten nutzbaren Spannungshub besitzt, während die Schaltungen mit mindestens einem PMOS-Transistor nur eine Schwellspannung Verlust aufweisen. Um den Spannungsverlust zu kompensieren, läßt sich zwar mit einer Ladungspumpe die Gate-Spannung der NMOS-Reset-Transisoren erhöhen, dabei sind jedoch die technologischen Grenzen der Durchschlagsfestigkeit zu beachten. Dies ist besonders für moderne CMOS-Prozesse mit sehr dünnem Gate-Oxid und geringer Betriebsspannung von Bedeutung.
224
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
In der angewendeten 90 nm-Technologie existieren Transistortypen für verschiedene Anwendungsgebiete. Für die Implementierung von Pixelschaltungen sind im wesentlichen zwei Transistortypen geeignet: Digitaltransistoren mit reduziertem Leckstrom (Low Leakage Device, LLD) für eine Betriebsspannung von 1 V und Transistoren für analoge Anwendungen und für Ein- bzw. Ausgabeschaltungen mit höherer Betriebsspannung von 2.5 V (ANA). Bei Schwellspannungen von ca. 250 mV für Digital- und 470 mV für Analogtransistoren ergeben sich die am Ausgang maximal nutzbaren Spannungshübe von 750 mV bzw. 2.03 V für Schaltungsvarianten mit mindestens einem PMOS-Transistor in der Reset- oder Ausleseschaltung. Es wurden in der 90 nm-Technologie Ausleseschaltungen mit PMOSTransistoren gewählt. Aufgrund ihrer Eigenschaft, auch eine Spannung von 0 V über der Photodiode korrekt zu übertragen, ist es möglich, die Nichtlinearität des Entladevorgangs der Photodiode genauer zu analysieren. Eine Analyse der Transistoren zeigte, daß in der 90 nm-Technologie ein erheblicher Einfluß von Transistorleckströmen auf die Pixelcharakteristik zu erwarten ist. Die Leckströme betreffen dabei im wesentlichen den Gate-inducedDrain-Leakage (GIDL) und den Drain-induced-Drain-Leakage (DIDL). Beide sind auf Effekte zurückzuführen, die sich aus den geringen Kanallängen der Transistoren und den dafür notwendigen Dotierungsprofilen ergeben. Der GIDL ist ein Tunnelstrom, der bei einem Spannungsunterschied zwischen Gate und Drain durch die Gate-Isolation fließt. Der DIDL-Strom besteht dagegen aus Ladungsträgern, die durch die nur wenige Nanometer breite Potentialbarriere zwischen Bulk und Drain tunneln [92]. Die Auswirkungen der Leckströme betreffen im besonderen den Reset-Transistor und alle Knoten mit Speicherfunktion, die beispielsweise bei einem elektronischen Shutter benötigt werden. Ein Ersatz der Reset-Transistoren durch Dioden ist als Lösung für ein- und auch zweikanalige Photodioden direkt im photoaktiven Bereich implementierbar und ermöglicht zugleich eine verbesserte Flächenausnutzung. Eine Integration des Reset-Transistors in die Photodiode selbst ist ebenfalls möglich, jedoch sind auch hier Verluste durch Leckströme zu erwarten. Der Entwurf von Pixelstrukturen mit elektronischen Shutter kann erst nach einer Messung der Leckströme sinnvoll durchgeführt werden, daher wurden für Teststrukturen nur einfache Pixelschaltungen implementiert. Bei den für die vorgesehene Technologie notwendigen geringen Betriebsspannungen gestaltet sich bereits die Vorverarbeitung der Analogwerte zur Messung der Pixeleigenschaften schwierig. Zur Unterstützung der Analyse wurde daher zusätzlich ein Rail-to-Rail-Verstärker entworfen und implementiert. Resetschaltung Für die Funktion eines integrierenden Pixels ist es erforderlich, die Speicherkapazität zu Beginn der Integrationsphase auf einen Initialwert zu setzen. Dies geschieht durch eine Resetschaltung. Aus Gründen des geringen Flächenbedarfs besteht die übliche Realisierung aus einem NMOS-Transistor entspre-
11.3 Bildsensoren
225
chend Abbildung 11.20a. Die Nachteile dieser Variante bestehen im wesentlichen in der Einführung von kTC-Rauschen sowie in der Verringerung des am Ausgang möglichen Spannungspegels um eine Schwellspannung. Die Variation der Schwellspannungen der Resettransistoren in den einzelnen Pixelschaltungen hat überdies Fixed-Pattern-Noise zur Folge. In aktuellen Technologien sind weiterhin stark angestiegene Leckströme der Transistoren zu beachten, die sich negativ auf die Signalintegrität auswirken. Als platzsparende Implementierung mit ähnlichen elektrischen Eigenschaften und geringeren Leckströmen wurden daher Resetdioden untersucht (Abbildung 11.20c).
Abb. 11.20 Schaltung und Ansteuerung für verschiedene Resetschaltungen Dabei wird die Resetspannung UReset an eine in Flußrichtung geschaltete Diode gelegt. Die Speicherkapazität wird daraufhin auf die um die Flußspannung UF der Diode reduzierte Resetspannung aufgeladen. Ist der Resetvorgang beendet, wird UReset auf ein Ruhepotential gelegt und die Diode gesperrt. Im Beispiel nach Abbildung 11.20 ist das Ruhepotential mit dem Massepotential identisch. Der dabei fließende geringe Sperrstrom addiert sich zum Dunkelstrom der Photodiode. Um den Taktdurchgriff über die Sperrschichtkapazität der Resetdiode gering zu halten, ist diese in der Realisierung möglichst klein auszuführen. Im Layout muß zudem der parasitäre vertikale pnp-Transistor beachtet werden. Ein PMOS-Transistor als Resetschalter ist im Vergleich zu einem NMOS-Transistor nicht von der Reduktion des möglichen Resetpegels um eine Schwellspannung und dessen Variation betroffen, da PMOS-Transistoren bei aktivem Reset im Strong-Inversion-Bereich arbeiten (Abbildung 11.20b). Ein PMOS-Transistor erfordert jedoch aufgrund der notwendigen getrennten n-Wanne wesentlich mehr Platz und verringert damit die nutzbare photoempfindliche Fläche. Ein neues Schaltungskonzept sieht daher vor, den Resettransistor zur Verringerung des Flächenbedarfs innerhalb der Photodiode zu integrieren, z.B. in der Wanne einer Wannen-SubstratPhotodiode entsprechend Abbildung 11.20d. Nachteilig ist dabei die Notwendigkeit von zusätzlichen Steuersignalen, die jedoch außerhalb der Pixelmatrix erzeugt werden können.
226
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Die Einbettung des Resettransistors ist dabei sowohl für n-Wannen als auch für isolierte p-Wannen möglich, die jedoch nur in einem sogenannten Triple-Well-Prozeß zur Verfügung stehen. Abbildung 11.21 zeigt einen Realisierungsvorschlag mit den zum Betrieb notwendigen externen Schaltungen zur Signalgeneration.
Abb. 11.21 Eingebettete Resettransistoren als Schaltung und schematische Darstellung des Substratquerschnitts
Ausleseschaltung Die einfachste Ausleseschaltung besteht aus einem Verstärker und einem Schalter. Der Verstärker sorgt für die Entkopplung der inneren Schaltung von den externen Kapazitäten, und der Schalter dient zur Auswahl eines bestimmten Pixels an einer Busleitung. Eine elementare Realisierung des Verstärkers verwendet nur einen Sourcefolger. Dabei ist jedoch zu beachten, daß der nutzbare Spannungshub am Ausgang um der Wert einer Schwellspannung reduziert ist. Betrachtet wird eine NMOS-Ausgangsstufe nach Abbildung 11.22a. Der Auswahltransistor T2 kann für die folgende Rechnung zur Vereinfachung entsprechend Abbildung 11.18b ignoriert werden, da er in Sättigung betrieben wird. Unter der Annahme, daß Ua > Ubias − VT 0 ist, kann T2 als ideale Stromquelle betrachtet werden. Für T1 gilt in diesem Fall: bzw.:
ID = β · (UGS − VT 0 )2 = β · (Udio − Ua − VT 0 )2 , Ua = Udio −
VT 0 +
s
ID β
!
.
(11.29)
(11.30)
Die Ausgangsspannung des Sourcefolgers entspricht somit der Diodenspannung, reduziert um eine Schwellspannung und eine querstromabhängige Sättigungsspannung.
11.3 Bildsensoren
227
Abb. 11.22 Ausleseschaltungen mit Sourcefolger Das Arbeitsschema eines Bildsensors mit einfachem Ausleseverfahren wird auch als rollender Shutter bezeichnet, da das Bild zeilenweise nacheinander gelesen und zurückgesetzt werden muß. Die Integration und das Auslesen der Bildzeilen erfolgt dabei für die einzelnen Zeilen zeitlich versetzt (Abbildung 11.23). Die Integrationszeit Tint und die Auslesezeit TZ pro Zeile bestimmen die Bildwiederholrate 1/TBild mit TBild = Tint + TZ . Die maximale Bildwiederholrate ergibt sich bei Vernachlässigung der Reset-Zeit aus der minimalen Zeit, die notwendig ist, um den gesamten Sensor auszulesen. Bei n Bildzeilen beträgt diese n · TZ , und die maximal verfügbare Integrationszeit ergibt sich folglich zu (n − 1) · TZ .
Abb. 11.23 Pixelschaltung und Ausleseschaltung sowie Taktdiagramm für ein Pixel mit NMOS-Transistoren Nachteilig ist, daß der Beginn der Integrationszeiten für jede Bildzeile unterschiedlich ist. Beispielsweise werden bewegte Objekte wegen des abweichenden Beginns des Integrationsvorganges auf zeilenweise verschiedene Bildorte abgebildet. Für höhere Ansprüche an die zeitliche Auflösung und die Entkopplung von Integration und Auslesevorgang ist daher ein sogenannter Shutter unentbehrlich.
228
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Ausleseschaltung mit elektronischem Shutter Eine Ausleseschaltung mit elektronischem Shutter nach Abbildung 11.24 enthält eine weitere Speicherkapazität. Diese kann als zusätzliches Bauelement realisiert sein oder wird durch die Gate-Kapazität der Auslesestufe gebildet. Auf dieser Kapazität kann der aufgenommene Wert bis zum Auslesezeitpunkt zwischengespeichert werden und ermöglicht so eine gleichzeitige Integrationsphase für alle Pixel. Integration und Auslesevorgang verlaufen dabei unabhängig voneinander. Da Integrations- und Speicherkapazität nach dem Prinzip in Abbildung 11.24 nur gemeinsam zurückgesetzt werden können, müssen die beiden Vorgänge zeitlich nacheinander ablaufen. Die Bildwiederholrate ergibt sich damit zu 1/(Tint + n · TZ ). Wird für die Speicherkapazität ein eigenes Reset vorgesehen, ist ein weiterer Betriebsmodus realisierbar, bei dem Integration und Auslesevorgang gleichzeitig ablaufen. Die Bildwiederholrate wird in diesem Fall allein von der Integrationszeit bestimmt. Deren untere Schranke ergibt sich jedoch aus der Zeit n · TZ , die notwendig ist, um das gesamte Bild auszulesen.
Abb. 11.24 Pixelschaltung und Taktdiagramm für ein Pixel mit einfachem Shutter Eine andere Realisierungsmöglichkeit mit den gleichen funktionalen Eigenschaften ergibt sich durch Einsatz eines Koppelverstärkers anstelle einer Resetschaltung der Speicherkapazität (Abbildung 11.25). Der Shutter dient in diesem Fall zum Abtasten der Ausgangsspannung des Koppelverstärkers.
11.3 Bildsensoren
229
Abb. 11.25 Pixelschaltung und Taktdiagramm für NMOS-Pixel mit synchronem Shutter
Entwurf von Multikanal-Sensoren in Sub-100 nm CMOS-Technologien Implementierung der Pixelzellen Für die Realisierung von einkanaligen Photodioden stehen Wannen-, Diffusions- oder die Parallelschaltung von beiden Dioden (pinned photo diode) zur Verfügung. Daneben besteht die Möglichkeit, das Dotierungsprofil mittels sogenanntem „Moat“ zu beeinflussen. Der pn-Übergang zwischen n-Wanne und p-dotiertem Substrat wird dabei durch ein schwach p-dotiertes Substratgebiet ausgedehnt. Damit ergibt sich eine vergrößerte Raumladungszone und folglich auch eine erhöhte Anzahl von nutzbaren photogenerierten Ladungsträgern. Für die Resetschaltung wurden Varianten mit in einem PMOS-Transistor, einer Diode und einem eingebettetem PMOS-Transistor aufgebaut. Die Ausleseschaltungen bestehen in den entworfenen Schaltungen generell aus einem PMOS-Sourcefolger mit PMOS-Schalter (Abbildung 11.26 bis Abbildung 11.28). Die Zwei-Kanal-Photozellen besitzen getrennte DiffusionsWannen-Substrat-Dioden mit jeweils eigenen Reset- und Auslesestrukturen. Die realisierten Entwürfe beinhalten verschiedene Formen von Diffusionen und
230
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Abb. 11.26 Schaltungen (oben) und Layoutausschnitte (unten) der realisierten Ein-Kanal-Pixel-Zellen. Die Layoutausschnitte zeigen einen Doppel- (a,c) bzw. Vierfachaufbau (b) mit zusammengelegten Ausleseschaltungen von zwei oder vier Pixeln.
Select
Ureset
Pixel
Ures /Reset Ures
a)
b)
Line
Abb. 11.27 a) Schaltung zur Erzeugung des Resetsignals für die Pixelschaltung mit Diodenreset und b) Pixelstruktur eines Pixels mit Diodenreset
Ureset
Ureset
/Reset
/Reset Ures
/Reset
Select Ureset /Reset Ures
Pixel
Ures
Ures
Mode
a)
b)
c)
d)
Line
Abb. 11.28 Zusätzliche Schaltungen zur Erzeugung des Resetsignals für inaktives Reset: a) schwebend, b) auf Masse liegend, c) umschaltbare Variante und d) Pixelschaltung mit eingebettetem Resettransistor
11.3 Bildsensoren
231
Moat, um insbesondere die spektralen Empfindlichkeiten und die Abhängigkeit des Dunkelstromes von der Diodenform zu untersuchen. Die implementierten Resetschaltungen sind als PMOS-Transistor- bzw. Dioden-Schaltung ausgeführt. Das Auslesen erfolgt über einen PMOS-Sourcefolger und -Schalter (Abbildung 11.29).
Abb. 11.29 Schaltungen (oben) und Layoutausschnitte (unten) von ZweiKanal-Pixelschaltungen mit klassischem Transistorreset (a), Diodenreset (b), und Reset mit zwei eingebetteten Transistoren (c). Die Layoutausschnitte zeigen einen Doppelaufbau mit zusammengelegten Ausleseschaltungen von zwei Pixeln. Die Drei-Kanal-Pixelzelle basiert auf einem dreifachen pn-Übergang einer Diffusions-p-Wannen-n-Wannen-Substrat-Struktur und ist nur in einem Triple-Well-Prozeß verfügbar. Das Reset erfolgt hier nur mit PMOS-Transistoren (Abbildung 11.30). Die Pixelzellen wurden jeweils für LLD- und ANA-Transistoren2 und in verschiedenen Ausführungen entworfen. Entsprechende Layoutansichten sind in den Abbildungen 11.26, 11.29 und 11.30 enthalten.
2
LLD - Low Leakage Drain, Transistortyp mit dickerem Gateoxid und reduzierten Leckströmen; ANA - Transistor für analoge Anwendungen und IO-Schaltungen
232
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
Abb. 11.30 a) Schaltung und b) Layoutausschnitt des Drei-Kanal-Pixels mit vier Photodioden Abbildung 11.31 zeigt Chipfotos von zwei Testchips in 65 nm und 90 nm CMOS-Technologie, auf denen unterschiedliche Kombinationen der beschriebenen Schaltungsvarianten von Pixelstrukturen implementiert sind [93].
Abb. 11.31 Chipfotos von Testchips in 65 nm (links) und 90 nm (rechts) CMOS-Technologie Mit beiden Chips wurden in einem Kamera-Versuchsaufbau die in Abbildung 11.32a wiedergegebenen Bilder aufgenommen.
11.3 Bildsensoren
(a) 4 aneinandergereihte Arrays des 90 nm-Chips (oben), Ausschnitt aus dem 128 × 128 Array des 65 nm-Chips (unten)
233
(b) Messung des Übersprechens zwischen benachbarten Pixeln
Abb. 11.32 Messergebnisse eines Kamera-Versuchsaufbaus mit den Chips aus Abbildung 11.31 Für die Bewertung des Übersprechens (crossover) zwischen benachbarten Pixeln sind ausgewählte Pixel mit mehreren Metallisierungslagen maskiert. Wie in den in Abbildung 11.32b gezeigten Messergebnissen ersichtlich, ist der Grad des Übersprechens in starkem Maße von der Wellenlänge des Lichtes abhängig.
(a) 90 nm-Testchip
234
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
(a) 65 nm-Testchip
Abb. 11.33 Messungen der spektralen Empfindlichkeit der Photodioden Die Ergebnisse der Messungen der spektrale Abhängigkeit der Empfindlichkeit der Photodioden in den verschiedenen Konfigurationen der Testschaltungen sowie weiterer Parameter der Sensorfelder sind in Abbildung 11.33 und Tabelle 11.2 dokumentiert. Konfiguration
Technologie Pixelabmessungen Integratorkapazität Dunkelstromempfindlichkeit Sättingungswert Rücksetzrauschen (kT /C)1 Dunkelstromrauschen Grundrauschen2 SNR
n-well/ p-diff, moat 90 nm 6×6 13.2
n-well
n-well/ p-diff
n-well, moat
n-well
Ref. [94]
90 nm 6×6 12
90 nm 6×6 16.2
65 nm 6×6 11
65 nm 3×3 4.3
180 nm 3.5 × 3.5 4.5
Rdark /- 23 mV /s Nsat /e− 61 200 Nrn /e− 36
37
210
71
50
7700
6.29
98 900 46
89 900 44
121 000 51
82 400 42
48 400 26
22 500 20
Ndn /e− 23
61
315
143
69
2067
4
n-well, moat 3
µm2 C/f F
Nn /e− dB
90 nm 6×6 8.2
43 61.2
76 320 152 81 2067 21 59.3 48.0 55.9 60.2 27.4 61 p p 1 für das Rücksetzrauschen wird 1 · kT /C angenommen, Ref. [94]: 0.75 · kT /C 2
basierend auf der Messung des Dunkelstromes und des Rücksetzrauschens1
3
schwächer dotiertes Gebiet zwischen aktiven Gebieten der Pixelzellen
Tabelle 11.2 Vergleich ausgewählter Parameter unterschiedlicher Photodiodenkonfigurationen
11.3 Bildsensoren
235
Implementierung einer pulsenden Pixelzelle Für Anwendungen in gepulsten neuronalen Netzwerken ist es erforderlich, eine Pixelzelle zu entwickeln, die einen Photostrom pulskodiert ausgibt, wobei die Pulsfrequenz linear vom Photostrom und damit von der Beleuchtungsstärke abhängig ist. Die Herausforderung besteht darin, diese Pixelzelle besonders flächeneffizient zu entwerfen, um sie leicht in eine integrierte Realisierung eines neuronalen Netzwerks (siehe Kapitel 14, 16) einbetten zu können. Abbildung 11.34 zeigt die Schaltung einer solchen pulsenden Pixelzelle.
Abb. 11.34 Schaltungsimplementierung der pulsenden Pixelzelle Die wesentlichen Schaltungskomponenten sind ein Integrator, ein Schwellwertschalter und eine Resetschaltung. Flächensparend wirkt sich hier aus, daß der Photostrom direkt auf der Sperrschichtkapazität der Photodiode D1 integriert wird, so daß keine externe Integrationskapazität nötig ist. Die Integration wird aufgrund der Richtung des Photostromes als Entladevorgang ¯reset = Low ist (Reset der Integrationskapazität), wird durchgeführt. Wenn U ¯reset = High (Integrationsvorgang) liegt die AnD1 über D2 geladen. Bei U ode von D2 auf Masse, wodurch D2 sperrt und der Photostrom die Diode D1 entlädt und damit das Potential am Gate von M1 senkt. Sobald dieses unter einen durch die Gatespannung an M2 vorgegebenen Wert Uref fällt, kippt der ¯reset wird High. Über Schaltzustand des differentiellen Paars M1 , M2 und U eine (nicht abgebildete) digitale Verzögerungsschaltung wird die Minimaldau¯reset gesetzt. Die Gesamtverzögerung bis zum er der Pulse vorgegeben und U Reset beträgt dabei τreset . Die Periodendauer der Ausgangspulsfolge Tout der Schaltung bzw. deren Pulsfrequenz fout ergeben sich damit wie folgt: Tout = Cdif f,D1 ·
UDD − UDSmin,M6 − UD2 − Uref + τreset , Iphoto
(11.31)
fout = 1/Tout . Die Photodiode wird beim Reset auf die Spannung UDD −UDSmin,M6 −UD2 aufgeladen. Der Anfangswert des Abwärtsintegrationsvorgangs ergibt sich aus
236
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
UDD verringert um die minimale Drain-Source-Spannung von M6 und die Flußspannung der Diode D2 . Die Dauer wird bestimmt durch den Photostrom Iphoto , die Diffusionskapazität der Photodiode Cdif f,D1 sowie durch den Referenzwert Uref . Der feste Beitrag von τreset zur Periodendauer des Signals Tout , der verursacht durch einige Inverterverzögerungszeiten ca. 3 ns beträgt, kann dabei gegenüber der Integrationszeit vernachlässigt werden. Der Transistor M5 gibt den Querstrom des differentiellen Paares vor und bestimmt damit in gewissem Rahmen die Arbeitsgeschwindigkeit der Kippstufe. Eine Anpassung der Schaltung an die Beleuchtungsverhältnisse kann über die Referenzspannung Uref erfolgen. Diese Pixelzelle wurde in der 130 nm-CMOSTechnologie des Merkmalsdetektors aus Kapitel 14 realisiert. Der Flächenbedarf beträgt 16, 5 µm × 10, 4 µm. Durch die Doppelnutzung der Photodiode und den einfachen Aufbau der Photostrom-Pulswandlung wurde der Analogteil der Neuronalen Verarbeitungseinheit (NPU) auf ein Minimum beschränkt und die Robustheit der Schaltung erhöht. Abbildung 11.35 zeigt das Layout der pulsenden Pixelzelle.
Abb. 11.35 Layoutauschnitt der pulsenden Pixelzelle Auf der rechten Seite ist der restliche Teil der digitalen Steuerung zu erkennen, welcher zum einen aus einer Inverterkette zur Verzögerung des Resetsignals besteht. Zum anderen enthält der digitale Schaltungsteil eine Zeilenund Spaltenauswahl und Bustreiber, welche das Pulsausgangssignal auf einen Auslesebus legen. In Abbildung 11.36 sind einige Messergebnisse der pulsenden Pixelzelle dargestellt. Die obere Kurve in Teilbild (a) zeigt einen einzelnen Ausgangspuls der Pixelzelle in negativer Logik, in der unteren Kurve ist die Spannung über der integrierenden Photodiodenkapazität dargestellt. Wie aus der Darstellung ersichtlich, steigt die Spannung über der Integrationskapazität vor dem Reset linear an. Etwa 4 µs nach dem Zurücksetzen erreicht die Integratorspannung wieder ihr Ruhepotential. Die positive Ladekurve in der obigen Darstellung
11.3 Bildsensoren
(a) Einzelner Integrations- und Resetvorgang (unten) und Ausgangspuls (oben) einer Pixelzelle
(b) Ausgangspulse der Pixelzelle bei unterschiedlichen Lichtverhältnissen
Abb. 11.36 Messergebnisse der pulsenden Pixelzelle
237
238
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
ergibt sich durch einen invertierenden Puffer-OTA im Auslesepfad, die Diffusionskapazität selbst wird, wie oben besprochen, entladen (negative Ladekurve). Wenn die pulsenden Pixelzelle bei Zimmerbeleuchtung (ca. 70 lux) betrieben werden, ergibt sich eine Ausgangsfrequenz von 800 Hz, für Dämmerlicht von etwa 10 lux wird die Pulsfrequenz als 140 Hz gemessen. Helles Tageslicht (etwa 200 − 300 lux) resultiert in einer Frequenz von 2 − 4 kHz. Die Pixelzelle verhält sich damit als linearer Licht-Frequenzwandler, d.h. die Rücksetzzeit kann vernachlässigt werden. Die Verlustleistung einer einzelnen Pixelzelle berechnet sich aus einer Stromaufnahme von 50 nA bei einer Spannung von 2.2 V zu 110 nW . Die Stromaufnahme ergibt sich aus dem Biasstrom des differentiellen Transistorpaars und ist damit frequenzunabhängig, die frequenzabhängige Stromaufnahme der Resetschaltung ist demgegenüber vernachlässigbar klein.
11.4 DA-Wandler und analoger Bildspeicher für die Bildeingabe Die Integration von Photosensoren zur Bildeingabe direkt auf dem Chip für die Merkmalsdetektion ist wegen zu großer Fläche nicht empfehlenswert. Die Bildinformationen müssen deshalb den einzelnen Elementen des neuronalen Feldes von außen zugeführt und darin gespeichert werden. Eine Übertragung digitalisierter Werte zu den Neuronzellen würde eine Digital-Analog-Wandlung des Wertes in der Zelle erfordern. Neben dem hohen Flächenbedarf für die DA-Wandler in den Zellen spricht vor allem der zu erwartende Störeinfluß der digitalen Signale auf die Verarbeitung analoger Signale in den Neuronen und Synapsen gegen diese Variante. Für die Übertragung und Speicherung der Bildinformationen wurde deshalb ein auf der Verwendung analoger Ströme (Current-Mode-Schaltungstechnik) basierender Ansatz ausgewählt. Das Grundprinzip dieser Lösung ist in Abbildung 11.37 dargestellt. Am Rand des neuronalen Feldes ist eine Bank von 6 × 128 Stromspeicherzellen (SI) angeordnet (128 Zeilen mit je 6 Bit Auflösung). In jeder der 128 Zeilen dieser Anordnung werden die binär gewichteten Referenzwerte der Ströme gespeichert und zyklisch aufgefrischt. Die mit 6 Bit diskretisierte Bildinformation wird spaltenweise an die Strombank angelegt. Die durch den 6 Bit-Wert definierte Stellung der Schalter am Summationsknoten einer Bank bestimmt den jeweiligen Ausgangsstrom in einer Zeile. Der an allen Summationsknoten der Strombänke anliegende Spaltenvektor analoger Ströme wird horizontal in des neuronale Feld geleitet. In der ausgewählten Spalte werden die Ströme wiederum in den Stromspeicherzellen der Neuronen gespeichert. Durch die sukzessive Auswahl aller Spalten des Feldes kann auf diese Weise ein vollständiges Bild in den Zellen der Matrix gespeichert werden. Die Bildwiederholrate wird durch die Einschwingzeit der Stromspeicherzellen bestimmt. Die in Abbildung 11.38 gezeigte Schaltung einer Stromspeicherzelle enthält eine Verstärkerschaltung, um auch bei einem geringen Wert des zu spei-
11.4 DA-Wandler und analoger Bildspeicher für die Bildeingabe
239
chernden Stromes eine kurze Einschwingzeit zu gewährleisten. Diese beträgt maximal 5 µs.
Abb. 11.37 Blockschaltbild des DA-Wandlers für die Bildeingabe und Bildspeicherung
(a) Gesamtschaltung mit Verstärker und Speicherkapazität
(b) Verstärkerschaltung
Abb. 11.38 Schaltung der Stromspeicherzelle Die 128 Spalten umfassende Matrix kann demnach mit einer Wiederholrate von mindestens 1000 Bildern/s aufgefrischt werden. Die Umschaltung zwischen der Abtastphase, in der Iin abgetastet wird, und der Haltephase,
240
11 Elementare Schaltungen für Neuronen, Synapsen und Photosensoren
in der Ik0 ausgegeben wird, erfolgt durch ein digitales Steuersignal. Die πförmige Anordnung der Speicherkondensatoren und Schalter am Ausgang der Verstärkers minimiert die Störeinflüsse des Schaltsignales beim Umschalten zwischen den beiden Phasen.
11.5 Zusammenfassung Für die Realisierung komplexer Netzwerktopologien ist eine hohe Integrationsdichte der Schaltungen notwendig, die nur durch einen flächensparenden Aufbau der einzelnen neuronalen Elemente erreicht werden kann. Eine gute Annäherung an das reale Verhalten bedingt jedoch einen hohen Bauelemente- und Schaltungsaufwand dieser Elemente. Diese sich widersprechenden Ansprüche erfordern einen sorgfältigen und ausgewogen dimensionierten Entwurf der integrierten Grundschaltungen der neuronalen Elemente. Basierend auf einer ineinander greifenden Kette von Arbeiten zu Modellierung, Simulation und Entwurf wurden hinsichtlich der genannten Anforderungen optimierte Schaltungen neuronaler Elemente entwickelt. Die in diesem Kapitel beschriebenen Elemente umfassen sowohl die Neuronen und Synapsen als auch Strukturen für die Bildaufnahme (Bildsensoren), -speicherung und Pulsgenerierung (pulsende Pixelzellen).
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme Jens-Uwe Schlüßler und Jörg Schreiter
Bei der Analyse von Systemen bereits geringer Komplexität liegt häufig die Situation vor, daß das Verhalten des Systems in expliziter Form gar nicht, nur mit sehr großem Aufwand, nur näherungsweise, nur für ausgewählte Spezialfälle oder in einer Kombination dieser Einschränkungen angegeben werden kann. In vielen dieser Fälle kann jedoch das Gleichungssystem, dessen Lösung die gesuchte Darstellung des Verhaltens ist, numerisch gelöst werden. Für die Arbeitsschritte der Aufstellung der numerischen Aufgabe und ihrer Lösung wird die zusammenfassende Bezeichnung „Simulation“ verwendet. Einige dieser Arbeitsschritte werden halbautomatisch von einem Software-Programm erledigt, das als „Simulator“ bezeichnet wird. Die erhaltene numerische Lösung wird „Simulationsergebnis“ genannt. Bei der Untersuchung und Implementierung eines pulsgekoppelten neuronalen Netzes wird das Verhalten des Netzes in vielen Situationen durch Simulation ermittelt. Sie dient als Hilfsmittel bei der empirischen Suche nach geeigneten Adaptionsfunktionen, indem sie erlaubt, die Auswirkungen verschiedener Entwurfsvarianten auf das Verhalten des Netzes am Beispiel zu vergleichen. Liegt ein Schaltungsvorschlag zur Implementierung vor, so wird mit Hilfe der Simulation seine Eignung anhand der Übereinstimmung des Verhaltens mit dem, welches sich bei Verwendung der spezifizierten Verhaltensmodelle ergibt, abgeschätzt. Ist ein Schaltungsvorschlag prinzipiell geeignet, so werden mittels Simulation weitere Einzelheiten der Spezifikation wie z.B. zulässige Toleranzen ermittelt. Schließlich wird in einem letzten Schritt der endgültige Entwurf mittels Simulation überprüft. Wenn das zu untersuchende Netz durch eine nicht zu große elektrische Schaltung dargestellt werden kann, so kann mit Hilfe eines Simulators für elektrische Netzwerke der Verlauf der Knotenspannungen und Zweigströme mit großer Genauigkeit bestimmt werden. Das elektrische Netzwerk ist dabei im allgemeinen durch ein Algebro-Differentialgleichungssystem beschrieben. Der Rechenaufwand zur Lösung des Gleichungssystems wächst annähernd quadratisch mit der Anzahl der Zustandsvariablen bzw. der Anzahl der Gleichungen des Systems an. Mit zunehmender Größe des zu untersuchenden Netzes
242
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme
wird der Rechenaufwand zur Simulation schnell sehr hoch, und es ergeben sich lange Abarbeitungszeiten. Spätestens wenn die Dauer der Simulation die Zeit überschreitet, innerhalb derer Ergebnisse der Implementierungsaufgabe erwartet werden, müssen Vereinfachungen gesucht werden, die den Rechenaufwand drastisch reduzieren. Dabei ist zwischen der erreichten Einsparung an Rechenzeit und der damit verbundenen Verringerung der Genauigkeit der Ergebnisse abzuwägen.
12.1 Modellierung von Neuron und Synapse Eine Möglichkeit zur Reduzierung des Rechenaufwandes besteht in einer weitgehenden Verringerung der Anzahl der Zustandsvariablen. In einem elektrischen Netzwerk, das eine reale integrierte Schaltung beschreibt, ergeben sich sehr viele Zustandsvariablen, da bei jedem Halbleiterbauelement einige innere und äußere Ladungsmengen getrennt berücksichtigt werden müssen und jede einzeln berücksichtigte Ladungsmenge eine Zustandsvariable ergibt. Werden auch parasitäre Bauelemente berücksichtigt, so ergeben sich weitere Zustandsvariablen für die Ladungen parasitärer Kondensatoren und für zusätzliche Knoten aufgrund von Leitungswiderständen. Ausgangspunkt für die Vereinfachung sind folgende Näherungen: -
Zustandsvariablen, deren Werte sich nur geringfügig ändern, werden durch Konstanten angenähert. Dadurch verringert sich die Anzahl der Gleichungen des Systems. Der Verlauf schneller transienter Vorgänge wird vernachlässigt. Dazu wird angenommen, daß sich der Endwert eines solchen Vorganges verzögerungsfrei einstellt.
Dadurch gehen einige der Differentialgleichungen des Systems in algebraische Gleichungen über, so daß sich der Aufwand bei der Lösung reduziert [95]. Eine weitere Möglichkeit zur Reduzierung des Aufwandes besteht in der Vereinfachung der im Algebro-Differentialgleichungssystem auftretenden Funktionen. Möglichst viele davon werden näherungsweise durch Ausdrücke ersetzt, die bei der numerischen Lösung des Gleichungssystems mit geringem Aufwand auswertbar sind. Anstatt jedoch die genannten Vereinfachungen am Gleichungssystem selbst vorzunehmen, wird ein vereinfachtes Gleichungssystem vom Schaltplan der Implementierung der Neuronen und Synapsen abgeleitet. Das hat vor allem praktische Gründe und bietet, abgesehen von der erleichterten numerischen Lösung, weitere Vorteile. Die Modelle zur Beschreibung der Bauelemente aktueller integrierter Schaltungen sind umfangreich [96]. Dementsprechend wird das Gleichungssystem zur Beschreibung einer Schaltung sehr kompliziert. Es ist außerdem nicht unmittelbar verfügbar, sondern wird in maschinell bearbeitbarer Form innerhalb
12.1 Modellierung von Neuron und Synapse
243
des Schaltungssimulators, des Simulators für elektrische Netzwerke, aufgebaut [97]. Um vereinfachte Modelle zu erhalten, wird die Schaltung unter Verwendung analytisch handhabbarer, einfacher Modelle der elektronischen Bauelemente analysiert. Diese Modelle müssen dazu so ausgewählt werden, daß sie den zu untersuchenden Betriebsfall mit genügend kleiner Abweichung vom detaillierten Modell bzw. dem tatsächlichen Verhalten beschreiben. Im Fall geringer Arbeitsgeschwindigkeit und vorwiegenden Betrieb der MOS-Transistoren im Bereich schwacher Inversion unterhalb der Schwellspannung ist dazu das Modell von Enz, Krummenacher und Vittoz [98] für Gleichsignalbetrieb, kurz das EKV-DC-Modell, geeignet. Es wird in den folgenden Abschnitten verwendet, in denen vereinfachte Modelle der Neuronen und ihrer Synapsen zur Simulation großer Netze hergeleitet werden. Neuron In Abbildung 11.5 wurde die Transistorschaltung des Neurons gezeigt. Der Schwellwertschalter enthält eine positive Rückkopplung, die ein kurzes Umschalten bewirkt. Die Rückkopplung wird gerade so dimensioniert, daß sich vernachlässigbar kurze Schaltzeiten ergeben. Der Schaltzustand des Schwellwertschalters kann darum durch eine diskrete Zustandsvariable modelliert werden. Die Ausgangstransistoren MN 14 , MP 11 werden entweder bei geringem Strom im Ohmschen Bereich oder gesperrt betrieben. Im Ohmschen Bereich wird darum der Spannungsabfall über ihnen und im Sperrbereich der Strom durch sie vernachläßigt. Die Ausgangsspannung nimmt mit dieser Näherung nur die Werte der Betriebsspannung und null an, zwischen denen sie mit dem Schaltzustand wechselt. Für die Ausgangsspannung ist daher keine eigene Zustandsvariable erforderlich. Die Transistoren MN 6 und MP 5 werden als Schalter verwendet. In Abhängigkeit des Schaltzustandes des Schwellwertschalters ist entweder MP 5 durchlässig und MP 4 wird im Sättigungsbereich mit näherungsweise konstantem Drainstrom betrieben oder MP 5 ist gesperrt und MN 6 ist durchlässig, so daß IC = Iin gilt. Damit kann IC als algebraische Variable geschrieben werden: ( IMP 4 x = 1 IC = (12.1) Iin x=0, wobei x = 1 den Schaltzustand des Schwellwertschalters mit Up ≈ Ub (Betriebsspannung) bezeichnet. Die Eingangsspannung ist im Fall x = 0 gleich der Kondensatorspannung UC . Im Fall x = 1 stellt sich mit dem Eingangsstrom Iin und den intrinsischen Kapazitäten der Schalttransistoren und den Parasitärkapazitäten am Eingang schnell eine Eingangsspannung Uin ein, so daß Iin = 0 gilt:
244
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme
x = 0 ⇒ Uin = UC
x = 1 ⇒ Iin (Uin ) = 0 .
(12.2)
Die Abhängigkeit des Eingangsstromes Iin von der Eingangsspannung Uin ergibt sich aus dem Verhalten der dort angeschlossenen Schaltung für das Synapsengewicht. Synapse Unter Verwendung vereinfachter, analytisch handhabbarer Transistormodelle [98] wurde die Schaltung in Abbildung 11.13 analysiert. Daraus ergab sich folgende Adaptionsfunktion der Implementierung:
w˙kl = −γ0 (1 − eγ1 wkl ) − γ2 wkl +
(
µ0 · tanh µ1 (ak − θ/2) xl = 1 0 sonst .
(12.3)
Die Parameter γ0,1,2 und µ0,1 dieser Funktion wurden aus den Ergebnissen der Simulation der Transistorimplementierung der Adaptionsschaltung abgeleitet.
12.2 Ergebnisse der Modellierung Die Eignung der abstrahierten Modelle für die Neuron-, Synapsen- und Adaptionsschaltungen wurde durch vergleichende Simulationen überprüft. Dazu wurde das zeitliche Verhalten eines Netzwerks mit 5 × 5 Neuronen (Abbildung 12.1) sowohl auf der Grundlage einer Netzwerksimulation als auch mit dem im folgenden beschriebenen Simulationsverfahren mit abstrahierten Grundelementen bestimmt. Durch die zusätzliche Einbeziehung von parasitären Schaltungselementen (z.B. Leitungs- und Koppelkapazitäten sowie Leitbahnwiderständen) ist davon auszugehen, daß die Ergebnisse der TransistorNetzwerksimulation gut mit dem Verhalten der implementierten Schaltungen übereinstimmen. Diese Annahme wurde auch durch spätere Messungen an integrierten Einzelschaltungen verifiziert. Abbildung 12.2 zeigt den zeitlichen Verlauf der Pulsereignisse in den beiden Simulationen. Aufgrund der näherungsweisen Implementierung der Gewichte und insbesondere der Adaptionsfunktion stimmen die Impulsmuster nicht genau mit denjenigen überein, die mit dem idealen Modell (10.25) und dem Modell der Implementierung (12.3) gewonnen werden. Um beide dennoch vergleichen zu können, werden statistische Maße zur Bewertung der Synchronität der neuronalen Impulsfolgen verwendet. Dazu wird zunächst ein Synchronitätsmaß für zwei Neuronen eingeführt. Dieses kann dann für verschiedene Bereiche eines Testbildes zusammengefaßt werden, um die Synchronität im Netzwerk zu beschreiben.
12.2 Ergebnisse der Modellierung
245
Abb. 12.1 Aufbau und Stimulierung des simulierten Netzwerkes
(a) Schaltungssimulation basierend auf extrahierten Layoutdaten, Rechenzeit 5 T age
(b) abstraktes Modell, Rechenzeit 5 min
Abb. 12.2 Vergleich der Impulszeitpunkte im zeitlichen Verlauf der Simulation
246
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme
Es wird ein geordnetes Paar von Neuronen betrachtet. Für jedes solche Paar ergibt sich eine Folge von Impulsabständen. Verwendet wird jeweils der Abstand von einem Impuls des ersten Neurons bis zum darauffolgenden Impuls des zweiten Neurons. Die Standardabweichung σ∆tf der Impulsabstandsfolge ist für jedes Neuronenpaar eine Maßzahl für deren Synchronität. Um die Synchronität in einem Teil des Netzwerkes beurteilen zu können, wird die Verteilung der σ∆tf über alle geordneten Neuronenpaare in diesem Teil des Netzwerkes betrachtet. Es hat sich als günstig erwiesen, zur Bewertung der Implementierung einfache Testbilder zu verwenden, deren Segmentierung bekannt ist. Die Impulsabstandsfolgen werden aufgenommen, nachdem eine Zeit T verstrichen ist, in der sich die Synchronität einstellen konnte. Man erwartet von Neuronenpaaren, deren beide Neuronen im selben Segment des Testbildes liegen, eine geringe Standardabweichung der Impulsabstände. Liegen dagegen die Neuronen eines Paares in verschiedenen Segmenten, so wird keine Synchronität erwartet, was sich in einer hohen Standardabweichung der Impulsabstände äußert. Deshalb wird die Verteilung der σ∆tf für beide Teilmengen von Neuronenpaaren getrennt ermittelt. Die Verteilungen, die sich bei verschiedenen Simulationen ergeben, können nun miteinander verglichen werden (Abbildung 12.3). Dabei wird die Synchronität im Netzwerk als gleichwertig angesehen, wenn sich zwischen den Verteilungen keine signifikanten Unterschiede ergeben. Die so gewonnenen einfachen Modelle sind damit geeignet, Simulationen von neuronalen Netzwerken relevanter Größe durchzuführen. 1
1
d 0.8
c 0.6
0.8
c,d
0.6 0.4
0.4
b
0.2
b
0.2
a
a
0
0
0
0
50
100 150 200 250 300 350 400 450 500
(a) ideales Verhalten Gleichung (10.25)
entsprechend
50
100 150 200 250 300 350 400 450 500 time (arbitrary units)
(b) Implementierung der Adaptionsregel nach (12.3)
Abb. 12.3 Relative zeitliche Überlappung der Pulse benachbarter Neuronen. Kurve a bei hohem Kontrast, Kurve b in einem kleineren Bereich mit niedrigem Kontrast, Kurven c, d innerhalb eines größeren Bereiches mit niedrigem Kontrast.
12.3 Simulationsmethoden
247
12.3 Simulationsmethoden Die meisten Neuronen im biologischen Vorbild kommunizieren untereinander durch diskrete Ereignisse, die Aktionspotentiale. Die Aktionspotentiale werden im Inneren der Neuronen durch kontinuierliche Prozesse erzeugt. Der Vorgang kann gut durch ein zeit- und wertkontinuierliches System - dargestellt durch ein Differentialgleichungssystem - beschrieben werden. Die Auslösung des Aktionspotentiales entspricht in diesem Modell der Überschreitung eines Schwellwertes durch eine der Zustandsvariablen oder allgemeiner durch eine Funktion der Zustandsvariablen und ihrer Ableitungen. Die Schwellwertüberschreitung findet zu einem diskreten Zeitpunkt statt. Untereinander wechselwirken die Neuronen durch Aktionspotentiale, welche Änderungen der synaptischen Leitfähigkeit auslösen. Im Modell des Differentialgleichungssystems ist an solchen Zeitpunkten die Störfunktion oder ein zeitabhängiger Parameter nicht stetig, oder es gilt nach dem Zeitpunkt eine andere Beschreibung mit einem anderen Differentialgleichungssystem1. In den abstrakten Neuronenmodellen (vgl. Abschnitt 10.3) ändert sich ebenfalls zu diskreten Zeitpunkten das Differentialgleichungssystem. Die diskreten Zeitpunkte können als Eingaben vorgegeben, durch Schwellwertbedingungen gegeben sein oder mit den Zustandsübergängen diskreter Zustandsvariablen zusammenfallen. In der technischen Nachbildung beschränkt man sich oft ebenfalls auf Netze, bei denen die Kopplung der Neuronen durch binäre, d.h. diskrete, Schaltsignale erfolgt. In diesem häufigen Fall besteht zwischen den kontinuierlichen Teilen verschiedener Neuronen keine kontinuierliche Kopplung. In der Simulation, d.h. der numerischen Berechnung des Verlaufes der Zustandsvariablen werden alle diese diskreten Wechsel - also Zustandsübergänge diskreter Zustandsvariablen, Unstetigkeitsstellen zeitabhängiger Parameter und Überschreitungen von Schwellwerten - als diskrete Ereignisse behandelt. Das gesamte zu simulierende System wird dadurch in zwei Teile gegliedert: ein analoges System mit wert- und zeitkontinuierlichen Zustandsvariablen und ein diskretes System, welches die Weiterleitung, Verknüpfung, Speicherung usw. der diskreten Ereignisse und diskreten Zustandsvariablen beschreibt. Numerische Integration mit diskreten Zustandsübergängen Zwischen den diskreten Ereignissen sind die diskreten Zustandsvariablen konstant. Das analoge System kann im Inneren jedes Zeitintervalls zwischen zwei 1
Die gänzliche Änderung des Differentialgleichungssystems läßt sich durch eine mit einem zeitabhängigen Parameter gewichtete Addition der betreffenden Systeme auf den Fall unstetiger Parameter zurückführen und wird auch so behandelt. Jedoch ist die Betrachtung als Wechsel des Differentialgleichungssystems in einigen Fällen anschaulicher.
248
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme
diskreten Ereignissen wie ein gewöhnliches analoges System mit stetigen Parametern behandelt werden. Der Verlauf der kontinuierlichen Zustandsvariablen kann auf gewöhnliche Weise, d.h. durch explizite oder numerische Lösung der entsprechenden Anfangswertaufgabe für das Differentialgleichungssystem bzw. im allgemeinen des Algebro-Differentialgleichungssystem, welches den Verlauf der kontinuierlichen Zustandsvariablen beschreibt, bestimmt werden. Bei jedem diskreten Zustandsübergang ändert sich das Algebro-Differentialgleichungssystem. Dementsprechend wird im darauf folgenden Zeitintervall bis zum nächsten diskreten Zustandsübergang eine neue Anfangswertaufgabe zu lösen sein. Einige Zustandsvariablen bleiben bei dem diskreten Zustandsübergang erhalten, z.B. die Kondensator-Ladungen in einer Schaltung, die unter anderem Kondensatoren sowie Schalter oder sprunghaft veränderliche Strom- oder Spannungsquellen enthält. In der neuen Anfangswertaufgabe gleichen die Anfangswerte dieser Zustandsvariablen ihren linksseitigen Grenzwerten an der rechten Grenze des zurückliegenden Intervalls. Für andere kontinuierliche Zustandsvariablen müssen geeignete Anfangswerte gefunden oder festgelegt werden. Ein einfacher Ansatz für ein Simulationsprogramm besteht also darin, ausgehend von einem diskreten Ereignis den Zeitpunkt des nächsten diskreten Ereignisses zu ermitteln und anschließend für das Intervall zwischen den beiden Zeitpunkten den Verlauf der kontinuierlichen Zustandsvariablen zu berechnen. In einer Abwandlung des Verfahrens wird ausgenutzt, daß neuronale Netze aus vielen separaten analogen Teilsystemen bestehen. Für diese können im ersten Schritt die nächsten Ereignisse getrennt bestimmt werden. Von diesen wird das zeitlich nächstliegende ausgewählt. Der Verlauf der kontinuierlichen Zustandsvariablen der analogen Teilsysteme wird dann im zweiten Schritt bis zu dem Zeitpunkt des ausgewählten Ereignisses berechnet, wobei wieder ausgenutzt werden kann, daß die Teilsysteme separiert sind. Nachteilig an dieser Methode ist: -
-
In großen Netzwerken mit spärlicher Vernetzung (z.B. lokal gekoppelte Felder technischer neuronaler Netze oder Ausschnitte des biologischen Vorbilds ab einer gewissen Größe) ist auch bei geringer Gesamtaktivität die Wahrscheinlichkeit hoch, daß Ereignisse an weit entfernten Stellen des Netzes zeitlich nahe beieinander liegen. Dadurch wird die Schrittweite, mit der der Verlauf der kontinuierlichen Zustandsvariablen berechnet wird, in allen analogen Teilsystemen sehr kurz, unter Umständen sehr viel kürzer, als es numerische Lösungsverfahren für jedes einzelne analoge Teilsystem verlangen. Der Rechenaufwand ist hoch, da für jedes analoge Teilsystem zunächst das folgende Ereignis und anschließend der Verlauf bis zu einem ausgewählten Zeitpunkt berechnet wird.
12.3 Simulationsmethoden
249
Ereignisgesteuerte explizite Berechnung In dem Fall, daß sich die Gleichungssysteme der analogen Teilsysteme explizit lösen lassen, können die Ereigniszeitpunkte direkt aus der Gleichung bestimmt werden, die die Schwellwertüberschreitung beschreibt – entweder durch explizites Auflösen der Gleichung oder numerisch. Ist der Verlauf der kontinuierlichen Zustandsvariablen explizit bekannt, so erübrigt sich die Berechnung ihrer Werte zu jedem Ereigniszeitpunkt im Netz. Die explizite Lösung bleibt bis zum Eintreffen eines Ereignisses an dem analogen Teilsystem gültig. Trifft ein Ereignis vor einer Schwellwertüberschreitung und der damit verbunden Auslösung eines weiteren diskreten Ereignisses ein, so ist das letztere Ereignis zu verwerfen, die Werte der Zustandsvariablen zum Zeitpunkt des eintreffenden Ereignisses sind zu bestimmen und ab dem eintreffenden Ereignis gilt ein verändertes Gleichungssystem, das eine andere explizite Lösung besitzt. Aus dieser kann sich ein nachfolgendes diskretes Ereignis zu einem anderen Zeitpunkt ergeben. Die Simulation des gemischten Systems ist damit auf die Simulation eines diskreten Systems in kontinuierlicher Zeit zurückgeführt. Eine Simulation nach dieser Methode erfordert die Verwaltung einer geordneten Liste der diskreten Ereignisse mit der Möglichkeit, einzelne Ereignisse aus der Liste zu entfernen und neue Ereignisse einzusortieren. Das Verfahren beschränkt sich auf die Fälle, in denen der Verlauf der Zustandsvariablen in den analogen Teilsystemen explizit angegeben werden kann. Das trifft auf viele abstrakte Punktneuronenmodelle zu. Allgemeines Simulationsverfahren für kontinuierlich-diskrete Systeme Im allgemeinen ist es nicht möglich, die Lösung des Algebro-Differentialgleichungssystems, welches den Verlauf der kontinuierlichen Zustandsvariablen der analogen Teilsysteme beschreibt, explizit anzugeben. Liegen mehrere separierte analoge Teilsysteme vor, so ist es sinnvoll, den Verlauf der kontinuierlichen Zustandsvariablen der verschiedenen Teilsysteme unabhängig voneinander zu berechnen. Es können also mehrere Anfangswertaufgaben für AlgebroDifferentialgleichungssysteme unabhängig voneinander gelöst werden. Die Diskretisierungsschritte in der Lösung einer Anfangswertaufgabe werden dabei ebenfalls unabhängig von denen in allen anderen Anfangswertaufgaben gewählt. Dieses Vorgehen wird hier als lokale Schrittweitensteuerung bezeichnet. Numerische Integration Zur Lösung der Anfangswertaufgabe für das Algebro-Differentialgleichungssystem in jedem einzelnen analogen Teilsystem kommt ein Software-Paket zum Einsatz, in dessen Funktionen implizite Mehrschrittverfahren erster bis fünfter Ordnung mit Schrittweiten- und Ordnungssteuerung implementiert
250
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme
sind [99]. Diese Verfahren sind zur effizienten Behandlung steifer Differentialgleichungssysteme geeignet, weil sie auch bei Schrittweiten, die sehr viel größer sind als die kleinste Zeitkonstante2 , numerisch stabil sind. Das ist vor allem bei der Simulation von elektrischen Schaltungen wichtig, da die Differentialgleichungssysteme, die deren Verhalten beschreiben, häufig besonders steif sind. Die Software-Funktion wird im Einzelschritt-Modus verwendet. Bei jedem Aufruf führt sie einen Diskretisierungsschritt des numerischen Verfahrens aus und berechnet anhand der Schrittweitensteuerung den Zeitpunkt t am Ende ˙ des Schrittes und die Näherungen y(t) und y(t) der Zustandsvariablen und ihrer Ableitungen. Außerdem ermittelt die Software-Funktion die Nullstellen weiterer Funktionen der Zustandsvariablen. Damit lassen sich die Zeitpunkte, zu denen Schwellwerte erreicht bzw. überschritten werden, bestimmen. Für den Schwellwert θ der Zustandsvariable yν lautet die Funktion, deren Nullstellen mit der ˙ t) = yν (t) − θ. Schwellwertüberschreitung zusammenfallen: fRT,ν (y, y, Tritt in dem zu berechnenden Diskretisierungsschritt eine solche Nullstelle auf, so wird das Ende des Diskretisierungsschrittes im Rahmen der geforderten Genauigkeit als Nullstelle bestimmt und die dazu gehörigen Werte der Zustandsvariablen und ihrer Ableitungen werden berechnet. Wechselwirkung mehrerer analoger Teilsysteme Die Zeitpunkte von diskreten Ereignissen, die durch Schwellwertüberschreitung kontinuierlicher Zustandsvariablen ausgelöst werden, ergeben sich erst im Verlauf der schrittweisen Lösung der Anfangswertaufgaben für die kontinuierlichen Zustandsvariablen. Tritt in einem analogen Teilsystem ein diskretes Ereignis auf, so wird es dabei häufig vorkommen, daß in einem anderen, von diesem Ereignis veränderten analogen Teilsystem bereits ein Diskretisierungsschritt nach dem Ereignis berechnet wurde. Um möglichst wenige Schritte der Lösung umsonst zu berechnen, ist es sinnvoll, Diskretisierungsschritte für alle analogen Teilsysteme im Wechsel zu berechnen, so daß für keines der Systeme die Lösung weder weit vorausberechnet noch weit aufgeschoben wird. Präziser formuliert ist folgende Reihenfolge der Berechnung der Diskretisierungsschritte einzuhalten: Ein System besteht aus M analogen Teilsystemen. In jedem Teilsystem wird eine Anfangswertaufgabe gelöst, und es ist zuletzt der Diskretisierungsschritt nm , m = 1 . . . M berechnet worden. Im gemeinsamen Bezugssystem ge(n ) hören dazu die Zeitpunkte tm m . Als nächstes wird ein Diskretisierungsschritt für dasjenige analoge Teilsystem m′ berechnet, dessen Lösung am wenigsten weit berechnet wurde: m) m′ = arg min t(n . m
m
2
(12.4)
Bei nichtlinearen Systemen kann die kleinste Zeitkonstante des am betrachteten Punkt (y, t) linearisierten Systems zum Vergleich herangezogen werden.
12.3 Simulationsmethoden
251
Auf diese Weise gilt für jedes analoge Teilsystem m, daß diskrete Ereignisse stets entweder nach dem zuletzt berechneten Diskretisierungsschritt (n ) zum Zeitpunkt tm m zu liegen kommen oder in das zuletzt berechnete In(nm −1) (nm ) , tm ] fallen. Zur Begründung wird angenommen, im analotervall [tm gen Teilsystem m′ werde bei der Berechnung des nächsten Diskretisierungsschrittes ein diskretes Ereignis festgestellt, so daß der Schritt zum Zeitpunkt (n +1) t0 = tm′m′ des Ereignisses führt. Wegen (12.4) gilt für alle m 6= m′ : (nm′ ) (nm −1) (n +1) ≤ tm ′ tm < tm′m′ . Damit liegt für jedes Teilsystem m der Zeit(n ) (n ) (n −1) im letzten Intervall (t0 ≤ tm m ) oder danach (t0 > tm m ). punt t0 > tm m In Abbildung 12.4 ist ein Beispiel dafür dargestellt. A
1
3
t
6
B 2
4
5a
5b
t
Abb. 12.4 Numerische Berechnung der Lösung der Anfangswertaufgaben in einem System aus zwei analogen Teilsystemen. Es wird stets der nächste Diskretisierungsschritt für dasjenige analoge Teilsystem berechnet, dessen bereits erreichter Zeitpunkt am weitesten links liegt (Schritte (1) bis (5a) bzw. (5b)). Tritt ein diskretes Ereignis auf (Schritt (6)), so liegt es entweder nach den bereits berechneten Zeitpunkten (vorausgegangen war Schritt (5a)) oder im zuletzt berechneten Intervall (vorausgegangen war die Berechnung des Schrittes (5b)). In den von dem diskreten Ereignis betroffenen analogen Teilsystemen werden die Werte der Zustandsvariablen zum Zeitpunkt t0 des Ereignisses be(n −1) nötigt. Wegen t0 > tm m genügt es dazu, stets neben dem aktuellen Diskretisierungsschritt nm auch den letztem Diskretisierungsschritt nm − 1 zu speichern. Liegt das diskrete Ereignis im zuletzt berechneten Intervall, so müssen Zwischenwerte für die Zustandsvariablen berechnet werden. Liegt das Ereignis noch nach dem zuletzt berechneten Intervall, so kann zunächst die Berechnung weiterer Diskretisierungsschritte durchgeführt werden, bis ein Intervall berechnet wurde, in dem das diskrete Ereignis liegt. Damit sind beide
252
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme
Fälle auf die Berechnung von Zwischenwerten der Zustandsvariablen in einem bereits berechneten Intervall zurückgeführt. Die Zwischenwerte können durch Interpolation bestimmt werden. Dazu eignet sich das in dem numerischen Lösungsverfahren ohnehin zur Abschätzung des Diskretisierungsfehlers verwendete Interpolationspolynom. In dem verwendeten Software-Paket DASKR [99] ist jedoch keine Funktion zu dessen Auswertung an einer Stelle im Inneren des letzten Intervalls vorhanden. Deshalb muß zusätzlich ein Interpolationspolynom bestimmt werden. An den Grenzen des betrachteten Intervalls stehen die Werte der Zustandsvariablen und ihrer Ableitungen zur Verfügung. Deshalb ist es sinnvoll, zur Interpolation ein kubisches, hermitesches Spline zu verwenden, ein Polynom dritten Grades, das an den Grenzen des Intervalls mit den Werten und Ableitungen der Zustandsvariablen übereinstimmt. Das diskrete Ereignis führt zu einer Änderung des Algebro-Differentialgleichungssystems, welches den Verlauf der Zustandsvariablen beschreibt, so daß eine neue Anfangswertaufgabe ab dem Zeitpunkt t0 des Ereignisse in allen betroffenen analogen Teilsystemen gestellt werden muß. Bei Zustandsvariablen, die dabei erhalten bleiben, wird als Anfangswert der eben berechnete Zwischenwert zum Zeitpunkt t0 verwendet. Für Zustandsvariablen, die nur in bestimmten Intervallen auftreten, müssen geeignete Anfangswerte festgelegt werden. Gültigkeit der diskreten Ereignisse Kommen mehr als zwei analoge Teilsysteme oder Rückkopplung durch diskrete Ereignisse vor, so treten weitere Abhängigkeiten auf. Abbildung 12.5 zeigt ein Beispiel für drei Teilsysteme A, B und C, mit dem die allgemeine Behandlung der möglichen Fälle gezeigt wird. Ausgangspunkt sei der Fall, daß ein diskretes Ereignis zu einem Zeitpunkt tB im Teilsystem B festgestellt wird. Jedoch wird nun durch ein anschließend im Teilsystem A festgestelltes Ereignis zum Zeitpunkt tA mit tA < tB das Algebro-Differentialgleichungssystem des Teilsystems B verändert. Damit ist das Ereignis zu tB nicht mehr gültig, weil bei tB bereits eine andere Anfangswertaufgabe gilt. Infolgedessen ändert sich in den von Ereignissen im Teilsystem B abhängigen Teilsystemen (im Beispiel C) das Algebro-Differentialgleichungssystem doch nicht oder zu einem anderen Zeitpunkt. Die Überlegungen zur Gültigkeit der im Teilsystem B festgestellten Ereignisse können sinngemäß auf A übertragen werden, so daß auch die Feststellung des Ereignisses zu tA zunächst vorläufig ist. Ein Ereignis in einem Teilsystem m zu einem Zeitpunkt t0 kann erst dann zweifelsfrei festgestellt werden, wenn keine Berechnung irgendeines Diskretisierungsschrittes in den anderen Teilsystemen mehr aussteht, die das Algebro-Differentialgleichungssystem im Teilsystem m vor t0 verändern kann. Das ist mit Sicherheit der Fall, wenn bei der fortgesetzten Anwendung von (12.4) das Teilsystem m zur Berechnung des nächsten Schrittes ausgewählt wird.
12.3 Simulationsmethoden
253
A
t
4
B
t
tB 2 C
t
3
a)
1
A
4
t
tA
B
tA
5
t
tB
C
b)
6b
6a
t
A
t
AWA B
t
C
c)
tB
t
Abb. 12.5 Wechselwirkung mehrerer analoger Teilsysteme: a) Ein diskretes Ereignis im Teilsystem B (Schritt (2)) bei t = tB bewirkt eine Änderung des Gleichungssystems des betroffenen Teilsystems C (Schritt (3)). b) Durch ein Ereignis im Teilsystem A bei t = tA wird der zweite Teil t ∈ (tA , tB ] des eben berechneten Intervalls für das Teilsystem B ungültig und das Ereignis bei t = tB wird unwirksam. Im Teilsystem C ändert sich das Gleichungssystem doch nicht (6a) oder zu einem anderen Zeitpunkt (6b). c) Die Überlegungen lassen sich rekursiv fortsetzen. Eine neue Anfangswertaufgabe (AWA) mit veränderten Gleichungssystemen kann erst dann gestellt werden, wenn ein Ereignis sicher feststeht, d.h. wenn keine weiteren Ereignisse zu früheren Zeitpunkten auftreten können.
254
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme
Wenn das Teilsystem m ausgewählt wurde, können die Änderungen in seinem Algebro-Differentialgleichungssystem vorgenommen werden und es kann der erste Schritt einer neuen Anfangswertaufgabe im Teilsystem m berechnet werden. Außerdem sind nun erst in allen weiteren von dem Ereignis betroffenen Teilsystemen die Zwischenwerte der Zustandsvariablen bei t0 zu bestimmen und ebenfalls neue Anfangswertaufgaben in veränderten AlgebroDifferentialgleichungssystemen zu formulieren. Ablaufsteuerung der Simulation Die in den vorangegangenen Abschnitten zusammengetragenen Aspekte der wechselseitigen Beeinflussung analoger Teilsysteme durch diskrete Ereignisse werden zu einem Ablaufplan zur Steuerung der Berechnung der Folgen der Diskretisierungsschritte zusammengefaßt. Alle analogen Teilsysteme werden in einer Liste erfaßt, die in aufsteigender Reihenfolge nach den Zeitpunkten der zuletzt berechneten Diskretisierungsschritte geordnet ist. Gemäß (12.4) wird das am ersten Listenplatz eingetra(n ) gene Teilsystem m′ , für das der letzte Zeitpunkt tm′m′ berechnet wurde, zur Berechnung des nächsten Diskretisierungsschrittes ausgewählt. Dieser führt (n +1) zum Zeitpunkt tm′m′ . Das Teilsystem m′ wird daraufhin neu in die Liste (n +1) (n ) einsortiert. Alle Teilsysteme m mit tm m < tm′m′ rücken einen Listenplatz ′ nach vorn, während m den dadurch frei gewordenen Listenplatz einnimmt3 . Wird bei der Berechnung des Diskretisierungsschrittes für das Teilsystem m′ ein diskretes Ereignis festgestellt, so wird m′ entsprechend markiert und wie gewohnt neu in die Liste einsortiert. Wird ein markiertes Teilsystem m′ zur Berechnung des nächsten Diskretisierungsschrittes ausgewählt, so steht das Ereignis, dessentwegen es markiert worden war, sicher fest. Ehe ein weiterer Schritt berechnet werden kann, ist für die von dem Ereignis betroffenen Teilsysteme folgendes auszuführen: bei m 6= n′ werden die Zwischenwerte der Zustandsvariablen berechnet. Etwa vorhandene Markierungen werden entfernt, da die betreffenden Ereignisse doch nicht oder zu anderen Zeitpunkten stattfinden. Es werden neue Anfangswertaufgaben gestellt und alle betroffenen Teilsysteme werden unmittelbar nach dem Teilsystem m′ vor allen anderen Teilsystemen in die Liste einsortiert. Erst dann wird für das analoge Teilsystem m′ der nächste Diskretisierungsschritt bzw. der erste Schritt einer neuen Anfangswertaufgabe (wenn das Ereignis auch sein Gleichungssystem veränderte) berechnet. Anschließend wird in der gewohnten Weise mit der Auswahl eines Teilsystems gemäß (12.4) zur Bestimmung des nächsten Schrittes fortgefahren. 3
In der Software-Implementierung werden selbstverständlich nicht die Speicherinhalte mit den kompletten Zuständen der Lösungsverfahren verschoben, sondern Felder von Verweisen sortiert bzw. in einer durch Zeiger verketteten Struktur die Zeiger an der Einfügestelle und am Listenanfang verändert.
12.3 Simulationsmethoden
255
Ergänzungen zum Ablauf und zur Anwendung In bestimmten Situationen läßt sich der Zeitpunkt mindestens des nächsten diskreten Ereignisses direkt berechnen: -
-
bei externen Eingaben diskreter Ereignisse - wie z.B. Taktsignale, stückweise konstante unabhängige Quellen oder aufgezeichnete Ereignisfolgen; in analogen Teilsystemem, wenn das Algebro-Differentialgleichungssystem explizit lösbar ist und der nächste Zeitpunkt eines diskreten Ereignisses dann aus dem Verlauf der Zustandsvariablen explizit oder numerisch berechnet werden kann; in diskreten Teilsystemen, deren Beschreibung die explizite Bestimmung folgender Ereignisse enthält.
Durch den ersten und letzten Punkt wird der Simulationsablauf um die Behandlung externer Eingaben und diskreter Teilsysteme erweitert. Die Behandlung besonders einfacher analoger Teilsysteme läßt sich gemäß des mittleren Punktes auf die Behandlung diskreter Systeme zurückführen. Die Behandlung dieser Fälle geschieht in der Ablaufsteuerung ohne Veränderung. Wird für ein solches Teilsystem der nächste Schritt berechnet, so reicht er unmittelbar bis zum nächsten Ereignis. In einigen Teilsystemen kann die Veränderung des Gleichungssystems durch ein diskretes Ereignis so ausfallen, daß die Bedingungen zur Auslösung eines weiteren diskreten Ereignisses sofort erfüllt sind. So kann z.B. ein Schwellwert in dem veränderten System bereits durch die Wahl der Anfangswerte überschritten werden. In diesem Fall hat ein diskretes Ereignis mindestens ein weiteres diskretes Ereignis zum selben Zeitpunkt zur Folge. Das kann in der Ablaufsteuerung in einfacher Weise berücksichtigt werden, indem das Teilsystem bereits bei der Bestimmung der Anfangswerte für die nächste Anfangswertaufgabe als Auslöser eines Ereignisses markiert wird. Besondere Vorkehrungen sind zu treffen, damit dabei nicht in einer diskreten Rückkoppelschleife unablässig neue Ereignisse zu demselben Zeitpunkt ausgelöst werden. Das kann entweder durch geeignete Formulierung der Schwellwertbedingungen oder in der Ablaufsteuerung berücksichtigt werden. Der gesamte Ablauf ist in Abbildung 12.6 zusammengefaßt. Das Verfahren wurde in Software implementiert und für die Simulationen der in diesem Buch beschriebenen Netzwerkimplementierungen verwendet. Möglichkeiten der parallelen Programmausführung Die Software enthält nur einen (natürlich verzweigten) Ausführungspfad. Sie kann deshalb nicht durch Ausführung auf einem Mehrprozessorsystem beschleunigt werden. Jedoch sind Erweiterungen denkbar, die eine parallele Abarbeitung und damit kürzere Ausführungszeit erlauben.
256
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme Start
Teilsysteme mit An− fangszeit einsortieren
Liste leer ?
ja
Ende
nein Auswahl des ersten Listenelements m’
m’ markiert ? nein
ja
Markierung entfernen DAS ändern neue AW−Aufgabe
m’
für alle von m’ abhängigen Teilsysteme
aussortieren
Zwischenwerte berechnen Markierung entfernen DAS ändern neue AW−Aufgabe
markieren
neues Ereignis ?
Schritt berechnen
Ende Simulationszeit ?
ja
nein
Ereignis ?
ja
nein
neu einsortieren
ja
markieren
nein
neu einsortieren
Abb. 12.6 Ablaufplan der Berechnung wechselwirkender Teilsysteme Bulletin Board System Auf der obersten Organisationsebene, der Ablaufsteuerung zur Auswahl des nächsten zu bearbeitenden Teilsystems, können statt einem auch mehrere Teilsysteme zur Bearbeitung ausgewählt werden und gleichzeitig von parallel arbeitenden Ausführungseinheiten bearbeitet werden. Dazu eignet sich ein „Bulletin Board System“: Ein Programmteil wählt mehrere Teilsysteme zur Bearbeitung aus und setzt diese Auswahl auf eine Abarbeitungsliste. Mehrere Exemplare eines anderen Programmteils wählen aus dieser Liste eine Aufgabe aus, markieren die Aufgabe, berechnen deren Ergebnis (i.d.R. den nächsten Diskretisierungsschritt der Lösung der Anfangswertaufgabe für ein analoges Teilsystem) und ersetzen die Aufgabe durch das Ergebnis bzw. einen Verweis auf das Ergebnis. Der Programmteil zur Auswahl der Teilsysteme muß diese Ergebnisse einsammeln und in der nach Zeitpunkten geordneten Liste der Teilsysteme vermerken. Bei dieser Vorgehensweise ist nicht mehr sichergestellt, daß ein bei der Berechnung eines Diskretisierungsschrittes festgestelltes diskretes Ereignis im oder nach dem letzten berechneten Intervall jedes anderen Teilsystems liegt. Deshalb müssen mehrere zurückliegende Schritte abgespeichert werden, damit
12.3 Simulationsmethoden
257
die Berechnung eventuell benötigter Zwischenwerte erfolgen kann. Die Details der Berechnung eines Diskretisierungsschrittes können erst dann verworfen werden, wenn sich mit dem auf diesen Schritt folgenden Intervall keine noch ausstehende Berechnung für irgend ein anderes Teilsystem mehr überlappt. (n ) Einige der Schritte, die für zusätzlich zu m′ = arg minm tm m nach (12.4) ausgewählten Teilsysteme bestimmt werden, werden umsonst berechnet, weil nachfolgend festgestellte diskrete Ereignisse in weiter zurückliegende Intervalle fallen. Zur Verminderung der damit verbundenen Einbuße an Effizienz können zur Auswahl der zu bearbeitenden Teilsysteme heuristische Verfahren eingesetzt werden. Dazu können neben dem Zeitpunkt des letzten berechneten Schrittes die vom numerischen Verfahren für den nächsten Schritt vorgesehene Schrittweite sowie die Werte der Zustandsvariablen ausgewertet werden. Die Vorteile des Verfahrens sind: -
-
Die Ausführung kann auf den gegenwärtig vorherrschenden und im Vergleich zur Rechenleistung preiswerten Mehrprozessorsystemen erfolgen, die nach dem Prinzip des Clusters, also als ein dicht verbundenes Netz aus autonomen Einzelprozessorsystemen aufgebaut sind. Der minimal erforderliche Programmieraufwand ist vergleichsweise gering: Die Software ist bereits in Auswahl und Berechnung aufgeteilt, für die Verwaltung eines Bulletin Board Systems steht frei verfügbare Software zur Verfügung.
Folgende Nachteile stehen dem gegenüber: -
-
Einige Schritte werden umsonst berechnet, so daß die verfügbare Parallelität nicht vollständig ausgenutzt wird. Zur Verminderung dieses Nachteils sind problemspezifische, heuristische Verfahren geeignet, die entsprechenden Programmieraufwand erfordern. Es ist ein erhöhter Speicheraufwand erforderlich, der gerade bei großen Systemen, bei denen eine Beschleunigung der Simulation besonders gewünscht ist, begrenzend wirken kann. Erfolgt die Berechnung für ein Teilsystem nacheinander in verschiedenen Ausführungseinheiten, so muß u.U. der gesamte Zustand des numerischen Lösungsverfahrens zu der ausführenden Verarbeitungseinheit übertragen werden. Es kann daher sinnvoll sein, mehrere Kopien der Zustände der Lösungsverfahren in den lokalen Speichern mehrerer Ausführungseinheiten vorzuhalten. Dabei ist zusätzlicher Aufwand zur Optimierung der Auslastung der Netzwerkverbindungen und der lokalen Speicher der Ausführungseinheiten erforderlich.
Parallelisierung der innersten Schleife des Lösungsverfahrens Die numerische Lösung der Anfangswertaufgaben mit impliziten Verfahren erfordert bei jedem Diskretisierungsschritt die Lösung eines nichtlinearen Gleichungssystems. Dazu wird das Newton-Verfahren eingesetzt, das bei jedem
258
12 Simulation mikroelektronischer neuronaler Schaltungen und Systeme
seiner Iterationsschritte die Lösung eines linearen Gleichungssystems erfordert. Bei großen analogen Teilsystemen sind auch die linearen Gleichungssysteme groß. Dadurch ist eine große Anzahl von Rechenschritten voneinander unabhängig und kann demnach parallel ausgeführt werden. Das verwendete Software-Paket DASKR [99] enthält keine Vorkehrung zur parallelen Ausführung unabhängiger Rechenschritte. Ein vergleichbares Paket SUNDIALS [100] enthält parallelisierende Teile für die innerste Schleife. Jedoch fehlt diesem Paket die Ermittlung von Nullstellen zusätzlicher Funktionen, so daß es nicht einfach gegen DASKR ausgetauscht werden kann. Zur Bestimmung der Schwellwertüberschreitungen wäre zusätzlicher Aufwand erforderlich, und ggf. müßte eine geringere Genauigkeit der Zeitpunkte der Schwellwertüberschreitung in Kauf genommen werden. Der Einsatz eines Software-Paketes mit parallelisierenden Funktionen und Nullstellenbestimmung wäre demgegenüber vorzuziehen. Ein genereller Nachteil dieser Form der parallelen Abarbeitung besteht darin, daß sie sich besonders für im Vergleich zu Cluster-Maschinen teurere und seltener verfügbare Vektormaschinen eignet. Aktuelle Prozessoren mit Ausführungseinheiten für Vektoroperationen (z.B.: Intel: MMX; IBM: Cell; Sun:VIS) stellen einen Kompromiß dar, dessen Eignung hier nicht untersucht wurde. Gleichzeitige Ausführung unabhängiger Simulationsläufe Eine besonders einfach zu realisierende Möglichkeit der Beschleunigung durch parallele Ausführung ergibt sich daraus, daß in der praktischen Anwendung oft viele voneinander unabhängige Läufe der Simulation durchgeführt werden, die sich nur in den Werten bestimmter Parameter der Gleichungssysteme unterscheiden. Ein Beispiel sind die Realisierungen des zufälligen Systems bei Monte-Carlo-Simulationen von Schaltungen. Steht eine Anzahl Computer, die jeweils mit einem oder mehreren Prozessoren bestückt sind, zur Verfügung, so ist es sinnvoll, gleichzeitig so viele Simulationen laufen zu lassen, wie insgesamt Prozessoren für die Aufgabe verwendet werden können. Eventuell sollten einige Prozessoren, z.B. jeweils einer eines Mehrprozessorsystems, frei gehalten werden, wenn an dem betreffenden Computer auch interaktiv gearbeitet wird. Der Vorteil dieser Methode besteht in der äußerst einfachen Realisierung, die in der obersten Hierarchie-Stufe der Implementierung und damit außerhalb der Ablaufsteuerung der Simulation selbst, vorgenommen wird, sowie in der Unabhängigkeit der Daten, die auf verschiedenen Prozessoren bearbeitet werden. Für Systeme, die genügend klein sind, um auf einem Prozessor simuliert werden zu können, ist diese Methode oft die beste Wahl. Weitere Verbesserungsmöglichkeiten 1. Bei der Modellierung elektrischer Schaltungen ergeben sich in der Regel Gleichungssysteme mit spärlich besetzter Jacobi-Matrix. Spezielle Lö-
12.4 Zusammenfassung
259
sungsverfahren für lineare Systeme mit spärlich besetzten Matrizen können deshalb zu einer kürzeren Ausführungszeit führen. Im verwendeten Software-Paket DASKR sind jedoch nur Verfahren für dicht besetzte Matrizen und Matrizen mit Bandstruktur enthalten. Auch SUNDIALS geht über dieses Maß nicht hinaus. 2. Der Einsatz eines Software-Paketes mit einer zugänglichen Funktion zur Interpolation im zuletzt berechneten Intervall erlaubt eine geringe Steigerung der Genauigkeit der zu diskreten Ereignissen berechneten Zwischenwerte der Zustandsvariablen. 3. Zur Verwaltung der nach Zeitpunkten der berechneten Schritte geordneten Liste der Teilsysteme kann der effizienteste bekannte Algorithmus für die Aufgabe „abwechselndes Einfügen eines beliebigen und Finden des kleinsten Elementes“ [101] verwendet werden.
12.4 Zusammenfassung Neuronale Netze müssen auf verschiedenen Ebenen simuliert werden: 1. Ebene der Modellierung: Neuronen und Synapsen werden mittels Gleichungen beschrieben, geeignete Algorithmen für die Simulation auf dem Rechner bestimmt und Experimente durchgeführt, mit denen Funktion und Charakterisierung eines Netzes von Neuronen erforscht werden. Gegebenenfalls legen die Ergebnisse eine Verfeinerung der Modellierung für Neuron oder Synapse nahe. 2. Ebene der Implementierung: Neuron, Synapse und Netze dieser werden mikroelektronisch dargestellt und durch Simulation der respektiven Schaltkreise Übertragungsfunktionen für Neuron bzw. Synapse gewonnen. Diese werden zusammen mit der die Vernetzung realiserenden Verdrahtung simuliert mit dem Ziel, die Charakteristik und Leistungsmerkmale mit größtmöglicher Robustheit sicherzustellen, welche eine Ebene höher gewonnen wurden. Für beide Ebenen sind Simulationsprogramme entwickelt worden, die auf Anfrage zur Verfügung gestellt werden können.
13 Architektur und Chip-Entwurf des Merkmalserkenners Jens-Uwe Schlüßler, Jörg Schreiter und Daniel Matolin
Wir beginnen mit dem Merkmalserkenner (siehe Kapitel 7), weil er ein einfacheres Netzwerk darstellt als der Merkmalsdetektor (Kapitel 6). Genau genommen beschreiben wir vom Merkmalserkenner nur den inneren Teil und lassen den Synchrondetektor außen vor. Ferner setzen wir eine spezielle Vernetzung voraus, die nur den ersten Ring von Nachbarn gleichmäßig erfasst und der Überlagerung von einem Merkmalsdetektor mit einem durch 90 GradDrehung entstehenden vertikalen Detektor entspricht. Die daraus hervorgehende Rundum-Charakteristik gibt diesem Merkmalserkenner den Namen, nämlich Fleckerkenner, und wir setzen ihn für die Segmentation (siehe Kapitel 5) ein. Bis auf die merkmalsspezifische Vernetzung liegt also ein allgemeiner Merkmalserkenner vor.
13.1 Architektur Abbildung 13.1 zeigt die prinzipielle Architektur der integrierten Schaltung eines Fleckerkenners mit einem pulsgekoppelten neuronalen Netzwerk. Die analogen Neuronschaltungen sind flächenhaft angeordnet. Jedem Neuron ist ein Pixel eines Bildsensors zugeordnet. Die Bildinformation wird zur Zeit über ein externes Interface zugeführt. Damit können Bewegungssequenzen einer Kamera sowie abgespeicherte Bilder und Bildfolgen bzw. die dadurch ausgelösten Pulsantworten der Merkmalsdetektoren eingegeben werden. Im Konzept des Gesamtsystems, welches einen 3D-Stapel von diversen Chips für Merkmalskaskade samt -erkenner verwendet, wird diese Signalinformation jedem Neuron direkt von einem im Stapel darüber liegenden Photosensorchip bzw. Merkmalsdetektorchip zugeführt (siehe Kapitel 15, 16). Die Nachbarneuronen sind über dynamische (adaptive) Synapsen verbunden. Neuronen und Synapsen sind wie im Kapitel 11 beschrieben realisiert. Die in Abbildung 13.2 gezeigte Blockstruktur ergänzt die Systemdarstellung um die externen Schnittstellen des Chips. Über die eingangsseitige Schnittstelle werden die stimulierenden Pixel/Pulsdaten, die Anfangswerte der
262
13 Architektur und Chip-Entwurf des Merkmalserkenners
Abb. 13.1 Prinzipschaltung des Fleckerkenners mit Neuronschaltung (links unten) und Gewichtsadaptionsschaltung (rechts unten) Synapsen sowie Parameter der Neuron- und Synapsenfunktionen eingeprägt. Die meisten dieser Daten und Parameter werden in digitalisierter Form dem Merkmalserkenner zugeführt. Ein im Merkmalserkenner integrierter DigitalAnalog-Umsetzer (Abschnitt 11.4) wandelt die Daten in Analogwerte um. Über die am Rand der Neuronmatrix angeordnete Auswahlschaltung kann jedes Neuron separat adressiert werden. Die in den Neuronknoten ausgelösten Pulssignale können entweder direkt über 3D-Verbindungen an darüber liegende Chips, z.B. Pulsrouter, oder an Pins am Rand des Chips weitergegeben werden. Die letzte der beiden Varianten ist hauptsächlich für den Funktionstest des einzelnen Chips vorgesehen.
Abb. 13.2 Architektur des Merkmalserkenners
13.2 Schnittstellen für Test und Anzeige
263
13.2 Schnittstellen für Test und Anzeige Zur Eingabe der Bild-/Pulsdaten in den Testchip und zur Voreinstellung der Gewichtswerte werden Digital-Analog-Umsetzer in Current-Mode-Schaltungstechnik eingesetzt (Abschnitt 11.4). Bei der erstmaligen Implementierung einer komplexen analogen Schaltung ist die anschließende meßtechnische Charakterisierung der analogen Schaltungsteile notwendig. Für diesen Zweck ist die in Abbildung 13.3 gezeigte Testschnittstelle auf dem Chip integriert. Sie ermöglicht die Stimulierung einzelner Eingänge und die Beobachtung des Akkumulatorpotentials getrennt anwählbarer Neuronschaltungen.
Abb. 13.3 Interface für Test und Messungen an analogen Komponenten Die Arbeitsgeschwindigkeit des Systems wurde im Vergleich zu den biologisch relevanten Pulsraten auf ein Vielfaches erhöht, um die Erkennungsleistung des Systems und die Flächeneffizienz der Implementierung zu verbessern. Der begrenzende Faktor ist jedoch die Signalbandbreite der Ausleseschaltungen. Bei der gewählten Geschwindigkeit können bis zu ca. 160 Millionen neuronale Pulse je Sekunde entstehen, wenn alle Neuronen mit der maximalen Frequenz arbeiten. Der zur Inbetriebnahme und Erprobung vorgesehene IC-Tester verfügt über 48 Digitalkanäle mit einer maximalen Abtastrate von 100 M Hz. Da nicht alle Kanäle für den Datentransport verwendet werden können, ist von einer Datenrate von bis zu ca. 4 GBit/s auszugehen. Der Zeitpunkt und die räumliche Lokalisierung jedes Pulses könnte so mit bis zu 24 Bit kodiert werden. Die Kodierung der Ortskoordinaten erfordert für 128 × 128 Neuronen unkomprimiert allein 14 Bit. Aufwendige und gegebenenfalls verlustbehaftete Kompressionsverfahren werden hierfür nicht angewendet. Für das Auslesen der Pulsmuster aus dem Testchip wurden Abtastverfahren mit anschliessender Kompression des Datenstromes sowie Adress-Ereignis-Kodierverfahren (AER) untersucht [102]. Die Untersuchungen dienten dem Ziel, die gewünschte
264
13 Architektur und Chip-Entwurf des Merkmalserkenners
zeitliche Auflösung gegen den Implementierungsaufwand abwägen zu können. Als Ergebnis dieser Untersuchungen wurde ein Adress-Ereignis-Protokoll festgelegt und durch eine VHDL-Beschreibung implementiert (Abbildung 13.4).
Abb. 13.4 Adress-Ereignis-Ausleseverfahren (address event representation, AER) zur Erfassung der neuronalen Pulse Die Kodierung eines Pulsereignisses ist je nach Kontext der räumlichen und zeitlichen Abfolge auf verschiedene Weise möglich (Abbildung 13.5).
Abb. 13.5 Verwendeter Kode im AER-Verfahren
13.3 Layoutimplementierung
265
Die jeweilige Art der Kodierung wird durch 2 oder 3 Prefix-Bits festgelegt. Die gesamte Neuronmatrix ist in Blöcke von 4 × 4 Neuronen unterteilt. Zeile und Spalte eines oder mehrerer Ereignisse in einem Block werden durch jeweils 5 Bit kodiert. Der Zeilenkode wird unterdrückt, wenn zeitlich aufeinander folgende Ereignisse in einer Spalte ausgelesen werden. Die Koordinate eines einzelnen Ereignisses innerhalb des Blockes ist mit 4 Bit (2×2) kodiert. Liegen mehrere Ereignisse im selben Zeitabschnitt vor, werden sie durch eine „One Hot“-Kodierung beschrieben (dabei ist jedem Bit des 16 Bit Kodeblocks ein Neuron im 4 × 4-Block zugeordnet). Die Taktung des digitalen Systems erfolgt mit einer Frequenz von 120 − 200 M Hz. Daraus resultiert eine zeitliche Auflösung der Pulsereignisse von 5 − 8.3 ns. Dieser Wert ist ausreichend, um die Pulsaktivität von Neuronen mit einer mittleren Pulsrate von bis zu 10 kHz zu analysieren (für eine Optimierung der Taktfrequenz siehe Kapitel 16).
13.3 Layoutimplementierung Die bisher beschriebenen Komponenten (analoge Neuron-, Synapsen- und Testschaltungen, digitale Ein- und Ausgabeschnittstellen) wurden zunächst als einzelne Fullcustom-Makros mit dem Entwurfssystem Cadence bis hin zur Layoutansicht entworfen und verifiziert.
Abb. 13.6 Chipfotographie und Layoutausschnitt des Merkmalserkenners, hergestellt in der Infineon-130nm-CMOS-Technologie
266
13 Architektur und Chip-Entwurf des Merkmalserkenners
Mit dem Layouteditor des Entwurfssystems wurden die Neuronen mit den Synapsen zu einer Matrix und anschließend mit den Interfaceelementen zum Gesamtsystem zusammengefügt. Abbildung 13.6 gibt die Gesamtansicht des Chips nach der Fertigung und Layoutausschnitte der Neuronelemente wieder. In der Detailansicht sind auch die Elemente zur Kontaktierung weiterer Chips des 3D-Stapels erkennbar. Diese Verbindungen erlauben die Weiterleitung sowie den Empfang von Pulsereignissen an bzw. von den darüber liegenden Merkmalsdetektoren im Chipstapel (Kapitel 14).
13.4 Demonstrator und Meßergebnisse Als Funktionsnachweis für den Merkmalserkenner wurde ein Demonstratoraufbau (Abbildung 13.7) gefertigt, der den unabhängigen Betrieb des Chips auch außerhalb des 3D-Chipstapels ermöglicht. Die Konfiguration der Neuronund Netzwerkparameter sowie die Initialisierung der Bilddaten erfolgt über eine IEEE1394-Schnittstelle durch einen PC. Über dieselbe Schnittstelle werden auch die Pulsereignisse (AER) des Netzwerkes aufgezeichnet, gespeichert und visualisiert.
Abb. 13.7 PC-Software für die Konfiguration des neuronalen Netzwerkes (links), Visualisierung der Pulsfolgen (Mitte), Testaufbau für den Merkmalsdetektor M1 (rechts) Als Bildvorlage wurde ein stilisierter Apfel gewählt, woraus ein Grauwertbild bezogen wurde (Mitte links). Mitte oben ist die Pulswelle zu sehen, welche als Zeichen der Synchronisation über den Apfel läuft. An dieser Stelle sei noch
13.4 Demonstrator und Meßergebnisse
267
einmal daran erinnert, daß die mikroelektronische Realisierung der Adaption der Synapsen sich nur ungefähr an die Differentialgleichung der Adaption hält. Dies spricht für die Robustheit der Adaptionsregel.
(a)
(b)
Abb. 13.8 Ausschnitt einer aufgezeichneten Videosequenz (a) und Messung des Akkumulatorpotentials zweier benachbarter Neuronen bei aus- bzw. eingeschalteter Adaption (b). Abbildung 13.8a zeigt einen kurzen Ausschnitt der Aufzeichnung einer Videosequenz. Hierbei handelt es sich um ein 52 × 52 Pixel großes Bildsegment innerhalb der 128 × 128 Matrix. Farbige Markierungen kennzeichnen das zeitliche und örtliche Auftreten von Pulsereignissen. Dunkelblaue Pixel markieren den Zeitpunkt des Pulsereignisses, hellblaue Pixel zeigen etwas länger zurückliegende Ereignisse. In der Bewegtbilddarstellung wird damit die Pulswellenausbreitung sichtbar gemacht, wodurch man wesentlich besser als im Einzelbild die Funktion des Fleckerkenners als Segmentierer erkennt: Flecken
268
13 Architektur und Chip-Entwurf des Merkmalserkenners
gleicher Helligkeit erzeugen über sie laufende und an ihren Grenzen haltmachende Pulswellen. Die Stimulierung des Netzes erfolgte hier durch Bilddaten, die zuvor über die DA-Umsetzer-Schnittstelle (Abschnitt 11.4) als Grauwerte in den Chip geladen wurden. An gesonderten Testausgängen des Chips können frei wählbare einzelne Neuronen beobachtet werden. In Abbildung 13.8b ist eine Oszillographenaufzeichnung des Akkumulatorpotentials zweier benachbarter Neuronen bei ausbzw. eingeschalteter Adaption gezeigt. Die beiden Neuronen entstammen der Stirnpartie, wo sich eine große Pulswelle ausbreiten kann.
13.5 Zusammenfassung Eine Schaltung mit 128x128 Neuronen mit gleichmäßiger Vernetzung jedes Neurons mit seinen ersten Nachbarn durch dynamische Synapsen wurde aus den Grundblöcken für Neuron und Synapse aufgebaut. Die Merkmalscharakteristik war dementsprechend isotrop, und die Schaltung funktionierte wie erwartet als Segmentierer bzw. Fleckerkenner: zusammenhängende Pixelgebiete gleicher Helligkeit ließen die zugeordneten Neuronen ihre Pulstätigkeit synchronisieren. Da sich der allgemeine Merkmalserkenner nur durch die i.a. anisotrope Vernetzung in der Neuronebene unterscheidet – einstellbar durch die Programmierung der Verbindungsstruktur entsprechend der gewählten Merkmalscharakteristik (siehe Kapitel 7) – haben wir mit dem Beispiel des Fleckerkenners den Nachweis der Tauglichkeit unserer Architektur für den allgemeinen Merkmalserkenner geführt.
14 Architektur und Chip-Entwurf für Merkmalsdetektoren Jens-Uwe Schlüßler und Christian Mayr
Das Systemkonzept unseres Sehwürfels setzt auf der 3D-Integrationstechnologie auf, deren technologische Umsetzung in Kapitel 15 erläutert wird. Der Grundgedanke der Anwendung dieser Technologie ist in Abbildung 14.1 illustriert.
Abb. 14.1 Systemkonzept unter Anwendung einer 3D-Integrationstechnologie Auf einem Basischip sind mehrere Chips gestapelt. Die zugrunde liegende Technologie erlaubt, vertikale Verbindungen in hoher Dichte auch im Inneren der Chipfläche anzuordnen. Die Bildinformation wird auf optischem Wege an den in der obersten Schicht integrierten CMOS-Bildsensor geleitet. Neben dem Bildsensor enthalten die oberen Stapelchips Merkmalsdetektoren und Router für Pulsereignisse. Die Router leiten die vom Sensorfeld oder dem Merkmalsdetektor stammenden Signale an den nächsten angrenzenden Stapelchip weiter. Im Basischip befindet sich der Merkmalserkenner, welcher – wie auch die
270
14 Architektur und Chip-Entwurf für Merkmalsdetektoren
Stapelchips – über vertikale Verbindungen mit den über ihm liegenden Chips verbunden ist. Dieses Kapitel berichtet über die Systemarchitektur und den Chipentwurf der oberen Stapelchips. Die Ziele des Entwurfs waren eine möglichst flexible Konfiguration der Vernetzung für die Realisierung beliebiger Merkmalsdetektoren, eine genaue Abbildung des simulierten Einzel- und EnsembleVerhaltens von Neuronen und Synapsen, eine geringe Verlustleistung sowie die Integration von Bildsensor-Pixelzellen, um die Merkmalsdetektoren direkt mit Eingangssignalen versorgen zu können. Neben dem Einsatz als Teil eines 3D-Chipstapels ist vorgesehen, den Schaltkreis z.B. für Testzwecke auch als Einzelchip zu betreiben. Kennzeichnend für den Stapelchip ist die durchgehende Verwendung von digitalen Schaltungen, mit Ausnahme der Bildsensoren. Im Gegensatz dazu ist der Merkmalserkenner gänzlich analog realisiert, wie im vorangegangenen Kapitel 13 beschrieben. In beiden Fällen weist bei gleichem Input-Outputverhalten des Blocks, welcher die Merkmalsdetektion bzw. -erkennung ausführt, die digitale bzw. analoge Schaltung den kleineren Flächenbedarf auf.
14.1 Digitale Darstellung der Merkmalsdetektion Die Pulsdifferenzbestimmung ist die für die Merkmalsextraktion grundlegende Operation, die wir mit Neuronen und Synapsen gemäß Abbildung 5.8 realisiert hatten. Wirft man das Netz der Eingangspaare von 128 solcher Paare in geeigneter Weise verteilt über ein Teilgebiet eines Bildes und bildet die gewichtete Summe der Pulsraten aller Anordnungen (entsprechend Neuron N5 in Abbildung 6.2a), so hatten wir eine sehr gute Übereinstimmung mit den Gabor-Wavelet Filtern gefunden. Das heißt, alle Korrelationen bzw. Dekorrelationen, welche durch unsere exitatorischen bzw. inhibitorischen dynamischen Synapsen erzeugt werden, wirken sich wegen der Mittelung nicht auf den Ausgang des Neurons N5 aus. Dort erscheint nur die Pulsrate. Dementsprechend ist es sinnvoll, die Anordnung der Neuronen N1 -N5 durch einen Differenzzähler und einen gewichteten Akkumulator in digitaler Schaltungstechnik zu ersetzen. Überzeugen wir uns durch die in Abbildung 14.2 gezeigten Simulationsergebnisse von der funktionalen Äquivalenz. Die gepulste Version des Eingangsbildes wird mittels einer AHDL-Verhaltensbeschreibung der in Kapitel 11 dokumentierten pulsenden Pixelzelle erzeugt, die mit einer Stromrepräsentation des Eingangsgrauwertbildes versorgt wird. Im Gegensatz zu Abbildung 6.10 enthält das Bild c) weniger Rauschen. Die Ursache ist, daß die gewählte digitale Darstellung durch Zähler und Akkumulator nicht die Imperfektion der Anordnung nach Abbildung 5.8 berücksichtigt. Diese besteht darin, daß Neuron N4 Pulse präsentiert, selbst wenn an beiden Eingängen dieselbe Pulsreihe vorliegt (Abbildung 5.10). Die so entstehende Pulsrate ist viel kleiner als die
14.1 Digitale Darstellung der Merkmalsdetektion
271
vom Pixel kommende, und dieser kleine Fehler zeigt sich nur bei niederem Merkmalskontrast.
Abb. 14.2 Vergleich zwischen Originalbild, wertkontinuierlicher und pulsbasierter Gaborfaltung Wie aus Abbildung 14.3 ersichtlich, sind die wichtigsten Aspekte der vollen Gaborantwort bereits nach 4 Ausgangspulsen des hellsten Pixels im Ausgangsbild vorhanden.
Abb. 14.3 Vergleich der Gaborantwort nach maximal vier Pulsen der Pixelzellen (a) und komplette Antwort (b) Die hier aufgebaute pulsbasierte Verarbeitungsstrecke in digitaler Darstellung zeigt damit Analogien zu biologischen neuronalen Netzen: Koexistenz von schneller grobkörniger mit langsamer detaillierter Verarbeitung [103]. Im nachfolgenden werden wir die aus Differenzzähler und gewichtetem Akkumulator bestehende Grundkomponente der digitalen Realisierung der Merkmalsdetektion kurz als neuronale Verarbeitungseinheit (NPU) bezeichnen.
272
14 Architektur und Chip-Entwurf für Merkmalsdetektoren
14.2 VLSI-Design eines neuronalen Prozessor- und Router-Schaltkreises Systemkonzept des Schaltkreises Der gesamte Schaltkreis wurde auf Basis einer 130 nm Infineon CMOSTechnologie mit automatisch generierten RAM-Makros und Mixed-SignalInserts als Full-Custom Digital-Design entworfen. Abbildung 14.4 gibt den in die einzelnen Unterbaugruppen aufgeteilten Floorplan des Chips wieder. Den größten Teil der Fläche nimmt das Array aus 128 × 128 neuronalen Verarbeitungseinheiten (NPUs) ein. Die im folgenden Abschnitt näher beschriebenen NPUs wurden aus einer hochsprachlichen Verhaltensbeschreibung (VHDL) synthetisiert und mit Hilfe eines Place-and-Route-Werkzeuges aus Standardzellen plaziert und verdrahtet. Die auf Analogschaltungen basierenden und durch Handentwurf erstellten Layoutmakros der pulsenden Pixelzellen sind in Platzhalterstellen innerhalb der NPUs eingesetzt.
Abb. 14.4 Übersicht des Floorplans des Merkmalsdetektor-Chips mit Einzelbaugruppen
14.2 VLSI-Design eines neuronalen Prozessor- und Router-Schaltkreises
273
Im Router-Array wird durch Pfeile angezeigt, wie ein Puls durch Zeilenund Spaltendekoder an eine Ziel-NPU verteilt wird. Ebenso ist die in Zeilenund Spaltenverarbeitung aufgeteilte Blockstruktur der AER-Einheit1 auf Chip-Ebene angedeutet. Die Konfiguration der NPUs und des Router-Speichers, d.h. der gesamten Verarbeitungsfunktion des Schaltkreises, wird über eine JTAG-Schnittstelle vorgenommen, die im Block Chipinterface enthalten ist. Die simulierte Energieaufnahme bei einer mittleren Pulsverteilungsrate von 160 · 106 Pulsen/s beträgt ca. 2 W für Router und Peripherie. Die zusätzliche Leistungsaufnahme der NPUs hängt stark von ihrer Konfiguration ab (Pixelzellen, Mikroschaltung oder digitales Neuron aktiv) und variiert zwischen 100 mW und 1, 5 W . Dies ist kein schlechter Wert, wenn man sich in Erinnerung ruft, daß die Verarbeitungsgeschwindigkeit ca. tausendfach höher ist als die des biologischen Vorbilds. Eine Gesamt- und Detailansicht des Layouts des entworfenen Chips gibt Abbildung 14.5 wieder. In der Detailansicht sind u.a. die Photodioden der pulsenden Pixelzellen (schwarze Quadrate) und die Metallflächen der Kontakte für die 3D-Vias zu erkennen (unten).
Abb. 14.5 Layoutansicht des neuronalen Prozessor- und Router-Schaltkreises mit eingeblendeter Detailansicht der Neuronalen Verarbeitungseinheit (NPU). Die Gesamtabmessungen betragen 7.7 × 8.0 mm2 . 1
Adress-Ereignis-Ausleseverfahren (address event representation, AER)
274
14 Architektur und Chip-Entwurf für Merkmalsdetektoren
Neuronale Verarbeitungseinheit Der Aufbau der Neuronalen Verarbeitungseinheit (Neural Processing Unit, NPU) ist in Abbildung 14.6 schematisch skizziert. Neben der Schaltung zur Pulsdifferenzbestimmung („A vor B“), die die Funktion der Neuronen N1 − N4 aus Abbildung 5.8 nachbildet, und dem digitalen Akkumulator mit konfigurierbarem Eingangsgewicht (repräsentierend Neuron N5 in Abbildung 6.2a) enthält die NPU eine Pixelzelle zur Bereitstellung eines pulsratenkodierten Eingangssignals und eine Funktionseinheit (Crossbar) für die Weiterleitung (Routing) sowie die Kodierung (AER) von Pulsereignissen. Statt einer Punktzu-Punkt-Verbindung von Neuronen, welche sich in großen Netzen aus Kostengründen verbietet, versendet der Router ein Kodewort, welches Zeitpunkt und Ort der Pulserzeugung beinhaltet. Die Regenerierung des Pulses als Rechteck findet nach Bedarf im Zielneuron per Dekodierung statt.
Abb. 14.6 Neuronale Verarbeitungseinheit mit Schaltung zur Pulsdifferenzbildung, digitalem Neuron, Konfigurations- und Routingeinheiten Die NPUs sind in einer 128 × 128 Matrixstruktur regelmäßig auf dem Chip angeordnet, um den Entwurfsaufwand gering zu halten und ansatzweise eine Art neuronale FPGA zu realisieren. Dabei können einfache Grundelemente je nach Konfiguration zu einer komplexen Gesamtverarbeitungsfunktion verschaltet werden. Um die Realisierung der Verbindungstopologie frei programmierbar zu halten, wurde ein zentraler, voll konfigurierbarer Routing-Baustein (dynamisches Routing, Crossbar) entworfen, der Pulse aus der gesamten NPUMatrix empfängt und frei programmierbar wieder an ein oder mehrere NPUs
14.2 VLSI-Design eines neuronalen Prozessor- und Router-Schaltkreises
275
verteilt. Für die Implementierung der Pulserfassung auf der NPU-Matrix wurde die Einheit zur AER-Kodierung aus Abschnitt 13.2 wiederverwendet. Die NPU erhält Pulse vom Router und schickt diese an die entsprechenden Eingänge der im folgenden besprochenen Untereinheiten. Die entstehenden Ausgangspulse werden je nach Konfiguration über die oberen oder unteren 3D-Kontakte an die entsprechenden Chips im Stapel weitergegeben oder an die AER-Einheit auf dem eigenen Chip gesandt. Durch entsprechende Verschaltung in der Matrix (Crossbar) zwischen AER-Einheit, 3D-Kontakten und NPU ergeben sich weitere Verbindungsmöglicheiten, so z.B. das bidirektionale vertikale Durchleiten von Signalen zwischen den oberen und unteren 3D-Kontakten. Über die AER-Einheit können Pulsereignisse auch horizontal, also auf derselben Chipstapelebene, weitergeleitet werden. Im späteren Abschnitt 14.3 wird exemplarisch eine Konfiguration und Verschaltung dieser NPUs als Grundlage der Darstellung der Merkmalsextraktion nach Abschnitt 14.1 gezeigt (Abbildung 14.10). Aus den einzelnen NPUs werden dabei unterschiedliche funktionale Einheiten (Pixelzelle, Schaltung zur Pulsdifferenzbildung, Summation) verwendet, um ein Netzwerk für die Merkmalsextraktion aufzubauen. Pulsdifferenzbestimmung Wie in Abschnitt 14.1 erläutert, erfordert die Merkmalsextraktion eine Schaltungsanordnung zur Pulsdifferenzbestimmung. Eine auf digitaler Schaltungstechnik basierende Anordnung zeigt Abbildung 14.7.
Abb. 14.7 Zustandsdiagramm und Schaltung zur Bestimmung der Pulsdifferenz Die in den Neuronen ablaufenden Vorgänge werden dabei in einen getakteten Zustandsautomaten übertragen, der seinen internen Zustand entsprechend
276
14 Architektur und Chip-Entwurf für Merkmalsdetektoren
den an den Eingängen anliegenden Pulsen wechselt. Um die digitale Realisierung von der neuronalen Schaltung zu unterscheiden, werden die Eingänge wie oben ersichtlich umbenannt, so daß im weiteren von dieser Mikroschaltung als „A-vor-B“ gesprochen wird. Der Zustand des D-Flipflop im Zustandsautomaten ist vergleichbar mit dem des Neuron N3 . Ähnlich wie in der Schaltung zur Pulsdifferenz (Abbildung 5.8) lädt ein Signal von Eingang A bei gleichzeitigem Fehlen eines Pulses von Eingang B das Flipflop vor, so daß bei einem weiteren Puls von Eingang A über das UND-Gatter der Puls von Eingang A zum Ausgang weitergegeben wird. Das UND-Gatter hat somit die Aufgabe, selektiv Pulse aus der Pulsfolge am Eingang A auszublenden, vergleichbar mit Neuron N4 der Schaltung in Abbildung 5.8 . Für neuerliche Pulse von Eingang A werden diese direkt weitergegeben, während Pulse von Eingang B den Zustandsautomaten in den Zustand „0“ wechseln lassen, so daß der nächste Puls am Eingang A blockiert wird. Für die Funktion der Schaltung ist notwendig, daß die Pulsdauer an den Eingängen einer Taktdauer des D-Flipflop entspricht. Dies läßt sich durch entsprechende technische Maßnahmen in der Realisierung des Netzwerkes zur Pulsweiterleitung sicherstellen. Diese Schaltung kann entsprechend Abbildung 14.10 und durch eine geeignete Konfiguration der NPU in ein Netzwerk zur Merkmalsextraktion integriert werden. Pulse-Router Die Verteilung und Weiterleitung der Pulsereignisse basiert auf der Anwendung einer Zuordnungstabelle [102]. Wenn die zur Versendung bestimmten Pulse der betrachteten NPU mit der räumlichen Zuordnung (x, y)src die AERKodierung und den FIFO-Speicher durchlaufen haben, wird die ihnen zugeordnete Adresse in der Tabelle abgefragt, und die zugehörigen Ziel-Neuronen (x, y)dest1 . . . (x, y)destN , (N ≤ 32) werden identifiziert. Außerdem wird noch der Eingang (A,B oder C, siehe Abbildung 14.6) des Neurons festgelegt, in dem der Puls verarbeitet werden soll (Neuron N1 oder N2 in Abbildung 5.8). Gleiches gilt für die Auswahl des Eingangs des digitalen Neurons (Neuron 5 in Abbildung 6.2a) . Der Puls wird dann entsprechend dem Inhalt der Zuordnungstabelle mit einem 1-auf-128 Dekoder wieder auf die NPUs der Matrix verteilt (Abbildung 14.8) . Der Dekoder arbeitet mit derselben Taktfrequenz wie die AER-Kodierung, kann also dieselbe Rate von (120 − 200) · 106 Pulsereignissen pro Sekunde wieder über die Verarbeitungsmatrix verteilen. In Abbildung 14.9 wird die Speicherorganisation der Zuordnungstabelle genauer dargestellt. Die Speicherorganisation ist zweigeteilt, wobei der erste Speicher, der fest den Neuronen zugeordnet ist, eine Adresse für den Zielspeicher enthält, in dem dann eine (variable) Anzahl an Zielen für den eingehenden Puls enthalten ist. Den vom AER kommenden Pulsen wird in einer ersten Zuordnung, dem Lookup RAM, eine Basisadresse und ein Offset im Ziel-RAM zugewiesen. Diese Adresse gibt die Stelle im Ziel-RAM an, ab welcher dort Ziele für den einkommenden Puls zu finden sind, während der zugehörige Adressbereich
14.2 VLSI-Design eines neuronalen Prozessor- und Router-Schaltkreises
277
Abb. 14.8 Kombination aus AER-Kodierung und Lookup-basiertem Routing
Abb. 14.9 Funktionsablauf beim Routing der Pulsereignisse
278
14 Architektur und Chip-Entwurf für Merkmalsdetektoren
über den Offset definiert ist. Demnach kann ein einkommender Puls an bis zu 32 Zieladressen (5 Bit) weiterverteilt werden. Der Inhalt des Ziel-RAM ist in zwei Hälften unterteilt, die zum einen die Adresse der Ziel-NPU enthalten (2 · 7 Bit, in einem 128 × 128 Array), und zum anderen 2 Bit, die den Eingang (A,B,C) der NPU definieren, an die der Puls geleitet werden soll. Hierbei stellt A bzw. B das Neuron N1 bzw. N2 dar, und C das Neuron N5 . Das ZielRAM wird somit je nach zu realisierender Netztopologie variabel vergeben. Die ausgehenden Pulse werden entsprechend ihrer Adresse über Multiplexer auf der NPU-Matrix verteilt. Auf diese Weise realisiert die Kombination aus AER und Router virtuelle Axone/Dendriten, mit denen sich die NPUs in komplexen Netzwerken verbinden lassen. Zusätzlich können in den Router parallel zum AER auch externe Pulse eingelesen werden, so daß sich für Testzwecke Stimuli von außerhalb des Router-IC einspeisen lassen. Die Architektur des Systems zur Pulserfassung (AER) und Pulsweiterleitung (Router) ist für eine Rate von 200 · 106 Pulsen/s bei 200 M Hz Systemtaktfrequenz ausgelegt. Bei einer mittleren Pulsrate des einzelnen Neurons von 10 kHz entstehen im gesamten Feld durchschnittlich 160 · 106 Pulse/s. Insbesondere unter Synchronisationsbedingungen können lokal und in bestimmten Zeitabschnitten höhere Pulsraten auftreten. Die Lokalität wird bei der AERKodierung berücksichtigt, indem Ereignisse in einem 4 × 4-Block in einem Kodewort gespeichert werden (Abschnitt 13.2). Die Werte der Pulsverzögerung, die durch die Arbitrierung entstehen, liegen im Bereich von 10 ns (2 Taktzyklen) bis 3 µs. Die Routing-Architektur enthält FIFOs (Abbildung 14.9), die eine Zwischenspeicherung von Pulsereignissen ermöglichen. Die Speichertiefe dieser FIFOs bestimmt den im Extremfall zu erwartenden Verzögerungswert des Pulses. Das FIFO, welches die AER-kodierten Ereignisse entgegen nimmt, umfasst 256 Einträge und das FIFO für die Pufferung der dekodierten Quelladressen 4k Einträge, was einer maximalen Verzögerung von 1.26 µs bzw. 20 µs entspricht. Die minimale Verzögerung beträgt hier insgesamt 30 ns (6 Taktzyklen). Systemsimulationen mit relevanten Konfigurationen und Netztopologien haben gezeigt, daß in den meisten Fällen die Verzögerung der Pulsweiterleitung deutlich unter dem Wert der Pulsdauer des Neurons (1 µs) liegt und damit sehr nahe an die ideale Gleichzeitigkeit des DGL-Systems heranreicht. Das oben beschriebene Routing ist konstant, d.h. Pulsereignisse werden bei einer feststehenden Konfiguration immer zu denselben Zielen weitergegeben, unabhängig von der Aktivität auf den virtuellen Dendriten/Axonen. Jedoch können die Routing-Speicher zur Laufzeit umkonfiguriert werden, so daß z.B. durch eine Pulsaktivität angestoßene Plastizitätsvorgänge durch externe Analyse auf einer FPGA und nachfolgende Umkonfiguration realisierbar wären.
14.3 Demonstration der Merkmalsdetektion
279
14.3 Demonstration der Merkmalsdetektion Zum Aufbau von Gabormasken Die erwähnten Merkmalsdetektoren können insbesondere zur Erzeugung von Gabormasken verwendet werden. Diese lassen sich auf viele Weisen aufbauen. Ausgangspunkt ist die Verteilung der Eingangspaare auf die Pixel gemäß der vorgegebenen Gabormaske. Die Auswahl der Koordinaten für den Zugriff auf Neuron N1 bzw. N2 von Abbildung 5.8 kann dabei durch eine an das Stochastic Universal Sampling [104] angelehnte Methode erfolgen. Wie in Abbildung 6.10 dargestellt, ergibt sich damit eine Faltungsmaske, welche an die Maske eines Gabor-Wavelets angelehnt ist. Durch einen Zugriff beispielsweise des Eingangs A von mehreren Pulsdifferenzschaltungen („A-vorB“) auf dieselben Koordinaten werden in diskreten Stufen, entsprechend der Anzahl an Zugriffen, die positiven Filterkoeffizienten der Faltungsmaske an der jeweiligen Koordinate gebildet. Analog dazu führen mehrfache B-Zugriffe zu negativen Koeffizienten. Alle auf diese Weise den Koordinaten zugewiesenen Pulsdifferenzzähler werden im nächsten Verarbeitungsschritt über ein als Summationsglied fungierendes Einzelneuron bzw. einen gewichteten Akkumulator zusammengefaßt. Die Ausgangspulse dieses Summationsneurons bilden die Antwort des Gaborfilters auf das am Eingang präsentierte Bild. Die am Ende des stochastischen Verteilungsprozesses erhaltene Gabormaske zeigt eine starke Ähnlichkeit mit den in [4] bei Säugetieren gefundenen rezeptiven Feldern. Wie schon erwähnt, müssen die Merkmalsdetektoren die gesamte Retina überdecken, d.h. für jede neue Gaborfaltung an anderer Stelle im Bild wird wieder die volle Anzahl von Neuronen benötigt. Entsprechend der erforderlichen Merkmals- bzw. Entfernungsauflösung müssen 20 bis 40 verschiedene Typen von Gabor-Wavelets herangezogen werden, und entsprechend der gewählten Bildauflösung müssen die Merkmalsdetektoren in einem typ-spezifischen Pixel-Raster wiederholt werden. Deshalb ist es nötig, über ein hierarchisches Schema zur Vernetzung von Grundblöcken wie z.B. dem in Abbildung 5.8 nachzudenken, so daß alle Typen von Gabor-Wavelets an jedem Pixel auf ein und denselben Grundblock zugreifen. Dabei ist der Mehraufwand für die Vernetzung abzuwägen gegenüber demjenigen für die simple Wiederholung. Diese Sicht wird auch durch die biologische Merkmalsdetektion im V1 nahegelegt, da hier ein hierarchisches Prinzip zur Anwendung zu kommen scheint, bei dem rezeptive Felder mit fortschreitender Komplexität aus Feldern geringerer Komplexität aus vorhergehenden Schichten aufgebaut werden [105]. Wenn also zur Objektlokalisation der gesamte Bildbereich z.B. im 1-Pixel-Raster mit ähnlichen Gabormasken abgedeckt werden muß, sollten Teile der Masken, die sich überschneiden, wiederverwendet werden. Dadurch ergibt sich ein sparsamer Einsatz der in den NPUs enthaltenen Pulsdifferenzschaltungen. Abbildung 14.10 zeigt zwei Varianten einer entsprechenden Verschaltung von Pulsquellen, Pulsdifferenz- und Akkumulationsschaltungen der NPUs für
280
14 Architektur und Chip-Entwurf für Merkmalsdetektoren
Abb. 14.10 Konfiguration und Verschaltung der NPUs für die Merkmalsextraktion. Die beiden rechts unten dargestellten Untermasken ergeben sich in Abhängigkeit von der Verschaltung der Pulsquellen (rote bzw. grüne Verbindungen). die Realisierung der ebenfalls im Bild dargestellten Untermasken, die jeweils 5 nebeneinander liegende Pixel (xn−2 . . . xn+2 ) umfassen. Diese Untermasken mit den Koeffizienten (+1, 0, −2, 0, +1) bzw. (−1, 0, +2, 0, −1) bilden, wie in Abbildung 14.11 dargestellt, die Grundelemente für den hierarchischen Aufbau der vollständigen Gabormaske. Dazu werden durch Summation von benachbarten Untermasken (UM1, UM2)weitere Untermasken (UM3, UM4) generiert, die schließlich zur endgültigen Gabormaske zusammengefaßt werden. Die Maskenkoeffizienten entsprechen der resultierende Anzahl an Zugriffen von A-Eingängen (positiv) und B-Eingängen (negativ) an den Positionen der Maske, wobei (xn , yn ) den Mittelpunkt der Gabormaske repäsentiert. Die resultierende Maske entspricht bis auf Ausdehnung und Wellenlänge der Darstellung in Abbildung 6.10. Aufbau der vollständigen Gaborfaltung In Abbildung 14.12 wird das Beispiel aus Abbildung 14.2 für die Systemsimulation des neuronalen Prozessors aufgegriffen. Die vollständige Verarbeitungspyramide wurde hierbei über die NPUs auf dem Schaltkreis realisiert, die gemäß der Pulsweiterleitung und -verteilung nach Abbildung 14.9 in die Hierarchie eingebunden sind. Die Abbildung gibt eine Grauwertrepräsentation des Puls-Histogramms aller NPUs des Prozessors an, so daß die Verarbeitungaktivität in den einzelnen Bereichen aus der relativen Häufigkeit ihrer Ausgangspulse hervorgeht.
14.3 Demonstration der Merkmalsdetektion
281
Abb. 14.11 Hierarchischer Aufbau von Gabormasken aus Untermasken. Der obere Teil des Bildes zeigt die Komposition weiterer Untermasken aus den Masken nach Abbildung 14.10, im unteren Teil ergibt sich die resultierende Gabormaske aus der Überlagerung dieser Teilmasken. Die Funktionsweise basiert auf der in Abbildung 14.10 dargestellten Konfiguration und Verschaltung der NPUs. Die Ausgaben der das Bild aufnehmenden pulsenden Pixelzellen werden den neuronalen Mikroschaltungen zugeleitet, die für die Pulsdifferenzbildung konfiguriert sind und hier in einem unregelmäßig begrenzten Bereich des Feldes angeordnet sind. Deren Pulsausgaben werden stufenweise, wie in Abbildung 14.11 erläutert (UM1-4), aufsummiert und jeweils an die positive und negative Maske (Neuron N5a , N5b ) geführt. Das Feld „positive Maske“ entspricht damit der Faltung des links oben dargestellten Bildausschnitts mit der resultierenden Gabormaske aus Abbildung 14.11. Zusätzlich werden aus denselben Untermasken Gabormasken mit der entgegengesetzten Charakteristik, d.h. negativen Koeffizienten, gebildet („negative Masken“). Damit liegt eine symmetrische Maskenantwort vergleichbar mit den Neuronen N5a bzw. N5b aus Abbildung 6.2 vor. Aus der Faltungsantwort auf die beiden Maskencharakteristiken wird in einer wechselseitigen Differenzbildung durch Neuron N7a bzw. N7b (Abbildung 6.8) die mittelwertfreie Faltungsantwort gebildet („Pulsdifferenz“). Als letzter Schritt werden diese beiden realen und imaginären Anteile der Gabormaske summiert, um schließlich die links unterhalb des ursprünglichen Bildausschnittes dargestellte Betragsantwort zu erhalten. Um ein Viertel des Originalbildes komplett mit der einem Merkmal entsprechenden Gabormaske (Phase, Ausdehnung, Wellenzahl oder Orientierung) abzudecken, sind 16384 NPUs ausreichend. Die pulsenden Pixelzellen arbeiten mit einer mittleren Pulsfrequenz von 3 kHz, d.h. eine Gabormaskenantwort liegt nach etwa 85 ms in einer Auflösung von 256 Graustufen vor. Für
282
14 Architektur und Chip-Entwurf für Merkmalsdetektoren
Abb. 14.12 Histogramm- und Signalflußdarstellung für eine vollständige hierarchische Gaborfaltung in der NPU-Matrix des Router-ICs. Das Ausgangsbild links oben (32 × 32 Pixel plus 6-Pixel Randbereich der Gabormasken) wird im 1-Pixel-Raster mit 1024 Gabormasken desselben Typs abgedeckt. Das Histogramm ist als Grauwert über x- und y-Koordinate der NPUs aufgetragen, d.h. ein heller Wert entspricht vielen Ausgangspulsen der zugehörigen NPU. In den NPUs links oben ist die pulsende Pixelzelle aktiviert, die mit einem bildäquivalenten Photostrom angesteuert wird. In den übrigen Bereichen der Matrix sind die NPUs entsprechend ihrer jeweiligen Funktion innerhalb des hierarchischen Maskenaufbaus als Pulsdifferenz- („A-vor-B“) oder Summationselement konfiguriert (siehe auch Abbildung 14.10). eine höhere Auflösung können für die Maskenantwort bis zu 103 Einzelpulse aufsummiert werden, was einem Dynamikbereich von 60 dB entspricht. Eine Filterung des vollständigen Bildes würde einen Aufbau mit vier Ebenen des Chipstapels erfordern. Das gesamte Bild wird dann in der obersten Ebene von den pulsenden Pixelsensoren aufgenommen und über die 3D-Kontakte an die unteren Ebenen des Stapels weitergeleitet, die jeweils Ausschnitte des Bildes verarbeiten. Die Anwendung modifizierter Gabormasken für die Erkennung weiterer Merkmale erfordert eine Rekonfiguration der Verbindungsstruktur des Feldes, also eine Neubelegung der Routingspeicher (Lookup- und TargetRAM). Diese Erweiterung der Merkmalserkennung läßt sich jedoch ebenso durch eine entsprechende Vervielfachung der Chips im 3D-Stapel erreichen. Ein Konzept wie in Kapitel 7 geschildert würde erheblich von einem Maskenaufbau profitieren, bei dem wie oben beschrieben Redundanzen zwischen überlappenden Maskenbereichen ausgenutzt werden. Für ein zusammenhän-
14.4 Zusammenfassung
283
gendes Gebiet in Abbildung 7.2 (z.B. die Braue) werden 960 reellwertige Gabordetektoren benötigt, diese würden einen Router-IC zu ca. 90 % auslasten (Abbildung 14.12). Für die vollständige Realisierung beider Augenpartien und des Mundes sind somit 6 Router-ICs im 3D-Stapel nötig, wobei ein gewisser Overhead für weitere Verarbeitungsfunktionen einkalkuliert ist.
14.4 Zusammenfassung In diesem Kapitel wurde ein Systemkonzept dargestellt, das mittels digitaler neuronaler Verarbeitungseinheiten (Neural Processing Units) in entsprechenden Netzwerktopologien in der Lage ist, beliebige pulsbasierte Faltungsoperationen vorzunehmen. Es steht damit ein integrierter Schaltkreis zur Verfügung, der neben der neuronalen Grundfunktion der Merkmalsdetektion (Pulszähler, gewichteter Akkumulator) Einrichtungen für die Pulsweiterleitung und -verteilung enthält. Darüber hinaus sind Bildsensorelemente gleich mit integriert. Dieser Chip ist so konzipiert, daß er sich als Grundbaustein einer 3DIntegrationstechnologie für den Bau einer beliebigen Merkmalskaskade einsetzen läßt. Eine Weiterentwicklung der beschriebenen Architektur zum Zwecke der verbesserten Ausnutzung des NPU-Feldes für eine komplette Merkmalskaskade findet sich in Kapitel 16.
15 3D-Stapeltechnik für den Sehwürfel Arne Heittmann
In den vorausgehenden Kapiteln wurde gezeigt, wie mit pulskodierten neuronalen Netzen eine modular gestaltete Architektur aufgebaut und schaltungstechnisch implementiert werden kann. Bislang wurden dabei die Integration eines Systems mit allen Systemkomponenten (Pixelsensor, Merkmalskaskade, Merkmalserkenner, usw.) und insbesondere das globale Verbindungsproblem nur ansatzweise diskutiert. Dieses Kapitel widmet sich den hiermit verbundenen Fragestellungen, soweit sie die Verdrahtung berühren, und stellt erste Lösungen vor. Bereits das verhältnismäßig einfache und in den vorausgehenden Kapiteln diskutierte Problem der Kopfdetektion zeigt die grundsätzlichen technologischen Herausforderungen auf, die bei der Verwendung pulskodierter neuronaler Netze angegangen werden müssen. Wesentliches Problem ist dabei die technische Realisierung eines hochgradig vernetzten Gesamtsystems. Dabei ist im Auge zu behalten, daß die Anforderungen an die erforderliche Kommunikationsbandbreite mit zunehmender Komplexität der Anwendungen steigen. Dies geschieht in dem Maße, wie • • • • •
die Auflösung des Bildsensors steigt, zusätzlich Farbinformation verarbeitet wird, mehr Merkmale extrahiert werden müssen (größere Anzahl an Orientierungen, verschiedene Skalen), mehr Objekte gespeichert bzw. erkannt werden müssen, die Verarbeitungsgeschwindigkeit oder der Durchsatz erhöht werden muß.
Wie im letzten Kapitel gezeigt, benötigt die Extraktion einer Orientierung durch einen Gabor-Wavelet für ein 128×128 Pixel großes Bild einen Merkmalsdetektorchip, wenn wir eine 130 nm CMOS Technologie zugrundelegen. Eine heutige 40 nm CMOS Technologie würde erlauben, 8 verschiedene Orientierungen auf einem Chip zu integrieren. In der Bilderkennung sind jedoch 20 bis 40 komplexe Gabor-Wavelet Filter üblich, so daß 6-12 Chips für die Merkmalsdetektion notwendig sind – nicht zu reden von 100-mal größerer Bildauflösung.
286
15 3D-Stapeltechnik für den Sehwürfel
Bedenken wir, daß die Merkmalsdetektorarchitektur nicht an Bilder gebunden, sondern für beliebige Dateninhalte nutzbar ist, so wird klar, daß allein für die Merkmalsextraktion eine große Zahl von Chips nötig ist. Die Minimierung der Kosten gelingt durch die Verwendung eines einzigen, programmierbaren Moduls für alle Merkmale; da jedoch zwischen den Modulen bis zu 160 Millionen Pulsereignisse/s kommuniziert werden müssen, bedarf es einer optimalen Busund Speicherarchitektur sowie minimaler Weglängen zwischen den Chips, um Echtzeitfähigkeit und vernünftigen Leistungsverbrauch sicherzustellen. Über eine leistungsfähige Bus- und Speicherarchitektur ist im Kapitel 14 berichtet worden; in diesem Kapitel widmen wir uns der Aufbautechnik. Betrachtet man moderne Gehäuseformen, welche nach wie vor durch einen Pin-Count von einigen 100 Pins einen beschränkten Grad an verfügbarer Parallelität bieten [106], wird deutlich, daß in solcher Art klassischen Konzepten Kommunikation zwischen einzelnen Schichten in der Regel seriell, d.h. mit hohen Taktraten realisiert werden muß. In unserem Fall müssen Pulse auf der Senderseite zeitlich präzise detektiert und für die Übertragung kodiert sowie möglichst zeitnah auf der Empfängerseite rekonstruiert werden, um eventuell gegebene und informationstragende Pulskorrelationen zu erhalten. Insbesondere bei zeitgleich pulsenden Neuronen auf der Senderseite ergibt sich so auf der Empfängerseite ein Pulsversatz (Degradation der Korrelation), der nur durch hochratige Übertragungseinheiten genügend klein gehalten werden kann: arbeiten die Merkmalsdetektoren auf unserem Chip im 100 kHz-Takt, so arbeiten die Übertragungseinheiten im 100 MHz-Takt. Da bei gegebener Übertragungsleistung das Produkt aus Frequenz und durchschnittlicher Länge der Verbindungsleitung zwischen Chips in erster Näherung konstant ist, können wir Übertragungsleistung und Degradation der Korrelation nur durch kleinste Abstände zwischen den Chips genügend klein halten. Die heutige Aufbautechnik für Boards und Chips macht dies nicht leicht erfüllbar. Eine Größe, die durch die Kommunikationsarchitektur wesentlich bestimmt wird, ist die Verlustleistung des Gesamtsystems. Durch die erforderlichen hohen Taktraten der Kodier- und Dekodiereinrichtungen entstehen wesentliche Verlustleistungsanteile, die mehr als die Hälfte des gesamten Verlustleistungsbudgets ausmachen (vgl. Kapitel 14). Ebenso bedingen lange Kommunikationswege durch die Größe der umzuladenden Leitungskapazitäten wesentliche dynamische Verlustleistungsanteile im Signalpfad. Versorgungsleitungen und -pins müssen entsprechend den zu erwartenden Stromdichten ausgelegt werden. Zusätzlich sind Auswirkungen auf die Systemzuverlässigkeit, bedingt durch Elektromigration und Wärmeentwicklung, zu betrachten. Nicht zuletzt sind Kühleinrichtungen (Lüfter, etc.) vorzusehen, die zusätzliche Kosten beim Gesamtsystem verursachen. Für unsere Anwendungen spielt neben der Verlustleistung das physikalische Volumen, welches das System einnimmt, eine entscheidende Rolle. In klassischer Aufbautechnologie würden voluminöse Gehäuse mit vielen Einschüben nötig, um ein erstes Sehsystem zu realisieren. Für experimentelle
15.1 Prinzip der 3D Stapelung
287
Arbeiten ist dies zumutbar, nicht jedoch für Produkte, welche wie Kameras mobil einsetzbar sein müssen.
15.1 Prinzip der 3D Stapelung Um den einzelnen Anforderungen bezüglich Aufbauvolumen, Kommunikation und Verlustleistung gerecht zu werden, wurde eine 3D-Stapeltechnik auf Chipebene entwickelt. In dieser innovativen Aufbautechnik werden Chips in vertikaler Richtung gestapelt und miteinander elektrisch und mechanisch über vertikal die Chips durchziehende Leitungsstücke fest verbunden.
Abb. 15.1 (a) Zweidimensionales Integrationsschema. Einzelne Chips werden auf einem Trägersubstrat (z.B. PCB) befestigt, (b) dreidimensionales Integrationsschema. Die einzelnen Chips des Gesamtsystems werden vertikal gestapelt und elektrisch sowie mechanisch verbunden. Gegenüber der Variante (a) ergibt sich eine deutliche Flächeneinsparung. (c) Kombination von a und b auf einem gemeinsamen Trägersubstrat. Abbildung 15.1 zeigt das Prinzip. Im linken Teil ist zunächst das klassische Integrationsschema beispielhaft dargestellt. Einzelne Chips werden auf einem gemeinsamen Substrat (z.B. ein PCB, printed circuit board) aufgebracht. Das gemeinsame Substrat dient einerseits als mechanischer Träger, andererseits werden auf dem Träger die elektrischen Verbindungsleitungen zum Aufbau der Signalpfade und der Versorgungsleitungen realisiert. In Abbildung 15.1b werden die einzelnen Chips nun vertikal gestapelt. Diese Bauform weist einen deutlich geringeren Flächenbedarf und ebenso ein deutlich geringeres Aufbauvolumen auf. Beide Aufbauten können kombiniert werden (Abbildung 15.1c). Einer der wesentlichen Vorteile der 3D-Stapeltechnik besteht darin, daß die Längen einzelner Signalleitungen zur Verbindungen einzelner Bausteine gegenüber der klassischen 2D-Aufbautechnik um den Faktor 100 bis 1000 reduziert werden (Abbildung 15.2). Neben der gewohnten Möglichkeit, Verbindungen über die Chipperipherie herstellen zu können, können bei der 3D-Stapeltechnik zusätzliche Verbindungen auf der Chipfläche angebracht werden, die ein direktes Kontaktieren der nächsten Chiplage ermöglichen. Neben kürzeren Verbindungsleitungen steht
288
15 3D-Stapeltechnik für den Sehwürfel
Abb. 15.2 Bei der 3D-Stapeltechnik können die Verbindungslängen auf einige 10 µm reduziert werden. somit auch eine höhere Kontaktdichte zu Verfügung. Eine höhere Kontaktdichte ermöglicht die parallele Übertragung einer Vielzahl von Signalen von Schicht zu Schicht. Für das Beispiel gepulster neuronaler Netze bedeutet dies, daß die bislang aufwendigen und hochgetakteten Kodier- und Übertragungsschaltungen zur Netzkopplung durch einfachere Kodierschaltungen, die mit geringerer Taktfrequenz arbeiten, ersetzt werden können (siehe Kapitel 16). Dies geht einher mit Einsparungen bei der Verlustleistung und der Möglichkeit, komplexere (d.h. z.B. stark vernetzte) Systeme platzsparend aufbauen zu können. Einsparungen in der Verlustleistung ergeben sich auch aus den kürzeren Leitungslängen, da diese eine im Vergleich zu Standardverbindungen auf PCBs geringere Lastkapazität aufweisen. Die Leitungslängen zwischen den einzelnen Chips ergeben sich im Wesentlichen aus dem erforderlichen mechanischen Schichtabstand für das Verbindungsverfahren (z.B. Löten) und den Schichtdicken der gestapelten Chipsubstrate. Da, wie noch erläutert wird, vorwiegend gedünnte Chipsubstrate zum Einsatz in einem Chipstapel kommen, liegen die Leitungslängen im Bereich von einigen 10 µm. Die elektrischen Eigenschaften der Chipverbindungen lassen sich in erster Näherung als RC-Glied modellieren. Dabei ergibt sich die Signalverzögerung aus dem Elmore Delay [107] mit den Leitungsbelägen R′ sowie C ′ und der Länge L zu: 1 τVia = · R′ · C ′ · L2 . (15.1) 2 Für eine typische Via-Querschnittsfläche von ca. 30 µm2 kann der ViaWiderstand (Cu) mit einem theoretischen Wert von 5 mΩ als untere Grenze abgeschätzt werden. Messungen aus praktischen Untersuchungen ergeben realistische Werte von unterhalb von 1 Ω [108]. Ebenfalls aus Untersuchungen konnten Werte für C von ca. 100 fF bestimmt werden [109]. Zusammen mit den gegebenen geometrischen Abmessungen errechnet man hiermit Zeitkonstanten im Bereich von 0.1 fs < τV ia < 100 fs
(15.2)
15.2 Prozeßschritte
289
Abb. 15.3 Schematischer Querschnitt durch eine vertikale Verbindung zwischen benachbarten Chiplagen. Hieraus wird deutlich, daß sich der schaltungstechnische Entwurf der Kommunikationsstrukturen wesentlich vereinfacht. Erstens können lokale Signale direkt an die nächsten Schichten weitergeleitet werden, ohne daß lange Signalwege über die Chip-Peripherie in Kauf genommen werden müssen. Effekte, welche die Signalintegrität negativ beeinflussen, wie z.B. Skew, Jitter und Crosstalk, werden dadurch deutlich reduziert. Zweitens steht durch die Vielzahl der Chip-to-Chip-Verbindungen eine im Vergleich zur Standardverbindungstechnik bedeutend höhere Bandbreite für die Signalübertragung zur Verfügung. Aus technologischer Sicht ergibt sich eine Reihe von Herausforderungen für die Bereitstellung einer robusten 3D-Stapeltechnik: • • • • • • • •
Erzeugung von 3D Verbindungen mit hoher Dichte, Ätzen von 3D Vias mit hohem Aspekt-Verhältnis, Verwendung von Prozessen mit niedrigem Temperaturbudget, Entwicklung von Prozessen für die Via-Metallisierung, Herstellung und robuste Handhabung gedünnter Wafer, robuste Chip-to-Chip-Justage während der Stapelaufbauphase, Test, im Vergleich zur klassichen Aufbautechnik geringere Kosten.
In den folgenden Abschnitten wird eine 3D-Stapeltechnik vorgestellt, welche diese Anforderungen erfüllt.
15.2 Prozeßschritte Es existieren verschiedene Ansätze zur 3D-Stapeltechnik, die sich nach technologischem Aufwand und den gewünschten Eigenschaften des 3D-Stapels un-
290
15 3D-Stapeltechnik für den Sehwürfel
terscheiden. Die Anforderungen nach hoher Kontaktdichte mit durchkontaktierten vertikalen Verbindungsstücken (sogenannten Vias) und einer prinzipiell unbegrenzten Anzahl stapelbarer Schichten schließt einige Prozeßvarianten aus und erfordert eine angepasste Prozeßführung für spezielle Phasen der Integration. Die Anforderung einer hohen Kontaktdichte mit durchkontaktierten Vias (d.h. von der Rückseite des Substrats in das aktive Gebiet) bedingt zunächst die Ätzung von Vias mit geringem Querschnitt von einigen Quadratmikrometern durch das Substrat hindurch. Da die Metallisierung derartiger Kontakte nur bis zu einem gegebenen Aspekt-Verhältnis (Verhältnis von Via-Tiefe zu Via-Durchmesser) gelingt, ist die Herstellung und die Handhabung gedünnter Wafer Voraussetzung für die Prozeßierung. Die einzelnen Chipsubstrate stammen dabei aus der Produktion eines Standard-CMOS-Prozesses. Um den gegebenen CMOS-Prozeß möglichst unverändert nutzen zu können, können die weiteren, für die 3D-Prozeßierung notwendigen zusätzlichen Prozeßschritte nur im sogenannten Backend ausgeführt werden, d.h. erst nach der Ausführung sämtlicher CMOS Prozeßschritte. Den CMOS-Prozeß zunächst unverändert durchzuführen, hat verschiedene Vorteile. Zum einen entfällt weitgehend die elektrische Neucharakterisierung des Prozesses, d.h. die gegebenen Simulations- und Entwurfsparameter können während des Entwurfsprozesses weiter verwendet werden, so daß bestehende Chipentwürfe mit deutlich geringerem Aufwand im Redesign für die 3D-Stapelung genutzt werden können. Zum anderen entfällt die Anpassung und Zentrierung der CMOS Prozesse auf zusätzliche 3D-Prozesse. Der Nachteil dieser Art der Prozeßführung liegt darin, daß nur noch Niedertemperaturschritte bis etwa 400◦ C im Backend angewendet werden können. Dies schließt die Verwendung vieler und teilweiser einfacherer Lösungenwie z.B. thermische Oxidation - zur Isolatorerzeugung grundsätzlich aus. Dieser Nachteil wird aber mehr als aufgewogen durch die viel bessere Ausbeute des gesamten Chipstapels, wenn 400◦ C bei der Verdrahtungsherstellung zwischen den Chips nicht überschritten wird. Für die hier beschriebene Technologie ergibt sich eine Zerlegung in Einzelschritte wie in Abbildung 15.4 gezeigt. Die Einzelschritte werden bevorzugt mit Standardgeräten als Waferprozesse im Batchbetrieb bis zur mechanischen/elektrischen Verbindung ausgeführt. Die mechanische Verbindung erfolgt dann in einem Chip-to-WaferBondprozeß. Hierbei bildet das Basissubstrat ein prozessierter Wafer. Die darauf zu stapelnden Chips werden zunächst auf ihrem Wafer getestet und entsprechend ihrer Funktionsfähigkeit markiert. Anschließend erfolgt die Zerteilung dieser Wafer in Einzelchips. Für den Stapelprozeß werden nur funktionstüchtige Chips (known-good-dies, KGD) verwendet und sukzessive auf das Basissubstrat gebondet. Im Gegensatz zum Wafer-to-Wafer-Bonden hat diese Vorgehensweise folgende Vorteile:
15.2 Prozeßschritte
291
Abb. 15.4 Prozeßfolge für 3D-Stacking • • • •
Erhöhung der Ausbeute, da nur KGDs verwendet werden, es können Chips mit unterschiedlicher Chipfläche verbunden werden, ohne Waferfläche zu verschwenden, es können unterschiedliche thermische Ausdehnungskoeffizienten von Substrat und einzelnen Chiplagen vernachlässigt werden, ein inhomogener Topologieverlauf der Wafer- bzw. Chipoberflächen kann vernachlässigt werden.
In Abbildung 15.5 ist schematisch ein 3-Lagen Stapel mit 4 Chips nach dem Verbindungsprozeß gezeigt. Das Basissubstrat muß hier eine etwas größere Fläche als die Stapelchips aufweisen, um die erforderlichen Bonddrähte an der Peripherie anbringen zu können. Im Gegensatz zu den Stapel-Chips braucht das Basissubstrat nicht gedünnt zu werden. Deutlich zu erkennen ist, daß die 3D-Vias durch die gedünnten Substrate verlaufen und auf der ersten Metalllage enden. Eine vollständige Durchkontaktierung der Stapelchips ist somit nicht erforderlich und kann durch den bestehenden Metalllagen-Stapel im Standard Backend des CMOS Prozesses realisiert werden. Prinzipiell können so aufgrund des erforderlichen Aspekt-Verhältnisses Kontaktierungen mit geringerem Querschnitt und somit höherer Kontaktdichte als mit durchgehenden Vias erzielt werden. Die Länge der Vias entspricht etwa der Restdicke des gedünnten Substrates, wie bereits in Abbildung 15.3 dargestellt. In den nachfolgenden Abschnitten werden nun die einzelnen Prozeßschritte im Detail dargestellt.
292
15 3D-Stapeltechnik für den Sehwürfel
Abb. 15.5 Schematische Ansicht eines 3-Lagen Stapels (4 Chips). Substratdünnung Wie schon im vorangegangenen Abschnitt skizziert, erfordert die Realisierung von Kontakten mit hoher Kontaktdichte die Dünnung des Substrates auf eine bestimmte Restdicke. Die Realisierung von Kontakten mit hoher Dichte weist darüber hinaus ein weiteres Problem auf. Da die 3D-Stapeltechnologie als Backend-Prozeß ausgeführt werden soll und die gefertigten CMOS Bausteine mit dem vollständigen Metalllagen-Stapel verarbeitet werden, muß die Herstellung der 3D Vias vorwiegend als Rückseitenprozeß ausgeführt werden. Hieraus folgt unmittelbar das Problem, die Belichtungsmasken für die Rückseitenstrukturierung auf die Strukturen des CMOS (d.h. insbesondere auf die erste Metalllage) präzise mit einer Genauigkeit von wenigen Mikrometern zu justieren. Standardverfahren wie Infrarot-Durchlicht sind hier aufgrund des Metalllagen-Stapels (6-8 Metalllagen und mehr) für die Justage bzw. Belichtung nicht geeignet. Darüber hinaus erlaubt Infrarotlicht nur eine Genauigkeit bis zu 10µ bei der Justage, die für den angestrebten Prozeß nicht hinreichend ist. In dem hier vorgestellten Verfahren werden spezielle Ätzmarken verwendet, die im ersten Schritt durch einen Trockenätzschritt auf die Vorderseite der Waferoberfläche eingebracht werden. Diese Marken bieten einen hinreichenden optischen Kontrast und ermöglichen nach der Waferdünnung die Justage bzw. Belichtung der Rückseitenprozesse zu den Strukturen der Wafervorderseite mit kurzwelligem Licht und der erforderlichen Präzision. Ebenso wie die Justage mit hoher Präzision erfolgen muß, stellt die Kontrolle der Restdicke des Wafers während des Dünnens ein wesentliches Problem dar. Eine genaue Kenntnis der Restdicke ist u.a. für die Herstellung der Vias erforderlich, um während des hierfür verwendeten Ätzvorganges Überbzw. Unterätzungen zu vermeiden. Bei unserem Ansatz erreicht man eine Dickenkontrolle durch Einbringen einer sog. Ätzstoppschicht auf die Wafer-
15.2 Prozeßschritte
293
Oberfläche. Diese Schicht besteht aus epitaktisch aufgebrachtem Silizium mit einer Bor-Dotierung zwischen 8 · 1019 cm−3 und 1 · 1020 cm−3 und einer Dicke von ca. 750 nm. Beim naßchemischen Rückseitenätzen (z.B. mit KOH) sinkt die Ätzrate um etwa zwei Größenordungen, sobald die Ätzlösung die Bordotierte Schicht erreicht. Das Ergebnis ist eine extrem planare Rückseitenoberfläche, die sich hervorragend für die nachfolgenden Rückseitenprozesse eignet. Auf diese Ätzstoppschicht wird dann eine relativ zur Ätzstoppschicht niedrig dotierte Silizium-Epitaxieschicht aufgebracht, deren Dicke der erforderlichen Restdicke des gedünnten Substrates entspricht. Sowohl uniform dotierte Substrate mit einer Konzentration von etwa 1 · 1015 cm−3 als auch stark dotierte mit einer Konzentration von etwa 1 · 1016 cm−3 lassen sich auf der Ätzstoppschicht erzeugen. Der Dünnungsprozeß ist in Abbildung 15.6 schematisch skizziert. Besonderes Augenmerk ist auf die Oberflächentopologie nach dem zweiten Epitaxieschritt zu legen. In Abbildung 15.6(c) ist zu sehen, wie sich die Struktur der Ätzmarke auf die Oberfläche der Epitaxieschicht durchprägt.
Abb. 15.6 Waferpräparierung und Rückseitendünnen. a) Einbringen von Ätzmarken für die Justage. b) Aufbringen der p+ Epitaxieschicht als Ätzstopp. c) Aufwachsen der Epitaxieschicht für Standard-CMOS. d) CMOS Prozeß. e,f) Aufbringen eines Hilfsträgers zu Waferstabilisierung während des Dünnens und der Rückseitenprozeßierung. g) Mechanische Rückseitendünnung und CMP. h) Restdünnung mit KOH bis zum Ätzstopp. Die Markierung definiert die Position der p+ -Schicht.
294
15 3D-Stapeltechnik für den Sehwürfel
Abbildung 15.7 zeigt gemessene Oberflächenstrukturen vor und nach dem Epitaxieschritt. Das Wachstum in der Mitte der Ätzmarke erfolgt in Richtung der Kristallorientierung, während an den Kanten das Wachstum zu einer Aufweitung der Struktur führt. Des weiteren erkennt man, daß die Wachstumsrate an den unteren Kanten geringer ausfällt als im mittleren Bereich der Ätzmarke, so daß an dieser Stelle die Ätzstoppschicht eine geringere Dicke als die Soll-Dicke aufweist.
(a) auf der Waferoberfläche des Rohwafers nach dem Trockenätzen der Marken
(b) auf der Epitaxieoberfläche
Abb. 15.7 Struktur der Oberfläche im Bereich der Ätzmarken; Messergebnisse von H. Schäfer, Infineon Technologies AG, München Abbildung 15.8 zeigt die REM-Aufnahme einer typischen Justagestruktur. Mit Hilfe dieser Ätzmarke können nun Vorderseiten- und Rückseitenprozesse aufeinander justiert werden.
Abb. 15.8 Justagestruktur auf der Waferoberseite
15.2 Prozeßschritte
295
Bevor der Dünnungsprozeß gestartet werden kann, wird von der Vorderseite ein Hilfsträger auf den prozeßierten CMOS Wafer mit Hilfe einer PolyimidPhotolack-Mischung aufgeklebt (Abbildung 15.6e,f). Dieser Hilfsträger stabilisiert das mechanisch instabile Substrat nach der Dünnung und bleibt bis zum Verbindungsprozeß der einzelnen Chip-Lagen mit dem gedünnten Substrat verbunden. Der Dünnungsprozeß erfolgt in drei Phasen. In der ersten Phase erfolgt eine mechanische Dünnung, das sog. Grinding (bzw. Läppen). In dieser Phase wird der Wafer mit einer Anfangsdicke von ca. 600 µm auf eine Restdicke zwischen 30 µm und 40 µm gedünnt. Mit diesem Verfahren läßt sich eine Oberflächenrauhigkeit von weniger als 1.0 µm erreichen. Die verbleibenden Oberflächendefekte werden anschließend mit einem CMP-Verfahren (chemical mechanical polishing) entfernt. Ebenso wie das Grinding ist CMP eine Standardtechnologie zur Planarisierung von Oberflächen bei der CMOS-Prozeßierung. Gebräuchliche CMP-Lösungen enthalten 4 %SiO2 -Partikel mit einer Größe von ca. 10 nm [110] sowie in Wasser gelöstes KOH, wobei typischerweise der pHWert der KOH-Lösung zwischen pH10 und pH11 liegt [111]. In Phase 3 wird schließlich mit einer 10 %-igen KOH-Lösung mit Hilfe eines Spinätzers bis auf die Ätzstoppschicht geätzt. In Abbildung 15.9 ist die Rückseitenstruktur einer Probe nach Phase 3 des Dünnungsprozesses gezeigt. Zu erkennen sind die Gleichmäßigkeit der Markerstrukturen und die Qualität der Oberfläche.
Abb. 15.9 Rückseitenstruktur nach der KOH-Ätzung einer Probe
Viaätzung Für die Herstellung der Vias wird ein Ätzprozeß mit hoher Anisotropie benötigt, um Öffnungen mit geringer Querschnittsfläche und großer Tiefe mit möglichst senkrechten Seitenwänden erzeugen zu können. Unter diesen Anforderungen hat sich die Verwendung des sog. DRIE-Prozesses (in der Literatur
296
15 3D-Stapeltechnik für den Sehwürfel
auch unter den Bezeichnungen ASE-Prozeß bzw. Bosch-Prozeß veröffentlicht [112]) als besonders vorteilhaft erwiesen. Abbildung 15.10 zeigt das prinzipielle Vorgehen. Der Prozeß besteht aus einer mehrfachen Abfolge von Ätzungen und Passivierungen, wobei die Anzahl und die Dauer der einzelnen Wiederholungen die Tiefe der Ätzung und die Rauhigkeit der Seitenwände bestimmt.
Abb. 15.10 DRIE(Deep Reactive Ion Etching)-Prozeß zur Ätzung von Vias Ätzung und Passivierung wechseln einander ab. Die Anzahl der Ätzwiederholungen wird durch die erforderliche Ätztiefe bestimmt. Bei bekannter Substratdicke endet der Prozeß auf der ersten Metalllage und ermöglicht so die Kontaktierung von Rückseitenkontakt und CMOS. Die Ätzung erfolgt in einem induktiv gekoppelten Plasma und wird nach dem Einleiten eines SF6 -Gases in die Reaktionskammer ausgeführt. Bei der Ätzung werden aus dem Schwefel-Hexafluorid zunächst freie Fluor-Radikale erzeugt, die dann auf dem Silizium flüchtige Fluor-Silizium Verbindungen bilden. Zur Passivierung werden gasförmige Cx Hy Fz -Verbindungen (z.B. CHF3 , C4 F8 ) in die Reaktionskammer eingeleitet. Durch Einstellung von Prozeßparametern wie z.B. Druck und Temperatur setzt eine Polymerisation ein. Das nCF2 -Polymer scheidet sich an den Strukturwänden ab und bildet die gewünschte Schutzschicht, die insbesondere die Seitenwände der geätzten Struktur vor dem nachfolgenden Ätzschritt schützt. Auf diese Art können sehr homogene (d.h. geringe Rauhigkeit der Seitenwände) und tiefe Via-Öffnungen mit einem Aspekt-Verhältnis von bis zu 30 : 1 hergestellt werden. Typische Ätzraten liegen im Bereich von 1 − 2 µm/min innerhalb eines Ätzschrittes. Abbildung 15.11 zeigt das Resultat einer Via-Ätzung nach dem vollständigen Ätzvorgang entsprechend Abbildung 15.10. Deutlich zu erkennen sind die senkrechten Seitenwände, welche die hohe Anisotropie des Prozesses demonstrieren.
15.2 Prozeßschritte
297
Abb. 15.11 Ansicht eines Querschnittes durch geätzte Via-Strukturen. Die Gesamtstruktur besteht aus einem gedünnten Si-Substrat, welches durch zwei Klebeschichten mit einem Trägersubstrat verbunden ist. Das Trägersubstrat dient zur mechanischen Stabilisierung der Anordnung. Auf der Rückseite (oben) wurde zunächst eine Ätzmaske aus SiO2 hergestellt, in welcher sich Öffnungen für die zu ätzenden Via-Strukturen befanden. Unterhalb der geätzten Vias erkennt man Kupfer-Strukturen, die hier als sog. Landing-Pads bzw. als Kontaktierung dienen. Die gezeigte Ansicht wurde durch Sägen hergestellt. Viaisolation Für die Via-Isolation, Rückseitenisolation und Ätzmaske erweist sich SiO2 in der Verwendung als Isolator bzw. Maske als vorteilhaft. Da nur Prozesse mit niedrigem Temperaturbudget zur Anwendung kommen können, wurde ein Plasma-unterstützter CVD-Abscheidungsprozeß, welcher bei niedriger Temperatur arbeitet, für die Oxidabscheidung optimiert (ein sog. LT-PECVD Prozeß, low temperature plasma enhanced chemical vapor deposition). Auf der Rückseite des Substrats wird zunächst ein Oxid als Rückseitenätzmaske mit einer Dicke von 1 µm abgeschieden. Die gewählte Dicke des Oxids folgt aus der Überlegung, daß nach der Via-Ätzung das Oxid zur Kontaktierung der ersten Metalllage geöffnet werden muß. Bei Standard-CMOS Prozessen liegt die Oxiddicke dieser Schicht zwischen 600 und 800 nm. Um eine weitere Maske einzusparen, wird das bestehende Rückseitenoxid zusammen mit dem Oxid unter der Metalllage in einem Schritt entfernt. Das Rückseitenoxid bleibt danach mit einer Restdicke von ca. 100 bis 200 nm stehen und stellt eine ausreichende Isolation zwischen den später angebrachten Rückseitenkontakten und dem Si-Substrat dar.
298
15 3D-Stapeltechnik für den Sehwürfel
Das Plasma dient vorwiegend zur Generierung chemisch reaktiver Bestandteile, die für die Oxiddeposition erforderlich sind. Da durch die im Plasma erzeugten Elektronen neben den erwünschen Bestandteilen durch Ionisation und Dissoziation weitere Nebenprodukte erzeugt werden, wird zusätzlich Helium als Trägergas in die Reaktionskammer geführt, wodurch der Anteil unerwünschter Nebenprodukte deutlich reduziert werden kann. Die Reaktionsgleichung zur Abscheidung von SiO2 wird in dem gegebenen CVD-Prozeß durch die Gleichung SiH4 + 2 N2 O → SiO2 + 2 H2 + 2 N2 beschrieben. Als Ausgangsstoffe dienen zwei Gase, zum einen Silan (SiH4 ) und zum anderen Di-Stickstoff-Monoxid (N2 O, Lachgas). Die Optimierung des Abscheidungsprozesses erfolgt nur über die Variation der N2 O- und SiH4 Flüsse sowie über Variation der Abscheidetemperatur. Für den gegebenen Reaktor wurde eine kapazitiv eingekoppelte HF-Leistung von ca. 20 W bei einem Druck in der Reaktionskammer von ca. 1 Torr (entspricht etwa 0.133 · 10−3 Bar) eingestellt und in den Versuchsreihen konstant beibehalten. Man erkennt aus Abbildung 15.12a, daß die Abscheiderate von SiO2 mit zunehmender Temperatur steigt. Ebenso erhöht sich die Abscheiderate mit zunehmendem Fluß der Ausgangsprodukte der Reaktion. In Abbildung 15.12b erkennt man, daß oberhalb eines spezifischen Flußverhältnisses zwischen N2 O und Silan die Abscheiderate von SiO2 wesentlich durch den Silan-Fluß begrenzt wird. Im Falle eines zu großen Sauerstoffangebotes setzt zusätzlich der Effekt der sog. Pulverbildung [113] ein.
Abb. 15.12 a) Abhängigkeit der Abscheiderate von der Abscheidetemperatur. Im Falle (i) betrug der N2 O-Fluß 710 sccm und der SiH4 -Fluß 200 sccm, im Falle (ii) betrug der N2 O-Fluß 177, 5 sccm und der SiH4 -Fluß 50 sccm. b) Abhängigkeit der Abscheiderate vom Flußverhältnis. Der Gesamtfluß wurde konstant auf einem Niveau von 910 sccm gehalten. Messungen nach [108].
15.2 Prozeßschritte
299
Zur Beurteilung der Qualität des abgeschiedenen Oxids gibt es verschiedene Methoden, welche die unterschiedlichen Eigenschaften wie z.B. Oberflächenrauhigkeit, Geometrie der Abscheidung, Stöchiometrie des Oxids und elektrische (Isolations-)Eigenschaften bewerten. Die Oberflächenrauhigkeit der Isolatorschicht ist für die gegebene Anwendung zunächst von geringem Interesse. Es zeigt sich experimentell, daß im Einklang mit den Ergebnissen aus der Literatur für niedrige Temperaturen die Oberflächenrauhigkeit steigt [114]. Die Stöchiometrie gibt Aufschluß über das Verhältnis Si : O der Isolatorschicht. Abweichungen von der idealen Stöchiometrie des Oxids können z.B. Störstellen in der Bandstruktur verursachen und einen unerwünschten Stromtransport-Mechanismus (Leckstrom) begünstigen. Indirekten Aufschluß über die Stöchiometrie liefert z.B. die Messung des Brechungsindex. Abbildung 15.13 zeigt in Abhängigkeit der Abscheidetemperatur und des Flußverhältnisses die gemessenen Brechungsindizes. Bezogen auf den Brechungsindex von idealem SiO2 mit nSiO2 = 1.46 zeigt sich, daß niedrige Temperaturen zusammen mit geringen Gesamtflußraten zu einer hohen Oxidqualität führen. Ebenso bewirkt ein höherer Sauerstoffanteil im Flußverhältnis eine höhere Oxidqualität.
Abb. 15.13 a) Abhängigkeit des Brechungsindex von der Abscheidetemperatur. Im Falle (i) betrug der N2 O-Fluß 710 sccm und der SiH4 -Fluß 200 sccm, im Falle (ii) betrug der N2 O-Fluß 177, 5 sccm und der SiH4 -Fluß 50 sccm. b) Abhängigkeit des Brechungsindex von dem Flußverhältnis. Der Gesamtfluß wurde konstant auf einem Niveau von 910 sccm gehalten. Messungen nach [108]. Von wesentlichem Interesse sind die elektrischen Isolationseigenschaften der Oxidschicht. Abbildung 15.14 zeigt den charakteristischen Verlauf der I-U Kennlinie einer präparierten Schicht. Bei niedrigen Feldstärken zeigt sich das ausgeprägte Leckstromverhalten. Bei hohen Feldstärken zeigt sich ein charakteristisches Durchbruchverhalten, welches mit einem starken Anstieg der
300
15 3D-Stapeltechnik für den Sehwürfel
Stromdichte einhergeht. Für Feldstärken im Bereich nahe der Durchbruchfeldstärke dominiert das sog. Fowler-Nordheim Tunneln [115], während für kleine Feldstärken Störstellenleitung über Traps (Poole-Frenkel Effekt [116]) vorliegt.
Abb. 15.14 I-U Charakteristik einer Probe mit 50 nm Oxidfilm, welcher auf einer planaren Si-Oberfläche abgeschieden wurde. Die gemessene Durchbruchsspannung liegt bei 37.5 V . Dies entspricht einer Feldstärke von 7.7 M V /cm. In Abbildung 15.15 werden für verschiedene Prozeßparameter die Leckstromdichten bei einer Feldstärke von E = 1 M V /cm miteinander verglichen. Man erkennt in Übereinstimmung mit Abbildung 15.13, daß mit geringem Materialfluß die Isolatorqualität steigt. Ebenso steigt die Qualität mit höherem Sauerstoffangebot bei der Prozeßführung und höherer Abscheidetemperatur. Für die Durchbruchsfeldstärke konnte experimentell ermittelt werden, daß sich für Abscheidetemperaturen kleiner als 200◦ C Durchbruchsfeldstärken um 7.5M V /cm ergeben, während für Abscheidetemperaturen größer als 200◦ C Durchbruchsfeldstärken um 9.5 M V /cm gemessen werden, welche als ausreichend für die gegebenen Anwendungen angesehen werden. Typische Geometrien des abgeschiedenen Oxids sind in Abbildung 15.16 gezeigt. Für den Fall eines geringen Aspekt-Verhältnisses (Abbildung 15.16b) ergibt sich eine gleichmäßige Abscheidung des Oxids an den Seitenwänden und der Übergangsstelle zu dem Aluminium-Kontakt (Via-Boden). Hin zur Öffnung verschmälert sich die verbleibende Via-Öffnung aufgrund einer in der Dicke zunehmenden Oxidschicht. Ursache hierfür ist der erleichterte Stoffaustausch mit den Reaktionsgasen im oberen Bereich des Vias.
15.2 Prozeßschritte
301
Abb. 15.15 a) Abhängigkeit der Leckstromdichte von der Abscheidetemperatur. Im Falle (i) betrug der N2 O-Fluß 710 sccm, der SiH4 -Fluß 200 sccm, im Falle (ii) der N2 O-Fluß 177, 5 sccm, der SiH4 -Fluß 50 sccm. b) Abhängigkeit der Leckstromdichte vom Flußverhältnis. Der Gesamtfluß war konstant auf einem Niveau von 910 sccm. Messungen nach [108]. Für a) und b) wurde eine Feldstärke von E = 1 M V /cm verwendet. Die Oxiddicken erreichen immerhin noch rund ein Drittel der an der Oberfläche abgeschiedenen Schicht mit einer Dicke von 1 µm.
Abb. 15.16 Skizze möglicher Geometrien abgeschiedenen Oxids für Vias mit unterschiedlichem Aspekt-Verhältnis. a) 20 µm:6 µm b) 20 µm:60 µm Für Vias mit größerem Aspekt-Verhältnis ist die Rate der Abscheidung insbesondere im unteren Bereich an den Seitenwänden besonders niedrig, vgl. Abbildung 15.16a. Da wie im Falle b) die Rate der Abscheidung im oberen Bereich zunächst am höchsten ist und somit die Öffnung mehr und mehr zuwächst, ergibt sich die skizzierte Verjüngung der Oxiddicke an den Seitenwänden in Richtung Via-Boden. Reale Vias liegen in Bezug zu ihren geo-
302
15 3D-Stapeltechnik für den Sehwürfel
metrischen Abmessungen zwischen den skizzierten Anordnungen, so daß für alle praktischen Fälle mit den gewählten Prozeßparametern eine ausreichende Via-Isolation realisiert werden kann. Zur Messung des Isolationswiderstandes wurde eine Messanordnung nach Abbildung 15.17b herangezogen. Die isolierten Vias wurden zusätzlich galvanisch mit Kupfer befüllt, um einen realitätsnahen Kontakt zu realisieren. Im Abschnitt „Viametallisierung“ wird auf die hierfür nötige Technologie eingegangen.
Abb. 15.17 Anordnung zur Evaluierung der elektrischen Via-Eigenschaften. a) Messung des Via-Widerstandes. b) Messung des Isolationswiderstandes.
(a) DC-Messung zwischen den Klemmen 1 und 2
(b) DC-Messung zwischen den Klemmen 1 und 3
Abb. 15.18 I-U-Charakteristik isolierter Vias. Klemmenbezeichnung nach Abbildung 15.17b. Messergebnisse aus [108] Die zugrunde gelegte Schichtdicke des Oxids beträgt 250 nm. Man erkennt aus Abbildung 15.18, daß für den vermessenen Spannungsbereich Leckströme kleiner als 1 nA entstehen.
15.2 Prozeßschritte
303
Für Anwendungen insbesondere im Analogbereich sind Leckströme in dieser Größenordnung unter Umständen noch zu hoch. Vereinzelte Oxiddefekte wie z.B. sog. pinholes und dünne Oxidschichten an den Seitenwänden, insbesondere im Bereich des Via-Bodens (vgl. Abbildung 15.16a), können einen Stromfluß begünstigen. Um diese Defekte zu beseitigen, kann die Methode der anodischen Oxidation herangezogen werden. Abbildung 15.19a zeigt den hierfür verwendbaren Aufbau. Die Probe (z.B. ein gedünnter Wafer oder ein einzelner gedünnter Chip) werden in einen Probenträger eingespannt. Der Probenträger ist so konstruiert, daß beim Eintauchen in das Elektrolyt nur die Rückseite des Substrats von dem Elektrolyt benetzt wird. Bei dem Einbau der Probe in den Probenträger wird zusätzlich die p+ -Schicht elektrisch kontaktiert, die während des Dünnens als Ätzstopp diente. Da diese Schicht elektrisch sehr gut leitend ist, kann die Rückseitenoberfläche des Substrates später (bei moderaten Strömen) als Äquipotentialfläche angesehen werden. Die p+ -Schicht dient während der Oxidation als Anode.
Abb. 15.19 Aufbau zur anodischen Oxidation. a) Probe und Probenträger zusammen mit der Platin-Kathode, eingetaucht in das Elektrolyt. b) Detailansicht, im Bereich eines Vias. Gute Ergebnisse bei der anodischen Oxidation lieferte eine ElektrolytLösung aus 0.02 M Kaliumnitrit und 0.02 M Kaliumnitrat, welche in Ethylenglycol mit einem Restwasseranteil von 2 % gelöst wurde [117]. Beim Ansetzen der Lösung zerfällt zunächst das Kaliumnitrat gemäß folgender Gleichung + H2 O + KNO3 → K+ + OH− + NO− 3 +H
und reichert die Lösung mit OH− Ionen an. Beim Anlegen der Spannung U0 (vgl. Abbildung 15.19b) wandern durch das entstehende elektrische Feld die
304
15 3D-Stapeltechnik für den Sehwürfel
OH− Ionen in Richtung des Substrates. Hohe Stromdichten (und damit ein hoher Sauerstofftransport) entstehen insbesondere in Bereichen dünner Oxidschichten, also. z.B. an Defektstellen oder an den Seitenwänden im Bereich des Via-Bodens. Innerhalb des Oxids werden die Ionen durch den Transportmechanismus der feldunterstützten Diffusion an die Siliziumoberfläche geleitet und verbinden sich dort zu SiO2 : Si + 4 OH− → SiO2 + 2 H2 O + 4 e− . Das bei dieser Reaktion entstehende Wasser kann ebenfalls mit dem Silizium zu SiO2 umgewandelt werden: Si + 2 H2 O → SiO2 + 4 H+ + 4 e− . An der Platin-Kathode entstehen die für die Oxidation notwendigen OH− Ionen: 2 H2 O + 2 e− → H2 ↑ +2 OH−
− − − NO− 3 + H2 O + 2 e → NO2 + 2 OH .
An den Stellen, an welchen das Oxid wächst, steigt in konsequenter Weise der Widerstand, wodurch dort mit zunehmender Zeit der Stromfluß – und damit der Sauerstofftransport – abfällt (bei konstanter Spannung). Die Folge ist eine geringere Wachstumsrate des Oxids. Zusätzlich erfolgt die feldunterstützte Diffusion durch dickere Oxidschichten langsamer, wodurch ebenfalls eine Begrenzung der Wachstumsrate resultiert. Insgesamt erhält man somit einen selbstbegrenzenden Oxidationsprozeß: durch Vorgabe der Spannung U0 läßt sich eine automatische Dickenkontrolle realisieren. Die Dicke des Oxids verhält sich etwa linear zur Spannung [117]. Für eine Spannung von 80 V ergeben sich Oxiddicken im Bereich von 50 nm. Mit dem hier beschriebenen Verfahren der anodischen Oxidation können die Leckstromdichten um ca. 2 Größenordnungen gesenkt werden (gegenüber dem reinen CVD-Oxid und Vias mit einem Aspekt-Verhältnis von 20 µm : 6 µm). Ebenso liegen die Durchbruchsfeldstärken oberhalb 10 M V /cm, was ebenfalls eine Verbesserung darstellt. Viametallisierung Der erste Schritt zur Via-Metallisierung besteht im Öffnen des Oxids zum Landing-Pad in der ersten Metalllage des CMOS-Prozesses. Dies kann z.B. mit einem anisotropen Trockenätzprozeß (CF4 Plasma) realisiert werden. In Abbildung 15.20 ist zu erkennen, daß für Seitenwände mit einem Winkel gegenüber der Horizontalen zusätzlich zur Öffnung des Boden-Oxids das Seitenwandoxid abgetragen wird (vgl. Abbildung 15.20c). Als Grenzwinkel bestimmt man aus einfachen geometrischen Überlegungen dOx,S γ > arccos , dOx,S+dK
15.2 Prozeßschritte
305
mit dOx,S als Dicke des Seitenwandoxid und dK als Dicke der Isolationsschicht über dem Landing Pad [108]. Für typische Werte dOx,S = 40 nm und dK = 200 nm ergibt sich ein Winkel von > 80.5◦ . Um die Probleme – wie sie in Abbildung 15.19c gezeigt sind – zu umgehen, kann man einen modifizierten Lackprozeß mit einem sog. „Postback“-Schritt einfügen, welcher nach dem Entwickeln für ca. 30 Minuten und bei 100◦ C ausgeführt wird [108]. Hiermit lassen sich hinreichend stabile senkrechte Kanten in der Lackstruktur für die Oxidstrukturierung herstellen.
Abb. 15.20 Öffnung des Oxids zum Landing Pad in einem CF4 TrockenätzProzeß für verschiedene Via-Geometrien nach der Oxidation. Im Falle c) wird durch den anisotropen Ätzprozeß neben der Grundfläche zusätzlich die Seitenwandisolation angegriffen. Als Füllmaterial wird Kupfer verwendet. Dazu wird zunächst als Diffusionsbarriere bzw. Haftvermittler Titan-Wolfram (Ti : W) in einem SputterProzeß isotrop in den Via-Vertiefungen abgeschieden. Das Ti : W-System bietet nach [118] eine stabile Barriere bis zu Temperaturen über 750◦ C. Die Diffusionsbarriere ist notwendig, um zu verhindern, daß Cu-Atome der ViaMetallisierung in das Silizium hineindiffundieren und dort tiefe Störstellen hervorrufen. Da die Kupferfüllung galvanisch eingebracht wird, wird noch ein sog. CuSeed-Layer benötigt, der ebenfalls mit einem Sputter-Prozeß erzeugt wird. Die Schichtdicken von Ti : W und des Seed-Layers liegen bei ca. 20 nm (vgl. Abbildung 15.21). Im folgenden Schritt wird sowohl die Via-Füllung als auch das Rückseitenkontaktpad für die elektrische und mechanische Verbindung der einzelnen Lagen des Stapels mit einer LT-Galvanik (LT: low temperature) hergestellt. Die Rückseite des Substrats wird dazu mit Photolack entsprechend den ViaPositionen und Pad-Positionen strukturiert, wobei der Photolack eine Dicke
306
15 3D-Stapeltechnik für den Sehwürfel
Abb. 15.21 Aufbringen von Haftschicht, Diffusionsbarriere und Seed-Layer für die Cu-Galvanik. von ca. 7 µm aufweist. Um die Via-Gräben von eventuellen Lackresten zu befreien, wird nach dem Entwickeln des Lacks ein Reinigungsschritt in einem isotropen Sauerstoffplasma ausgeführt. Anschließend erfolgt das galvanische Befüllen der Vias. Abbildung 15.22a skizziert die hierfür verwendete Reaktionskammer, in welcher sich ein spezielles Elektrolyt zur Ionenleitung befindet. Bei einer Elektrodenspannung von 0.35 V können mit einer typischen Stromdichte von 56 mA/cm2 etwa 3 µm dicke Cu-Schichten innerhalb einer Zeitspanne von 15 Minuten auf einem Substrat abgeschieden werden.
(a) Skizze des Aufbaus einer Reaktionskammer für Cu-Galvanik
(b) Querschnitt einer Probe nach dem GalvanikSchritt für die Via-Metallisierung
Abb. 15.22
15.2 Prozeßschritte
307
Prinzipiell bestimmt die Stromdichte die Abscheiderate und hat Einfluß auf Körnung und Dichte des Kupferniederschlags. Abbildung 15.23 zeigt praktische Ergebnisse einer Probengalvanisierung.
Abb. 15.23 a) Lackmaske und Vias vor der Galvanisierung. b) Nach der galvanischen Metallisierung mit Kupfer Zur Vermessung der elektrischen Eigenschaften wurde eine Anordnung nach Abbildung 15.18a mit Vias untersucht, welche mit einen Querschnitt von 6 × 6 µm2 und einer Tiefe von 10 µm erzeugt wurden. Abbildung 15.24 zeigt das Resultat.
(a) Querschnitt der Probe. Man erkennt deutlich die homogene Cu-Füllung der Vias.
(b) I-U Charakteristik befüllter Vias. (I) Übertragungskurve zwischen den Klemmen 1-3, (II) Übertragungskurve zwischen den Klemmen 1-2 (Klemmenbezeichnung nach Abbildung 15.18a)
Abb. 15.24 Querschnitt und I-U Charakteristik einer Probe nach dem CuGalvanik-Schritt
308
15 3D-Stapeltechnik für den Sehwürfel
Die verhältnismäßig hohen Werte des Widerstands können zum einen durch einen erhöhten spezifischen Widerstand des galvanisch abgeschiedenen Kupfers erklärt werden, zum anderen spielen Widerstände im Messaufbau und Übergangswiderstände von Aluminium zum Kupfer eine Rolle. Insbesondere dünne Oxidschichten auf dem Aluminium können eine deutliche Widerstanderhöhung herbeiführen. Im Abschnitt über die elektrische Charakterisierung von 3D-Kontakten wird hierauf noch gesondert eingegangen. Aus Abbildung 15.25 läßt sich ein einfaches theoretisches Modell für die Widerstandwerte herleiten. Das Via im Bereich der Kupferfüllung wird mit einem durchschnittlichen spezifischen Leitwert ρ modelliert. Zu diesem Widerstand ist die Haftschicht (bzw. Diffusionsbarriere) in Reihe geschaltet, welche eine spezifischen Leitwert ρB aufweist. Zusätzlich können Übergangswiderstände zwischen den Materialschichten berücksichtigt werden. Zwischen Kupfer und der (Ti : W)-Diffusionsbarriere wird der Flächenwiderstand mit dem Parameter ρC1 modelliert, analog dazu der Übergangswiderstand zwischen der Aluminiumbahn und der Diffusionsbarriere mit ρC2 . Der Via-Widerstand kann zusammen mit diesen Definitionen durch die Formel Rvia = ρ
dB 1 1 hvia + ρB + ρC1 + ρC2 Wvia · Lvia Wvia · Lvia Wvia · Lvia Wvia · Lvia
abgeschätzt werden. Man beachte, daß die Schichtdicke der Diffusionsbarriere gegenüber den Weiten- und Längenabmessungen des Vias vernachlässigt werden kann. Ideale Werte (d.h. bei hochqualitativen Schichten) liegen bei ρB = 50 . . . 100 µΩcm und ρ = 1.7 µΩcm.
Abb. 15.25 Modell eines Vias mit seinen geometrischen Abmessungen. a) Querschnitt. b) Aufsicht. c) Ersatzschaltbild.
15.3 Verbindungstechnik
309
Bevor nun der eigentliche Chipstapel erzeugt werden kann, müssen die Rückseitenkontakte für das Lötverfahren noch mit einer Zinnschicht überdeckt werden. Hierzu wird analog zur Kupfermetallisierung das Zinn galvanisch aufgetragen (Abbildung 15.26). Die Zinnschicht wird mit einer Schichtdicke von ca. 2 µm abgeschieden. Die typische Spannung liegt hierbei bei U0 = 0.25 V , wobei eine Stromdichte von ca. 39 mA/cm2 erzeugt wird. Für das Aufbringen einer Zinnschicht mit einer Dicke von 2 µm benötigt man eine Zeit von weniger als 10 min.
(a) Skizze des Aufbaus einer Reaktionskammer für Sn-Galvanik
(b) Querschnitt einer Probe nach dem GalvanikSchritt
Abb. 15.26
15.3 Verbindungstechnik Die Verbindungstechnik befaßst sich mit dem mechanischen und elektrischen Verbinden der einzelnen Schichten. Bei dem im folgenden beschriebenen Verfahren des Diffusionslötens bilden die Lötverbindungen sowohl den elektrischen als auch den mechanischen Schluß, so daß keine weiteren Prozeßschritte erforderlich sind. Die prinzipielle Abfolge der Verbindungsprozesse ist in Abbildung 15.27 gezeigt. Da ein Chip-to-Wafer-Prozeß beabsichtigt ist, werden die zu stapelnden Chips zunächst getestet und vereinzelt. Nur das Basissubstrat bleibt zunächst noch als Wafer erhalten. Die Rückseitenkontakte des ersten Layers werden nun auf die Vorderseitenkontakte justiert und mechanisch in Kontakt gebracht. Anschließend wird unter Druck und Temperatur der Verbindungsprozeß des Lötens initiiert. Nach Abschluß des Lötvorganges wird der Hilfsträger der
310
15 3D-Stapeltechnik für den Sehwürfel
ersten Schicht entfernt, wodurch weitere Schichten auf der nun entstandenen Oberfläche gestapelt werden können. Die beschriebene Prozeßfolge wird so oft wiederholt, bis alle Schichten gestapelt und verlötet sind. Abschließend folgt die Vereinzelung des Wafers und der Einbau in ein Gehäuse.
Abb. 15.27 Abfolge der Verbindungstechnik. a) Präparation des Basissubstrates mit Vorderseitenkontakt A. b) Justage des Rückseitenkontaktes B von layer1 auf den Vorderseitenkontakt A. c) Verlöten der Kontakte A und B unter Druck und Temperatur. d) Entfernen des Hilfsträgers. e) Justage des Rückseitenkontaktes D des nächsten Layers auf den Vorderseitenkontakt C. Wiederholung der Schritte c)-e), bis der vollständiger Chipstapel aufgebaut ist. Zwei Anforderungen ergeben sich für den Lötprozeß. Zum einen sollte das Temperaturbudget möglichst gering sein, um die thermische Degradation der CMOS-Schaltungen während des Verbindungsvorganges zu vermeiden. Man beachte hierbei, daß das Basissubstrat für jede weitere Lage erneut dem Temperaturbudget einer Lötung ausgesetzt ist und hier die höchste thermische Belastung innerhalb des Stapels auftritt. Zum anderen müssen die Lötverbindungen temperaturstabil sein, um bei dem jeweils nachfolgenden Iterationsschritt nicht wieder aufzubrechen. Das hier vorgestellte SoLID -Verfahren (solid liquid interdiffusion) kombiniert beide Anforderungen durch Ausnutzung des Prinzips der isothermen Erstarrung. Hierbei werden zwei Materialien miteinander verbunden. Das eine Material besitzt dabei eine relativ niedrige Schmelztemperatur, während die Verbindung (Legierung) der beiden Materialien einen deutlich hö-
15.3 Verbindungstechnik
311
heren Schmelzpunkt aufweist. Beispiele für derartige Materialsysteme bilden Gold/Indium oder Kupfer/Zinn. In dem hier vorgestellten Ansatz wird als Matrialsystem Kupfer/Zinn verwendet. Abbildung 15.28 zeigt das zugehörige Phasendiagramm. Während reines Zinn einen Schmelzpunkt von ca. 232◦ C aufweist, ergibt sich z.B. für die Phase von Cu : Sn ein Schmelzpunkt oberhalb von 640◦ C.
Abb. 15.28 Phasendiagramm von Cu-Sn [119] Abbildung 15.29a zeigt die Prinzipskizze zur Verbindung zweier Kontakte mittels SoLID. Vorder- und Rückseitenkontakt der zu verbindenden Schichten sind als Kupfer realisiert. Die untere Kupferschicht bildet den Vorderseitenkontakt einer Schicht i, während die obere Kupferschicht den Rückseitenkontakt der Schicht i + 1 darstellt. Zwischen diesen Kupfer-Kontakten liegt eine Schicht Zinn, welche auf den Rückseitenkontakt nach der KupferGalvanisierung aufgebracht wurde. Beim Erhitzen dieses Schichtsystems beginnt das Zinn zu schmelzen, wobei Kupfer in das flüssige Zinn diffundiert und dort zunächst eine Zwischenphase bildet, die sog. η-Phase. Durch fortlaufende Kupfer-Diffusion wandelt sich die η-Phase schließlich in die temperaturstabile ε-Phase um. Kann genügend Kupfer in das Zinn diffundieren, wandelt sich die Verbindungsschicht vollständig in die ε-Phase um. Hierfür haben sich Kupferschichtdicken von 3 µm und Sn-Schichtdicken von 2 µm als vorteilhaft erwiesen. Es zeigt sich, daß die Vermeidung oxidierender Atmosphären in der Lötkammer erforderlich ist, um die Bildung von Kupferoxid bzw. Zinnoxid wäh-
312
15 3D-Stapeltechnik für den Sehwürfel
Abb. 15.29 a) Phasenbildung beim SoLID-Prozeß. b) Mikroskopaufnahme eines Schliffs rend des Lötvorganges zu verhindern. Dies kann z.B. durch eine Stickstoffspülung erreicht werden [108]. Ebenso hat die Qualität der Lötmetallisierung Einfluß auf die Qualität der Lötverbindung. Vor der Lötung sollte daher ein Reinigungsschritt zur Entfernung des Kupferoxids von der Kupferoberfläche erfolgen. Obwohl die physikalischen Eigenschaften der Cu − Sn−Legierung seit langem gut untersucht und durch zahlreiche Veröffentlichungen dokumentiert sind (z.B. [120]), gelang es erstmals Hübner et al. im Jahre 2002 einen produktionsreifen Prozeß zur Verbindung von zwei ungedünnten Lagen in einer Face-to-Face Technik vorzustellen [121]. Abbildung 15.30 zeigt experimentelle Ergebnisse zur Verbindung zweier ungedünnter Substrate. Aus den Ergebnissen erkennt man, daß sich mit dem SoLID -Verfahren Kontaktreihen mit einem Abstand von weniger als 20 µm und einem Querschnitt von weniger als 14 µm herstellen lassen.
Abb. 15.30 a) Lötverbindung zweier ungedünnter Substrate. b) Detailansicht eines Lötkontaktes
15.3 Verbindungstechnik
313
Abbildung 15.31 zeigt das Resultat zweier verlöteter Substrate. Der aufgelötete Chip wurde vor dem Löten gedünnt. Nach dem Löten wurde der Hilfsträger wieder entfernt, so daß nur noch das gedünnte Substrat sichtbar ist. Das Entfernen des Trägers erfolgte in einer 1-methyl-2-pyrrolidone-Lösung bei einer Temperatur von 150◦ C (30 − 60 Minuten Prozeßzeit für 5 mm2 Chipfläche). Die danach offen liegende Chipfläche wurde mit einem O2 -Plasma abschließend von Kleberresten gereinigt. Zu sehen ist die Cu−Oberfläche des Chips, die Metallisierung des Basissubstrates und einzelne Meßpads.
Abb. 15.31 Zwei-Lagenstapel. a) Chip-Photographie mit aufgelötetem Chip. b) Detailansicht. Mit der beschriebenen Methode der 3D-Stapelung konnten bislang ein Aufbau mit bis zu sechs Schichten realisiert werden (Abbildung 15.32). Hiermit konnte die mechanische Stabilität des Stapels erfolgreich nachgewiesen werden.
Abb. 15.32 REM Aufnahme eines Stapels mit 6 Lagen und einem Basissubstrat.
314
15 3D-Stapeltechnik für den Sehwürfel
15.4 Elektrische Eigenschaften von 3D-Verbindungen Im folgenden Abschnitt werden experimentelle Ergebnisse zu elektrischen DCEigenschaften der Verbindungstechnik vorgestellt. Dabei wurden Untersuchungen hinsichtlich • • •
Widerstand der Lötverbindung, Via-Widerstand, Widerstand von Kupferzuleitungen
durchgeführt. Abbildung 15.33 zeigt einen Versuchsaufbau zur Bestimmung des Lötwiderstandes. Dabei wurden Lötkontakte der Fläche 12 × 12 µm2 unter verschiedenen Zuleitungslängen vermessen. Aus den Messungen ergibt sich nach Ausgleichsrechnungen für galvanisches Kupfer ein spezifischer Widerstand von ρCu,Messung ≈ 3 µΩcm. Ebenso erhält man für den Lötkontakt einen Widerstand von RContact ≤ 0.1 Ω. Theoretische Werte aus der Literatur ergeben zum Vergleich ρCu ≈ 1.7 µΩcm, ρCu3 Sn ≈ 8.9 µΩcm und ρCu6 Sn5 ≈ 17.5 µΩcm.
Abb. 15.33 Widerstand von galvanisch aufgebrachten Kupferleitungen, die mit einer Lötbrücke der Abmessung 12 µm × 12 µm verbunden sind. Abbildung 15.34 zeigt eine Anordnung zur Vermessung des Via-Widerstandes. Der Aufbau enthält zwei Vias, eine Brücke und die beiden Meßpads. Die Struktur wurde mit galvanischem Kupfer hergestellt und beinhaltet keinen Lötprozeß. Unter Berücksichtigung der elektrischen Eigenschaften des Messaufbaus (RMessaufbau ≈ 0.6Ω . . . 1Ω) erhält man einen Widerstandswert von RVia < 0.7Ω bei einem Via-Querschnitt von 6 × 6 µm2 . Im Vergleich zur Messung, die in Abbildung 15.23 gezeigt ist, ergibt sich ein deutlich kleinerer Wert für den Via-Widerstand. Wie bereits angedeutet, kann diese Abweichung durch einen höheren Übergangswiderstand zwischen der Kupfermetallisierung und der Aluminiumelektrode erklärt werden.
15.4 Elektrische Eigenschaften von 3D-Verbindungen
315
Abb. 15.34 Widerstand einer 2-Via-Kette. Die Struktur wurde durch reine Kupfer-Metallisierung erzeugt und beinhaltet keine Lötkontakte. Abbildung 15.35 zeigt die Widerstandmessung einer durchkontaktierten Probe mit einer zusätzlichen Lötkontaktierung und Zuleitung der Länge 2.8 mm in Form einer Kupferleitung. Der Widerstand der Kupferleitung kann mit 1.18 Ω abgeschätzt werden, so daß sich für die Reihenschaltung aus Via und Lötverbindung ein Widerstand von RVia,L¨ot < 0.8 Ω errechnet. Dieser Wert harmoniert mit den bereits auf andere Art und Weise bestimmten Werten für Lötwiderstand und Via-Widerstand.
Abb. 15.35 Widerstand einer Durchkontaktierung. Zu berücksichtigen bei der Widerstandberechnung ist die Zuleitungslänge der Kupferbahn von 2.8 mm.
316
15 3D-Stapeltechnik für den Sehwürfel
15.5 Zusammenfassung Für die 3D-Schlüsselprozesse (i) (ii) (iii) (iv)
zerstörungsfreie Substratdünnung, präzise Justage von Vorder- und Rückseitenstrukturen, Herstellung von Rückseiten-Vias (Ätzen, Isolation, Metallisierung), Verbindungstechnik (Löten durch isotherme Erstarrung)
wurden Prozeßschritte entwickelt, die in aufeinander abgestimmter Weise eine mechanisch stabile Mehrlagenstapelung ermöglichen. Grundvoraussetzung für die erfolgreiche Einführung ist, daß sämtliche Prozeßschritte als Niedertemperaturschritte ausführbar sind: • • •
der Klebeprozeß erreicht ein Temperaturniveau von 250◦ C − 270◦ C über eine Zeit von ca. 4h, die Oxidation kann bei einer Temperatur von ca. 200◦ C in weniger als 3h ablaufen, die Lötung selbst erfolgt unterhalb von 300◦ C in kurzer Zeit.
Insgesamt gibt es keinen Prozeßschritt in der Verarbeitungskette, der oberhalb von 300◦C abläuft. Dies zusammen mit der Möglichkeit, Substrate präzise auf eine Restdicke von 10 µm zu dünnen und Strukturen mit der Lichtoptik mit einer Genauigkeit unterhalb von 1 µm justieren zu können, führte zur Herstellung von Kontakten mit einem Querschnitt von 6 × 6 µm und einem lateralen Raster von 15 µm Abstand. Auf einem Quadratmillimeter Silizium können damit maximal 4.400 3DKontakte untergebracht werden. Ein Chip mit einer Fläche von 50 mm2 könnte somit fast eine Viertelmillion Kontakte in vertikaler Richtung aufnehmen. Diese enorme Anzahl an Kontakten wirft natürlich eine Reihe von weiteren Fragen auf. Insbesondere sind die Entwicklung effizienter Testverfahren und die Entwicklung von Verfahren zur Ausnutzung von Redundanz Themen, die eine tiefergehende Bearbeitung erfordern. Ebenso spielen die Temperaturentwicklung und die Abführung von Wärme eine nicht unwesentliche Rolle. Und schließlich sind neuartige halb- und vollautomatische Entwurfswerkzeuge (für die Partitionierung, Simulation, Verdrahtung und Plazierung) bereitzustellen, um den effizienten 3D-Entwurf zu ermöglichen. Mit dieser Aufbautechnik sind die Grundlagen für den Aufbau eines hinreichend kleinen Sehwürfels für den mobilen Einsatz gegeben.
16 Architektur eines Sehwürfels der ersten Generation Arne Heittmann und Ulrich Ramacher
Wir wollen uns nun einen Überblick verschaffen über die Anzahl der verschiedenen Module, welche nötig sind, um ein Sehsystem mit einer Auflösung vergleichbar der menschlichen Retina als Sehwürfel zu realisieren.
16.1 Dimensionen der Merkmalskaskade und Auflösungspyramide Zunächst ist es notwendig, die relevanten Teilsysteme des Auges zu identifizieren, die für die Merkmalsextraktion verwendet werden. Hier sind die wesentlichen Parameter: (a) die optische Auflösung (Pixel/mm2 ) und (b) der örtliche Bereich des Gesichtsfeldes, in dem Objekterkennung realisiert wird. Rekapitulieren wir dafür die physiologischen Gegebenheiten. Die Photorezeptoren der Retina werden in sogenannte Stäbchen (engl. rod cells) und Zapfen (engl. cones) unterteilt. Je nach Spezies treten bei Wirbeltieren 24 verschiedene Zapfentypen mit unterschiedlicher spektraler Empfindlichkeit auf, wodurch Farbwahrnehmung ermöglicht wird. Beim Menschen sind drei Zapfentypen vorhanden: (a) der L-Typ bzw. Rotrezeptor, (b) der S-Typ bzw. Blaurezeptor und (c) der M-Typ bzw. Grünrezeptor. Bei ausreichender Lichtintensität werden die Zapfen aktiv und werden neben der Farbunterscheidung zur Kontrastdetektion herangezogen, um räumliche Auflösung zu ermöglichen. Im Vergleich zu den Stäbchen haben Zapfen eine geringe Lichtempfindlichkeit und arbeiten deshalb nur bei Tageslicht oder unter Dämmerungsbedingungen. Bei Dämmerung bzw. nahezu vollständiger Dunkelheit sind nur noch die Stäbchen für optische Lichtreize empfindlich. Aufgrund ihrer höheren Lichtempfindlichkeit sind die Stäbchen schon bei geringer Lichtintensität gesättigt (überreizt). Sowohl Stäbchen als auch Zapfen sind mit den
318
16 Architektur eines Sehwürfels der ersten Generation
Ganglionzellen verbunden, welche ihrerseits über den Sehnerv mit dem Gehirn verbunden sind. Die Ganglionzellen stellen eine Art Schnittstelle zwischen Gehirn und Auge dar. Die höhere Lichtempfindlichkeit der Stäbchen leitet sich neben der reinen Rezeptorempfindlichkeit daraus ab, daß eine Vielzahl von Stäbchen ihre Ausgangssignale über Bipolarzellen an jeweils einzelne Ganglionzellen senden. Diese Mittelung über einen ausgedehnten räumlichen Bereich der Retina hat unmittelbar einen Verlust an räumlicher Auflösungsfähigkeit auf der Ebene der Ganglionzellen zur Folge, weswegen die Bildinformation, die durch die Stäbchen bereitgestellt wird, vom Gehirn nur schlecht zur Kontrastdetektion verwendet werden kann. Indes leiten einzelne Zapfen ihre Ausgangssignale direkt und ohne örtlich ausgedehnte Mittelung an einzelne Ganglionzellen weiter, so daß eine präzise Lokalisierung des Lichtreizes in der nachfolgenden Verarbeitungskette möglich ist. Man kann daher annehmen, daß die Bildinformation für die Kontrastdetektion hauptsächlich von den Zapfen stammt. Bei den nachfolgenden Betrachtungen werden nur diejenigen Eigenschaften des Auges herangezogen, die für die Detektion von statischen räumlichen Strukturen benötigt werden. Da die Stäbchen vorwiegend für das sogenannte skotopische Sehen (Nachtsehen mit schlechter räumlicher Auflösung) sowie für die Bewegungsdetektion im Rande des Gesichtsfeldes genutzt werden, sollen die Stäbchen nachfolgend nicht weiter betrachtet werden. Trotz einer Vielzahl von ca. 120 Millionen Stäbchen können diese keinen wesentlichen Beitrag für die Detektion von Kanten oder Linien liefern. Hierfür ist eine hohe räumliche Auflösung nötig, welche nur durch die Verteilung und Verschaltung der Zapfen gegeben ist. Mit einer Gesamtanzahl von insgesamt 6 Millionen sind Zapfen hauptsächlich für das hier betrachtete photopische Sehen (Tagsehen) zuständig. Neben den funktionalen Unterschieden der Zellen auf der Retina sind diese mit unterschiedlichen Dichten auf der Netzhaut verteilt. Im sogenannten gelben Fleck (Makula Lutea) findet man die höchste Dichte an Sehzellen. In diesem Bereich erhält man qualitativ die höchste räumliche Auflösung und die beste Farbwahrnehmung. Wiederum innerhalb des gelben Flecks auf der optischen Achse des Auges befindet sich die sogenannten Fovea Centralis. Hier findet man nur Zapfen, aber keine Stäbchen. Die Verteilung der Zapfen fällt dabei kontinuierlich vom Zentrum der Fovea Centralis zum Rand der Retina ab. Die Stäbchendichte steigt außerhalb der Fovea Centralis zunächst bis zu einer Exzentrizität von ca. 20◦ (Raumwinkel bezogen auf die optische Achse) an und fällt außerhalb dieses Punktes zum Rand der Netzhaut ab (Abbildung 16.1). Experimentell stellt man eine erhöhte Empfindlichkeit für Bewegungen im Randbereich des Sehfeldes fest, weswegen man vermutet, daß die dort lokalisierten Stäbchen vorwiegend für die Bewegungsdetektion verwendet werden. Man nimmt weiterhin an, daß hiermit Reflexe abgeleitet werden, welche eine Bewegung des Auges hin zu den relevanten Bildszenen bewirken. Ist das Auge schließlich auf diese Szenen fokussiert, kann eine Analyse der Bilddetails mit Hilfe der Zapfen umgesetzt werden.
16.1 Dimensionen der Merkmalskaskade und Auflösungspyramide
319
Abb. 16.1 Gesamtverteilung der L-, M-, und S-Sinneszellen (engl. cones) sowie der Stäbchen (engl. rod cells) auf der Retina. Aus den Ausgangssignalen der L-, M-, und S-Zapfen werden auf der Retina zunächst durch neuronale Verschaltungen (a) das sogenannte Luminanzsignal (R+G+B), (b) das Rot-Grün-Signal (G-R) und (c) das Blau-Gelb-Signal (B-R-G) erzeugt (siehe Abbildung 16.2). Die Detektion von Kanten und Linien kann ausschließlich auf dem Luminanzsignal aufgebaut werden. Da jeweils drei Zapfen ein Luminanz-Pixel darstellen, existieren unter diesen Annahmen insgesamt nicht mehr als ca. 2 · 106 Luminanz-Pixel auf der Retina. Zusammen mit der experimentell bestimmten Verteilung der Farb-Sinneszellen in Abhängigkeit der Exzentrizität (siehe Abbildung 16.1) ergibt sich weiter, daß mehr als 50% der Farbzellen (entspricht etwa 1 · 106 Luminanzpixeln) sich innerhalb einer Exzentrizität von weniger als 20◦ (entspricht 40◦ im Gesichtsfeld) befinden. Im Beispiel der Kopferkennung läßt sich der erforderliche Winkel (entfernungsabhängig) sogar auf unter 20◦ reduzieren, wenn man einen Abstand zwischen 50 cm und 80 cm vom Beobachter einhält. Wir werden jedoch zunächst an den 40◦ festhalten und gehen von beliebigen Objekten aus, die auf verschiedenen Auflösungsebenen, d.h. in verschiedenen Abständen vom Betrachter erkannt werden sollen. Hierzu muß das Erkennungssystem (Merkmalskaskade und Objekt-Erkenner) so ausgelegt sein, daß auf allen Auflösungsebenen und Ansichten eine hinreichende Anzahl an Merkmalen extrahiert und verarbeitet werden kann. In Bezug auf die Merkmalskaskade bedeutet dies, daß eine hin-
320
16 Architektur eines Sehwürfels der ersten Generation
Abb. 16.2 Verschaltung der Zapfen. Erzeugt werden (a) das Luminanzsignal, (b) das G-R Signal und das (c) B-(R+G) Signal. reichende Anzahl an Auflösungsebenen bzw. Raumfrequenzen und auf jeder Auflösungsebene eine hinreichende Anzahl von Orientierungen berücksichtigt werden. Für eine Abschätzung für die obere Schranke der Systemkomplexität haben wir somit drei Parameter zu berücksichtigen: (i) Anzahl der Auflösungsebenen, (ii) Anzahl der Orientierung auf jeder Auflösungsebene, (iii) und Festlegung, an welchen Positionen auf der Retina welche Merkmale extrahiert werden sollen. Da wir einen allgemeinen Objekterkenner nicht zur Verfügung haben und ihn nicht vermessen und daraus die Parameter bestimmen können, legen wir die Parametrisierung durch die Forderung fest, daß die gesamte relevante Bildinformation durch die extrahierten Merkmale möglichst vollständig erfaßt wird. Die erforderlichen Auflösungsebenen (d.h. die Staffelung der Raumfrequenzen) erhält man durch folgende Überlegung zur entfernungsinvarianten Objekterkennung. Bei einer definierten Normalentfernung wird das Objekt auf die Netzhaut abgebildet. Mit optimal ausgelegten Merkmalsdetektoren (hinsichtlich Raumfrequenz und Orientierung) können dann für diese Normalentfernung die charakteristischen Merkmale extrahiert werden. Vergrößert man nun den Abstand des Objektes zum Bildaufnehmer, erscheint das Objekt durch die Abbildungseigenschaften des Linsensystems kleiner. Insbesondere werden auch die Abstände zwischen Kanten und Linien kleiner, weshalb die rezeptiven Felder der definierten Merkmalsdetektoren lokal eine größere Flä-
16.1 Dimensionen der Merkmalskaskade und Auflösungspyramide
321
che der Retina abdecken, als die Fläche der verkleinerten Merkmalsstrukturen ausmacht, und damit zusätzliche Pixelinformation in die Detektorantwort einfließt. Nimmt nun der Abstand des Objektes zum Bildaufnehmer immer weiter zu, fließt immer mehr Information benachbarter Pixel in das rezeptive Feld der Merkmalsdetektoren ein. Die so entstehende Überlagerung kann in Summe zu einer starken Dämpfung bis hin zur Auslöschung einzelner Detektorantworten führen. Zur Erläuterung dieses Effekts wurde die in Abbildung 16.3 gezeigte Kopfpose mit verschiedenen Abständen zu einem Bildaufnehmer untersucht. Der Faktor s gibt die relative horizontale bzw. vertikale Ausdehnung des Objektes auf der Retina an. Für s = 100 % erhält man die Kopfpose in Normalabstand, während für s = 50 % das Objekt nur noch halb so groß erscheint, also weiter entfernt ist.
Abb. 16.3 Kopfpose in verschiedenen Entfernungen. Der Faktor s gibt die scheinbare Skalierung an, d.h. den visuellen Skalierungsfaktor. Für den Normalabstand können die Parameter der Merkmalsdetektoren optimal ausgelegt werden. Wir gehen von einem derart bestimmten Detektorsatz aus und wenden diesen für die weiter entfernten Objektszenen an. Abbildung 16.4 zeigt die Aktivitätsverteilung der Merkmalsdetektoren für horizontale Kanten zwischen dem jeweiligen Schnitt A-B. Das Merkmal um den Punkt 0 herum wird bis zu einem Faktor s = 70 % robust detektiert und fällt für s = 60 % auf den halben Nominalwert ab. Für s = 50 % verschwindet die Detektorantwort an diesem Ort vollständig, das Merkmal wird nicht mehr aufgelöst. Ebenso erkennt man die Überlagerungseffekte für die Merkmale am Ort B. Während die beiden Merkmale um den Ort B herum bis zum Fall s = 70 % klar diskriminiert werden können, verschlechtert sich die Diskriminierbarkeit ab s = 60 %. Für s = 50 % beginnen die beiden Merkmale zu einer Einheit zu verschmelzen, obwohl die beiden Kanten auf Pixelebene noch aufgelöst werden. Um die skalierten Merkmale detektieren zu können, müssen offenbar neue Detektoren mit kleinerem rezeptiven Feld und damit höherer Ortsfrequenz verwendet werden. Gehen wir von der höchsten Auflösung für die entfernteste Objektlage in Richtung zur niedrigsten Auflösung für die Normallage - also in Abbildung 16.5 von A nach E - so muß im Falle von s = 50 % für die
322
16 Architektur eines Sehwürfels der ersten Generation
Abb. 16.4 Aktivitätsverteilung für verschiedene Parameter s im Schnitt A-B für einen horizontalen Merkmalsdetektor jeweils nächste Auflösungsskala die Ortsfrequenz der Wavelets halbiert werden. Damit verdoppelt sich das rezeptive Feld eines Detektors auf der Retina zunächst in orthogonaler Richtung zur Wavelet-Orientierung, da die vollständige Cosinus-Schwingung mit halber Frequenz durch das rezeptive Feld erfaßt werden muß. Ebenso ist eine räumliche Verlängerung des Wavelets längs seiner Orientierung notwendig, um die Orientierungsselektivität des Wavelets auf dieser Auflösungsskala nicht zu verschlechtern. Insgesamt erhält man also eine Vervierfachung der Fläche des erforderlichen rezeptiven Feldes auf der Retina und damit auch eine Vervierfachung der Fläche eines Abtastpunktes: 4 Pixel auf der ursprünglichen Auflösungsebene werden gemittelt, und das pulsgewandelte Signal stellt das Eingangssignal für die nachfolgende Auflösungsebene dar. Durch die Vergrößerung des rezeptiven Feldes ändert sich schließlich auch das Raster, in welchem die Wavelets angeordnet werden müssen, gleichzeitig muß der horizontale und vertikale Waveletabstand ebenfalls auf das Doppelte vergrößert werden. Die Gesamtanzahl der Wavelets fällt somit auf jeder neuen Auflösungsebene auf ein Viertel der ursprünglichen Zahl. Die Anzahl der unterschiedlichen Orientierungen ergibt sich grob als Anzahl der verschiedenen Wavelets, welche sich auf dem jeweiligen Auflösungsraster ohne zu große Überlappung realisieren lassen. Für die in den Untersuchungen zum Kopfdetektor beispielhaft gewählten Wavelets mit einem rezeptiven Feld von 7 × 7 Pixel können zwischen 4 und maximal 8 unterschiedlich orientierte Wavelets konstruiert werden. Die Retina wird hier flächendeckend mit den Wavelets im Pixelabstand senkrecht zur Orientierung und
16.1 Dimensionen der Merkmalskaskade und Auflösungspyramide
323
im 2-Pixelabstand längs zur Orientierung abgetastet. Bei n × m Pixeln erhält man so auf der höchsten Auflösungsskala n × m/2 flächig angeordnete Wavelets pro Orientierung. Durch die Mittelung der Pixelinformation beim Übergang von einer Auflösungsebene zur nächsten entsteht ein Bild, welches die gewünschte niedrigere Auflösung bereitstellt. Auf der neuen Auflösungsebene lassen sich wiederum rezeptive Felder mit 7 × 7 Pixeln definieren, die die Eingangsinformation für Merkmalsdetektoren erzeugen. Ebenso geht man für die verbleibenden Schichten vor. So entsteht für jede Auflösungsskala der Wavelets eine Bildschicht mit der entsprechenden Auflösungsskala. Dabei läßt sich die Bildinformation auf Schicht i zur Konstruktion der Bildschicht i + 1 verwenden. Bestimmt durch den Faktor s werden 1/s2 Pixel der höher liegenden Schicht auf ein neues Pixel gemittelt. Abbildung 16.5 zeigt die so entstehende Auflösungspyramide für s = 50 % (entspricht der Mittelung von 2 × 2 Bildpunkten von Schicht zu Schicht).
Abb. 16.5 Auflösungspyramide für s = 50 %. Auf Schicht A befinden sich die Neuronen, welche die Luminanzinformation aus den Zapfen kodieren. Auf jeder weiteren Schicht wird die Bildinformation in einer unterschiedlichen Auflösung reproduziert. Wir wollen nun nachweisen, daß sich durch diese Pyramidenarchitektur Wavelets mit unterschiedlichen Raumfrequenzen realisieren lassen. Für die Experimente werden zwei Wavelets implementiert. Das eine Wavelet ist auf Ebene C, das zweite Wavelet auf Ebene D implementiert. Auf beiden Ebenen werden rezeptive Felder von 7 × 7 Pixeln auf der zugehörigen Auflösungsskala angesetzt. Durch den hierarchischen Aufbau der Auflösungspyramide hat das Wavelet auf Ebene C bezogen auf die Ebene A ein rezeptives Feld von 28 × 28
324
16 Architektur eines Sehwürfels der ersten Generation
Pixeln. Für das Wavelet auf Ebene D erhält man umgerechnet für die Ebene A ein rezeptives Feld von 56 × 56 Pixeln. Die Profile der Merkmalsdetektoren werden nun experimentell auf einem 7 × 7-Raster durch Spots abgetastet. Für das Wavelet in Ebene D haben die Spots eine Ausdehnung von 8 × 8 Pixeln auf Retina-Ebene (siehe Abbildung 16.6), entsprechend sind es für die Abtastung auf Ebene C nur 4 × 4 Pixel. Die Abtastung erfolgt getrennt nach der Aktivierung mit einem hellen Spot mit dunklem Hintergrund (Bright Spot) oder mit einem dunklen Spot mit hellem Hintergrund (Dark Spot ).
Abb. 16.6 Pulsraten der Neurone auf der Schicht A für beispielhafte Aktivierung a) Bright Spot und b) Dark Spot zur Ausmessung der Waveletprofile auf Schicht D Abbildung 16.7 zeigt ortsaufgelöst die Detektorteilprofile mit den charakteristischen Halbwellen. Durch Subtraktion der Teilprofile erhält man das vollständige Detektorprofil. Abbildung 16.8 zeigt das Resultat für die Ebenen C und D. Man erkennt, daß im Vergleich zu dem Profil aus Ebene C die Ortsfrequenz des Profils auf Ebene D (wie erwartet) halbiert ist.
Abb. 16.7 Antwort des Merkmalsdetektors auf Schicht D in Abhängigkeit vom Ort, aufgetragen in Abhängigkeit der Koordinaten von Schicht A (Luminanzsignal der Retina) Anhand dieser Abschätzungen läßt sich der Aufwand zur Realisierung der Merkmalskaskade eingrenzen. Gehen wir bei den Merkmalsdetektoren einheit-
16.1 Dimensionen der Merkmalskaskade und Auflösungspyramide
325
Abb. 16.8 a) Detektorprofil eines Merkmalsdetektors aus Schicht D. b) Detektorprofil eines Merkmalsdetektors aus Schicht C. Das rezeptive Feld überdeckt 25 % des rezeptiven Feldes aus a). lich von einem rezeptiven Feld von 7 × 7 Pixeln und 2 × 64 Gradientenpaaren pro Gabor-Wavelet aus und ordnen die Gabor-Wavelets in der Richtung ihrer Orientierung im Abstand von 2 Pixeln und in der dazu senkrechten Richtung im Abstand von einem Pixel an, so ergibt sich ein Gesamtaufwand wie in Tabelle 16.1 wiedergegeben. Pixel A B C D E
Orientierung × Neuronen per Anordnung Wavelet 1024 × 1024 8 × 0.5 × 1 (64 × 2 + 1) × 2 + 4 512 × 512 dito dito 256 × 256 dito dito 128 × 128 dito dito 64 × 64 dito dito
Synapsen per Wavelet (64 × 5) × 2 + 8 dito dito dito dito
Gesamtzahl (in 106 ) von Neuronen/Synapsen 1098/2718 274/680 68/170 17/42 4/10 Total: 1461/3620
Tabelle 16.1 Hochgerechnete Anzahl von Neuronen und Synapsen für eine symmetrische Merkmalskaskade mit 5 Auflösungsebenen, 8 Orientierungen pro Auflösungsskala und Detektoren mit einem rezeptiven Feld von 7 × 7 Pixeln bzw. 64 Eingangsdifferenzpaaren Setzt man im Durchschnitt 1012 Neuronen und 1015 Synapsen für ein menschliches Gehirn an, so beträgt der relative Aufwand für die Realisierung der Merkmalskaskade gerade 0.14 % der Gesamtzahl aller Neuronen. Noch geringer ist der relative Anteil der verwendeten Synapsen mit 3.45 · 10−6. Selbst unter Einbeziehung aller 2 Millionen Luminanzpixel fällt der Gesamtaufwand (d.h. ca. Verdopplung des Aufwandes) nicht weiter ins Gewicht. Bedingt durch die Eingrenzung auf Zonen werden für einen Kopf nicht mehr als 745 Detektorantworten benötigt. Bei 5 Auflösungsschichten verfünffacht sich der Gesamtaufwand, wobei in jeder Auflösungsskala die Zonenarchitektur aus der untersten Schicht einfach repliziert wird. Man erhält unter diesen Annahmen eine Gesamtzahl von 3725 zu realisierenden Detektoren. Da wir die Zahl der erkennbaren Objekte jedoch eher in den Tausenden und
326
16 Architektur eines Sehwürfels der ersten Generation
Zehntausenden ansiedeln wollen, können die Zonen überall in den Ebenen der Merkmalspyramide zu liegen kommen. Zusätzlich entsteht für die Merkmalserkenner in den einzelnen Zonen der Kopferkennung ein Aufwand, wie er in Tabelle 16.2 dargestellt ist. Zone 1
Zone 2
Zone 3
Zone 4
Zone 5
Zone 6
total
Neuronen (103 )
0.35
0.43
0.46
0.37
0.64
0.39
2.64
Synapsen (103 )
2.23
2.72
2.94
2.31
4.19
2.47
16.86
Tabelle 16.2 Aufwand für die Merkmalserkenner in den einzelnen Zonen für eine Auflösungsskala
16.2 Sparsame Implementierung des Merkmalsdetektors Jeder Merkmalsdetektor (egal welcher Orientierung) wird mit einem rezeptiven Feld der Größe von 7 × 7 Pixeln implementiert. Typischerweise werden dabei von den 7 × 7 Pixeln eines rezeptiven Feldes nur eine Untermenge als Stützstellen für das Detektorprofil verwendet. Untersuchungen haben gezeigt, daß 20 Stützstellen ausreichend sind, um die hier verwendeten Wavelets zu repräsentieren. Abbildung 16.9 zeigt beispielhaft für 6 Orientierungen die Verteilung einzelner Stützstellen.
Abb. 16.9 Waveletsatz mit rezeptivem Feld von 7 × 7 Pixeln für 6 Orientierungen mit 20 Stützstellen Wie bisher gehen wir davon aus, daß jeder Detektor mit 64 Gradientendetektoren realisiert wird, d.h. die 128 Eingänge der Gradientendetektoren eines Detektors auf 20 Stützstellen innerhalb des rezeptiven Feldes verteilt werden
16.2 Sparsame Implementierung des Merkmalsdetektors
327
müssen. Einige Pixel des rezeptiven Feldes werden dadurch bis zum Faktor 16 mehrfach abgetastet. Unter Ausnutzung von Symmetrieeigenschaften der verwendeten Waveletprofile ist es möglich, die den Mehrfachabtastungen zugeordneten Gradientendetektoren effektiv durch je einen Gradientendetektor zu ersetzen, wenn die Pixelpaare der beteiligten Gradientendetektoren identisch gewählt sind (Abbildung 16.10).
Abb. 16.10 a) Mehrfachabtastung des Pixelpaares p1 bzw. p2 mit M Gradientendetektoren und gleich gewichteter Summation mit dem Gewicht WN b) Realisierung mit einem Gradientendetektor und gewichteter Summation M × wN Die vormals gleichgewichtete Summation auf Neuron N5 ist dann durch eine gewichtete Summation zu ersetzen. Das Summationsgewicht wird in dieser Architekturvariante entsprechend der Mehrfachabtastung gewählt. Es stellt sich bei den verwendeten Wavelets heraus, daß für 20 Stützstellen insgesamt 10 Gradientendetektoren ausreichen. Der Einfachheit halber nehmen wir an, daß die Retina für jede Orientierung im 1 × 1-Raster flächig abgetastet wird, d.h. bei 1024 × 1024 Pixeln auf der Retina erhält man 1024 × 1024 Detektoren pro Orientierung. Jeder Detektor erhält Pulsereignisse aus seinem rezeptiven Feld der Retina. Bei einem rezeptiven Feld mit 7 × 7 Pixeln liegt ein Neuron der Retina innerhalb von 49 rezeptiven Feldern (Abbildung 16.11). Von den 49 zugeordneten Detektoren werden nur diejenigen angesprochen, bei denen an der jeweiligen Position im rezeptiven Feld eine Stützstelle belegt ist. Insgesamt werden so mit einem Puls effektiv 20 Detektoren pro Orientierung angeregt. Für jeden angeregten Detektor wirkt der Puls direkt auf genau zwei Gradientendetektoren (vgl. hierzu Abbildung 5.11 und Abbildung 6.2).
328
16 Architektur eines Sehwürfels der ersten Generation
Abb. 16.11 Verteilung eines Pulsereignisses der Retina auf verschiedene Detektoren
16.3 Photosensor-Chip Das Sensorfeld muß 1024 × 1024 groß sein, um die maximale Auflösung der Schicht A in Abbildung 16.5 realisieren. In der derzeitigen Implementierung erzeugen die Neurone bei hellster Beleuchtung Pulsraten von bis zu 3 kHz (so konnte die Fläche klein gehalten werden, siehe Abschnitt 11.3). Andererseits ist dies Energieverschwendung und redundant. Mit Hilfe weniger FlipFlops wird deshalb die Frequenz um den Faktor 10 heruntergeteilt. Mit einer 5 × 5 µm2 großen Pixelzelle, dem Neuron zur Pulserzeugung und dem 10-fach Teiler ergeben sich in 65nm CMOS-Technologie pro Pixel ca. 100 µm2 Fläche, also 100 mm2 für das gesamte Sensorfeld. Es ist dann nicht mehr sinnvoll, die Auflösungspyramide (Abbildung 16.5) ebenfalls in diesen Chip zu integrieren. Andererseits steht genug Fläche für 1 Million Vias für die flächige Vertikalverdrahtung und Pulsweitergabe an die nachfolgende Chipschicht zur Verfügung, welche die gepulsten Zwischenbilder der Auflösungspyramide erzeugt, die AER-Kodierung enthält und für die Pulsweiterleitung zu den Chips für die Merkmalsdetektion sorgt. Bei hellster Beleuchtung können 300 Millionen Pulse pro Sekunde über die 1 Million Vias weitergeleitet werden; die Pulsweiterleitung ist vollständig passiv, kommt also ohne weitere Steuerung aus. In Abbildung 16.12 ist der Aufbau des Sensorarrays und das Schaltungsprinzip der Pixelzelle gezeigt. Die Pulsgenerierung verwendet die Schaltung nach Abbildung 11.34. Durch die Referenzspannung Uref ist eine globale Anpassung der Pulsfrequenz an die Helligkeit der Szene möglich.
16.4 Chip für die restliche Auflösungspyramide
329
Abb. 16.12 Blockschaltbild des Photosensors mit 106 Vias
16.4 Chip für die restliche Auflösungspyramide Der Pulsstrom im zweiten Chip teilt sich in einen ersten, welcher die restliche Auflösungspyramide, und einen zweiten, welcher die AER-Einheit für die ASchicht versorgt. Eine AER-Einheit hat die Aufgabe, jeden einkommenden Puls durch ein Datum zu ersetzen, welches den Ort der Pulsentstehung auf der Retina kodiert (anders als im Kapitel 13 beschrieben, erfolgt die Kodierung jedoch unkomprimiert; dies machen wir dadurch wett, daß kein Zeitstempel für ein Datum benötigt wird, wie wir noch sehen werden). Im nachfolgenden sprechen wir der Abstraktion zuliebe vom Pulsereignis, wenn es sich um einen Puls oder das dadurch ausgelöste Datum handelt. Wie weiter unten begründet wird, teilen wir die A-Schicht in 4096 Segmente mit je 256 Pixeln. Segmente überlappen an den Rändern um 3 Pixel, da jedes Randpixel Zentrum eines 7 × 7 Wavelets ist. D.h. es müssen pro Segment (16 + 6)2 = 484 Pixel beobachtet werden. Jedes Segment hat eine eigene AER-Einheit, welche über 256 Vias die Pulse direkt empfängt. Jedes Pulsneuron eines Pixels ist mit einer Signalisierungszelle verbunden, die der Arbitrierschaltung Pulsereignisse anzeigt (Abbildung 16.13 links: das Pulssignal der Pixelzelle wird über das Via eingekoppelt). Die Arbitrierschaltung besteht aus zwei Prioritätsencodern, welche aus den Signalen der Signalisierungszellen X- und Y-Koordinaten der Pulsereignisse bestimmen. Die Anzahl der erforderlichen Bits zur Darstellung der Koordinaten beträgt nA = | log(nx )| + | log(ny )| = 10. Die AER-Schaltung kann unverändert aus der für den Fleckdetektor verwendeten Schaltung des Kapitel 13 übernommen werden. Damit ergibt sich ein Flächenbedarf von ca. 18 Gatteräquivalenten für die Signalisierungszelle. Mit der gegebenen Dimensionierung entfallen nx × ny × 18 Gatteräquivalente auf das Array. Für die Prioritätsencoder bestimmen wir für die reine Logik einen Flächenbedarf von (nx + ny ) × 22 Gatteräquivalenten.
330
16 Architektur eines Sehwürfels der ersten Generation
Abb. 16.13 Schaltung in einem Segment zur Kodierung der Pulsereignisse (Vias und Signalisierungsschaltung sind dargestellt durch schwarze Kreisflächen) In einer getakteten Architektur werden die Vias bzw. Signalisierungszellen eines Segments mit einer Taktrate von 484 × 300 Hz = 145.2 kHz abgefragt. Wie hoch die Taktfrequenz für die Pulsweiterleitung an die Merkmalskaskade ist, hängt davon ab, wieviele Vias nötig sind. Stehen nV Vias zur Verfügung und fügen wir jedem Pulsdatum noch nS Bits für die Segmentkennung an, so beträgt die Taktfrequenz für die Weiterleitung der Pulsereignisse 145.2 kHz × (nA + nS )/nV . Die restliche Auflösungspyramide enthält für jede der Schichten B-E die mittelnden Neurone und die AER-Einheit; dabei sprechen wir von den Neuronen der Schichten B-E in diesem Zusammenhang auch als „Pixeln“. Ebenso wie die A-Schicht sind die restlichen Schichten der Auflösungspyramide in Segmente mit 256 Pixeln geteilt. In Summe erhalten wir 5456 Segmente für die gesamte Auflösungspyramide. Stellen wir pro Segment 10 Vias bereit, so benötigen wir eine Auslesefrequenz von 435.6 kHz und 5456×10 = 54560 Vias zur Weiterleitung an den Detektorchip. Wir präsentieren nun den Aufwand für die Realisierung desjenigen Teils der Auflösungspyramide, die mit dem AER-Chip implementiert wird. Abbildung 16.14 zeigt den Floorplan der AER-Chips, in dem 64 × 64 Segmente untergebracht sind. Jedem Segment ist ein Feld von 5456 × 256/642 = 341 Pixeln der Ebenen A-E zugeordnet. Die Pixel der Ebene A erhalten direkt vom Sensor-Chip Pulssignale über das 3D-Interface. Jedes Pixel dieser Ebene benötigt somit eine Signalisierungsschaltung aus Abbildung 16.13. Neben der Signalisierungsschaltung ist für jedes Pixel der Ebene A-D zusätzlich eine Schaltung zur Mittelung der Pulsrate benachbarter Pixel der nächst höheren Auflösungsebene B-E unterzubringen. Zur Erläuterung betrachten wir einen Ausschnitt von 16 × 16 Pixeln der
16.4 Chip für die restliche Auflösungspyramide
331
Abb. 16.14 Ausschnitt aus dem Floorplan des AER-Chips für die Auflösungspyramide. Die einzelnen Segmente werden in einem festen Raster angeordnet, um eine einfache Kontaktierung und Verdrahtung des AER-Chips und des Sensor-Chips zu erreichen.
Abb. 16.15 Verdrahtung einer 16 × 16-Pixel Zelle zur Erzeugung der Auflösungsebenen A-E auf einem 20 × 18-Raster. Die Zelle enthält 256 + 64 + 16 + 4 + 1 = 341 Pixel. 120 × 120 µm2 gibt die maximal verfügbare Fläche der Zelle an.
332
16 Architektur eines Sehwürfels der ersten Generation
Ebene A, aus dem die Pixelinformation der weiteren Ebenen bestimmt wird. Aus den 16 × 16 Pixeln werden für die Auflösungspyramide 8 × 8 Pixel der Ebene B, 4 × 4 Pixel der Ebene C, 2 × 2 Pixel der Ebene D und 1 Pixel der Ebene E durch lokale Mittelung von Pulsraten erzeugt. Abbildung 16.15 zeigt die hierfür benötigte Verbindungsarchitektur zwischen den Pixeln der einzelnen Ebenen. Die einzelnen Pixel wurden auf ein festes Raster verteilt, um ein möglichst kompaktes Layout für die Hardwarerealisierung zu erzielen. Die Pixel der Ebene A enthalten hier die Signalisierungsschaltung mit 18 Gatteräquivalenten. Die Pixel der übrigen Ebenen benötigen zusätzlich eine Schaltung zu lokalen Mittelung, vgl. Abbildung 16.16. Rechnet man für die Schaltung zur Mittelung 60 Gatteräquivalente, ergibt sich für die gesamte 16 × 16-Zelle ein Gatteräquivalent von 341 × 18 + 85 × 60 = 11238 oder umgerechnet eine Fläche von 7866 µm2. Diese Fläche kann bei Vorgabe der in Abbildung 16.15 gezeigten Verteilung der Pixel in einer Fläche von 118 × 66.5 µm2 untergebracht werden. Durch Layoutoptimierung läßt sich die verbleibende Fläche von 6534 µm2 für die erforderliche Verdrahtung der einzelnen Pixel zu den Prioritätsencodern aller Auflösungsebenen nutzen. Für jede Auflösungsebene werden eigene Prioritätsencoder integriert, die die Pulssignale aus einem oder mehreren Segmenten einschließlich des erforderlichen Segment-Überlapps kodieren und über ein eigenes AER-Interface an die Detektorschicht weiterleiten. Einem Prioritätsencoder wird einheitlich eine fixe Breite (bzw. Höhe) von 8 µm zugewiesen, wodurch bei 5 Auflösungsebenen die bereits beschriebene Fläche von 120×120 µm2 für das Pixelfeld verbleiben. Jeder Prioritätsencoder erhält 16+2×3 Eingangssignale aus den Pixelfeldern. Hierfür werden für jedes Segment 968 Gatteräquivalente zur Implementierung der Prioritätsencoder benötigt. Da die Fläche der Prioritätsencoder vorwiegend durch die Verdrahtung bestimmt wird, fallen die Gatter nicht weiter ins Gewicht. Die fixe Breite von 8 µm pro Prioritätsencoder errechnet sich aus dem Flächenbedarf der Verdrahtung der Encoderschaltung.
16.5 Größe des NPU-Arrays und Speicherbedarf Um die Profile der Merkmalsdetektoren mit der nötigen Flexibilität gestalten zu können, wird der Merkmalsdetektor-Chip so ausgelegt, daß Netzwerke beliebig konfiguriert bzw. programmiert werden können. Die Konfiguration des Netzwerkes erfolgt zur Laufzeit des Systems. Die einfachste, aber wegen viel zu hoher Verlustleistung nicht in einem Sehwürfel implementierbare Architektur zur Realisierung der Merkmalskaskade bestünde aus einem einzelnen Paar von zwei NPU-Prozessorelementen: NPU1 bearbeitete die Nxa -Neurone, NPU2 die Nxb -Neurone der DetektorArchitektur, x = 3, 4, 5, 6, 7. Der Grundaufbau eines NPU-Elementes wurde bereits in Abschnitt 14.2 beschrieben. Zur Bestimmung der Taktfrequenz für die NPUs gehen wir zunächst von einer Orientierung aus und nehmen an, daß
16.5 Größe des NPU-Arrays und Speicherbedarf
333
Abb. 16.16 Skizze einer Schaltung zur Mittelung von Pulsraten mit vier Eingängen. Die Schaltung Sum zählt in jedem Takt die aktuelle Anzahl der positiven Flanken der vier Eingangssignale. Zu jedem Zeitpunkt wird die Anzahl der positiven Flanken in dem Register akkumuliert. Sobald diese Anzahl größer oder gleich 4 ist, wird ein Puls ausgesendet. der gesamte Datenstrom der Auflösungspyramide von maximal 1.26 GB/s in 3 Bytes daherkommt, so daß ein Pulsereignis bei jeder NPU direkt verarbeitet werden kann. Wie oben dargelegt, regt jeder Puls des Sensor-Chips 20 Detektoren der Merkmalsschicht an. Für jeden Detektor sind dafür die Membranpotentiale der inneren Neurone N3a,b , N5a,b , N5b sowie N6a,b zu aktualisieren und für die Neurone N3a,b − N7a,b die Pulsaktivität zu bestimmen (hier liegt natürlich die digitale Implementierung der NPU des Abschnitt 14.2 zugrunde, nicht die analogen Neuron- bzw. Synapsenmodelle). Da sich alle Detektoren ein NPU-Paar teilen sollen, sind alle Membranpotentiale bzw. Zustände der inneren Neurone in einem Speicher vorzuhalten. Bei jeder durch ein eintreffendes Pulsereignis ausgelösten Aktualisierung der Membranpotentiale muß die Zustandsinformation aus dem Speicher ausgelesen, durch das Prozessorelement modifiziert und wieder zurückgeschrieben werden. Sofern die Neurone N7a,b Pulse aussenden, wird die Pulsaktivität codiert und an die nächste Schicht über die ausgangsseitige AER-Schnittstelle weitergeleitet. Für jeden Detektor sind fünf Operationen nacheinander auszuführen: Z1 Adressberechnung für den Zustandsspeicher des aktuellen Detektors, Z2 Auslesen der Zustandsinformation und Aktualisierung der Zustandsinformation von Neuron N3a,b . Pulsgenerierung von Neuron N4a,b , Z3 Aktualisierung der Zustandsinformation von Neuron N5a,b , Pulsgenerierung von Neuron N5a,b , Z4 Aktualisierung der Zustandsinformation von Neuron N6a,b , Pulsgenerierung von Neuron N7a,b , Z5 Rückspeichern der gesamten Zustandsinformation.
334
16 Architektur eines Sehwürfels der ersten Generation
Eine vollständige Aktualisierung der Membranpotentiale eines Detektors benötigt in diesem Schema fünf Takte. Bei 20 Detektoren sind nach insgesamt 100 Takten alle Detektoren aktualisiert (Abbildung 16.17).
Abb. 16.17 Aufgaben zur Generierung der Detektorantworten durch die NPUs Mit den 1 396 736 Pixeln der Kaskade ergeben sich maximal 419 020 800 Pulse/s. Mit 100 Takten pro Pulsereignis wäre deshalb eine Taktfrequenz von ≈ 42 GHz erforderlich, um mit einem NPU-Paar eine Ebene (d.h. eine Orientierung auf einer Auflösungsebene) zu verarbeiten. Eine derartige Lösung ist sowohl aus Sicht der Verlustleistung als auch aus Sicht des System-Timings nicht realisierbar. Es sind somit Maßnahmen zur Senkung der Taktfrequenz erforderlich, die nachfolgend beschrieben werden. Setzen wir statt einem NPU-Paar zwei NPU-Paare ein, können von jedem NPU-Paar je die Hälfte aller Detektorantworten zeitlich parallel bestimmt werden. Die gesamte Ausführungszeit bleibt bei halber Ausgangsfrequenz dabei konstant. Da wir annehmen, daß die Schnittstelle des Speichers für die Vorhaltung der Membranpotentiale nur einen Zugriff pro Takt erlaubt, entsteht ein zeitlicher Versatz von einem Takt zwischen den parallelisierten Aufgaben (Abbildung 16.18). Von fünf Takten werden 4 Takte für den Speicherzugriff verwendet. Eine optimale Ausnutzung des Speicherinterfaces zu 100 % (d.h. in jedem Takt wird entweder ein Lese- oder Schreibzugriff durchgeführt), würde durch drei NPUPaare erreicht werden können. Hierbei würden jedoch auf jedes NPU-Paar ein zusätzlicher Leerzyklus (NOP) entfallen, wodurch die Auslastung der NPUs sinken würde. Eine weitere Parallelisierung über den Faktor drei hinaus hätte die Einführung weiterer Leerzyklen und eine noch geringere Auslastung der NPUs zur Folge. Wir bleiben daher bei zwei NPU-Paaren, die im Folgenden als „NPU-Quad“ bezeichnet werden. Pro Detektor fallen 5 Takte für die Verarbeitung an, so daß zur Abarbeitung von 20 Detektoren 1 + 10 × 5 = 51 Takte erforderlich sind. Dies bedingt unter Berücksichtigung der maximalen Ereignisrate am Eingang eine NPU-
16.5 Größe des NPU-Arrays und Speicherbedarf
335
Abb. 16.18 Zeitlich verschränkte Abarbeitung der Aufgaben zur Generierung der Detektorantworten. Taktfrequenz von ≈ 21 GHz. Auch diese Taktfrequenz kann praktisch nicht verwendet werden. Anstatt das gesamte Sensorfeld von 1024 × 1024 Pixeln einem NPU-Quad zuzuordnen, kann man das Sensorfeld z.B. in zwei Segmente teilen und jedes Segment mit je einem eigenen NPU-Quad verbinden. Man benötigt hierfür nun zwei AER-Schnittstellen, die mit etwa der halben Ereignisrate Pulse übertragen. Durch den Überlapp der rezeptiven Felder (7 × 7 Pixel) um 3 Pixel, enthalten die einzelnen Detektorfelder je 515 × 1024 Pixel. Dieses Vorgehen ist in Abbildung 16.19 illustriert. Durch Fortführung dieses Schemas erhält man Mehr-Segment-Architekturen, wie sie beispielhaft in der Abbildung 16.20 gezeigt sind.
Abb. 16.19 Verringerung der Taktfrequenz durch Segmentierung des SensorArrays
336
16 Architektur eines Sehwürfels der ersten Generation
Abb. 16.20 8/16-Segment-Anordnungen zur Senkung der Taktfrequenz Tabelle 16.3 zeigt am Beispiel der A-Schicht für verschiedene Segmentierungen die erforderliche Systemtaktfrequenz. Aus Sicht des System-Timings führen Architekturen mit mehr als 64 Segmenten zu implementierbaren Lösungen. Segmente
1
64
256
1024
4096
NPUs (1 Wavelet)
4
256
1 024
4 096
16 384
Pixelanzahl [kPixel] (1Segment)
1 048.58 17.96
4.90
1.44
0.48
Ereignisrate pro Segment [MEvents/s]
314.57
1.47
0.43
0.15
fSystem [MHz]
16 043.21 274.73
74.97
22.09
7.41
5.39
Tabelle 16.3 Systemtaktfrequenz in Abhängigkeit der Segmentierung Mit zunehmender Segmentierung steigt der Flächenaufwand für die erforderliche Logik, da mehr NPUs mit Speicher und für jedes Segment eigene AER-Encoder implementiert werden müssen. Als nächstes schätzen wir für verschiedene Segmentierungen den Flächenbedarf über die Anzahl der erforderlichen Logik-Gatter und den Speicherbedarf ab. Wie bereits dargelegt, aktualisieren die NPUs für jedes einlaufende Pulsereignis die Membranpotentiale der inneren Neurone von 20 Detektoren. Die Membranpotentiale werden in einem Speicher abgelegt. Abbildung 16.21 zeigt die Architektur mit Speicher und den Prozessorelementen. Die Speicherblöcke M1 und M2 speichern die Zustände der inneren Neuronen aller Detektoren eines Segmentes (hier: eine Orientierung in einer Auflösungsebene). NPU1 und NPU3 aktualisieren die Membranpotentiale der Nxa -Neuronen (x = 3, . . . , 7), NPU2 und NPU4 entsprechend für die Nxb -Neurone, wobei NPU1 und NPU3 bzw. NPU2 und NPU4 jeweils um einen Takt versetzt auf den Speicher zu-
16.5 Größe des NPU-Arrays und Speicherbedarf
337
greifen. Die Verbindungssignale zwischen NPU1/3 und NPU2/4 dienen der Aktualisierung der Zustände der N6a,b -Neurone.
Abb. 16.21 Architektur mit 4 NPUs zur Verarbeitung von einer Orientierung Die NPU aus Abschnitt 14.2 kann nahezu unverändert übernommen werden. Im Vergleich zu Abbildung 14.6 ergibt sich für die NPU die Änderung, daß anstelle eines einzigen „A-vor-B“-Detektors dieser 11-fach implementiert wird (Abbildung 16.22), um alle 22 Gradientendetektoren durch ein NPU-Paar parallel verarbeiten zu können. Davon werden zehn „A-vor-B“-Detektoren für die Neurone N3 benötigt, der elfte „A-vor-B“-Detektor dient zur Aktualisierung von N6 . Zusammen mit den Ergebnissen zum NPU-Chip aus Abbildung 14.6 kann man für eine NPU eine Komplexität von ca. 580 Gatteräquivalenten annehmen. Der Speicherbedarf von M1 und M2 kann anhand folgender Überlegungen abgeschätzt werden: Wie im Falle des NPU-Testchips (Abschnitt 14.2) soll die Membran der Neurone N5a,b mit 6 Bit Wortbreite dargestellt werden. Für einen Gradientendetektor reicht es, den Vorladezustand der Neurone N3a,b bzw N6a,b zu repräsentieren. Für die beiden möglichen Zustände „vorgeladen“ und „nicht vorgeladen“ fällt 1 Bit pro Gradientendetektor an. Mit 22 Gradientendetektoren in der Detektorarchitektur benötigt man hiermit insgesamt einen Speicherbedarf von 2 × 17 Bits pro Detektor. Setzt man für ein Segment allgemein an, daß ND Detektoren implementiert werden, so benötigt man ND × 34 Bit Speicherkapazität für M1 und M2. Abschließend bleibt noch zu klären, wie der Speicher M1 und M2 adressiert wird. Ordnet man die einzelnen Detektoren analog zu den Pixeln zweidimen-
338
16 Architektur eines Sehwürfels der ersten Generation
Abb. 16.22 Erweiterung der NPU auf 11 „A-vor-B“-Detektoren sional an und interpretiert die Koordinaten (X, Y ) eines gegebenen Detektors als Speicheradresse, so erhält man bei gegebener Koordinate (Xp , Yp ) des einlaufenden Pulses die Koordinaten aller 20 relevanten Detektoren durch Addition eines X- und Y -Adress-Offsets. Da die 20 Detektoren durch die 20 Stützstellen eines Wavelets definiert sind, kann man die Offsets anhand der Stützstellenverteilung definieren: jeder Stützstelle auf dem rezeptiven Feld ist ein eigener X- und Y -Offset zugeordnet, der sich auf das Zentrum des rezeptiven Feldes bezieht. Bei 7×7 Pixeln eines rezeptiven Feldes variieren die Offsets somit im Bereich −3 . . . 3 und sind mit 3 Bit repräsentierbar. Der Speicher M3 in Abbildung 16.21 enthält für jede Stützstelle die X- und Y -Offsets, die von dem Block address calculation verwendet werden, um aus dem Index des einlaufenden Pulsereignisses die Adressen für M1 und M2 zu berechnen. Zusätzlich zu den Offsets wird jeder Stützstelle ein ganzzahliges Gewicht zugeordnet. Die Wortbreite, mit der dieses Gewicht repräsentiert wird, bestimmt sich aus der maximalen Mehrfachabtastung und ergibt sich zu 5 Bit. Ebenso benötigt man bei 20 Stützstellen einen 5 Bit-Vektor zur Auswahl des Gradientendetektors innerhalb der Datenstruktur, dessen Zustand aktualisiert werden soll. Pro Stützstelle entsteht so ein Speicherbedarf von 16 Bit. Bei 20 Stützstellen sind insgesamt 320 Bit in dem Speicher M3 vorzusehen. Für die Adress-Berechnung fällt schließlich zusammen mit der Registerstruktur ein Bedarf von 19 × nA Gatteräquivalenten an.
16.6 Merkmalsdetektor-Chip für 8 Orientierungen Um Detektoren mit weiteren Orientierungen zu implementieren, wird die beschriebene Architektur mehrfach implementiert: einzig durch Programmierung des Speichers M5 wird die spezifische Orientierung festgelegt. Eingangsseitig können die Pulsereignisse des FIFOs aus einem Segment an die einzelnen
16.6 Merkmalsdetektor-Chip für 8 Orientierungen
339
Detektoren verteilt werden. Abbildung 16.23 zeigt das Ergebnis für 8 verschiedene Orientierungen. Da in jedem Segment Detektoren für 8 Orientierungen implementiert werden, entsteht bei der Merkmalskaskade ausgangsseitig ein 8-fach höherer Verbindungsaufwand zum Merkmalserkenner. Die Bandbreiteanforderungen sind jedoch deutlich geringer, da lokal nur eine Untermenge der 8 Detektoren Pulsantworten aussendet. Da davon ausgegangen wird, daß die Eingangsinformation durch die 8 Orientierungen nahezu vollständig und mit geringer Redundanz erfaßt worden ist, kann man in einer ersten Abschätzung davon ausgehen, daß die gesamte Ausgangsbandbreite der Eingangsbandbreite entspricht. Mithin reicht es, auf der ausgangsseitigen Schnittstelle ein einziges AER-Interface vorzusehen. Zuvor müssen die Ausgangspulse der Merkmalsdetektoren durch einen Multiplexer in geeigneter Weise aufgearbeitet werden, bevor sie über den AER-Encoder an die nächste Schicht geleitet werden (Abbildung 16.23).
Abb. 16.23 Architektur für ein Segment. In jedem Segment werden Detektoren für 8 Orientierungen bereitgestellt. Die Ausgangssignale der einzelnen Detektoren werden im Multiplexbetrieb über das AER-Output-Interface zu dem Merkmalserkenner weitergeleitet. In Tabelle 16.4 ist der Systemaufwand für verschiedene Segmentierungen der A-Schicht gezeigt. Grundlage der Flächenabschätzung ist die Annahme, daß 1 MByte Memory einen Flächenbedarf von 3 mm2 und ein Gatteräquivalent einen Flächenbedarf von 0.7 µm2 in 40 nm CMOS ausweisen. Zusätzlich wurde für ein 3D-Via ein Flächenbedarf von 5 × 5 µm2 im aktiven CMOSBereich (Landing Pads) angenommen und 10 × 10 µm2 für das Kontaktpad (Solder Pads), siehe Kapitel 15. Die Einführung weiterer Auflösungsebenen bedingt weitere NPU-Einheiten, AER-Kanäle und FIFOs als Eingangsstufen, da sich die Pixelinformation auf den einzelnen Auflösungsebenen unterscheidet. Für die komplette Merkmalskaskade ergeben sich so die Flächenabschätzungen nach Tabelle 16.5.
340
16 Architektur eines Sehwürfels der ersten Generation
Segmente
1
64
256
1024
4096
NPUs
32
2 048
8 192
32 768
131 072
NPUs Gatter [MGatter]
0.02
1.34
5.30
20.87
82.25
AER [MGatter]
18.92
19.25
19.66
20.59
22.84
FIFO [MByte]
2.50
2.19
2.09
2.12
2.36
Memory M1,2,3 [MByte]
34.00
34.02
34.08
34.31
35.25
3D Vias (Daten)
20
1 024
3 584
12 288
40 960
Fläche NPUs [mm2 ] (40 nm)
0.02
0.94
3.71
14.61
57.57
Fläche Memory [mm2 ] (40 nm)
109.50
108.63
108.51
109.28
112.84
Fläche 3D-Vias [mm2 ] (Landing Pads)
0.0005
0.0256
0.0896
0.3072
1.0240
[mm2 ]
0.0020
0.1024
0.3584
1.2288
4.0960
Fläche 3D-Vias
(Löt-Pads)
Tabelle 16.4 Systemaufwand für verschiedene Segmentierungen. Die Berechnungen wurden für Ebene A mit 1024 × 1024 Eingangspixeln und 8 Wavelets durchgeführt. Segmente Segmente in in Auflös- Auflösungs-
NPUs
Fläche Memory Fläche [mm2 ] [MByte] [mm2 ] NPUs
3D-Vias Fläche (Daten) [mm2 ]
Memory
Fläche [mm2 ]
ungsebene A
ebene B,C,D,E
Detektor AERChip
1
1,1,1,1
160
0.08
48.62
145.86
100
145.94
32.28
64
16,4,1,1
2 752
1.26
48.66
145.98
1 376
147.28
32.84
256
64,16,4,1
10 912
4.94
48.18
144.55
4 774
149.60
33.51
1024
256,64,16,4
43 648
19.46
48.52
145.57
16 368
165.44
35.02
4096
1024,256,64,16 174 592 76.69
50.10
150.31
54 560
228.36
38.69
Tabelle 16.5 Aufwand für verschiedene Segmentierungen. Die Berechnungen wurden für ein System mit den Ebenen A-E (5 Auflösungsebenen) durchgeführt. Die Anzahl der 3D Vias bezieht sich allein auf die Verbindung des Sensor-Chips mit dem Detektor-Chip.
16.7 Merkmalserkenner
341
Gleicht man die Flächen von Photosensor-Schicht und Merkmalskaskade in etwa an, so kann man von einer verfügbaren Chipfläche von 64 mm2 ausgehen. So werden selbst im Falle einer Segmentierung von 4096 nicht mehr als 4 Chiplagen für den Aufbau der Merkmalskaskade benötigt (Abbildung 16.24). Bei einer Fläche von 2.7 mm2 für die Kontaktpads zur Kontaktierung des AERChips mit der Merkmalskaskade und 38.7 mm2 für die AER-Logik verbleiben auf dem AER-Chip 22.6 mm2. Diese Fläche kann genutzt werden, um zusätzliche Logik (z.B. Prozessoren) und Schnittstellen zur Systemkofiguration und -steuerung unterzubringen.
Abb. 16.24 Blockschaltbild der ersten Schichten für den Vision-Cube
16.7 Merkmalserkenner Die weiteren Stufen der Verarbeitungskette umfassen das Anlegen von Zonen und die Bindung von auf die verschiedenen Zonen verstreuten Merkmalen zu Objekten in irgendeiner der 5 Auflösungsebenen. Im folgenden soll der Hardwareaufwand für eine Architektur bestimmt werden, mit der in erster Stufe bis zu 1000 Objekte erkannt werden können. Wir gehen davon aus, daß ein Objekt durch 10 Zonen beschrieben wird. Bei den Zonen wird des weiteren eine Vernetzungsarchitektur zugrunde gelegt, wie sie in den Abschnitten Abschnitt 7.2, Abschnitt 7.3, und Abschnitt 7.8 beschrieben ist, d.h. jeder Zone sollen in den nachfolgenden Betrachtungen einheitlich 20 × 24 Neurone zugeordnet sein. Für die Hardware besteht die Aufgabe, Pulse, die von den N7 -Neuronen der Merkmalsdetektorschicht abgesendet werden, den Zonen zuzuordnen und innerhalb der Zonen die Operationen O1: Mittelung der Pulsrate (durch Neuron Na , vgl. Abbildung 16.25 und 7.6) ,
342
16 Architektur eines Sehwürfels der ersten Generation
O2: Differenzbildung zwischen der Pulsrate der Detektoren und gemittelter Pulsrate , O3: Pulssynchronisation und Merkmalserkennung durch den Synchrondetektor auszuführen. Für die Operationen O1 und O2 sind digitale Schaltungskonzepte vorzuziehen, da sie direkt an die digitale Realisierung der Merkmalsdetektorkaskade anschliessen. Allein die Operation O3 wird in analoger Schaltungstechnik realisiert (siehe Kapitel 13).
Abb. 16.25 Zonenarchitektur. Ein Neuron N7 der Detektor-Schicht kann einer oder mehreren Zonen zugeordnet sein. Ein Puls von Neuron N7 wird sowohl an das mittelnde Neuron Na als auch an ein N3 -Neuron in Schicht 3 weitergeleitet. Sofern Na selbst einen Puls aussendet, werden alle Neuronen N3 innerhalb einer Zone über dynamische Synapsen vorgeladen, vgl. Abbildung 7.6. Wir betrachten zunächst die Operationen O1 und O2 und untersuchen, welche Architekturkomponenten für die Abarbeitung erforderlich sind. Wir entwickeln die Architektur anhand der Konstruktion einer Zone, welche volle Flexibilität aufweisen soll. D.h. es soll möglich sein, Auflösungsebene, Orientierung und Position der eingeschlossenen Detektorneurone beliebig vorzugeben. Einzig die Anzahl ist auf 20 × 24 = 480 Neurone pro Zone begrenzt. Durch Vervielfältigung der gefundenen Architektur und individuelle Programmierung wird die Vielfalt aller Zonen realisiert. Eingangsseitig befindet sich das AER-Interface, über welches das System Pulsereignisse von den N7 -Neuronen einer Merkmalsdetektorschicht erhält (Abbildung 16.26). Jedes Pulsereignis kodiert eindeutig Auflösungsebene, Ori-
16.7 Merkmalserkenner
343
entierung und X-Y-Position in Form eines Index. Hierfür werden 20+3+3 = 26 Bits reserviert. 3 Bits kodieren die Orientierung (1 aus 8), 3 Bits die Auflösungsebene (1 aus 5) und 20 Bits die Position des sendenden N7 -Neurons. Das AER-Interface enthält die nötigen Buffer-Schaltungen (FIFOs) und ermöglicht es den NPUs, eingangsseitige Pulsereignisse mit konstanter Rate abzuarbeiten.
Abb. 16.26 Versuchsweise Ankopplung der Detektor-Einheit an die Merkmalserkenner-Architektur. Die Schichten 2-4 dienen der Verarbeitung der Operationen O1 und O2. Sofern eingangsseitig ein Pulsereignis anliegt, ist zu überprüfen, ob das sendende Neuron mit der Zone verbunden ist. Eine Zone ist durch eine Menge von N7 -Neuronen definiert. Jedes dieser Neuronen kann eindeutig durch ein 26-bitWort (Index) identifiziert werden. Der Index eines eingehenden Pulsereignisses wird mit jedem 26-Bit-Wort eines Neurons einer Zone verglichen. Sofern ein Wort mit dem Index des eingehenden Pulsereignisses übereinstimmt, liegt das sendende N7 -Neuron innerhalb der Zone, und die Operationen O1/O2 werden ausgeführt. Zu Beginn der Ausführung von O1/O2 wird im ersten Schritt das Membranpotential von Na aktualisiert. Sofern Na keinen Puls aussendet und N3 nicht vorgeladen ist, wird ausgangsseitig auf dem N4 -Neuron ein Pulsereignis erzeugt, welches sofort an die Synchronisationsschicht geleitet wird. Sendet umgekehrt Na einen Puls aus oder ist N3 vorgeladen, wird kein Puls weitergeleitet, und die Membranen sämtlicher N3 -Neuronen werden vorgeladen. Dieser Vorladevorgang ist der kritische Pfad, da alle 480 Gradientendetektoren der Zone aktualisiert werden müssen. Wie im Falle der Detektor-Architektur werden die Vorladezustände aller N3 -Neuronen in einem Speicher abgelegt, wodurch ein Multiplex-Betrieb ermöglicht wird. Im einfachsten Fall teilen sich
344
16 Architektur eines Sehwürfels der ersten Generation
alle Gradientendetektoren eine NPU. Die Aktualisierung eines Gradientendetektors erfordert hier 4 Takte: T1: T2: T3: T4:
Erzeugung der Zieladresse zur Adressierung des Vorladezustands, Auslesen des Vorladezustands aus dem Speicher, Aktualisierung des Vorladezustandes durch NPU, Rückschreiben des Vorladezustands in den Speicher.
Wir bestimmen nun die Taktfrequenz der NPU. Die Taktfrequenz hängt wie im Falle des Merkmalsdetektors von der eingangsseitigen Ereignisrate ab. Wie bereits in einem der vorhergehenden Abschnitte dargelegt, erhält man unabhängig von der Segmentierung eine eingangsseitige Ereignisrate von etwa 314.57 M Ereignisse/s. Zwischen zwei Ereignissen müssen die spezifizierte Indexmenge der N7 -Neuronen vollständig durchsucht und ggf. die 480 Gradientendetektoren vollständig aktualisiert sein. Setzt man für beide Operationen ein vollständig sequentielles Verfahren an, so benötigt man zur Abarbeitung einer Zone etwa 480+4×480 = 2400 Takte oder umgerechnet eine Taktfrequenz von 755 GHz. Wie im Falle des Merkmalsdetektors müssen hier Teilaufgaben parallelisiert werden, um eine Architektur mit realistischer Taktfrequenz und geringer Verlustleistungsaufnahme zu erhalten. Durchsuchen der Indexmenge Das Durchsuchen der Indexmenge kann vollständig parallelisiert werden. Für den parallelen Vergleich eignet sich ein sogenanntes CAM-Array (CAM = content addressable memory), vgl. Abbildung 16.27. Die einzelnen n-Bit-Indizes werden wortweise in einem Feld abgespeichert. Neben den Speicherzellen werden zusätzlich n-Bit-Vergleicher zu jedem Speicherwort integriert und mit dem Eingangswort verbunden, so daß ein vollständig paralleler Vergleich möglich ist. Bei Übereinstimmung eines Speicherwortes mit dem Eingangswort sendet die entsprechende Zelle zwei Ausgangssignale an die am Rand untergebrachten Prioritätsencoder, welche ausgangsseitig einen Adressindex und ein Treffer-Signal (hit) erzeugen. Der Adressindex spezifiziert die Zelle, in der der Treffer detektiert wurde und spezifiziert damit (bei geschickter Belegung der CAM-Zellen) den Index des Ausgangsneurons N4 in Schicht 4 der Zonenarchitektur (Abbildung 16.25). Bei der Programmierung der Zellen muß sichergestellt werden, daß höchstens eine Zelle ein Treffersignal erzeugt. Abbildung 16.28 zeigt eine Zell-Architektur zum Speichern und Vergleich von einem n-Bit Wort. Ein Wort-Vergleich kann mit der vorgestellten Variante in vier Takten durchgeführt werden. Im Vergleich zu einer reinen 6T-SRAM-Zelle entfällt auf eine CAM-Zelle der 1.5 fache Flächenbedarf (pro Bit) durch die zusätzliche Vergleichsschaltung und Verdrahtung. Mit 480 × 26 Bit Speicherworten (n=26) erhält man für das reine Speicherfeld ein SRAM-Äquivalent von 18720 Bit pro Zone. Mit k und l als Array-Parameter resultiert für die zusätzliche Logik ein Flächenäquivalent
16.7 Merkmalserkenner
345
Abb. 16.27 CAM-Speicher zur parallelen Vergleich von n-Bit-Worten mit einem gegebenen n-Bit-Eingangswort. In jeder der k × l Zellen sind n Speicherelemente und ein n-Bit-Vergleicher untergebracht. Sofern das in einer Zelle abgespeicherte Wort mit dem Eingangswort übereinstimmt, werden zwei Signale generiert, die von den Prioritätsencodern eingesammelt und in ein Binärwort umgewandelt werden. von 11 × (k + l) + 1.5 × (k × l) Gattern. Anders als bei den Prioritätsencodern der AER-Schaltung des Sensor-Chips entfallen eingangsseitig Register und Multiplexer. Damit sinken die Komplexität der Logik sowie die Gatteräquivalente.
Abb. 16.28 CAM-Zelle mit n Speicherzellen, einem n-Bit-Vergleicher und einer Adress-Logik zur Erzeugung des Treffer-Signals. In der hier gezeigten Variante benötigt ein Wortvergleich vier Takte: (i) Vorladen der Signale matchj , col_match und row_match. (ii) Anlegen der Wort-Information di , (iii) Aktivierung des Signals cam_eval und (iv) Auswertung der Signale col_match und row_match.
346
16 Architektur eines Sehwürfels der ersten Generation
Um möglichst kompakte CAM-Layouts mit einem Verhältnis Weite:Höhe kleiner 2 und größer 0.5 zu erhalten, wird l = 96 und k = 5 gewählt. Mit diesen Parametern für die Prioritätsencoder und die X-Y-Logik ergibt sich ein Gatteräquivalent von etwa 1831 Gattern. Zusätzlich sind eingangsseitig Treiberschaltungen für die Datensignale vorzusehen, um den hohen Fan-In im CAM-Array von 5 × 96 Eingängen pro Bit anzupassen. Hierfür werden 60 × 26 = 1560 Gatteräquivalente vorgesehen. NPU Architektur Die Aktualisierung der Membranpotentiale von den 480 N3 -Neuronen in Schicht 3 (Abbildung 16.25), kann wie im Falle des Merkmalsdetektors parallelisiert werden. Da auch hier das Speicherinterface in dem oben vorgeschlagenen Schema nur in jedem zweiten Takt verwendet wird, kann eine zweite NPU um einen Takt versetzt die Hälfte aller N3 -Neurone bearbeiten. Mit 4×240+1 = 961 Takten erhält man hiermit noch keine realisierbare Architekturvariante, da die erforderliche Taktfrequenz mit über 300 GHz sowohl aus Sicht der Verlustleistung als auch aus Sicht des System-Timings unrealistisch ist. Durch fortgeführtes Parallelisieren kann die Anzahl der Takte aber weiter gesenkt werden. Setzt man eine Architekturvariante an, in der allgemein u N3 -Neurone parallel verarbeitet werden können (in der oben beschriebenen Variante also jeweils u/2 N3 -Neuronen um einen Takt versetzt), so ergeben sich die in Tabelle 16.6 gezeigten Zahlen. Selbst für den maximalen Grad der Parallelisierung errechnet man, daß hieraus immer noch keine realisierbare Architektur konstruiert werden kann. u
2
60
80
120
160
240
Anzahl Takte (N3 -Vorladung)
961
33
25
17
13
9
480 5
NPU Gatter [Gatter] (1Zone)
346
1 854
2 374
3 414
4 454
6 534
12 774
NPU Gatter [MGatter] (10.000 Zonen)
3.46
18.54
23.74
34.14
44.54
65.34
127.74
Tabelle 16.6 Taktzahl und Gatteräquivalente für verschiedene Parallelisierungsgrade. Eine Senkung der Taktfrequenz kann durch Verringerung der maximalen Ereignisrate erzielt werden. Wie für die Detektorarchitektur kann hier das Prinzip der Segmentierung eingesetzt werden. Nachfolgend zeigen wir, daß es sinnvoll ist, die Segmentierung und die Taktfrequenz des Merkmalsdetektors für die hier angestrebte Segmentierung zu übernehmen. Anstelle wie in Abbildung 16.26 alle Pulsereignisse auf einen gemeinsamen Bus zu leiten, werden für gegebene Zonen die Pulse nur aus bestimmten Segmenten abgegriffen (Abbildung 16.29). Einzelne Zonen haben dabei in Abhängigkeit der Segmentgröße und Zonenlage einen Überlapp bis zu neun Segmenten. Aus diesem Grund werden
16.7 Merkmalserkenner
347
Abb. 16.29 a) Ausschnitt einer Segmentierung mit den Segmenten (i), (ii), (iii) und (iv). b) zwei Zonen (Z1, Z2), die auf den Segmenten liegen. Zone Z1 erhält Pulse nur aus dem Segment (i), während Zone Z2 Pulse aus allen vier Segmenten erhält.
Abb. 16.30 Zusammenführung der Pulsereignisse von vier benachbarten Segmenten. Das Element MERGE erhält eingangsseitig Pulsereignisse und erzeugt ausgangsseitig einen Strom von Pulsereignissen, die an die einzelnen Zonen weitergeleitet werden. Das Element AER empfängt Pulsereignisse von dem Merkmalsdetektor über das 3D-Interface.
348
16 Architektur eines Sehwürfels der ersten Generation
die Pulsereignisse von benachbarten Segmenten für die Weiterverarbeitung zusammengeführt. Abbildung 16.30 zeigt eine Architektur, in der jeweils vier benachbarte Segmente zusammengeführt werden. Das Element MERGE enthält vier FIFOs, von denen die eingehenden Pulsereignisse alternierend ausgelesen werden. Da in unserem Ansatz die Taktfrequenzen der NPUs von Merkmalsdetektor und Merkmalserkenner identisch gewählt sind, werden keine besonderen Schaltungen zur Synchronisation unterschiedlicher Taktdomänen benötigt. Für gegebene Segmentierung und Taktfrequenz kann somit die Anzahl verfügbarer Takte nT bestimmt werden, in der eine Zone vollständig abgearbeitet werden muß (vgl. Tabelle 16.7). Segmente
1
Ereignisrate pro Segment fE [MEvents/s] 314.57
64
256
1024
4096
19.66
4.92
1.23
0.69
FIFO Größe pro Segment [kBytes]
3 328.00 208.00
52.00
13.00
7.31
FIFO Fläche pro Segment [mm2 ]
9.75
0.15
0.04
0.02
Taktfrequenz Detektor fD [MHz]
16 043.21 274.73
74.97
22.09
7.41
nT = fD /fE
51
15
17
10
0.61 13
Tabelle 16.7 Ereignisrate aus dem MERGE-Element, FIFO-Größe und nT in Abhängigkeit von der Segmentgröße. Nimmt man an, daß die Auswertung des CAM-Arrays 4 Takte benötigt, kann man zusammen mit den Ergebnissen in Tabelle 16.6 den minimalen Grad der erforderlichen Parallelität und damit die Gatteräquivalente bestimmen. Tabelle 16.8 faßt die Systemkomplexität zusammen. Eine flächenoptimale Lösung erhält man mit einer 1024-er Segmentierung der Ebene A. Insgesamt reichen hier 3 Chiplagen für die Realisierung von 10 000 Zonen für die Schichten 2-4 des Merkmalserkenners. Abbildung 16.31 zeigt schematisch den Einbau der 3 Schichten in die Gesamtarchitektur und die Anzahl der erforderlichen 3D-Vias. Merkmalssynchronisierer Mit 20×24 Eingangsneuronen besteht der Merkmalssynchronisierer (Schicht 5, Abbildung 7.8) aus 6168 dynamischen Synapsen und 480 Pulsneuronen. Mit 20 Zeilen kommen pro Zone zusätzlich 980 dendritische Synapsen, 20 dynamische Synapsen und 120 Pulseneuronen für die Synchrondetektion dazu. Aus den praktischen Ergebnissen zu dem Fleckdetektor läßt sich hieraus eine Flächenabschätzung für die analogen Schaltungsteile herleiten. Beim Übergang von 130 nm auf 40 nm ist zu berücksichtigen, daß anders als bei Digitalschaltungen der effektive Flächengewinn nur etwa Faktor 4 beträgt und in einer Subthreshold-Schaltungstechnik bei gleichen Arbeitspunkteinstellungen die Signalströme durch die leichte Verringerung der Schwellspannung bei
16.7 Merkmalserkenner 64
349
Segmente A-Auflösungsebene
1
256
1024
4096
Taktfrequenz [MHz]
16 043.21 274.73
74.97
22.09
7.41
Verfügbare Takte nT − 4
47
9
11
13
6
umin
<60
240
240
160
480
NPU Gatteräquivalent pro Zone
<1 850
6 534
6 534
4 454
12 774
NPU Fläche [µm2 ] pro Zone
<1 295.00 4 573.80 4 573.80 3 117.80 8 941.80
NPU Fläche [mm2 ] 10 000 Zonen
<12.95
45.74
45.74
31.18
89.42
CAM + Speicher Fläche [mm2 ]
92.40
92.40
92.40
92.40
92.40
FIFO Fläche [mm2 ] Auflösungsebene A-E
48.75
52.41
51.95
51.95
116.89
3D-Via Fläche [mm2 ]
2.5025
2.5344
2.6194
2.9092
3.8640
<156.60 193.08
192.71
178.44
302.57
10 000 Zonen
Gesamte Fläche
[mm2 ]
Tabelle 16.8 Komplexität des Merkmalserkenners, Schichten 2-4.
Abb. 16.31 Ausschnitt aus dem Blockschaltbild der Kaskade. Die Verbindung von Schicht 4 mit Schicht 5 der Zonenarchitektur erfolgt als feste Verbindung. Da in jeder Zone 20 × 24 Neuronen zu indizieren sind, reichen pro Zone 5+5 Bits zur eindeutigen Spezifikation des Empfängerneurons.
350
16 Architektur eines Sehwürfels der ersten Generation
40 nm etwa um den Faktor 2 vergrößert werden. Die Kapazitäten der Membran und der dynamischen Synapsen nehmen daher nur etwa um den Faktor 1.26 zu, wodurch die eingestellten Zeitkonstanten der Synapsendynamik um den Faktor 0.63 abnehmen würden. Ein exakter Erhalt der in 130 nm vorgegebenen Zeitkonstanten erfordert somit eine Optimierung der Schaltungsdimensionierung und erlaubt hier nur grobe Abschätzungen über den zu erwartenden Flächenbedarf. Abgeschätzt ergibt sich der größte Gewinn beim Übergang von 130 nm auf 40 nm bei den im Flächenbedarf dominierenden dynamischen Synapsen, da beim Merkmalssynchronisierer der Adaptionsparameter µ um den Faktor 16.67 größer ausfällt als bei dem Fleckdetektor (Merkmalssynchronisierer: µ = 5ms−2 , Fleckdetektor: µ = 0.3ms−2 ). Bei der Neuauslegung der Schaltungsdimensionierung der dynamischen Synapse ist es somit hilfreich, den Adaptionsstrom möglichst gering zu halten und die Kapazität des Gewichtsspeichertransistors zu verkleinern. Unter der Annahme, daß die Adaptionsströme etwa um den Faktor zwei zunehmen, ergibt sich bei der Flächenreduktion des Gewichtsspeichertransistors ein Faktor von 16.67/(2 · 1.26) = 5.59. Tabelle 16.9 gibt für die einzelnen Komponenten den Flächenbedarf in 130 nm und daraus abgeleitet den abgeschätzten Flächenbedarf für 40 nm CMOS wieder. In Tabelle 16.10 ist der Flächenbedarf für eine Zone von 20 × 24 Pixeln hochgerechnet. Neuron
Synapse Synapse µ = 0.3 ms−2 µ = 5 ms−2
AER Schaltung
PulsRegeneration
Fläche [µm2 ] (130 nm) 423
212
106
240
200
Fläche [µm2 ] (40 nm) 105.09
52.67
26.33
22.72
18.93
Tabelle 16.9 Flächenbedarf für Schaltungskomponenten in 130 nm und 40 nm.
Technologie
Anzahl Anzahl AERNeuro- Synap- FIFO ne
Fläche [mm2 ]
Fläche [mm2 ]
Fläche [mm2 ]
Fläche [mm2 ]
sen
[kByte] Neurone
Synapsen
digitale gesamt Peripherie
130 nm CMOS 600
7 168
0.59
0.25
0.76
0.096
1.13
40 nm CMOS
7 168
0.59
0.06
0.19
0.009
0.26
600
Tabelle 16.10 Abgeschätzter Flächenbedarf für eine Zone aus 20 × 24 Pixeln. Rechnet man mit 10 000 Zonen (1 000 Objekte), wobei jeder Zone ein AERInterface zugeordnet ist, so sind neben dem AER-Digitalteil 10 000 × 10 = 100 000 3D-Vias zu implementieren. Dies entspricht in seiner Größenordnung der Via-Anzahl, die zur Verbindung der Merkmalskaskade mit der ersten Schicht des Merkmalserkenners bereitgestellt werden muß. Auf einen Chip
16.8 Zusammenfassung
351
mit einer Grundfläche von 8 × 8 mm2 können so nicht mehr als 200 Zonen abgebildet werden. Die 200 Zonen belegen eine Fläche von 53.2 mm2. Die restliche Fläche wird für die Landing-Pads der 3D-Vias benötigt. Insgesamt sind bei 10 000 Zonen 50 Chips für die Realisierung der Merkmalssynchronisierer erforderlich (vgl. Abbildung 16.32).
Abb. 16.32 Sehwürfel zur Erkennung von 1000 Objekten
16.8 Zusammenfassung Der Sehwürfel für die Erkennung von 1000 Objekten setzt sich zusammen aus folgenden Chips: • • •
1 Stck. 1000x1000 Photosensorfeld mit 1 Million Vias, 1 Stck. Chip für Bildpyramide und Pulskodierung mit 54560 Vias, 4 Stck. Merkmalsdetektorchips mit programmierbarer Orientierung mit je 54560 Vias,
352
• •
16 Architektur eines Sehwürfels der ersten Generation
3 Stck. Chips für Zonendefinition mit je 100 Tausend Vias, 50 Stck. Chips für Merkmalserkennung per Synchronisation.
Bis auf Photosensorchip und Synchronisationschip sind alle Chips in digitaler Architektur entworfen. Charakteristisch für den Sehwürfel ist die hohe Parallelität: 1 Million Pixelzellen mit Pulswandler und 10-er Teiler, ≈ 175 Tausend NPUs für die Merkmalskaskade, 10 Tausend Synchrondetektoren für den Merkmalserkenner und insgesamt ≈ 6.95 Millionen Vias. Somit sind 59 Chips in einem Stapel versammelt. Seine Höhe beträgt ≈ 0.9 mm, die größte Fläche weist der Photosensorchip mit ≈ 1 cm2 auf, die restliche Chips sind ≈ 65 mm2 groß. Insgesamt enthält der Sehwürfel ≈ 90 M B Speicher und 240 Millionen Gatter. Der Leistungsverbrauch wird abgeschätzt zu unter 10 W . Wollte man die Echtzeit-Verarbeitungsleistung des Sehwürfels mit DeskTop-Computern der 2 GHz-Klasse erzielen, so benötigte man sicher nicht weniger als 4 Computer allein für die ersten 6 Schichten der Merkmalskaskade. Da wir die robuste Erkennungsleistung der Merkmalserkenner nur schwer in Algorithmen bzw. MIPS und MBytes ausdrücken können, überlassen wir es dem Leser, eine Abschätzung dafür zu geben, wieviel Computer benötigt werden, um die äquivalente Leistung der 50 Merkmalserkenner zu erbringen. Die 3D-Technologie ist somit unverzichtbar für den Bau künstlicher Gehirne. Kalkulationen haben ergeben, daß 3D-Technologie in der Massenfertigung in der Anfangsphase ca. 30% teurer sein wird als heutige PackagingAlternativen. Dem steht gegenüber die stark erhöhte Zuverläßigkeit des gesamten Systems, welches aus einem halben Hundert Chips besteht und damit in seiner Komplexität vergleichbar ist mit der Elektronik eines modernen Autos, in welchem bis zu Hundert Mikrocontrollerchips wirken.
17 Ausklang
Veranschlagen wir 1012 Neuronen und 1015 Synapsen für das menschliche Gehirn, so benötigt die hier beschriebene Architektur einer kompletten Merkmalskaskade für 1000 Objekte etwa 0.14 Prozent aller Neuronen. Für 1 Million zu erkennende Objekte müssten wir 31 Milliarden Neuronen (3.1 Prozent) und 135 Milliarden Synapsen (0.013 Prozent) ansetzen. Stellen wir uns schließlich die 1 Million Objekte mittels einer riesigen Korrelationsmatrix zueinander in Beziehung gesetzt vor, so kämen 1 Billion Synapsen hinzu. Dies stellte aber auch erst 1 Promille aller Synapsen dar und zeigt einmal mehr, daß wir erst am Anfang vom Verständnis des Gehirns stehen. Es bleibt somit viel zu erforschen, und wir könnten uns darüber freuen. Einerseits gibt es viele Anwendungen für intelligente Maschinen, welche den Menschen von anstrengenden oder gefährlichen Arbeiten befreien können. Andererseits stehen wir am Anfang eines Weges, der zu künstlichen Gehirnen führen könnte, die leistungsfähiger als die menschlichen Gehirne wären. Auf dem Wege dahin könnten Roboter für das Soldatenhandwerk produziert werden und in Folge, wenn die Technologie billiger geworden ist, individuell optimierte Service-Roboter für Herrn Jedermann auf den Markt gelangen - die Effizienz des Massentötens und der zwischenmenschlichen Isolation könnte in nie gesehene Höhen steigen. Die Natur hat den Menschen mit Neugier ausgestattet, weshalb die Forschung zu Künstlichen Gehirnen nicht zu stoppen ist. Seit Hiroshima jedoch ist uns die Unschuld des neugierigen Spiels verlorengegangen. Verantwortlich sind wir am Ende immer - aber wissen wir, was wir tun? Vielleicht setzt die Forschung zum Gehirn einen reiferen Menschen voraus, als wir es heute sind: Berufsmenschen, welche hochspezielle Zusammenhänge abhandeln oder aufklären und damit restlos ausgefüllt sind. Da der Familienmensch die großen gesellschaftlichen Katastrophen auch nicht hat verhindern können, müßten wir den Berufsmenschen zurückdrängen und den der Gesellschaft verantwortlichen Menschen in uns entwickeln - dies immerhin ist möglich. Ein Mehr an Balance würde unsere Forschung sicher an ein anderes Wegende gelangen lassen.
18 Anhang
18.1 Simulator für Kapitel 3 und 4 Jens Harnisch
Das analytische Modell zur Beschreibung des makrodynamischen Verhaltens der pulsgekoppelten Neuronen wurde in C/C++ implementiert. Die Quelltexte und das kompilierte Programm stehen auf Anfrage zur Verfügung. Bei den Quelltexten wurde auf leichte Verständlichkeit und gute Wartbarkeit Wert gelegt. Sicher gibt es noch einige Möglichkeiten für die Optimierung von Laufzeit und Speicherplatzverbrauch. Da die Theorie der Modellierung aber über einen längeren Zeitraum entstanden ist und jeweils mit Simulationen begleitet wurde, schienen die leichte Wartbarkeit und Modularität der Quelltexte vorrangig. Dem Leser steht es offen, einzelne Programmteile oder das gesamte Programm in seinen eigenen Simulationen wiederzuverwenden. In vielen Simulationen in diesem Buch wurden Netzwerke mit vollvernetzten Neuronen, ohne Rückkopplung auf sich selbst, benutzt. Dabei wächst die Menge des benötigten Hauptspeicherbedarfs quadratisch mit der Anzahl der Neuronen. Bei der Berechnung des analytischen Modells zur Verhaltensbeschreibug des Netzes kommt noch ein weiteres Problem hinzu: Für n Neuronen gibt es 2n mögliche Feuermuster, weshalb der benötigte Speicherbedarf exponentiell mit der Anzahl der Neuronen wächst. Wenn die Wahrscheinlichkeit eines Feuermuster in einem float value mit 4 Byte Genauigkeit gespeichert wird, so werden zum Beispiel allein für die Feuermuster eines Netzes mit 30 Neuronen 4 GByte Speicher benötigt. Sicher kann man einen Teil des benötigten Speichers auf die Festplatte auslagern oder andere Tricks anwenden. Damit kommt man aber nicht viel weiter.
356
18 Anhang
Abfangen von numerischen Problemen Bei der Berechnung des theoretischen Modells kann es zu numerischen Problemen kommen, insbesondere bei der Rechnung mit Zahlen mit sehr unterschiedlichen Exponenten. Es wird empfohlen, die Berechnungen jeweils auf ihre Gültigkeit abzufragen, zum Beispiel in folgender Form: #i n c l u d e < f l o a t . h> i f ( ! ( _ f i n i t e ( r e s u l t )&&( _ f p c l a s s ( r e s u l t )!=_FPCLASS_QNAN) { co ut << " t h i s i s not a v a l i d r e s u l t " << e n d l ; // c a l l e r r o r h a n d l e r o f t h e s i m u l a t i o n } Dabei gibt _finite() den Wert TRUE zurück, falls das Argument x nicht unendlich ist, also wenn −IN F < x < +IN F . _finite() gibt FALSE zurück, falls das Argument unendlich ist oder ein NaN Wert ist (Not a Number). _fpclass() gibt einen Integer Wert zurück, welcher die floating-point Klasse des Arguments anzeigt. Mögliche Rückgabewerte sind: _FPCLASS_SNAN _FPCLASS_QNAN _FPCLASS_NINF _FPCLASS_NN _FPCLASS_ND _FPCLASS_NZ _FPCLASS_PZ _FPCLASS_PD _FPCLASS_PN _FPCLASS_PINF
NaN Q uiet NaN N e g a t i v e i n f i n i t y ( −INF ) N e g a t i v e n o r m a l i z e d non−z e r o Negative denormalized Negative zero ( − 0) P o s i t i v e 0 (+0) P o s i t i v e denormalized P o s i t i v e n o r m a l i z e d non−z e r o P o s i t i v e i n f i n i t y (+INF )
Für die Simulationen war es ausreichend, bei der floating-point Klasse auf _FPCLASS_QNAN zu überprüfen. Die Funktionen _finite() und _fpclass() werden von Microsoft Visual C++ bereitgestellt. Details der Simulation Die Simulation wurde mit einem ereignisgetriebenen Simulator implementiert, der im wesentlichen mit zwei Phasen arbeitet: •
•
In der ersten Phase wird für alle Neuronen der Zeitpunkt des nächsten Ereignisses berechnet (wann fängt das Neuron an zu feuern oder hört auf zu feuern), basierend auf der derzeitigen Konstellation von feuernden und nicht feuernden Neuronen. Im nächsten Schritt wird aus der Menge der berechneten Ereigniszeitpunkte der naheliegendste ausgewählt. Dann werden die neuen Zustände der Neuronen berechnet, noch basierend auf der alten Konstellation von
18.1 Simulator für Kapitel 3 und 4
357
feuernden und nicht feuernden Neuronen. Erst nach Abschluß der Berechnung werden die Zustände der Neuronen, so weit erforderlich, aktualisiert. Dann wird wieder mit der ersten Phase wie oben beschrieben begonnen. Hierzu wird angemerkt, daß modernere Simulationsverfahren bekannt sind. Es gibt verschiedene Möglichkeiten, Berechnungen einzusparen oder auch die Simulation parallel auf mehreren Rechnern durchzuführen. Auf der anderen Seite führen diese Optimierungen gewöhnlich zu einem höheren Testaufwand und verbessern nicht die Wartbarkeit des Programms. Im Rahmen dieses Buches hat es sich durchaus bewährt, den einfachen Simulationsansatz beizubehalten. Auch ein Vergleich mit anderen Simulatoren wurde dadurch vereinfacht. Der Ablauf des Gesamtprogramms, einschließlich Berechnung des analytischen Modells des neuronalen Netzes, ist in der folgenden Abbildung 18.1 dargestellt.
Abb. 18.1 Darstellung des Programmablaufs mit Simulation und Berechnung des Modells zur Beschreibung des Verhaltens des neuronalen Netzes
Anbindung an MATLAB Als besonders hilfreich erwies sich für die Simulationen die Möglichkeit der einfachen Anbindung an MATLAB. So konnten problemlos Diagramme in verschiedenen Formen dargestellt werden. Um MATLAB benutzen zu können, muß lediglich ein spezielles HeaderFile von MATLAB eingebunden werden (engine.h), es muß mit Bibliotheken von MATLAB gelinkt werden (libmx.lib, libmat.lib, libeng.lib), und es muß ein gültiger Zeiger auf eine MATLAB Engine generiert werden (dabei wird implizit MATLAB gestartet, falls nicht bereits eine Instanz von MATLAB
358
18 Anhang
vorher gestartet wurde). Im weiteren Verlauf müssen dann nur noch die anzuzeigenden Werte kopiert und über Strings die Kommandos zur eigentlichen Diagrammanzeige an MATLAB geschickt werden. Im folgenden wird ein Quelltextbeispiel gezeigt, bei dem das Feld arg1 mit count Werten als Diagramm dargestellt werden soll. Auf der x-Achse wird der Index des jeweiligen Messwertes abgetragen. Diese Funktion (leicht modifiziert) wurde zum Beispiel benutzt, um die Wahrscheinlichkeiten der Feuermuster in MATLAB darzustellen. v o i d matlab ( do uble ∗ arg1 , u n s i g n e d l o n g co unt ) { Engine ∗ ep=NULL ; mxArray ∗mx_index = NULL; mxArray ∗mx_vals = NULL; do uble ∗ index_ ptr = NULL; do uble ∗ va l_ ptr = NULL; unsigned long cnt ; // s t a r t MATLAB i f ( ! ( ep = engOpen ( " matlab " ) ) ) { f a t a l ( " can not s t a r t MATLAB e n g i n e " ) ; } index_ ptr= new do uble [ co unt ] ; i f ( ! index_ ptr ) { f a t a l ( " memory a l l o c a t i o n f a i l u r e " ) ; } // we d e f i n e t h e x v a l u e s , and s i m p l y assume an // i n d e x s t a r t i n g with 0 f o r ( c n t =0; c n t < co unt ; c n t++) { index_ ptr [ c n t ]= ( do uble ) c n t ; } // we copy t h e v a l u e s , t h i s may not be n e c e s s a r y va l_ ptr= new do uble [ co unt ] ; i f ( ! va l_ ptr ) { f a t a l ( " memory a l l o c a t i o n f a i l u r e " ) ; } f o r ( c n t =0; c n t < co unt ; c n t++) {
18.1 Simulator für Kapitel 3 und 4
359
va l_ ptr [ c n t ]= a r g 1 [ c n t ] ; } // we d e f i n e v a r i a b l e s i n t h e MATLAB envir o nment mx_index=mxCreateDoubleMatrix ( 1 , count ,mxREAL ) ; mxSetName ( mx_index , "mx_index " ) ; mx_vals=mxCreateDoubleMatrix ( 1 , count ,mxREAL ) ; mxSetName ( mx_vals , "mx_vals " ) ; e n g E v a l S t r i n g ( ep , " f i g u r e ( ) ; " ) ; // now we a c t u a l l y copy t h e v a l u e s i n t o MATLAB memcpy ( ( v o i d ∗ ) mxGetPr ( mx_index ) , ( v o i d ∗ ) index_ptr , s i z e o f ( do uble ) ∗ co unt ) ; memcpy ( ( v o i d ∗ ) mxGetPr ( mx_vals ) , ( v o i d ∗ ) val_ptr , s i z e o f ( do uble ) ∗ co unt ) ; // p l a c e t h e v a r i a b l e a r r a y i n t o t h e MATLAB // wo r kspa ce engPutArray ( ep , mx_index ) ; engPutArray ( ep , mx_vals ) ; e n g E v a l S t r i n g ( ep , " f i g u r e ( 1 ) ; " ) ; // p l o t t h e r e s u l t e n g E v a l S t r i n g ( ep , " h=s e m i l o g y ( mx_index , mx_vals ) ; " ) ; e n g E v a l S t r i n g ( ep , " s e t ( h , { ’ L i n e S t y l e ’ } , { ’ − ’ } ; ) " ) ; // a n n o t a t i o n s f o r t h e diagram e n g E v a l S t r i n g ( ep , " t i t l e ( ’ p r o b a b i l i t i e s f o r f i r i n g patterns ’ ) ; " ) ; e n g E v a l S t r i n g ( ep , " x l a b e l ( ’ p r o b a b i l i t y ’ ) ; " ) ; e n g E v a l S t r i n g ( ep , " y l a b e l ( ’ i n d e x o f f i r i n g pattern ’ ) ; " ) ; // use eng O utputBuffer t o c a p t u r e MATLAB o utput eng O utputBuffer ( ep , b u f f e r , s i z e o f ( b u f f e r ) ) ; mxDestroyArray ( mx_index ) ; mxDestroyArray ( mx_vals ) ; // c l o s e MATLAB e n g E v a l S t r i n g ( ep , " c l o s e ; " ) ; }
360
18 Anhang
Bedienung des Simulators Der Simulator wurde mit einer einfachen graphischen Bedienoberfläche ausgestattet (siehe Abbildung 18.2). Über die Bedienoberfläche können die Parameter des neuronalen Netzes (z.B. Anzahl der Neuronen), Simulationsparameter (z.B. Anzahl der zu simulierenden Ereignisse) und Parameter zur Berechnung des analytischen Modells (z.B. Bereich, in welchem nach einem passenden beta gesucht werden soll) gesetzt werden.
Abb. 18.2 Die grafische Oberfläche des Simulators Im folgenden werden die einzelnen Parameter im Detail erklärt:
18.1 Simulator für Kapitel 3 und 4
361
Network Parameters • • • • •
• • • •
• •
•
N eurons: Anzahl der Neuronen im vollvernetzten Netzwerk T d: Pulsdauer eines Neurons T heta: Schwellwert eines Neurons beta min und beta max: Suchbereich zur Bestimmung von beta beta samples: Dieser Parameter hat keinen Einfluß auf die Berechnung des analytischen Modells. Allerdings werden bei einigen Experimenten verschiedene Größen in Abhängigkeit von beta dargestellt. Für diese Diagramme muss die Anzahl der beta Werte, die auf der x-Achse dargestellt werden, angeben werden. beta = beta(H): Bestimmung von beta aus dem gemessenen Mittelwert H der Signalenergie h beta = beta(F ): Bestimmung von beta aus der mittleren Pulsrate F eines Netzes Events per N etwork: Gesamtzahl von Events pro Netz in einer Konfiguration Random Generator Seed: Je nach Wahl der anderen Parameter werden die Gewichte zwischen den Neuronen mit Zufallszahlen initialisiert. Weiterhin werden die aktuellen Stände der Akkumulatoren mit Zufallszahlen initialisiert. Die Folge der erzeugten Zufallszahlen hängt von dem Random Generator Seed ab. Bei gleichem seed sind die Simulationen vollkommen reproduzierbar. Durch einen anderen seed kann dagegen ein anderer Simulationsverlauf provoziert werden. Da die simulierbaren Netzgrößen eher klein sind und damit der Einfluß einzelner Gewichte durchaus eine Rolle spielen kann, ist es sinnvoll, mit verschiedenen seeds zu experimentieren. Ensemble Size − Random W eight Sets: Wenn eine Zahl größer als 1 eingeben wird, dann wird das jeweilige Experiment automatisch mit mehreren verschiedenen Gewichtssätzen durchgeführt. Ensemble Size − Random Starts: Wenn hier eine Zahl größer als 1 eingegeben wird, dann wird das jeweilige Experiment automatisch mit mehreren verschiedenen Initialisierungen für Membranpotentiale und vergangene Pulsdauern durchgeführt. Calculations of M eans: „per net“ = Entropie, mittlere Energie und beta werden für jedes Netz bestimmt und über Ensemble entsprechende Mittelwerte berechnet. „per ensemble“ = Entropie, mittlere Energie und beta werden über Ensemble berechnet.
Input Configuration • •
Input Average: Mittelwert des externen Stimulus Input Range: Schwankungsbreite des externen Stimulus. Wenn Stimulus Average z.B. auf 0.5 gesetzt ist und Stimulus Range auf 0.5, dann sind die Stimuli gleichverteilt im Intervall [0,1].
362
• •
18 Anhang
Input T ype: „constant“ = zeitlich konstanter Input. Mit Wahl von „spikes“ werden Pulse angelegt, der zeitliche Mittelwert der Pulse entspricht gewählter Zahl in Input Average. input distribution: „delta“ = Input bekannt. „uniform“ = Mittelwert und Schwankungsbreite bekannt für Gleichverteilung der Eingangspulse
Configuration of Weights • • • •
•
W eight Average: Mittelwert aller Gewichte bzw. synaptischen Werte W eight Range: Schwankungsbreite der Gewichte der Neuronen. Wenn Weight Average z.B. auf 0.5 gesetzt ist, und Weight Range auf 0.2, dann sind die Gewichte gleichverteilt in [0.3, 0.7]. Input W eight Average: Mittelwert der Gewichte zum externen Stimulus Input W eight Range: Schwankungsbreite der Gewichte der Neuronen zum externen Stimulus. Wenn Input Weight Average z.B. auf 0.3 gesetzt ist und Input Weight Range auf 0.2, dann sind die Gewichte gleichverteilt in [0.1, 0.5]. W eight Distribution: „delta“ = Gewichte bekannt. „uniform“ = Mittelwert und Schwankungsbreite bekannt für Gleichverteilung der Gewichte
Output Files • • • • • • •
distribution = Histogramm und Verteilung der Zerlegungen werden angezeigt. Weiterhin Entropie, mittlere Energie und Pulsrate H(beta) = gemessener Mittelwert H und theoretisch berechneter Mittelwert H(beta) als Funktion von beta werden gegenübergestellt. Dient zur Kontrolle der Auflösungsprozedur. F (n) = Pulsrate für jedes Neuron wird angezeigt S(inp) = Entropie des Netzes wird experimentell und theoretisch ermittelt und als Funktion des Inputs dargestellt H(inp) = mittlere Energie des Netzes wird experimentell und theoretisch ermittelt und als Funktion des Inputs dargestellt F (inp) = mittlere Pulsrate des Netzes wird experimentell und theoretisch ermittelt und als Funktion des Inputs dargestellt beta(inp) = beta wird als Funktion des Inputs dargestellt
Kommandos: •
Start simulation: Mit diesem Kommando wird die Simulation gestartet und im Anschluß automatisch die Berechnung des analytischen Modells durchgeführt. Die Ergebnisse werden mit MATLAB angezeigt. In Abhängigkeit davon, welche Parameter eingetragen wurden, kann die Berechnung von wenigen Sekunden bis zu mehreren Tagen dauern. Am Anfang der Simulation ertönt ein kurzer Ton, nach Abschluß der Berechnung ertönt längerer Ton.
18.1 Simulator für Kapitel 3 und 4
•
•
363
Stop simulation: Damit kann die Simulation vorzeitig abgebrochen werden. Die eingestellten Parameter bleiben aber erhalten. Jetzt kann man zum Beispiel einzelne Parameter verändern, um zu einer kürzeren Berechnungszeit zu gelangen. Exit: Damit kann das Programm beendet werden. Bereits dargestellte MATLAB Diagramm sollten auch nach Ende des Programms erhalten bleiben. Auch hat man innerhalb von MATLAB noch Zugriff auf die berechneten Zahlenwerte und kann sie zum Beispiel in weiteren Diagrammen neu verarbeiten.
364
18 Anhang
18.2 Axon-Modell von Hodgkin und Huxley Jörg Schreiter
Im Jahr 1952 veröffentlichten Hodgkin und Huxley ein Modell, welches die Entstehung und Weiterleitung von Aktionspotentialen in den besonders langen Axonen bestimmter Neurone des Tintenfisches beschreibt [70]. Das Modell besteht aus einem System von Zustandsgleichungen für ein Gebiet der Membran des Axons. In [24] ist eine übersichtliche Darstellung zu finden, deren Gedankengang im folgenden wiedergegeben wird. Ein Teil des Modells kann durch eine elektrische Schaltung veranschaulicht werden, die in Abbildung 18.3 dargestellt ist. Das betrachtete Gebiet der Membran des Axons mit der Fläche A bildet einen Kondensator mit einer Kapazität von µF (18.1) C = 1 2A , cm über dem die Membranspannung U anliegt, die eine Zustandsvariable des Modells bildet. Das Hodgkin-Huxley-Modell berücksichtigt spannungsgesteuerte Ionenkanäle für Na+ - und K+ -Ionen. Diese Ionenkanäle im betrachteten Gebiet der Membran werden durch je einen gesteuerten Widerstand mit dem Leitwert GNa bzw. GK modelliert. Alle übrigen Ionenkanäle sind in dem festen Widerstand mit dem Leitwert GL zusammengefaßt. Die Konzentrationen der Ionen werden durch die Ionenströme kaum verändert, so daß UNa , UK und UL als konstant angenommen werden dürfen. Cytoplasma
U
C
I
GL UL
GK UK
GNa UNa
Interzellularraum
Abb. 18.3 Elektrischer Teil des Hodgkin-Huxley-Modells. Wenn alle Ionenkanäle geöffnet sind, erreichen die Leitwerte GNa und GK b Na bzw. G b K . In der Regel ist jedoch ein Teil der Ioihre Maximalwerte G nenkanäle undurchlässig. Der mittlere Anteil durchlässiger Ionenkanäle wird durch weitere dimensionslose Zustandsvariablen m, n und h ausgedrückt. Die
18.2 Axon-Modell von Hodgkin und Huxley
365
b sind ebenso wie die Nernst-Spannungen UNa und UK maximalen Leitwerte G 2 + + für Na - und K -Ionen in [24] angebenen. Es ist GL = 0, 36 mS/cm . Das Hodgkin-Huxley-Modell läßt sich durch folgendes Gleichungssystem zusammenfassen: bNa m3 h(U − UNa ) + G b K n4 (U − UK ) + GL (U − UL ) , C U˙ = I + G
τ0 m ˙ = αm (U )(1 − m) −βm (U )m , τ0 n˙ = αn (U )(1 − n) −βn (U )n ,
(18.2)
τ0 h˙ = αh (U )(1 − h) −βh (U )h .
Der Skalierungsfaktor beträgt τ0 = 1 ms. Die Funktionen αm , αn , αh , βm , βn und βh stellen die von der Membranspannung abhängigen Übergangsraten zwischen den durchlässigen und gesperrten Konfigurationen der Konstituenten der Ionenkanäle dar. Sie wurden von Hodgkin und Huxley empirisch ermittelt und an die Messergebnisse angepasst: −4 − U/10 mV e−4−U/10 mV − 1 −0, 55 − U/100 mV αn (U ) = −5,5−U/10 mV e −1
αm (U ) =
αh (U ) = 0, 07e−3,3−U/20 mV
βm (U ) = 4e−3,6−U/18 mV ,
(18.3)
βn (U ) = 0, 125e−0,8−U/80 mV ,
(18.4)
βh (U ) =
1 . e−3,5−U/10 mV + 1
(18.5)
Das Hodgkin-Huxley-Modell ist geeignet, den Verlauf eines Aktionspotentiales, wie es im Soma in der Nähe des Ansatzes zum Axon entstehen kann, zu beschreiben. Wird in den elektrischen Teil des Modells ein Stromimpuls I eingespeist, z.B. ein Rechteckimpuls I(t) = I0 (H(t) − H(t − t0 )) mit der Amplitude I0 und der Dauer t0 (dabei ist H die Sprungfunktion (10.4)), so kann die Spannung U eine kurze Spitze mit einem Scheitelwert von bis zu ca. +35 mV durchlaufen. Es zeigt sich dabei wie im biologischen Vorbild ein Schwellwertverhalten. Bei fester Dauer t0 des eingeleiteten Stromimpulses werden Aktionspotentiale ausgelöst, wenn I0 oberhalb eines Schwellwertes Ith liegt. In Abbildung 18.4 ist der Verlauf für einige Werte des Eingangsstromes dargestellt. Im Bereich des Schwellwertes gibt es einen stetigen Übergang zur Ausbildung des Aktionspotentiales. Als Schwellwert Ith wurde willkürlich die Amplitude des Eingangssignals gewählt, dessen Maximum der Membranspannung zum spätesten Zeitpunkt t erreicht wird (Abbildung 18.4, Kurve b). Die Kurvenschar wird dadurch in zwei Bereiche unterteilt, in denen jeweils eine kürzerer Zeit bis zu der Entscheidung verstreicht, ob ein Aktionspotential ausgelöst wird. Ein weiteres Detail des Verlaufes der Membranspannung legt diese Wahl nahe: Das dem Maximum folgende Minimum, welches das Ruhepotential UR unterschreitet, ist für alle I0 > Ith nahezu gleich und erreicht dabei seinen minimalen Wert.
366
18 Anhang 40
c
U / mV 20
I0 0 −20 b
−40 −60 −80
a
0
5
10
15
t / ms
20
Abb. 18.4 Schwellwertverhalten des Neuronenmodells von Hodgkin und Huxley bei Anregung mit einem Recheckimpuls der Dauer t0 = 1 ms und veränderlicher Amplitude I0 , der bei t = 0 endet (breite Linie). Bei kleinen Amplituden (a) fällt das Membranpotential mit leichtem Überschwingen rasch wieder auf das Ruhepotential (Strich-3-Punkt-Linie) ab. Übersteigt die Amplitude einen Schwellwert I0 = Ith (b), so zeigt der Verlauf des Membranpotentiales eine ausgeprägte Spitze, die bei weiterer Erhöhung der Amplitude bald die Höhe des Aktionspotentiales (c) erreicht. Mit steigendem Parameter I0 verändert sich die Lage des Maximums der Kurve, wie durch den Parameter-Pfeil angedeutet ist. Dargestellt sind Kurven für folgende Werte des Parameters: Durchgezogene Linie:
I0 −Ith ∈{−1, 4 · 10−1 ; −1, 4 · 10−5 ; −1, 4 · 10−9 }; Ith I0 −Ith ∈{−7, 1 · 10−13 ; −5, 6 · 10−13 ; −4, 2 · 10−13 ; Ith −13 −13 −13 −13
Strich-Punkt-Linie: −2, 8 · 10−13 ; −1, 4 · 10 ; 0; 1, 4 · 10 ; 2, 8 · 10 ; 4, 2 · 10 ; 5, 6 · 10−13 ; −13 7, 1 · 10 }; th Durchgezogene Linie: I0I−I ∈{2, 1 · 10−12 ; 1, 6 · 10−11 , 1, 6 · 10−10 ; 1, 6 · 10−9 ; th −8 −7 −6 1, 6 · 10 ; 1, 6 · 10 ; 1, 6 · 10 ; 1, 6 · 10−5 , 1, 6 · 10−4 ; 1, 6 · 10−3 ; 1, 6 · 10−2 ; 1, 6 · 10−1 }.
18.2 Axon-Modell von Hodgkin und Huxley
367
D.h. für I0 > Ith entspricht die Amplitude des Überschwingens der bei der Ausbildung eines Aktionspotentiales. Die Sensitivität1 ist in der Nähe des Schwellwertes sehr hoch; die in Abbildung 18.4 in Strich-Punkt-Linie gezeigten Kurven der Schar gehören zu einem Amplitudenbereich −7, 1 · 10−13 Ith ≤ I0 − Ith ≤ 7, 1 · 10−13 Ith . Die Schwelle, die zum Auslösen eines Aktionspotentiales überschritten werden muß, kann auch als Schwellwert der Membranspannung aufgefaßt werden. Überschreitet die Membranspannung U infolge einer Stimulation mit einem Eingangsstrom I(t) diesen Schwellwert Uth , so folgt kurze Zeit (wenige Millisekunden) später ein Aktionspotential. Der Schwellwert des Hodgkin-HuxleyModells liegt bei etwa Uth ≈ −57 mV. Ob ein Aktionspotential ausgelöst wird, hängt in komplizierter Weise davon ab, wie die Membranspannung nach der Überschreitung des Schwellwertes weiter verläuft.
1
b gegeben. Um die In Abbildung 18.4 sei die Lage des Maximums durch b t, U Veränderung der Kurve bei Änderung des Parameters darzustellen, kann z.B. die b /∂I0 der Höhe des Maximums U b bezüglich des Parameters Sensitivität SI0 := ∂ U I0 angegeben werden.
368
18 Anhang
18.3 Transistor-Grundschaltungen Jörg Schreiter
Schalter und Ladungsinjektion MOS-Transistoren werden als elektrisch gesteuerte Schalter eingesetzt; der Strompfad zwischen Drain und Source ist leitfähig, wenn die Spannung am Gate diejenige an den Drain- und Source-Anschlüssen um mehr als die Schwellspannung überschreitet (NMOS) bzw. unterschreitet (PMOS) : UG > max(UD , US ) + Ut (NMOS) , UG < min(UD , US ) + Ut (PMOS) .
(18.6)
Beim Einschalten wird der Kanal des Schalttransistors aufgebaut. Die dazu erforderliche Kanalladung wird den Drain- und Source-Anschlüssen entnommen. Diese sind nun verbunden, so daß ein evtl. bestehender Spannungsunterschied ausgeglichen wird. Beim Ausschalten wird der Kanal wieder abgebaut, und die Kanalladung wird über die Drain- und Source-Anschlüsse abgegeben. Das kann zu einer Änderung der Spannungen am Drain- und Source-Anschluß führen. Beide Vorgänge werden als Ladungsinjektion bezeichnet. Bei vielen Anwendungen wird die beim Einschalten injizierte Ladung ausgeglichen, während die beim Abschalten injizierte Ladung meist an einem Anschluß zu einer Spannungsänderung führt, die als Abweichung vom idealen Verhalten oder Fehler bezeichnet wird. Die Aufteilung der Kanalladung hängt wesentlich von der Schaltgeschwindigkeit ab. Im Extremfall des vernachlässigbar kurzen Abschaltens teilt sich die Kanalladung gleichmäßig auf beide Anschlüsse auf. Die Spannungen an den nun getrennten Drain- und Source-Anschlüssen können sich dabei unterschiedlich verändern. Beim beliebig langsamen, quasistatischen Abschalten besteht der Kanal nahezu bis zum Ende des Schaltvorganges, so daß zwischen Drain- und SourceAnschluß ein kontinuierlicher Spannungsausgleich erfolgt. Die Kanalladung teilt sich dabei ungleich in der Weise auf, daß an Drain- und Source-Anschluß die gleiche Spannungsänderung auftritt. Unterhalb der nahezu flächenhaften Kanalladung an der Siliziumoberfläche befindet sich eine Raumladungszone im Bulk-Gebiet des Transitors [122, S. 142 ff]. Die entsprechende Ladung ist an der Ladungsinjektion in erster Näherung nicht beteiligt und fließt über den Bulk-Anschluß zu bzw. ab. In Abbildung 18.5 sind die an der Ladungsinjektion beteiligten Ladungen und Kapazitäten an einem Querschnitt durch einen MOS-Transistor in einer aktuellen CMOS-Technologie dargestellt.
18.3 Transistor-Grundschaltungen Drain / Source
Drain / Source
Source / Drain
0000000 1111111 0000000 1111111 STI 0000000 1111111 0000000 1111111
Source / Drain Gate
Gate
11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000 11111111 00000000
0000000 1111111 0000000 1111111 STI 0000000 1111111 0000000 1111111
Raumladungszone Kanalladung
0000000 1111111 0000000 1111111 STI 0000000 1111111 0000000 1111111
369
Gate
111111111 11111111 1111111111 0000000000 000000000 00000000 111111111 11111111 000000000 00000000 111111111 11111111 000000000 00000000 111111111 11111111 000000000 00000000 111111111 11111111 000000000 00000000 111111111 11111111 000000000 00000000 111111111 11111111 000000000 00000000 111111111 11111111 000000000 00000000 111111111 11111111 000000000 00000000 111111111 11111111 000000000 00000000 1111111111 0000000000
000000000000 111111111111 000000000000 111111111111 STI 000000000000 111111111111 000000000000 111111111111
Fringing− Overlap−Kapazität Parasitärkapazität Sperrschichtkapazität der Verdrahtung
Abb. 18.5 Schnitt durch einen MOS-Transistor zur Erläuterung der Ladungsinjektion bei der Verwendung als Schalttransistor (STI: shallow trench isolation) Die aktiven Gebiete der Transistoren, d.h. Drain, Source und Kanalgebiet, sind von einer Oxidisolationsschicht umgeben, die einige hundert Nanometer tief unter die Siliziumoberfläche reicht. Im linken Teil des Bildes sind Auf- und Abbau der Kanalladung beim Schalten gezeigt; dabei ist die Kanalladung beim NMOS-Transistor negativ, beim PMOS-Transistor positiv. Im rechten Teil zu sehen sind weitere durch Kondensatorsymbole angedeutete Kapazitäten des Transistors, die beim Schalten umgeladen werden und zur Ladungsinjektion beitragen. Die Sperrschichtkapazität der pn-Übergänge zwischen Drain und Bulk bzw. Source und Bulk tragen nicht selbst zur Ladungsinjektion bei. Sie nehmen jedoch einen Teil der injizierten Ladung auf und bestimmen so die Höhe der durch die Ladungsinjektion hervorgerufenen Spannungsänderung mit. Der Schalttransistor werde nun in einer Schaltung gemäß Abbildung 18.6 zum Zu- und Abschalten des Ladestromes eines Kondensators C2 eingesetzt. Ug
Ug Us1 Us0
Cg1
Cg2
(1)
I
C1
t1 t2
(2) U1
QC C2
t3 t4
t
U U2
U2 U1 t1 t2
U2 U1 t3 t4 t
Abb. 18.6 Einsatz eines Schalttransistors Die übrigen Bauelemente der vollständigen Schaltung, die z.B. für die Anfangszustände der Ladungen auf den Kondensatoren und für die Begrenzung der Spannung über der Stromquelle sorgen, seien in dem betrachteten Betriebsfall als wirkungslos oder vernachlässigbar angenommen. Am Gate liegt
370
18 Anhang
die Schaltspannung Ug = Us an, die im eingeschalteten Zustand den Wert Us1 und im ausgeschalteten Zustand den Wert Us0 annimmt. Im eingeschalteten Zustand wird der Transistor im Ohmschen Bereich mit vernachlässigbarer Drain-Source-Spannung betrieben: U1 ≈ U2 . U1 bzw. U2 liegt als Source-Bulk-Spannung am Transistor an. Durch den Bulk-Effekt hat der Transistor eine Schwellspannung [122, S. 157 ff] p p (18.7) Ut = Ut0 + γ 2ΦF + USB − 2ΦF ,
mit USB = U1 . Darin sind Ut0 die Schwellspannung bei USB = U1 = 0 bzw. USB = U2 = 0, γ die Bulk-Effekt-Konstante und 2ΦF die Oberflächenspannung bei starker Inversion2 . Damit sich der Transistor im Bereich starker Inversion befindet, muß Us1 > U1 + Ut gewählt werden. Aus einer oberen Begrenzung für Us1 , beispielsweise durch die Betriebsspannung Us1 = UDD , ergibt sich eine √ obere Grenze für U1,2 < UDD − Ut = UDD − Ut0 − γ 2ΦF + γ/2 − p √ UDD − Ut0 − γ 2ΦF + γ 2 /4 − 2ΦF . Im ausgeschalteten Zustand ist der Transistor nahezu gesperrt und arbeitet im Bereich der schwachen Inversion. Dabei fließt noch ein Strom [98, Abschnitt 3.5]:
ID =
W L
βUT2 e
|ID | ≤
W L
βUT2 e
UG −Ut0 nUT
Us0 −Ut0 nUT
U U − US − UD e T −e T , e
−
min(U1 ,U2 ) UT
.
(18.8) (18.9)
Us0 muß entsprechend des maximal tolerierbaren Stromes |ID,max | im ausgeschalteten Zustand gewählt werden: Us0 < n UT ln(|ID,max |/ID0 ) + min(U1 , U2 ) , wobei ID0 = (W/L)βUT2 exp(−Ut0 /nUT ) den Drainstrom bei UG = US = UB und UD − UB ≫ UT bedeutet und UT die Temperaturspannung UT = kT /q anzeigt. Bis zum Einschalten zum Zeitpunkt t1 haben die Spannungen U1 und U2 die Werte U1 (t1 ) und U2 (t1 ) angenommen. Zu einem späteren Zeitpunkt t2′ , 2
Der Bulk-Effekt beschreibt die Änderung der auf die Gate-Source-Spannung bezogenen Schwellspannung Ut des Transistors in Abhängigkeit von der Source-Bulk√ ′ Spannung USB . Die Konstante γ = qNA 2ǫ0 ǫSi /Cox ergibt sich aus der SubstratDotierungsdichte NA , der Permeabilitätskonstante ǫ0 ǫSi für Silizium und dem ′ = ǫ0 ǫSiO2 /dox des Gate-Oxids. Die Oberflächenspannung ist Kapazitätsbelag Cox die Spannung zwischen der Siliziumoberfläche und dem Siliziumsubstrat unter dem Kanal und dessen Raumladungszone. Im Bereich starker Inversion (das ist der hier interessierende Fall) in dem der Kanal vorhanden ist, kann es mit 2ΦF - dem Doppelten der Spannung, die mit der Elementarladung q den Abstand WF − Wi = −qΦF zwischen den Fermi-Kanten im dotierten (WF ) und undotierten (Wi ) Halbleiter angibt - gut angenähert werden [122, S. 10 ff, S. 155 ff]. In der Literatur werden diese Spannung und die Oberflächenspannung häufig Potentiale genannt und deshalb mit Φ statt U bezeichnet.
18.3 Transistor-Grundschaltungen
371
mit t2 < t2′ < t3 , zu dem der mit dem Einschalten verbundene Ladungsausgleich erfolgt ist, ergeben sich die Spannungen aus der Ladungsbilanz U1 (t1 ) C1 + Cg1 + U2 (t1 ) C2 + Cg2 − Us0 Cg1 + Cg2 = U1 (t2′ ) C1 + Cg1 + U2 (t2′ ) C2 + Cg2 − Us1 Cg1 + Cg2 Z t2′ I(t) dt , + QC −
(18.10)
t1
mit der Ladung QC der Inversionsschicht, die den Kanal bildet [122, S. 159], gegeben durch p ′ QC = −W LCox UGB − UFB − 2ΦF − USB − γ 2ΦF + USB ,
(18.11)
mit UGB = Us1 und USB = U1 (t2′ ) = U2 (t2′ ). Neben den bereits verwendeten Größen sind darin W und L die Weite und Länge des Transistors und UFB seine Flachbandspannung [122, S. 148 ff]. ′ W LCox kann zur Gate-Oxid-Kapazität Cox zusamengefaßt werden. Auflösen nach der gemeinsamen Spannung der Knoten (1) und (2) nach dem Einschalten ergibt:
U1 (t2′ ) = U2 (t2′ ) = U1,2 (t2′ ) Rt ′ U1 (t1 ) C1 + Cg1 + U2 (t1 ) C2 + Cg2 + t12 I(t) dt = (1 + m) + ∆Uon . C1 + C2 + Cg1 + Cg2 (18.12) Das Ergebnis weicht vom Wert mit einem idealen Schalter um den Verstärkungsfehler m=
Cox C1 + C2 + Cg1 + Cg2
(18.13)
und um die durch Ladungsinjektion beim Einschalten erzeugte Fehlspannung (Us1 − Us0 )(Cg1 + Cg2 ) + Cox (Us1 + UFB − 2ΦF ) CΣ s 2 2 2 γ 2Φ 2 γ 2 /2 2 Q2B − 2Cox Cox γ /2 QB CΣ + Cox F + − + 2 2 2 CΣ CΣ CΣ
∆Uon =
(18.14)
ab. Dabei wurden QB und CΣ als Abkürzungen für die von U1,2 (t2′ ) unabhängigen Teile der Ladungsbilanz
372
18 Anhang
QB = U1 (t1 ) C1 + Cg1 + U2 (t1 ) C2 + Cg2 + Us1 − Us0 Cg1 + Cg2 Z t2′ (18.15) I(t) dt + Cox Us1 − UFB − 2ΦF − t1
und die Summe der in der Schaltung auftretenden Kapazitäten CΣ = Cox + C1 + C2 + Cg1 + Cg2
(18.16)
verwendet. Für eine überschlägige Abschätzung kann angenommen werden, daß bei der praktischen Anwendung die Ladungsinjektion gegenüber den beabsichtigten Ladungsänderungen auf C1 und C2 klein ist und daß Cg1 ≈ Cg2 ≪ C1 und Cg1 ≈ Cg2 ≪ C2 gelten und die während des Schaltvorganges aus der Rt ′ Stromquelle3 entnommene Ladung t12 I(t) dt vernachlässigbar ist. Bei vollständiger Vernachlässigung des Kanals des Schalttransistors (Cox ≈ 0, QC ≈ 0) ergäbe sich die Spannung zum Zeitpunkt t2′ durch einfachen Ladungsausgleich: ′ U1,2 (t2′ ) =
U1 C1 + U2 C2 . C1 + C2
(18.17)
Durch den Schalttransistor kommt es zu einer kleinen Abweichung von dieser Spannung. Die Kanalladung und die Umladung der Parasitär- und Over′ lapkapazitäten können deshalb aus U1,2 (t2′ ) bestimmt werden: q ′ ′ ′ (t ′ ) QC ≈ Q′C = −W LCox Us1 − UFB − 2ΦF − U1,2 (t2′ ) − γ 2ΦF + U1,2 2 (18.18) Insgesamt ergibt sich die Abweichung gegenüber dem Einschalten mit einem idealen Schalter näherungsweise zu: ∆Uon ≈
Q′C + (Us1 − Us0 )(Cg1 + Cg2 ) . C1 + C2
(18.19)
Bis zum Ausschalten zum Zeitpunkt t3 sind die Spannungen U1 und U2 gleich und haben den Wert U1,2 (t3 ) erreicht. Nach dem Ausschalten soll U2 diesen Wert beibehalten U2 (t > t4 ) ≈ U1,2 (t3 ). Auch die während des Abschaltens aus der Stromquelle entnommene Ladung Z t4
Q34 =
I(t′ ) dt′
t3
3
aus dem mit dem Knoten (1) verbundenen Anschluß der Stromquelle
(18.20)
18.3 Transistor-Grundschaltungen
373
trägt zur Abweichung bei. Jedoch werden in der praktischen Anwendung der Verlauf von I(t) und die Dauer des Abschaltvorganges t4 − t3 so gewählt, daß dieser Anteil vernachlässigbar ist. Die Ladungsinjektion kann dagegen nicht vernachlässigt werden. Die Kanalladung QC wird auf die Knoten (1) und (2) verteilt und verursacht dort eine Spannungsänderung. Auch die Overlap- und Parasitär-Kapazitäten werden umgeladen und tragen zur Spannungsänderung bei. Beim schnellen Umschalten mit vernachlässigbar kurzer Dauer t4 − t3 ≈ 0 teilt sich die Kanalladung zu gleichen Teilen auf die Knoten (1) und (2) auf, und zur Injektion in Knoten (2) tragen die weiteren Kapazitäten am Knoten (1) nicht bei. Aus der Ladungsbilanz QC U2 (t3 ) C2 + Cg2 − Us1 Cg2 + = U2 (t4 ) C2 + Cg2 − Us0 Cg2 2
(18.21)
ergibt sich die Spannung am Knoten (2) nach dem Abschalten zu U2 (t4 ) = U2 (t3 ) + ∆Uoff ,
(18.22)
die vom idealen Wert U2 (t4 ) = U2 (t3 ) um ∆Uoff
Us0 − Us1 Cg2 + QC /2 = C2 + Cg2
(18.23)
abweicht. Die Kanalladung QC ergibt sich wieder aus (18.11) mit UGB = Us1 und USB = U2 (t3 ) = U1 (t3 ). Beim langsamen Ausschalten (jedoch noch immer so schnell, daß Q34 aus (18.20) vernachlässigbar bleibt) bleibt der Kanal bestehen, bis Us die Schwellspannung Ut des Transistors unterschreitet. Die Kanalladung teilt sich dabei entsprechend dem Verhältnis der an den Knoten (1) und (2) angeschlossenen Kapazitäten auf. Zu einem Zeitpunkt t′4 , mit t3 < t′4 < t4 , unterschreitet die Gate-Source-Spannung UGS = Us − U1 = Us − U2 des Transistors die Schwellspannung Ut . Zu einer exakten Betrachtung müsste U2 (t′4 ) 6= U2 (t3 ) und damit Ut (t′4 ) 6= Ut (t3 ) berücksichtigt werden, um t′4 und Ut (t′4 ) zu bestimmen. In der praktischen Anwendung ist jedoch in den meisten Fällen die Spannungsänderung durch Ladungsinjektion deutlich kleiner als der Aussteuerbereich des Signales U2 . Deshalb wird hier eine unveränderte Schwellspannung Ut (t′4 ) = Ut (t3 ) angenommen. Sie ergibt sich aus (18.7) mit USB = U2 (t3 ) = U1 (t3 ) zu q p 2ΦF + U1,2 (t3 ) − 2ΦF . (18.24) Ut = Ut0 + γ Anschließend sinkt Us weiter ab, und zur weiteren Spannungsänderung am Knoten (2) trägt nur noch die Ladungsinjektion über die Kapazität Cg2 bei. Für beide Abschnitte des Abschaltvorganges wird wieder die Spannungsänderung aus der Ladungsbilanz ermittelt. Sie lautet für den ersten Abschnitt:
374
18 Anhang
U1,2 (t3 ) C1 + C2 + Cg1 + Cg2 − Us1 Cg1 + Cg2 + QC = U1,2 (t′4 ) C1 + C2 + Cg1 + Cg2 − U1,2 (t′4 ) + Ut (t3 ) Cg1 + Cg2 , (18.25) und für den zweiten Abschnitt: U2 (t′4 ) C2 + Cg2 − U1,2 (t′4 ) + Ut (t3 ) Cg2 = U2 (t4 ) C2 + Cg2 − Us0 Cg2 . (18.26) Auflösen nach U2 (t4 ) ergibt: U2 (t4 ) = U1,2 (t3 ) 1 + m + ∆Uoff . (18.27) Das Ergebnis weicht vom idealen Wert U1,2 um den Verstärkungsfehler m=
C1 + C2 + Cg1 + Cg2 C2 −1 C1 + C2 C2 + Cg2
(18.28)
und die Fehlspannung ∆Uoff
Ut (t3 ) − Us1 Cg1 + Cg2 + QC C2 = C2 + Cg2 C1 + C2 Cg2 Us0 − Ut (t3 ) (18.29) + C2 + Cg2
ab. Zur weiteren Vereinfachung kann oft noch Cg2 gegenüber C2 vernachlässigt werden. Matching Transistoren, die gleich entworfen, aber unterschiedlich plaziert wurden, weichen in ihrem tatsächlichen elektrischen Verhalten von einander ab. Dieser Effekt wird als Mismatch bezeichnet. Maßnahmen zu seiner Verminderung sowie die damit angestrebte geringere Abweichung bestimmter elektrischer Parameter werden Matching genannt. Mismatch geht auf verschiedene Ursachen zurück. Die Eigenschaften der physikalischen Prozesse bei der Herstellung, die z.B. Schichtdicken und Dotierungsprofile bestimmen, sind nicht an jedem Ort des Wafers gleich und unterscheiden sich auch von Wafer zu Wafer. Abweichungen des gleichen Bauelementes auf verschiedenen Exemplaren des Chips gehen darauf zurück. Sie werden als globales Mismatch bezeichnet. Auch weit voneinander entfernt angeordnete ansonsten gleiche Bauelemente auf demselben Chip können große Abweichungen untereinander haben, die ebenfalls dem globalen Mismatch zugerechnet werden. Zur Unterdrückung der Auswirkungen des globalen Mismatch ist eine Reihe von schaltungstechnischen Maßnahmen bekannt, durch die beispielsweise Arbeitspunkte, Verstärkungsfaktoren usw. eine nur geringe Empfindlichkeit
18.3 Transistor-Grundschaltungen
375
gegenüber den elektrischen Parametern der Bauelemente haben. Sie wurden ohne ausdrückliche Erwähnung im vorliegenden Entwurf angewendet. Die eben genannten Maßnahmen und einige weitere Schaltungen beruhen auf der idealisierenden Annahme, daß zumindest einige (meist zwei, mitunter mehr) eng benachbarte, gleich entworfene Bauelemente gleiche elektrische Parameter erfahren. Jedoch haben die Herstellungsprozesse stochastische Eigenschaften z.B. gegeben durch die Bewegung der Gasmoleküle bei der Ionenimplantation zur Dotierung oder bei der Abscheidung des Gate-Oxids aus der Gasphase. Jedes Bauelement ist deshalb eine Realisierung eines Satzes von zufälligen Parametern. Deren Erwartungswerte sollten gleich den vom Entwerfer bestimmten Sollwerten sein. Tatsächlich schwanken mit dem globalen Mismatch die Verteilungen und mit ihnen ihre Erwartungswerte um die Sollwerte. Bei gleich entworfenen Bauelementen in enger Nachbarschaft sind aber die Verteilungen der Parameter und deren Erwartungswerte nahezu gleich. Zwischen den Bauelementen besteht eine zufällige Abweichung. Für den Entwerfer sind die Verteilungen der elektrischen Parameter interessant. Diesen liegen zufällige physikalische Parameter wie z.B. die Dicke des Gate-Oxids tox , die Ladungsträgerbeweglichkeit µ oder die Dotierungsdichte ND bzw. NA zugrunde. Die elektrischen Parameter hängen meist von mehreren physikalischen Parametern ab, und von den meisten physikalischen Parametern hängen jeweils mehrere elektrische Parameter ab. Letztere sind deshalb untereinander statistisch abhängig und können in vielen Fällen als normalverteilt angenommen werden [123, 124]. Trotz der vielfältigen Abhängigkeiten wird das Mismatch der elektrischen Parameter häufig durch die als statistisch unabhängig angenommenen Parameter Schwellspannung und Stromkonstante β der MOS-Transistoren modelliert. Beide werden als normalverteilt um die Nominalwerte angenommen. Die Standardabweichung nimmt mit steigender Gate-Fläche und bei kurzen Transistoren, d.h. etwa unterhalb der doppelten Minimallänge, auch von der Länge ab. Bei Transistoren mit einer Länge, die größer als etwa die doppelte minimale Länge ist, geht der größte Teil der Abweichung des tatsächlichen Drainstromes von seinem Nominalwert auf die Abweichung der Schwellspannung zurück. So war während der Entwicklung der vorliegenden integrierten Schaltung nur diese charakterisiert. Ihre Varianz ist von der Gate-Fläche und der Länge des aktiven Gebietes abhängig. Effekte, die am Rand, d.h. entlang des Umfangs des Gates auftreten, sind dabei nicht berücksichtigt. Um diese gegenüber den modellierten flächenabhängigen Effekten gering zu halten, gestaltet man Transistoren mit geringem Mismatch möglichst quadratisch, soweit dies die übrigen Anforderungen an den Entwurf zulassen.
376
18 Anhang
18.4 Optische Generation Stefan Henker
Die Bestrahlungsstärke E ist ein Maß für die pro Fläche auftreffende Strahlungsleistung. Durch Bezug auf die Wellenlänge λ der Strahlung erhält man die in W m−2 nm−1 gemessene spektrale Bestrahlungsstärke E λ . Die spektrale Photonenflußdichte Π λ in m−2 s−1 nm−1 wird daraus abgeleitet als die Anzahl der Photonen pro Fläche, Zeit und Wellenlänge. Zwischen der Bestrahlungsstärke E λ und der Photonenflußdichte Π λ besteht folgender Zusammenhang: Πλ =
1 λ · Eλ = · Eλ , h·f h·c
(18.30)
mit dem Planckschen Wirkungsquantum h, der Geschwindigkeit c und Frequenz f des Lichtes. Trifft eine elektromagnetische Strahlung auf einen Festkörper, so wird ein Teil der Strahlung an der Oberfläche reflektiert und ein weiterer Teil absorbiert. Der verbliebene Anteil wird transmittiert. Die Absorption des Photonenflusses an einem Ort x im Festkörper ist proportional zur dort vorhandenen Photonenflußdichte Π λ . Die Funktion der Photonenflußdichte über der Wellenlänge sei mit π(λ) definiert, die ortsabhängige Photonenflußdichte mit π(λ, x). Die Absorption im Festkörper wird durch das Lambert-Beersche Gesetz beschrieben. Im eindimensionalen Fall eines zur Oberfläche senkrechten Strahlungseinfalls gilt: π(λ, x) = π(λ, 0) · e−β(λ)·x .
(18.31)
Der Ausdruck π(λ, 0) stellt dabei die Photonenflußdichte an der Oberfläche des Festkörpers abzüglich des reflektierten Anteils dar. Die Absorption erfolgt für Photonen unterschiedlicher Wellenlängen unterschiedlich stark. Dies wird durch den materialabhängigen Absorptionskoeffizienten β(λ) beschrieben (Abbildung 18.7). Der Abstand β(λ)−1 wird dabei als Eindringtiefe bezeichnet, da für x = β(λ)−1 die Photonenflußdichte der Wellenlänge λ um den Faktor e−1 absinkt. Die Eindringtiefe wächst allgemein mit der Wellenlänge des Lichtes. Photonen mit hoher Energie (geringer Wellenlänge) werden oberflächennah absorbiert, während Photonen mit größeren Wellenlängen tiefer in den Halbleiters eindringen und somit über größere räumliche Bereiche absorbiert werden. Das Absorptionsverhalten ist weiterhin stark vom bestrahlten Material abhängig. Metalle absorbieren Photonen innerhalb eines großen Wellenlängenbereiches, da zahlreiche Elektronen im Leitungsband vorhanden sind, die durch die Wechselwirkung mit den Photonen auf nahezu beliebige höhere Energieniveaus angehoben werden und den Festkörper z.T. auch verlassen können. In Halbleitern sind jedoch nur wenige freie Ladungsträger in den Bändern vorhanden. Hier werden Photonen überwiegend dadurch absorbiert,
18.4 Optische Generation
Absorptionskoeffizient b(l) [cm-1]
106
3.0
2.0
Photonenenergie h·c/l [eV] 1.5 1.0
377 0.7
Ge 105
Ga3In7As64P36 InGaAs
GaAs
104
InP 103
GaP Si
102
Amorphes Si 10 0.2
0.4
0.6
0.8
1.0 1.2 Wellenlänge l [mm]
1.4
1.6
1.8
Abb. 18.7 Verlauf der Absorptionskoeffizienten über die Wellenlänge für verschiedene Materialien daß durch optische Generation, oder Photogeneration, zusätzliche ElektronLoch-Paare generiert werden. Das einfallende Photon muß zur Generierung von Ladungsträgern im intrinsischen Halbleiter eine Energie h · f besitzen, die größer als der Bandabstand ∆W des Materials ist, ansonsten transmittiert es fast ungehindert durch das Material. Im dotierten Halbleiter existiert zusätzlich die Möglichkeit, daß ein Elektron die geringere Energiedifferenz zwischen Leitungsbandkante und Donatorniveau überwindet. In allen Fallen ergibt sich eine maximale Wellenlänge, die zur Photogeneration beiträgt: h·c . (18.32) ∆W Jedoch führt nicht jedes absorbierte Photon zu einem Elektron-Loch-Paar. So können Photonen mit zu großer Energie und damit geringer Eindringtiefe direkt an der Oberfläche absorbiert werden, wo sie aufgrund von Oberflächenzuständen, die als Rekombinationszentren wirken, sofort wieder rekombinieren. Aus diesem Grund existiert auch eine untere Grenzwellenlänge der Photogeneration. In Halbleitern werden in geringem Maße auch Photonen mit geringerer Energie als der Bandabstand absorbiert. Diese tragen jedoch nicht zur Photogeneration bei, sondern heben wie in Metallen jeweils eines der wenigen freien Elektronen auf ein höheres Energieniveau. Beim Rückfall auf ein niedrigeres Niveau wird die Differenzenergie in Form von Gitterschwingungen als Wärmeenergie abgegeben. Die Zahl der generierten Ladungsträgerpaare bezogen auf die Zahl der absorbierten Photonen wird als spektraler Quantenwirkungsgrad ηq (λ) bezeichnet, der maximal den Wert 1 erreichen kann. Die spektrale optische Generationsrate G(λ, x) ergibt sich durch Differentiation der spektralen Photonenflußdichte nach x unter Berücksichtigung des Quanλmax =
378
18 Anhang
tenwirkungsgrades zu: G(λ, x) = −ηq (λ) ·
δ π(λ, x) = ηq (λ) · π(λ, 0) · β(λ) · e−β(λ)·x . δx
(18.33)
Die Fotogeneration hängt somit von materialabhängigen Koeffizienten, von der Tiefe x im Halbleiter sowie von der Dichte der einfallenden Photonen und deren Wellenlänge ab. Für kristallines Silizium ergibt sich beispielsweise ein Bereich der einfallenden Strahlung von etwa 300 nm bis 1200 nm, in dem eine nennenswerte Photogeneration stattfindet. Die Anzahl der freien Ladungsträger eines Halbleiters befindet sich jedoch im Gleichgewicht. Mit der Rekombination existiert ein Mechanismus, welcher der Ladungsträgergeneration entgegenwirkt. Die Rekombinationsrate ist dabei proportional zur Anzahl der freien Ladungsträger. In einem bestrahlten Halbleiter rekombinieren die photogenerierten Ladungsträger und geben dabei je nach Rekombinationsmechanismus Strahlung oder Wärmeenergie an das Gitter ab. Eine Messung der Lichtintensität ist somit allein durch die optische Generation nicht möglich. Zur technischen Nutzung der Photogeneration, wie beispielsweise zur photovoltaischen Energieerzeugung oder zur Detektion von Strahlung, müssen die generierten Elektronen-Loch-Paare getrennt werden, um deren Rekombination zu verhindern. Zur Trennung von Ladungsträgern ist ein elektrisches Feld geeignet. Dies kann durch Anlegen einer externen elektrischen Spannung oder durch Erzeugung einer Raumladungszone geschehen.
Literaturverzeichnis
[1] [2]
[3]
[4]
[5]
[6]
[7]
[8] [9] [10]
[11] [12] [13]
Cronin, J.: Mathematical aspects of Hodgkin-Huxley neural theory. New York, NY, USA : Cambridge University Press, 1987. – ISBN 0521334829 Jones, J.P. ; Palmer, L.A.: An Evaluation of the Two-Dimensional Gabor Filter Model of Receptive Fields in Cat Striate Cortex. In: Journal of Neurophysiology (1987), 12, S. 1233–1258 Jones, J. P. ; Stepnoski, A. ; Palmer, L. A.: The two-dimensional spectral structure of simple receptive fields in cat striate cortex. In: Journal of Neurophysiology (1987), 12, S. 1212–1232 Jones, J.P. ; Palmer, L.A.: The two-dimensional spatial structure of simple receptive fields in cat striate cortex. In: Journal of Neurophysiology (1987), 12, S. 1187–1211 Malsburg, C. von d.: Zelle, Gehirn, Computer, und was sie sich zu erzählen haben. In: Festvortrag zur Verleihung der Ehrenbürgerwürde der RuhrUniversität Bochum an Manfred Eigen. (2001), 12 Malsburg, C. von d.: Self-organization in the brain. In: Arbib, M. (Hrsg.): The Handbook of Brain Theory and Neural Networks, 2nd Edition. The MIT Press, 2002, S. 1002–1005 Baddeley, R. ; Abbott, L.F. ; Booth, M.C. ; Sengpiel, F. ; Freeman, T. ; Wakeman, E.A. ; Rolls, E.T.: Responses of neurons in primary and inferior temporal visual cortices to natural scenes. In: Proc. R. Soc. Lond. B,264 (1997), S. 1775–1783 Triesch, J.: Synergies between intrinsic and synaptic plasticity mechanisms. In: Neur. Comp., 19 (2007), S. 885–909 Laughlin, S.B. ; Sejnowski, T.J.: Communication in neuronal networks. In: Science 301 (2003), S. 1870–1874 Hodgkin, A. L. ; Huxley, A. F.: A quantitative description of ion currents and its applications to conduction and excitation in nerve membranes. In: Journal of Physiology 117 (1952), August, Nr. 4, S. 500–544 McCulloch, W.S. ; Pitts, W.: A logical calculus of ideas immanent in nervous activity. In: Bull. Math. Biophys. 5 (1943), S. 115–133 Steinbuch, K.: Die Lernmatrix. In: Kybernetik 1, Heft 1 (1961), S. 36–45 Hopfield, J.J.: Neural networks and physical systems with emergent collective computational abilities. In: PNAS 79 (1982), S. 2554–2558
380
Literaturverzeichnis
[14] Palm, G.: On Associative Memory. In: Biological Cybernetics 36 (1980), S. 19–31 [15] Rosenblatt, F.: Principles of Neurodynamics: Perceptrons and the Theory of Brain Mechanisms. Washington, D.C. : Spartan Books, 1961 [16] Rumelhart, D.E. ; Hinton, G.E ; Williams, R.J.: Learning Internal Representations by Error Propagation. In: Rumelhart, D.E. (Hrsg.) ; McClelland, J.L. (Hrsg.): Parallel Distributed Processing: Explorations in the Microstructures of Cognition, Vol. I. Cambridge, MA : MIT Press, 1986, S. 318–362 [17] Bishop, C.: Neural Networks for Pattern Recognition. Oxford: University Press, 1995 [18] Zell, A.: Simulation neuronaler Netze. Addison-Wesley, 1994. – ISBN 3– 89319–554–8 [19] Haykin, S.: Neural Networks. Macmillan College Publishing Company Inc., 1994. – ISBN 0023527617 [20] Geman, Stuart ; Bienenstock, Elie ; Doursat, René: Neural Networks and the Bias/Variance Dilemma. In: Neural Computation 4 (1992), S. 1–58 [21] Malsburg, C. von d.: The Correlation Theory of Brain Function. In: Domany, E. (Hrsg.) ; Hemmen, J.L. van (Hrsg.) ; Schulten, K. (Hrsg.): Models of Neural networks II. Springer, Berlin, 1994, Kapitel 2, S. 95–119 [22] Müller, B.: Sturm auf das Gehirn. In: Bild der Wissenschaft (1993), Feb., S. 102–104 [23] Deco, G. ; Schürmann, B.: Information Dynamics: Foundations and Applications. Springer, 2001. – ISBN 0–387–95047–8 [24] Gerstner, Wulfram ; Kistler, Werner: Spiking Neuron Models: An Introduction. New York, NY, USA : Cambridge University Press, 2002. – ISBN 0521890799 [25] Singer, W.: Binding by synchrony. In: Scholarpedia, 2(12):1657 (2007) [26] Phillips, P.J. ; Scruggs, W.T. ; O’Toole, A.J. ; Flynn, P.J. ; Bowyer, K.W. ; Schott, C.L. ; Sharpe, M.: FRVT 2006 and ICE 2006 Large-Scale Results / National Institute of Standards and Technology. March 2007 (NISTIR 7408). – Forschungsbericht [27] Daugman, J.: Complete Discrete 2-D Gabor Transforms by Neural Networks for Image Analysis and Compression. In: IEEE Transactions on Acoustics, Speech and Signal Processing (1988), Nr. 7, S. 1169–1179 [28] Jones, J.P. ; Palmer, L.A.: An Evaluation of the Two-Dimensional Gabor Filter Model of Receptive Fields in Cat Striate Cortex. In: Journal of Neurophysiology (1987), 12, S. 1233–1258 [29] Fellemann, D.J. ; Essen, D.C. V.: Distributed Hierarchical Processing in the Primate Cerebral Cortex. In: Cerebral Cortex 1 (1991), Nr. 1. – Overview over anatomical knowledge of visual cortex [30] Rolls, E.T.: Neurophysiological mechanisms underlying face processing within and beyond the temporal cortical visual areas. In: Philosophical Transactions of the Royal Society of London, Series B: Biological Sciences 335 (1992), S. 11–21 [31] Singer, W.: Neuronal Synchrony: A Versatile Code for the Definition of Relations? In: Neuron 24 (1999), S. 49–65 [32] Shadlen, M.N. ; Movshon, J.A.: Synchrony Unbound: A Critical Evalutation of the Temporal Binding Hypothesis. In: Neuron 24 (1999), S. 67–77
Literaturverzeichnis
381
[33] Malsburg, C. von d. ; Schneider, W.: A Neural Cocktail-Party Processor. In: Biological Cybernetics 54 (1986), S. 29–40 [34] Sporns, O. ; Tononi, G. ; Edelman, G.M.: Modeling Perceptual Grouping and Figure-Ground Segregation by Means of Active Re-entrant Connections. In: PNAS 88 (1991), S. 129–133 [35] Malsburg, C. von d. ; Buhmann, J.: Sensory Segmentation with Coupled Neural Oscillators. In: Biological Cybernetics 67 (1992), S. 233–242 [36] Wang, DeLiang ; Buhmann, J. ; Malsburg, C. von d.: Pattern Segmentation in Associative Memory. In: Neural Computation 2 (1990), S. 94–106 [37] Fukushima, K.: Neocognitron: A Self-Organizing Neural Network Model for a Mechanism of Pattern Recognition Unaffected by a Shift in Position. In: Biological Cybernetics 36 (1980), S. 193–202 [38] Serre, T. ; Wolf, L. ; Bileschi, S. ; Riesenhuber, M. ; Poggio, T.: Robust Object Recognition with Cortex-like Mechanisms. In: IEEE Transactions on Pattern Analysis and Machine Intelligence 29 (2007), Nr. 3, S. 411–426 [39] Koch, Christof: Biophysics of Computation: Information Processing in Single Neurons (Computational Neuroscience). Oxford University Press, USA, 2004. – ISBN 0195181999 [40] Nicholls, J.G. ; Martin, A.R. ; Wallace, B.G. ; Fuchs, P.A.: From Neuron to Brain: A Cellular and Molecular Approach to the Function of the Nervous System. 4. Oxford University Press, 1999. – ISBN 0–19–510491–9 [41] Johnston, D. ; Wu, S.M.-S.: Foundations of Cellular Neurophysiology. The MIT Press, 1994. – ISBN 0262100533 [42] Heittmann, A. ; Ramacher, U.: Correlation-based feature detection using pulsed neural networks. In: IEEE 13th Workshop on Neural Networks for Signal Processing, NNSP, 2003, S. 479–488 [43] Heittmann, A. ; Ramacher, U.: Pulsed Neural networks for Feature Detection Using Dynamic Synapses. In: Fourth International ICSC Symposium on Engineering of Intelligen Systems (EIS), 2004 [44] Landau, L.D. ; Lifshitz, L.M.: Mechanics. Elsevier Science & Technology, 1975 [45] Dayan, P. ; Abbott, L.F.: Theoretical Neuroscience. MIT Press, 2001 [46] Maffei, L. ; Fiorentini, A.: The unresponsive regions of visual cortical receptive fields. In: Vision Res. 16 (1976), S. 1131–1139 [47] Jones, J.P. ; Palmer, L.A.: An Evaluation of the Two-Dimensional Gabor Filter Model of Receptive Fields in Cat Striate Cortex. In: Journal of Neurophysiology (1987), 12, S. 1233–1258 [48] Jones, J. P. ; Stepnoski, A. ; Palmer, L. A.: The two-dimensional spectral structure of simple receptive fields in cat striate cortex. In: Journal of Neurophysiology (1987), 12, S. 1212–1232 [49] Jones, J.P. ; Palmer, L.A.: The two-dimensional spatial structure of simple receptive fields in cat striate cortex. In: Journal of Neurophysiology (1987), 12, S. 1187–1211 [50] Lücke, Jörg: Information Processing and Learning in Networks of Cortical Columns. Shaker Verlag, 2005. – Dissertation [51] Thorpe, S.: Identification of rapidly presented images by the human visual system. In: Perception 17(A77) (1988). – basic level object classifications can be made in 100 msec
382
Literaturverzeichnis
[52] Bi, G. ; Poo, M.: Synaptic modifications in cultured hippocampal neurons: dependence on spike timing, synaptic strength, and postsynaptic cell type. In: Journal of Neuroscience 18 (1998), S. 1464–1472 [53] Wolpert, D.H. ; Macready, W.G.: No free lunch theorems for optimization. In: IEEE Transactions on Evolutionary Computation 1 (1997), Nr. 1, S. 67–82 [54] Jacobs, R.A. ; Jordan, M.I. ; Nowlan, S.J. ; Hinton, G.E.: Adaptive Mixtures of Local Experts. In: Neural Computation 3 (1991), S. 79–87 [55] Carpenter, Gail A. ; Grossberg, Stephen: The ART of Adaptive Pattern Recognition by a Self-Organizing Neural Network. In: Computer 21 (1988), Nr. 3, S. 77–88. – ISSN 0018–9162 [56] Desimone, R. ; Duncan, J.: Neural mechanisms of selective visual attention. In: Annual Review of Neuroscience 18 (1995), S. 193–222 [57] Vidal, Juan R. ; Chaumon, Maximilien ; O’Regan, J. K. ; Tallon-Baudry, Catherine: Visual Grouping and the Focusing of Attention Induce Gammaband Oscillations at Different Frequencies in Human Magnetoencephalogram Signals. In: J. Cognitive Neuroscience 18 (2006), Nr. 11, S. 1850–1862. – ISSN 0898–929X [58] J.A.Feldman: Dynamic connections in neural networks. In: Biol. Cybern. 46 (1982), S. 27–39 [59] Malsburg, C. von d.: Dynamic Link Architecture. In: Arbib, M. (Hrsg.): The Handbook of Brain Theory and Neural Networks, 2nd Edition. The MIT Press, 2002, S. 365–368 [60] Olshausen, B. ; Anderson, C. ; Essen, C. van: A eurobiological model of visual attention and invariant recognition based on dynamic routing of information. In: The Journal of Neuroscience 13 (1993), Nr. 11, S. 4700–4719 [61] Jitsev, J. ; Sato, Y.D. ; Malsburg, C. von d.: A Neural System For Scale and Orientation Invariant Correspondence Finding. In: Proc. COSYNE (2008) [62] Wolfrum, P. ; Wolff, C. ; Lücke, J. ; Malsburg, C. von d.: A Recurrent Dynamic Model for Correspondence-Based Face Recognition. In: Journal of Vision. – in press [63] Wiskott, L. ; Malsburg, C. von d.: Face Recognition by Dynamic Link Matching. In: Sirosh, J. (Hrsg.) ; Miikkulainen, R. (Hrsg.) ; Choe, Y. (Hrsg.): Lateral Interactions in the Cortex: Structure and Function. WorldWideWeb, 1995, Kapitel 4. – ISBN 0-9647060-0-8 [64] Bergmann, U. ; Malsburg, C. von d.: Ontogenesis of Invariance Transformations. In: Computational and Systems Neuroscience (Cosyne), 2008 [65] Biederman, I. ; Kalocsai, P.: Neurocomputational Bases of Object and Face Recognition. In: Phil. Trans. Roy. Soc.: Biological Sciences 352 (1997), S. 1203–1219 [66] Biederman, I.: Recognition-by-Components: A Theory of Human Image Understanding. In: Psychological Review 94 (1987), S. 115–147. – basic level object classifications can be made in 100 msec [67] Gibson, James J.: The Perception of the Visual World. Cambridge, MA : The Riverside Press, 1950 [68] Ungerleider, L.G. ; Mishkin, M.: Two Cortical Visual Systems. In: Analysis of Visual Behavior. Cambridge, MA : MIT Press, 1982, S. 549–586 [69] Buhmann, Joachim M. ; Lange, Tilman ; Ramacher, Ulrich: Image Segmentation by Networks of Spiking Neurons. In: Neural Computation 17 (2005), Nr. 5, S. 1010–1031
Literaturverzeichnis
383
[70] Hodgkin, A. L. ; Huxley, A. F.: A quantitative description of ion currents and its applications to conduction and excitation in nerve membranes. In: Journal of Physiology 117 (1952), August, Nr. 4, S. 500–544 [71] Heittmann, Arne ; Matolin, Daniel ; Schreiter, Jörg ; Schüffny, René ; Ramacher, Ulrich: An Analog VLSI Pulsed Neural Network for Image Segmentation using Adaptive Connection Weights. In: International Conference on Artificial Neural Networks, 2002 [72] Schreiter, Jörg ; Ramacher, Ulrich ; Heittmann, Arne ; Matolin, Daniel ; Schüffny, René: Analog Implementation for Networks of Integrate-and-Fire Neurons with Adaptive Local Connectivity. In: IEEE International Workshop on Neural Networks for Signal Processing. Martigny, Switzerland, 2002, S. 657–666 [73] Schreiter, Jörg ; Döge, Jens ; Matolin, Daniel ; Schüffny, René ; Heittmann, Arne ; Ramacher, Ulrich: Image Segmentation by a PCNN with Adaptive Weights. In: Visualization, Imaging, and Image Processing - VIIP 2003. Benalmádena, Spain, 2003 [74] Maass, Wolfgang ; Natschläger, Thomas ; Markram, Henry: Real-time Computing without Stable States: A New Framework for Neural Computation Based on Perturbations. In: Neural Computation 14 (2002), Nr. 11, S. 2531– 2560 [75] Shepherd, G.M. (Hrsg.): The Synaptic Organization of the Brain. 4. New York : Oxford University Press, 2004 [76] Eckhorn, R.: Neural mechanisms of scene segmentation: recordings from the visual cortex suggest basic circuits for linking field models. In: Neural Networks, IEEE Transactions on 10 (1999), May, Nr. 3, S. 464–479. – ISSN 1045–9227 [77] Freeman, Tobe C. ; Durand, Séverine ; Kiper, Daniel C. ; Carandini, Matteo: Suppression without Inhibition in Visual Cortex. In: Neuron 35 (2002), August, Nr. 4, S. 759–771 [78] Vittoz, Eric A.: Handbook of Neural Computation. Oxford University Press, 1997 [79] Möschwitzer, A.: Grundlagen der Halbleiter- und Mikroelektronik. Carl Hanser Verlag, 1992 [80] Chouikha, M.B. ; Lu, G.N. ; Sedjil, M. ; Sou, G. ; G., Alquie: Buried Triple p-n Junction Structure in a BiCMOS Technology for Color Detection. In: Proc. of the Bipolar/BiCMOS Circuits and Technology Meeting, 1997, S. 108–111 [81] Herzog, P.G. ; Knipp, D. ; Stiebig, H. ; König, F.: Characterization of novel three and six channel color moire free sensors. In: SPIE 3648 (1999), Januar, S. 48–59 [82] Henker, S. ; Schlüßler, J.-U. ; Schüffny, R.: Algorithmic Infrared Correction for CMOS Color Sensors. In: 8th Microoptics Conference. Osaka, Japan, 0 2002 [83] Wyszecki, W.S. G. S. G. Stiles: Color Science: Concepts and Methods, Quantitative Data and Formula. 2. New York : John Wiley & Sons, New York, Inc., 1982 [84] Henker, Stephan ; Schlüßler, Jens-Uwe ; Schüffny, René: White Balancing with Multi-Channel CMOS Sensors. In: Proceedings Image and Vision Computing New Zealand 2005. University of Otago, Dunedin, Neuseeland, 0 2005
384
Literaturverzeichnis
[85] Doswald ; Haflinger ; Blessing ; Felber ; Niederer ; Fichtner: A 30-Frames/s Megapixel Real-Time CMOS Image Processor. In: IEEE Journal on Solid-State Ciruits 35 (2000), November, Nr. 11, S. 1732–1743 [86] Ramacher, U. ; Koren, I. ; Geib, H. ; Kirmser, S. ; Heer, C. ; Schlüßler, J.-U. ; Dohndorf, J. ; Werner, J.: Single-Chip Video Camera with Multiple Integrated Functions. In: Solid-State Circuits Conference ISSCC’99, 1999, S. 306–307 [87] Huppertz, J.: 2-D CMOS Bildsensorik mit integrierter Signalverarbeitung, Gerhard-Mercator-Universität - Gesamthochschule Duisburg, Diss., 2000 [88] Rullmann, M.: Entwurf und Implementierung von Algorithmen für die Korrektur von Bildfehlern bei CMOS-Sensoren, TU Dresden, Diplomarbeit, Januar 2003 [89] Fossum, E. R.: CMOS image sensors: Electronic camera-on-chip. In: IEEE Transactions on Electron Devices 44 (1997), Oktober, S. 1689–1698 [90] Fossum, E. R.: Active pixel sensors (APS) - Are CCDs dinosaurs? In: Proceedings SPIE 1900 (1992), S. 214 [91] Nakamura, J. ; Pain, B. ; Nomoto, T. ; Nakamura, T. ; Fossum, E. R.: On-Focal-Plane Signal Processing for Current-Mode Active Pixel Sensors. In: IEEE Transactions on Electron Devices 44 (1997), Oktober, S. 1747–1758 [92] Henson, W.K. ; Yang, N. ; Kubicek, S. ; Vogel, E.M. ; Wortman, J.J. ; De Mayer, K. ; Naem, A.: Analysis of Leakage Currents and Impact on Off-State Power Consumption for CMOS Technology in 100-nm Regime. In: IEEE Transactions on Electron Devices 47 (2000), Juli, Nr. 7, S. 1393–1400 [93] Henker, S. ; Mayr, C. ; Schlüßler, J.-U. ; Schüffny, R. ; Ramacher, U. ; Heittmann, A.: Active Pixel Sensor Arrays in 90/65nm CMOS-Technologies with vertically stacked photodiodes. In: International Image Sensor Workshop, IISW 2007, Ogunquit, USA (2007), 6 [94] Cypress Semiconductor Corporation (Hrsg.): IBIS4-6600 High resolution 6.6 M Pixel Rolling shutter CMOS Image sensor Datasheet. San Jose, CA.: Cypress Semiconductor Corporation, 2005 [95] Henker, S. ; Graupner, A. ; Getzlaff, S. ; Schreiter, J. ; Schüffny, R.: A New Hierarchical Simulator for Highly Parallel Analog Processor Arrays. In: Merker, R. (Hrsg.) ; Schwarz, W. (Hrsg.): System Design Automation Fundamentals, Principles, Methods, Examples. Kluwer Academic Publishers, 2000, S. 176–182 [96] Weidong Liu, et. a.: BSIM3v3.3.0 MOSFET Model- Users’ Manual. UC Berkeley: BSIM Research Group, Juli 2005 [97] Kundert, Kenneth S.: The Designer’s Guide to SPICE and SPECTRE. Kluwer Academic Publishers, 1995 [98] Enz, C. ; Krummenacher, F. ; Vittoz, E. A.: An Analytical MOS Transistor Model Valid in All Regions of Operation and Dedicated to Low-Power and LowCurrent Applications. In: Analog Integrated Circuits and Signal Processing 8 (1997), Juli, Nr. 1 [99] Petzold, Linda R. ; Brown, Peter N. ; Hindmarsh, Alan C. ; Ulrich, Clement W.: DASKR. – Dokumentierte Software [100] Hindmarsh, A. C. ; Brown, P. N. ; Grant, K. E. ; Lee, S. L. ; Serban, R. ; Shumaker, D. E. ; Woodward, C. S.: SUNDIALS: Suite of Nonlinear and Differential/Algebraic Equation Solvers. In: ACM Transactions on Mathematical Software 3 (2005), Nr. 31, S. 363–396
Literaturverzeichnis
385
[101] Ottmann, Thomas ; Widmayer, Peter: Algorithmen und Datenstrukturen. Bd. 4. Spectrum Akademie Verlag, Heidelberg, Berlin, 2002. – ISBN 3–8274– 1029–0 [102] Mayr, C. ; Eisenreich, H. ; Schreiter, J. ; Schüffny, R.: Pulse Capture and Distribution for Neural Pulse-based Computations. In: Dresdner Arbeitstagung Schaltungs- und Systementwurf 2006, 2006, S. 85–90 [103] Rullen, Rufin V. ; Thorpe, Simon J.: Rate Coding Versus Temporal Order Coding: What the Retinal Ganglion Cells Tell the Visual Cortex. In: Neural Computation 13 (2001), Nr. 6, S. 1255–1283 [104] Chipperfield, Andrew ; Fleming, Peter ; Pohlheim, Hartmut ; Fonseca, Carlos: Genetic Algorithm TOOLBOX For Use with MATLAB. 1996 [105] Riesenhuber, M. ; Poggio, T.: Hierarchical models of object recognition in cortex. In: Nature Neuroscience 2 (1999), November, Nr. 12, S. 1019–1025 [106] ITRS: International Technology Readmap for Semiconductors 2007 [107] Elmore, W.C.: The Transient Analysis of Damped Linear Networks with Particular Regard to Wideband Amplifiers. In: J. Applied Physics 19 (1948), Nr. 1, S. 787–790 [108] Kaiser, A.: Dreidimensionale Systemintegration: Technologische Entwicklung und Anwendung. University of Ulm, Cuvillier Verlag, Diss., 2007 [109] Bschorr, M. ; Pfleiderer, H.-J. ; Benkart, P. ; Kaiser, A. ; Munding, A. ; Kohn, E. ; Heittmann, A. ; Hübner, H. ; Ramacher, U.: Eine Test- und Ansteuerschaltung für eine neuartige 3D Verbindungstechnologie. In: Advances in Radio Science 3 (2005), S. 305–310 [110] Payne, C.C.: Silica sol composition for polishing silicon wafers. U.S. Patent No.4462188, 1984 [111] Mandle, R.M.: Process for preparing a polishing compound and product. U.S. Patent No.3298807, 1967 [112] Lärmer, F. ; Schilp, A.: Method of anisotropically etching silicon. U.S. Patent No.5501893, DE4241045, EP625285, 1992 [113] Park, Y.-B. ; Kang, J.-K. ; Rhee, S.-W.: Effect of N2 O/SiH4 ratio on the properties of low-temperature silicon oxide films from remote plasma chemical vapour deposition. In: Thin Solid Films 280 (1996), S. 43 [114] Stein, J.: Niedertemperatur-Deposition von Siliziumdioxid mittels RemotePECVD, RWTH Aachen, Diss., 1999 [115] Itsumi, M. ; Jr., R.M. O. (Hrsg.) ; Hull, R. (Hrsg.) ; Parisi, J. (Hrsg.): SiO2 in Si Microdevices. Springer, 2002 [116] Frenkel, J.: On Pre-Breakdown Phenomena in Insulators and Electronic Semiconductors. In: Physical Reviews 43 (1938), S. 647–648 [117] Beynon, J.: The electrical properties of anodically grown silicon dioxide films. In: Solid State Electronics 16 (1973), März, S. 309–314 [118] Wang, S.-Q. ; Suthar, S. ; Hoeflich, C. ; Burrow, B.J.: Diffusion barrier properties of TiW between Si and Cu. In: Journal of Applied Physics 73 (1993), S. 2301–2320 [119] Massalski, T.B. ; Murray, J.L. ; Bennet, L.H. ; Baker, H.: Binary Alloy Phase Diagrams. American Society for Metals, Metals Park, 1986 [120] Bartels, F. ; Jr., J.W. M.: Intermetallic Phase Formation in Thin SolidLiquid Diffusion Couples. In: Journal of Electronic Materials 23 (1994), S. 787–790
386
Literaturverzeichnis
[121] Hübner, H. ; Ehrmann, O. ; Eigner, M. ; Gruber, W. ; Merkel, R. ; Ramm, P. ; Roth, M. ; Weber, J. ; Wieland, R.: Face-to-Face chip Integration with Full Metal Interface. In: Proceedings Advanced Metallization Conference AMC 2002, 2002, S. 53–58 [122] Hoffmann, Kurt: From Transistor Design to Large Scale Integrated Circuits. New York : John Wiley & Sons, New York, Inc., 2004 [123] Pelgrom, M.J.M. ; Duinmaijer, A.C.J. ; Welbers, A.P.G.: Matching properties of MOS transistors. In: Solid-State Circuits, IEEE Journal of 24 (1989), Oct, Nr. 5, S. 1433–1439. – ISSN 0018–9200 [124] Serrano-Gotarredona, Teresa ; Linares-Barranco, Bernabé: Systematic Width-and-Length Dependent CMOS Transistor Mismatch Characterization and Simulation. In: Analog Integr. Circuits Signal Process. 21 (1999), Nr. 3, S. 271–296. – ISSN 0925–1030
Index
A AER-Chip 328–339 AER-Einheit 271–273, 327–328 Arbitrierschaltung 327 Arbitrierung 276 Prioritätsencoder 327–330, 342–344 Signalisierungsschaltung 327–330 AER-Interface 330–341, 348 AER-Kodierung 273–276, 326 Adress-Ereignis-Kodierverfahren 261–263 Adress-Ereignis-Protokoll 262 Aktionspotential 117, 181–186, 245 aktive Pixelschaltung (APS) 220 anodische Oxidation 300–302 anodisches Oxid Durchbruchsfeldstärke 302 Leckstromdichten 300–302 Auflösung 36 Auflösungspyramide 315–331 Axon 12, 117, 181–182, 276, 362–363 B Betriebsbereich 34 Bildsensoren 212–236 Bipolarzellen 117–118, 316 C CAM-Array 342–346 CAM-Zelle 342–343 charakteristische Gleichungen
52
CMOS 180, 193, 234, 283–308, 326 Current-Mode-Schaltungstechnik 236, 261 CVD Oxid 295–300 Durchbruchsfeldstärke 298 Leckstromdichten 297–300 D Dekorrelation 3, 91, 114, 268 Dendrit 101–108, 139, 181–185, 276 dendritische Synapse 101–107, 140, 151, 179, 346 dendritische Gleichung 140 dentritischer Baum 185 Detektorprofil 122–127, 322–324 Detektorteilprofil 322 Differenzzähler 177, 269 Diffusionsbarriere 303–306 Dunkelstrom 214 E Ensemble 47 Entfernungsinvarianz 161 Entropie 2, 4, 32, 49–61, 64–89, 93, 110–113, 132, 168 Signal-Entropie 55–56 EPSC (excitatory postsynaptic current) 182 EPSP (excitatory postsynaptic potential) 183 Erkennungskette 2, 21, 114, 157, 162–163
388
Index
F Farbwahrnehmung 315–316 Field-Programmable Neural Array 180 FIFO 274–276, 336–341, 346–348 Filter 124 Filterprofil 126 Fovea Centralis 316 Funktionalvariation 69 G Gabor-Wavelets 16–19, 117–129, 131–149, 155, 177, 268, 277, 283, 323 Gabormaske 277–280 Orientierungsselektivität 320 Stützstellenverteilung 324–336 Galvanik 303–307 LT-Galvanik 303 Seed Layer 303 Ganglionzellen 117, 316 Gradientendetektor 115–116, 124, 335 „A-vor-B“-Detektor 274, 335 Pulsdifferenzschaltung 277 Grundschaltungen (CMOS) differentielles Paar 201 Differenzverstärker 201 Gewichtsspeicher 209 Schalter 366–372 Stromquelle 196 Stromspeicherzelle 236 Stromspiegel 201 Transistor-Grundschaltungen 366–373 Zwei-Quadranten-Multiplizierer 210 H Halbleiter-Photosensoren 213–236 Hamilton-Jacobi’sche Differentialgleichung 53 Hamiltonfunktion 53 Hodgkin-Huxley Modell 181, 362–365 Horizontalzellen 117–118 Häufigkeitsverteilung 29 I IAF-Neuron
187–190
Implementierung 193–207 Kleinsignalanalyse 204 Implementierung (CMOS) adaptive Synapsen 207–212 Bildspeicher 236–238 DA-Wandler 236–238 Entladestromquelle 196–199 Merkmalsdetektor 270–281, 324–325, 330–339 Merkmalserkenner 263–266, 339–348 Multikanal-Photosensor 227–232 Neuron 193–207 Pixelzellen 227–236 pulsende Pixelzelle 233–236 Schwellwertschalter 193–206 Informationsverarbeitung 2 informationsübertragende Funktion 33 Invarianz 134 Beleuchtungsinvarianz 134 Entfernungsinvarianz 134 Lageunabhängigkeit 138 Rotationsinvarianz 134 Verformungsunabhängigkeit 138 Ionenkanäle 181–185, 362–363 Ionenpumpen 181 Ionotrope Rezeptoren 182 IPSC (inhibitory postsynaptic current) 182 IPSP (inhibitory postsynaptic potential) 183 ISI-Histogramm 27 K Kanten 116 Kontrastdetektion 316 Kopfdetektion 155 Kopferkenner 155, 317 Korrelation 2–4, 14–15, 46, 85, 89–95, 109–113, 132, 149, 166, 168, 191, 268, 284 Krümmungen 117 L Leaky Integrator 187 LGN 119 lichtelektrischer Effekt 212
Index M
Orientierung
Makula Lutea 316 Membranleitwert 184 Merkmalsdetektion 14–18, 115, 163, 236, 268, 281, 326 biologische 277 Merkmalsdetektor 120–129, 132–138, 161–163, 177, 234, 259–264, 267–277, 318–346 Merkmalserkenner 139, 259, 324, 346 Merkmalserkennung 2, 131, 135 Merkmalskaskade 5, 168, 179–180, 259, 281, 315–350 Auflösungspyramide 315–331 Auflösungsskala 320 Orientierungen 318 Raumfrequenzen 318 Merkmalssynchronisierer 346–348 metabotrope Rezeptoren 182 Mismatch-Parameter 198 Musterbildung 97 Mustererkennung räumliche 40
P
N Nervus Opticus 117 Netz heisses Netz 29 kaltes Netz 31 Netze für Merkmalsdetektion 115 Merkmalserkennung 131 robuste Kopfdetektion 155 Neurotransmitter 182 NPU neuronale Mikroschaltung 279 neuronale Verarbeitungseinheit 269–281, 330–346 O Objekt-Erkenner 317 Objektbindung 2 Objekterkennung 152 Objektkomponenten 134 Prinzipien der Objekterkennung 134
389
117
Photodiode 213–216 Generationsrate 214 spektrale Empfindlichkeit 215–219, 229–232 Photoeffekt 212 photopisches Sehen 316 Photosensor CCD 219–220 CMOS 219–238 das Lambert-Beersche Gesetz 374 Farbfilter 218–219 integrierender Photosensor 216 Multikanal-Photosensor 217–219 optische Generation 374–376 Quantenwirkungsgrad 221 Pixelschaltung (CMOS) 220–232 Pixelzelle 220–236, 271 Ausleseschaltung 224–227 pulsende Pixelzelle 233–236 Resetschaltung 222–224 Shutter 222–227 postsynaptische Depolarisation 184 primäre visuelle Kortex 119 präsynaptische Endknöpfchen 182 PSC (postsynaptic current) 182–184 PSP (postsynaptic potential) 183–188 Pulsdifferenz symmetrische Pulsdifferenzbestimmung 103 Pulsdifferenzbestimmung 180, 273–274 Pulsdifferenzzähler 277 Pulse Pulsdifferenz 100 Pulssumme 100 Pulsmuster 89 Pulsrate 36 mittlere Pulsrate 36 Pulsratendifferenz 107 Pulsverarbeitung 47 Pulswelle 264 R Retina 17, 116–125, 135–136, 161–163, 168, 277, 315–327
390
Index
rezeptive Felder 116–127, 192, 277, 318–336 robuste Kopfdetektion 155 Merkmalserkennung 18, 135 Objektdetektion 18 Objekterkennung 152 Robustheit 47 Rückseitenkontakt (3D) 294–309 S schwache Inversion 198 Schwellwertschalter Hysterese 193 Segmentation 98 Seharchitektur Grenzen 161 Potential 161 Sehwürfel 267, 315–350 AER-Chip 328–339 Auflösungsebenen 317–330 Crossbar 272 Ereignisrate 332–334, 342–346 Mehrsegmentarchitektur 333 Merkmalsdetektor 324–339 Merkmalserkenner 337, 339–349 Merkmalssynchronisierer 349 NPU 330–346 NPU-Quad 332 Pixelzelle 326 Routing-Baustein 272–280 Segmentierung 334–346 Sensorfeld 326 Verbindungsproblem 283 Verlustleistung 284–286, 330, 332, 342 Verlustleistungsaufnahme 179 Selbstorganisation 11–14, 165–176 Shunting Inhibition 184 Signalenergie 49 Gesamtenergie 50 Membranenergie 50 Synapsenenergie 50 Variation der Signalenergie 59 Signalgleichungen 21 Simple Cells 119 Simulation neuronaler Systeme 239–257
Simulationszeit 49 skotopisches Sehen 316 SoLID Diffusionslöten 308–312 Phasendiagramm 309 Spike Response Model 185 Stapeltechnologie (3D) Chip-to-Wafer-Bonden 288 Chip-to-Wafer-Prozeß 307 Epitaxieschicht 291 Face-to-Face Technik 310 Rückseitenprozeß 290 Signalintegrität 287 SoLID Diffusionslöten 308 Substratdünnung 290–293 Temperaturbudget 287, 295, 308, 314 Verbindungstechnik 307–312 Viaisolation 295–302 Viametallisierung 302–307 Viaätzung 293–294 Wafer-to-Wafer-Bonden 288 Stäbchen (Rod Cells) 315 Stäbchendichte 316 Störstellenleitung Fowler-Nordheim Tunneln 298 Poole-Frenkel Effekt 298 Substratdünnung 290–293, 314 Hilfsträger 293 Restdickenkontrolle 290 Silizium-Epitaxieschicht 291 Ätzmarken 290, 292 Ätzstoppschicht 290–293 Subthreshold-Schaltungstechnik 346 Synapsen 17 dynamisch 3, 17, 19, 61, 89–113, 129, 132–153, 177, 179, 259, 266, 268, 340, 348 exitatorische Synapsen 98 inhibitorische Synapsen 98 konstant 3, 4, 17, 45–49, 61–63, 85, 88, 95–114, 138, 152 synaptische Effizienz 184 synaptische Gleichung 23 Synchrondetektor 107–109, 139–153, 259, 340, 350 Synchronisation 3, 19, 91, 180, 191, 350 Puls-Wellenfront 97 Pulswelle 264 Statistik 112
Index Systemintegration 3D-Stapeltechnik
285–314
T Teilentropie 73 Texturen 116 Trennschärfe 141 V Verbindungsproblem 283 Via-Metallisierung Diffusionsbarriere 303–306 Galvanik 304–307 Viaisolation anodisches Oxid 301 CVD-Oxid 302 Rückseitenoxid 295 Ätzmaske 295 Vias (3D) elektrische Eigenschaften 312–313 vertikale Verbindungen 288–312 Viaätzung Bosch-Prozeß 294
391
DRIE (Deep Reactive Ion Etching) 293 visueller Kortex 192 visuelles System 117 VLSI-Implementierung Merkmalsdetektor 270–281 Merkmalserkenner 263–266 Multikanal-Photosensoren 227–232 W Weak-Inversion-Bereich Wellenfront 97
199–207
Z Zapfen (Cones) 315–317 Blaurezeptor 315 Grünrezeptor 315 Rotrezeptor 315 Verteilung 316 Zeitkodierung 109 Zellmembran 181–182 Zerlegung 2, 49, 63–90, 111, 112 Zonenarchitektur 163, 179, 323 Zonendetektor 150