Sind neuronale Netze anfällig für katastrophales Vergessen?


37

Stellen Sie sich vor, Sie zeigen einem neuronalen Netzwerk 100-mal das Bild eines Löwen und kennzeichnen es mit "gefährlich", damit es erfährt, dass Löwen gefährlich sind.

Stellen Sie sich nun vor, Sie hätten es zuvor Millionen von Löwenbildern gezeigt und alternativ als "gefährlich" und "nicht gefährlich" bezeichnet, sodass die Wahrscheinlichkeit, dass ein Löwe gefährlich ist, 50% beträgt.

Aber diese letzten 100 Male haben das neuronale Netzwerk dazu gebracht, den Löwen als "gefährlich" zu betrachten und die letzten Millionen Lektionen zu ignorieren.

Daher scheint es einen Mangel in neuronalen Netzen zu geben, der darin besteht, dass sie ihre Meinung auf der Grundlage neuerer Erkenntnisse zu schnell ändern können. Vor allem, wenn diese vorherigen Beweise in der Mitte waren.

Gibt es ein neuronales Netzwerkmodell, das nachverfolgt, wie viele Beweise es gesehen hat? (Oder wäre dies gleichbedeutend damit, dass die Lernrate um sinkt, wobei die Anzahl der Versuche ist?)1/TT


Ich spreche von überwachtem Lernen, bei dem der Benutzer dem NN mitteilt, dass der Löwe gefährlich ist.
Zooby

Das passiert aber auch Leuten. Es ist wirklich beängstigend, wie einfach man "verlernen" kann, dass etwas gefährlich ist, nachdem man es mehrmals ohne Konsequenz gemacht hat, was in etwa dem Szenario entspricht, das Sie mit AI beschrieben haben.
Tomáš Zato,

2
Als zu breit gekennzeichnet. Dies hängt viel zu stark davon ab, welche Erkennungstechniken vom Netzwerk verwendet werden. Natürlich wird das Netzwerk in einigen Fällen "vergessen", in anderen Fällen jedoch nicht. Es sollte äußerst klar sein, dass Antworten auf diese Frage mit "Es kommt darauf an" beginnen und enden sollten.
8protons

3
Um fair zu sein, ist dies einer der "Pick your Poison" -Angebote. Ein NN, das die jüngsten Erfahrungen gegenüber den historischen bevorzugt, kann die Vergangenheit eher ignorieren, kann jedoch auf die jüngsten Entwicklungen reagieren. Nehmen wir zum Beispiel an, alle Löwen werden plötzlich über Nacht zum Menschenkiller, und Ihr NN, der die jüngsten Erfahrungen begünstigt, erkennt die neue Bedrohung viel schneller als der langsamere NN, der grundsätzlich besagt, dass "Löwen in der Vergangenheit nicht immer gefährlich waren" Schliessen Sie, dass nichts Neues passiert, bis Löwen länger als
gewünscht zu

1
Außerdem hätte AGI eine relevante Fehlergewichtung - die beiden Fehler sind nicht gleich schlecht im Ergebnis.
MSalters

Antworten:


38

Ja, neuronale Netze sind in der Tat sehr anfällig für katastrophales Vergessen (oder Interferenzen) . Derzeit wird dieses Problem häufig ignoriert, da neuronale Netze hauptsächlich offline trainiert werden (manchmal als Batch-Training bezeichnet ), wobei dieses Problem nicht häufig auftritt und nicht online oder inkrementell , was für die Entwicklung künstlicher allgemeiner Intelligenz von grundlegender Bedeutung ist .

Es gibt Menschen, die sich mit dem kontinuierlichen lebenslangen Lernen in neuronalen Netzen beschäftigen und versuchen, neuronale Netze an das kontinuierliche lebenslange Lernen anzupassen. Dabei handelt es sich um die Fähigkeit eines Modells, kontinuierlich aus einem Datenstrom zu lernen, damit sie zuvor erworbene Daten nicht vollständig vergessen Wissen beim Lernen neuer Informationen. Siehe zum Beispiel den Aufsatz Kontinuierliches lebenslanges Lernen mit neuronalen Netzen: Eine Übersicht (2019) von I. Parisi, Ronald Kemker, Jose L. Part, Christopher Kanan und Stefan Wermter, in dem die Probleme und bestehenden Lösungen im Zusammenhang mit Katastrophen zusammengefasst sind Vergessen neuronaler Netze.


1
Vielen Dank! Ich werde das von Ihnen vorgeschlagene Papier lesen.
Zooby

7
War die berüchtigte Korruption des Microsoft-Chatbots "Tay" ein Beispiel für katastrophales Vergessen?
Nein U

4
@TKK Ich denke, das wäre eine gute neue Frage auf der Website!
Nr.

2
@TKK Wirst du es fragen ? Wenn nicht, könnte das jemand anderes tun? Ich möchte wirklich die Antwort wissen.
wizzwizz4

2
Ich bin mir ziemlich sicher, dass der Satz "Es gibt einige Leute, die am kontinuierlichen lebenslangen Lernen in neuronalen Netzen arbeiten und versuchen, neuronale Netze an das kontinuierliche lebenslange Lernen anzupassen" von einem neuronalen Netz geschrieben wurde.
Moyli

16

Ja, das Problem, ältere Trainingsbeispiele zu vergessen, ist ein Merkmal neuronaler Netze. Ich würde es jedoch nicht als "Fehler" bezeichnen, da es ihnen hilft, sich besser anzupassen und interessante Anwendungen wie das Transferlernen zu ermöglichen (wenn ein Netzwerk sich zu gut an alte Schulungen erinnert, ist eine Feinabstimmung auf neue Daten bedeutungslos).

