Una de las características más importante de la Inteligencia Artificial, es su capacidad de aprender automáticamente. En este artículo vamos a explicar cómo aprende la Inteligencia Artificial y los tipos de aprendizaje automático que existen.

Para hacerlo más interesante, vamos a empezar con un ejemplo. Imaginaos que tenemos que escribir un programa para detectar si un correo electrónico es spam o no. Podríamos intentar eliminar los correos que tuviesen algunas palabras. Las palabras las pondríamos en un fichero para que fuese más fácil editarlo, claro está. Pero habría dos problemas:

  • Sería casi imposible que se nos ocurran todas las palabras (o combinaciones de palabras) que poner en el fichero. Así que seguiríamos recibiendo spam.
  • Probablemente algunos correos serían clasificados como spam sin realmente serlo. Así que perderíamos mensajes.

Podríamos mejorar nuestro fichero, añadir otro fichero diciendo que otras combinaciones de palabras están autorizadas, etc. Pero requeriría de mucho trabajo por nuestra parte, y la gente que envía correos basura, acabaría encontrando la forma de saltarse nuestras reglas.

Usando técnicas de Inteligencia Artificial, y en particular usando el Machine Learning podemos ahorrarnos este trabajo. Le podemos dar a la IA una lista de correos deseados y otra de correos basura. Esta es todo la información que la Inteligencia Artificial necesita para aprender la diferencia. No sólo nos ahorrará el trabajo de hacerlo a nosotros; además los resultados serán mejores de lo que nosotros podríamos haber hecho.

Inteligencia Artificial aprende automáticamente a detectar correos electrónicos no deseados
Spam o Correo no deseado

Tipos de Aprendizaje Automático

La forma de aprender de la inteligencia artificial depende del tipo de aprendizaje automático (machine learning) que estemos usando. Podemos distinguir 4 tipos de machine learning según la supervisión que necesiten: supervisado, no supervisado, semi-supervisado y por refuerzo. Veamos la diferencia.

Aprendizaje Supervisado

El aprendizaje supervisado, recibe el nombre de “supervisado” porque necesita que siempre le enseñemos la respuesta correcta. Por ejemplo, para resolver el problema de clasificar correos electrónicos como spam o no spam, necesita que le demos ejemplos históricos correctamente clasificados. En otras palabras, para cada caso de ejemplo que le demos, necesita saber si el correo era spam o no.

Sabiendo cuál era la respuesta correcta, la Inteligencia Artificial aprende de sus propios errores. Muchos algoritmos supervisados empiezan dando respuestas aleatorias y después van mejorando a medida que aprenden de sus errores.

El aprendizaje supervisado es muy útil cuando queremos que la Inteligencia Artificial realice una tarea en el futuro. Esta característica hace a este tipo de aprendizaje automático muy atractivo para muchos negocios. En el entorno empresarial, el aprendizaje supervisado también se conoce como “análisis predictivo”.

Proceso del aprendizaje supervisado

  1. Recopilar datos históricos, incluyendo la respuesta correcta
  2. Construir un modelo de machine learning con esos datos
  3. Evaluar el modelo, para entender qué rendimiento podemos esperar de él
  4. Usar este modelo con datos nuevos. Por ejemplo, cuando llegue un correo electrónico nuevo

Este proceso está un poco simplificado. En otro artículo lo extenderé, pero da una idea de la forma de pensar acerca del aprendizaje supervisado.

Ejemplos de aprendizaje supervisado

  • Clasificar correos electrónicos en genuinos o spam
  • Predecir por cuánto dinero se va a vender una propiedad inmobiliaria
  • Calcular la probabilidad de que hagas click en un anuncio
  • Decidir qué hotel enseñarte primero en una web de hoteles
  • Estimar si el cliente de un banco será capaz de pagar un crédito
  • Recomendar si es mejor comprar ahora tu vuelo o es mejor esperar
  • El traductor de Google
  • Detección de objetos en una imagen
  • Reconocimiento y síntesis de voz
  • Estimar qué edad tienes a partir de una foto
  • Predecir qué clientes van a cancelar su contrato con su compañía telefónica
  • Estimar cuántas visitas va a tener un artículo en la web
  • Generación de música por ordenador

Aprendizaje No Supervisado

El aprendizaje no supervisado, no necesita supervisión. Esto quiere decir que no necesita que le digamos cuál es la respuesta correcta. También significa que no podemos calcular el error de sus resultados. Cuando usamos aprendizaje no supervisado, la Inteligencia Artificial aprende de los datos mismos, por así decirlo.

El aprendizaje no supervisado es útil cuando queremos entender mejor nuestros datos históricos. Puede tener implicaciones en el futuro pero no son tan obvias. La principal ventaja de cara al futuro es que nosotros, los humanos, entendemos mejor nuestros datos. Con este nuevo conocimiento revelado por la IA, podemos tomar mejores decisiones. Veamos un ejemplo.

Algunos supermercados usan aprendizaje no supervisado para entender mejor sus datos.
Algunos supermercados usan aprendizaje no supervisado para entender mejor sus datos.

Los supermercados generan muchísimos datos. Entre ellos, están los datos de lo que cada cliente compra. Aunque no tengan forma de saber quién eres, sí saben lo que un cliente anónimo ha metido en el carro de la compra. Cuando le damos a la IA los datos del carro de la compra, no le decimos lo que tiene que hacer con ellos. En este sentido no hay ninguna “solución correcta”. Sólo le pedimos que analice los datos y nos diga si hay algo interesante en ellos.

