Debido a que algunos descubrimientos importantes en la década de 2000 hicieron posible el entrenamiento de redes neuronales profundas. La gente había intentado entrenar redes profundas antes, pero no pudieron hacer que funcionaran.
El más importante es probablemente el descubrimiento de una solución al problema del gradiente de fuga (problema del gradiente de fuga), identificado por Sepp Hochreiter en 1991. La solución propuesta entonces era hacer un pre-entrenamiento en capas usando máquinas Boltzmann restringidas o autoencoders.
Ahora sabemos que hay otra solución al mismo problema para la mayoría de las situaciones: usar una función de activación que no cambia la amplitud de los gradientes a lo largo de las rutas activadas. El más popular de los cuales es la unidad lineal rectificada (ReLU, y = max (x, 0)). Es interesante pensar qué hubiera pasado si esto se descubriera primero. Parece ser una solución mucho más intuitiva, y no estoy seguro de si las técnicas RBM y AE aún se habrían descubierto entonces.
- ¿Cuál es la próxima gran novedad en la industria del software, aparte de la inteligencia artificial y la robótica?
- ¿Existe un buen resumen de todos los campos en los que el aprendizaje profundo está superando los métodos de vanguardia anteriores?
- Al calcular los pesos en una red neuronal, ¿por qué multiplica la señal de error por la entrada?
- ¿Por qué Estados Unidos no reemplaza a los inmigrantes con inteligencia artificial?
- ¿Se pueden utilizar los datos de comentarios de Facebook para crear un software que pase la prueba de Turing?
Otro descubrimiento importante fue el trabajo de LeCun en redes neuronales convolucionales. Explotan la estructura espacial de las imágenes para permitir resolver muchos problemas de imágenes en un tiempo razonable, utilizando pesos compartidos y una conectividad muy escasa (y, por lo tanto, un número relativamente bajo de pesos).