Was steht dem Einsatz gepulster neuronaler Netze in Anwendungen im Wege?

13

Gepulste oder spitzende neuronale Netze berücksichtigen einen größeren Teil der Membrandynamik biologischer Neuronen, wobei Impulse Informationen zur nächsten Schicht übertragen. Die Neuronen müssen nicht unbedingt alle gleichzeitig "feuern", wie dies zum Beispiel in einem Backprop der Fall wäre.

Es scheint jedoch Hindernisse zu geben, diese Modelle für Probleme des maschinellen Lernens einzusetzen. Welche spezifischen Probleme stehen Praktikern des maschinellen Lernens im Weg, wenn sie Modelle verwenden, die biologisch realistischer sind?

jonsca
quelle

Antworten:

12

Das Hauptproblem ist, dass niemand weiß, wie das Gehirn funktioniert :)

Theorie

Soweit ich das beurteilen kann, gibt es drei große Schritte in der neuronalen Netzwerkforschung:

  1. Perceptron-Modell (oder Schwellenwert-Gate-Modell), bei dem eine beliebige Boolesche Funktion von einem mehrschichtigen Perceptron mit einer einzigen verborgenen Schicht berechnet werden kann.
  2. Neuron-Modell - verbesserte Version des vorherigen Modells, bei der Netzwerkelemente die Sigmoid-Aktivierungsfunktion verwenden (fortlaufender Satz möglicher Ein- und Ausgänge). Sie können auch eine beliebige Boolesche Funktion (nach Anwenden eines Schwellenwerts) berechnen und zusätzlich eine beliebige stetige Funktion approximieren.
  3. Spiking-Neuronen-Modell, das "zeitliche Codierung" verwendet, um Informationen zwischen Netzwerkelementen weiterzuleiten. Es kann alles, was das Vorgängermodell tut, und dies oft mit weniger Neuronen.

Grundsätzlich besteht die Entwicklung darin, der Funktionsweise des menschlichen Gehirns näher zu kommen, und das letzte Modell hat die beste Wiedergabetreue.

Trainieren

SNNs scheinen sehr vielversprechend zu sein und es gibt sogar ein spezielles Produkt , auf dem SpikeNET aufbaut (unter "Was SpikeNET kann" und "Was SpikeNET noch nicht kann" können Sie die Probleme sehen, mit denen sie konfrontiert sind).

Ich kann nichts über bestimmte Probleme mit Spiking-Netzwerken sagen - aber im Allgemeinen habe ich den Eindruck, dass diese Probleme auftreten, weil die Leute wollen, dass SNNs immer mehr wie ein menschliches Gehirn funktionieren:

  • Sie möchten festlegen, wie Informationen codiert werden sollen - dies kann über eine Verzögerungscodierung (bei stärker stimulierten Neuronen kommt es häufiger und früher zu Spitzen ), eine binäre Codierung (Informationen werden durch die Anzahl der Spitzen innerhalb eines bestimmten Zeitintervalls dargestellt) und eine Zeitcodierung erfolgen (Information ist das Gegenteil der Granularität des unterscheidbaren Zeitintervalls), Rangordnungscodierung (erste von einem Neuron empfangene Spitzen werden beeinflusst und spätere gehemmt) und so weiter.
  • Sie emulieren die hebräische Plastizität, die die Gewichte zwischen Neuronen erhöht, wenn beide Neuronen gleichzeitig "an" (oder beide "aus") sind.
  • Sie wenden Selbstorganisation an, wenn eine Gruppe von Neuronen mit dem siegreichen Neuron konkurriert und die Reaktion anderer Neuronen hemmt. Mit einem Spiking-Neuron kann der Gewinner schnell basierend auf einzelnen Zündereignissen berechnet werden.

Wikipedia hat einen Link zum Buch "Pulsed Neural Networks", das den Abschnitt "Implementation Issues of Pulse-Coded Neural Networks" enthält, aber ich bin nicht gut genug ausgebildet, um dies zu kommentieren.

Zur Einführung in das Thema empfehle ich dieses Papier: Gepulste neuronale Netze und ihre Anwendung ( pdf )

andreister
quelle
1
Ich bin damit einverstanden, dass niemand weiß, wie das Gehirn funktioniert, aber seit den 30er Jahren gibt es gute, physiologisch genaue Membranmodelle. Hervorragende Informationen in der Antwort, aber nach dem, was Sie geschrieben haben, würde ich denken, dass die Praktizierenden ermutigt werden , sie zu verwenden, anstatt sich zu entmutigen.
Jonsca
Ja genau - sie werden von diesen Themen ermutigt! :)
andreister
0

Es scheint, dass alle neuronalen Netzwerkalgorithmen in ihren Trainingsalgorithmen eine Art Gradientenabstieg verwenden, und sogar Nicht-ANN-Modelle verwenden Gradientenabstieg. Es scheint keine Theorie darüber zu geben, wie man den Gradientenabstieg zeitlich über SNNs anwendet. Eine Möglichkeit ist ein Anstieg des neuromorphen Rechnens, bei dem biologisch realistischere Modelle verwendet werden, die den SNNs ähneln. Es scheint jedoch, dass es im neuromorphen Bereich bisher keine starken Benchmarks / Durchbrüche für maschinelles Lernen gibt, wie bei sehr genauen Benchmarks, die mit ANNs bei vielen Standard-ML-Problemen wie Handschrifterkennung, Spracherkennung, Objekterkennung, Sprachübersetzung usw. erzielt wurden.

vzn
quelle
re neuromorphe Computing, etwas ähnliche Frage ist es ein Programmiermodell für die selbstlernende Systeme neuromorphe cs.se
VZN