Next Page

Neuronale Netze in der Chemie

Von Johann Gasteiger* und Jure Zupan*

Die Leistungen des menschlichen Gehirns haben seit jeher fasziniert und Anlaß gegeben, ihre Grundlagen zu erforschen. In den letzten fünfzig Jahren wurde eine Reihe von Modellen entwickelt, die Teilfunktionen des Gehirns nachvollziehen sollen. Die parallel dazu verlaufende Entwicklung von Computern ging ganz andere Wege. Dies hat zur Folge, daß die derzeitigen Computerarchitekturen und Betriebssysteme sowie die Programmabarbeitung sehr wenig mit der Informationsverarbeitung im Gehirn gemeinsam haben. Gegenwärtig findet eine Rückbesinnung auf die Leistungen des Gehirns statt, und die Modelle für die Informationsverarbeitung im Gehirn wurden in Algorithmen gefaßt und breit zugänglich gemacht. Zentraler Bestandteil dieser Gehirnmodelle, der neuronalen Netze, ist eine Informationsverarbeitungseinheit, das Modell eines Neurons. In einem solchen künstlichen Neuron werden recht einfache mathematische Operationen ausgeführt; die Leistungsfähigkeit eines neuronalen Netzes kommt erst durch das Zusammenschalten vieler Neuronen in einem Netzwerk zustande. So wie die einzelnen neuronalen Netze verschiedene Leistungen des Gehirns nachvollziehen, so können sie auch zur Lösung unterschiedlicher Problemtypen eingesetzt werden, zur Klassifikation von Objekten, zum Modellieren funktionaler Zusammenhänge, zur Speicherung und zum Rückruf von Information sowie zur Abbildung einer Menge von Daten. Dieses Potential bietet auch für chemische Informationen viele Verarbeitungsmöglichkeiten; die bisherigen Anwendungen überstreichen bereits ein weites Feld: Analyse spektroskopischer Daten, Vorhersage von Reaktionen, Kontrolle chemischer Prozesse und Analyse elektrostatischer Potentiale stehen stellvertretend für viele andere Anwendungen.

1. Einleitung

In vielen Bereichen, in denen komplexe Informationen verarbeitet werden müssen - vom Aktienmarkt über die medizinische Diagnostik bis hin zur Chemie -, wird plötzlich über "neuronale Netze" diskutiert. Neuronale Netze erscheinen als Geheimwaffe zur Lösung einer Vielzahl von Problemen. Um dies zu unterstreichen, zeigt die Abbildung 1 den dramatischen Anstieg an Veröffentlichungen über den Einsatz neuronaler Netze in der Chemie in den letzten Jahren. Was macht neuronale Netze so attraktiv? Sind sie wirklich ein Allheilmittel in der Informationsverarbeitung?

Abb. 1. Zunahme der Zahl n der Veröffentlichungen über den Einsatz neuronaler Netze in der Chemie in den Jahren 1988 - 1991.

