Aprendizaje automático
Ciencias de la Computación e Inteligencia Artificial
Adquisición de conceptos
Tema 2
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
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
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
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)
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
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
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
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
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
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
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)
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”
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
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
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
o
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
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
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} }
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”
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)]
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)]
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]
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
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
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.
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
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
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
Tema 2: Adquisición de conceptos
Aprendizaje automático29
2.3 El espacio de versiones
•
Ejemplo:
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 +
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
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
=
?
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
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, ?) }
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) }
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
Top Related