Вы находитесь на странице: 1из 21

INTELIGENCIA ARTIFICIAL

Artificial Intelligence

Ing. Iván García S., PhD


idgarcia@utn.edu.ec

Octubre 2018 - Febrero 2019


1
Contenido general
• Unidad 1. Introducción a la IA
• Unidad 2. Estrategias de búsquedas
• Unidad 3. Visión por computador
• Unidad 4. Aprendizaje automático
• Unidad 4.1. Minería de datos
• Unidad 5. Proyecto final

2
UNIDAD 1
Introducción a la Inteligencia Artificial

3
Inteligencia Artificial

• Es un campo (muy amplio) de las Ciencias de la Computación que trata de construir


máquinas autónomas que sean capaces de llevar a cabo tareas complejas sin
intervención humana.
• Este objetivo requiere que las máquinas sean capaces de percibir (del entorno) y razonar
(sentido común).
• Ha dejado de ser una promesa de la ciencia ficción para pasar a ser una colección de
herramientas para resolver problemas a varios niveles: automatizando procesos que
antes requerían intervención humana (detección de fraude bancario, estimación de
riesgos, traducción de textos, diagnóstico médico, conducción autónoma) o haciendo
posibles procesos antes inconcebibles (identificación de patrones de consumo,
predicción de crímenes).
• Es un conjunto de técnicas, algoritmos y herramientas que nos permiten resolver
problemas para los que, a priori, es necesario cierto grado de inteligencia, en el sentido
de que son problemas que suponen un desafío incluso para el cerebro humano.

4
OBJETIVOS DEL CURSO

1. Entender el papel de la Inteligencia Artificial en el mundo actual


2. Comprender los fundamentos teóricos que sustentan las aplicaciones más
innovadoras de Inteligencia Artificial (conducción autónoma, visión artificial, lenguaje
natural, big data)
3. Familiarizarse con el uso de las librerías y herramientas más comunes en la industria
(Matlab, OpenCV, Octave, Python) para la resolución de problemas utilizando IA.
4. Dominar ciertas técnicas en aprendizaje automático (machine learning)
5. Desarrollar sistemas que exhiban un comportamiento inteligente (Intelligent Systems).

Tiene un enfoque eminentemente práctico para poder aplicar los conocimientos teóricos
adquiridos en problemas reales concretos.

