Wissen Wissenschaftler, was in künstlichen neuronalen Netzen passiert?


69

Wissen Wissenschaftler oder Forschungsexperten aus der Küche, was in einem komplexen "tiefen" neuronalen Netzwerk mit mindestens Millionen von Verbindungen geschieht, die gleichzeitig ausgelöst werden? Verstehen sie den Prozess dahinter (z. B. was im Inneren passiert und wie es genau funktioniert) oder ist es ein Thema der Debatte?

Zum Beispiel sagt diese Studie :

Es gibt jedoch kein klares Verständnis dafür, warum sie so gut abschneiden oder wie sie verbessert werden könnten.

Bedeutet dies, dass Wissenschaftler nicht wissen, wie komplexe Faltungsnetzwerkmodelle funktionieren?


" warum sie so gut abschneiden " - sie schneiden nicht wirklich so gut ab. Wie bei den meisten neuen Technologien werden Ausfälle nur unzureichend gemeldet.
Tomáš Zato,

Antworten:


51

Es gibt viele Ansätze, die darauf abzielen, ein trainiertes neuronales Netzwerk interpretierbarer und weniger wie eine "Black Box" zu machen, insbesondere die von Ihnen erwähnten faltungsbezogenen neuronalen Netzwerke .

Visualisierung der Aktivierungen und Ebenengewichte

Die Visualisierung der Aktivierungen ist die erste offensichtliche und unkomplizierte. Bei ReLU-Netzwerken sehen die Aktivierungen normalerweise relativ blob und dicht aus, aber im Verlauf des Trainings werden die Aktivierungen in der Regel spärlicher (die meisten Werte sind Null) und lokalisiert. Dies zeigt manchmal, worauf genau eine bestimmte Ebene fokussiert ist, wenn sie ein Bild sieht.

Eine weitere großartige Arbeit zu Aktivierungen, die ich erwähnen möchte , ist Deepvis , die die Reaktion jedes Neurons auf jeder Schicht zeigt, einschließlich Pooling- und Normalisierungsschichten. So beschreiben sie es :

Kurz gesagt, wir haben einige verschiedene Methoden zusammengestellt, mit denen Sie „triangulieren“ können, welche Funktion ein Neuron gelernt hat, um besser zu verstehen, wie DNNs funktionieren.

Die zweite gängige Strategie ist die Visualisierung der Gewichte (Filter). Diese sind in der Regel auf der ersten CONV-Ebene am besten interpretierbar, die direkt auf die Rohpixeldaten blickt. Es ist jedoch auch möglich, die Filtergewichte tiefer im Netzwerk anzuzeigen. Beispielsweise lernt die erste Ebene normalerweise Gabor-ähnliche Filter, die im Grunde genommen Kanten und Blobs erkennen.

Filter der ersten Schicht

Okklusionsexperimente

Hier ist die Idee. Angenommen, ein ConvNet klassifiziert ein Bild als Hund. Wie können wir sicher sein, dass es tatsächlich den Hund im Bild erfasst, im Gegensatz zu einigen kontextuellen Hinweisen aus dem Hintergrund oder einem anderen sonstigen Objekt?

Eine Möglichkeit zu untersuchen, von welchem ​​Teil des Bildes eine Klassifizierungsvorhersage stammt, besteht darin, die Wahrscheinlichkeit der interessierenden Klasse (z. B. Hundeklasse) als Funktion der Position eines Okkluderobjekts aufzuzeichnen. Wenn wir über Bereiche des Bildes iterieren, es durch alle Nullen ersetzen und das Klassifizierungsergebnis überprüfen, können wir eine zweidimensionale Wärmekarte der für das Netzwerk wichtigsten Elemente eines bestimmten Bildes erstellen. Dieser Ansatz wurde in Matthew Zeilers Visualizing and Understanding Convolutional Networks verwendet (auf den Sie in Ihrer Frage verweisen):

Okklusionsversuche

Entfaltung

Ein anderer Ansatz besteht darin, ein Bild zu synthetisieren, das ein bestimmtes Neuron zum Feuern bringt, im Grunde das, wonach das Neuron sucht. Die Idee ist, den Gradienten in Bezug auf das Bild anstelle des üblichen Gradienten in Bezug auf die Gewichte zu berechnen. Also wählst du eine Ebene aus und stellst den Farbverlauf auf Null ein, bis auf eins für ein Neuron und Backprop zum Bild.

