Lernen neuronale Netze eine Funktion oder eine Wahrscheinlichkeitsdichtefunktion?

17

Die Frage klingt vielleicht etwas seltsam, weil ich statistische Inferenz und neuronale Netze noch nicht kenne.

Bei Klassifizierungsproblemen mit neuronalen Netzen wollen wir eine Funktion lernen , die den Raum der Eingänge auf den Raum der Ausgänge abbildet : x yfxy

f(x;θ)=y

Passen wir die Parameter ( θ ) an, um eine nichtlineare Funktion oder eine Wahrscheinlichkeitsdichtefunktion zu modellieren?

Ich weiß nicht wirklich, wie ich die Frage besser schreiben soll. Ich habe beide Dinge mehrmals gelesen (Wahrscheinlichkeitsdichtefunktion oder Funktion einfach so), daher meine Verwirrung.

sdiabr
quelle

Antworten:

14

Genau genommen passen neuronale Netze zu einer nichtlinearen Funktion.

Sie können als Anpassung einer Wahrscheinlichkeitsdichtefunktion interpretiert werden, wenn geeignete Aktivierungsfunktionen ausgewählt und bestimmte Bedingungen eingehalten werden (Werte müssen positiv und 1 usw. sein). Aber das ist eine Frage der Art und Weise, wie Sie die Ergebnisse interpretieren, nicht der tatsächlichen Aktivitäten. Unter der Haube handelt es sich immer noch um nichtlineare Funktionsschätzer, die Sie auf das spezifische Problem der PDF-Schätzung anwenden.

Skander H. - Setzen Sie Monica wieder ein
quelle
3
@sdiabr Eigentlich würden Sie den Schwellenwert nicht verwenden, wenn das Netzwerk ein PDF simulieren soll, da ein PDF andere Werte als 1 und 0 haben kann. Mit dem Schwellenwert wird es zu einem einfachen Klassifikator.
Skander H. - Reinstate Monica
2
Der richtige Weg, dies zu betrachten, besteht darin, dass die Schwellenwerte ein Problem darstellen, das außerhalb des vom Netzwerk gelernten liegt. Die Nichtbeachtung dieser Unterscheidung verursacht viele Probleme bei der Anwendung von ML auf Probleme der realen Welt.
Matthew Drury
1
Ja okey, ich verstehe. Wenn ich also die Schwelle vergessen hätte, würde ich dann ein PDF modellieren? Ich glaube, ich war verwirrt mit dem Schwellenwert, weil ich etwas über das Modellieren einer Bernouilli-Distribution gelesen habe. Aber ohne die Schwelle ist das doch schon Bernoilli, oder? In dem Fall haben wir nur einen Ausgangsknoten mit einer Sigmoid-Aktivierungsfunktion, der 0 oder 1 mit einer Wahrscheinlichkeit p oder (1-p)
ausgibt
1
Ja, ich war wieder verwirrt, danke @CagdasOzgenc. Versuchen wir es noch einmal: Mit einer Sigmoid-Funktion in der Ausgabeebene modellieren wir direkt ein PDF, oder? nach welcher Verteilung es auch immer lernen mag, zu folgen.
Diabr
2
Sie lernen jedoch nicht über die Wahrscheinlichkeitsverteilung der unbekannten Koeffizienten, daher lernen Sie nicht über die posteriore prädiktive Verteilung.
Dreistes Gleichgewicht
10

Im Allgemeinen werden neuronale Netze nicht zum Modellieren vollständiger Wahrscheinlichkeitsdichten verwendet. Ihr Fokus liegt darauf, nur den Mittelwert einer Verteilung (oder in einer deterministischen Situation einfach eine nichtlineare Funktion) zu modellieren. Dennoch ist es sehr gut möglich, vollständige Wahrscheinlichkeitsdichten über neuronale Netze zu modellieren.

Ein einfacher Weg, dies zu tun, besteht zum Beispiel in einem Gaußschen Fall darin, den Mittelwert von einer Ausgabe und die Varianz von einer anderen Ausgabe des Netzwerks zu emittieren und dann die Funktion als Teil von zu minimieren der Trainingsprozess anstelle des allgemeinen quadratischen Fehlers. Dies ist das Maximum-Likelihood-Verfahren für ein neuronales Netzwerk.-lÖGN(y|x;μ,σ)

Wenn Sie dieses Netzwerk jedes Mal trainieren, wenn Sie einen Wert als Eingabe eingeben , erhalten Sie das μ und das σ . Anschließend können Sie das gesamte Triplett y , μ , σ mit der Dichte f ( y | x ) N ( μ , σ ) um den Dichtewert für jedes beliebige y zu erhalten . In diesem Stadium können Sie den zu verwendenden y- Wert basierend auf einer realen Domain-Loss-Funktion auswählen. Beachten Sie, dass für μ die Aktivierung des Ausgangs nicht eingeschränkt sein sollte, damit Sie Folgendes ausgeben können :xμσy,μ,σf(y|x)N(μ,σ)yyμ bis + inf, während σ nur eine positive Aktivierung sein sollte.inf+infσ

Sofern es sich nicht um eine deterministische Funktion handelt, nach der wir streben, ist das in neuronalen Netzen verwendete Standardtraining mit quadratischem Verlust so ziemlich das gleiche Verfahren, das ich oben beschrieben habe. Unter der Haube a Verteilung implizit ohne Sorge um die angenommen wird , σ und wenn man sorgfältig prüfen - l o g N ( y | x ; μ , σ ) erhalten Sie einen Ausdruck für squared Verlust ( Der Verlust Funktion des Gaußschen Maximum-Likelihood-Schätzers ). In diesem Szenario jedoch anstelle eines yGaussianσlogN(y|x;μ,σ)yWenn Sie einen Wert nach Ihren Wünschen wählen, müssen Sie jedes Mal ausgeben, wenn Sie einen neuen x- Wert erhalten.μx

Für die Klassifikation wird die Ausgabe a sein Verteilung anstelle eines G a u s s i a n , die einen einzigen Parameter auszusenden hat. Wie in der anderen Antwort angegeben, liegt dieser Parameter zwischen 0 und 1, sodass die Aktivierung des Ausgangs entsprechend erfolgen sollte. Dies kann eine logistische Funktion sein oder etwas anderes, das den gleichen Zweck erfüllt.BernoulliGaussian01

Ein differenzierterer Ansatz ist Bishops Mixture Density Networks. Sie können darüber in dem Artikel nachlesen, auf den häufig verwiesen wird:

https://publications.aston.ac.uk/373/1/NCRG_94_004.pdf

Cagdas Ozgenc
quelle
Autsch, du hast mich verprügelt. Ich wollte Bishops MDNs zitieren. Es gibt auch eine andere Möglichkeit, Neuronale Netze dazu zu bringen, PDFs auszugeben. Dies ist natürlich das Bayes'sche Paradigma. Ich werde darauf eine Antwort schreiben.
DeltaIV
Ein weiteres witziges
Matthew Drury
Sollte "das gesamte Triplett y, μ, σ" in "das gesamte Triplett x, μ, σ" geändert werden?
Moh
@moh nein. x ist gegeben und erscheint nicht in der Dichte.
Cagdas Ozgenc
1

Meine abweichende Antwort lautet, dass es in den eindrucksvollsten praktischen Anwendungen (zum Beispiel in den Medien, in denen sie am meisten Beachtung finden) weder auf die Funktion noch auf die Wahrscheinlichkeiten ankommt. Sie implementieren stochastische Entscheidungen.

An der Oberfläche sieht es so aus, als würden NN nur die Funktion anpassen und die universelle Approximationsreferenz in die Warteschlange stellen . In einigen Fällen kann NN die Wahrscheinlichkeitsverteilungen erzeugen, wenn bestimmte Aktivierungsfunktionen und bestimmte Annahmen wie Gaußsche Fehler verwendet werden oder wenn Sie Artikel in Bayes'schen Netzwerken lesen.

Dies ist jedoch alles nur nebenbei. NN soll die Entscheidungsfindung modellieren. Wenn ein Auto von AI gefahren wird, versucht seine NN nicht, die Wahrscheinlichkeit zu berechnen, dass es ein Objekt vor sich hat, vorausgesetzt, es gibt ein Objekt, mit dem die Wahrscheinlichkeit berechnet werden kann, dass es sich um einen Menschen handelt. Es wird auch nicht die Zuordnung von Sensoreingaben zu verschiedenen Arten von Objekten berechnet. Nein, NN soll eine Entscheidung treffen, die auf allen Eingaben basiert, um seitwärts zu lenken oder weiter durchzufahren. Es berechnet nicht die Wahrscheinlichkeit, es sagt dem Auto, was zu tun ist.

Aksakal
quelle