Enfoque en la parte matemática: ¿cómo ensenar a la IA?

La historia de Soraya y la IA

Frustrada por su semana en vano, Soraya decidió al lago ir el sábado. Después de tantos fracasos recientes, se había ganado un respiro en plena naturaleza. Pero, incapaz de dejar de pensar en ellos, se llevó el portátil con ella.

Nada más llegar, abrió ChatGPT y tecleó: «Enséñame a programar». El chatbot respondió con entusiasmo: ¡Por supuesto! Será un placer. Empecemos por lo básico. Elige un lenguaje de programación.

A respuesta continuó unas cuantas líneas más, hasta que finalmente remató con una advertencia:

Esto es sólo el principio. No olvides que aprender a programar lleva tiempo.

Los músculos de la mandíbula de Soraya se tensaron. No tenía tiempo. Lo que quería era un trabajo estable.

Soraya tecleó entonces en la barra de direcciones de su navegador el enlace al generador de historias enviado por Nico.

Bienvenida Soraya, ¿te gustaría continuar la aventura?

El mensaje parpadeaba en la pantalla con cierto aire burlón. Debajo, un botón azul resaltado con un “OK” la invitaba a sumergirse en la historia. Y, claro, lo pulsó.

El relato se desplegó:

"Entonces Soraya se dio cuenta. Contar con una IA en una biblioteca era una bendición. No tendría que molestarse en leer, alguien...

Etapas de un proyecto de aprendizaje automático

Primer paso: el problema por resolver

Para comprender mejor el aspecto matemático del desarrollo de la IA, veamos los pasos que hay que seguir en un proyecto de aprendizaje automático. Veremos un proceso general.

Lo primero que hay que hacer es pensar en el problema que hay que resolver. Por eso Julie, Tania y Max hablan con Christophe. Tienen que entender el campo en el que van a montar su sistema. Seguro que antes de llegar a la biblioteca hablaron con varias personas en el ayuntamiento. Así llegaron a ponerse de acuerdo sobre un objetivo.

En nuestro caso, quieren modernizar la biblioteca. Al menos, así lo explica Christophe. A veces es importante desde el punto de vista del marketing, incluso en el sector público, demostrar que se mejora el servicio y que se saben utilizar las nuevas tecnologías. Pero más allá de este efecto "wow", cuya pertinencia puede criticarse, ¿no hay algo más? La primera aplicación que el Ayuntamiento quiere poner en marcha es un sistema de recomendaciones. Como ya hemos dicho, hay varias razones para desarrollar uno. Quizás los lectores se quejan de que no encuentran lo que buscan, o han expresado su deseo de disponer de una interfaz más personalizada cuando consultan el catálogo y su cuenta. En eso consiste un motor de recomendación. Así que, por supuesto, sería preferible explicar los entresijos a los bibliotecarios para que colaboren. Pero en la vida, las cosas no siempre salen como deberían.

Segunda etapa: Búsqueda o producción de los datos

Tras investigar un poco para encontrar la mejor manera de responder al problema con IA, el segundo paso es recopilar los datos. Hay varias fuentes posibles. Las IA como ChatGPT o MidJourney buscarán en la Web, una mina de oro. Sin embargo, se trata de un material precioso enfangado que a menudo hay que filtrar.

En otros casos, hay que ser astuto para encontrar la información adecuada. Es cierto que se ha producido una explosión de información en las redes. Se habla incluso de "infobesidad". Sin embargo, las empresas que necesitan desarrollar aplicaciones en sistemas muy específicos no siempre pueden contentarse con esto.

Los datos abiertos pueden ser una fuente. Ya lo hemos mencionado. Este tipo de base de datos se utilizó, por ejemplo...

Poner en práctica el aprendizaje automático

Primera etapa: Recuperación de datos

Max y Tania aspiran a lo mismo: satisfacer a los lectores con este motor de recomendación y, por tanto, hacerlo visible. Tendrán que armarse de paciencia. De momento, sólo están al principio del proyecto.

Imaginemos, de forma simplificada, una posible aplicación de este motor de recomendación. Los pasos que Max siguió en su proyecto pueden verse en forma de los símbolos multicolores que asustaron a Soraya. En primer lugar, hay que recuperar los datos, lo que podría ser tan sencillo como esto:

 = historial_usuarios obtener_historial()   
