¿Cuál es la diferencia entre una red neuronal y una red de codificador automático?

Por lo general, en una red neuronal convencional, se intenta predecir un vector objetivo y a partir de los vectores de entrada x . En una red de autoencoder, uno intenta predecir x a partir de x .

Puede pensar que suena trivial aprender x de x …

A veces lo es y la red neuronal simplemente aprende a duplicar los datos de entrenamiento en lugar de aprender conceptos generales de los datos de entrenamiento. Para evitar este problema, a menudo el conjunto de entrenamiento se aumenta mediante la creación de réplicas de observaciones con ruido aleatorio adicional o “jitter”. Una red de autoencoder de capa oculta única con ruido agregado a los datos de entrenamiento se conoce como autoencoder de eliminación de ruido.

También puede preguntarse por qué las redes de codificador automático son útiles

Las redes de autoencoder han demostrado ser sorprendentemente hábiles en la extracción de características. Puede usar más de una capa oculta para construir un autoencoder apilado y anodino donde cada capa consecutiva en la red puede ser una proyección de baja dimensión, no lineal y óptimamente ponderada de los datos de entrenamiento. Puede detenerse allí y usar codificadores automáticos para la extracción de características, o también se usan como un mecanismo de capacitación previa para redes supervisadas profundas.

La red neuronal no es más que una función compuesta que puede aproximarse a cualquier función que asigne entradas a salidas a través de un proceso iterativo que técnicamente se denomina “Entrenamiento”.

Entonces, nada más que una red neuronal básica da una salida para una entrada.

Pero lo mismo cuando se trata de Autoencoder, configuramos la salida como la entrada, podemos llamar a esta red neuronal llamada Autoencoder.

Básicamente, va dentro de la representación más densa de los datos. El autoencoder más utilizado es el Autoencoder Variacional que aprende la variable oculta o latente de los datos de entrada yendo dentro de la parte densa de los datos de entrada.

En otras palabras, Autoencoder se usa para la reducción de dimensionalidad.

Una vez que aprendemos la parte oculta de los datos de entrada para un problema dado, es más suficiente para encontrar la salida.

Fuente-Imágenes de Google

Los autoencoders, también llamados autoasociadores, son redes construidas de 3 capas: entrada, oculta y salida. Los codificadores automáticos intentan aprender algunas representaciones de la entrada en la capa oculta de manera que sea posible reconstruir la entrada en la capa de salida en función de estas representaciones intermedias. Por lo tanto, la salida objetivo es la entrada misma. Un Autoencoder básico aprende sus parámetros al minimizar el error de reconstrucción. Esta minimización generalmente se realiza mediante un descenso de gradiente estocástico (muy parecido a lo que se hace en Perceptrón multicapa). Si la capa oculta es lineal y el error cuadrático medio se usa como criterio de reconstrucción, entonces el codificador automático aprenderá los primeros k componentes principales de los datos. Se proponen estrategias alternativas para hacer que los codificadores automáticos sean no lineales y sean apropiados para construir redes profundas, así como para extraer representaciones significativas de datos en lugar de funcionar solo como un método de reducción de dimensionalidad. Bengio ha llamado a estos métodos “Autoencoders regularizados”.

Una red de autoencoder es un tipo de red neuronal profunda cuyo objetivo principal es extraer funciones que ayudarán a reconstruir la señal de entrada original de esas funciones de manera eficiente.

Por lo tanto, un codificador automático tiene un conjunto de capas ocultas para extraer dichas características en múltiples niveles sucesivamente y otro conjunto de capas ocultas que siguen a las capas anteriores destinadas a reconstruir la señal de entrada original.

La capacitación de una red de este tipo tiene el objetivo de que la salida represente la representación más cercana posible de la entrada.

Los codificadores automáticos son un tipo específico de redes neuronales que están capacitadas para reconstruir su propia entrada.

Puede parecer aburrido, pero si pone restricciones en la estructura de la red o en cómo es el tren, las capas ocultas pueden terminar codificando cosas interesantes.

More Interesting

¿Qué computadora portátil debo comprar, la Dell XPS 15 o la MacBook pro 13 '2017 para una Maestría en Ciencias de la Computación, en los EE. UU. Con enfoque en aprendizaje automático y ciencia de datos?

¿Qué tipo de algoritmo de aprendizaje usa el cerebro humano y cómo se compara con los algoritmos que se están desarrollando actualmente para la inteligencia artificial?

¿Cuáles son algunos de los problemas abiertos más importantes en el aprendizaje automático en este momento?

¿Cómo responden las redes neuronales profundas para la clasificación de imágenes a las variaciones típicas de la imagen, como la iluminación, la distancia focal, etc.?

Aprendizaje profundo: ¿Por qué la función energética de la máquina de Boltzmann restringida se define de la manera en que se define?

¿Por qué podría mejorarse el arrepentimiento del bandido lineal mediante una proyección aleatoria?

Aprendizaje profundo: ¿Qué técnica de preprocesamiento es necesaria para los parches de imágenes para obtener características relevantes?

¿Cuáles son las formas de ingresar a Stanford para obtener una maestría en informática o una maestría en aprendizaje automático e inteligencia artificial?

¿Cómo se puede utilizar el aprendizaje automático para la clasificación de exoplanetas?

¿Existe algún modelo de aprendizaje profundo o algún otro método que ingrese como una colección de documentos y pueda predecir la probabilidad de un nuevo documento?

¿Cuáles son algunos trabajos de investigación que puedo publicar en el campo del procesamiento / generación de lenguaje natural, aprendizaje automático y minería de datos?

En la extracción de relaciones (PNL), ¿cuál es la diferencia entre la extracción de relaciones supervisada, semi-supervisada y no supervisada?

¿Qué lenguaje es mejor para hacer big data y machine learning (en términos de rendimiento) Java o Python?

¿Qué es un gran blog para el aprendizaje automático?

¿Qué piensa sobre el estudio de posgrado especializado en recuperación de información y sistemas de recomendación?