Autoencoder ( inglés autoencoder , también - autoassociator ) [1] - una arquitectura especial de redes neuronales artificiales que le permite aplicar el aprendizaje no supervisado [2] cuando se utiliza el método de retropropagación . La arquitectura de autocodificador más simple es una red de avance, sin retroalimentación, más similar a un perceptrón y que contiene una capa de entrada, una capa intermedia y una capa de salida. A diferencia de un perceptrón, la capa de salida de un codificador automático debe contener tantas neuronas como la capa de entrada.
El principio fundamental de funcionamiento y entrenamiento de la red de autocodificadores es obtener una respuesta en la capa de salida más cercana a la de entrada. Para evitar que la solución sea trivial, se imponen restricciones en la capa intermedia del codificador automático: la capa intermedia debe tener una dimensión más pequeña que las capas de entrada y salida, o el número de neuronas de la capa intermedia activas simultáneamente se limita artificialmente: escaso activación _ Estas restricciones obligan a la red neuronal a buscar generalizaciones y correlaciones en los datos de entrada y realizar su compresión. Así, la red neuronal se entrena automáticamente para extraer características comunes de los datos de entrada, que se codifican en los valores de peso de la red neuronal artificial. Entonces, al entrenar una red en un conjunto de diferentes imágenes de entrada, la red neuronal puede aprender de forma independiente a reconocer líneas y rayas en diferentes ángulos.
En la mayoría de los casos, los codificadores automáticos se utilizan en cascada para entrenar redes profundas (multicapa) . Los codificadores automáticos se utilizan para el entrenamiento previo no supervisado de la red profunda . Para ello, las capas se entrenan una tras otra, empezando por la primera. Se conecta una capa de salida adicional a cada nueva capa no entrenada durante el período de entrenamiento, complementando la red con la arquitectura del codificador automático, después de lo cual se alimenta un conjunto de datos para el entrenamiento a la entrada de la red. Los pesos de la capa no entrenada y la capa adicional del codificador automático se entrenan mediante el método de retropropagación. Luego, la capa de autocodificador se desactiva y se crea una nueva correspondiente a la siguiente capa de red no entrenada. El mismo conjunto de datos se alimenta nuevamente a la entrada de la red, las primeras capas entrenadas de la red permanecen sin cambios y funcionan como entrada para el codificador automático de la siguiente capa entrenada. Entonces el entrenamiento continúa para todas las capas de la red excepto para las últimas. Las últimas capas de la red generalmente se entrenan sin el uso de un codificador automático utilizando el mismo método de retropropagación y datos etiquetados (aprendizaje supervisado).
Recientemente, los codificadores automáticos se han utilizado poco para el preentrenamiento en capas "codicioso" descrito de redes neuronales profundas. Después de que este método fuera propuesto en 2006 por Jeffrey Hinton y Ruslan Salakhutdinov [3] [4] , rápidamente resultó que los nuevos métodos de inicialización con pesos aleatorios son suficientes para el entrenamiento adicional de redes profundas [5] . La normalización por lotes propuesta en 2014 [6] hizo posible entrenar redes aún más profundas, mientras que el método de aprendizaje residual propuesto a finales de 2015 [7] hizo posible entrenar redes de profundidad arbitraria [5] .
Las principales aplicaciones prácticas de los autocodificadores siguen siendo la reducción del ruido en los datos, así como la reducción de la dimensionalidad de los datos de alta dimensión para su visualización. Con ciertas salvedades en cuanto a la dimensionalidad y escasez de los datos, los autocodificadores pueden hacer posible obtener proyecciones de datos multidimensionales que resulten mejores que las proporcionadas por el método de componentes principales o algún otro método clásico [5] .
Sin embargo, la gama de posibles aplicaciones de los codificadores automáticos no se limita a esto. Por lo tanto, se pueden utilizar para detectar anomalías [8] [9] [10] [11] [12] , ya que el modelo aprende a restaurar los datos de entrada de acuerdo con las características más características, y en presencia de desviaciones, la restauración la precisión disminuye. En 2019, también se demostró la aplicación exitosa del autocodificador en el diseño de fármacos [13] [14] .
Tipos de redes neuronales artificiales | |
---|---|
|
Aprendizaje automático y minería de datos | |
---|---|
Tareas | |
Aprendiendo con un maestro | |
análisis de conglomerados | |
Reducción de dimensionalidad | |
Pronóstico estructural | |
Detección de anomalías | |
Graficar modelos probabilísticos | |
Redes neuronales | |
Aprendizaje reforzado |
|
Teoría | |
revistas y congresos |
|