Was ist ein künstliches neuronales Netzwerk?


15

Während wir uns mit der Literatur über neuronale Netze befassen, können wir andere Methoden mit neuromorphen Topologien identifizieren ("Neural-Network" -ähnliche Architekturen). Und ich spreche nicht über den Satz der universellen Approximation . Beispiele sind unten angegeben.

Dann frage ich mich: Was ist die Definition eines künstlichen neuronalen Netzwerks? Seine Topologie scheint alles abzudecken.


Beispiele:

Eine der ersten Identifizierungen, die wir vornehmen, besteht zwischen PCA und einem linearen Autoencoder mit gebundenen Gewichten im Encoder und Decoder und schwellwertgesteuerten Aktivierungen in der Engpassschicht.

Es wird auch eine gemeinsame Identifikation zwischen linearen Modellen (speziell der logistischen Regression) und einem neuronalen Netzwerk ohne verborgene Schicht und einer einzelnen Ausgabeschicht durchgeführt. Diese Identifikation öffnet mehrere Türen.

Fourier- und Taylor-Reihen? ANNs . SVM ? ANN. Gaußscher Prozess? ANN (mit einer versteckten Ebene mit unendlichen versteckten Einheiten).

Genauso einfach können wir beliebige regulierte Versionen mit speziellen Verlustfunktionen dieser Algorithmen in ein neuronales Netzwerk-Framework integrieren.

Aber je mehr wir graben, desto mehr Ähnlichkeiten tauchen auf. Ich bin gerade auf Deep Neural Decision Trees gestoßen , mit denen eine bestimmte ANN-Architektur anhand von Entscheidungsbäumen identifiziert werden kann, sodass diese mithilfe von ANN-Methoden (z. B. Gradient Descent Backpropagation) gelernt werden können. Daraus können wir zufällige Wälder und gradientenverstärkte Entscheidungsbäume aus rein neuronalen Netzwerktopologien konstruieren.

Wenn alles als künstliches neuronales Netzwerk ausgedrückt werden kann, was definiert ein künstliches neuronales Netzwerk?


Das Papier über Deep Neural Decision Trees ist ziemlich weit draußen. Normalerweise sind Aktivierungsfunktionen reelle Funktionen, keine äußeren Produkte. Sie diskutieren also nicht wirklich ANNs, wie wir sie normalerweise denken, sondern eine mathematische Verallgemeinerung, die nicht weit verbreitet oder akzeptiert ist. Um zu zeigen, dass sich eine ANN von einem Entscheidungsbaum unterscheidet, möchte ich lediglich darauf hinweisen, dass alle ANN parametrisch sind (einen endlichen Parameterraum haben), während Bäume nicht parametrisch sind (einen potenziell unendlichen Parameterraum haben.)
olooney

@olooney das Kronecker-Produkt ist keine Aktivierungsfunktion, es ist einfach eine Operation an den Ausgängen der vorherigen Ebene (wie eine Faltung oder eine andere Operation, die wir über Aktivierungen definieren). Der DNDT kann jeden Entscheidungsbaum darstellen, UND jeder DNDT kann durch einen Entscheidungsbaum dargestellt werden.
Firebug

1
@olooney Laut Ihrer Definition der Aktivierungsfunktion ist Softmax keine Aktivierungsfunktion.
Firebug

2
Ich bin nicht ganz sicher, ob ich die Motivation für diese Frage verstehe. Eine mögliche, lose Definition eines ANN ist, dass es ein gerichtetes grafisches Modell ist, das Neuronen (dh Aktivierungsfunktionen) zur Verarbeitung von Eingaben / Ausgaben verwendet und die meiste Zeit verwenden Sie Gradientenabstieg, um es zu trainieren. Wenn Sie sagen, dass "alles als ANN ausgedrückt werden kann", fragen Sie speziell, ob es eine genaue Zuordnung zwischen den genannten anderen Modellen und ANNs gibt? Das Problem ist, dass Sie sich stark veränderte Trainingsroutinen einfallen lassen müssen, um den Optimierungen zu entsprechen.
Alex R.

1
@Sycorax mache ich auch, er und Hinton haben es angedeutet. Ich möchte den Beantwortern im anderen Lager die Möglichkeit geben, glaubwürdige Quellen zur Verfügung zu stellen :)
Firebug

Antworten:


6

