IA y APP INVENTOR

Site: Aula Virtual Moodle-IES Martínez Uribarri
Course: Aula Virtual Moodle-IES Martínez Uribarri
Book: IA y APP INVENTOR
Printed by:
Date: Wednesday, 22 January 2025, 8:12 PM

1. IA en la educación

¿Inteligencia Artificial en la educación?

Siguiente

1 Introducción y justificación

La inteligencia artificial (IA) es la ciencia y la ingeniería dedicadas al desarrollo de sistemas que ejecutan tareas que requerirían inteligencia o razonamiento si las realizara una persona. Es decir, que el término IA suele aplicarse cuando un ordenador o una máquina realiza funciones “cognitivas” que las personas asociamos con la actividad de las mentes humanas, como “percibir”, “razonar”, “aprender” y “resolver problemas”. Así, por ejemplo, cuando un ordenador juega (y normalmente gana) una partida de ajedrez contra un humano, asumimos que el ordenador debe estar ejecutando un sistema de IA.

En los últimos años la IA está teniendo un gran protagonismo en los medios de comunicación. Esto se debe, entre otros factores, a que se considera que la IA es un elemento fundamental de la Cuarta Revolución Industrial que ya estamos viviendo. Tal como la describió Klaus Schwab durante el Foro Económico Mundial de 2016, la Cuarta Revolución Industrial se apoya en avances de la Revolución Digital -caracterizada por la automatización informática y el conocimiento en internet-, pero incorpora la ubicuidad de la tecnología digital tanto en nuestra sociedad como en nuestro cuerpo, de forma que se desintegran las fronteras entre el mundo físico y biológico y el digital.

Nuria Oliver, una de las mayores expertas del mundo en IA, lo explica de forma brillante en el siguiente vídeo:

 


Para saber más
Muchas de las cuestiones que se mencionan en este texto se basan en las ideas que la propia Nuria Oliver presentó durante su discurso de ingreso en la Real Academia de Ingeniería el 11 de diciembre de 2018. El texto del discurso está disponible públicamente en internet, por si te apetece echarle un ojo: http://www.raing.es/es/publicaciones/discursos-de-ingresos/inteligencia-artificial-ficci-n-realidad-y-sue-os


Debido a la forma en que la IA se presenta habitualmente en los medios, esto nos puede sonar a algo futurista, casi como de película de Hollywood. Sin embargo, la realidad es que ya estamos rodeados de sistemas de IA que usamos a diario, por lo que es fundamental que todas las personas entendamos cómo funcionan, para que podamos aprovechar las oportunidades que ofrecen pero también para poder luchar desde la información contra sus riesgos y amenazas.

La buena noticia es que los elementos esenciales de la IA son muy básicos y asequibles para cualquier persona, y que aprender acerca de la IA puede hacerse de un modo práctico y muy divertido, tal como veremos a lo largo del curso.

Y no es que con este curso nos hayamos vuelto locos ni queramos ser muy osados al querer acercar la IA a la escuela, simplemente estamos siguiendo las recomendaciones de múltiples entidades nacionales e internacionales -como UNESCO, la Comisión Europea o el propio Gobierno de España- que insisten en que toda la sociedad debería conocer al menos sus fundamentos y, en consecuencia, que la IA debe trabajarse desde colegios e institutos.


1.1. Preguntas típicas

2 Algunas preguntas típicas sobre la IA

En esta sección tratamos de dar respuesta a las preguntas más típicas que suelen generarse al acercarse por primera vez a la IA. Seguro que alguna se te ha pasado por la cabeza... ¡a nosotros desde luego nos pasó cuando comenzamos! sonrisa


1.2. La IA es algo muy novedoso, ¿no?

2.1 La IA es algo muy novedoso, ¿no?

Lo cierto es que, aunque esto de la IA pueda parecer algo muy moderno, desde la antigüedad las personas han imaginado máquinas dotadas de capacidades humanas. Así, ya alrededor del año 700 a.C. nace el mito de Talos, un autómata de bronce construido por Hefesto que protegía la isla de Creta de los invasores. 


El gigante Talos representado como un joven desnudo y alado, armado con una piedra. Didracma de plata de Festos, Creta (c. 300/280–270 a. C.), anverso. https://es.wikipedia.org/wiki/Talos#/media/Archivo:Didrachm_Phaistos_obverse_CdM.jpg


Y, antes incluso de que se construyeran los primeros ordenadores, las personas han tratado de automatizar tareas intelectuales humanas. Por ejemplo, en 1912 el español Leonardo Torres Quevedo construyó “El ajedrecista”, considerado el primer autómata de la historia capaz de jugar al ajedrez.


Segundo ajedrecista de Leonardo Torres Quevedo at Civil Engineering Faculty museum in Madrid. https://es.wikipedia.org/wiki/El_Ajedrecista#/media/Archivo:Ajedrecista_segundo2.JPG


No obstante, es evidente que la IA despegó realmente con el desarrollo de los ordenadores. De hecho, se considera que el padre de la IA es Alan Turing, al discutir estas ideas en su artículo “Maquinaria computacional e Inteligencia” publicado en 1950. 

Durante esa década se produjeron diferentes avances que sirvieron como fundación de esta rama de la informática. Así, en 1956 John McCarthy propuso la definición de IA que todavía se mantiene vigente: “la IA es la disciplina dentro de la Informática o la Ingeniería que se ocupa del diseño de sistemas inteligentes”, entendiendo, por tanto, que los sistemas inteligentes son capaces de realizar funciones asociadas a la inteligencia humana, como aprender, entender, adaptarse, razonar o interactuar. 

Y durante los siguientes 20 años se desarrollaron gran parte de las teorías y los algoritmos que sirven como base de los sistemas de IA actuales


