Winston

36
Aprendizaje automático Ciencias de la Computación e Inteligencia Artificial Adquisición de conceptos Tema 2

Transcript of Winston

Page 1: Winston

Aprendizaje automático

Ciencias de la Computación e Inteligencia Artificial

Adquisición de conceptos

Tema 2

Page 2: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático2

Índice

2.1 Características generales

2.2 Primeros algoritmos

2.3 El espacio de versiones

Page 3: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático3

2.1 Características generales

Aprendizaje inductivo

Aprender aspectos generales a partir de ejemplos con datos  particulares

Se trata de un aprendizaje supervisado

Aprendizaje inductivo simbólico

Utiliza una representación simbólica 

(redes semánticas, reglas, programación lógica, …)

Aprendizaje inductivo subsimbólico

Utiliza una representación subsimbólica

(redes neuronales, conjuntos difusos)

Se desarrolla por medio de algoritmos de ajuste paramétrico

Page 4: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático4

2.1 Características generales

Formas de aprendizaje inductivo simbólico

Si los ejemplos reflejan situaciones con múltiples objetos y relaciones 

Adquisición de conceptos

Si los ejemplos se refieren a conjuntos atributo‐valor 

Clasificación supervisada

Si se pretende adquirir un modelo lógico 

Programación Lógica Inductiva

Page 5: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático5

2.1 Características generales

Adquisición de conceptos

Surge en la década de los 70

Se produce un declive de la aproximación neuronal

Aparecen los primeros lenguajes de manipulación simbólica

La investigación se centra en problemas de juegos 

Se intentan obtener mecanismos de aprendizaje simbólico  generales con muy poca información de partida

Algoritmos propuestos

Winston

(1970), Hayes‐Roth

(1977), Vere

(1975), Michalski‐ Dietterich

(1981)

Mitchell

(1982) propone un marco unificado (espacio de  versiones)

Page 6: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático6

2.2 Primeros algoritmos

Método de Winston

Desarrollado a lo largo de la década de los 70

Se considera el punto de partida del Aprendizaje Basado en  Similitudes

(SBL)

El autor lo denomina Learning

by analyzing

differences

Introduce el concepto de cuasi‐ejemplo

(ejemplo negativo muy  próximo a los ejemplos positivos)

Utiliza como representación las redes semánticas tanto para los  ejemplos como para los conceptos

Se centra en el dominio de aplicación del mundo de bloques

Page 7: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático7

2.2 Primeros algoritmos

Método de Winston

Ejemplo 1

Ejemplo

C

B

A

Tiene como parteEncima deTiene la propiedadTipo de

Page 8: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático8

2.2 Primeros algoritmos

Método de Winston

Ejemplo 1forma

rombo circulo caja

Ejemplo

C

B

A

Tiene como parteEncima deTiene la propiedadTipo de

Page 9: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático9

2.2 Primeros algoritmos

Método de Winston

Ejemplo 1forma

rombo circulo caja

textura

liso

sombra

Ejemplo

C

B

A

Tiene como parteEncima deTiene la propiedadTipo de

Page 10: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático10

2.2 Primeros algoritmos

Método de Winston

Ejemplo 1forma

rombo circulo caja

tamaño

grandemedio

textura

liso

sombra

Ejemplo

C

B

A

Tiene como parteEncima deTiene la propiedadTipo de

Page 11: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático11

2.2 Primeros algoritmos

Método de Winston

Ejemplo 2forma

circulo rectángulo cuadrado

tamaño

mediogrande

textura

liso

sombra

Ejemplo

E

D

G

pequeño

F

Tiene como parteEncima deDentro deTiene la propiedadTipo de

Page 12: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático12

2.2 Primeros algoritmos

Método de Winston

La representación del concepto utiliza etiquetas del tipo “debe  tener esta relación” (require‐link) y del tipo “no debe tener esta  relación” (forbid‐link)

La primera representación del concepto corresponde al primer  ejemplo positivo

Elementos del algoritmo:

Un lenguaje de representación (redes semánticas)

Un mecanismo de cotejamiento (para detectar las correspondencias)

Un proceso de generalización (para incorporar ejemplos positivos)

Un proceso de especialización (para incorporar ejemplos negativos)

Page 13: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático13

2.2 Primeros algoritmos

Método de Winston

Proceso de especialización:

Cotejar el ejemplo (negativo) con el modelo actual del  concepto

Si hay más de una diferencia, ignorar el ejemplo