Jürgen Schmidhuber, " Deep Learning in neuronalen Netzen : Ein Überblick ", beschreibt die Geschichte der Schlüsselkonzepte in neuronalen Netzen und Deep Learning. Seiner Ansicht nach scheinen neuronale Netze im Wesentlichen jedes Modell zu umfassen, das als gerichteter Graph charakterisiert werden kann, wobei jeder Knoten eine Recheneinheit darstellt. Schmidhuber ist ein bekannter Forscher für neuronale Netze und hat mit Sepp Hochreiter die Originalarbeit über LSTM-Netze verfasst.

Welche veränderbaren Komponenten eines Lernsystems sind für dessen Erfolg oder Misserfolg verantwortlich? Welche Änderungen verbessern die Leistung? Dies wurde als grundlegendes Problem der Kreditvergabe bezeichnet (Minsky, 1963). Es gibt allgemeine Kreditvergabemethoden für universelle Problemlöser, die in verschiedenen theoretischen Sinnen zeitoptimal sind (Abschnitt 6.8). Die vorliegende Umfrage konzentriert sich jedoch auf das engere, aber jetzt kommerziell wichtige Teilgebiet des Deep Learning (DL) in künstlichen neuronalen Netzen (NNs).

Ein standardmäßiges neuronales Netzwerk (NN) besteht aus vielen einfachen, verbundenen Prozessoren, die als Neuronen bezeichnet werden und jeweils eine Folge von realen Aktivierungen erzeugen. Eingangsneuronen werden durch Sensoren aktiviert, die die Umgebung wahrnehmen, andere Neuronen werden durch gewichtete Verbindungen von zuvor aktiven Neuronen aktiviert (Details in Abschnitt 2). Einige Neuronen können die Umgebung beeinflussen, indem sie Aktionen auslösen. Beim Lernen oder Zuweisen von Credits geht es darum, Gewichte zu finden, mit denen der NN das gewünschte Verhalten zeigt, z. B. Autofahren. Abhängig vom Problem und der Art und Weise, wie die Neuronen miteinander verbunden sind, kann ein solches Verhalten lange Kausalketten von Rechenschritten erfordern (Abschnitt 3), in denen jede Stufe die aggregierte Aktivierung des Netzwerks (häufig auf nichtlineare Weise) transformiert. Beim Deep Learning geht es darum, Credits in vielen solchen Phasen genau zuzuweisen.

