Nace un Campeón:
En 2016, el sur coreano Lee Sedol, reconocido como el mejor jugador de Go en el mundo, fue vencido 4 a 1 por el programa AlphaGo desarrollado por Google. Un año más tarde, en octubre de 2017, el AlphaGo resultó todo un novato al lado de AlphaGo Zero, perdiendo de 100, todas las partidas. El nuevo campeón, también un programa desarrollado por Google, solo tiene de diferencia algo más que un par de líneas de código.
Los dos programas tienen un punto en común, el aprendizaje profundo, resultado de décadas de investigación sobre inteligencia artificial. Las máquinas están aprendiendo de una manera similar al cerebro humano, a través de volúmenes de datos considerablemente grandes, que en el caso de la versión Zero de AlphaGo, fue este mismo quien generó estos datos.
AlphaGo Zero, el nuevo campeón de Go creado por Google.
Inteligencia Artificial:
En los años 1950, Arthur Samuel, desarrolló un programa contra el cual poder jugar en solitario a las Damas, el clásico juego de mesa. Para la época, un avance que atrajo toda la atención del mundo de la informática. Este programa, fue el primero en incluir un modelo de autoaprendizaje.
Un año después de juego de Damas, Marvin Lee Minsky, científico cognitivo, diseñó una máquina de naturaleza estocástica basada en una red neural, la cual pretendía simular los procesos sinápticos del cerebro humano al cual llamó Snarc. Posteriormente, en 1956, en la Conferencia de Dartmouth, se acuña la expresión “Inteligencia Artificial”. Pero el en-tusiasmo llevó a pensar que en menos de una década estaría dominada la Inteligencia Artificial, al punto de simular la inteligencia general de un ser humano, una aseveración un tanto apresurada. Los programas de la época eran demasiado simples y carecían de los datos necesarios para perfeccionar su aprendizaje. La capacidad de procesamiento resultó ser insuficiente para procesar gran cantidad de datos y realizar cálculos complejos, necesarios para acercarse a las sutilezas del cerebro humano. Las limitaciones desanimaron el anterior optimismo y para el año 2000, el sueño de construir máquinas inteligentes estuvo a punto de ser abandonado, incluso el término Inteligencia Artificial, para la época estaba abandonando los dominios de las ciencias ‘serias’.
Las perspectivas de esta área del conocimiento, en el año 2005, mejoraron radicalmente con el aprendizaje automático y la necesidad de un “aprendizaje profundo” inspirados en la neurociencia. Para la actualidad, las empresas tecnológicas están cumpliendo algunas de las promesas de antaño.
Aprendizaje profundo:
El aprendizaje profundo es proceso efectuado por una gran cantidad de neuronas artificiales, que imitan de la manera más simple el funcionamiento de las neuronas biológicas, que, a través de interacciones, permiten a un sistema aprender progresivamente a través de imágenes, textos o cualquier dato que sean capaces de procesar. Este aprendizaje está fundamentado en principios matemáticos generales, el resultado de un aprendizaje puede ser una representación, una decisión o una transformación.
La técnica del aprendizaje profundo, ha transformado la investigación en inteligencia artificial, y ha puesto de nuevo la atención sobre ambiciones ya olvidadas como la visión artificial, el reconocimiento de voz y la robótica. Aplicaciones que ya usamos a diario, o más bien hablamos con ellas, como Siri, el asistente personal de iPhone, o el sistema de identificación de imágenes que utiliza el motor de búsqueda de imágenes de Google. El cambio en nuestra vida diaria con el uso de estas tecnologías ya es palpable, ya podemos dejar de escribir nuestros mensajes para proceder a dictarlos a nuestros teléfonos.
Con el aprendizaje profundo, ahora podemos hablar con nuestros teléfonos.
Enseñando a las máquinas:
Un programa de computadora es básicamente un conjunto de tareas explícitas y bien organizadas. Pero la mayor parte delconocimiento que los seres humanos tenemos del mundo que nos rodea, no está formalizado, ni escrito en libros, lo que hace difícil hacerle “comprender” a una máquina acerca de su entorno.
Las tareas cotidianas para la mente humana como interpretar una imagen, entender un mensaje hablado o incluso la conducción de un auto, son verdaderamente complejas para una máquina y para su programador si se conserva la tendencia de programar dejando todas las tareas bien explicitas.
Es necesario que las máquinas sean capaces de aprender. El aprendizaje automático, la columna del aprendizaje profundo, está basado en principios a nivel general que le permiten utilizar los datos disponibles para aprender a decidir “bien”, adquirir nuevos y “buenos” conocimientos, y de esta forma aprender “mejor”. Allí reside uno de los elementos más importantes,
en poder discernir entre el bien y el mal, lo bueno y lo malo, o si una opción es mejor a otra. En los animales, en términos evolutivos, una buena decisión radica en sobrevivir y reproducirse, en los seres humanos la brecha entre una decisión buena o mala es mucho más sutil y menos obvia, una verdadera dificultad para traducir esta habilidad en un programa
informático.
Antes de sentarse a escribir innumerables líneas de código es necesario discutir cuestionamientos
fundamentales, por ejemplo hasta dónde va el conocimiento innato y hasta donde el adquirido. Desde los años 50, los investigadores se han preguntado cuáles son esos principios generales que permiten el aprendizaje a través de la experiencia, de la misma forma el aprendizaje automático, pretende establecer los algoritmos que le confieran a una máquina aprender a partir de ejemplos que se le presenten.
Los Algoritmos Generales:
Actualmente se desarrollan programas para resolver programas particulares, por ejemplo: identificar el significado de un mensaje de voz o reconocer los objetos que aparecen en una imagen. Pero el cerebro humano funciona un tanto diferente, está dotado de una especie de “algoritmos generales”, que permiten aprender una gran cantidad de tareas para las cuales ni la evolución ni nuestros padres se habían preparado previamente. El hecho que nadie en mi familia sea músico, no es una restricción para aprender música, ya disponemos de un “programa” base, que nos permite aprender cualquier materia. Construir esa inteligencia base para las máquinas es el objetivo.
La neurociencia ha influenciado de forma importante el aprendizaje profundo. Asemejar un programa al funcionamiento del cerebro es la tendencia, para lo cual se está profundizando en la creación de redes neuronales artificiales, una corriente dentro de la Inteligencia Artificial a la que se le denomina conexionismo estos investigadores aseguran que a través de una red neuronal, las máquinas podrán ser capaces de aprender tareas complejas, modificando evolutivamente sus conexiones sinápticas, de tal manera que los esquemas de actividad neuronal codifiquen el contenido de los datos que les son entregados en forma de imágenes o sonidos y con cada ejemplo con el que se alimente a la red, el proceso de aprendizaje continúe, modificando las fuerzas sinápticas de la red, de forma que los va-lores converjan hacia la mejor configuración de la red que mejor represente, por ejemplo, el conjunto de imágenes que representen las puestas de sol. Por el momento, los algoritmos realizados, requieren un acompañamiento de la inteligencia humana, así que, a través de los usuarios, las máquinas van discerniendo entre esas sutilezas de lo bueno y lo malo, o lo que está bien, pero puede tener una opción mejor.
Aplicaciones:
Los desafíos superados en el aprendizaje profundo, ya cultiva una gran cantidad de éxitos, así lo demuestra el AlphaGo Zero, que va más allá de derrotar a los campeones del mundo de Go. Las aplicaciones van en camino a otras áreas de la experiencia humana, más allá de los juegos. Por ejemplo, algoritmos capaces de diagnosticar insuficiencia cardiaca que, con aprendizaje profundo, sean capaces de aprender de datos individuales obtenidos de imágenes de resonancia magnética de cada paciente.
Dentro de las aplicaciones más claras del aprendizaje profundo está la interpretación de imágenes, hasta ahora funcionando relativamente bien para imágenes estáticas. Un tipo reciente de redes neuronales, denominadas recurrentes, ya están logrando resultados interesantes en la interpretación de eventos dinámicos como videos. Estas redes recurrentes están teniendo éxito al interpretar el mensaje hablado de un video, siendo capaces de predecir las palabras siguientes dentro de una oración, lo cual per¬mitiría, por ejemplo, abordar tareas más complejas como traducciones en otro idioma en tiempo real.
Para los curiosos:
El aprendizaje profundo no está solamente al alcance de las grandes corporaciones tecnológicas, puedes visitar el proyecto de Adrian Rosebrock, donde con un Raspberry Pi, y algo de lenguaje de programación Python, logra construir una máquina de aprendizaje profundo, que es capaz de detectar en video si se aparece frente a cámara el mismo Santa Claus.
La solución Cloud de Microsoft, Azure, también dispone a sus usuarios la posibilidad de implementar una máquina virtual de aprendizaje profundo, para así aprovechar una máquina pre con¬figurada para estos usos con todo el potencial de procesamiento de la nube de Microsoft.