2017-04-07 4 views
1

Angenommen wir ein neuronales Netz trainiert haben ....Neuronale Netze (Backpropagation)

Meine Frage wird, dass gleiche erzeugen neuronale Netz die Daten zurück, wenn wir anwenden, was vorher die Ausgabe als wie in vorlag Eingang?

Ich arbeitete an der MNIST-Datenmenge und fragte mich, was passiert, wenn wir unser Netzwerk von der Ausgabeseite aus trainieren (indem wir die endgültige Ausgabe als Eingabe von dieser Seite verwenden), die den Backpropagation-Algorithmus verwendet.

könnte es trivial sein, aber ich brauche noch etwas Hilfe von der Gemeinde

Mein Denken sagt, dass es die Daten wieder zu bekommen (oder Annäherungen an die ursprünglichen Daten-Set) ... kann es gerechtfertigt sein?

+0

'' '2 + 3 = 5'''. '' '5 = 0 + 5; 1 + 4; 2 + 3'''. Für einen mathematischen Hintergrund sollten Sie die bijektiven Funktionen und das Schubladendenken überprüfen. Für einige Lektüre über andere, aber ähnliche Dinge suchen Sie nach etwas Papier mit dem Titel * Deep Neural Networks sind leicht zu fälschen *. – sascha

+0

@ sascha Was ist, wenn die Inverse für die angegebene Funktion existiert ... – Aditya

+0

Überprüfe das Innenleben deiner NN-Architektur und entscheide selbst. Da es sich um mehrere Schichten handelt, geht die bijektive Natur in allen Fällen außer Theorie verloren. – sascha

Antwort

1

Soweit ich weiß. Es kann nicht. Zumal activation functions (meist) nichtlinear sind.

Ein neuronales Netzwerk ist eine Blackbox (siehe this answer). Zweitens, nehmen Sie f(x) = x^2. Wenn Sie n von f(n) berechnen möchten, dann gibt es zwei mögliche Lösungen; Das gleiche gilt für neuronale Netze, es kann mehrere Lösungen geben, so dass es unmöglich ist, alle zu invertieren. Aber der Hauptpunkt ist: Nur weil Sie die Umkehrung einer Funktion kennen, heißt das nicht, dass Sie die Umkehrung eines neuronalen Netzwerks kennen. Es ist eine Black-Box!

Aber können Sie visualisieren, welche Antwort ein Neuron mit einer bestimmten Eingabe gibt. Zum Beispiel sind dies die ‚Aspekte‘ ein neuronales Netz sucht, ein Gesicht zu erkennen:

enter image description here

Google Deepdream auch die Aspekte verstärkt dafür sucht, bestimmte Objekte zu erkennen. Hör zu!

+0

@ Thomas W was ist, wenn die Umkehrung für die angegebene Funktion verwendet wird ... – Aditya

+1

@ADITYA was wäre wenn? nichts. Es gibt zwei Gründe warum; Zuallererst ist ein neuronales Netzwerk eine Black Box (siehe diese Frage, warum http://stats.stackexchange.com/a/93713/147931). Zweitens, nimm 'f (x) = x^2'. Wenn Sie n aus f (n) berechnen wollen, gibt es zwei mögliche Lösungen. Das gleiche gilt für neuronale Netze, es kann mehrere Lösungen geben, so dass es unmöglich ist, alle zu invertieren. Aber der Hauptpunkt ist: Nur weil Sie die Umkehrung einer Funktion kennen, heißt das nicht, dass Sie die Umkehrung eines neuronalen Netzwerks kennen. Es ist eine Black-Box! –

Verwandte Themen