Flache NN-ähnliche Modelle mit wenigen solchen Stufen gibt es seit vielen Jahrzehnten, wenn nicht Jahrhunderten (Abschnitt 5.1). Modelle mit mehreren aufeinanderfolgenden nichtlinearen Schichten von Neuronen stammen mindestens aus den 1960er Jahren (Abschnitt 5.3) und 1970er Jahren (Abschnitt 5.5). In den 1960er und 1970er Jahren wurde eine effiziente Gradientenabstiegsmethode für lehrerbasiertes betreutes Lernen (SL) in diskreten, differenzierbaren Netzwerken beliebiger Tiefe namens Backpropagation (BP) entwickelt, die 1981 auf NN angewendet wurde (Abschnitt 5.5). Das BP-basierte Training tiefer NNs mit vielen Schichten hatte sich jedoch in den späten 1980er Jahren in der Praxis als schwierig erwiesen (Abschnitt 5.6) und war in den frühen 1990er Jahren zu einem expliziten Forschungsthema geworden (Abschnitt 5.9). DL wurde zum Teil mit Hilfe von Unüberwachtem Lernen (UL) praktisch durchführbar, z. 5,10 (1991), Sec. 5,15 (2006). In den 1990er und 2000er Jahren wurden auch viele Verbesserungen der rein beaufsichtigten DL vorgenommen (Abschnitt 5). Im neuen Jahrtausend haben tiefe NNs endlich breite Aufmerksamkeit auf sich gezogen, hauptsächlich indem sie alternative Methoden des maschinellen Lernens wie Kernelmaschinen (Vapnik, 1995; Scholkopf et al., 1998) in zahlreichen wichtigen Anwendungen übertroffen haben. Tatsächlich haben beaufsichtigte tiefe NNs seit 2009 viele offizielle internationale Mustererkennungswettbewerbe gewonnen (z. B. Abschnitt 5.17, 5.19, 5.21, 5.22), wodurch die ersten übermenschlichen visuellen Mustererkennungsergebnisse in begrenzten Domänen erzielt wurden (Abschnitt 5.19, 2011). Deep NNs sind auch für den allgemeineren Bereich des Reinforcement Learning (RL) relevant geworden, in dem es keinen betreuenden Lehrer gibt (Abschnitt 6). hauptsächlich, indem alternative Methoden des maschinellen Lernens wie Kernelmaschinen (Vapnik, 1995; Scholkopf et al., 1998) in zahlreichen wichtigen Anwendungen übertroffen werden. Tatsächlich haben beaufsichtigte tiefe NNs seit 2009 viele offizielle internationale Mustererkennungswettbewerbe gewonnen (z. B. Abschnitt 5.17, 5.19, 5.21, 5.22), wodurch die ersten übermenschlichen visuellen Mustererkennungsergebnisse in begrenzten Domänen erzielt wurden (Abschnitt 5.19, 2011). Deep NNs sind auch für den allgemeineren Bereich des Reinforcement Learning (RL) relevant geworden, in dem es keinen betreuenden Lehrer gibt (Abschnitt 6). hauptsächlich, indem alternative Methoden des maschinellen Lernens wie Kernelmaschinen (Vapnik, 1995; Scholkopf et al., 1998) in zahlreichen wichtigen Anwendungen übertroffen werden. Tatsächlich haben beaufsichtigte tiefe NNs seit 2009 viele offizielle internationale Mustererkennungswettbewerbe gewonnen (z. B. Abschnitt 5.17, 5.19, 5.21, 5.22), wodurch die ersten übermenschlichen visuellen Mustererkennungsergebnisse in begrenzten Domänen erzielt wurden (Abschnitt 5.19, 2011). Deep NNs sind auch für den allgemeineren Bereich des Reinforcement Learning (RL) relevant geworden, in dem es keinen betreuenden Lehrer gibt (Abschnitt 6). Das Erreichen der ersten übermenschlichen visuellen Mustererkennung führt zu begrenzten Domänen (Abschnitt 5.19, 2011). Deep NNs sind auch für den allgemeineren Bereich des Reinforcement Learning (RL) relevant geworden, in dem es keinen betreuenden Lehrer gibt (Abschnitt 6). Das Erreichen der ersten übermenschlichen visuellen Mustererkennung führt zu begrenzten Domänen (Abschnitt 5.19, 2011). Deep NNs sind auch für den allgemeineren Bereich des Reinforcement Learning (RL) relevant geworden, in dem es keinen betreuenden Lehrer gibt (Abschnitt 6).

Andererseits bin ich mir nicht sicher, ob es unbedingt rentabel ist, eine Taxonomie von sich gegenseitig ausschließenden Buckets für maschinelle Lernstrategien zu erstellen. Ich denke, wir können sagen, dass es Perspektiven gibt, aus denen Modelle als neuronale Netze betrachtet werden können. Ich denke nicht, dass die Perspektive in allen Kontexten unbedingt die beste oder nützlichste ist. Zum Beispiel plane ich immer noch, zufällige Wälder und Bäume mit Farbverläufen als "Baumensembles" zu bezeichnen, anstatt ihre Unterscheidungen aufzuheben und sie "neuronale Netzwerkbäume" zu nennen. Darüber hinaus unterscheidet Schmidhuber NNs von Kernel-Maschinen - auch wenn Kernel-Maschinen einige Verbindungen zu NNs aufweisen -, wenn er schreibt: "Im neuen Jahrtausend haben tiefe NNs endlich breite Aufmerksamkeit erregt. hauptsächlich, indem alternative Methoden des maschinellen Lernens wie Kernel-Maschinen übertroffen werden ... in zahlreichen wichtigen Anwendungen. "


Im Grunde genommen würde also jedes Modell und jede Heuristik, die heute im Bereich Maschinelles Lernen und Statistik bekannt sind, von Schmidhuber als ANN betrachtet, wobei die eindeutige Nomenklatur einfach durch die Optimierungsstrategie vorgegeben wird (einschließlich der Modelle ohne Optimierung hier).
Firebug

1
Ich verstehe das aus praktischer Sicht, aber es ändert nichts an der Tatsache, dass so ziemlich jedes Modell streng genommen eine ANN ist (ich kann mir kein einzelnes Modell vorstellen, das nicht ist).
Firebug

2
@Firebug Wie würden Sie Regression oder (einfache k-means und andere) Clustering-Probleme, die in einer "Lernumgebung" trainiert oder platziert werden, so umformatieren, dass sie dieser Definition von ANN entsprechen?
Sextus Empiricus

