Algoritmo AQ. Ejercicio 1

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

Ejemplo de uso de Algoritmo AQ

Enrique J. Carmona Suárez

ecarmona@dia.uned.es

Versión inicial: 03/10/2016 Última versión: 29/09/2020

Dpto. Inteligencia Articial, ETS de Ingeniería Informática, Universidad Nacional de Educación a Distancia
(UNED), C/Juan del Rosal, 16, 28040-Madrid (Spain)

Problema
Se desea utilizar el el algoritmo AQ para aprender el concepto de cuándo administrar un deter-
minado tratamiento a partir de la información suministrada por un conjunto de pruebas diagnósticas
(ver tabla 1). Utilizar la siguiente función LEF:

LEF = {(cobertura ≥ 2), (número de premisas ≤ 2)},


es decir, se preeren aquellas reglas que tengan máxima cobertura (al menos tienen que describir
dos ejemplos positivos) y, de éstas, la que tenga el menor número de premisas (como máximo dos).
Aunque, tal y como se indica en el texto base, la función LEF se aplica después de generar la estrella
(conjunto de complejos válidos para un determinado ejemplo positivo), para simplicar el proceso, no
se generarán aquellos complejos que violen el número de premisas máximo permitido e indicado por la
función LEF.

Paciente Presión Urea en sangre Gota Hipotiroidismo Administrar


Arterial (A1) (A2) (A3) (A4) Tratamiento

1 Alta Alta Sí No No
2 Alta Alta Sí Sí No
3 Normal Alta Sí No Sí
4 Baja Normal Sí No Sí
5 Baja Baja No No Sí
6 Baja Baja No Sí No
7 Normal Baja No Sí Sí
8 Alta Normal Sí No No
9 Alta Baja No No Sí
10 Baja Normal No No Sí
11 Alta Normal No Sí Sí
12 Normal Normal Sí Sí Sí
13 Normal Alta No No Sí
14 Baja Normal Sí Sí No

Tabla 1: Administrar tratamiento a partir de los resultados de un conjunto de pruebas clínicas.

Solución
En primer lugar, se elige como semilla un ejemplo positivo de los disponibles (Administrar trata-
miento=sí) como, por ejemplo, el primero que aparece en la tabla 1, es decir, el paciente 3:

1
Semilla = {A1 = N, A2 = A, A3 = Sı́, A4 = N o}

A partir de este ejemplo, el algoritmo AQ realiza una búsqueda interna en la que intenta encontrar
una estrella que describa este ejemplo y no describa ningún ejemplo negativo. Para ello, inicialmente,
se crea una estrella vacía, E = {Ø}, una lista vacía, L = {Ø}, y un conjunto de selectores, S, formado
por los valores de los atributos de la semilla elegida:

S = {(A1 = N ) , (A2 = A) , (A3 = Sı́) , (A4 = N o)}

A partir de aquí se van creando complejos mediante la combinación ordenada y sucesiva de los
distintos selectores y comprobando, para cada uno de ellos, si cumple uno de los siguientes casos.
Si el complejo describe uno o más ejemplos negativos, se le añade nuevos selectores para hacerlo más
especíco y, por tanto, reducir así la posibilidad de que siga cubriendo ejemplos negativos. Si el complejo
no describe ningún ejemplo negativo, entonces se añade a la estrella. Así, en la primera iteración de la
búsqueda interna, como resultado de combinar cada selector de S con los complejos de L (inicialmente
igual al conjunto vacío), se almacenan en L0 los siguientes complejos:

C1 : (A1 = N )
C2 : (A2 = A)
C3 : (A3 = Sı́)
C4 : (A4 = N o)
El único que no describe a ningún ejemplo negativo es el C1 y, por tanto, éste se podrá añadir a la
estrella, E, y se eliminará de L0 . Además, se actualizará L. Es decir:

E = {C1 }

L0 = {C2 , C3 , C4 }

L = L0

Como L 6= Ø, comienza así una nueva iteración en la que habrá que especializar los complejos
de L. Para ello, se construye un nuevo conjunto L0 , formado por la combinación de los complejos a
especializar con cada cada selector de S, y borrando los que: (i) resulten repetidos, (ii) contengan
algún complejo perteneciente a la estrella, o (iii) sean iguales a los que se quiere especializar. El nuevo
conjunto L0 estaría formado por los siguientes elementos:

C23 : (A2 = A) ∧ (A3 = Sı́)


C24 : (A2 = A) ∧ (A4 = N o)
C34 : (A3 = Sı́) ∧ (A4 = N o)
Obsérvese que no se consideran C22 , C33 y C44 por ser iguales, respectivamente, a C2 , C3 y C4 , es decir,
a los que se quería especializar. Tampoco se consideran C32 , C42 y C43 , por ser versiones repetidas,
respectivamente, de C23 , C24 y C34 (ya incluidos). Finalmente, tampoco se consideran:

C21 : (A2 = A) ∧ (A1 = N )