Usando aprendizaje no supervisado, hace tiempo se descubrió que muchos de los carros de la compra que tenían cerveza, también tenían pañales. Esta relación sobre datos históricos nos permite idea una estrategia: ¿y si ponemos nuestra marca de pañales al lado de la cerveza? El resultado fue que muchos clientes compraron los pañales de la marca el supermercado sólo por la comodidad de tenerlos tan a mano.

Proceso del aprendizaje no supervisado

  1. Recopilar datos históricos
  2. Instruir a la Inteligencia Artificial a que busque patrones, grupos, etc.
  3. Utilizar la información nueva para tomar mejores decisiones en el futuro

Ejemplos de aprendizaje no supervisado

  • Ayudar a elegir qué medidas del cuerpo hay que usar para las tallas (XS, S, M, L, XL, XXL, etc.)
  • Comprimir imágenes (con pérdida de calidad)
  • Sistemas de recomendación. Por ejemplo, los que usa Netflix o Amazon

Aprendizaje Semi-supervisado

El aprendizaje semi-supervisado está entre el aprendizaje supervisado y el aprendizaje no supervisado:

  • utiliza datos etiquetados, como en el aprendizaje supervisado
  • y también datos no etiquetados, como en el aprendizaje no supervisado

Conseguir datos etiquetados, en algunos casos, es bastante difícil. Por ejemplo, si queremos construir nuestro sistema de detección de spam, alguien tiene que decidir cuáles mensajes son spam y cuáles no. Y ese alguien somos nosotros, los humanos. Necesitamos hacer este trabajo manual para que la Inteligencia Artificial pueda aprender qué es lo que tiene que hacer.

Usando una estrategia de aprendizaje semi-supervisado, podríamos etiquetar manualmente algunos correos electrónicos, dejar que la Inteligencia Artificial aprenda y empezar a usarlo. No va a funcionar tan bien como si hubiésemos etiquetado más correos. Pero por lo menos, podríamos empezar a utilizar el sistema anti-spam antes. Seguramente tendríamos correos mal clasificados, pero conforme los fuésemos etiquetando correctamente iría aprendiendo mejor.

Cuando esto se hace a una escala mayor, no resulta tan pesado. Por ejemplo, si usas el correo de Google, cada vez que marcas un correo como spam, estás ayudando a todos los demás usuarios de gmail. Google usa crowdsourcing (colaboración distribuida) para que funcione muy bien con muy poco trabajo individual … aunque sea mucho trabajo si tenemos en cuenta a todas las personas que contribuyen.

Proceso del aprendizaje semi-supervisado

  1. Recopilar los pocos datos históricos históricos que tengan resultados disponibles
  2. Recopilar los datos históricos sin resultados
  3. Evaluar la posibilidad de etiquetar manualmente más datos históricos
  4. Instruir a la Inteligencia Artificial a que aprenda utilizando aprendizaje supervisado los datos históricos para los que tenemos resultados
  5. Usar el modelo de machine learning aprendido para etiquetar automáticamente el resto de los datos
  6. Usar otro modelo de machine learning supervisado con los datos etiquetados inicialmente y los datos etiquetados automáticamente

Ejemplos de aprendizaje semi-supervisado

  • Detección de correos basura
  • Detección automática de anomalías
  • Reconocimiento facial

Aprendizaje por Refuerzo

El aprendizaje por refuerzo es una especie de aprendizaje supervisado … sin llegar a serlo. En el aprendizaje supervisado, para cada dato que ofrecemos como ejemplo, también decimos cuál fue solución correcta. En el aprendizaje por refuerzo, no podemos dar la solución correcta hasta saber lo que la Inteligencia Artificial va a hacer. Normalmente hará muchas cosas, y sólo sabremos cómo de bien o de mal lo hizo después de un tiempo.

La Inteligencia Artificial aprende a ganar al ajedrez con aprendizaje por refuerzo
La Inteligencia Artificial aprende a ganar al ajedrez con aprendizaje por refuerzo

Como esto es un poco abstracto, vamos a poner un ejemplo. A lo mejor has visto en las noticias que AlphaZero gana a los mejores jugadores al ajedrez y al Go. Si queremos que la IA aprenda a ganar a humanos, o a otros programas de ordenador, no podemos decirle cuál es la solución correcta. Al decírselo, sólo podría ser tan bueno como nosotros o como los otros programas de ordenador. Si queremos que juegue mejor que nosotros, tenemos que enseñarle las reglas del juego y dejarle aprender por sí mismo. Sólo así podrá encontrar soluciones creativas, poco comunes y geniales.

El aprendizaje por refuerzo es el tipo de aprendizaje más difícil. La razón es que la IA no puede saber cómo de buena es la acción que acaba de realizar; en otras palabras, no puede calcular cuál ha sido su error. Tiene que esperar al final de la partida puede saber si ha ganado, empatado o perdido. Esta es la única información que tiene. En el aprendizaje por refuerzo, la Inteligencia Artificial aprende de sus éxitos y de sus fracasos (no de sus errores).

 

Nota: utilizo los términos “machine learning” y “aprendizaje automático” indistintamente.

Suscríbete a IArtificial.net

¿Cómo aprende la Inteligencia Artificial?

Deja un comentario

avatar
  Suscribir  
Notificar de