Neuronale Netze wurden als Modelle für die Informationsverarbeitung im menschlichen Gehirn entwickelt. Das erklärt einen Teil der Faszination, die neuronale Netze ausstrahlen: Das menschliche Gehirn hat eine phänomenale Leistungsfähigkeit, die selbst von Supercomputern noch längst nicht erreicht wird. Offensichtlich verarbeitet das menschliche Gehirn Information ganz anders als die meisten der heute üblichen Computer, die nach der von-Neumann-Architektur konstruiert sind. Ein solcher von-Neumann-Computer arbeitet eine Rechenvorschrift, einen Algorithmus, Schritt für Schritt, d.h. sequentiell, ab.
Das menschliche Gehirn hingegen operiert in hohem Maße parallel: Die eingehende Information wird gleichzeitig über viele Verarbeitungseinheiten geschickt. Das lehrt schon das sog. "100-Schritte-Paradoxon": Aus der Neurophysiologie weiß man, daß sich eine Nervenzelle, ein Neuron, etwa eine Millisekunde, nachdem es "gefeuert" hat, wieder erholt hat. Nur kann das menschliche Gehirn aber in ungefähr einer Zehntelsekunde intelligente Prozesse ausführen, wie etwa das Gesicht eines Freundes erkennen oder auf eine Gefahr reagieren. Das Gehirn kann also schwierige Aufgaben in weniger als 100 aufeinanderfolgenden Schritten lösen. Diese geringe Zahl an Schritten reicht natürlich zur Lösung komplexer Probleme nicht aus, so daß in Wirklichkeit vom Gehirn viele Aufgaben gleichzeitig nebeneinander gelöst werden müssen.
Künstliche neuronale Netze sind heute meistens als Softwarepakete realisiert, die auf von-Neumann-Rechnern laufen und bei denen die Parallelität nur simuliert wird. Echte Parallelverarbeitung ist nur durch Einsatz entsprechender Hardware (Transputer) möglich und heute noch selten. Die Softwarelösung ermöglicht den Einsatz desselben Programms für ganz unterschiedliche Wissensbereiche. Derselbe Algorithmus kann zum Studium der Zusammenhänge zwischen chemischer Struktur und IR-Spektrum, zur Simulation eines Tennisspiels oder zur Vorhersage von Bewegungen in Aktienkursen verwendet werden.
In der herkömmlichen Programmiertechnik wird die Beantwortung einer Frage durch einen problembezogenen Algorithmus angestrebt, bei dem Anweisung für Anweisung genau auf das zu studierende Problem zugeschnitten ist. Oder man setzt zur Problemlösung ein Expertensystem ein, bei dem eine klare Trennung zwischen dem aufgabenspezifischen Wissen und den Mechanismen zur Schlußfolgerung und Entscheidungsfindung gezogen wird. Algorithmen neuronaler Netze beziehen sich dagegen nicht auf ein bestimmtes Wissensgebiet, sondern können ganz allgemein zur Lösung bestimmter Typen von Problemen eingesetzt werden, wie sie in den verschiedensten Wissensbereichen auftreten.
Nicht mehr die Rechenvorschrift ist aufgabenspezifisch, sondern die Art der Information, die in das neuronale Netz eingegeben, und die Weise, wie sie repräsentiert wird, schneiden eine Studie mit einem neuronalen Netz auf die spezielle Aufgabenstellung zu.
Neuronale Netze können zur Lösung folgender Problemtypen herangezogen werden:

-

Klassifikation
Ein Objekt, charakterisiert durch eine Reihe von Eigenschaften, wird einer bestimmten Kategorie zugeordnet.

-

Modellierung
Neuronale Netze können sowohl binäre als auch reelle Werte ausgeben. Damit können durch die Kombination gewisser Meßergebnisse an einem Objekt andere Eigenschaften dieses Objekts ermittelt werden. Statistische Verfahren stellen solche Zusammenhänge mit einer expliziten mathematischen Gleichung her. Neuronale Netze dagegen können solche Beziehungen implizit ausdrücken, besonders auch dann, wenn eine explizite Gleichung nicht mehr aufgestellt werden kann.

-

Assoziation
Neuronale Netze lassen sich zum Vergleich von Informationen einsetzen, denn sie können ähnlich geartete Informationen erfassen, beispielsweise erkennen, daß zwei Gesichter zur gleichen Person gehören, auch wenn eines der Bilder verzerrt ist (Autoassoziation). Darüber hinaus können sie auch für Zuordnungen eingesetzt werden, bei denen ein Objekt mit einem ganz bestimmten anderen Objekt in Beziehung steht (Heteroassoziation).

-

Abbildung
Komplexe Information kann in eine einfachere Darstellung überführt werden (z. B. durch Projektion in eine Ebene), wobei die wesentlichen Informationsinhalte erhalten bleiben.

In dieser Übersicht werden zunächst die Grundzüge und die Typen neuronaler Netze vorgestellt, bevor ein Überblick über und ausgewählte Beispiele für die Anwendung neuronaler Netze in der Chemie gegeben werden [1][2].

Next Page


Johann.Gasteiger@chemie.uni-erlangen.de