Wie würde Deepminds neuer "differenzierbarer neuronaler Computer" skalieren?

12

Deepmind hat gerade einen Artikel über einen "differenzierbaren neuronalen Computer" veröffentlicht , der im Grunde ein neuronales Netzwerk mit einem Speicher kombiniert .

Die Idee ist, dem neuronalen Netzwerk beizubringen, nützliche explizite Erinnerungen für eine bestimmte Aufgabe zu erstellen und abzurufen. Dies ergänzt die Fähigkeiten eines neuronalen Netzwerks sehr gut, da NNs Wissen nur implizit in den Gewichten speichern und die Informationen, die für die Bearbeitung einer einzelnen Aufgabe verwendet werden, nur bei der Aktivierung des Netzwerks gespeichert werden und sich schnell verschlechtern, je mehr Informationen Sie hinzufügen. ( LSTMs sind ein Versuch, diesen Abbau von Kurzzeitgedächtnissen zu verlangsamen, aber es passiert immer noch.)

Anstatt die erforderlichen Informationen in der Aktivierung beizubehalten, behalten sie jetzt vermutlich die Adressen der Speichersteckplätze für bestimmte Informationen in der Aktivierung bei, sodass diese ebenfalls einer Verschlechterung unterliegen sollten. Meine Frage ist, warum dieser Ansatz skalieren sollte. Sollte nicht eine etwas höhere Anzahl aufgabenspezifischer Informationen die Fähigkeit des Netzwerks, die Adressen aller geeigneten Speichersteckplätze in seiner Aktivierung zu behalten, erneut überfordern?

BlindKungFuMaster
quelle

Antworten:

3

Die Untersuchung der DNC-Architektur zeigt tatsächlich viele Ähnlichkeiten mit dem LSTM . Betrachten Sie das Diagramm im DeepMind-Artikel, mit dem Sie verknüpft haben:

DeepMind DNC-Architektur

Vergleichen Sie dies mit der LSTM-Architektur (Dank an ananth auf SlideShare):

Bildbeschreibung hier eingeben

Hier gibt es einige enge Analoga:

  • Ähnlich wie beim LSTM führt die DNC eine Konvertierung von Eingabe- in Zustandsvektoren fester Größe durch ( h und c im LSTM).
  • In ähnlicher Weise führt die DNC eine Konvertierung von diesen Zustandsvektoren fester Größe in eine potenziell beliebig lange Ausgabe durch (im LSTM werden wir wiederholt Stichproben aus unserem Modell ziehen, bis wir zufrieden sind / das Modell zeigt an, dass wir fertig sind).
  • Die Vergiss- und Eingabegatter des LSTM stellen die Schreiboperation in der DNC dar ("Vergessen" ist im Wesentlichen nur das Nullsetzen oder das teilweise Nullsetzen des Speichers).
  • Das Ausgangsgatter des LSTM repräsentiert die Leseoperation in der DNC

Die DNC ist jedoch definitiv mehr als ein LSTM. Am offensichtlichsten wird ein größerer Zustand verwendet, der in Blöcke diskretisiert (adressierbar) ist; Dies ermöglicht es, das Vergessen-Gate des LSTM binärer zu machen. Damit meine ich, dass der Zustand nicht notwendigerweise bei jedem Zeitschritt um einen Bruchteil erodiert wird, während dies im LSTM (mit der Sigmoid-Aktivierungsfunktion) unbedingt der Fall ist. Dies könnte das von Ihnen erwähnte Problem des katastrophalen Vergessens verringern und somit die Skalierbarkeit verbessern.

Die DNC ist auch in den Verbindungen neu, die sie zwischen Speicher verwendet. Dies könnte jedoch eine geringfügigere Verbesserung gegenüber dem LSTM darstellen, als es scheint, wenn wir uns den LSTM mit vollständigen neuronalen Netzen für jedes Gate anstelle nur einer einzelnen Schicht mit Aktivierungsfunktion erneut vorstellen (nennen Sie dies einen Super-LSTM). In diesem Fall können wir tatsächlich jede Beziehung zwischen zwei Slots im Speicher mit einem ausreichend leistungsfähigen Netzwerk lernen. Obwohl ich die Besonderheiten der von DeepMind vorgeschlagenen Links nicht kenne, implizieren sie in dem Artikel, dass sie alles lernen, indem sie Farbverläufe wie ein reguläres neuronales Netzwerk zurückpropagieren. Daher sollte jede Beziehung, die sie in ihren Links codieren, theoretisch von einem neuronalen Netzwerk erlernbar sein, und daher sollte ein ausreichend leistungsfähiger "Super-LSTM" in der Lage sein, diese zu erfassen.

Abgesehen davon ist es beim Deep Learning häufig der Fall, dass zwei Modelle mit der gleichen theoretischen Ausdrucksfähigkeit in der Praxis sehr unterschiedliche Leistungen erbringen. Stellen Sie sich zum Beispiel vor, dass ein wiederkehrendes Netzwerk als großes Feed-Forward-Netzwerk dargestellt werden kann, wenn wir es nur ausrollen. In ähnlicher Weise ist das Faltungsnetzwerk nicht besser als ein neuronales Vanille-Netzwerk, da es eine gewisse zusätzliche Ausdruckskraft besitzt. in der Tat ist es die auf ihren Gewichten auferlegten Beschränkungen , die es macht mehr wirksam. Ein Vergleich der Aussagekraft zweier Modelle ist daher weder ein fairer Vergleich ihrer Leistung in der Praxis noch eine genaue Prognose der Skalierbarkeit.

Eine Frage, die ich zu DNC habe, ist, was passiert, wenn der Speicher knapp wird. Wenn einem klassischen Computer der Speicher ausgeht und ein weiterer Speicherblock angefordert wird, stürzen die Programme (bestenfalls) ab. Ich bin gespannt, wie DeepMind dies angehen wird. Ich gehe davon aus, dass dies auf einer intelligenten Kannibalisierung des derzeit verwendeten Speichers beruhen wird. In gewisser Hinsicht tun dies Computer derzeit, wenn ein Betriebssystem anfordert, dass Anwendungen nicht kritischen Speicher freigeben, wenn der Speicherdruck einen bestimmten Schwellenwert erreicht.

eric.mitchell
quelle