In der Praxis möchten Sie die Trainingsbeispiele für gefährlich und nicht gefährlich mischen, sodass am Anfang und am Ende keine Kategorie angezeigt wird.

Ein Standard-Trainingsverfahren würde so funktionieren:

for e in epochs:
    shuffle dataset
    for x_batch, y_batch in dataset:
        train neural_network on x_batxh, y_batch

Beachten Sie, dass das Mischen in jeder Epoche garantiert, dass das Netzwerk nicht in jeder Epoche dieselben Trainingsbeispiele in derselben Reihenfolge sieht und dass die Klassen gemischt werden

Wenn Sie nun Ihre Frage mit Ja beantworten und die Lernrate verringern, wird das Netzwerk weniger dazu neigen, seine vorherigen Schulungen zu vergessen. Wie würde dies jedoch in einer Umgebung ohne Online-Verbindung funktionieren? Damit ein Netzwerk konvergiert, sind mehrere Trainingsepochen erforderlich (dh, es muss jede Stichprobe mehrmals im Datensatz enthalten sein).


4

Was Sie beschreiben, klingt wie eine gezielte Feinabstimmung .

Es gibt eine fundamentale Annahme, die den Minibatch-Gradientenabstieg bei Lernproblemen zum Funktionieren bringt : Es wird davon ausgegangen, dass jeder Stapel oder jedes Zeitfenster aufeinanderfolgender Stapel eine annehmbare Annäherung an den wahren globalen Wert darstelltSteigung der Fehlerfunktion bezüglich einer eventuellen Parametrisierung des Modells. Wenn sich die Fehleroberfläche selbst stark bewegt, würde dies den Zweck des Gradientenabstiegs vereiteln. Da der Gradientenabstieg ein lokaler Verfeinerungsalgorithmus ist, sind alle Wetten deaktiviert, wenn Sie plötzlich die zugrunde liegende Verteilung ändern. In dem von Ihnen zitierten Beispiel scheint katastrophales Vergessen ein Nacheffekt des "Vergessens" von zuvor gesehenen Datenpunkten zu sein und ist entweder ein Symptom für eine Änderung der Verteilung oder für eine Unterrepräsentation in den Daten eines wichtigen Phänomens , so dass es relativ zu seiner Bedeutung selten gesehen wird.

Die Wiederholung der Erfahrung aus dem verstärkten Lernen ist ein relevantes Konzept, das sich gut auf diesen Bereich übertragen lässt. Hier ist ein Artikel , der dieses Konzept im Hinblick auf das katastrophale Vergessen untersucht. Solange die Stichprobe die wahren Gradienten hinreichend gut darstellt (siehe hierzu die Ausgewogenheit der Stichproben ) und das Modell über genügend Parameter verfügt, ist es unwahrscheinlich, dass das katastrophale Problem des Vergessens auftritt. In zufällig gemischten Datensätzen mit Ersetzung ist es am wahrscheinlichsten, dass Datenpunkte einer bestimmten Klasse so selten sind, dass es unwahrscheinlich ist, dass sie für längere Zeit während des Trainings einbezogen werden, wodurch das Modell effektiv auf ein anderes Problem abgestimmt wird, bis eine passende Stichprobe vorliegt wird wieder gesehen.


1

Um Ihre Frage zu beantworten, würde ich sagen: Vielleicht in der Theorie, aber nicht in der Praxis.


Das Problem ist, dass Sie nur ein chronologisches / sequentielles Training in Betracht ziehen.

Nur einmal habe ich eine solche sequentielle Trainingsmethode verwendet, die als Online-Training oder Online Machine Learning bezeichnet wird . Das war mit der Woppal Wabbit Bibliothek . Es ist eine Funktion (kein Problem, das Sie in Betracht ziehen) dieser Bibliothek, sich chronologisch an die Eingabe anzupassen, mit der sie gespeist wird.

Ich bestehe darauf : Bei dieser Bibliothek Woppal Wabbit ist es eine Funktion, die chronologisch angepasst werden muss. Es ist erwünscht, dass, wenn Sie ihm nur sagen, dass Löwen gefährlich sind, es sich konsequent anpasst.


Aber in allen anderen Fällen , von Kursübungen bis hin zu Kaggle-Wettbewerben, habe ich eine zufällige Teilmenge meiner Eingabedaten als Trainingssatz verwendet. Und das ist wirklich entscheidend :

Es ist ein wichtiger Teil des maschinellen Lernens, der als Cross Validation bezeichnet wird . Auf diese Weise kann abgeschätzt werden, wie gut das trainierte neuronale Netz tatsächlich ist.

Um eine gute Einschätzung der Gültigkeit Ihres neuronalen Netzes zu erhalten, nehmen Sie eine zufällige Teilmenge Ihrer Trainingsdaten, kurz gesagt, Sie nehmen ungefähr 80% Ihrer Daten für das Training und mit den restlichen 20% bewerten Sie, wie oft die trainiertes neuronales Netz gibt gute Vorhersagen.

Und man kann auch nicht einfach ohne Kreuzvalidierung verschwinden, weil Überanpassung erkannt werden muss (was ein weiteres Problem darstellt).

Es mag Ihnen wie ein mögliches theoretisches Problem erscheinen, aber ich neige dazu zu sagen, dass die Verwendung der aktuellen Methoden zur gegenseitigen Validierung Ihre Besorgnis irrelevant macht.

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.