Research

Aprendizaje efectivo: el futuro cercano de la IA

Ankit Singh
November 3, 2017
mins read
Ready to get Started?
request A Demo

No cabe duda de que el futuro definitivo de la IA es alcanzar y superar la inteligencia humana. Pero lograr esta hazaña es inverosímil. Incluso los más optimistas de entre nosotros apuestan a que la IA a nivel humano (AGI o ASI) estará disponible dentro de 10 a 15 años, y los escépticos incluso están dispuestos a apostar que tardará siglos, si es que es posible. Bueno, no es de eso de lo que trata el post (deberías leer esto) correo si está interesado en aprender sobre la superinteligencia). Aquí vamos a hablar sobre un futuro más tangible y cercano y sobre los potentes algoritmos y técnicas de IA emergentes que, en nuestra opinión, van a dar forma al futuro cercano de la IA.

La IA ha empezado a mejorar a los humanos en algunas tareas específicas y seleccionadas. Por ejemplo, derrotar a los médicos en el diagnóstico del cáncer de piel y derrotar a jugadores de Go en el campeonato mundial. Sin embargo, los mismos sistemas y modelos no podrán realizar tareas diferentes a las para las que fueron entrenados. Esta es la razón por la que, a largo plazo, un sistema generalmente inteligente que realice un conjunto de tareas de manera eficiente sin necesidad de volver a evaluarlo se denomina el futuro de la IA. Sin embargo, en el futuro cercano de la IA, mucho antes de que surja la AGI, ¿cómo es posible que los científicos logren que los algoritmos basados en la IA superen los problemas a los que se enfrentan hoy en día para salir de los laboratorios y convertirse en objetos de uso diario?

Si miras a tu alrededor, la IA gana un castillo a la vez (lee nuestras publicaciones sobre cómo la IA supera a los humanos, primera y segunda parte). ¿Qué puede salir mal en un juego en el que todos ganan? Los seres humanos estamos produciendo más y más datos (que es el material que consume la IA) con el tiempo, y las capacidades de nuestro hardware también están mejorando. Después de todo, los datos y una mejor computación son las razones por las que la revolución del aprendizaje profundo comenzó en 2012, ¿verdad? La verdad es que las expectativas humanas crecen más rápido que el crecimiento de los datos y la computación. Los científicos de datos tendrían que pensar en soluciones más allá de lo que existe en este momento para resolver los problemas del mundo real. Por ejemplo, la clasificación de imágenes, como la mayoría de la gente pensaría, es científicamente un problema resuelto (si nos resistimos a decir 100% de precisión o GTFO). Podemos clasificar las imágenes (digamos en imágenes de gatos o perros) para que coincidan con la capacidad humana mediante la IA. Pero, ¿ya se puede usar esto en casos de uso del mundo real? ¿Puede la IA ofrecer una solución para los problemas más prácticos a los que se enfrentan los humanos? En algunos casos, sí, pero en muchos casos, todavía no lo hemos conseguido.

Lo guiaremos a través de los desafíos que son los principales obstáculos para desarrollar una solución para el mundo real mediante la IA. Supongamos que quieres clasificar imágenes de perros y gatos. Usaremos este ejemplo a lo largo de la publicación.

Future of AI Catdog
Nuestro algoritmo de ejemplo: clasificación de imágenes de perros y gatos[/subtítulo]

El siguiente gráfico resume los desafíos:

Future of AI roadblocks
Desafíos relacionados con el desarrollo de una IA en el mundo real

Analicemos estos desafíos en detalle:

Aprender con menos datos:

  • Los datos de entrenamiento que consumen los algoritmos de aprendizaje profundo más exitosos requieren que estén etiquetados de acuerdo con el contenido/función que contienen. Este proceso se denomina anotación.
  • Los algoritmos no pueden usar los datos que se encuentran naturalmente a su alrededor. Anotar unos pocos cientos (o miles de puntos de datos) es fácil, pero nuestro algoritmo de clasificación de imágenes a nivel humano necesitó un millón de imágenes anotadas para aprenderlas bien.
  • Así que la pregunta es, ¿es posible anotar un millón de imágenes? Si no es así, ¿cómo puede la IA escalar con una cantidad menor de datos anotados?

Resolver diversos problemas del mundo real:

  • Si bien los conjuntos de datos son fijos, el uso en el mundo real es más diverso (por ejemplo, un algoritmo entrenado en imágenes en color puede fallar gravemente en imágenes en escala de grises, a diferencia de los humanos).
  • Si bien hemos mejorado los algoritmos de visión artificial para detectar objetos que coincidan con los humanos. Pero como se mencionó anteriormente, estos algoritmos resuelven un problema muy específico en comparación con la inteligencia humana, que es mucho más genérica en muchos sentidos.
  • Nuestro algoritmo de IA de ejemplo, que clasifica gatos y perros, no podrá identificar una especie de perro rara si no se alimenta con imágenes de esa especie.