1.3. 2.2 Y, entonces, ¿por qué se escucha hablar tanto de la IA últimamente?

2.2 Y, entonces, ¿por qué se escucha hablar tanto de la IA últimamente?

La razón es que en los últimos años se han producido hitos realmente llamativos en el mundo de la IA que han captado la atención de los medios, como el desarrollo de vehículos de conducción autónoma o las victorias frente a campeones humanos en diversos escenarios, como el ajedrez, el concurso Jeopardy o el Go (tal como puedes ver en el vídeo "Un AlphaGo invencible", que es realmente interesante).



Estos avances producidos en los últimos años se deben a tres factores fundamentales:

  • Como las personas usamos de forma masiva servicios digitales en internet que almacenan todos los datos de nuestras interacciones, y como se están desarrollando procesos de digitalización del mundo físico, actualmente se dispone de grandes cantidades de datos que permiten entrenar a los sistemas de IA. Estas cantidades de datos inmensas es lo que se conoce popularmente como Big Data, un término que ha aparecido también en los medios frecuentemente en los últimos años.

  • Además, en los últimos años se han producido avances importantes en el entorno tecnológico en el que se ejecutan los sistemas de IA, con procesadores muy potentes y sistemas de almacenamiento de información a gran escala a un coste realmente asequible.

  • Por último, también se han producido avances en los propios algoritmos de IA, como el desarrollo de arquitecturas de redes neuronales profundas.


1.4. 2.3 Pero, aparte de estos hitos mediáticos, ¿ya existen sistemas de IA que usamos en nuestro día a día?

2.3 Pero, aparte de estos hitos mediáticos, ¿ya existen sistemas de IA que usamos en nuestro día a día?

Pues sí, lo cierto es que en nuestra vida diaria ya estamos en contacto con multitud de sistemas de IA. Por ejemplo, este tipo de sistemas de IA son los encargados de los filtros de SPAM de nuestros correos electrónicos; se encargan de recomendarnos música o películas que consideran que pueden gustarnos en plataformas como Spotify, Netflix, Prime Video o HBO; realizan traducciones automáticas de textos a otros idiomas; interaccionan con nosotros en chats online de atención al cliente o en asistentes virtuales como Siri, Cortana, Alexa o Google Home; y revisan las compras realizadas con nuestras tarjetas de crédito para tratar de detectar si nos las han robado y se está cometiendo un fraude, entre otros muchos ejemplos cotidianos.

Pero además, los sistemas de IA se utilizan en múltiples campos para la toma de decisiones, lo que tiene un impacto en la vida de todas las personas. Desde la recomendación de amigos en plataformas como Facebook, a la selección de posibles parejas en aplicaciones de citas, pasando por sistemas de detección de tráfico, toma de decisiones en los mercados financieros y empresas, soluciones del ámbito médico para el diagnóstico de enfermedades, sistemas de vigilancia, así como sistemas de seguridad en fronteras y aeropuertos, por plantear tan solo algunos ejemplos.

Y, sin duda, en los próximos años veremos que cada vez se usarán estos sistemas en más y más ámbitos de nuestro día a día, por lo que necesitamos que la gente que tome las decisiones, en cualquier campo profesional, comprenda cómo puede y cómo deben utilizarse, siendo consciente así mismo de sus posibles problemas y limitaciones.


Para saber más
Al contrario que en Europa, donde son las empresas quienes lideran los avances en la implantación de sistemas de IA, en algunos países asiáticos, especialmente, el gobierno está teniendo un papel muy protagonista en este sentido. Es el caso de China, que está poniendo un marcha un sistema de reconocimiento facial basado en IA que puede resultar, cuando menos, ligeramente inquietante: La inquietante apuesta china por el reconocimiento facial


1.5. 2.4 Cuando leo sobre IA, aparecen términos como machine learning, deep learning, big data… ¿es todo lo mismo?, ¿son sinónimos?

2.4 Cuando leo sobre IA, aparecen términos como machine learning, deep learning, big data… ¿es todo lo mismo?, ¿son sinónimos?

Para contestar esta pregunta vamos a tener que ponernos un pelín teóricos. Pero no nos asustemos porque los conceptos son muy sencillos, de verdad.

Desde que nació el estudio de la IA ha habido dos enfoques enfrentados. Por un lado, hay una escuela de pensamiento que defiende que para que una máquina pueda razonar, las personas que la programan tienen que definir un conjunto de reglas (algoritmos) y principios de lógica que la máquina pueda seguir. A esta escuela se la llama top-down (de arriba a abajo). 

Este enfoque es totalmente equivalente a la forma tradicional en que programamos nuestros proyectos Scratch o App Inventor, por ejemplo. La persona que programa elabora un algoritmo que soluciona un determinado problema e implementa un programa o conjunto de programas para que el ordenador pueda automatizar la tarea.

¿Te das cuenta de lo buena noticia que es esto? ¡Ya dominas una mitad de los enfoques para trabajar la IA!

Sin embargo, otra escuela de pensamiento defiende que, inspirándonos en la biología, las máquinas deberían aprender a partir de la observación y la experiencia, es decir, a partir de datos. A este enfoque se le llama bottom-up (de abajo a arriba).

Si bien durante las primeras décadas del desarrollo de la IA el enfoque top-down tuvo más éxito, el enfoque bottom-up se ha beneficiado recientemente de manera extraordinaria por las grandes cantidades de datos que investigadores y empresas tienen a su disposición. A estas cantidades ingentes de datos se le llama Big Data, como decíamos en una pregunta anterior. 

En consecuencia, los mayores éxitos de la IA y los logros más llamativos de los últimos años se han producido siguiendo este enfoque, en el que los ordenadores “aprenden automáticamente” a partir de datos. Por ello también se conoce a este enfoque como “Aprendizaje automático” o “Machine learning” en inglés. Y dentro de las técnicas que se utilizan en este enfoque, han destacado las que se basan en redes neuronales que tienen muchas capas y, por tanto, son profundas. A estas técnicas se les llama “Deep learning” o “Aprendizaje profundo”.

