lunes, 11 de julio de 2016

Aprendizaje profundo para Inteligencia Artificial

Uno de los grandes retos de la Inteligencia Artificial ha sido lograr que una computadora frente a una cara, una imagen, una situación y pudiera reconocerla y tomar una acción como lo haría un ser humano. Desde hace varias décadas, los expertos habían estado apostando a que el mejor camino era simular a través del software el modo de funcionamiento de las neuronas en el ser humano, ya que estas son las cumplen este tipo de función en el ser humano.  En el cerebro humano:
  • Cualquier neurona puede ser activada por otra cuya salida la alimenta, y por supuesto ella a su vez puede activar otras a las cuales ella misma alimenta. Por ello, existen multitudes de neuronas interconectadas.
  • A través de la existencia de la persona, las neuronas se van nutriendo y acumulando información y estas sirven de base para análisis, comparación y toma de información personal.


Así se desarrollaron las Redes Neuronales Artificiales (RNA), las cuales emulan a través de software, el funcionamiento de las neuronas en el sistema nervioso humano. Aprendizaje-Profundo es una técnica que se utiliza con las RNA, donde se han dado avances impresionantes recientemente y con respecto a las Redes Neuronales Artificiales (RNA), a través de software:
  • Hay una capa de entrada de neuronas a través de la cual se puede alimentar de data a la red.
  • Hay una capa de salida desde donde se transmiten los resultados.
  • Hay varias capas ocultas intermedias donde se procesa la información.
  • La información que el ser humano capta directamente en sus neuronas, aquí se produce a través de entrenamiento que se hace proveyendo data al sistema.
  • Se hacen más complejas al ir incrementando el número de capas. Entrenar un Red Neuronal  de 4 capas hasta hace poco tomaba varias semanas, hoy se logra en menos de un día. Ya no es raro ver un RNA con una profundidad de 20 o 30 capas y, excepcionalmente, hasta de 152 capas. Más profundidad implica mayor capacidad de abstracción y poco a poco nos acercamos al funcionamiento del cerebro humano.


Teoría a la Práctica

Aprendizaje Profundo se conocía desde hace varias décadas, pero recientemente  se ha convertido en un hecho práctico más que una posibilidad teórica, al aparecer la disponibilidad de:
  • Ingentes cantidades de poder de computación, especialmente en las Unidades de Procesamiento Gráfico (GPU) los chips especializados que se usan en los PC y las consolas de vídeo de juegos, pero que también son idóneos para procesar algoritmos de Aprendizaje-Profundo.
  • Enormes cantidades de data para entrenamiento, que con el crecimiento de Internet ha abierto la posibilidad de usar para entrenamiento millones de documentos, imágenes y videos.


Sabores de Aprendizaje-Profundo
  1. Aprendizaje Supervisado, entrenar a un sistema con la ayuda de conjuntos de ejemplos previamente etiquetados y donde el sistema aprende directamente de allí.
  2. Aprendizaje No-Supervisado, se entrena la sistema exponiéndolo a un número inmenso de ejemplos, sin decirle que debe buscar.
  3. Aprendizaje Reforzado, similar al aprendizaje no supervisado, pero con interacción humana ocasional en la forma de una recompensa.
  4. Aprendizaje de Transferencia, le permite a un sistema de Aprendizaje Reforzado aprender de conocimiento previamente adquirido.


Aplicaciones de Aprendizaje-Profundo

Algunos ejemplos incluyen: (1) Incrementar la calidad de las búsquedas en Internet, (2) Entender comandos orales en teléfonos inteligentes, (3) Ayudar en la búsqueda imágenes específicas, (4) Sugerir respuestas automáticas a  correos electrónicos, (5) mejorar traducciones, (6) Ayudar a vehículos auto-manejados entender a sus alrededores.


No hay comentarios:

Publicar un comentario