Ajustar los datos incrementales:

  • Otro desafío importante son los datos incrementales. En nuestro ejemplo, si intentamos reconocer gatos y perros, podemos entrenar a nuestra IA para que obtenga una serie de imágenes de gatos y perros de diferentes especies desde el primer momento. Sin embargo, cuando descubramos una especie completamente nueva, necesitamos entrenar al algoritmo para que reconozca a los «kotpies» junto con las especies anteriores.
  • Si bien la nueva especie puede parecerse más a otras de lo que pensamos y puede entrenarse fácilmente para adaptar el algoritmo, hay puntos en los que esto es más difícil y requiere un reentrenamiento y una reevaluación completos.
  • La pregunta es ¿podemos hacer que la IA se adapte al menos a estos pequeños cambios?

Para que la IA pueda utilizarse de forma inmediata, la idea es resolver los desafíos antes mencionados mediante un conjunto de enfoques denominados aprendizaje efectivo (ten en cuenta que no es un término oficial, solo lo estoy inventando para evitar escribir siempre metaaprendizaje, aprendizaje por transferencia, aprendizaje de pocos intentos, aprendizaje contradictorio y aprendizaje multitarea). Nosotros, en Puntos paralelos, ahora utilizan estos enfoques para resolver problemas limitados con la IA, ganando pequeñas batallas y preparándose para una IA más completa con la que conquistar guerras más grandes. Permítanos presentarle estas técnicas una a la vez.

Cabe destacar que la mayoría de estas técnicas de aprendizaje efectivo no son algo nuevo. Solo están viendo un resurgimiento ahora. Los investigadores de SVM (Support Vector Machines) han estado utilizando estas técnicas durante mucho tiempo. El aprendizaje contradictorio, por otro lado, es algo que surgió El trabajo reciente de Goodfellow en GAN y el razonamiento neuronal es un nuevo conjunto de técnicas para las que los conjuntos de datos están disponibles muy recientemente. Profundicemos en cómo estas técnicas van a ayudar a dar forma al futuro de la IA.

Técnicas para revolucionar el futuro cercano de la IA

Transferir el aprendizaje

¿Qué es?

Como su nombre indica, el aprendizaje se transfiere de una tarea a otra dentro del mismo algoritmo en Transfer Learning. Los algoritmos entrenados en una tarea (tarea de origen) con un conjunto de datos más grande se pueden transferir con o sin modificaciones como parte del algoritmo que intenta aprender una tarea diferente (tarea de destino) en un conjunto de datos (relativamente) más pequeño.

Future of AI Transfer Learning
Aprendizaje tradicional versus aprendizaje por transferencia. Créditos: Créditos: Sociedad de Computación IEEE

Algunos ejemplos

El uso de los parámetros de un algoritmo de clasificación de imágenes como extractor de características en diferentes tareas, como la detección de objetos, es una aplicación sencilla de Transfer Learning. Por el contrario, también se puede utilizar para realizar tareas complejas. El algoritmo Google se desarrolló para clasificar la retinopatía diabética mejor de lo que los médicos hace un tiempo se creó mediante transferencia de aprendizaje. Sorprendentemente, el detector de retinopatía diabética era en realidad un clasificador de imágenes del mundo real (clasificador de imágenes de perros y gatos) Transfer Learning para clasificar las gammagrafías oculares.

¡Cuéntame más!

En la literatura sobre aprendizaje profundo, los científicos de datos denominan a estas partes transferidas de las redes neuronales de la tarea de origen a la tarea de destino como redes previamente entrenadas. El ajuste fino se produce cuando los errores de la tarea objetivo se retropropagan levemente a la red previamente entrenada en lugar de utilizar la red previamente entrenada sin modificar. Se puede ver una buena introducción técnica a la transferencia del aprendizaje en visión por computador aquí. Este simple concepto de aprendizaje por transferencia es muy importante en nuestro conjunto de metodologías de aprendizaje efectivo.

Aprendizaje multitarea

¿Qué es?

En el aprendizaje multitarea, se resuelven varias tareas de aprendizaje al mismo tiempo, al tiempo que se aprovechan los puntos en común y las diferencias entre las tareas. Sorprende, pero a veces aprender dos o más tareas juntas (también denominadas tareas principales y tareas auxiliares) puede mejorar los resultados de las tareas. Tenga en cuenta que no todos los pares, trillizos o cuartetos de tareas pueden considerarse auxiliares. Pero cuando funciona, es un incremento gratuito en la precisión.

Future of AI Multi-transfer Learning
Realización de tres tareas con MTL. Créditos: Sebastián Ruder

Algunos ejemplos

Por ejemplo, en ParallelDots, nuestros clasificadores de detección de sentimientos, intenciones y emociones se entrenaron como aprendizaje multitarea, lo que aumentó su precisión en comparación con si los entrenáramos por separado. El mejor etiquetado semántico de roles y etiquetado de puntos de venta sistema en PNL sabemos que es un sistema de aprendizaje multitarea, por lo que es uno de los mejores sistemas para la segmentación semántica y de instancias en Computer Vision. A Google se le ocurrió Estudiantes multimodales que realizan múltiples tareas (Un modelo para gobernarlos todos) que puede aprender de los conjuntos de datos de visión y texto en la misma toma.

¡Cuéntame más!

Un aspecto muy importante del aprendizaje multitarea que se ve en las aplicaciones del mundo real es que, al entrenar cualquier tarea para que sea infalible, debemos respetar muchos dominios de los que provienen los datos (lo que también se denomina adaptación de dominio). Un ejemplo de lo que hacemos con perros y gatos es un algoritmo que puede reconocer imágenes de diferentes fuentes (por ejemplo, cámaras VGA y cámaras HD o incluso cámaras infrarrojas). En estos casos, se puede añadir una pérdida auxiliar de clasificación de dominio (de dónde provienen las imágenes) a cualquier tarea y, a continuación, la máquina aprende de tal manera que el algoritmo sigue mejorando en la tarea principal (clasificar las imágenes en imágenes de gatos o perros), pero empeorando deliberadamente en la tarea auxiliar (esto se hace propagando hacia atrás el gradiente de error inverso de la tarea de clasificación de dominios). La idea es que el algoritmo aprenda las características discriminatorias para la tarea principal, pero olvide las características que diferencian los dominios y esto lo mejoraría. El aprendizaje multitarea y sus primos relacionados con la adaptación de dominios son una de las técnicas de aprendizaje efectivo más exitosas que conocemos y tienen un papel importante que desempeñar en la configuración del futuro de la IA.

Aprendizaje contradictorio

¿Qué es?

El aprendizaje contradictorio como campo evolucionó a partir del trabajo de investigación de Ian Goodfellow. Si bien las aplicaciones más populares del aprendizaje contradictorio son, sin duda, las redes generativas adversarias (GAN), que se pueden utilizar para generar imágenes impresionantes, existen muchas otras formas de utilizar este conjunto de técnicas. Por lo general, esta técnica inspirada en la teoría de juegos tiene dos algoritmos, un generador y un discriminador, cuyo objetivo es engañarse unos a otros mientras se entrenan. El generador se puede usar para generar nuevas imágenes novedosas, como ya comentamos, pero también puede generar representaciones de cualquier otro dato para ocultar detalles al discriminador. Esta última es la razón por la que este concepto nos interesa tanto.

Future of AI adversarial
Redes generativas de confrontación. Créditos: O'Reilly

Algunos ejemplos

Este es un campo nuevo y la capacidad de generación de imágenes es probablemente lo que más le gusta a la gente más interesada astrónomos centrarse en. Pero creemos que esto también evolucionará en nuevos casos de uso, como veremos más adelante.

¡Cuéntame más!

El juego de adaptación de dominio se puede mejorar con la pérdida de GAN. En este caso, la pérdida auxiliar es un sistema GAN en lugar de una clasificación de dominios pura, en el que un discriminador intenta clasificar de qué dominio provienen los datos y un componente generador trata de engañarlo presentando ruido aleatorio en forma de datos. Según nuestra experiencia, esto funciona mejor que la adaptación simple de dominios (que también es más errática con respecto al código).

Aprendizaje de pocos tiros

¿Qué es?

Few Shot Learning es un estudio de técnicas que hacen que los algoritmos de aprendizaje profundo (o cualquier algoritmo de aprendizaje automático) aprendan con menos ejemplos en comparación con lo que haría un algoritmo tradicional. El aprendizaje con una sola toma consiste básicamente en aprender con un ejemplo de una categoría, el aprendizaje inductivo con k-shot significa aprender con k ejemplos de cada categoría.

Future of AI one shot
One Shot Learning usando algunos ejemplos de una clase. Créditos: Google DeepMind
¿Algunos ejemplos?

Son pocos los campos del Shot Learning que están recibiendo una afluencia de ponencias en las principales conferencias de aprendizaje profundo, y ahora hay conjuntos de datos específicos para comparar los resultados, al igual que MNIST y CIFAR son para el aprendizaje automático normal. El aprendizaje en una sola toma está teniendo varias aplicaciones en determinadas tareas de clasificación de imágenes, como la detección y representación de características.

¡Cuéntame más!

Hay varios métodos que se utilizan para el aprendizaje con pocos disparos, incluido el aprendizaje por transferencia, el aprendizaje multitarea y el metaaprendizaje como parte o la totalidad del algoritmo. Hay otras formas, como tener función de pérdida inteligente, utilizando arquitecturas dinámicas o usar trucos de optimización. Zero Shot Learning, una clase de algoritmos que pretenden predecir respuestas para categorías que el algoritmo ni siquiera ha visto, son básicamente algoritmos que pueden escalar con un nuevo tipo de datos.

Metalaprendizaje

¿Qué es?

El metaaprendizaje es exactamente lo que parece, un algoritmo que entrena de tal manera que, al ver un conjunto de datos, produce un nuevo predictor de aprendizaje automático para ese conjunto de datos en particular. La definición es muy futurista si se le echa un primer vistazo. Sientes «¡guau! eso es lo que hace un científico de datos» y está automatizando el «trabajo más atractivo del siglo XXI» y, en cierto sentido, los metaestudiantes han empezado a hacerlo (consulta entrada de blog de Google y esto trabajo de investigación).

Future of AI Meta Learning
Ejemplo de configuración de meta-aprendizaje para la clasificación de imágenes en pocas tomas. Créditos: Ravi y otros
Algunos ejemplos

