I.A + Scratch Machine Learning y Scratch
Introducción.
1. Introducción
1.- Visualiza el siguiente vídeo de introducción para contextualizar el trabajo que vas a realizar en este módulo y para conocer el funcionamiento de la plataforma web.learningml.org.
En esta sección aprenderás a preparar tu primer algoritmo de inteligencia artificial para reconocer diferentes tipos de problemas de matemáticas. Concretamente, explica cómo crear un algoritmo que diferencie entre problemas de sumar, restar o multiplicar. Una vez completado tu algoritmo, podrás utilizarlo con Scratch para crear un programa en el que un personaje te diga qué tipo de problema es al escribirlo en pantalla.
En el siguiente vídeo podrás visualizar los pasos a realizar.
En esta sección aprenderás a preparar un algoritmo de inteligencia artificial para reconocer imágenes. Este algoritmo aprenderá a partir de imágenes tomadas con la cámara del ordenador u otras que le proporcionemos. Posteriormente, podrás utilizar este algoritmo para crear un programa con Scratch que reconozca distintas imágenes en tiempo real.
En el siguiente vídeo podrás visualizar el proceso a seguir para desarrollar este algoritmo.
Si no deseas trabajar con tu imagen personal utilizando la cámara de tu ordenador, puedes emplear las imágenes que encontrarás en el siguiente archivo. Con estas imágenes podrás entrenar al algoritmo y probarlo.
Ejemplo de actividad Microbit controlada por I.A con Scratch. Enlace a la web Videotutorial-1 Videotutorial-2
Para ver cómo programar una imagen con Scratch, puedes consultar el vídeo explicativo en el que muestra esta alternativa
ANÁLISIS DE CONDUCTA Esta documentación está obtenida desde la web LearningML.org
Objetivo (bien, mal, triste, alegre,..)
1. Objetivo
En esta actividad vas a construir un programa capaz de analizar si expresiones escritas por el usuario son de buen rollo o malo, y según como sean mostrará un personaje con aspecto contento o triste.
Creación del modelo para clasificar textos positivos o negativos de un examen Editor learning. https://web.learningml.org/actividad-analisis-de-conductas/
El primer paso es crear un modelo que sea capaz de clasificar las expresiones que escribimos como positivas o negativas. Puedes imaginarte al modelo como una máquina. Por un lado le metemos un texto y entonces la máquina lo analiza sacando por otro lado el tipo de sentimiento al que pertenece ese texto. El editor de LearningML es la herramienta que usarás para construir este modelo.
Abre el editor de LearningML. Para ello, dirige tu navegador (Chrome o Firefox) a la dirección https://learningml.org/editor.
Cómo queremos reconocer textos, pincha en el botón Reconocer Textos, y se abrirá la herramienta con las opciones necesarias para construir un modelo de reconocimiento de texto.
Ahora, en la sección “1. Entrenar”, vas a añadir 2 clases (o etiquetas, que también se llaman así), una para cada tipo de conducta. El nombre de estas clases (o etiquetas) serán: positivo y negativo. Para crear una nueva clase pincha en el botón Añadir nueva clase de texto.
Añade a cada clase varios textos que tengan que ver con lo que la clase representa. A continuación te damos algunos ejemplos.
positivo
Si necesita ayuda, dímelo
Puedes contar conmigo
Si no te importa
Si te parece bien negativo
Vete ya hombre
No sirves para nada
No puedo ni verte
Para añadir nuevos textos a una clase, pincha en el botón + de esa clase. Fíjate que cada clase tiene su propio botón + para añadir sus textos.
Muy bien, ya tienes el conjunto de datos de ejemplo. Cuanto más datos añadas, mejor será el resultado. Ahora pincha en el botón Aprender a reconocer textos de la sección “2. Aprender”. Asegúrate de que el desplegable Lenguaje de los textos esté en Español, a menos que hayas decidido dar las órdenes en inglés o en gallego, en cuyo caso tendrás que escoger el idioma que hayas usado para escribir los textos.
IMPORTANTE: Una vez que pinches en este botón, tu ordenador estará “aprendiendo” a partir de los textos que has escrito. Este aprendizaje se hace gracias a un algoritmo que denominamos Algoritmo de Machine Learning. Esto puede tardar un ratito. Sé paciente. Al final de este paso, el algoritmo de Machine Learning ha creado lo que llamamos un modelo. Ese modelo es algo que tú puedes utilizar para que el ordenador reconozca nuevas órdenes parecidas aunque diferentes a las del conjunto de datos de entrenamiento.
Ahora hay que ver si el modelo que ha construido el algoritmo de Machine Learning funciona bien. Utiliza la caja de texto de la sección “3. Probar” para escribir textos que tengan que ver sentimientos positivos o negativos. Pincha entonces en el botón Comprobar y observa si lo que dice LearningML coincide con la respuesta correcta.
Enhorabuena! Ya tienes un modelo de inteligencia artificial que reconoce conductas positivas y negativas.
Puede ocurrir que en el paso 6, lo que dice LearningML no coincide con el tipo de conducta correcta. En ese caso, puedes añadir esa frase a la clase que realmente le corresponda y volver a ejecutar el algoritmo de machine learning, es decir, volver a pinchar en el botón Aprender a reconocer textos. Así crearás un nuevo modelo que habrá aprendido esa nueva frase y será más “potente”, pues es capaz de reconocer correctamente más textos.
También puedes mejorar el análisis de conductas añadiendo una nueva clase para las expresiones que no sean ni de buen rollo ni de malo, es decir, que sean neutras.
Y ahora a programar.
Ya tienes la pieza fundamental del asistente virtual, la que es capaz de reconocer a qué tipo de conducta a la que pertenece un texto. A esta pieza la hemos llamado modelo. Ahora usaremos esta pieza inteligente, es decir el modelo, para hacer un programa que reaccione a las expresiones del usuario.
En la sección “3. Probar” del editor de LearningML, pincha en el botón que tiene el gato de Scratch… y se abre Scratch!
Fíjate que en la primera columna, donde aparecen los tipos de bloques, hay unos que se llaman “learningml-texts” y “learningml-images”. Pincha sobre ellos y verás que contienen varios bloques nuevos. Estos bloques sirven para usar el modelo que acabas de construir hace un momento. Como has hecho un modelo de reconocimiento de textos, debes usar los bloques de la sección “learningml-texts”.
Coloca un bloque “classify text <texto>” en la zona de programación de Scratch y escribe en su entrada algún texto que este escrito de buen rollo o del mal rollo. Entonces pincha encima del bloque y observa lo que ocurre. Al lado del bloque aparece el tipo de conducta a la que pertenece el texto. Este hecho nos da la clave para construir nuestro programa.
Y ahora es el momento de programar el juego. Puedes utilizar los siguientes bloques para ello:
Algunos bloques que puedes usar Ten en cuenta que el bloque “classify <texto>” devuelve la clase a la que pertenece el texto, es decir: positivo o negativo. Si no consigues hacer el programa puedes bajarte esta solución y examinarla.
FILTRO DE IMÁGENES INTELIGENTES.
Objetivos.
En esta actividad vamos a programar una aplicación que dibujará en la pantalla una gran cantidad de imágenes de distintas mariposas, cangrejos, cocodrilos y canguros. Entonces el usuario podrá seleccionar que tipos de imágenes quiere ver y el programa, usando reconocimiento de imágenes, nos mostrará solo las imágenes que pertenezcan al tipo que el usuario le haya pedido mostrar.
Para facilitarte la realización de esta actividad te hemos preparado un conjunto de datos de entrenamiento con distintas imágenes de mariposas, cangrejos, cocodrilos y canguros. Bájate este archivo y descomprímelo obtenerlo. dataset-actividad-lml.zip
Creación del modelo para reconocer imágenes
El primer paso es crear un modelo que sea capaz de clasificar las imágenes como pertenecientes a alguna de las siguientes clases: mariposa, cangrejo, cocodrilo y canguro. Puedes imaginarte al modelo como una máquina; por un lado le metemos una imagen y, después de analizarla, por otro lado la máquina nos dice a qué clase pertenece la imagen . El editor de LearningML es la herramienta que usarás para construir este modelo.
Abre el editor de LearningML. Para ello, dirige tu navegador (Chrome o Firefox) a la dirección https://learningml.org/editor.
Cómo queremos reconocer imágenes, pincha en el botón Reconocer Imágenes, y se abrirá la herramienta con las opciones necesarias para construir un modelo de reconocimiento de imágenes.
Ahora, en la sección “1. Entrenar”, vas a añadir 4 clases (o etiquetas, que también se llaman así), una para cada tipo de imagen. El nombre de estas clases (o etiquetas) serán: mariposa, cangrejo, cocodrilo y canguro. Para crear una nueva clase pincha en el botón Añadir nueva clase de imágenes.
Añade a cada clase que acabas de crear, las imágenes que te has bajado como ejemplos. Cada carpeta contiene imágenes del tipo que indica el nombre de la carpeta. También hay una carpeta que se llama tests. No utilices ahora esas imágenes. Son para más adelante.
CANAL DE YOUTUBE
La inteligencia artificial es la simulación de procesos de inteligencia humana por parte de máquinas que permite que dichas máquinas puedan percibir su entorno, comprenderlo, aprender de él y actuar en consecuencia. Existen muchos tipos de inteligencia artificial y se pueden especializar en distintas tareas, por ejemplo, reconocer y entender textos.
Machine Learning For Kids es capaz de crear una IA que reconozca textos pero para que sea funcional tenemos que realizar tres pasos importantes:
• Entrenar la IA: indicar qué queremos que detecte y aportar ejemplos de esas cosas.
• Probar la IA: probar con otros ejemplos y verificar que la IA es capaz de detectar las características que buscamos en ellos.
• Crear juego o aplicación: implementar la IA en un proyecto donde la gente pueda usarla, como, en nuestro caso, un juego de Scratch.