Es gibt eine berechnete und sprachliche Lücke. Die Studien neuronaler Systeme und Wahrscheinlichkeitsmodelle haben keine gemeinsame Sprache. Ich werde dieses Gedankenloch wahrscheinlich einrahmen und eine besser koordinierte Anstrengung und einen koordinierteren Diskurs zwischen diesen Bereichen in Betracht ziehen und eine vorhersehbare Ausführung (Github connect) geben. Für den unwahrscheinlichen Fall, dass zahlreiche Wörter hier anders sind als bei Ihnen, springen Sie zum Glossar.

Variationale Autoencoder sind cool. Sie ermöglichen es uns, komplexe generative Modelle von Informationen zu strukturieren und sie an riesige Datensätze anzupassen. Sie können Bilder von anekdotischen Gesichtern großer Namen und von hochgesteckten Zielen computergestützter Handwerkskunst erzeugen.

Diese Modelle bringen ebenfalls die besten Ergebnisse in der Klasse, AI bewirkt ein Bildalter und unterstützt das Lernen. Variationale Autoencoder (VAEs) wurden 2013 von Kingma et al. charakterisiert, außerdem Rezende et al…

Wie könnten wir eine Sprache schaffen, in der man über Variations-Autoencoder spricht? Wie wäre es, wenn wir sie zunächst unter Verwendung neuronaler Systeme betrachten, und zwar zu diesem Zeitpunkt unter Verwendung von Wahrscheinlichkeitsmodellen der Variationsinduktion.

Die Neuronale Netz-Perspektive

In der Sprache des neuronalen Netzes besteht ein Variations-Autokodierer aus einem Kodierer, einem Dekodierer und einer Verlustfunktion.

Der Kodierer ist ein neuronales System. Seine Info ist ein Datenpunkt xx, seine Ausbeute eine verborgene Darstellung zz, und es hat Belastungen und Veranlagungen \thetaθ. Um solide zu sein, nehmen wir an, xx ist ein 28 mal 28 Pixel großes Foto einer handgeschriebenen Zahl. Der Kodierer ‘kodiert’ die 784784-dimensionale Information in einen ruhenden (verdeckten) Darstellungsraum zz, der wesentlich kleiner als 784784 Messungen ist. Dies wird gemeinhin als “Flaschenhals” bezeichnet, mit der Begründung, dass sich der Codierer mit einem gekonnten Druck der Information in diesen niederdimensionalen Raum vertraut machen muss. Wie wäre es, wenn wir den Encoder q_\theta (z \Mitte x)q

​θ

(z∣x). Wir stellen fest, dass der niederdimensionale Raum stochastisch ist: der Enkoder liefert Parameter zu q_\theta (z \Mitte x)q

​θ

(z∣x), die eine Gauß’sche Wahrscheinlichkeitsdicke ist. Wir können aus dieser Übertragung testen, um laute Einschätzungen der Darstellungen zz zu erhalten.

Der Decoder ist ein weiteres neuronales Netz. Seine Information ist die Darstellung zz, er liefert die Parameter zur Wahrscheinlichkeit der Aneignung der Information, und hat Lasten und Neigungen \phiϕ. Der Decoder wird mit p_\phi(x\mit z)p bezeichnet.

​ϕ

(x∣z). Nehmen wir an, dass die Fotografien kontrastreich sind und zu jedem Pixel als 00 oder 11 sprechen, wenn sie mit dem handgeschriebenen Ziffernmodell laufen. Die Wahrscheinlichkeit der Verbreitung eines einzelnen Pixels kann dann mit Hilfe einer Bernoulli-Appropriation angesprochen werden. Der Decoder erhält als Information die ruhende Darstellung einer Ziffer zz und liefert 784784 Bernoulli-Parameter, einen für jedes der 784784 Pixel im Bild. Der Decoder ‘entziffert’ die echten geschätzten Zahlen in zz in 784784 echte geschätzte Zahlen irgendwo im Bereich von 00 und 11. Die Daten des ersten 784784-dimensionalen Vektors können nicht hervorragend übertragen werden, da der Decoder sich nur einer Zusammenfassung der Daten nähert (als ein unter 784784-dimensionaler Vektor zz). Welche Datenmenge geht verloren? Wir messen dies mit Hilfe der Remaking-Log-Wahrscheinlichkeit \log p_\phi (x\mid z)logp

​ϕ

(x∣z), deren Einheiten nats sind. Dieses Maß zeigt uns, wie adäquat der Decoder herausgefunden hat, wie ein Informationsbild xx angesichts seiner untätigen Darstellung zz neu erstellt werden kann.

