Aprendizaje profundo

El aprendizaje profundo es el campo de investigación del aprendizaje automático y la inteligencia artificial que se basa en diferentes niveles de representación, correspondientes a jerarquías de características de factores o conceptos, donde los conceptos de alto nivel se definen sobre la base de los de bajo nivel.

En otras palabras, por aprendizaje profundo entendemos un conjunto de técnicas basadas en redes neuronales artificiales organizadas en diferentes capas, donde cada capa calcula los valores de la siguiente para que la información sea procesada de forma cada vez más completa [1] .

Las arquitecturas de aprendizaje profundo incluyen redes neuronales profundas, convolución de redes neuronales profundas, redes de creencias profundas y redes neuronales recursivas, que se han aplicado en visión por computadora , reconocimiento automático de voz, procesamiento de lenguaje natural, reconocimiento de audio y bioinformática. "Aprendizaje profundo" es un término famoso hoy en día que revive el concepto de una red neuronal.

Introducción

Definiciones

El aprendizaje profundo se define como una clase de algoritmos de aprendizaje automático que [2] :

Lo que estas definiciones tienen en común son múltiples niveles de unidades no lineales y aprendizaje (supervisado o no supervisado) en cada nivel de representación característica, donde los niveles forman una jerarquía de características [2] . La composición de cada nivel de unidades no lineales utilizadas en un algoritmo de aprendizaje profundo depende del problema a resolver. En el aprendizaje profundo, se pueden usar capas ocultas de una red neuronal artificial y conjuntos de fórmulas proposicionales [4] .

Historial de aprendizaje profundo

Los primeros estudios sobre redes neuronales multicapa fueron realizados por el científico japonés Kunihiko Fukushima quien, con el modelo del cognitrón en 1975, y luego del neocognitrón [5] , introdujo la idea de área de conexión para neuronas desarrollada en convolucional. Redes neuronales.

El estudio de las redes neuronales artificiales multicapa ya se ha desarrollado en la década de 1980, pero solo en la última década se está demostrando su utilidad en una amplia gama de sectores y aplicaciones. Más concretamente, el éxito reciente del aprendizaje profundo se debe a la superación de algunos obstáculos que en el pasado impedían alcanzar los resultados esperados, como la falta de datos o la capacidad computacional adecuada. De hecho, hoy en día se han incrementado los datos disponibles , se han desarrollado sistemas de cómputo paralelo basados ​​en GPU y, sobre todo, se han optimizado los métodos de entrenamiento de las redes neuronales, que hoy pueden encontrar soluciones a problemas que en el pasado impedían a los investigadores obtener resultados satisfactorios. resultados.

Hoy en día, los sistemas de aprendizaje profundo, entre otras utilidades, permiten identificar objetos en imágenes y videos, transcribir voz en texto e identificar e interpretar los intereses de los usuarios en línea, mostrando los resultados más relevantes para su investigación.

Gracias a estas y otras soluciones, el aprendizaje profundo está experimentando años de rápido progreso, incluso superando el rendimiento de los seres humanos en muchos casos. Basta pensar en la aplicación de algoritmos de aprendizaje profundo en el contexto de problemas de toma de decisiones secuenciales , dentro del aprendizaje por refuerzo : un caso ejemplar fue el desarrollo de AlphaGo , un software que en 2016 venció al campeón mundial de Go, varios años por delante de los expertos. pronósticos [1]

Arquitecturas

Redes neuronales profundas

Redes Neuronales Convolucionales

La red neuronal de convolución ( CNN) es un método de elección para procesar datos visuales y datos 2D. Una CNN se compone de una o más capas convolucionales con capas ascendentes totalmente conectadas. También utiliza pesos y capas comunes (capa de agrupación). En particular, la "agrupación máxima" se usa a menudo en la arquitectura convolucional de Fukushima. Esta arquitectura permite que las CNN aprovechen las estructuras de entrada 2D. Son particularmente efectivos en el área de imágenes y reconocimiento de voz. También se pueden entrenar con retropropagación estándar . También son más fáciles de entrenar que otras redes neuronales profundas o de avance y tienen muchos menos parámetros para estimar. Un programa de la CNN es DeepDream [ 6] de Google .

Redes Neuronales Recursivas

Las redes neuronales recurrentes (RNN) nacen con el intento de completar las redes neuronales de Turing agregando un componente de memoria. Las redes neuronales feed-forward responden constantemente a las mismas entradas, pero sin poder realizar conexiones entre diferentes entradas, como podría ser útil en el campo de la semántica. Las redes neuronales recursivas, por otro lado, pesan cada entrada en función del estado anterior y la misma entrada podría dar diferentes salidas según el contexto en el que se inserta. A pesar de esto, los RNN, a menos que se inserten elementos aleatorios, siguen siendo redes deterministas, ya que la misma secuencia de entrada siempre conducirá a la misma secuencia de salida . El estado de una RNN se implementa añadiendo una capa de neuronas recursivas que tendrán como valor en cada instante de tiempo el valor del instante anterior sumado a una variación dada por las entradas de las neuronas feed-forward.