Si hay una única diferencia:–

Si el modelo tiene una etiqueta que el ejemplo no tiene, generar

una 

etiqueta “require‐link”

Si el ejemplo tiene una etiqueta que el concepto no tiene, generar una 

etiqueta “forbid‐link”

Page 14: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático14

2.2 Primeros algoritmos

Método de Winston

Proceso de generalización:

Cotejar el ejemplo (positivo) con el modelo actual del  concepto

Procesar todas las diferencias

Si falta una etiqueta, eliminarla del concepto

Si hay diferencia en el valor de una propiedad, modificar el  rango de la propiedad

Si una etiqueta apunta a una clase diferente–

Si la clase pertenece a una jerarquía, subir en la jerarquía

Si la clase no pertenece a una jerarquía, eliminarla

Page 15: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático15

2.2 Primeros algoritmos

Método de Winston

Propiedades del algoritmo:

Conservador (si existen dudas sobre lo que hay que  aprender, mejor no aprender)

El aprendizaje se realiza en pasos pequeños (ley de Martin,  no puedes aprender algo a menos que casi lo sepas de antemano)

Es muy sensible al orden en el que se presentan los ejemplos

Page 16: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático16

2.2 Primeros algoritmos

Método de Hayes‐Roth

Intenta encontrar las generalizaciones conjuntivas más específicas

de  un conjunto de ejemplos positivos (maximal

abstractions

inference

matches)

La representación que utilizan la llaman parameterized

structural representations

(PSR)

E1: {{caja: a}{círculo: b}{rombo: c}{liso: a}{sombreado: b}{liso: c} 

{grande: a} {medio: b}{medio: c}{sobre: b, a}{sobre: c, b}}

Cada ejemplo es una lista de case frames, compuestos por una  etiqueta y una lista de parámetros

El modelo actual del concepto se expresa también por medio de  un PSR

El primer modelo corresponde al primer ejemplo

Page 17: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático17

2.2 Primeros algoritmos

Método de Hayes‐Roth

Para cada nuevo ejemplo

Hacer el cotejamiento de los case frames

de todas las formas  posibles, obteniendo un conjunto M con todas las 

correspondencias entre parámetros

Seleccionar un subconjunto de las correspondencias que sea  consistente por medio de una búsqueda en anchura

Una vinculación consistente significa que un parámetro de  una instancia no puede vincularse a varios parámetros de la 

otra instancia

Page 18: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático18

2.2 Primeros algoritmos

Método de Hayes‐Roth

Ejemplo:

E1: {{caja: a}{círculo: b}{rombo: c}

{liso: a}{sombreado: b}{liso: c} 

{grande: a} {medio: b}{medio: c}

{sobre: b, a}{sobre: c, b} }

E2: {{rectángulo: d}{círculo: e}{círculo: f}{cuadrado: g}

{grande: d}{pequeño: e}{pequeño: f}{medio: g}

{liso: d}{sombreado: e}{sombreado: f}{liso: g}

{sobre: g, d}{dentro: e, d}{dentro: f, d} }

Page 19: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático19

2.2 Primeros algoritmos

Método de Hayes‐Roth

M={{circulo: ((b/e) (b/f))}, 

{liso: ((a/d)(a/g)(c/d)(c/g))}, 

{sombreado: ((b/e)(b/f))}, 

{grande: ((a/d))}, 

{medio: ((b/g)(c/g))}, 

{sobre: ((b/g a/d)(c/g b/d))}  }

Ejemplo de generalización conjuntiva (b/e) (a/d) (c/g): 

