Deep Learning: la revolución humana de las máquinas
Mucho ha llovido desde que clásicos de la ciencia ficción como 2001: Odisea en el espacio o Blade Runner nos inspirasen las posibilidades de la ciencia y la tecnología del futuro, pero el futuro ya está aquí y el rápido avance de nuestra sociedad se apresura a alcanzar lo que un día solo imaginaron las mentes más audaces. Robótica, inteligencia artificial, aprendizaje automático… todos estos conceptos forman hoy parte de la vanguardia del desarrollo tecnológico.
Entramos, pues, en la era de la computación cognitiva, en la que la incorporación de procesos típicamente humanos como el aprendizaje o la comunicación, están siendo ya reproducidos por máquinas. O lo que es lo mismo, estamos enseñando a las máquinas a ser como nosotros. Según lo explica Carmen Reina, responsable de Data Culture en Orange y Directora del Programa Superior en Data Science de ICEMD, “este tipo de procesos cognitivos intentan imitar el procesamiento mental humano, agrupando un gran volumen de información y filtrándola para lograr interpretarla”.
En este sentido, uno de los grandes desafíos tecnológicos actuales es la creación de sistemas cognitivos artificiales que puedan procesar los datos de igual manera que si lo hiciera el cerebro humano, y de hecho ya se están desarrollando tecnologías que permiten programar las máquinas mediante lo que llamamos Deep Learning, que se basa en una serie de redes neuronales que se asemejan a las del cerebro humano. “Estas tecnologías revolucionarán en un futuro muy próximo la interacción entre hombres y máquinas, a través de la comunicación y el aprendizaje, aunque también se espera que en los próximos años estos sistemas tengan múltiples aplicaciones.”, asegura Reina.
Deep Learning, la clave para la automatización en las ciencias de datos
El Deep Learning o aprendizaje profundo consiste en un conjunto de algoritmos no supervisados basados en la topología de las neuronas. Forman capas de neuronas artificiales, cada una de las cuales es usada para identificar determinadas características ocultas en un conjunto de datos. Estos algoritmos constan a su vez de varias capas: una de entrada, donde se introducen los datos; una capa de salida, donde muestra el resultado; y una o varias capas internas ocultas, donde se realizan los cálculos de activación de las neuronas para procesar las respuestas intermedias a través de funciones de activación.
Esta estructura permite a la red aprender en función de las capas, el número de neuronas y las funciones de activación, así como a ser capaz de resolver un problema con la solución más adecuada. Un ejemplo común y sencillo de la utilización de Deep Learning se encuentra en las aplicaciones con reconocimiento de voz, como los altavoces inteligentes y muchas de las aplicaciones presentes en nuestros teléfonos, diseñadas para aprender a procesar el lenguaje natural.
Los distintos tipos de redes neuronales: a cada problema, una solución
Asimismo, en función del problema a resolver es posible identificar y clasificar varias redes neuronales especializadas, como las Redes Convolucionales (CNN), una variante de las redes neuronales usadas para visión computacional o reconocimiento de imágenes, aunque también son utilizadas para reconocimiento de voz. Estas redes pueden pensarse como un tipo de red neuronal que usa copias idénticas de la misma neurona.
Esto permite que una neurona pueda aprender y ser utilizada en diferentes instancias, reduciendo de esta forma el margen de error y facilitando el aprendizaje de la red neuronal. Este tipo de redes son esenciales para tareas de Computer Vision y reconocimiento de patrones.
Las Redes neuronales recurrentes (RNN) son otra variedad de redes neuronales utilizadas en el Procesamiento del Lenguaje Natural (NLP). Asumen que los inputs son independientes unos de otros y se comportan como llamadas recurrentes, debido a que ejecutan las mismas tareas para cada elemento de la secuencia, siendo el output dependiente de los cálculos previos. Están por tanto relacionadas con secuencias y listas.
Las redes neuronales con memoria son capaces también de capturar la información de los cálculos previos, permitiendo la persistencia de la información. Dentro de estas últimas las más relevantes son las LSTM (Long Short Term Networks), capaces de aprender las dependencias a largo plazo. Y también existen redes neuronales como los autoencoders, usados para reducir la dimensionalidad de los datos en su la visualización de datos.
Por último, llegamos a las Deep Boltzmann Machine (DBM), capaces de seleccionar las variables deseadas (feature selection) y eliminar las irrelevantes en el procesado de grandes conjuntos de datos con el objetivo de reducir el número de inputs modelados durante el proceso y no perder precisión. La reducción de inputs previene a la red que aprenda la asociación entre las variables irrelevantes, reduciendo el impacto negativo en el conocimiento aprendido de la distribución que posee los datos.
Los avances de los últimos años en los modelos generativos prometen un salto enorme en campos como el procesamiento del lenguaje natural o la creación de una inteligencia artificial dotada de habla, y todos ellos son abordados en la actualidad con Deep Learning y otras técnicas de Data Science. Pero siguen habiendo retos pendientes, más allá de la consecución de un razonamiento automatizado: creatividad, sensibilidad y emociones….
¿Podrán las máquinas lograr una consciencia digital capaz de interpretar los sentimientos tal y como los interpretamos los seres humanos o, en definitiva, llegar a pensar como nosotros? Los científicos de datos apuestan por ello.