Die Unglückskapazität des Variations-Autoencodierers ist die negative Log-Wahrscheinlichkeit mit einem Regularisierer. Da es keine weltweiten Darstellungen gibt, die von allen Datenpunkten geteilt werden, können wir die Unglücksarbeit in gerechte Begriffe zerlegen, die sich auf einen einzelnen Datenpunkt l_il

​i

​​ . Das allumfassende Unglück ist dann \sum_{i=1}^N l_i∑

​i=1

​N

​​ l

​i

für NN vollständige Datenpunkte. Das Unglückswerk l_il

​i

für Datenpunkt x_ix

​i

ist:

Der primäre Begriff ist das Reproduktionsunglück bzw. die erwartete negative Log-Wahrscheinlichkeit des ii-ten Datenpunktes. Der Wunsch wird hinsichtlich der Verbreitung des Encoders über die Darstellungen geäußert. Dieser Begriff drängt den Decoder dazu, herauszufinden, wie die Information wiedergegeben werden kann. Für den Fall, dass die Ausbeute des Decoders die Information nicht gut reproduziert, stellen wir faktisch fest, dass der Decoder eine Wahrscheinlichkeitsaneignung parametrisiert, die der echten Information nicht viel Wahrscheinlichkeitsmasse verleiht. Wenn wir z.B. wahrscheinlich kontrastreiche Bilder zeigen werden und unser Modell mit hoher Wahrscheinlichkeit dunkle Flecken anzeigt, wo es wirklich weiße Flecken gibt, ergibt dies die denkbar schrecklichste Wiedergabe. Eine schlechte Reproduktion wird bei diesem Unglückswerk einen enormen Aufwand verursachen.

Der nachfolgende Begriff ist ein Regularisierer, den wir einwerfen (wie er abgeleitet wird, werden wir später erkennen). Dies ist der Kullback-Leibler-Unterschied zwischen der Verbreitung des Enkoders q_\theta(z\Mitte x)q

​θ

(z∣x) und p(z)p(z). Diese Unähnlichkeit schätzt, wie viele Daten (in Einheiten von nats) verloren gehen, wenn qq zum Sprechen mit pp verwendet wird. Sie ist ein Teil davon, wie nahe qq an pp liegt.

Im Variations-Autoencoder wird pp als Standard Typische Zirkulation mit Mittelwert Null und Fluktuation Eins oder p(z) = Normal(0,1)p(z)=Normal(0,1) bestimmt. Für den unwahrscheinlichen Fall, dass der Encoder Darstellungen zz liefert, die im Verhältnis zu denen aus der typischen Standard-Zirkulation einzigartig sind, erhält er eine Strafe im Unglücksfall. Dieser Regularisierer-Begriff bedeutet “die Darstellungen zz jeder Ziffer angemessen unterschiedlich halten”. Für den unwahrscheinlichen Fall, dass wir den Regularisierer ausschließen, könnte der Kodierer herausfinden, wie er betrügen kann, und jedem Datenpunkt eine Darstellung in einem alternativen Schauplatz im euklidischen Raum geben. Das ist schrecklich, wenn man bedenkt, dass dann zwei Bilder einer ähnlichen Zahl (sagen wir eine 2, die aus verschiedenen Individuen zusammengesetzt ist, 2_{alice}2

alice ​alice

und 2_{bob}2

bob ​bob

) könnte mit ganz unterschiedlichen Darstellungen enden z_{alice}, z_{bob}z

alice ​alice

​​ ,z

bob ​bob

​​ . Wir brauchen den Darstellungsraum von zz, um signifikant zu sein, also bestrafen wir dieses Verhalten. Dies hat zur Folge, dass die Darstellungen vergleichbarer Zahlen nahe beieinander gehalten werden (z.B. so die Darstellungen der Ziffer zwei {z_{alice}, z_{bob}, z_{ali}}}z

alice ​alice

​​ ,z

bob ​bob

​​ ,z

ali ​ali

angemessen nahe bleiben).

Wir trainieren den Variations-Autoencoder, der das Gefälle-Lot verwendet, um das Missgeschick bezüglich der Parameter von Encoder und Decoder \thetaθ und \phiϕ zu verbessern. Für stochastische Neigungsabsenkung mit Schrittweite \rhoρ werden die Encoder-Parameter unter Verwendung von \theta \leftarrow \theta – \rho \frac{\partial l}{\partial \theta}θ←θ-ρ aktualisiert.

​∂θ

​∂l

und der Decoder wird ebenfalls aufgefrischt.