Deconv führt tatsächlich eine so genannte geführte Backpropagation durch , um ein besser aussehendes Bild zu erhalten, aber es ist nur ein Detail.

Ähnliche Ansätze zu anderen neuronalen Netzen

Sehr zu empfehlen ist dieser Beitrag von Andrej Karpathy , in dem er viel mit Recurrent Neural Networks (RNN) zusammenarbeitet. Am Ende wendet er eine ähnliche Technik an, um zu sehen, was die Neuronen tatsächlich lernen:

Das in diesem Bild hervorgehobene Neuron scheint sich sehr über URLs zu freuen und schaltet sich außerhalb der URLs aus. Das LSTM verwendet dieses Neuron wahrscheinlich, um sich zu erinnern, ob es sich in einer URL befindet oder nicht.

Fazit

Ich habe nur einen kleinen Bruchteil der Ergebnisse in diesem Forschungsbereich erwähnt. Es ist ziemlich aktiv und jedes Jahr tauchen neue Methoden auf, die Licht in das Innere des neuronalen Netzwerks bringen.

Um Ihre Frage zu beantworten, gibt es immer etwas, das Wissenschaftler noch nicht wissen, aber in vielen Fällen haben sie ein gutes (literarisches) Bild davon, was im Inneren vor sich geht, und können viele bestimmte Fragen beantworten.

Für mich unterstreicht das Zitat aus Ihrer Frage einfach die Wichtigkeit der Forschung, nicht nur die Genauigkeit zu verbessern, sondern auch die innere Struktur des Netzwerks. Wie Matt Zieler in diesem Vortrag ausführt, kann eine gute Visualisierung manchmal zu einer besseren Genauigkeit führen.


Ist Visualisierung Wissen? Oder ist das nur eine trendige Lösung für Ignoranz? Vielleicht ist die mathematische Entwicklung der Bereich, dem es am meisten an Strenge und Angemessenheit mangelt.
FauChristian

1
@FauChristian Hier fehlt dir der Punkt. Die Gewichte und alle Mathematik ops in einem neuronalen Netz sind bekannt genau, wie Assembler - Code. Das kommt nicht in Frage. Durch die Visualisierung können Sie nachvollziehen, warum bestimmte Operationen ausgeführt werden, und eine gute Leistung erzielen. Wieder wie bei klassischen Algorithmen der Informatik. Außerdem ermutige ich Sie, die in der Antwort erwähnte Arbeit von Zieler zu lesen.
Maxim

1
Ich habe diese Punkte nicht verpasst, nachdem ich sie als Student studiert hatte. In meinem Kommentar war ich allerdings faul. Das s / w-Gitter, das Kernel darstellt, ist nur deshalb interessant, weil es eine etwas chaotische Matrix von Kernelzuständen zur Erkennung von Wellenkanten zeigt, was darauf hinweist, dass das Chaos charakterisiert werden muss, um es zu verstehen. Was sind ihre Größenverteilung, Winkelverteilung und Schräglaufverteilung? Zeigen diese Verteilungen (a) eine Überanpassung an, die für bestimmte Datensätze spezifisch ist, oder (b) ein allgemeines Muster, das durch einen Funktionsblock mit höherer Recheneffizienz ersetzt werden könnte. ~~ Einmal kann man es nicht am Bild erkennen.
FauChristian

1
Richtig, all diese Verteilungen (und viele andere) werden hier nicht berechnet. Das bedeutet nicht, dass sie nicht berechnet werden können oder sollten . Dies bedeutet auch nicht, dass die Modellinterpretation nichts mit Visualisierung zu tun hat. Ich möchte Sie noch einmal ermutigen, "Visualizing and Understanding Convolutional Networks" von Zieler ua zu lesen, wo die Autoren dies ausführlich diskutieren.
Maxim

Wir haben das im Labor. Mein Mitarbeiter hat einige Codebeispiele durchgearbeitet. Ich werde es mir von der Statistikseite ansehen. Vielen Dank.
FauChristian

27

Es kommt darauf an, was Sie unter "wissen, was passiert" verstehen.