calificaciones = obtener_calificaciones() 

El historial de los usuarios y las valoraciones representan distintos tipos de información. Estas son nuestras características, nuestras variables explicativas.

Segunda etapa: Limpieza de datos

El siguiente paso es limpiar los componentes resultantes.

calificaciones_limpiadas = limpiar(calificaciones) 

Aplicamos una función de limpieza que elimina los valores atípicos debidos a errores de entrada o de datos. Esta función podría haber sido desarrollada por Tania en otro archivo o mediante código de una fuente externa.

Paso 3: Preparación de los datos

Pasemos a la preparación. En nuestro caso, vamos a agregar la información.

= datos_finales calificaciones_limpiadas...

Conceptos clave

Los algoritmos en el corazón de la IA

Sigamos ahondando en los entresijos del diseño de IA explorando una serie de conceptos.

Con el aprendizaje automático, construimos un modelo. Para obtener este modelo, utilizamos lo que se conoce como algoritmos. Un algoritmo es una secuencia finita de instrucciones lógicas que un ordenador debe ejecutar en respuesta a una situación definida. Nuestro problema es extraer el significado de un grupo de datos.

Tomemos el caso del juego del Go. A partir del historial de duelos entre las piedras blanca y negra que posee la máquina, necesitamos hallar el porcentaje de éxito de una acción determinada. Un cálculo como éste constituye un conjunto metódico que puede describirse como un algoritmo.

Como no hay nada mejor que un diagrama, veamos éste, que representa la parte de entrenamiento del aprendizaje automático.

images/RBHS02-03-2.png

Tenemos datos, aplicamos un algoritmo que detecta una estructura en los datos y los ordena en un modelo.

Veamos ahora cómo utilizar este modelo en la sección "inferencia".

images/RBHS02-03-3.png

Ahora tenemos nuestro modelo y podemos utilizarlo con nuevos datos. Por ejemplo, si hay dos piedras negras en Atari, el modelo puede analizar lo que tiene delante para decidir qué jugada hacer.

Árboles de decisión, un tipo popular de modelo

Existen varios tipos de modelos. Uno de los más populares es el árbol...

Deshacerse de las fantasías asociadas a la IA

IA e inteligencia

Ahora que hemos repasado algunos de los entresijos de la IA, echemos otro vistazo a las metáforas que utilizamos para hablar de ella. Esta será una oportunidad para contrarrestar de una vez por todas las fantasías que plagan la disciplina.

No, la IA no es inteligente. Definir la inteligencia es un asunto arriesgado, pero una cosa es cierta: la IA no es como nosotros. No es lo mismo que la inteligencia humana. Lo mismo ocurre con la inteligencia animal. Quizás algún día la IA se fusione en apariencia con una persona real. Pero difícilmente podemos llamar inteligente a esta masa de código. Por eso algunos expertos en la materia prefieren hablar de inteligencia aumentada. Durante mucho tiempo, fue incluso tabú para los equipos de científicos de datos e ingenieros utilizar el término "inteligencia artificial". Probablemente se refería demasiado a máquinas capaces de decidirlo todo por sí mismas.

Las aplicaciones de las que hablamos nunca harán otra cosa que aquello para lo que fueron codificadas. Sin duda, los datos influirán en su comportamiento. Pero no podemos esperar que la IA improvise. Del mismo modo que no podemos esperar nada de estos programas, tampoco podemos esperar una creación real, al menos no en el sentido en que la entendemos en los seres humanos. Programas como ChatGPT...

En pocas palabras

  • Construir una IA implica varias etapas. Muchas de ellas se refieren a la manipulación de datos.

  • Al final, el proceso da lugar a que esta secuencia se ponga en forma de lenguaje informático. Al final, obtenemos un código que expresa los distintos conceptos del aprendizaje automático.

  • Son variados y más o menos complejos.

  • Una vez que te acercas a un motor de IA, puedes echar un vistazo a las metáforas utilizadas en todo momento para identificar sus limitaciones.

En esta sección, echamos un vistazo más de cerca al interior de las IA. Lo que vemos no tiene nada de mágico. Puede resultar abstruso a primera vista, pero cuanto más rascamos la superficie, más comprendemos los signos que tenemos delante y las teorías que llevan consigo. Es casi aburrido. ¿Podría ser éste el tipo de programa que sustituya a los trabajadores?