El meta-aprendizaje se ha convertido recientemente en un tema candente en el aprendizaje profundo, con muchos trabajos de investigación que, por lo general, utilizan la técnica para la optimización de hiperparámetros y redes neuronales, la búsqueda de buenas arquitecturas de red, el reconocimiento de imágenes Few-Shot y el aprendizaje rápido por refuerzo. Puedes encontrar un artículo más completo sobre casos de uso aquí.

¡Cuéntame más!

Algunas personas se refieren a esta automatización total de la decisión de parámetros e hiperparámetros, como la arquitectura de red, como AutoML, y es posible que encuentre personas que se refieran a Meta Learning y AutoML como campos diferentes. A pesar de todo el revuelo que los rodea, lo cierto es que los Meta Learners siguen siendo algoritmos y vías para escalar el aprendizaje automático a medida que aumentan la complejidad y variedad de los datos.

La mayoría de los artículos sobre metaaprendizaje son trucos inteligentes que, según Wikipedia, tienen las siguientes propiedades:

  • El sistema debe incluir un subsistema de aprendizaje que se adapte con la experiencia.
  • La experiencia se adquiere explotando los metaconocimientos extraídos en un episodio de aprendizaje anterior sobre un único conjunto de datos o de diferentes dominios o problemas.
  • El sesgo de aprendizaje debe elegirse de forma dinámica.

Básicamente, el subsistema es una configuración que se adapta cuando se le introducen metadatos de un dominio (o de un dominio completamente nuevo). Estos metadatos pueden informar sobre el aumento del número de clases, la complejidad, los cambios en los colores, las texturas y los objetos (en las imágenes), los estilos, los patrones lingüísticos (lenguaje natural) y otras características similares. Echa un vistazo a algunos artículos geniales aquí: Jerarquías compartidas de metaaprendizaje y Metaaprendizaje mediante convoluciones temporales. También puede crear algoritmos Few Shot o Zero Shot utilizando arquitecturas de meta-aprendizaje. El metaaprendizaje es una de las técnicas más prometedoras que ayudará a dar forma al futuro de la IA.

Razonamiento neuronal

¿Qué es?

El razonamiento neuronal es la próxima gran novedad en los problemas de clasificación de imágenes. El razonamiento neuronal va un paso más allá del reconocimiento de patrones, en el que los algoritmos van más allá de la idea de simplemente identificar y clasificar texto o imágenes. El razonamiento neuronal consiste en resolver preguntas más genéricas en el análisis de texto o el análisis visual. Por ejemplo, la imagen de abajo representa un conjunto de preguntas que el razonamiento neuronal puede responder a partir de una imagen.

Future of AI reasoning
Ejemplos de preguntas de razonamiento neuronal. Créditos: INTELIGENTE

¡Cuéntame más!

Este nuevo conjunto de técnicas surgirá tras el lanzamiento del conjunto de datos BaBi de Facebook o del reciente Conjunto de datos CLEVR . Las técnicas que están surgiendo para descifrar las relaciones y no solo los patrones tienen un inmenso potencial para resolver no solo el razonamiento neuronal, sino también muchos otros problemas difíciles, incluidos los problemas de aprendizaje de Few Shot.


Ahora que sabemos cuáles son las técnicas, volvamos atrás y veamos cómo resuelven los problemas básicos con los que empezamos. La siguiente tabla muestra un resumen de las capacidades de las técnicas de aprendizaje efectivo para hacer frente a los desafíos:

Effective Learning Table
Capacidades de las técnicas de aprendizaje eficaces
  • Todas las técnicas mencionadas anteriormente ayudan a resolver el entrenamiento con una cantidad menor de datos de una forma u otra. Si bien el metaaprendizaje proporcionaría arquitecturas que se adaptarían a los datos, el aprendizaje por transferencia hace que el conocimiento de otro dominio sea útil para compensar la menor cantidad de datos. Few Shot Learning se dedica al problema como disciplina científica. El aprendizaje contradictorio puede ayudar a mejorar los conjuntos de datos.
  • Las arquitecturas de adaptación de dominio (un tipo de aprendizaje multitarea), aprendizaje contradictorio y (a veces) metaaprendizaje ayudan a resolver los problemas derivados de la diversidad de datos.
  • Meta-Learning y Few Shot Learning ayudan a resolver los problemas de datos incrementales.
  • Los algoritmos de razonamiento neuronal tienen un inmenso potencial para resolver problemas del mundo real cuando se incorporan como estudiantes meta-aprendices o estudiantes con pocos disparos.

Tenga en cuenta que estas técnicas de aprendizaje efectivo no son nuevas técnicas de aprendizaje profundo o aprendizaje automático, sino que complementan las técnicas existentes como trucos para hacerlas más rentables. Por lo tanto, seguirás viendo nuestras herramientas habituales, como las redes neuronales convolucionales y las LSTM, en acción, pero con algunas ventajas añadidas. Estas técnicas de aprendizaje eficaz, que funcionan con menos datos y realizan muchas tareas al mismo tiempo, pueden ayudar a facilitar la producción y comercialización de productos y servicios basados en la inteligencia artificial. En ParallelDots, reconocemos el poder del aprendizaje eficiente y lo incorporamos como una de las principales características de nuestra filosofía de investigación.

