Angenommen, Sie haben eine Eingabeebene mit n Neuronen und die erste verborgene Ebene hat Neuronen, typischerweise m < n . Dann berechnen Sie die Aktivierung a j des j- ten Neurons in der verborgenen Schicht durch
, wobei f eine Aktivierungsfunktion wie tanh oder sigmoid ist .
Um das Netzwerk zu trainieren, berechnen Sie die Rekonstruktion der mit bezeichneten Eingabe und minimieren den Fehler zwischen z und x . Nun wird das i- te Element in z typischerweise wie folgt berechnet:
Ich frage mich, warum die rekonstruierten normalerweise mit derselben Aktivierungsfunktion berechnet werden, anstatt die Umkehrfunktion zu verwenden, und warum getrennte w ' und b ' nützlich sind, anstatt gebundene Gewichte und Verzerrungen zu verwenden. Es erscheint mir viel intuitiver, die mit der inversen Aktivierungsfunktion f - 1 , z. B. arctanh , rekonstruierte wie folgt zu berechnen :
Es ist zu beachten, dass hier gebundene Gewichte verwendet werden, dh , und die Vorspannungen b j der verborgenen Schicht verwendet werden, anstatt einen zusätzlichen Satz von Vorspannungen für die Eingabeschicht einzuführen.
Und eine sehr verwandte Frage: Um Merkmale zu visualisieren, anstatt die Rekonstruktion zu berechnen, würde man normalerweise eine Identitätsmatrix mit der Dimension der verborgenen Schicht erstellen. Dann würde man jede Spalte der Matrix als Eingabe für eine Reaktivierungsfunktion verwenden, die eine Ausgabe in den Eingangsneuronen induziert. Wäre es für die Reaktivierungsfunktion besser, dieselbe Aktivierungsfunktion (bzw. das ) oder die Umkehrfunktion (bzw. das z ' i ) zu verwenden?
quelle