{{circulo: v2}{liso: v1}{sombreado: v2}{liso: v3}

{grande: v1}{medio: v3}

“Circulo sombreado, objeto grande liso y objeto mediano liso”

Page 20: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático20

2.2 Primeros algoritmos

Método de Michalski‐Dietterich

Buscan las generalizaciones conjuntivas más específicas

Utilizan como representación el lenguaje VL21

, que es una  extensión de la lógica de predicados de primer orden

E1: ∃

a, b, c 

[tamaño(a)=grande] [tamaño(b)=medio] [tamaño(c)=medio] 

[forma(a)=caja] [forma(b)=círculo] [forma(c)=rombo] 

[textura(a)=liso] [textura(b)=sombreado] [textura(c)=liso]

[sobre(b,a)] [sobre(c,b)]

Page 21: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático21

2.2 Primeros algoritmos

Método de Michalski‐Dietterich

E2: ∃

d, e, f, g 

[tamaño(e)=pequeño] [tamaño(f)=pequeño] 

[tamaño(d)=grande] [tamaño(g)=medio] 

[forma(e)=círculo] [forma(f)=círculo] [forma(d)=rectángulo] 

[forma(g)=cuadrado] 

[textura(e)=sombreado] [textura(f)=sombreado] 

[textura(d)=liso] [ textura(g)=liso] 

[dentro (e,d)] [dentro (f,d)] [sobre(g,d)]

Page 22: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático22

2.2 Primeros algoritmos

Método de Michalski‐Dietterich

El método trata en primer lugar la parte estructural (selectores no unarios) obteniendo un conjunto de generalizaciones 

conjuntivas candidatas de la parte estructural

A continuación se completan incorporando la información  descriptiva (selectores unarios) y realizando de nuevo una  generalización conjuntiva en el espacio de atributos

Ejemplo: ∃

v1,v2 [sobre(v1,v2)] [tamaño(v1)=medio]  [forma(v1)=polígono] [textura(v1)=liso] [tamaño(v2)=medio ∨

grande] [forma(v2) = rectángulo ∨

círculo]

Page 23: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático23

2.2 Primeros algoritmos

Comparativa

Propiedad Winston Hayes‐Roth Michalski

Dominio Mundo de bloques General General

Lenguaje Redes semánticas PSR VL21

Conceptos 

sintácticos

Nodos y uniones Case frames, case labels, 

parámetros

Selectores, variables, descriptores

Operadores AND, excepción AND AND, OR, OR interno

Reglas de 

generalización

Eliminar condiciónConstantes a variablesSubir en el árbol de 

generalización

Eliminar condiciónConstantes a variables

Eliminar condiciónConstantes a variablesSubir en el árbol de 

generalizaciónCerrar intervalosOr

interno

Page 24: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático24

2.2 Primeros algoritmos

Comparativa

Propiedad Winston Hayes‐Roth Michalski

Formas 

disyuntivas

NO NO SI

Inmunidad al 

ruido

Muy baja Baja Muy buena

Conocimiento del 

dominio

Incorporado al programa No Sí

Inducción 

constructiva

Limitada No Algunas reglas generales

Page 25: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático25

2.3 El espacio de versiones

Espacio de versiones

Propuesto por Mitchell

en 1982

Presenta un marco unificado para la adquisición de conceptos,  independiente de la representación a utilizar

Hipótesis: representación de un concepto

Espacio de hipótesis: el conjunto de todos los conceptos que  pueden ser descritos con la representación escogida

Espacio de versiones: Conjunto de hipótesis coherentes con el  conjunto de ejemplos positivos y negativos estudiado, es decir,  que reconocen a todos los ejemplos positivos y excluyen a todos 

los ejemplos negativos.

Page 26: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático26

2.3 El espacio de versiones

Espacio de versiones

Ordenación parcial: h1 es más general que h2 si el conjunto de  instancias cubierto por h2 es un subconjunto del conjunto de 

instancias cubierto por h1

Representación del espacio de versiones:

Enumeración de todas las hipótesis (inviable por su tamaño)

Conjunto más general (G) y más específico (S)

Cualquier hipótesis (h) del espacio de versiones cumple que es  más general o igual que alguna de las hipótesis del conjunto S y más específica o igual que alguna de las hipótesis del conjunto G

Page 27: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático27

2.3 El espacio de versiones

Algoritmo general:

Se representa el espacio de versiones por enumeración

Dado un ejemplo positivo, se excluyen las hipótesis que no lo  cubren

Dado un ejemplo negativo, se excluyen todas las hipótesis que si lo cubren

Se itera para todos los ejemplos de la base de conocimiento

El resultado es el conjunto de hipótesis coherente con los  ejemplos

Este algoritmo es inviable ya que el espacio de versiones puede  ser infinito o tener un número enorme de hipótesis

Page 28: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático28

2.3 El espacio de versiones

Algoritmo de eliminación de candidatos:

Se representa el espacio de versiones mediante los conjunto S y G

Dado un ejemplo positivo

Excluir de G las hipótesis que no lo cubran

Generalizar en S las hipótesis que no lo cubran, manteniendo que

sean más específicas que algún elemento de G y que no sean más 

generales que algún elemento de S

Dado un ejemplo negativo

Excluir de S las hipótesis que lo cubran

Especificar en G las hipótesis que lo cubran hasta que lo excluyan, 

manteniendo que sean más generales que algún elemento de S y que

no sean más específicas que algún elemento de G

Page 29: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático29

2.3 El espacio de versiones

Ejemplo:

Page 30: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático30

2.3 El espacio de versiones

Representación de los ejemplos:

# Cabeza Cuello Cuerpo Color Cola Clase

1 Círculo Recto Círculo Rayado Abajo +

2 Triángulo Curvo Cuadrado Negro Recta ‐

3 Cuadrado Triangular Triángulo Blanco Abajo ‐

4 Círculo Curvo Cuadrado Rayado Abajo +

5 Triángulo Triangular Triángulo Rayado Recta ‐

6 Cuadrado Recto Círculo Blanco Arriba ‐

7 Cuadrado Triangular Triángulo Rayado Abajo +

Page 31: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático31

2.3 El espacio de versiones

Representación de las hipótesis:

( Valor1, Valor2, Valor3, Valor4, Valor5)

Valor1 ∈

{ Círculo, Triángulo, Cuadrado, ? }

Valor2 ∈

{ Recto, Curvo, Triangular, ? }

Valor3 ∈

{Círculo, Triángulo, Cuadrado, ? }

Valor4 ∈

{ Rayado, Negro, Blanco, ? }

Valor5 ∈

{ Abajo, Recta, Arriba, ? }

Ejemplo:  (Círculo, ?, Triángulo, Negro, ?)

Número de hipótesis:  |H| = 4 * 4 * 4 * 4 * 4 = 1024

Page 32: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático32

2.3 El espacio de versiones

Proceso de generalización:

Hipótesis: (h1, h2, h3, h4, h5)

Ejemplo: (e1, e2, e3, e4, e5)

Hipótesis generalizada: (g1, g2, g3, g4, g5)

Si hi

=

? Entonces gi

=

?

Si hi

=

ei

Entonces gi

=

hi

Si hi

ei

Entonces gi

=

?

Page 33: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático33

2.3 El espacio de versiones

Proceso de especialización:

Hipótesis: (h1, h2, h3, h4, h5)

Ejemplo negativo: (e1, e2, e3, e4, e5)

Conjunto de hipótesis especializada: (g1, g2, g3, g4, g5)

Si hi

ei

y hi

? entonces la hipótesis no cubre el ejemplo  negativo

Si hi

=

ei

Entonces gi

=

hi

Si hi

=

? Entonces generar una hipótesis por cada gi 

ei

Page 34: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático34

2.3 El espacio de versiones

Traza del algoritmo

# S G

0 { } { ( ?, ? , ? , ? ,  ? ) }

1 { (Círculo, Recto, Círculo, Rayado, Abajo) } { ( ?, ? , ? , ? ,  ? ) }

2 { (Círculo, Recto, Círculo, Rayado, Abajo) } { (Círculo, ?, ?, ?, ?), ( ?, Recto, ?, ?, ?), ( ?, ?, Círculo, ?, ?), ( ?, ?, ?, Rayado, ?) ,(?, ?, ?, ?,  Abajo) }

3 { (Círculo, Recto, Círculo, Rayado, Abajo) } { (Círculo, ?, ?, ?, ?), ( ?, Recto, ?, ?, ?), ( ?, ?, Círculo, ?, ?), ( ?, ?, ?, Rayado, ?) }

Page 35: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático35

2.3 El espacio de versiones

Traza del algoritmo

# S G

4 { (Círculo, ?, ?, Rayado, Abajo) } { (Círculo, ?, ?, ?, ?), ( ?, ?, ?, Rayado, ?) }

5 { (Círculo, ?, ?, Rayado, Abajo) } { (Círculo, ?, ?, ?, ?), ( ?, ?, ?, Rayado, Abajo)}

6 { (Círculo, ?, ?, Rayado, Abajo) } { (Círculo, ?, ?, ?, ?), ( ?, ?, ?, Rayado, Abajo)}

7 { (?, ?, ?, Rayado, Abajo) } { ( ?, ?, ?, Rayado, Abajo) }

Page 36: Winston

Tema 2: Adquisición de conceptos

Aprendizaje automático36

2.3 El espacio de versiones

Resultado:

Si S =

G, el concepto es el conjunto de hipótesis contenido en S o G

Si S ≠

G, el concepto se describe por medio de todas las hipótesis  iguales o más generales que S e iguales o más específicas que G

Si S y G quedan vacíos, hay un error en los datos o la  representación no es adecuada para representar el concepto