Chisme 103 del Lince: el gato obediente con la voz
Tutorial paso a paso. Usaremos dos pestañas abiertas a la vez: LearningML para entrenar la IA con tu voz y Scratch de LearningML para mover al gato.
Noche en Sierra Bermeja. El Lince de la Noche tiene que pasar entre las rocas sin tocar ninguna piedra, y el gato montés que lo acompaña no le hace ni caso. «Que se mueva cuando le hablo», pide el Lince. La Gata Montesa, desde lo alto de una roca, responde: «Pues dile lo que quieres que haga, y que el ordenador lo entienda».
Introducción
Vamos a construir un gato de Scratch que obedece órdenes de voz: arriba, abajo, izquierda, derecha y salto. Para eso entrenamos una IA con grabaciones de tu voz y la usamos dentro de Scratch.
Por qué este chisme
Hablar con un ordenador es algo que hacemos a diario, con asistentes y altavoces. Este chisme nos deja ver cómo funciona por dentro, con una lista pequeña de órdenes que tú decides, y nos permite comprobar cuándo la IA entiende y cuándo no.
Cómo funciona
La IA no entiende las palabras como las entendemos nosotros. Cuando grabamos una orden, la convierte en un conjunto de números que describen el sonido, y los compara con los ejemplos que hemos grabado de cada clase. Como en el chisme 102, devuelve la clase que más se parece y un nivel de confianza entre 0 y 1.
En este programa, el gato solo actúa si la confianza es mayor de 0,6. Si no, dice «No te he entendido». Así evitamos que un ruido del aula lo mueva sin que lo hayamos pedido.
Qué necesitamos
- Un ordenador con micrófono y navegador (Chrome o Edge).
- LearningML (learningml.org) para entrenar la IA y su Scratch para programar al gato.
- Papel, para apuntar los resultados.
Construcción
Paso 1. Pestañas abiertas
Abre dos pestañas: una con learningml.org (editor) y otra con el Scratch de LearningML.
Paso 2. Crea las clases
En el editor de LearningML, crea un proyecto de sonidos con seis clases, escritas exactamente así: arriba, abajo, izquierda, derecha, salto y nada. El programa compara con estos nombres, así que una tilde o una letra distinta haría que el gato no reaccione.
Paso 3. Graba la voz con variaciones
Di cada palabra muchas veces, con pequeñas diferencias: más rápido y más lento, más fuerte y más bajito, en voz alta y en voz baja, con otro tono. Cuantas más variaciones, mejor reconocerá la IA la orden en distintas situaciones. Graba también la clase nada con los ruidos normales del aula, sin decir ninguna de las palabras de arriba.
No grabes a otras personas sin permiso. Las grabaciones son de la clase y se usan solo para este chisme.
Paso 4. Entrena el modelo y pruébalo
Entrena el modelo y prueba las órdenes con voces distintas a la de quien ha grabado. ¿Acierta? ¿Qué palabra confunde con cuál? Apunta los fallos en papel.
Paso 5. Crea las variables en Scratch
En el Scratch de LearningML, carga el modelo que has entrenado, elige el gato y crea estas tres variables:
- grabacion: el audio que se graba en cada vuelta.
- orden: la clase que devuelve la IA.
- confianzaorden: su confianza, entre 0 y 1.
Paso 6. Escucha una vez y clasifica lo mismo
Dentro de un bucle por siempre, graba una sola vez y guarda el resultado en grabacion. Después clasifica esa grabación para obtener la orden y la confianza. Si grabaras dos veces, la orden y la confianza saldrían de sonidos distintos.
por siempre dar a grabacion el valor (Record audio) dar a orden el valor (Classify item grabacion) dar a confianzaorden el valor (Confidence for item grabacion)
Paso 7. Mueve al gato según la orden
Comprueba primero si la confianza es mayor de 0,6. Si lo es, mira la orden con un si para cada una:
- si orden = salto: suma 20 a y, espera 0,5 segundos y suma −20 a y. El gato da un pequeño salto.
- si orden = derecha: suma 20 a x.
- si orden = izquierda: suma −20 a x.
- si orden = arriba: suma 20 a y.
- si orden = abajo: suma −20 a y.
Si la confianza no supera 0,6, el gato dice No te he entendido durante 2 segundos.
La clase nada no tiene bloque propio: si la IA la detecta, el gato dirá «No te he entendido». Es una buena discusión para el aula: ¿debe responder el gato cuando no le hablas? Si queréis que se quede callado, añadid un si orden = nada sin ninguna acción dentro.
Para el profesorado
Antes de clase, haz tú la prueba completa: graba, entrena, programa y comprueba que el gato responde. Los nombres de las clases tienen que coincidir exactamente con los de los bloques (salto, no salta). Las grabaciones se hacen en el propio ordenador y no deben subirse a ningún servicio externo.
Cómo probarlo
- Di cada orden cinco veces y anota cuántas acierta el gato.
- Repite con otra persona de la clase. ¿Cambia el resultado?
- Haz ruido de fondo (una silla, una conversación) y mira si el gato se mueve sin que lo pidas.
Qué estamos midiendo realmente
El micrófono mide cambios de presión del aire en el tiempo. La IA no «oye» una palabra: compara ese sonido con los ejemplos que ha visto. Si todos los ejemplos son de la misma persona, a la misma velocidad y en el mismo lugar, el modelo aprende esas condiciones, no la palabra. Por eso hay que variar las grabaciones y probar con gente distinta. Medir no significa necesariamente medir bien.
Para el aula
- ¿Qué pasa si solo grabamos a una persona? ¿Y si la probamos con otra?
- ¿Cuántas grabaciones hacen falta para que la IA acierte al menos 9 de cada 10 veces?
- ¿Qué cambia si subimos o bajamos el umbral de 0,6? ¿Es mejor que no responda o que responda mal?
- Si el gato confunde «izquierda» con «derecha», ¿qué crees que tiene en común el sonido de las dos palabras?
Retos
- Haz que funcione. Consigue que el gato haga las cinco órdenes seguidas.
- Modifica algo. Cambia el tamaño del paso (20) y observa cómo se mueve.
- Añade una orden. Por ejemplo, «para», con su propia clase y su propio bloque.
- Guarda los datos. Registra 30 órdenes y calcula el porcentaje de aciertos.
- Haz que otro participe. Prueba el gato con un compañero que no haya grabado nada. ¿Cambia el resultado?
Qué hemos aprendido
Un gato que obedece la voz enseña condicionales, variables y bucles, pero también que la IA aprende de los ejemplos que le damos. Si los ejemplos son pocos o parecidos, la IA se equivoca de forma predecible, y eso podemos medirlo.
Para seguir investigando
- Chisme 10: el entrenador de voz, que también trabaja con la voz.
- Chisme 67: el oído del Lince (voz), para reconocer el habla sin modelos previos.
- Chisme 102: piedra, papel o tijera con IA, que usa el mismo criterio de confianza con imágenes.