1
@Firebug Ich verstehe nicht, wie die Tatsache, dass PCA einem bestimmten Autoencoder entspricht, PCA zu einem "neuronalen Netzwerk" macht. In der Standard-PCA verwenden wir nicht einmal den Gradientenabstieg.
Amöbe sagt Reinstate Monica

1
@Firebug Wenn du "NN" als "verbundene Rechenknoten" definierst, dann denke ich, dass jede Berechnung eine NN ist. Ich bin mir nicht sicher, ob das von Nutzen ist, aber okay.
Amöbe sagt Reinstate Monica

7

Wenn Sie eine grundlegende Definition eines ANN wünschen, können Sie sagen, dass es sich um ein gerichtetes grafisches Modell handelt, bei dem Ein- und Ausgaben an jedem Knoten über eine Aktivierungsfunktion verarbeitet werden und der größte Teil des Zeitgradientenabfalls zum Trainieren verwendet wird. Es stellt sich also die Frage, welche Modelle da draußen als grafische Modelle ausgedrückt werden können.

Ich bin kein Experte, aber ich glaube, dass theoretisch gezeigt werden kann, dass einige ANNs vollständig sind, was bedeutet, dass sie in der Lage sein sollten, alle möglichen Berechnungen durchzuführen (mit einer möglichen unendlichen Anzahl von Ressourcen, wohlgemerkt).

Ich werde Ihre Frage auch folgendermaßen interpretieren:

Kann ich für ein bestimmtes Modell ein ANN-Modell zusammenfügen, um dieses Modell so nah wie möglich und in angemessener Zeit zu emulieren?

Ein Vanille-Neuronales-Netzwerk kann einen Entscheidungsbaum mithilfe von Heaviside-Step-Aktivierungen emulieren. Das Problem ist, dass solche Einheitenaktivierungen einen Gradienten von Null haben, sodass ein normaler Gradientenabstieg nicht funktioniert. Sie könnten sagen: "Kein Problem, verwenden Sie einfach eine modifizierte Form der Gradientenabnahme." Das reicht aber noch nicht aus. Ein besseres Beispiel ist XGBOOST, bei dem es sich nicht nur um gradientenverstärkte Wälder handelt. Es ist eine Menge zusätzlicher Arbeit erforderlich, um Split-Punkte auszuwählen, zu beschneiden, die Geschwindigkeit zu optimieren usw. Möglicherweise können Sie nach einer ausreichenden Anzahl von Änderungen eine ähnlich aussehende ANN erstellen auch nicht, wenn es für die Arbeit optimiert ist.

f(x)=ex


2
Danke für die Antwort! In Bezug auf die Frage - "For any given model, can I slap together an ANN model to emulate that model, as close as possible, and in a reasonable amount of time?"- muss ich leider sagen, dass das nicht der Punkt ist. Der Punkt ist, dass die ANN-Topologie so allgemein ist, dass sie anscheinend alles abdeckt, und die Optimierungsstrategie nicht in der Lage zu sein scheint, zu bestimmen, was ein ANN ist und was nicht. Daher die Frage, was eine ANN ausmacht? Denn ansonsten ist alles in gewisser Weise eine ANN, die in anderen Begriffen ausgedrückt wird.
Firebug

1
"A vanilla neural network can emulate a decision tree, by using heaviside step-activations. The problem is that such unit activations have zero gradient, so normal gradient descent won't work. You might say, "no problem, just use a modified form of gradient descent." However, that's still not enough. [...]"- Wie wir behaupten könnten, ist Optimierung kein bestimmender Faktor für die Definition dessen, was eine ANN ausmacht. Wenn Sie jeden Entscheidungsbaum als neuronales Netzwerk schreiben können (und das können wir), können wir sicher sagen, dass DTs (eine Art von) NN sind, während die Umkehrung nicht wahr ist.
Firebug

"If you want a basic definition of an ANN, you might say that it's a directed-graphical-model, where inputs and outputs are processed at each node via an activation function, and most of the time gradient descent is used to train it. So the question really becomes: what models out there can be expressed as graphical models?"- Ich stimme dem zu. Dann kann "Neuronales Netz" als die allgemeinste Klasse von Modellen interpretiert werden, möglicherweise nur weniger allgemein als "Graphmodelle", die eine Obermenge von sowohl ungerichteten als auch gerichteten Graphmodellen ist. Vielleicht könnten Sie dies näher erläutern;)
Firebug

2

