Taller: Inteligencia Computacional MC. LETICIA FLORES PULIDO

Preview:

Citation preview

Taller:Inteligencia Computacional

MC. LETICIA FLORES PULIDO

2

CONTENIDOTEMA1: INTRODUCCIÓN

TEMA2: APRENDIZAJE MÁQUINA

TEMA3: REDES NEURONALES MULTICAPA

TEMA4: PROGRAMACIÓN EVOLUTIVA

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

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.

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.

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

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

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

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

10

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

1997)

11

Estado del Arte en Aprendizaje Máquina

Detectar fraudes de tarjetas de crédito

automóviles autónomos (Pomerleau, 1989)

12

Estado del Arte en Aprendizaje Máquina Jugar

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

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.

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.

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

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.

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.

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

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

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

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

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

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)

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.

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

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))

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

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

29

El Diseño FinalGeneralizador Experimental

Critica

Desempeño del Sistema

Generalizador

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.

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

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