La respuesta corta es sí, pero (tl; dr) …
Después de entrenar un VAE, tenemos dos asignaciones (típicamente parametrizadas por redes neuronales): una red de codificador y decodificador. Esto es lo mismo que un AE de vainilla, pero la diferencia es que estos se asignan a una distribución sobre valores (vectores) en lugar de estimaciones puntuales. ¿Es esta la misma representación que un AE normal? No. ¿Es útil esta representación para tareas similares? Sí (¡y quizás aún más!).
La pregunta es qué quieres hacer con la representación. En general, si desea compararlo con un AE normal, puede simplemente tomar el modo de la distribución resultante y usarlo como una estimación puntual (MAP). Entonces, como mínimo, podemos hacer con un VAE cualquier cosa que podamos hacer con un AE normal. Lo mejor es que, dado que tenemos una distribución en lugar de una estimación puntual, ¡podemos hacer más! Daré dos ejemplos, pero por supuesto hay otros.
- ¿Cómo modifica una red neuronal su peso sin entrar en un efecto de ping-pong? La función de modificación de peso se basa en el error (l * e * o [1, 2]), por lo que los valores de error altos dan modificaciones de peso drásticas.
- ¿Cuál es la mejor manera de administrar indicadores de función o alternar características para equipos de desarrollo más grandes?
- ¿Qué tan difícil es entrenar idiomas indios con CMUSphinx?
- ¿Quiénes son los grandes nombres en el campo de investigación de los sistemas de recomendación?
- ¿Qué tipos de características se extraen de los archivos de voz utilizando predicción lineal y predicción no lineal?
Generación de muestras: el VAE, a diferencia del AE, especifica completamente una distribución generativa sobre los objetos que representa. Esto implica que más allá de aprender representaciones de baja dimensión, podemos usar el VAE entrenado para generar instancias del objeto que no existen en los datos de entrenamiento. Esto puede ser muy útil para examinar lo que ha aprendido el VAE, el entrenamiento contradictorio y, por supuesto, sorprender a las personas con imágenes bonitas.
Cuantificación de la incertidumbre: una aplicación de codificadores automáticos es la imputación de datos. Un ejemplo es la pintura de imágenes. Esta es una tarea difícil, y los autoencoders han demostrado ser bastante útiles en esto. Sin embargo, esta es una tarea donde hay mucha ambigüedad inherente. Por ejemplo, aquí está la mitad superior de un dígito de MNIST, el resto ha sido pintado de negro (perdón por la resolución):
La tarea es completar esta imagen: ¿es un 8, un 9 o quizás un 0 que no tiene la mitad inferior? La ambigüedad es real, no hay una respuesta “correcta”, y nos gustaría que nuestro modelo refleje eso. Una AE regular forzaría una respuesta para esto, y la declararía con absoluta confianza. Si tuviéramos un sistema que tomara decisiones basadas en el resultado de la EA, tomaría una decisión basada en esa confianza. Sin embargo, un VAE (con suerte) reconocería esta ambigüedad y la cuantificaría a través de la distribución resultante. Esto podría permitir que el sistema aguas abajo sea más robusto ante los errores.