Vielleicht ist ein genauerer Name für ANNs "differenzierbare Netzwerke", dh komplexe parametrisierte Funktionen, die unter Verwendung von Gradientenabstieg oder seiner Variante optimiert werden können. Dies ist eine sehr allgemeine Definition, die die Differenzierbarkeit betont, aber nichts über Hauptideen, Aufgaben, für die sie geeignet ist, zugrundeliegende mathematische Rahmenbedingungen usw. aussagt.

Beachten Sie, dass Differenzierbarkeit ein Merkmal ist, das nicht unbedingt erforderlich ist. Zum Beispiel kann SVM mit Gradienten trainiert werden und weist somit Eigenschaften eines neuronalen / differenzierbaren Netzwerks auf, die Hauptidee ist jedoch die Datentrennung mit Hilfe von Hyperebenen. Variationale Autoencoder verwenden MLPs für Encoder und Decoder, aber die von Ihnen optimierte Funktion stammt aus der Bayes'schen Statistik und so weiter.

Es gibt auch einige Modelle, die oft als neuronale Netze bezeichnet werden, aber GD nicht zum Lernen verwenden. Ein gutes Beispiel ist RBM. Ich vermute, dass das Label "neuronales Netzwerk" hauptsächlich aus historischen Gründen daran angehängt wurde - schließlich ist der Schöpfer von RBM Geoffrey Hinton, und Hinton ist ein Typ für neuronales Netzwerk, richtig? Wenn Sie das Modell analysieren, werden Sie jedoch feststellen, dass die Struktur des RBM ein Markov-Netz ist. Die energiebasierte Kostenfunktion stammt aus der statistischen Physik zu Beginn des 20. Jahrhunderts, und die MCMC / Gibbs-Abtastung wurde parallel und völlig unabhängig von neuronalen Netzen entwickelt .


2
Gradientenbasiertes Lernen hat sicherlich eine Rolle für den Erfolg von ANNs gespielt. Ich sehe die Differenzierbarkeit jedoch nicht als wesentlich für die Definition an, da einige ANNs nicht differenzierbar sind. Beispielsweise verwendete das allererste ANN (McCulloch-Pitts-Modell) binäre Schwelleneinheiten. Ein aktuelles Forschungsthema ist die Durchführung von Lernvorgängen in nicht differenzierbaren ANNs wie Spikernetzen. Angenommen, wir beginnen mit einem typischen differenzierbaren ANN, erklären dann aber, dass wir eine nicht differenzierbare Verlustfunktion minimieren möchten. Ist es keine ANN mehr?
user20160

Genau aus diesem Grund habe ich eine alternative Definition vorgeschlagen, die sich auf Feed-Forward-, rekursive, rekursive, Faltungsnetzwerke, Autoencoder, VAEs, GANs, Aufmerksamkeit und viele andere Modelle bezieht, die wir normalerweise "neuronale Netzwerke" nennen, aber z. B. Ansätze zur Simulation des menschlichen Gehirns ausschließt oder umfangreiche Probenahme über PGMs. Ab 2018 sind diese Ansätze wirklich unterschiedlich, sie verwenden unterschiedliche Optimierungsmethoden, unterschiedliche Bibliotheken usw. (Obwohl ich mir keinen besseren Namen als "neuronales Netzwerk" für Spiking-Netze vorstellen kann, da sie im Gegensatz zu CNNs oder RNNs tatsächlich Menschen simulieren Gehirn).
Freund

1

Ich könnte versuchen, einige Dinge zu postulieren, die helfen, ein neuronales Netzwerk zu definieren.

  • Ein Berechnungsdiagramm mit einstellbaren Parametern.
  • Diese Parameter können angepasst werden, um mit Daten übereinzustimmen (real oder simuliert).
  • Eine zu optimierende Zielfunktion ist implizit oder explizit beteiligt. Die Parameter können global oder lokal sein.

Ich bin mir ziemlich sicher, dass dies alle heute gebräuchlichen neuronalen Netze und auch einige esoterische Netze abdeckt.

Dies ist für die Optimierung nicht relevant (wenn wir eine gradientenbasierte Optimierung anwenden, sind weiterentwickelte Netzwerke keine neuronalen Netzwerke).

Es werden keine Neuronen / Knoten oder Schichten erwähnt (einige neuronale Netze werden heutzutage kaum mit diesen Begriffen beschrieben), aber ich denke, wir könnten das einbauen und etwas restriktiver sein.

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.