C31 : (A3 = Sı́) ∧ (A1 = N )
C41 : (A4 = N o) ∧ (A1 = N )
por contener a C1 , es decir, un complejo de E.
Es fácil comprobar que, del nuevo conjunto de complejos especializados, todos ellos cubren a ejem-
plos negativos. Por tanto, E permanece invariable y se actualizan L0 y L, es decir:

E = {C1 }

2
L0 = {C23 , C24 , C34 }

L = L0

Como L 6= Ø, comenzaría una nueva iteración de la búsqueda interna en la que habría que espe-
cializar los complejos de L. Sin embargo, siguiendo las indicaciones del enunciado del problema, no
se seguirá iterando, dado que los nuevos complejos resultantes estarían formados por tres premisas y
nunca podrían ser seleccionados al aplicar la función LEF. Por tanto, la estrella resultante tiene un
único complejo con las siguientes propiedades:

C1 : describe cuatro ejemplos positivos (3, 7, 12 y 13) y está formado por un único selector
(premisa)

Dado que el complejo cumple la función LEF y no tiene más complejos con los que competir, se
incorpora al recubrimiento:

R(1) = {C1 (1)}

En la expresión anterior se utiliza la siguiente notación: la i en R(i) denota la i-ésima búsqueda


externa en la que se actualizó el recubrimiento, y los valores j y k en Cj (k) denotan, respectivamente, la
búsqueda interna k -ésima en la que se obtuvo el complejo j -ésimo. Finalmente, se elimina del conjunto
de ejemplos aquellos ejemplos positivos que ya están cubiertos por el complejo C1 , resultando la tabla
2.

Paciente Presión Urea en sangre Gota Hipotiroidismo Administrar


Arterial (A1) (A2) (A3) (A4) Tratamiento

1 Alta Alta Sí No No
2 Alta Alta Sí Sí No
4 Baja Normal Sí No Sí
5 Baja Baja No No Sí
6 Baja Baja No Sí No
8 Alta Normal Sí No No
9 Alta Baja No No Sí
10 Baja Normal No No Sí
11 Alta Normal No Sí Sí
14 Baja Normal Sí Sí No

Tabla 2: Ejemplos resultantes tras eliminar de la tabla 1 los ejemplos positivos cubiertos por el recubrimiento
R(1).

Dado que en la nueva tabla resultante siguen existiendo ejemplos positivos, se realiza una nueva
búsqueda externa y, por tanto, se repite todo el proceso anterior. Así, se elige un nuevo ejemplo positivo
como semilla: por ejemplo, el correspondiente al paciente 4, es decir, el primer ejemplo positivo que nos
encontramos en la nueva tabla 2. A continuación, se inicia una nueva búsqueda interna. Los conjuntos
E y L se vuelven a resetear, y el conjunto de selectores, S, estaría formado ahora por los valores de
los atributos de la semilla, es decir:

E = {Ø}

L = {Ø}

S = {(A1 = B) , (A2 = N ) , (A3 = Sı́) , (A4 = N o)}

Ahora, en la primera iteración de la búsqueda interna, se almacenan en L0 los siguientes complejos:

C1 : (A1 = B)

3
C2 : (A2 = N )
C3 : (A3 = Sı́)
C4 : (A4 = N o)

Los cuatro describen ejemplos negativos. Por tanto, la estrella, E , permanece invariable y se actualizan
L0 y L, es decir:

E = {Ø}

L0 = {C1 , C2 , C3 , C4 }

L = L0

Como L 6= Ø, comienza así nueva iteración en la que habrá que especializar los complejos de L. Para
ello, se construye un nuevo conjunto L0 formado por la combinación de los complejos a especializar
con cada cada selector de S y borrando los que: (i) resulten repetidos, (ii) contengan algún complejo
0
perteneciente a la estrella, o (iii) sean iguales a los que se quiere especializar. Así, el conjunto L estará
formado por los siguientes elementos:

C12 : (A1 = B) ∧ (A2 = N )


C13 : (A1 = B) ∧ (A3 = Sı́)

C14 : (A1 = B) ∧ (A4 = N o)


C23 : (A2 = N ) ∧ (A3 = Sı́)
C24 : (A2 = N ) ∧ (A4 = N o)
C34 : (A3 = Sı́) ∧ (A4 = N o)

Es fácil comprobar que, del nuevo conjunto de complejos especializados, el único que no describe
ejemplos negativos es C14 . Por tanto, éste se añade a la estrella existente, E, y se elimina de L0 , es
decir:

E = {C14 }

L0 = {C12 , C13 , C23 , C24 , C34 }

L = L0

Nuevamente, siguiendo las indicaciones del enunciado del problema, la búsqueda de complejos en
esta búsqueda interna termina aquí, dado que los nuevos complejos resultantes estarían formados por
tres selectores y nunca podrían ser seleccionados al aplicar la función LEF. El único complejo de
la estrella, C14 , cubre tres ejemplos positivos (4, 5 y 10) y tiene dos premisas, cumpliendo con las
especicaciones de la función LEF. Por tanto, se incorpora al recubrimiento:

R(2) = {C1 (1), C14 (2)}

