Inteligencia Artificial con Scratch

Sitio: Aula virtual
Curso: Programación 1920
Libro: Inteligencia Artificial con Scratch
Imprimido por: Invitado
Día: martes, 2 de julio de 2024, 18:16

Descripción

Formacion INTEF 2019-20

1. ¿Inteligencia Artificial?

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.

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.

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.

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 todo esto es posible porque podemos recopilar/manejar mucho datos, es el Big Data, los ordenadores son cada día más potentes para trabajar con esa cantidad de datos y también se ha avanzado mucho en los sistemas de programación, las llamadas redes neuronales.

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".

2. Enseñanza de la IA

Las cinco ideas principales que todo el mundo debería conocer acerca de la IA son:

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.

1ª idea fundamental: PERCEPCIÓN. Los ordenadores perciben el mundo utilizando sensores.

Para casa: Clica en la siguiente imagen, luego selecciona el idioma y finalmente pulsa sobre el botón del micrófono de la parte superior derecha. Según vayas hablando, en la capa de texto se mostrará por escrito la frase que el ordenador ha entendido al escucharte hablar.

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. Pero ya se han hecho grandes avances.

2ª idea fundamental: REPRESENTACIÓN Y RAZONAMIENTO. 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. Lo que no quiere decir que piensen igual que las personas.

Un voluntario: 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.

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". Si elegimos las preguntas con cuidado, tratando de que las respuestas nos indiquen inequívocamente a los personajes, tenemos el trabajo prácticamente hecho. Por ejemplo: ¿qué pregunta/s harías para saber si tu compañero está pensando en Bugs Bunny, Pato Lucas o Correcaminos?. Lo primero, si tiene plumas, si las tiene entonces sería el Pato Lucas, y sino las tiene preguntaríamos si es muy rápido.

¿Recordáis el juego "Adivina el Personaje" o "¿Quién es quién?, donde dos jugadores intentaban adivinar qué personaje, de entre una serie de fotos, había escogido el contrincante a base de preguntas?

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

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, y 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.

En el tema anterior jugaste con QuikDraw donde el programa tenía millones de imágenes con las que comparaba tu dibujo según lo ibas haciendo.

Con Sentiment el clasificador intentará decirte si un texto es positivo o negativo. Pon una frase, una url de un tweet, un estado de Facebook, publicación de blogs, ... Se utilizaron 2,8 millones de documentos.

Y GenderAnalizer_V5 intenta clasificar los mensajes en si los ha escrito un hombre o una mujer. Se utilizaron 11.000 artículos de blogs.

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. ¿Cómo traduce Google "teacher", como "profesora" o como "profesor"? 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. No te pierdas este  artículo que presenta ejemplos de escándalos mediáticos de sistemas de IA.

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?"

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

4ª idea fundamental: 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.

Comprender a las personas es uno de los problemas más difíciles a los que se enfrentan los agentes inteligentes, imagínatelo si hasta a nosotros mismos nos cuesta, y si no mira este vídeo (2:12). 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.

Pero 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:

5ª idea fundamental: IMPACTO SOCIAL. 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.

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.