Las redes neuronales de este tipo se vuelven imposibles de entrenar debido a la retropropagación del error , por lo que se utiliza como una estratagema para realizar las recursiones considerando su funcionamiento para cada instante de tiempo .

Mientras que en el caso de caminos hacia atrás muy cortos esto funciona, para los casos en los que es necesario retroceder varios pasos, uno se encuentra con el problema de Gradiente de fuga o Gradiente de explosión si la función de costo siempre ha derivado menos de uno (por ejemplo sigmoid y tanh) o siempre mayor que uno. De hecho, esto conduce a una convergencia a cero exponencial en el primer caso ya una explosión exponencial del gradiente en el segundo. En ningún caso el gradiente es más computable incluso después de unos pocos pasos. Para solucionar este problema nos aseguramos de utilizar una función rectificadora .

Compresor de Historia Neural

Redes de creencias profundas

Codificador automático apilado

Red de apilamiento profundo

Tensor Deep Stacking Net

RBM de punta y losa

Máquinas profundas de Boltzmann

Máquinas kernel multinivel

Estructuras de memoria diferenciables LSTM relacionadas

Redes deep-q

Esta es una clase de modelos de aprendizaje profundo que utilizan Q-learning , una forma de aprendizaje reforzado , de Google DeepMind . Los resultados preliminares se presentaron en 2014 con un artículo publicado en Nature en febrero de 2015. La aplicación a la que se hace referencia es un juego de la Atari 2600.

Hashing semántico

Diagnósticos

En 2018, la empresa británica DeepMind , Moorfields Eye Hospital y University College London lanzaron un software que promete reconocer la anatomía y la patología del ojo y sugerir el tratamiento de salud adecuado a los médicos. [7]
El ojo del paciente se examina mediante una tomografía óptica de coherencia de fase que adquiere imágenes en color de alta definición, a su vez procesadas por un algoritmo que las compara con la base de conocimiento clínico , con el fin de identificar el diagnóstico y la solución terapéutica óptima para el caso específico.

Aplicaciones

Bibliotecas de software

Otros proyectos

Enlaces externos

Notas

  1. ^ a b Descubriendo el aprendizaje profundo: significado, ejemplos y aplicaciones , en el blog Osservatori.net . Consultado el 30 de mayo de 2019 .
  2. ^ a b ( EN ) L. Deng y D. Yu, Aprendizaje profundo: métodos y aplicaciones ( PDF ), en Fundamentos y tendencias en el procesamiento de señales , vol. 7, núm. 3-4, 2014, págs. 1-199, DOI : 10.1561/2000000039 .
  3. ^ Yann LeCun, Yoshua Bengio y Geoffrey Hinton, Aprendizaje profundo , en Nature , vol. 521, núm. 7553, 27 de mayo de 2015, págs. 436–444, DOI : 10.1038/naturaleza14539 . Consultado el 20 de mayo de 2022 .
  4. ^ Yoshua Bengio, Aprendizaje de arquitecturas profundas para IA ( PDF ) , en Fundamentos y tendencias en aprendizaje automático , vol. 2, núm. 1, 2009, págs. 1-127, DOI : 10.1561/2200000006 (archivado desde el original el 4 de marzo de 2016) .
  5. ^ Kunihiko Fukushima, Neocognitron : un modelo de red neuronal autoorganizada para un mecanismo de reconocimiento de patrones que no se ve afectado por el cambio de posición , en Biological Cybernetics , vol. 36, núm. 4, 1 de abril de 1980, págs. 193–202, DOI : 10.1007/BF00344251 . Consultado el 7 de junio de 2020 .
  6. ^ Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke y Andrew Rabinovich, Profundizando con las circunvoluciones , en Computing Research Repository , 2014, arXiv : 1409.4842 .
  7. ^ Marco Tonelli, la inteligencia artificial de DeepMind reconoce más de 50 enfermedades oculares , en lastampa.it , La Stampa , 3 de septiembre de 2018. Consultado el 26 de septiembre de 2019 ( archivado el 26 de septiembre de 2019) . Alojado en archive.is .
  8. ^ aprendizaje profundo4j
  9. ^ BC Ooi, K.-L. Tan, S. Wang, W. Wang, G. Chen, J. Gao, Z. Luo, AKH Tung, Y. Wang, Z. Xie, M. Zhang, K. Zheng. " SINGA: una plataforma distribuida de aprendizaje profundo ", ACM Multimedia (Concurso de software de código abierto) . 2015.
  10. ^ W. Wang, G. Chen, TTA Dinh, J. Gao, BC Ooi, K.-L.Tan, S. Wang. " SINGA: Poniendo el Aprendizaje Profundo en Manos de los Usuarios Multimedia ", ACM Multimedia . 2015.
  11. ^ Jeff Dean y Rajat Monga, TensorFlow: Aprendizaje automático a gran escala en sistemas heterogéneos ( PDF ), en download.tensorflow.org , 9 de noviembre de 2015. Consultado el 10 de noviembre de 2015 .