No cabe duda de que el futuro definitivo de la IA es alcanzar y superar la inteligencia humana. Pero lograr esta hazaña es inverosímil. Incluso los más optimistas de entre nosotros apuestan a que la IA a nivel humano (AGI o ASI) estará disponible dentro de 10 a 15 años, y los escépticos incluso están dispuestos a apostar que tardará siglos, si es que es posible. Bueno, no es de eso de lo que trata el post (deberías leer esto) correo si está interesado en aprender sobre la superinteligencia). Aquí vamos a hablar sobre un futuro más tangible y cercano y sobre los potentes algoritmos y técnicas de IA emergentes que, en nuestra opinión, van a dar forma al futuro cercano de la IA.

La IA ha empezado a mejorar a los humanos en algunas tareas específicas y seleccionadas. Por ejemplo, derrotar a los médicos en el diagnóstico del cáncer de piel y derrotar a jugadores de Go en el campeonato mundial. Sin embargo, los mismos sistemas y modelos no podrán realizar tareas diferentes a las para las que fueron entrenados. Esta es la razón por la que, a largo plazo, un sistema generalmente inteligente que realice un conjunto de tareas de manera eficiente sin necesidad de volver a evaluarlo se denomina el futuro de la IA. Sin embargo, en el futuro cercano de la IA, mucho antes de que surja la AGI, ¿cómo es posible que los científicos logren que los algoritmos basados en la IA superen los problemas a los que se enfrentan hoy en día para salir de los laboratorios y convertirse en objetos de uso diario?

Si miras a tu alrededor, la IA gana un castillo a la vez (lee nuestras publicaciones sobre cómo la IA supera a los humanos, primera y segunda parte). ¿Qué puede salir mal en un juego en el que todos ganan? Los seres humanos estamos produciendo más y más datos (que es el material que consume la IA) con el tiempo, y las capacidades de nuestro hardware también están mejorando. Después de todo, los datos y una mejor computación son las razones por las que la revolución del aprendizaje profundo comenzó en 2012, ¿verdad? La verdad es que las expectativas humanas crecen más rápido que el crecimiento de los datos y la computación. Los científicos de datos tendrían que pensar en soluciones más allá de lo que existe en este momento para resolver los problemas del mundo real. Por ejemplo, la clasificación de imágenes, como la mayoría de la gente pensaría, es científicamente un problema resuelto (si nos resistimos a decir 100% de precisión o GTFO). Podemos clasificar las imágenes (digamos en imágenes de gatos o perros) para que coincidan con la capacidad humana mediante la IA. Pero, ¿ya se puede usar esto en casos de uso del mundo real? ¿Puede la IA ofrecer una solución para los problemas más prácticos a los que se enfrentan los humanos? En algunos casos, sí, pero en muchos casos, todavía no lo hemos conseguido.

Lo guiaremos a través de los desafíos que son los principales obstáculos para desarrollar una solución para el mundo real mediante la IA. Supongamos que quieres clasificar imágenes de perros y gatos. Usaremos este ejemplo a lo largo de la publicación.

Future of AI Catdog
Nuestro algoritmo de ejemplo: clasificación de imágenes de perros y gatos[/subtítulo]

El siguiente gráfico resume los desafíos:

Future of AI roadblocks
Desafíos relacionados con el desarrollo de una IA en el mundo real

Analicemos estos desafíos en detalle:

Aprender con menos datos:

  • Los datos de entrenamiento que consumen los algoritmos de aprendizaje profundo más exitosos requieren que estén etiquetados de acuerdo con el contenido/función que contienen. Este proceso se denomina anotación.
  • Los algoritmos no pueden usar los datos que se encuentran naturalmente a su alrededor. Anotar unos pocos cientos (o miles de puntos de datos) es fácil, pero nuestro algoritmo de clasificación de imágenes a nivel humano necesitó un millón de imágenes anotadas para aprenderlas bien.
  • Así que la pregunta es, ¿es posible anotar un millón de imágenes? Si no es así, ¿cómo puede la IA escalar con una cantidad menor de datos anotados?

Resolver diversos problemas del mundo real:

  • Si bien los conjuntos de datos son fijos, el uso en el mundo real es más diverso (por ejemplo, un algoritmo entrenado en imágenes en color puede fallar gravemente en imágenes en escala de grises, a diferencia de los humanos).
  • Si bien hemos mejorado los algoritmos de visión artificial para detectar objetos que coincidan con los humanos. Pero como se mencionó anteriormente, estos algoritmos resuelven un problema muy específico en comparación con la inteligencia humana, que es mucho más genérica en muchos sentidos.
  • Nuestro algoritmo de IA de ejemplo, que clasifica gatos y perros, no podrá identificar una especie de perro rara si no se alimenta con imágenes de esa especie.

Ajustar los datos incrementales:

  • Otro desafío importante son los datos incrementales. En nuestro ejemplo, si intentamos reconocer gatos y perros, podemos entrenar a nuestra IA para que obtenga una serie de imágenes de gatos y perros de diferentes especies desde el primer momento. Sin embargo, cuando descubramos una especie completamente nueva, necesitamos entrenar al algoritmo para que reconozca a los «kotpies» junto con las especies anteriores.
  • Si bien la nueva especie puede parecerse más a otras de lo que pensamos y puede entrenarse fácilmente para adaptar el algoritmo, hay puntos en los que esto es más difícil y requiere un reentrenamiento y una reevaluación completos.
  • La pregunta es ¿podemos hacer que la IA se adapte al menos a estos pequeños cambios?

Para que la IA pueda utilizarse de forma inmediata, la idea es resolver los desafíos antes mencionados mediante un conjunto de enfoques denominados aprendizaje efectivo (ten en cuenta que no es un término oficial, solo lo estoy inventando para evitar escribir siempre metaaprendizaje, aprendizaje por transferencia, aprendizaje de pocos intentos, aprendizaje contradictorio y aprendizaje multitarea). Nosotros, en Puntos paralelos, ahora utilizan estos enfoques para resolver problemas limitados con la IA, ganando pequeñas batallas y preparándose para una IA más completa con la que conquistar guerras más grandes. Permítanos presentarle estas técnicas una a la vez.

Cabe destacar que la mayoría de estas técnicas de aprendizaje efectivo no son algo nuevo. Solo están viendo un resurgimiento ahora. Los investigadores de SVM (Support Vector Machines) han estado utilizando estas técnicas durante mucho tiempo. El aprendizaje contradictorio, por otro lado, es algo que surgió El trabajo reciente de Goodfellow en GAN y el razonamiento neuronal es un nuevo conjunto de técnicas para las que los conjuntos de datos están disponibles muy recientemente. Profundicemos en cómo estas técnicas van a ayudar a dar forma al futuro de la IA.

Técnicas para revolucionar el futuro cercano de la IA

Transferir el aprendizaje

¿Qué es?

Como su nombre indica, el aprendizaje se transfiere de una tarea a otra dentro del mismo algoritmo en Transfer Learning. Los algoritmos entrenados en una tarea (tarea de origen) con un conjunto de datos más grande se pueden transferir con o sin modificaciones como parte del algoritmo que intenta aprender una tarea diferente (tarea de destino) en un conjunto de datos (relativamente) más pequeño.

Future of AI Transfer Learning
Aprendizaje tradicional versus aprendizaje por transferencia. Créditos: Créditos: Sociedad de Computación IEEE

Algunos ejemplos

El uso de los parámetros de un algoritmo de clasificación de imágenes como extractor de características en diferentes tareas, como la detección de objetos, es una aplicación sencilla de Transfer Learning. Por el contrario, también se puede utilizar para realizar tareas complejas. El algoritmo Google se desarrolló para clasificar la retinopatía diabética mejor de lo que los médicos hace un tiempo se creó mediante transferencia de aprendizaje. Sorprendentemente, el detector de retinopatía diabética era en realidad un clasificador de imágenes del mundo real (clasificador de imágenes de perros y gatos) Transfer Learning para clasificar las gammagrafías oculares.

¡Cuéntame más!

En la literatura sobre aprendizaje profundo, los científicos de datos denominan a estas partes transferidas de las redes neuronales de la tarea de origen a la tarea de destino como redes previamente entrenadas. El ajuste fino se produce cuando los errores de la tarea objetivo se retropropagan levemente a la red previamente entrenada en lugar de utilizar la red previamente entrenada sin modificar. Se puede ver una buena introducción técnica a la transferencia del aprendizaje en visión por computador aquí. Este simple concepto de aprendizaje por transferencia es muy importante en nuestro conjunto de metodologías de aprendizaje efectivo.

Aprendizaje multitarea

¿Qué es?

En el aprendizaje multitarea, se resuelven varias tareas de aprendizaje al mismo tiempo, al tiempo que se aprovechan los puntos en común y las diferencias entre las tareas. Sorprende, pero a veces aprender dos o más tareas juntas (también denominadas tareas principales y tareas auxiliares) puede mejorar los resultados de las tareas. Tenga en cuenta que no todos los pares, trillizos o cuartetos de tareas pueden considerarse auxiliares. Pero cuando funciona, es un incremento gratuito en la precisión.

Future of AI Multi-transfer Learning
Realización de tres tareas con MTL. Créditos: Sebastián Ruder

Algunos ejemplos

Por ejemplo, en ParallelDots, nuestros clasificadores de detección de sentimientos, intenciones y emociones se entrenaron como aprendizaje multitarea, lo que aumentó su precisión en comparación con si los entrenáramos por separado. El mejor etiquetado semántico de roles y etiquetado de puntos de venta sistema en PNL sabemos que es un sistema de aprendizaje multitarea, por lo que es uno de los mejores sistemas para la segmentación semántica y de instancias en Computer Vision. A Google se le ocurrió Estudiantes multimodales que realizan múltiples tareas (Un modelo para gobernarlos todos) que puede aprender de los conjuntos de datos de visión y texto en la misma toma.

¡Cuéntame más!