Para ver en acción cómo funcionan este tipo de sistemas os proponemos que juguéis unas partidas con Quick Draw (Corre, dibuja), que es un juego construido usando aprendizaje automático. En cada partida se pide que dibujes algunos objetos, y el sistema, implementado con una red neuronal, intenta adivinar lo que estás dibujando. El sistema ha sido entrenado con dibujos de diferentes objetos, de forma que cuando tú dibujas algo, el sistema trata de encontrar ejemplos similares para intentar deducir de qué se trata. Por supuesto, no siempre funciona, pero cuanto más juegues con él, más aprenderá. Y lo bueno es que cuando terminas la partida, puedes ver una explicación del razonamiento que ha seguido. Ah, y cuando juegues, no olvides encender bien los altavoces para ir escuchando cada uno de los intentos que realiza.


Aunque todo lo explicado en esta pregunta es un poco teórico y tampoco es fundamental para nuestro curso, creemos que puede ser interesante comprender a qué se refieren estos términos que leerás a menudo en artículos sobre IA. Y de hecho, ahora que sabes qué significan, es probable que leas artículos de prensa o veas reportajes de televisión en los que te dés cuenta que usan incorrectamente estas palabrejas sonrisa.



1.6. 2.5 ¿Es posible que se construya un sistema de IA que domine el mundo y a las personas como en las películas futuristas?

2.5 ¿Es posible que se construya un sistema de IA que domine el mundo y a las personas como en las películas futuristas?

En la actualidad, los sistemas de IA tan solo son capaces de realizar una tarea concreta. Por ejemplo, el sistema de Quick Draw sabe reconocer dibujos, y aunque sea realmente bueno, no es capaz de hacer ninguna otra cosa. Y, de hecho, ni siquiera sabe lo que significan ni para qué se usan los objetos que reconoce en sus dibujos. A este tipo de sistemas de IA se les llama “específicos”, precisamente porque no pueden generalizar sus conocimientos y transferirlos a otros dominios. 

La aspiración de la IA es crear sistemas con IA general, que serían sistemas con una inteligencia como la de las personas, que funciona para múltiples situaciones, se adapta mostrando flexibilidad, es incremental, etc. Pero lo cierto es que no parece que se vaya a llegar a desarrollar este tipo de sistemas en el corto plazo.

Para que un sistema pudiera dominar el mundo y a las personas, que es el tema central de muchas películas y coloquios, necesitaríamos contar con sistemas que mostraran súper-inteligencia, es decir, una inteligencia superior a la humana. Desde luego, estamos muy lejos de que esto pueda ocurrir, aunque es interesante que se discuta sobre las posibles consecuencias que estos sistemas tendrían sobre la sociedad, tal como hace Nick Bostrom -Director del Instituto para el Futuro de la Humanidad de la Universidad de Oxford- en esta charla TED (subtítulos en español disponibles):



1.7. 2.6 Todo esto está genial, pero enseñar IA debe ser muy complicado... ¿No son cosas para ingenieras e ingenieros?

2.6 Todo esto está genial, pero enseñar IA debe ser muy complicado... ¿No son cosas para ingenieras e ingenieros?

En realidad, la mayoría de los conceptos fundamentales de la IA ya los hemos mencionado en esta introducción, y son totalmente accesibles para cualquier estudiante de cualquier nivel educativo. Y en los últimos años, además, se han creado multitud de recursos diseñados específicamente para que los docentes puedan usarlos en sus aulas para explicar diferentes conceptos relacionados con la IA.

No obstante, en relación a la implementación de sistemas que incorporen IA, lo cierto es que esto era algo reservado para estudiantes de últimos cursos de ingeniería informática o de telecomunicaciones. Pero con las nuevas herramientas gráficas que tenemos a nuestra disposición esto ya no es así.

En concreto, los próximos módulos del curso se van a centrar en cómo usar Machine Learning for Kids, una plataforma que utiliza las APIs de IBM Watson Developer Cloud, pero que permite integrar estas funcionalidades en proyectos Scratch o App Inventor usando bloques, lo que ofrece unas posibilidades tremendas para el trabajo en el aula.

Nuestro objetivo es que cualquier docente, desde los últimos cursos de primaria hasta el bachillerato o la FP, pueda crear proyectos con su alumnado en los que integrar sistemas de aprendizaje automático para clasificar texto, números o imágenes.

¡Ya veréis qué fácil y qué divertido!



2. Un marco para la enseñanza de la Inteligencia Artificial

Veamos el tema

2.1. Introducción

1 Introducción

Como es evidente, la idea de acercar la enseñanza de la IA a la educación no universitaria es algo muy novedoso. En consecuencia, hace unos meses se puso en marcha un grupo de trabajo en el que colaboran investigadores del mundo de la IA y docentes de distintos niveles educativos para definir qué debería saber el alumnado sobre IA al terminar cada etapa escolar. Esta iniciativa, que se ha llamado “Artificial Intelligence for K-12” (IA para la educación infantil, primaria y secundaria, AI4K12), está financiada conjuntamente por la Association for the Advancement of Artificial Intelligence (asociación para el avance de la IA, AAAI) y la Computer Science Teacher Association (asociación de docentes de informática, CSTA), y cuenta también con la participación de representantes de la industria, administraciones educativas y entidades sin ánimo de lucro.

Como primer paso para este trabajo, se ha definido un marco para la enseñanza de la IA que se estructura en cinco líneas temáticas. Estas líneas temáticas se corresponden, a su vez, con las cinco ideas principales que todo el mundo debería conocer acerca de la IA, tal como puede verse en la siguiente figura:


1. Percepción
Los ordenadores perciben el mundo utilizando sensores


2. Representación y razonamiento
Los agentes mantienen modelos o representaciones del mundo y las usan para razonar.


3. Aprendizaje
Los ordenadores pueden aprender a partir de datos.


4. Interacción natural
Hacer que los agentes interactúen con los humanos de manera fluida es un desafío enorme para los desarrolladores de IA.


5. Impacto social
La IA puede tener un impacto tanto positivo como negativo sobre la sociedad.


Fuente, AI4K12:  https://github.com/touretzkyds/ai4k12/raw/master/documents/AI4K12_Five_Big_Ideas_Poster.pdf 



En este curso vamos a seguir este marco para organizar las diferentes actividades que nos ayudarán a comprender en profundidad cada una de estas cinco grandes ideas. Las actividades están diseñadas con la intención de que el alumnado comprenda cómo funcionan los sistemas de IA con los que ya convivimos, a que piense de manera crítica sobre el mundo que le rodea, y a que cuestione el modo en que la tecnología puede influir nuestras vidas. El objetivo final es evitar que tengamos una generación que, sin ser consciente, esté siendo convencida, manipulada y dirigida por sistemas de IA (lo que, hasta cierto punto, está sucediendo actualmente en diferentes ámbitos).


Para saber más
El grupo AI4K12 ha publicado un artículo en el que explica con detalle los objetivos de la iniciativa y el estado actual del trabajo desarrollado, y que se ha utilizado como base para la elaboración de los contenidos de esta sección. Puedes leerlo en el siguiente documento (en inglés):

Touretzky, D., Gardner-McCune, C.,Martin, F., Seehorn, D., (2019) Envisioning AI for K-12 – What should every child know about AI?, AI for K-12 Working Group Report



2.2. 2 Percepción

2 Percepción

1ª idea fundamental: Los ordenadores perciben el mundo utilizando sensores

La percepción es el proceso de extraer información a partir de señales sensoriales. La capacidad que tienen los ordenadores para "ver" y "escuchar" lo suficientemente bien como para resultar de utilidad a las personas es uno de los logros más importantes de la IA. Para ello, los ordenadores hacen uso de diferentes tipos de sensores, como micrófonos, cámaras, medidores de distancia, de luminosidad o temperatura, entre otros muchos.

Sin embargo, es importante comprender que, por ejemplo, la percepción de un ordenador del lenguaje hablado o de la imagen visual, requiere contar con un amplio conocimiento del dominio. Así, para entender una frase hablada no solo se deben conocer los sonidos del idioma sino también su vocabulario, gramática y patrones de uso. Y, mientras el ordenador no disponga de tal conocimiento, el reconocimiento de voz realizado por una máquina no puede acercarse a la precisión del nivel humano. Sin embargo, ya se han alcanzado niveles altos de precisión en otros dominios, y todo parece indicar que los sistemas van a mejorar mucho en los próximos años.

Para ilustrar el modo en que las máquinas “ven”, se puede visualizar este vídeo de un coche autónomo, en el que es posible observar en detalle las imágenes captadas por las cámaras del coche en cada momento, y cómo el sistema de IA de reconocimiento de imágenes va detectando e identificando las diferentes señales, coches, peatones, etc. con las que se cruza.

Propuesta: actividad desenchufada

¿Cómo conduce un coche autónomo? 

Con esta actividad se pretende ilustrar cómo los sistemas de IA hacen uso de sensores para captar señales del mundo y tomar decisiones en consecuencia. Para ello, un grupo de tres estudiantes van a simular ser un coche autónomo: uno de ellos será el sistema central de IA que recibe las señales de los sensores y toma decisiones, los otros dos serán sensores, uno la cámara izquierda y otro la cámara derecha.
Para comenzar se tapan los ojos y si es posible, los oídos, del “conductor”, que solamente podrá tomar decisiones en función de las señales que le lleguen de sus dos “sensores”.
A continuación se dibuja una carretera en el suelo con tiza, que comenzará con una recta y tendrá luego curvas a derecha o a izquierda intercaladas con otras rectas.
Tras colocar al “conductor” en la recta inicial, éste comienza a andar. Los dos “sensores” tienen que tratar de guiarlo por el camino, tocando al “conductor” en el hombro de su lado para avisarle de que, si sigue recto, se va a salir de la carretera por el lado correspondiente. De esta manera el “conductor” puede girar para el lado contrario.
 ¿Llegarán sanos y salvos a su destino? sonrisa



Como ejemplo de una máquina que reconoce frases habladas por una persona, puede usarse “Web Speech API Demonstration” (es necesario utilizar el navegador Google Chrome):


Tras seleccionar en la parte inferior de la página el idioma en el que vas a hablar, tan solo hay que pulsar sobre el botón del micrófono de la parte superior derecha, y ya puedes comenzar a hablar. En la caja de texto se mostrará por escrito la frase que el ordenador ha entendido al escucharte hablar.



2.3. 3 Representación y razonamiento

3 Representación y razonamiento

2ª idea fundamental: Los agentes mantienen modelos o representaciones del mundo y las usan para razonar.

Los sistemas de IA pueden definirse como agentes inteligentes que perciben y representan el mundo, deliberan sobre lo percibido y producen salidas que afectan al mundo. En consecuencia, la representación es uno de los problemas fundamentales de la inteligencia, tanto natural como artificial. Para comprender el concepto de representación, por ejemplo, podemos pensar en el modo en que un mapa representa un territorio, o un diagrama representa el estado de una partida de un juego de mesa.

