32
Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

Embed Size (px)

Citation preview

Page 1: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

Taller:Inteligencia Computacional

MC. LETICIA FLORES PULIDO

Page 2: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

2

CONTENIDOTEMA1: INTRODUCCIÓN

TEMA2: APRENDIZAJE MÁQUINA

TEMA3: REDES NEURONALES MULTICAPA

TEMA4: PROGRAMACIÓN EVOLUTIVA

Page 3: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

3

TEMA 2 : APRENDIZAJE MÁQUINAPROBLEMAS BIEN CONDICIONADOS

DISEÑO DE SISTEMAS DE APRENDIZAJE

ENTRENAMIENTO

FUNCION DESEADA

REPRESENTACION DE LA FUNCIÓN DESEADA

DISEÑO FINAL

PERSPECTIVAS

Page 4: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

4

IntroducciónEl campo del aprendizaje máquina se refiere a la pregunta

acerca de cómo construir programas de computadora que automáticamente mejoren su experiencia.

En años recientes muchas aplicaciones de aprendizaje máquina se han desarrollado los cuales van desde minería de datos de programas que aprenden a detectar fraudes de transacciones bancarias hasta sistemas que filtran información de sus usuarios para aprender acerca de sus preferencias o perfiles.

Page 5: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

5

IntroducciónOtras de las aplicaciones son las de producir

autos autónomos con aprendizaje constante en el proceso de manejo dentro de las autopistas

Al mismo tiempo, se están dando avances importantes en los algoritmos utilizados bajo este enfoque y para dichas aplicaciones.

El objetivo de este tema es presentar algoritmos clave los cuales forman el corazón del aprendizaje máquina.

Page 6: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

6

IntroducciónEl aprendizaje máquina implica conceptos de

muchos campos, los cuales incluyen: Estadística Inteligencia artificial Filosofía Teoría de la información Biología Ciencia cognitiva, complejidad computacional y

teoría de control

Page 7: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

7

Introducción Imaginemos computadoras que aprenden a

partir de registros médicos cuyos tratamientos son mas

efectivos para nuevas enfermedades Casas que aprenden a partir de la experiencia a

optimizar costos de energía basándose en los patrones de uso particular de sus ocupantes.

En personal de asistencia de software que evolucione de acuerdo a los intereses del cliente

Page 8: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

8

IntroducciónUn entendimiento detallado de algoritmos de

procesamiento de información para aprendizaje máquina, nos puede guiar a un mejor entendimiento de las habilidades de aprendizaje del ser humano

Page 9: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

9

Estado del Arte en Aprendizaje MáquinaProgramas que aprenden a reconocer palabras

habladas (Waibel 1989, Lee 1989), Dragon Naturally Speaking 5 descarga y video de instrucciones

Page 10: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

10

Estado del Arte en Aprendizaje MáquinaPredecir neumonía en pacientes (Cooper et al.

1997)

Page 11: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

11

Estado del Arte en Aprendizaje Máquina

Detectar fraudes de tarjetas de crédito

automóviles autónomos (Pomerleau, 1989)

Page 12: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

12

Estado del Arte en Aprendizaje Máquina Jugar

backgammon a niveles cercanos a profesionales (Tesauro 1992, 1995) Backgammon

Page 13: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

13

Problemas bien definidosEl estudio del aprendizaje máquina consiste en

considerar ciertas tareas.

De inicio consideraremos que el aprendizaje se define de manera mas amplia si consideramos cualquier programa de computadora que mejore su desempeñen alguna tarea a través de la experiencia.

Page 14: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

14

Problemas bien definidosDEFINICION:

Se dice que un programa de computadora aprende por medio de la experiencia E con respecto a alguna clase de tareas T y medida de desempeño P, si su desempeño en las tareas denominadas como T, medidas por P, mejoran por medio de la experiencia E.

Page 15: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

15

Problemas bien definidosEJEMPLO:

Programa que aprende a jugar ajedrez

Tarea: Jugar ajedrez (T)

Desempeño: Ganar la mayoría de partidas, (P)

Experiencia: se obtiene por medio de los juegos que puede jugar contra si mismo

Page 16: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

16

Problemas bien definidosEJEMPLO:

Programa que aprende a reconocer manuscrita

Tarea: reconocer y clasificar palabras manuscritas dentro de imágenes

Desempeño: Porcentaje de palabras correctamente clasificadas

Experiencia: un diccionario de palabras manuscritas con clasificaciones previamente asignadas.

Page 17: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

17

Diseño del Sistema de AprendizajePara ilustrar algunos de los elementos básicos y enfoques en

aprendizaje máquina, consideraremos el ejemplo de un programa que juega ajedrez con el objetivo de entrar a un torneo.

Se adopta entonces el desempeño clásico medición: el porcentaje de juegos a ganar dentro de este torneo.

Debemos entonces: ELEGIR LA EXPERIENCIA DE ENTRENAMIENTO ELEGIR LA FUNCIÓN OBJETIVO Y SU REPRESENTACION ELEGIR UN ALGORITMO DE APROXIMACIÓN PARA LA FUNCION OBJ.

Page 18: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

18

Diseño del Sistema de Aprendizaje

Para tener un diseño del sistema del aprendizaje, debemos elegir:

1. El tipo exacto de conocimiento a ser aprendido

2. Una representación para este tipo de conocimiento

3. Un mecanismo de aprendizaje

Page 19: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

19

Diseño del Sistema de Aprendizaje

Podemos definir la función objetivo como V(b) para cualquier estado b dentro de B, como sigue:

1. IF b es un estado final de ganar THEN es V(b)=100

2. IF b es un estado final de perder THEN es V(b)=-100

3. IF b es un estado intermedio THEN es V(b)=0

Page 20: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

20

Diseño del Sistema de Aprendizaje

Para seleccionar la función objetivo, podemos decir lo siguiente:

1. X1: número de piezas negras sobre el tablero

2. X2: número de piezas blancas sobre el tablero

3. X3: número de coronaciones negras sobre el tablero

4. X4: número de coronaciones blancas sobre el tablero

5. X5: número de piezas blancas amenazadas sobre el tablero

6. X6: número de piezas negras amenazadas sobre el tablero

Page 21: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

21

Diseño del Sistema de Aprendizaje

De este modo nuestro aprendizaje será representado por V(b) por medio de una función lineal que será:

V(b)=w0 + w1x1 + w2x2 + w3x3 + w4x4 + w5x5 + w6x6

Donde w0 a w6 son coeficientes numéricos, o pesos a ser elegidos por el algoritmo de aprendizaje

Page 22: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

22

Diseño del Sistema de AprendizajeDiseño parcial de un programa que aprende a

jugar ajedrez: Tarea T: jugar ajedrez Desempeño P: porcentaje de juegos ganados

dentro del torneo Experiencia E: juegos jugados contra sí mismo Función Deseada V: Tablero R Representación de la función Deseada: V(b)=V(b)=w0 + w1x1 + w2x2 + w3x3 + w4x4 + w5x5 +

w6x6

Page 23: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

23

Elección del algoritmo de aproximaciónRequerimos un conjunto de entrenamiento

Cada uno describe un estado específico dentro del tablero

Cada ejemplo de entrenamiento es un par ordenado de valores

El siguiente ejemplo describe un estado del tablero donde las fichas negras ha gando el juego (observe que x2=0 indica que ya no hay piezas blancas)

Page 24: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

24

Elección del algoritmo de aproximaciónLa función objetivo es entonces +100:

<<x1=3,x2=0,x3=1,x4=4,x5=0,x6=0>,+100>

Ahora hay que describir el procedimiento de entrenamiento a partir de la experiencia indirecta de aprendizaje,

Entonces debemos ajustar los pesos wi al mas adecuado para que coincida con los ejemplos de entrenamiento.

Page 25: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

25

Estimando los valores de entrenamientoLa única información disponible para el

entrenamiento del programa, es saber si el partido se ganó o se perdió

Pero se requiere también de posiciones de tableros que arrojen ciertas puntuaciones

Para estados finales de tablero se pueden asignar valores fácilmente pero para estados en los que el tablero tiene estados intermedios, antes de que el juego termine

Page 26: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

26

Estimando los valores de entrenamientoPodemos entonces asignar una regla de la

siguiente manera:

REGLA PARA ESTIMAR LOS VALORES DE ENTRENAMIENTO:

VTRAIN(b)=V(Siguiente(b))

Page 27: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

27

Ajustando los pesosHay que especificar el algoritmo de aprendizaje para elegir los

pesos wi para adecuarlos lo mejor posible al conjunto de ejemplos de entrenamiento

Debemos entonces definir un enfoque común que se refleja en la mejor hipótesis, o en un conjunto de pesos los cuales minimizan el error cuadrático entre los ejemplos de entrenamiento y los valores calculados por la hipótesis:

E=Σ(TRAINING SAMPLES)(VTRAIN(b)-V(b))2

Page 28: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

28

El diseño finalEl diseño final de nuestro sistema de

aprendizaje de ajedrez se puede describir naturalmente por cuatro módulos distintos de programación que representan los componentes centrales de muchos sistemas de aprendizaje

Estos módulos son: EL SISTEMA DE DESEMPEÑO LA CRÍTICA EL GENERALIZADOR EL GENERADOR EXPERIMENTAL

Page 29: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

29

El Diseño FinalGeneralizador Experimental

Critica

Desempeño del Sistema

Generalizador

Page 30: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

30El Diseño Final

DESEMPEÑO DEL SISTEMA

Éste módulo debe resolver la tarea desempeñada, toma las instancias de los nuevos problemas como entrada y produce una solución (teoría de juegos)

CRÍTICA Toma como entrada el historial de las jugadas que se producen en el

juego

GENERALIZADOR Toma como entrada los ejemplos de entrenamiento y genera como

salida una solución para ganar el juego

GENERADOR EXPERIMENTAL Toma como entrada la hipótesis actual y genera un conjunto de

estados iniciales.

Page 31: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

31

Opciones de Diseño FinalDeterminar el tipo de

experiencia de entrenamiento

Determinar la función objetivo

Determinar la representación de la función aprendida

Determinar la función objetivo

Diseño Completo

Juegoscontra expertos

Juegoscontra si mismo

Tabla de movimientos

correctos

movimientos tablero

Valor del movimiento

polinomial

Funciónlineal

Redes neuronales artificiales

Gradiente descendente Programación

Lineal

Page 32: Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

32

EjercicioProporcione tres aplicaciones de computadora

para las cuales el aprendizaje máquina parece ser apropiado y tres para las cuales no parezca ser apropiado.

Elija aplicaciones diferentes a las mencionadas en estas parte del taller e incluya un párrafo que las justifique