Un aspecto muy importante del aprendizaje multitarea que se ve en las aplicaciones del mundo real es que, al entrenar cualquier tarea para que sea infalible, debemos respetar muchos dominios de los que provienen los datos (lo que también se denomina adaptación de dominio). Un ejemplo de lo que hacemos con perros y gatos es un algoritmo que puede reconocer imágenes de diferentes fuentes (por ejemplo, cámaras VGA y cámaras HD o incluso cámaras infrarrojas). En estos casos, se puede añadir una pérdida auxiliar de clasificación de dominio (de dónde provienen las imágenes) a cualquier tarea y, a continuación, la máquina aprende de tal manera que el algoritmo sigue mejorando en la tarea principal (clasificar las imágenes en imágenes de gatos o perros), pero empeorando deliberadamente en la tarea auxiliar (esto se hace propagando hacia atrás el gradiente de error inverso de la tarea de clasificación de dominios). La idea es que el algoritmo aprenda las características discriminatorias para la tarea principal, pero olvide las características que diferencian los dominios y esto lo mejoraría. El aprendizaje multitarea y sus primos relacionados con la adaptación de dominios son una de las técnicas de aprendizaje efectivo más exitosas que conocemos y tienen un papel importante que desempeñar en la configuración del futuro de la IA.

Aprendizaje contradictorio

¿Qué es?

El aprendizaje contradictorio como campo evolucionó a partir del trabajo de investigación de Ian Goodfellow. Si bien las aplicaciones más populares del aprendizaje contradictorio son, sin duda, las redes generativas adversarias (GAN), que se pueden utilizar para generar imágenes impresionantes, existen muchas otras formas de utilizar este conjunto de técnicas. Por lo general, esta técnica inspirada en la teoría de juegos tiene dos algoritmos, un generador y un discriminador, cuyo objetivo es engañarse unos a otros mientras se entrenan. El generador se puede usar para generar nuevas imágenes novedosas, como ya comentamos, pero también puede generar representaciones de cualquier otro dato para ocultar detalles al discriminador. Esta última es la razón por la que este concepto nos interesa tanto.

Future of AI adversarial
Redes generativas de confrontación. Créditos: O'Reilly

Algunos ejemplos

Este es un campo nuevo y la capacidad de generación de imágenes es probablemente lo que más le gusta a la gente más interesada astrónomos centrarse en. Pero creemos que esto también evolucionará en nuevos casos de uso, como veremos más adelante.

¡Cuéntame más!

El juego de adaptación de dominio se puede mejorar con la pérdida de GAN. En este caso, la pérdida auxiliar es un sistema GAN en lugar de una clasificación de dominios pura, en el que un discriminador intenta clasificar de qué dominio provienen los datos y un componente generador trata de engañarlo presentando ruido aleatorio en forma de datos. Según nuestra experiencia, esto funciona mejor que la adaptación simple de dominios (que también es más errática con respecto al código).

Aprendizaje de pocos tiros

¿Qué es?

Few Shot Learning es un estudio de técnicas que hacen que los algoritmos de aprendizaje profundo (o cualquier algoritmo de aprendizaje automático) aprendan con menos ejemplos en comparación con lo que haría un algoritmo tradicional. El aprendizaje con una sola toma consiste básicamente en aprender con un ejemplo de una categoría, el aprendizaje inductivo con k-shot significa aprender con k ejemplos de cada categoría.

Future of AI one shot
One Shot Learning usando algunos ejemplos de una clase. Créditos: Google DeepMind
¿Algunos ejemplos?

Son pocos los campos del Shot Learning que están recibiendo una afluencia de ponencias en las principales conferencias de aprendizaje profundo, y ahora hay conjuntos de datos específicos para comparar los resultados, al igual que MNIST y CIFAR son para el aprendizaje automático normal. El aprendizaje en una sola toma está teniendo varias aplicaciones en determinadas tareas de clasificación de imágenes, como la detección y representación de características.

¡Cuéntame más!

Hay varios métodos que se utilizan para el aprendizaje con pocos disparos, incluido el aprendizaje por transferencia, el aprendizaje multitarea y el metaaprendizaje como parte o la totalidad del algoritmo. Hay otras formas, como tener función de pérdida inteligente, utilizando arquitecturas dinámicas o usar trucos de optimización. Zero Shot Learning, una clase de algoritmos que pretenden predecir respuestas para categorías que el algoritmo ni siquiera ha visto, son básicamente algoritmos que pueden escalar con un nuevo tipo de datos.

Metalaprendizaje

¿Qué es?

El metaaprendizaje es exactamente lo que parece, un algoritmo que entrena de tal manera que, al ver un conjunto de datos, produce un nuevo predictor de aprendizaje automático para ese conjunto de datos en particular. La definición es muy futurista si se le echa un primer vistazo. Sientes «¡guau! eso es lo que hace un científico de datos» y está automatizando el «trabajo más atractivo del siglo XXI» y, en cierto sentido, los metaestudiantes han empezado a hacerlo (consulta entrada de blog de Google y esto trabajo de investigación).

Future of AI Meta Learning
Ejemplo de configuración de meta-aprendizaje para la clasificación de imágenes en pocas tomas. Créditos: Ravi y otros
Algunos ejemplos