5
REQUISITOS DE ACCESO AL CURSO
• Conocimientos en programación (POO: java, C#, C++, Python, Matlab)
• Matemáticas aplicadas:
• Algebra lineal
• Cálculo diferencial (derivadas parciales) (¿pensaste que nunca ibas a utilizar?)
• Probabilidad y estadística
• Se tratará de dejar las matemáticas reducidas a la mínima expresión.
Sin embargo, en una materia como esta no siempre es posible (ni
conveniente) eliminarlas completamente.
• Inglés (lectura)

6
Videos de ejemplo
(busque en YouTube)

• Robot cup
• Tenis de mesa
• Conducción automática
• Cubo rubik
• Juego de ajedrez

7
Tarea:
Vea la película “CHAPPIE” (2015) y conteste las
siguientes preguntas:
• Considerando los conocimientos actuales de la
IA, ¿Cree usted que Chappie es un robot real o
ciencia ficción?
• ¿Qué características son reales?
• ¿Qué características son ficticias?
• ¿Qué ventajas e inconvenientes tendría para la
humanidad un robot como Chappie?
• ¿Se puede transferir la conciencia? Justifique.

8
Áreas de la IA
• Resolución de problemas mediante búsqueda
• Búsqueda No informada: Profundidad, Amplitud
• Búsqueda Informada: A* (función heurística)
• Algoritmos Metaheurísticos: Algoritmos genéticos
• Representación y manipulación del conocimiento
• Razonamiento:
• Sistemas Expertos
• Lógica difusa
• Percepción:
• Procesamiento del Lenguaje natural
• Análisis de imágenes (visión artificial)
• Aprendizaje automático: supervisado (inducción), no supervisado, por refuerzo
(ensayo-error) → algoritmos utilizados en minería de datos
• Robótica
9
Áreas de la IA (2)
• Búsqueda no informada.- el problema que queremos resolver no nos ofrece ninguna información
adicional que nos ayude a encontrar una solución de forma más rápida, más allá de la que
proporciona el propio enunciado. También conocidas como búsquedas a ciegas.
• Búsquedas informada.- Algunos resuelven problemas a través de búsquedas heurísticas (grafos,
árboles, listas, pilas, matrices, etc.) introduciendo un elemento diferenciador (heurístico) que
aporta conocimiento al problema planteado, ayudando a la resolución eficiente del mismo. Por
ejemplo: en juegos, camino más corto en rutas, etc.
• Algoritmos Metaheurísticos.- Son metaheurísticas (métodos heurísticos genéricos para
problemas que no disponen de un algoritmo propio que los resuelva) parametrizables que nos
permiten atacar un gran espectro de problemas diferentes. Estos métodos tratan de diversificar la
exploración en el espacio de estados para evitar caer o escapar de los óptimos locales (como
solución) y converger hacia el óptimo global. Dentro de este grupo están los algoritmos genéticos
(AG) o evolutivos, los cuales se inspiran en las teorías evolutivas de Darwin sobre selección
natural. Parten de una población de individuos (soluciones) y va generando descendencia
basándose en las características de los mejores individuos. Con el tiempo la población tiende a
converger hacia la solución global del problema. Estos algoritmos inspirados en la evolución (el
azar en la variación, junto con la ley de la selección) pueden aplicarse en problemas de búsqueda,
optimización de funciones y aprendizaje automático. 10
Áreas de la IA (3)
• Representación del conocimiento.- Esta rama investiga las técnicas de almacenamiento de información de
forma que sea fácilmente accesible y, sobre todo, utilizable por los sistemas inteligentes. De esta manera, los
sistemas puedan tener capacidad de razonamiento y aprendizaje.

• Sistemas expertos.- intentan conseguir que las máquinas razonen utilizando la lógica Booleana. Tratan de
llegar a conclusiones lógicas a partir de una serie de hechos o premisas introducidas a priori en el sistema.
Por ejemplo: si esta lloviendo, el suelo estará mojado y en consecuencia es muy probable que esté
resbaladizo. Otro ejemplo es un sistema de diagnóstico médico.
Actualmente, se utilizan otras técnicas más versátiles como las redes probabilísticas, que permiten hacer
predicciones y llegar a conclusiones incluso cuando hay cierto nivel de incertidumbre (información
incompleta) en las premisas.

• Lógica difusa.- No solo trabajan con estados binarios [0, 1] (está o no presente, se cumple o no la regla),
como en los sistemas expertos, sino que indican un grado de pertenencia a un determinado conjunto (por
ejemplo: 0.2; 0.5; 0.9) -> bajo, medio, alto.

11
Áreas de la IA (4)
• Procesamiento del lenguaje natural.- se ocupa de las capacidades de comunicación de los
ordenadores con los humanos utilizando su propio lenguaje (castellano, inglés, etc.). Ha tenido un
continuo auge gracias al avance de los dispositivos que incorporan sistemas automáticos con
diferentes propósitos. Robots y sistemas inteligentes, telefonía móvil, traductores e intérpretes
automáticos o el más reciente paradigma conocido como internet de las cosas (IoT).

• Visión artificial.- busca que los sistemas inteligentes sean capaces de interpretar (percibir y
analizar) el entorno que les rodea a partir de imágenes, facilitándole a la vez tomar decisiones
que más le convenga.

• Aprendizaje.- se ocupa de que una máquina sea capaz de aprender nuevas cosas, de decir, hacer
generalizaciones a partir de ejemplos sacados del entorno. Algunas técnicas (clasificadores) son:
Bayes, k-vecinos más cercanos, árboles de decisión, máquinas de vectores soporte (SVM), redes
neuronales artificiales

• Robótica.- la capacidad de manipular objetos (actuación) y ejercer una influencia en el entorno.

12
Ejemplos de usos de la IA
• El buscador de Google es capaz de ir aprendiendo de los clics de los usuarios para mejorar los
resultados de las búsquedas.
• El traductor de Google que utiliza la gran cantidad de información para ofrecer un traductor muy
potente que también aprende.
• Lucha contra el spam o correo basura (clasificadores bayesianos y otras técnicas probabilísticas).
• Reconocimiento facial o del habla en Smartphone.
• Coches autónomos (Google)
• Aviones no tripulados y robots para desactivar minas.
• Juegos como ajedrez, damas chinas, puzle, PacMan, etc.
• Sistemas de planificación para organizar los repartos de mercancía (Amazon, transporte) o
planificar los procesos industriales.
• Detección de patrones delictivos (minería de datos)
• Detección de patrones en imágenes médicas (medicina)

13
Taller
¿Qué aplicaciones de su Smartphone utiliza técnicas de IA?
¿En qué área de la IA está inmersa dicha aplicación?

14
Librerías de IA:

OpenCV (C/C++)
Python
Java
.Net (Azure Cognitive Services)

15
Librerías de IA:

Cognitive Services
https://azure.microsoft.com/es-es/services/cognitive-services/

• Colección de APIs de algoritmos de inteligencia artificial para la visión,


la voz, el lenguaje, conocimiento y búsqueda.

16
Demos:
1. Aerial Image Classification
https://docs.microsoft.com/en-us/azure/machine-learning/desktop-workbench/scenario-aerial-image-classification

2. Sentiment Analysis using Deep Learning with Azure Machine Learning


https://docs.microsoft.com/en-us/azure/machine-learning/desktop-workbench/scenario-sentiment-analysis-deep-learning

Tarea:
• Integre las APIs de Inteligencia Artificial en una aplicación sencilla (demo). Utilice
cualquier lenguaje de programación.
• Demostración en grupos de hasta 4 estudiantes: 10 min/grupo + 5 min de
preguntas

17
Agente inteligente
• Un agente es un dispositivo que responde a estímulos procedentes de su
entorno, por ejemplo un robot, vehículo autónomo, personaje de un
videojuego o un proceso que se comunica con otro.
• Disponen de sensores (micrófono, cámara, sensor de proximidad,
dispositivos de muestreo de aire y suelo, etc.) que les permiten recibir
datos de su entorno; además tienen actuadores (piernas, alas, pinzas,
sintetizadores de voz, etc.) con los que pueden ejercer una influencia sobre
ese entorno.
• Investigación en IA: Construcción de agentes que se comporten de manera
inteligente, es decir, las acciones de los actuadores del agente deben
construir respuestas racionales a los datos recibidos a través de sus
sensores.

18
Agente inteligente (2)
• Para producir respuestas racionales a los estímulos, un agente debe
“comprender” los estímulos recibidos a través de sus sensores, es
decir, el agente tiene que ser capaz de extraer información de los
datos que sus sensores generan, en otras palabras, el agente debe ser
capaz de percibir.
• Como ejemplos podemos citar los intentos de comprender el lenguaje
natural y el análisis de las imágenes → áreas de investigación de gran
importancia

19
Agente inteligente (3)
Ejemplo de agente:
• Diseño de un agente para resolver el puzle de los 8
cuadrados.
• El agente adoptará la forma de una caja equipada con
una pinza, una cámara de video y un dedo con un
extremo recubierto de goma.

Esta máquina exhibe 2 de los atributos de los agentes:


• Debe ser capaz de percibir para extraer el estado
actual del puzle de la imagen recibida a través de la
cámara.
• Debe desarrollar e implementar un plan (búsqueda)
para conseguir el objetivo.
20
Retos y tendencias de la IA
• Sistemas multiagente, es decir, grupo de agentes que pueden tener
capacidades diferentes y que trabajan de forma conjunta colaborando
entre ellos para resolver un problema. Por ejemplo: flota de robots
para la agricultura de precisión (Proyecto RHEA, 2014), equipo de
robots para futbol (Robot Cup).
• Sistemas inteligentes (Intelligent systems) que trabajen con
información incompleta (incertidumbre) y poco tiempo para
procesarla (tiempo real).
• Mejorar o crear nuevos algoritmos capaces de ampliar las fronteras
de la IA → doctorado (Ph.D)

21

Вам также может понравиться