Por último, en la tabla 2, se eliminan los ejemplos positivos que ya están cubiertos por C14 , resul-
tando la tabla 3.

4
Paciente Presión Urea en sangre Gota Hipotiroidismo Administrar
Arterial (A1) (A2) (A3) (A4) Tratamiento

1 Alta Alta Sí No No
2 Alta Alta Sí Sí No
6 Baja Baja No Sí No
8 Alta Normal Sí No No
9 Alta Baja No No Sí
11 Alta Normal No Sí Sí
14 Baja Normal Sí Sí No

Tabla 3: Ejemplos resultantes tras eliminar de la tabla 2 los ejemplos positivos cubiertos por el recubrimiento
R(2).

Dado que en la nueva tabla resultante siguen existiendo ejemplos positivos, se repite el proceso
(nueva búsqueda externa). Así, de la tabla 3, se elige como semilla el siguiente ejemplo positivo en
orden de aparición (paciente 9) y comienza una nueva búsqueda interna. Los conjuntos E y L se
vuelven a resetear, y el conjunto de selectores, S , estaría formado ahora por los valores de los atributos
de la semilla, es decir:

E = {Ø}

L = {Ø}

S = {(A1 = A) , (A2 = B) , (A3 = N o) , (A4 = N o)}

En el primer ciclo, se almacenan en L0 los siguientes complejos:

C1 : (A1 = A)
C2 : (A2 = B)
C3 : (A3 = N o)
C4 : (A4 = N o)
Los cuatro describen ejemplos negativos. Por tanto, el conjunto E permanece invariable y sólo se
actualizan los conjuntos L0 y L, es decir:

E = {Ø}

L0 = {C1 , C2 , C3 , C4 }

L = L0

Dado que L 6= Ø, comienza nueva iteración en la que habrá que especializar los complejos de L.
Para ello, se construye un nuevo conjunto L0 formado por la combinación de los complejos a especializar
con cada cada selector de S y borrando los que: (i) resulten repetidos, (ii) contengan algún complejo
perteneciente a la estrella, o (iii) sean iguales a los que se quiere especializar. El nuevo conjunto L0
estaría formado por los siguientes elementos:

C12 : (A1 = A) ∧ (A2 = B)


C13 : (A1 = A) ∧ (A3 = N o)
C14 : (A1 = A) ∧ (A4 = N o)
C23 : (A2 = B) ∧ (A3 = N o)
C24 : (A2 = B) ∧ (A4 = N o)

5
C34 : (A3 = N o) ∧ (A4 = N o)
Es fácil comprobar que, del nuevo conjunto de complejos especializados, los que no describen ejemplos
negativos son C12 , C13 , C24 y C34 . Por tanto, éstos se añaden a la estrella existente, E, y se eliminan
de L0 , es decir:

E = {C12 , C13 , C24 , C34 }

L0 = {C14 , C23 }

L = L0

Nuevamente, siguiendo las indicaciones del enunciado del problema, la búsqueda interna de com-
plejos termina aquí, dado que no es posible encontrar más complejos donde el número de premisas sea
menor o igual a dos. Los complejos de la estrella resultante tienen las siguientes propiedades:

C12 : describe 1 ejemplo positivo (el 9) y está formado por 2 selectores (premisas)

C13 : describe 2 ejemplos positivos (9 y 11) y está formado por 2 selectores (premisas)

C24 : describe 1 ejemplo positivo (el 9) y está formado por 2 selectores (premisas)

C34 : describe 1 ejemplo positivo (el 9) y está formado por 2 selectores (premisas)

Aplicando la función LEF, sólo es posible seleccionar el complejo C13 . Los restantes incumplen el
primer criterio de dicha función relativo a tener que cubrir al menos dos ejemplos positivos. El complejo
seleccionado se incorpora entonces al recubrimiento:

R(3) = {C1 (1), C14 (2), C13 (3)}

Finalmente, en la tabla 3, se eliminan los ejemplos positivos cubiertos por C13 , resultando la tabla
4.

Paciente Presión Urea en sangre Gota Hipotiroidismo Administrar


Arterial (A1) (A2) (A3) (A4) Tratamiento

1 Alta Alta Sí No No
2 Alta Alta Sí Sí No
6 Baja Baja No Sí No
8 Alta Normal Sí No No
14 Baja Normal Sí Sí No

Tabla 4: Ejemplos resultantes tras eliminar de la tabla 3 los ejemplos positivos cubiertos por el recubrimiento
R(3).

Dado que en la nueva tabla resultante (tabla 4) ya no quedan ejemplos positivos, el algoritmo naliza
y el recubrimiento nal corresponde al obtenido en R(3), es decir, R = R(3). Dicho recubrimiento está
formado por los siguiente complejos (reglas):

1. Si C1 (1) : (A1 = N ) ⇒ Administrar Tratamiento

2. Si C14 (2) : (A1 = B) ∧ (A4 = N o) ⇒ Administrar Tratamiento

3. Si C13 (3) : (A1 = A) ∧ (A3 = N o) ⇒ Administrar Tratamiento

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy