Neuronales Netzwerk - Binäre vs diskrete / kontinuierliche Eingabe

14

Gibt es gute Gründe, Binärwerte (0/1) gegenüber diskreten oder kontinuierlichen normalisierten Werten, z. B. (1; 3), als Eingänge für ein Feedforward-Netzwerk für alle Eingangsknoten (mit oder ohne Backpropagation) zu bevorzugen ?

Natürlich spreche ich nur von Eingaben, die in beide Formen umgewandelt werden könnten. Wenn Sie beispielsweise eine Variable haben, die mehrere Werte annehmen kann, geben Sie diese entweder direkt als Wert eines Eingangsknotens ein oder bilden Sie für jeden diskreten Wert einen Binärknoten . Und die Annahme ist, dass der Bereich der möglichen Werte für alle Eingabeknoten gleich ist. Ein Beispiel für beide Möglichkeiten finden Sie auf den Bildern.

Während ich zu diesem Thema recherchierte, konnte ich keine harten Fakten dazu finden. es scheint mir, dass es am Ende - mehr oder weniger - immer "trial and error" sein wird. Natürlich bedeuten Binärknoten für jeden diskreten Eingabewert mehr Eingabe-Layer-Knoten (und damit mehr Knoten mit versteckten Layern), aber würde dies tatsächlich eine bessere Ausgabe-Klassifizierung ergeben, als dieselben Werte in einem Knoten mit einer gut passenden Schwellenwertfunktion in die versteckte Schicht?

Würden Sie zustimmen, dass es nur "versuchen und sehen" ist, oder haben Sie eine andere Meinung dazu? Möglichkeit eins: direkte Eingabe der möglichen Werte {1; 3} Möglichkeit zwei: Holen Sie sich für jeden Eingangswert einen Binärknoten

cirko
quelle

Antworten:

11

f(wx+b)fx

f(wx+b)wbk

kk

Matt
quelle
Um es kurz zu machen, zeigen Sie auf die Skala der Variablen: metrisch, ordinal und nominal. Nun, ich denke es ist offensichtlich, dass nominale Skalen nicht "berechnet" oder durch eine Funktion dargestellt werden können. In Bezug auf reale Werte neige ich dazu zu denken, dass reale Werte aufgrund der glatteren Übergänge "besser" als "klassifizierte" reale Werte sein könnten, aber ich konnte einfach keinen harten Beweis dafür finden. Scheint mir ein weiterer Fall von "Versuch und Irrtum" zu sein.
Cirko
4

Ja, das gibt es. Stellen Sie sich vor, Sie möchten einen binären Klassifikator erstellen. Dann modellieren Sie Ihr Problem als Schätzung einer Bernoulli-Verteilung, bei der das Ergebnis bei gegebenem Merkmalsvektor entweder zu einer Klasse oder zur anderen gehört. Die Ausgabe eines solchen neuronalen Netzwerks ist die bedingte Wahrscheinlichkeit. Wenn größer als 0,5, ordnen Sie es einer Klasse zu, andernfalls der anderen.

E=y(x)t(1-y(x))1-t
y(x)tt{0,1}
jpmuc
quelle
Ich verstehe, dass ein normalisierter Eingang einem variablen Bereich von Eingangswerten vorzuziehen ist, da dieser den binären Ausgängen, die das Netzwerk erzeugen soll, ähnlicher ist. Aber in meiner Frage wollte ich mich auf normalisierte diskrete Werte eines bestimmten Bereichs beziehen , dh wenn die Eingaben innerhalb eines Bereichs liegen könnten, sollten alle Knoten den gleichen Bereich haben, dh normalisiert sein. Wäre es in diesem Fall immer noch vorzuziehen, für jeden diskreten Wert Binärknoten zu verwenden? (Ich habe jetzt die Frage bearbeitet, um diese Voraussetzung zu erfüllen)
cirko
1

Ich stand auch vor dem gleichen Dilemma, als ich ein Problem löste. Ich habe nicht beide Architekturen ausprobiert, aber wenn die Eingangsvariable diskret ist, hat die Ausgangsfunktion des neuronalen Netzwerks die Eigenschaft der Impulsfunktion und das neuronale Netzwerk ist gut in der Modellierung der Impulsfunktion. Tatsächlich kann jede Funktion mit einem neuronalen Netzwerk mit unterschiedlicher Genauigkeit abhängig von der Komplexität des neuronalen Netzwerks modelliert werden. Der einzige Unterschied besteht darin, dass Sie in der ersten Architektur die Anzahl der Eingaben erhöht haben, sodass Sie mehr Gewicht im Knoten der ersten verborgenen Schicht haben, um die Impulsfunktion zu modellieren, aber für die zweite Architektur benötigen Sie mehr Knoten in der verborgenen Schicht als für die erste Architektur um die gleiche Leistung zu erhalten.

Anshu Abhishek
quelle