0

Ich habe zwei Gaussian Verteilung Proben, eine Guassian enthält 10.000 Proben und die andere Gaussian enthält auch 10.000 Proben, würde ich gerne ein Feed-Forward neuronalen Netzwerk mit diesen Proben, aber ich weiß nicht, wie viele Proben, die ich nehmen muss, um eine optimale Entscheidungsgrenze zu erhalten. Hier ist der Code, aber ich weiß nicht genau, die Lösung und die Ausgabe sind komisch.Feedforward-neurale Netzwerk-Klassifizierung in Matlab

x1 = -49:1:50; 
x2 = -49:1:50; 
[X1, X2] = meshgrid(x1, x2); 
Gaussian1 = mvnpdf([X1(:) X2(:)], mean1, var1);// for class A 
Gaussian2 = mvnpdf([X1(:) X2(:)], mean2, var2);// for Class B 
net = feedforwardnet(10); 
G1 = reshape(Gaussian1, 10000,1); 
G2 = reshape(Gaussian2, 10000,1); 
input = [G1, G2]; 
output = [0, 1]; 
net = train(net, input, output); 

Wenn ich den Code lief es mir seltsam Ergebnisse. Wenn der Code nicht korrekt ist, kann mir jemand bitte vorschlagen, dass ich eine Entscheidungsgrenze für diese beiden Distributionen bekomme.

+0

Es ist mir nicht klar, was Sie wirklich wollen. Können Sie Ihr Trainingsgerät genauer beschreiben? –

+0

Mit einfachen Worten, ich möchte die Genauigkeit dieses Feed-Forward-NN finden, ich möchte eine Entscheidungsgrenze dieses Klassifikators für diese Gauss-Verteilungen zeichnen. :) – ASAD

+0

Um die Entscheidungsgrenze zu zeichnen, kann dieser Beitrag von einiger Hilfe sein: http://stackoverflow.com/questions/33502666/draw-divisory-mlp-line-totget-with-chart-in-matlab/33503674#33503674 – rayryeng

Antwort

0

Ich bin mir ziemlich sicher, dass die Eingabe die Gaußsche Verteilung sein muss (und nicht die x Koordinaten). In der Tat muss das NN die Beziehung zwischen den interessierenden Phänomenen selbst (den Gauß-Verteilungen) und den Ausgabe-Labels verstehen und nicht zwischen dem Raum, in dem die Phänomene und die Label enthalten sind. Darüber hinaus, wenn Sie die x Koordinaten wählen, wird der NN versuchen, eine Beziehung zwischen den letzteren und den Ausgabe Etiketten zu verstehen, aber die x sind etwas von potenziell konstant (dh die Eingabedaten können sogar alle gleich sein, weil Sie haben können sehr unterschiedliche Gauß-Verteilung im gleichen Bereich der x Koordinaten nur die Mittelwert und die Varianz zu variieren). Daher wird die NN verwirrt, weil die gleichen Eingabedaten mehr Ausgabebezeichnungen haben (und Sie wollen nicht, dass dieses Ding passiert !!!).
Ich hoffe, ich war hilfreich.

P.S .: Zweifelns muss ich Ihnen sagen, dass das NN nicht sehr gut zu den Daten passt, wenn Sie ein kleines Trainingset haben. Vergessen Sie außerdem nicht, Ihr Datenmodell mit der Cross-Validation-Methode zu validieren (eine gute Faustregel ist, dass Sie 20% Ihres Trainingssatzes für den Kreuzvalidierungssatz und weitere 20% des gleichen Trainingssatzes für den Test verwenden) Stellen Sie also nur die restlichen 60% Ihres Trainingssets ein, um Ihr Modell zu trainieren.

+0

Es ist wahr, dass ich die Gaußschen Verteilungen als Eingabe und Label [0,1] als Ausgabe verwenden werde. Aber ich habe ein anderes Problem, meine erste Gaussverteilung hat 100x100 = 10.000 Samples und eine andere Gaussverteilung hat auch 100x100 = 10.000 Samples Probe 20.000, ich weiß nicht, wie viele Proben ich nehmen muss, um eine vernünftige Entscheidung zwischen diesen beiden Klassen zu treffen. – ASAD

+0

Korrigieren Sie mich, wenn ich falsch verstanden habe: Sie haben eine multivariate Normalverteilung (oder eine multidimensionale Gaußsche Verteilung) und Sie wollen die Beziehung der Wahrscheinlichkeitsverteilung der letzteren Gaußschen mit einigen Klassen untersuchen. Recht? In diesem Fall möchten Sie, dass Ihre 100x100-Matrix die Merkmale Ihrer Hypothesenfunktion ist. Also, warum willst du ein NN auf diesem Trainingssatz von nur zwei Beispielen verwenden? – Danix89

+0

Ich habe zwei Gaussiane G1 und G2 und benutze den Bayes-Theorem Ich habe die hinteren Wahrscheinlichkeiten dieser Gaussiane berechnet und dann die Entscheidungsgrenze zwischen diesen Verteilungslinien geplottet. Jetzt ist meine nächste Aufgabe, die gleichen Gauß'schen Verteilungsmuster zu verwenden und diese auf Feed forward NN anzuwenden und vergleiche die Ergebnisse. Ich hoffe, dies wird die Bedeutung der Frage klären. – ASAD