Die enormen Fähigkeiten neuronaler Netze sind manchmal mit ihrer Unvorhersehbarkeit vergleichbar. Jetzt beginnen Mathematiker zu verstehen, wie sich die Form eines neuronalen Netzwerks auf seine Arbeit auswirkt.

Wenn wir einen Wolkenkratzer entwerfen, erwarten wir, dass er am Ende alle Spezifikationen erfüllt: dass der Turm einem solchen Gewicht sowie einem Erdbeben einer bestimmten Stärke standhalten kann.
Als eine der wichtigsten Technologien der modernen Welt entwerfen wir jedoch blind. Wir spielen mit verschiedenen Schemata, verschiedenen Einstellungen, aber bis wir einen Testlauf des Systems starten, haben wir wirklich keine Ahnung, was es kann oder wo es sich weigert zu arbeiten.
Es geht um neuronale Netzwerktechnologie, die den fortschrittlichsten modernen Systemen der künstlichen Intelligenz zugrunde liegt. Neuronale Netze bewegen sich allmählich in die grundlegendsten Bereiche der Gesellschaft: Sie bestimmen, was wir aus den Nachrichten in sozialen Netzwerken über die Welt lernen, sie
helfen Ärzten bei der Diagnose und
beeinflussen sogar
, ob ein Verbrecher ins Gefängnis gebracht wird.
Und "die beste Beschreibung dessen, was wir wissen, ist zu sagen, dass wir praktisch nichts darüber wissen, wie die neuronalen Netze tatsächlich funktionieren und wie die Theorie, die sie beschreibt,
aussehen sollte", sagte
Boris Ganin , Mathematiker an der Universität von Texas. und ein Gastspezialist bei Facebook AI Research, der neuronale Netze studiert.
Er vergleicht die Situation mit der Entwicklung einer weiteren revolutionären Technologie: einer Dampfmaschine. Dampfmaschinen konnten zunächst nur Wasser pumpen. Damals dienten sie als Motoren für Dampflokomotiven, und heute haben neuronale Netze wahrscheinlich etwa das gleiche Niveau erreicht. Wissenschaftler und Mathematiker entwickelten eine Theorie der Thermodynamik, mit der sie verstehen konnten, was genau in einem Motor passiert. Und am Ende brachte uns dieses Wissen in den Weltraum.
"Zuerst gab es großartige technische Erfolge, dann großartige Züge, und dann war ein theoretisches Verständnis erforderlich, um von diesem zu Raketen zu gelangen", sagte Ganin.
In der wachsenden Gemeinschaft von Entwicklern neuronaler Netze gibt es eine kleine Gruppe von Forschern mit mathematischen Vorurteilen, die versuchen, eine Theorie neuronaler Netze zu erstellen, die ihre Funktionsweise erklären und sicherstellen kann, dass nach dem Erstellen eines neuronalen Netzes mit einer bestimmten Konfiguration bestimmte Aufgaben ausgeführt werden können.
Während die Arbeit noch in einem frühen Stadium ist, haben Forscher im vergangenen Jahr bereits mehrere wissenschaftliche Arbeiten veröffentlicht, die die Beziehung zwischen der Form und der Funktionsweise neuronaler Netze detailliert beschreiben. Die Arbeit beschreibt die neuronalen Netze bis zu ihren Grundlagen vollständig. Sie zeigt, dass es lange bevor die Fähigkeit neuronaler Netze bestätigt wird, Autos zu fahren, notwendig ist, ihre Fähigkeit zu beweisen, Zahlen zu multiplizieren.
Das beste Gehirnrezept
Neuronale Netze bemühen sich, das menschliche Gehirn nachzuahmen - und eine Möglichkeit, seine Arbeit zu beschreiben, besteht darin, zu sagen, dass er kleine Abstraktionen zu größeren zusammenführt. Unter diesem Gesichtspunkt wird die Komplexität von Gedanken an der Anzahl der kleinen Abstraktionen gemessen, die ihnen zugrunde liegen, und an der Anzahl der Kombinationen von Abstraktionen auf niedriger Ebene zu Abstraktionen auf hoher Ebene - beispielsweise bei der Untersuchung der Unterschiede zwischen Hunden und Vögeln.
"Wenn eine Person lernt, einen Hund zu erkennen, lernt sie, etwas
Zotteliges auf vier Beinen zu erkennen", sagte
Maitra Ragu , eine Doktorandin der Informatik an der Cornell University, Mitglied des
Google Brain- Teams. "Idealerweise möchten wir, dass unsere neuronalen Netze etwas Ähnliches tun."
Maitra RaguAbstraktion entsteht auf natürliche Weise im menschlichen Gehirn. Dafür müssen neuronale Netze funktionieren. Neuronale Netze bestehen wie das Gehirn aus Bausteinen, die als „Neuronen“ bezeichnet werden und auf verschiedene Weise miteinander verbunden sind. Gleichzeitig versuchen Neuronen des neuronalen Netzwerks, obwohl sie nach dem Vorbild von Gehirnneuronen hergestellt wurden, diese nicht vollständig nachzuahmen. Jedes Neuron kann ein Attribut oder eine Kombination von Attributen darstellen, die das neuronale Netzwerk auf jeder Abstraktionsebene berücksichtigt.
Ingenieure haben die Wahl zwischen vielen Möglichkeiten, diese Neuronen zu kombinieren. Sie müssen entscheiden, wie viele Schichten von Neuronen ein neuronales Netzwerk haben soll (dh seine „Tiefe“ bestimmen). Stellen Sie sich zum Beispiel ein neuronales Netzwerk vor, das Bilder erkennt. Das Bild ist in der ersten Schicht des Systems enthalten. Auf der nächsten Schicht kann das Netzwerk Neuronen aufweisen, die einfach die Bildränder erkennen. Die nächste Ebene kombiniert die Linien und definiert die Kurven. Der nächste kombiniert die Kurven zu Formen und Texturen, und der letzte verarbeitet die Formen und Texturen, um eine Entscheidung darüber zu treffen, was er betrachtet: das pelzige Mammut!
„Die Idee ist, dass jede Schicht mehrere Aspekte der vorherigen kombiniert. Ein Kreis ist an vielen Stellen eine Kurve, eine Kurve ist an vielen Stellen eine Linie “, sagt
David Rolnik , Mathematiker an der University of Pennsylvania.
Ingenieure müssen auch die „Breite“ jeder Schicht auswählen, die der Anzahl der verschiedenen Funktionen entspricht, die das Netzwerk auf jeder Abstraktionsebene berücksichtigt. Bei der Bilderkennung entspricht die Breite der Schichten der Anzahl der Arten von Linien, Kurven oder Formen, die das neuronale Netzwerk auf jeder Ebene berücksichtigt.
Zusätzlich zur Tiefe und Breite des neuronalen Netzwerks gibt es eine Auswahl der Methode zum Verbinden von Neuronen in den Schichten und zwischen ihnen sowie eine Auswahl von Gewichten für jede der Verbindungen.
Wenn Sie planen, eine bestimmte Aufgabe zu erledigen, woher wissen Sie, welche neuronale Netzwerkarchitektur sie am besten ausführen kann? Es gibt ziemlich allgemeine Beispielregeln. Bei Problemen mit der Bilderkennung verwenden Programmierer normalerweise "Faltungs" -Neuronale Netze, das System von Verbindungen zwischen Schichten, in denen sich Schicht für Schicht wiederholt. Um eine natürliche Sprache zu verarbeiten - Spracherkennung oder Sprachgenerierung - haben Programmierer festgestellt, dass wiederkehrende neuronale Netze am besten geeignet sind. Die Neuronen in ihnen können mit Neuronen nicht nur aus benachbarten Schichten verbunden werden.
Außerhalb dieser allgemeinen Prinzipien müssen sich Programmierer jedoch meist auf experimentelle Beweise verlassen: Sie betreiben einfach 1.000 verschiedene neuronale Netze und sehen, welches die Arbeit besser macht.
"In der Praxis werden diese Entscheidungen oft durch Versuch und Irrtum getroffen", sagte Ganin. "Dies ist ein ziemlich komplizierter Weg, da es unendlich viele Wahlen gibt und niemand weiß, welcher der beste sein wird."
Die beste Option wäre, sich weniger auf die Trial-and-Error-Methode als vielmehr auf das bereits vorhandene Verständnis dessen zu verlassen, was eine bestimmte neuronale Netzwerkarchitektur Ihnen bieten kann. Mehrere kürzlich veröffentlichte wissenschaftliche Arbeiten haben diesen Bereich in diese Richtung vorangetrieben.
„Diese Arbeit zielt darauf ab, so etwas wie ein Rezeptbuch für den Entwurf eines geeigneten neuronalen Netzwerks zu erstellen. Wenn Sie wissen, was Sie damit erreichen möchten, können Sie das richtige Rezept auswählen “, sagte Rolnik.
Lasso rote Schafe
Eine der frühesten theoretischen Garantien der neuronalen Netzwerkarchitektur erschien vor drei Jahrzehnten. 1989 hat ein Informatiker bewiesen, dass ein neuronales Netzwerk jede Aufgabe ausführen kann, wenn ein neuronales Netzwerk nur eine Rechenschicht hat, in der es eine unbegrenzte Anzahl von Neuronen und eine unbegrenzte Anzahl von Verbindungen zwischen ihnen geben kann.
Dies war eine mehr oder weniger allgemeine Aussage, die sich als eher intuitiv und nicht besonders nützlich herausstellte. Dies entspricht der Aussage, dass Sie alle Objekte mit nur einer Ebene unterscheiden können, wenn Sie eine unbegrenzte Anzahl von Linien in einem Bild definieren können. Im Prinzip kann dies erfüllt sein, aber versuchen Sie es in die Praxis umzusetzen.
Heutzutage bezeichnen Forscher solche breiten und flachen Netzwerke als "ausdrucksstark", weil sie theoretisch in der Lage sind, einen umfassenderen Satz von Beziehungen zwischen möglichen Eingabedaten (wie einem Bild) und Ausgaben (wie einer Beschreibung eines Bildes) abzudecken. Gleichzeitig ist es äußerst schwierig, diese Netzwerke zu trainieren, das heißt, es ist praktisch unmöglich, sie dazu zu bringen, diese Daten tatsächlich weiterzugeben. Sie benötigen außerdem mehr Rechenleistung als jeder andere Computer.
Boris GaninIn jüngster Zeit haben Forscher versucht zu verstehen, wie weit man neuronale Netze bringen kann, indem man in die entgegengesetzte Richtung geht - wodurch sie schmaler (weniger Neuronen pro Schicht) und tiefer (mehr Schichten) werden. Möglicherweise können Sie nur 100 verschiedene Linien erkennen. Mit den Verbindungen, die erforderlich sind, um 100 dieser Linien in 50 Kurven umzuwandeln, die zu 10 verschiedenen Formen kombiniert werden können, erhalten Sie jedoch alle erforderlichen Bausteine, um die meisten Objekte zu erkennen.
In der
Arbeit, die sie letztes Jahr abgeschlossen haben, haben Rolnik und
Max Tegmark vom MIT bewiesen, dass es durch Erhöhen der Tiefe und Verringern der Breite möglich ist, dieselben Aufgaben mit einer exponentiell geringeren Anzahl von Neuronen auszuführen. Sie zeigten, dass Sie, wenn die von Ihnen simulierte Situation 100 Eingabevariablen enthält, dieselbe Zuverlässigkeit erzielen können, indem Sie entweder
2.100 Neuronen in einer Schicht oder 2.10 Neuronen in zwei Schichten verwenden. Sie stellten fest, dass es von Vorteil war, kleine Teile auf höheren Abstraktionsebenen zu kombinieren, anstatt zu versuchen, alle Abstraktionsebenen gleichzeitig abzudecken.
"Das Konzept der Tiefe des neuronalen Netzwerks ist mit der Möglichkeit verbunden, etwas Komplexes durch viele einfache Schritte auszudrücken", sagte Rolnik. "Es sieht aus wie ein Fließband."
Rolnik und Tegmark haben die Nützlichkeit der Tiefe bewiesen, indem sie neuronale Netze gezwungen haben, eine einfache Aufgabe auszuführen: Polynomfunktionen zu multiplizieren. (Dies sind Gleichungen mit Variablen, die auf natürliche Grade angehoben sind, z. B. y = x
3 + 1). Sie trainierten die Netzwerke und zeigten ihnen Beispiele für Gleichungen und die Ergebnisse ihrer Multiplikation. Dann forderten sie die neuronalen Netze auf, das Ergebnis der Multiplikation von Gleichungen zu berechnen, die sie zuvor noch nicht gesehen hatten. Tiefere neuronale Netze lernten dies mit viel weniger Neuronen als mit kleinen.
Und obwohl es unwahrscheinlich ist, dass die Multiplikation unsere Welt auf den Kopf stellt, sagt Rolnik, dass in der Arbeit eine wichtige Idee beschrieben wurde: „Wenn ein flaches neuronales Netzwerk nicht einmal multiplizieren kann, sollten Sie ihm nichts anderes anvertrauen.“
David RolnikAndere Forscher untersuchen das Problem der Mindestbreite. Ende September
bewies Jesse Johnson , ehemals Mathematiker an der Universität von Oklahoma und jetzt Forscher des Pharmaunternehmens Sanofi, dass irgendwann keine Tiefe den Mangel an Breite ausgleichen konnte.
Um dies zu verstehen, stellen Sie sich die Lämmer auf dem Feld vor, aber lassen Sie sie Lämmer aus Punkrock sein: Die Wolle von jedem von ihnen wird in einer von mehreren Farben bemalt. Das neuronale Netzwerk sollte eine Grenze um alle Schafe derselben Farbe ziehen. Im Wesentlichen ähnelt diese Aufgabe der Klassifizierung von Bildern: Ein neuronales Netzwerk verfügt über eine Reihe von Bildern (die es als Punkte in einem mehrdimensionalen Raum darstellt) und muss ähnliche gruppieren.
Johnson hat bewiesen, dass das neuronale Netzwerk diese Aufgabe nicht bewältigen kann, wenn die Breite der Schichten kleiner oder gleich der Menge der Eingabedaten ist. Jedes unserer Schafe kann durch zwei Eingabedaten beschrieben werden: die Koordinaten seiner Position auf dem Feld, x und y. Dann markiert das neuronale Netzwerk jedes Schaf mit Farbe und zeichnet einen Rand um die Schafe derselben Farbe. In diesem Fall benötigen Sie zur Lösung des Problems mindestens drei Neuronen pro Schicht.
Insbesondere hat Johnson gezeigt, dass das neuronale Netzwerk keine geschlossenen Schleifen zeichnen kann, wenn das Verhältnis der Breite zur Anzahl der Variablen nicht ausreicht - und ein neuronales Netzwerk müsste eine solche Schleife zeichnen, wenn sich beispielsweise alle roten Schafe in der Mitte der Weide angesammelt hätten. "Wenn keine der Schichten dicker als die Anzahl der Eingabemessungen ist, kann die Funktion unabhängig von der Anzahl der Schichten keine Formulare erstellen", sagte Johnson.
Solche Arbeiten bilden den Kern der Theorie neuronaler Netze. Bisher können Forscher nur die einfachsten Aussagen zum Verhältnis von Architektur und Funktionalität treffen - und diese Aussagen sind im Vergleich zur Anzahl der von neuronalen Netzen gelösten Aufgaben sehr gering.
Obwohl die Theorie der neuronalen Netze in naher Zukunft den Entwurfsprozess nicht ändern kann, werden Blaupausen für eine neue Theorie der Computerausbildung erstellt - und ihre Konsequenzen werden noch stärker sein als die einer Person, die in den Weltraum geht.