Es importante comprender que los ordenadores construyen representaciones utilizando datos, y estas representaciones pueden manipularse aplicando algoritmos de razonamiento que generan nueva información. No obstante, aunque los agentes de IA pueden razonar sobre problemas muy complejos, la realidad es que no piensan igual que las personas. Y, de hecho, muchos tipos de razonamiento que son totalmente asequibles para los humanos, están todavía lejos del alcance de los sistemas IA actuales.

Para entender qué hablamos cuando nos referimos a la representación y el razonamiento, os proponemos que juguéis unas partidas con Akinator. Se trata de un sistema experto que te pide que pienses en algún persona (real o ficticio); y luego te va haciendo preguntas para intentar adivinarlo. NOTA: en la portada del sitio web Akinator podéis activar el modo infantil.




¿Qué? ¿Ha acertado Akinator los personajes que estabais pensando? ¿Cómo es posible? ¿Cómo funciona este sistema?

En realidad el funcionamiento de este tipo de sistemas expertos es bastante sencillo, ya que se implementan utilizando lo que se conoce como “árboles de decisión”. Para comprender cómo funcionan vamos a trabajar con el siguiente ejemplo: queremos construir un sistema similar a Akinator que sea capaz de adivinar, haciendo preguntas, en cuál de los siguientes personajes estoy pensando: Bugs Bunny, el pato Lucas o el Correcaminos.


Bugs Bunny

Pato Lucas

Correcaminos


Si elegimos las preguntas con cuidado, tratando de que las respuestas nos indiquen inequívocamente a los personajes, tenemos el trabajo prácticamente hecho. Así, por ejemplo, si el sistema pregunta “¿el personaje tiene plumas?”, si la respuesta es negativa entonces solamente puedo estar pensando en Bugs Bunny, puesto que tanto el Pato Lucas como el Correcaminos tienen plumas. Un posible árbol de decisión para este juego sería el siguiente (aunque existen otras muchas opciones posibles para construirlo):


Sencillo, ¿verdad? Pues así es como funciona exactamente Akinator, aunque claro, este maneja un árbol muchísimo mayor tras las millones de partidas jugadas, puesto que, además, Akinator se ha diseñado de forma que aprende con cada nuevo personaje que un jugador escoge.


Propuesta: actividad desenchufada

Creación de un árbol de decisión para clasificar personajes 

Esta es una actividad muy interesante que puede desarrollarse de manera fácil con el alumnado. Así, cuando la llevéis al aula, podríais proponer a vuestros estudiantes crear un árbol de decisión que pueda adivinar en qué personaje está pensando una persona. Para ello se pueden seguir los siguientes pasos:

  1. El docente selecciona un conjunto limitado de 10 ó 15 personajes. En nuestro ejemplo eran personajes de Looney Tunes, pero vosotros podéis jugar con lo que prefiráis.
  2. Se forman grupos de estudiantes, por ejemplo de 4 personas. Cada grupo va a crear su propio árbol de decisión.
  3. Para cada personaje, cada grupo busca una propiedad que le distingue de los demás, de forma que se irán creando las ramas de sus árboles de decisión.
  4. Cuando un grupo ha terminado su árbol, otros estudiantes de otro grupo lo prueban, para comprobar que es capaz de adivinar en qué personaje están pensando.


Además de con papel y lápiz, esta actividad puede ser más atractiva si se usan otros materiales como pajitas, vasos, cartulinas o plastilina, tal como puedes ver en las siguientes imágenes tomadas de un curso para docentes realizado en el verano de 2019 por el propio INTEF:


 



Y, por cierto, practicando con la creación de este tipo de árboles de decisión para clasificar personajes, objetos o animales, por ejemplo, te volverás un verdadero experto al que no habrá quien gane al famoso juego "¿Quién es quién?sonrisa



2.4. 4 Aprendizaje (I)

4 Aprendizaje (I)

3ª idea fundamental: Los ordenadores pueden aprender a partir de datos.

Los algoritmos de aprendizaje automático permiten a las computadoras crear sus propias representaciones utilizando datos de entrenamiento. 

Muchas áreas de la IA han progresado significativamente en los últimos años gracias a la tecnología de aprendizaje automático, pero para que el enfoque tenga éxito se necesitan enormes cantidades de datos. Por ejemplo, el Open Image Dataset V4, que se utiliza para entrenar muchos sistemas de reconocimiento de imágenes, contiene 9 millones de imágenes de entrenamiento y 30 millones de etiquetas o categorías clasificables. Para poder procesar esta cantidad tan grande de datos se requiere contar con una potencia informática que no estaba disponible hace unos años. Y este es uno de los problemas que tienen los sistemas de aprendizaje automático, ya que para producir resultados precisos suelen requerir ser entrenados con muchos ejemplos. Y la recolección y preparación de estos ejemplos de entrenamiento suele ser muy costosa.

Juguemos un poco con algunos sistemas de IA que se basan en aprendizaje automático para que veamos de lo que son capaces. Además de Quickdraw, que ya conocemos, os proponemos que juguéis con los siguientes clasificadores que han sido entrenados usando aprendizaje automático:

  • Sentimientoshttps://www.uclassify.com/browse/uclassify/sentiment/es
    Este clasificador determina si un texto es positivo o negativo. Puede clasificar tanto frases cortas o párrafos más largos que escribas tú mismo, o bien le puedes pasar la url de Tweets, estados de Facebook, publicaciones de blog, reseñas de productos, etc. para que las clasifique y nos diga si es un texto positivo o negativo. Para entrenar el sistema se han usado 2,8 millones de documentos.

  • Génerohttps://www.uclassify.com/browse/uclassify/genderanalyzer_v5/es
    Este clasificador intenta averiguar si un texto ha sido escrito por un hombre o una mujer. En su entrenamiento se han usado 11.000 artículos de blogs (5.500 blogs escritos por mujeres y 5.500 por hombres). Si se usan textos largos ofrece mejores resultados.

