El siguiente programa, generado en el entorno de Scratch de LearningML, se cree que no funciona de manera correcta. Se sabe que el modelo de IA creado funciona perfectamente.
Mediante el programa diseñado se quiere que, cuando la confianza sea mayor del 50 %, nos indique cuál ha sido la clasificación de la imagen recogida por la webcam del ordenador. Indique si está correcto y, si no es así, cómo se puede corregir el error.

Esta cuestión apareció en la prueba práctica del examen de oposición para profesor de Tecnología en Castilla y León 2025
Integrar Inteligencia Artificial en Scratch a través de herramientas como LearningML es una forma increíble de crear aplicaciones inteligentes. Sin embargo, hay un error técnico muy común que puede hacer que tu programa se comporte de forma errática o se vuelva extremadamente lento.
Hoy analizamos un caso real: un clasificador de imágenes que no funciona como debería.
El Escenario: Clasificación de accesorios
Imagina un programa diseñado para detectar si llevas un gorro, unas gafas o nada, utilizando la webcam. El modelo de IA funciona al 100%, pero al ejecutar el código, las respuestas tardan en aparecer o saltan de un objeto a otro sin sentido.
El Error: La «Triple Consulta»
En el código original, el programa le pide a la IA que clasifique la imagen en tres momentos distintos dentro del mismo ciclo:
- Para guardar el valor en una variable.
- Para comprobar si es un «Gorro».
- Para comprobar si es «Nada».
¿Por qué es esto un problema? Llamar al modelo de IA consume muchos recursos de procesamiento. Además, como la imagen de la webcam cambia milisegundo a milisegundo, la IA podría ver un «Gorro» en la primera consulta y «Gafas» en la siguiente, causando una inconsistencia lógica total.
La Solución: Optimización mediante Variables
La clave para que un programa de IA sea fluido es preguntar una sola vez y recordar la respuesta. Aquí te mostramos cómo corregirlo:
- Captura Única: Usamos el bloque
dar a [Clasificación] el valor (Clasificar imagen)al inicio. Esto congela el veredicto de la IA para ese instante preciso. - Consulta la Variable, no la IA: En todos los bloques de control (
si... entonces), en lugar de volver a llamar al sensor de «Clasificar imagen», utilizamos el bloque naranja de nuestra variableClasificación.
Resultado Final
Al aplicar este cambio, el proyecto gana:
- Velocidad: El procesador solo analiza la imagen una vez por ciclo.
- Estabilidad: El programa no cambiará de opinión a mitad de una comprobación.
- Código Limpio: Una estructura mucho más profesional y fácil de escalar.
Tip para desarrolladores: Este principio de «almacenar el resultado en una variable» no solo aplica a la IA, sino a cualquier operación compleja en programación. ¡Optimiza siempre que puedas!

