miércoles, 27 de abril de 2016

Arquitecturas de aprendizaje profundo


El aprendizaje profundo (deep learning), el mayor avance actual en inteligencia artificial, implica que los datos pasan a través de grandes conjuntos de neuronas crudamente simuladas en grandes computadores de arquitectura clásica. Avanzar aquí supone contar con procesadores mucho más potentes. 

1. Lo tradicional: simulación de redes neuronales


Ahora la compañía Nvidia, cuyo hardware (procesadores gráficos) sustenta gran parte del progreso de los últimos años, ha creado un chip para mantener en marcha el progreso, el P100. Nvidia anunció hace poco un nuevo chip llamado "Tesla P100", que está diseñado especialmente para disponer de más poder para el aprendizaje profundo. Nvidia gastó más de 2 millones de dólares en I+D para producir este nuevo chip, que cuenta con un total de 15 mil millones de transistores, aproximadamente tres veces más que sus chips anteriores. Una red neuronal artificial impulsada por el nuevo chip podría aprender de los datos de entrada 12 veces más rápido que estos otros. El P100 ya está en producción y se espera que las empresas de computación en la nube puedan empezar a usarlo este año. Permitiría a los informáticos alimentar con más datos a sus redes neuronales artificiales o crear mayores conjuntos de neuronas virtuales. (MIT Technology Review, 6/04/2016).


El "aprendizaje profundo" sólo se convirtió en relevante en los últimos cinco años, después de que los investigadores se dieran cuenta de que los chips originalmente diseñados para manejar gráficos de videojuegos eran más potentes y podían servir para este tipo de procesamiento. Con ellos es posible simular las redes cerebrales, lo cual ha permitido avances rápidos en el aprendizaje de máquina y el renacimiento del software informático que pretende resolver los problemas un poco como un cerebro humano, mediante un complejo proceso de reconocimiento de patrones distribuidos a través de muchos nodos o "neuronas virtuales". El actual poder de cómputo ha permitido a las redes neuronales simuladas reconocer imágenes, palabras y caras, así como pilotar coches de auto-conducción y ganar en Go y Jeopardy. Han sido progresos notables. Pero aún falta mucho para una real imitación del cerebro humano. Dos son los caminos abiertos hoy.

2. La arquitectura real de redes neuronales


La mayoría de los científicos de computación piensan que es sólo el comienzo de lo que será posible. Este tipo de hardware se ajusta muy poco en su arquitectura a lo que son las redes neuronales biológicas. Esto significa que puede tomar días o incluso semanas entrenar una red neuronal para resolver un solo problema -incluso en un clúster de computadores- y luego requerir una gran cantidad de energía para resolver el problema una vez que están entrenados. 

IBM quiere abordar la solución volviendo a las descripciones originales de las redes neuronales artificiales que se deben a Frank Rosenblatt, psicólogo de Cornell, que creó en 1959 el "perceptrón", una red de 400 células fotoeléctricas conectadas, destinada a reconocer patrones visuales sencillos (letras). Lamentablemente, Minsky y Papert dedicaron luego un libro a demostrar la incapacidad de los perceptrones para realizar las tareas más sencillas, y el interés decayó. Resurgió a fines de los años setenta y ochenta pero se orientó hacia las redes simuladas. Los investigadores de IBM quieren cambiar ésto perfeccionando otra tecnología. Se llama "computación resistiva" y consiste en tener pequeñas unidades de cómputo de naturaleza analógica, que pueden retener su historia para que puedan aprender durante el proceso de entrenamiento. 

Acelerar las redes neuronales con el hardware no es nuevo para IBM: ya tiene los chips neuromórficos TrueNorth pero solo son útiles para resolver problemas de diseño de redes neuronales. En éstos, el entrenamiento y la "ponderación" de los parámetros necesarios en la conexiones (synapsis) aún deben hacerse en computadores normales. 

Los nuevos chips "resistivos" (Resistive Processing Units, RPUs) imitan una sinapsis cerebral: reciben una multiplicidad de entradas analógicas (voltajes) y utilizan una función de "ponderación" basada en la experiencia pasada para determinar qué debe ser traspasado a la etapa siguiente. Como no necesitan una conversión analógica-digital ni consultar una memoria externa, son sumamente rápidos y requieren poca energía. El trabajo reciente ha permitido su operación en una rejilla de 4.096 x 4.096 elementos. Los RPUs siempre tienen cierto grado de imprecisión pero se han encontrado métodos para obtener resultados con un grado de imprecisión aceptable. 

Esta nueva arquitectura se combina con chips ordinarios de tecnología CMOS (como los de las cámaras fotográficas) para la funciones de ingreso y salida de información, formando la llamada DNN: Deep Neural Network. Una CPU de un CMOS y un chip RPU de 4.096x4.096 puede realizar 51 GOps (giga-operaciones por segundo). Una vez que se pueda construir un computador con una CPU y 100 RPUs podría operar como una red neuronal de 16.000 millones de sinapsis, gastando solo 22 watts. Sería 30.000 veces más eficiente que los sistemas actuales. Ahí apunta actualmente la investigación-desarrollo de IBM. (Resumido de Extreme Tech, 1/04/2016)


3. Big data vs Ontologías


Un problema mayor del aprendizaje de máquina y del deep learning (a la derecha en el gráfico que sigue) es que no es capaz de manejar con sentido común los desafíos racionales, como la lectura y comprensión de un titular de prensa. De hecho, si nos fijamos en el poderoso Watson de IBM, hoy en día no es capaz de responder a preguntas abiertas. La computación cognitiva, que se espera para el futuro, debe ser capaz de razonar, y para ello tiene que entender conceptos como el espacio, el tiempo, la masa y la inercia, para nombrar unos pocos. Ésta es la razón por la cual el análisis de macrodatos (los big data) tendrán dificultades para cumplir con la promesa de ricos descubrimientos, sobre todo cuando se trata de datos no estructurados.


El análisis de macrodatos con el aprendizaje de máquina no utiliza relaciones conceptuales elaboradas. Lo mejor que puede ofrecer es la capacidad de clasificar, sin ninguna capacidad de contextualización, que sería un valor más útil para los negocios. En cambio, las "ontologías" (estructuras de orden semántico) ofrecen la posibilidad de modelar relaciones conceptuales más elaboradas. Este enfoque se conoce como "modelado declarativo" y permiten modelizar problemas del mundo real. Se basa en la sintaxis: sujeto, predicado y objeto son la base de una buena estructura de oración. El desarrollo de ontologías mediante la adopción de este modelo declarativo ha de recorrer aún un largo camino para proporcionar perspectivas contextuales al análisis de datos. Junto con las nuevas arquitecturas de redes neuronales quizás permitan por fin un real avance en una computación dotada de comprensión. (MIT Technology Review, 2/04/2016) .

Hace años que se conocen las ventajas de las ontologías y que se propone usarlas para desarrollar la "web semántica" pero parece poco realista esperar que todos los usuarios se plieguen a sus exigencias y menos aún que se vuelvan a describir de este modo contenidos ya publicados. ¿Quizás podría la inteligencia artificial, en el futuro, operar la transición en forma automática? 

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.