Konzeptionell ja: ANN führt nichtlineare Regression durch. Der tatsächliche Ausdruck, der durch die Gewichtsmatrix / Aktivierungsfunktion (en) einer ANN dargestellt wird, kann explizit in symbolischer Form erweitert werden (z. B. mit Unterausdrücken wie ).1/1+e1/1+e

Wenn Sie jedoch mit "wissen" meinen, dass Sie die Ausgabe eines bestimmten (Black-Box-) ANN auf andere Weise vorhersagen , dann ist das Hindernis das Vorhandensein von Chaos in einem ANN mit hohen Freiheitsgraden .

Hier ist auch eine relativ neue Arbeit von Hod Lipson zum Verständnis von ANNs durch Visualisierung .


13

Kurze Antwort ist nein .

Die Interpretierbarkeit von Modellen ist ein hyperaktiver und heißer Bereich der aktuellen Forschung (denken Sie an den Heiligen Gral oder so), der in letzter Zeit nicht zuletzt aufgrund des (oft enormen) Erfolgs von Deep-Learning-Modellen bei verschiedenen Aufgaben vorangebracht wurde. Diese Modelle sind derzeit nur Black Boxes, und wir fühlen uns natürlich unwohl dabei ...

Hier sind einige allgemeine (und aktuelle, Stand Dezember 2017) Ressourcen zu diesem Thema:

Und auf einer praktischeren Ebene (Code usw.):

In letzter Zeit gab es ein starkes Interesse daran, eine theoretischere Grundlage für das Erlernen von neuronalen Netzen zu schaffen. In diesem Zusammenhang hat der renommierte Statistiker und Pionier der Drucksensoren, David Donoho, vor kurzem (Herbst 2017) begonnen, einen Kurs bei Stanford, Theories of Deep Learning (STATS 385) , mit fast allen online verfügbaren Materialien anzubieten . es ist sehr zu empfehlen ...

UPDATES :


Hallo. Dies scheint eine gute Antwort zu sein, aber Sie müssen es aufräumen und ein wenig organisieren. Die ersten Ressourcen sollten die hilfreichsten und allgemeinsten sein. Dann können Sie spezifischere Ressourcen und Forschungspapiere auflisten, IMHO. Und später kannst du zB Twitter-Threads oder was auch immer auflisten.
Nr.


8

Ich fürchte, ich habe die spezifischen Zitate nicht zur Hand, aber ich habe Zitate von Experten wie Andrew Ng und Geoffrey Hinton gesehen / gehört, in denen sie klar sagen, dass wir neuronale Netze nicht wirklich verstehen. Das heißt, wir etwas von der verstehen , wie sie (zum Beispiel die Mathematik hinter Ausbreitung zurück) arbeiten , aber wir nicht wirklich verstehen , warum sie funktionieren. Es ist eine subtile Unterscheidung, aber der springende Punkt ist, dass wir nicht die tiefsten Details verstehen, wie genau Sie von einem Haufen Gewichte abkommen, um beispielsweise eine Katze zu erkennen, die mit einem Ball spielt.

Zumindest in Bezug auf die Bilderkennung ist die beste Erklärung, die ich gehört habe, dass aufeinanderfolgende Schichten eines neuronalen Netzwerks komplexere Merkmale lernen, die sich aus den detaillierteren Merkmalen früherer Ebenen zusammensetzen. Das heißt, die erste Schicht erkennt möglicherweise "Kanten" oder "gerade Linien". Die nächste Ebene kann dann geometrische Formen wie "Kästchen" oder "Dreieck" lernen, und dann kann eine höhere Ebene "Nase" oder "Auge" lernen, basierend auf diesen früheren Merkmalen, und dann lernt eine höhere Ebene immer noch "Gesicht" von "Auge", "Nase", "Kiefer" usw. Aber selbst das ist, wie ich es verstehe, immer noch hypothetisch und / oder nicht im Detail verstanden.


2
Ich würde gerne die aktuellen Zitate lesen. Auf der allgemeinsten konzeptionellen Ebene lautet das Warum "Sie sind universelle Funktionsapproximatoren, die darauf trainiert sind, den Fehler in einem Regressionsproblem zu reduzieren".
NietzscheanAI

Ich werde sehen, ob ich sie finden kann. Ich bin mir ziemlich sicher, dass das Zitat von Geoffrey Hinton, an das ich denke, in einem Video ist. Entweder aus seiner Coursera-Klasse oder einem Video, das er auf Youtube hat. Wenn ich es finde, bearbeite ich meine Antwort und
binde

Ich habe es nicht vergessen. Ich werde versuchen, sie zu finden, wenn ich ein bisschen Freizeit habe. Ich denke, mindestens einer, an den ich denke, stammt aus einem Video, das Teil eines Coursera-Kurses ist.
Geisteskriminalität

Diese Studie kann dazu beitragen, dieselben Referenzen aufzustellen: "Es gibt jedoch kein klares Verständnis dafür, warum sie so gut abschneiden oder wie sie verbessert werden könnten."
Kenorb

4

Hier ist eine Antwort von Carlos E. Perez auf die Frage Was steckt hinter der Theorie des tiefen Lernens?

[...]

Die zugrunde liegende Mathematik des Deep Learning existiert seit mehreren Jahrzehnten, doch die beeindruckenden Ergebnisse, die wir heute sehen, sind Teil einer viel schnelleren Hardware, mehr Daten und inkrementellen Methodenverbesserungen.

Deep Learning im Allgemeinen kann als Optimierungsproblem definiert werden, bei dem das Ziel eine Funktion des Modellfehlers ist. Dieses Optimierungsproblem ist sehr schwer zu lösen, da der Parameterraum des Modells (dh die Gewichte des neuronalen Netzwerks) zu einem Problem mit extrem hoher Dimension führt. Ein Optimierungsalgorithmus kann sehr lange dauern, um diesen Raum zu erkunden. Darüber hinaus bestand die unbestätigte Überzeugung, dass das Problem nicht konvex war und die Berechnung für immer in lokalen Minima stecken bleiben würde.

[...]

Die Theorie, warum Maschinen tatsächlich zu einem Attraktor konvergieren oder mit anderen Worten lernen, komplexe Muster zu erkennen, ist noch unbekannt.

Fazit: Wir haben einige Ideen, sind uns aber nicht ganz sicher.


3

Wissen Wissenschaftler, was in künstlichen neuronalen Netzen passiert?

JA

Wissen Wissenschaftler oder Forschungsexperten aus der Küche, was in einem komplexen "tiefen" neuronalen Netzwerk mit mindestens Millionen von Verbindungen geschieht, die gleichzeitig ausgelöst werden?

Ich denke, "aus der Küche wissen" bedeutet "im Detail wissen"?

Lassen Sie mich Ihnen eine Reihe von Analogien geben:

  1. Weiß ein Flugzeugingenieur aus der Küche, was im Flugzeug passiert?
  2. Weiß ein Chipdesigner im Detail, was mit den von ihm entworfenen Chips passiert?
  3. Weiß ein Bauingenieur alles über das Haus, das er gebaut hat?

Der Teufel steckt im Detail, aber ein entscheidender Punkt ist, dass es sich um künstliche Strukturen handelt. Sie erscheinen nicht zufällig. Sie brauchen viel Wissen, um etwas Nützliches zu bekommen. Für neuronale Netze würde ich sagen, dass es ungefähr 40 Jahre von der Veröffentlichung der Schlüsselidee (Rosenblatt perceptron, 1957) bis zur ersten Anwendung (US Postal Service, 1989) gedauert hat. Und von da an wieder 13 Jahre aktive Forschung zu wirklich beeindruckenden Systemen (ImageNet 2012).

Was wir super gut wissen, ist wie das Training funktioniert . Weil es umgesetzt werden muss. Auf einer sehr kleinen Struktur wissen wir es im Detail.

Denken Sie an Computer. Die Chipdesigner wissen sehr gut, wie ihr Chip funktioniert. Aber sie werden wahrscheinlich nur eine sehr grobe Vorstellung davon haben, wie das Linux-Betriebssystem funktioniert.

Ein weiteres Beispiel ist Physik und Chemie: Die Physik beschreibt die Kernkräfte des Universums. Bedeutet das, dass sie auch alles über Chemie wissen? Auf keinen Fall! Ein "perfekter" Physiker kann alles in der Chemie erklären ... aber es wäre so ziemlich nutzlos. Er würde viel mehr Informationen brauchen, nicht in der Lage sein, die irrelevanten Teile zu überspringen. Einfach, weil er zu stark "hineingezoomt" hat - hält Details für in der Praxis weder interessant noch wichtig. Bitte beachten Sie, dass die Kenntnisse des Physikers nicht falsch sind. Vielleicht könnte man daraus sogar das Wissen des Chemikers ableiten. Dieses "übergeordnete" Verständnis der Molekülwechselwirkung fehlt jedoch.

Die wichtigsten Erkenntnisse aus diesen beiden Beispielen sind Abstraktionsebenen: Sie können Komplexität aus einfachen Strukturen aufbauen .

Was sonst?

Wir wissen genau, was im Prinzip mit den von uns entworfenen neuronalen Netzen erreichbar ist :

  • Ein neuronales Netzwerk, das zum Spielen von Go entwickelt wurde - egal wie hoch entwickelt - wird niemals Schach spielen können. Sie können natürlich eine weitere Abstraktionsebene hinzufügen und die Dinge kombinieren. Aber dieser Ansatz braucht Menschen.
  • Ein neuronales Netzwerk, das zur Unterscheidung von Hunden und Katzen entwickelt wurde und bei dem bisher nur Pudel und Perserkatzen beobachtet wurden, wird wahrscheinlich eine sehr schlechte Leistung erbringen, wenn es sich für Yorkshire Terrier entscheiden muss.

Oh, und natürlich haben wir analytische Ansätze für neuronale Netze. Ich habe meine Masterarbeit über die Analyse und Optimierung von Faltungsarchitekturen neuronaler Netze geschrieben . In diesem Zusammenhang ist LIME (Local Interpretable Model-Agnostic Explanations) hilfreich :

Bildbeschreibung hier eingeben


1
Die meisten von ihnen werden von biologischen Modellen beeinflusst. Die Aussage, dass Wissenschaftler NNs als Funktion eines Problems gebaut haben, ist kaum zu glauben. Vor allem, wenn niemand eine Idee hat, warum eine bestimmte Architektur oder ein bestimmter Satz von Hyperparametern gut für sie geeignet ist Ein gegebenes Problem ... Ich spreche nicht über die genauen Hyperparameter, aber keine scheint einen allgemeinen Eindruck davon zu haben, welche ungefähren Hyperparameter für ein gegebenes Problem funktionieren könnten (das Problem ist gut definiert). Also wissen keine Wissenschaftler nicht, was darin vor sich geht ein NN.
DuttaA

Denken Sie an frühe Automobil- / Flugzeugingenieure. Würden Sie sagen, dass sie nicht wissen, was in ihrem Flugzeug / Automobil passiert, weil sie sie nicht gebaut haben, weil ihre Form nicht aerodynamisch war?
Martin Thoma

1
Ofc ... Etwas nicht zu wissen, weil es an Technologie mangelt ... Ist etwas anderes als theoretisch nicht zu wissen. Ich glaube, es war Technologie in Flugzeugen. Während wir hier nicht in der Lage sind, mathematisch zu verarbeiten.
Also

1

Ich wollte nur etwas hinzufügen:

es hängt davon ab, was Sie mit Wissenschaftler meinen:

Ich bin Doktorandin in Elektrotechnik und habe gesehen, dass so viele Forscher mit ANN in Problemen wie Regression, Vorhersagekontrolle, adaptiver Kontrolle und Klassifikationsproblemen arbeiten.

Sie können deutlich feststellen, dass ihre mangelnden Codierungsfähigkeiten ein großer Nachteil sind und sie nicht wirklich verstehen, was in einem ANN vor sich geht. Jetzt spreche ich nicht einmal über Deep , sie haben Mühe, einfache Dinge wie ADALINEs und ANFIS zu verstehen! Alles, was Sie hören, ist: Geben Sie ihm Daten und es wird sich anpassen!


1
Obwohl Sie konzeptionell wahrscheinlich recht haben, können Sie einige Stimmen erhalten und möglicherweise eine konstruktive Hilfe sein, wenn Sie Ihre Antwort so umschreiben, dass sie als soziologische Beobachtung und nicht als pedantische Tirade wirkt.
FauChristian
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.