El meta-aprendizaje se ha convertido recientemente en un tema candente en el aprendizaje profundo, con muchos trabajos de investigación que, por lo general, utilizan la técnica para la optimización de hiperparámetros y redes neuronales, la búsqueda de buenas arquitecturas de red, el reconocimiento de imágenes Few-Shot y el aprendizaje rápido por refuerzo. Puedes encontrar un artículo más completo sobre casos de uso aquí.

¡Cuéntame más!

Algunas personas se refieren a esta automatización total de la decisión de parámetros e hiperparámetros, como la arquitectura de red, como AutoML, y es posible que encuentre personas que se refieran a Meta Learning y AutoML como campos diferentes. A pesar de todo el revuelo que los rodea, lo cierto es que los Meta Learners siguen siendo algoritmos y vías para escalar el aprendizaje automático a medida que aumentan la complejidad y variedad de los datos.

La mayoría de los artículos sobre metaaprendizaje son trucos inteligentes que, según Wikipedia, tienen las siguientes propiedades:

  • El sistema debe incluir un subsistema de aprendizaje que se adapte con la experiencia.
  • La experiencia se adquiere explotando los metaconocimientos extraídos en un episodio de aprendizaje anterior sobre un único conjunto de datos o de diferentes dominios o problemas.
  • El sesgo de aprendizaje debe elegirse de forma dinámica.

Básicamente, el subsistema es una configuración que se adapta cuando se le introducen metadatos de un dominio (o de un dominio completamente nuevo). Estos metadatos pueden informar sobre el aumento del número de clases, la complejidad, los cambios en los colores, las texturas y los objetos (en las imágenes), los estilos, los patrones lingüísticos (lenguaje natural) y otras características similares. Echa un vistazo a algunos artículos geniales aquí: Jerarquías compartidas de metaaprendizaje y Metaaprendizaje mediante convoluciones temporales. También puede crear algoritmos Few Shot o Zero Shot utilizando arquitecturas de meta-aprendizaje. El metaaprendizaje es una de las técnicas más prometedoras que ayudará a dar forma al futuro de la IA.

Razonamiento neuronal

¿Qué es?

El razonamiento neuronal es la próxima gran novedad en los problemas de clasificación de imágenes. El razonamiento neuronal va un paso más allá del reconocimiento de patrones, en el que los algoritmos van más allá de la idea de simplemente identificar y clasificar texto o imágenes. El razonamiento neuronal consiste en resolver preguntas más genéricas en el análisis de texto o el análisis visual. Por ejemplo, la imagen de abajo representa un conjunto de preguntas que el razonamiento neuronal puede responder a partir de una imagen.

Future of AI reasoning
Ejemplos de preguntas de razonamiento neuronal. Créditos: INTELIGENTE

¡Cuéntame más!

Este nuevo conjunto de técnicas surgirá tras el lanzamiento del conjunto de datos BaBi de Facebook o del reciente Conjunto de datos CLEVR . Las técnicas que están surgiendo para descifrar las relaciones y no solo los patrones tienen un inmenso potencial para resolver no solo el razonamiento neuronal, sino también muchos otros problemas difíciles, incluidos los problemas de aprendizaje de Few Shot.


Ahora que sabemos cuáles son las técnicas, volvamos atrás y veamos cómo resuelven los problemas básicos con los que empezamos. La siguiente tabla muestra un resumen de las capacidades de las técnicas de aprendizaje efectivo para hacer frente a los desafíos:

Effective Learning Table
Capacidades de las técnicas de aprendizaje eficaces
  • Todas las técnicas mencionadas anteriormente ayudan a resolver el entrenamiento con una cantidad menor de datos de una forma u otra. Si bien el metaaprendizaje proporcionaría arquitecturas que se adaptarían a los datos, el aprendizaje por transferencia hace que el conocimiento de otro dominio sea útil para compensar la menor cantidad de datos. Few Shot Learning se dedica al problema como disciplina científica. El aprendizaje contradictorio puede ayudar a mejorar los conjuntos de datos.
  • Las arquitecturas de adaptación de dominio (un tipo de aprendizaje multitarea), aprendizaje contradictorio y (a veces) metaaprendizaje ayudan a resolver los problemas derivados de la diversidad de datos.
  • Meta-Learning y Few Shot Learning ayudan a resolver los problemas de datos incrementales.
  • Los algoritmos de razonamiento neuronal tienen un inmenso potencial para resolver problemas del mundo real cuando se incorporan como estudiantes meta-aprendices o estudiantes con pocos disparos.

Tenga en cuenta que estas técnicas de aprendizaje efectivo no son nuevas técnicas de aprendizaje profundo o aprendizaje automático, sino que complementan las técnicas existentes como trucos para hacerlas más rentables. Por lo tanto, seguirás viendo nuestras herramientas habituales, como las redes neuronales convolucionales y las LSTM, en acción, pero con algunas ventajas añadidas. Estas técnicas de aprendizaje eficaz, que funcionan con menos datos y realizan muchas tareas al mismo tiempo, pueden ayudar a facilitar la producción y comercialización de productos y servicios basados en la inteligencia artificial. En ParallelDots, reconocemos el poder del aprendizaje eficiente y lo incorporamos como una de las principales características de nuestra filosofía de investigación.