Como el aprendizaje automático se basa precisamente en aprender a partir de ejemplos, es muy importante que durante la recopilación y preparación de los datos de entrenamiento se tomen medidas para tratar de evitar al máximo la introducción de sesgos, puesto que en caso de que se introduzcan el sistema va a reproducir estos sesgos.

Para entender cómo funcionan los sesgos de los sistemas de IA podemos jugar con un sistema de traducción automática como el de Google (https://translate.google.com/). Probemos por ejemplo a traducir la frase “the teacher is great” de inglés a español. 

¿Cómo traduce Google “teacher”, como “profesora” o como “profesor”? ¿Por qué lo traduce por “profesor” y no por “profesora” cuando en España el número de profesoras es mayor que el de profesores en todos los niveles educativos? ¿Acaso es que el traductor de Google es machista? 

Evidentemente el sistema de IA no ha sido construido a propósito para ser machista, pero debe haber sido entrenado con textos, quizás antiguos, en los que aparecían más profesores que profesoras, y por eso lo traduce de este modo. 

Este tipo de cuestiones de sesgos que pueden aparecer en los datos de entrenamiento son muy importantes, como discutiremos en la sección de Impacto de la IA. Y si no, que se lo pregunten a Microsoft y a su chatbot Tay que, tras unas horas en funcionamiento y aprendiendo a través de conversaciones con usuarios en Twitter, comenzó a hacer comentarios xenófobos y bárbaros, de manera que tuvo que ser desconectado. Y si la historia de Tay te ha llamado la atención, no te pierdas este artículo otro artículo que presenta más ejemplos de escándalos mediáticos de sistemas de IA

Para saber más
El tema de los sesgos en los sistemas de IA es muy interesante y complejo. Si te interesa profundizar en la cuestión, este artículo de Ricardo Baeza-Yates y Karma Peiró titulado "¿Es posible acabar con los sesgos de los algoritmos?" es realmente recomendable. Aquí te dejamos un extracto para ver si te pica la curiosidad... sonrisa "Los sistemas automatizados tienen sesgos que pueden convertir nuestra cotidianidad en una burbuja de felicidad, mostrándonos sólo lo que nos gusta. Si no hacemos algo para cambiar esta situación, quizás un día descubriremos que —como el protagonista del Show de Truman— no sabremos distinguir la realidad de la ficción. ¿Estamos todavía a tiempo de cambiar nuestra sociedad?"

2.5. 5 Aprendizaje (II)

5 Aprendizaje (II)

Pero, ¿cómo funciona realmente el aprendizaje automático? ¿A qué nos referimos con que el ordenador aprende a partir de datos?

Imaginemos que queremos entrenar a un sistema de IA para que clasifique imágenes y nos diga si son fotos de gatos o se trata de otro tipo de fotos. Lo que tendríamos que hacer como primer paso sería preparar un conjunto de entrenamiento de imágenes con dos grupos: fotos con gatos, por un lado, y otro tipo de fotos por otro. El sistema visualizará ambos conjuntos, identificará patrones de cada uno de los grupos, y generará un modelo que se puede utilizar para tratar de clasificar nuevas fotos que no se encontraran en el conjunto de entrenamiento, indicando si cada nueva imagen corresponde a una foto de un gato o no.

Para entenderlo completamente vamos a utilizar la web “Teachable machine”, que permite que generemos nuestros propios modelos aprendiendo con fotos tomadas de nuestra webcam sin tener que programar ni nada. ¡Verás qué interesante y divertido!

https://teachablemachine.withgoogle.com/v1/


Anterior

2.6. 6 Interacción natural

6 Interacción natural

4ª idea fundamental: Hacer que los agentes interactúen con los humanos de manera fluida es un desafío enorme para los desarrolladores de IA.

Comprender a las personas es uno de los problemas más difíciles a los que se enfrentan los agentes inteligentes. Esto incluye tareas como conversar en lenguaje natural, reconocer estados emocionales e inferir intenciones del comportamiento observado. Es importante comprender que, si bien las computadoras pueden entender el lenguaje natural en un grado limitado, en la actualidad carecen del razonamiento general y las capacidades de conversación de incluso un niño pequeño.

La interacción con los humanos es especialmente importante para los agentes robóticos que compartirán nuestros espacios de vida y trabajo. Así, es posible que deseemos que un robot asistente en el hogar se mantenga cerca de nosotros para que esté siempre listo para ayudar, pero está claro que no debería estar tan cerca de nosotros como para que se cruce en nuestro camino y nos choquemos constantemente cuando vamos a coger algo de la cocina, por ejemplo. En este caso, sería fundamental que el robot pudiera inferir las intenciones futuras de una persona al observar sus acciones, algo que es un desafío muy grande incluso para los humanos.


Propuesta: actividad desenchufada

El mimo "escacharrao" 

Para entender por qué es muy difícil este tipo de interacciones os proponemos una actividad desenchufada en la que, utilizando solamente gestos, un estudiante trate de comunicar a un compañero algo que quiera hacer esta tarde o este fin de semana. El resto de la clase no puede ver los gestos, claro. A continuación, este estudiante se lo comunica, de nuevo usando solamente gestos, al siguiente. Y así se continúa hasta que llegamos al último estudiante, momento en el que podemos comprobar las diferencias entre el mensaje transmitido por el estudiante original y lo comprendido por el último estudiante. Algo, como lo que podéis ver en este vídeo publicado en Twitter.


No obstante, por complicado que sea, para que aceptemos interactuar con robots en nuestra vida diaria será fundamental que los sistemas de IA puedan adquirir este tipo de habilidades. Así que este reto es uno de los que más está centrando el trabajo de los investigadores en IA. Y, de hecho, se están produciendo avances en dominios concretos y limitados: veámoslo con este vídeo en el que un sistema de IA, llamado Google Duplex, es capaz de hacer una llamada telefónica para pedir cita en una peluquería, interactuando de manera natural con la persona que atiende la llamada: 


2.7. 7 Impacto social

7 Impacto social

5ª idea fundamental: La IA puede tener un impacto tanto positivo como negativo sobre la sociedad.

La IA tiene un gran potencial para hacer cosas muy buenas para las personas. De hecho, ya existen iniciativas, como las lideradas por Naciones Unidas, en las que a través del análisis de datos agregados y anonimizados de la red de telefonía móvil se resuelven problemas en las áreas de la salud pública, sostenibilidad del planeta y asistencia en desastres naturales

En este misma línea, con un proyecto liderado desde España, trabaja la iniciativa LUCA de Telefónica llamada “big data al servicio de la sociedad”. Ya han implementado con éxito proyectos con los que ayudar en la respuesta ante desastres naturales, como la inundación de Mocoa (abril 2017); mejorar la educación digital en países en desarrollo en América Latina, África Subsahariana y Asia; predecir emisiones NO2 en el aire en ciudades como Madrid o Sao Paulo; o predecir la difusión de enfermedades como Dengue y Zika en Colombia y Brasil.

Además, los sistemas de IA van a sustituir a los humanos en la realización de trabajos peligrosos y nocivos para la salud, como la recolección de minerales en minas. Pero, claro, esta implantación de los sistemas de IA en el ámbito laboral también tiene sus riesgos. Así lo ilustran de manera muy visual y pedagógica los siguientes vídeos de la Fundación COTEC titulados “Mi empleo, mi futuro”, en los que se discute que la automatización de muchos trabajos puede conducir a un desempleo masivo o a un cambio importante en los puestos de trabajos, lo que tiene un impacto muy profundo para la sociedad:




Por otro lado, hay que tener en cuenta que si bien las tecnologías que permiten que los agentes inteligentes comprendan mejor a los humanos podrían brindarnos, por ejemplo, ayudantes de salud en el hogar para personas mayores, también podrían permitir la vigilancia masiva de empresas y gobiernos eliminando totalmente la privacidad de las personas. 

Además, es importante que, como sociedad, exijamos que los sistemas de IA que toman decisiones que afectan a nuestras vidas sean transparentes, es decir, que proporcionen justificaciones para sus conclusiones para que su razonamiento pueda verificarse e identificar situaciones incorrectas. Porque, ¿qué pasaría si usamos un sistema de IA que no justifica sus decisiones? ¿Qué ocurre, por ejemplo, si solicito un préstamo y el sistema lo deniega pero no explica los motivos de la denegación? ¿Cómo sabemos, por ejemplo, que no me está discriminando por mi raza, cuando eso está prohibido por la Constitución española?

En otro campo completamente diferente, uno de los mayores impactos que consideramos que va a tener la IA se debe a que, como ya existen sistemas capaces de generar contenido sintético (fotos, texto, audio y vídeos) indistinguible del contenido real, se va a producir una transformación inmensa de la comunicación y la difusión de información

Como ejemplo para ilustrar esta situación tomemos este vídeo en el que se ve al expresidente de Estados Unidos de América, Obama, insultando al actual presidente, Trump. 


(En realidad se trata de un vídeo elaborado con el objetivo de concienciar del peligro de las aplicaciones que intercambian caras y voces de forma realista, en el que consiguen crear una imagen real de Obama que parece decir las palabras que en realidad está pronunciando un actor).

El impacto potencial de estos sistemas de IA sobre la opinión pública no tiene precedentes en la historia probablemente, por lo que la sociedad debe conocer su existencia para no dejarse manipular. Desde luego, se trata de un reto inmenso que debemos abordar desde la escuela.

Por último, no hay que olvidarse del impacto medioambiental de los sistemas de IA, que ya hemos discutido que requieren contar con cantidades inmensas de datos que es necesario almacenar, transmitir y procesar, lo que requiere de un gran consumo energético. De hecho, hay estimaciones que indican que para 2025 el sector de la informática y las comunicaciones podría consumir el 20% de toda la electricidad del planeta y emitir hasta un 5,5% de las emisiones de CO2. 

Por tanto, ¿la IA va a ser positiva o negativa para nuestra sociedad? Probablemente todo dependerá de que la ciudadanía luche para que la integración de la IA en nuestras vidas se centre en los aspectos positivos y limite al máximo posible su impacto negativo. Pero para ello, la ciudadanía debe estar bien informada, lo que pasa por que este tipo de cuestiones se traten y debatan desde la escuela.



3. Desarrollo de una app que detecta si una frase tiene connotaciones positivas o negativas con App inventor y ML4K

Desarrollo de una app que detecta si una frase tiene connotaciones positivas o negativas con App inventor y ML4K

¡Por fin llegó el momento de empezar a practicar!

En este apartado aprenderemos cómo crear un proyecto de App Inventor que haga uso de la Inteligencia Artificial. En concreto se mostrará como crear una app que será capaz de detectar si una frase provoca sentimientos positivos, o si por el contrario produce sentimientos negativos.

Para ello haremos uso de un recurso llamado Machine Learning for Kids, una estupenda herramienta que nos permite desarrollar un modelo de Inteligencia Artificial e integrarlo en cualquier proyector de App Inventor.

Para poder realizar este ejemplo vas a necesitar descargarte estos recursos.

Con la ayuda de los siguientes vídeos podrás ir avanzando paso a paso hasta conseguir crear tu primer proyecto App Inventor con IA:


1. Diseñamos la interfaz de usuario


2. Programamos la primera versión de la app


3. Probamos la primera versión de la app y vemos sus limitaciones


4. Programamos una segunda versión de la app usando listas


5. Probamos la segunda versión de la app y vemos sus limitaciones


6. Hacemos uso de la herramienta Machine Learning for Kids


7. Generamos el modelo de aprendizaje automático


8. Probamos el modelo de aprendizaje automático


9. Vemos ejemplos de datos sesgados para aprender a evitar introducirlos


10. Integramos el modelo de aprendizaje automático en nuestro proyecto App Inventor


11. Programamos una versión de la app que haga uso del modelo de aprendizaje automático


12. Probamos la versión final de nuestra app


Última modificación: miércoles, 30 de octubre de 2019, 09:53

4. Creación de una cuenta en ML4K: presentación de la tarea

Creación de una cuenta en ML4K: presentación de la tarea

Nota: Esta tarea se ha puesto como voluntaria.

La creación de una cuenta de profesor para ML4K es algo muy sencillo como veremos en el video 1. Sin embargo, para que la aplicación funcione correctamente necesita utilizar un servicio de inteligencia artificial de IBM. El acceso a dicho servicio se hace mediante el uso de una clave que previamente, debemos poseer. Por eso, para que la cuenta de ML4K este operativa completamente se requiere abrir también una cuenta en unos servicios de IBM denominados IBM cloud.

La creación de esta nueva cuenta tampoco es algo complicado. Pero una vez que entramos en la aplicación de administración de IBM cloud la cosa se pone fea, ya que existen más de 200 servicios que podemos elegir. En el video 2 te indicamos paso a paso cual es el servicio concreto que debes seleccionar y como obtener la clave de este servicio que necesitas para configurar correctamente la aplicación ML4K.

No olvides que puedes usar ML4K y seguir este curso perfectamente sin necesidad de crear una cuenta de profesor. Sin embargo, si optas por usar ML4K sin registrarte debes saber que tienes que usar siempre el mismo navegador con la precaución de no borrar su historial  si no quieres perder los datos de tus proyectos. Con una cuenta de profesor podrás usar la aplicación desde cualquier ordenador hayas borrado o no el historial. Además puede crear cuentas de estudiante para tus alumnos, compartir proyectos con ellos y examinar su trabajo.

Cómo crear una cuenta en ML4K


Cómo crear una cuenta en IBM Cloud y obtener la clave API


Lo que tienes que hacer

Sigue los videotutoriales anteriores y crea tu propia cuenta de profesor para ML4K. Cuando hayas finalizado, tendrás que hacer entrega  en una nueva entrada del blog del curso con la marca Tarea 2.1 de dos pantallazos:

  • uno de la pestaña  "Profesor" de la aplicación ML4K que muestre la sección "API Keys" en gris, es decir, que muestre que está correctamente configurada,
  • otro de la cuenta de IBM cloud que muestre tu nombre de usuario.

No olvides adjuntar la url de la entrada del blog en la tarea. Si no sabes como hacerlo repasa los videotutoriales sobre el uso del blog  que se encuentran al principio del curso.

A continuación te mostramos dos imágenes como las que tu tienes que enviar:

Ejemplo imagen de la cuenta para ML4K
Cuenta IBM cloud
Ejemplo image de la cuenta IBM cloud

5. Más proyectos de IA con App Inventor

Veamos otros ejemplos

5.1. Asesor de vacaciones (clasificación de texto)

Asesor de vacaciones (clasificación de texto)

En este proyecto vamos a crear una app haciendo uso de Machine Learning for Kids (ML4K) y App Inventor que sea capaz de recomendar un destino de vacaciones en función de las actividades que el usuario quiera llevar a cabo y que expresará mediante un texto.

¡Vamos allá!

1. Creamos la interfaz de usuario



2. Creamos el modelo de aprendizaje automático



3. Integramos el modelo de aprendizaje automático en nuestro proyecto App Inventor



4. Programamos la primera versión de nuestra aplicación



5. Probamos nuestra aplicación



6. Añadimos imagen y mapa del destino recomendado



7. Probamos la versión final



5.2. Identificador de hojas de plantas (clasificación de imágenes)

Aquí presentamos cómo desarrollar una aplicación con App Inventor que permita al usuario tomar una foto de una hoja, y haciendo uso de inteligencia artificial sea capaz de identificar a qué planta pertenece. Este ejemplo identifica hojas de cuatro plantas (olivo, naranjo, hiedra y rosal), pero se podría hacer con cualquier número de plantas, sean cuáles sean estas. La explicación está dividida en dos documentos:

1. Creación del modelo de aprendizaje automático en ML4K

2. Creación de la aplicación móvil en App Inventor


5.3. Asesor de lectura (clasificación de números)

Asesor de lectura (clasificación de números)

Aquí se muestra un ejemplo de proyecto consistente en una aplicación móvil, que con ayuda de ML4K, y a partir de los datos de un libro que introduzca el usuario, como son el número total de páginas, el número de páginas con alguna ilustración y el número de líneas por página, es capaz de determinar para niños de qué edades es recomendado dicho libro.

¡Vamos a verlo!


1. Creamos el modelo de aprendizaje automático



2. Integramos el modelo de aprendizaje automático en un proyecto de App Inventor



3. Creamos la interfaz gráfica de la aplicación



4. Programamos la aplicación


5. Probamos la aplicación


6. Añadimos la posibilidad de suministrar datos de ejemplo y re-entrenar el modelo desde la aplicación

Para ello usaremos los siguientes bloques:

Los posibles valores de statusCode y message son los siguientes:

  • statusCode: 2 - message: "Ready": Significa que el modelo ha acabado de ser entrenado y puede usarse
  • statusCode: 1 - message: "Training in progress": El entrenamiento no ha acabado y el modelo no puede usarse
  • statusCode: 0 : Algo ha ido mal, en "message" se aporta más información sobre el problema




7. Probamos la versión final de la aplicación



Última modificación: miércoles, 30 de octubre de 2019, 10:08