1. TALLER PRÁCTICO
Algoritmos de Clasificación por Vecindad
De la Materia
INTELIGENCIA ARTIFICIAL AVANZADA
Ingeniería en Sistemas Informáticos y Computación
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA
Desarrollado por:
Román Carlos
noxcr@hotmail.com
093708717 / 2560740
Docente Investigador:
Ing. Nelson Piedra
[Abril 2009]
2. TALLER
ALGORITMOS DE CLASIFICACION POR VECINDAD
1. La tabla adjunta contiene 8 casos bidimensionales que constituyen el conjunto de entrenamiento
para un clasificador k -NN. Los dos últimos casos -numerados del 9 al 10- forman el conjunto de
testeo, resuelva lo que se solicita en cada literal.
DESARROLLO:
De b e m o s co n si d e r a r qu e ten e m o s oc h o ca s o s cla sific a d o s , d e lo s cu al e s hay cin c o d e la cla s e 0 y
tre s d e la cla s e 1. S e d e s e a n cla sificar el ca s o 9 y 10, ya qu e no s e co n o c e a qu é cla s e
p ert e n e c e n .
Construye el clasificador k -NN a partir de la distancia euclídea:
• Con el algoritmo k -NN básico (k = 1, 2).
a) Para el valor de K=1: se considera el más cercano, no se considera el empate de
distancias de dos casos pertenecientes a clases distintas. (Ver gráfica izquierda)
Caso 9 = Clase 1
Porque dcercano = 2 y ese caso es Clase 1
Caso 10 = Clase 0
3. Porque dcercano = 1 (para cualquiera de los 3 vecinos) y
todos son Clase 0
b) Para el valor de K=2: Se considera la mayor cantidad de casos vecinos más cercanos
dentro del círculo Euclídeo (2 en total para este caso), de haber empate se toma el más
cercano. (Ver gráfica derecha)
Caso 9 = Clase 1
Porque: - d1 = 2 y ese caso es Clase 1
- d2 = 2,23
Caso 10 = Clase 0
Porque: - d1 = 1 y ese caso es Clase 0
- d2 = 1 y ese caso es Clase 0
• Con el k -NN con rechazo con k = 4. Umbral = 3.
4. Caso 9 NO clasificado.
Porque sería de Clase 0
-debido a que hay 3 casos
de esa clase cercanos-, pero
no se clasifica porque no
supera el umbral. NC(3) no
es mayor que el U(3).
Caso 10 = Clase 0
Porque los cuatro casos
cercanos son de Clase 0 y
además superan el umbral.
NC(4) es mayor a U(3).
• Con el k -NN con distancia media con k = 4.
Caso 9 = Clase 1
Porque si bien hay 3 casos
de clase 0, su distancia
media es mayor a la
distancia media de la otra
clase. Por ello se asigna la
distancia de la clase más
corta: Clase 1
Dclase0 = (2 + 2,3 + 3,6)/3
Dclase0 = 2,96
Dclase1 = 2/1
Dclase1 = 2
Caso 10 = Clase 0
5. Todos los casos son de clase 0, no existe otra clase para equiparar distancia. Se asigna
esa clase a este caso.
• Con el k -NN con distancia mínima.
Escogemos al candidato más cercano al baricentro su clase respectivamente.
Caso 9 = Clase 1
Porque la distancia del
candidato de la clase 1 es de
4,12 con respecto al caso 9 a
clasificar, mientras que la
distancia del candidato de la
clase 0 es 5,09 con respecto al
caso 9. Se clasifica basado en
la menor distancia.
Caso 10 = Clase 0
Porque la distancia del
candidato de la clase 0 es de 2
con respecto al caso 9 a clasificar, mientras que la distancia del candidato de la clase 1 es
3,02 con respecto al caso 9.
6. • Con el k -NN con pesado de casos seleccionados, siendo W inversamente proporcional a
la distancia. k = 4.
Se considera como el K-NN
básico y luego, se realiza la
suman los pesos de los K
vecinos de cada clase, se
asigna el peso más alto.
Caso 9 = Clase 0
Porque la suma de pesos
de la Clase 0 es de 1,04 y
de la Clase 1 es 0,5. El
peso de la clase 0 es
mayor.
Caso 10 = Clase 0
Para este valor de K solo nos
encontramos con la clase 0,
por ende hemos de clasificar
el caso 10 con esa clase,
pero sin descuidar el hecho
de calcular su peso, aunque
no haya con quien
equipararlo. En este caso la
clase 1 tie un peso de 3,5
7. • Con una reducción del fichero inicial en base al método denominado edición de Wilson.
k =1.
SE TOMARÁ LOS RESULTADOS DE UNA
CLASIFICACION K-NN BASICA, con
IGUALMENTE K=1, ASI: Caso 9 = Clase 1 y Caso
10 = Clase 0.
Considerando el algoritmo de Wilson:
SR
Par a todo caso ϵ R hacer
Si (Dif (caso .R – {caso}.k)) entonces
S S – {caso}
Fin_si
Fin_para
Don d e R e s el co nju nt o d e entr e n a m i e n t o original y S el co nju nt o d e entr e n a m i e n t o edita d o .
Así par a ambos casos
Como K=1, para ambos casos buscamos su primer vecino más cercano (excepto si mismo
o el otro caso clasificado) y lo eliminamos si a dicho caso le fue asignada una clase distinta a la de
este vecino cuando se aplicó el K-NN para la clasificación. Por ende la edición de Wilson para
estos dos casos no realizará ninguna supresión de ninguno de los dos casos.
S e ría distinto si s e no s hu bi e s e dad o un valor d e K=4, a sí la Cla s e 9 s e hubi e s e elimin a d o
d e bi d o a qu e fue cla sific a d a co m o cla s e 1 sa bi e n d o qu e tien e 3 ve cin o s m á s d e cla s e 0. En ca m b i o
el ca s o 10 no s e elimin aría d e bi d o a qu e su s 4 ca s o s ve cin o s s o n d e la cla s e qu e le fue a sign a d a ,
e s d e cir so n cla s e 0.
• Con una reducción del fichero inicial en base al método denominado condensación de
Hart. k =1.
S0
Repetir
Salir VERDAD
Para todo p ϵ R Hacer
Si (Dif(p,S,1))entonces
R R – {p}
S S U {p}
Salir FALSO
Fin_si
Fin_para
Hasta ((Salir) o (R = 0))
8. Debido al valor de K no se añadirá a S (conjunto de prototipos) ninguno de los dos casos 9 o
10, mas si el valor de k fuese mayor entonces cambiaría las cosas, por ejemplo, para un valor
de K=4 tendríamos que el caso 9 se excluye del conjunto de prototipos S debido a que su
clase fue asignada incorrectamente, los demás casos si van. En cambio en el caso 10 para
K=4 se agregan todos los casos a S.
2. La tabla adjunta contiene 8 casos bidimensionales que constituyen el conjunto de
entrenamiento para un clasificador k -NN.
Aplica la edición de Wilson para reducir el conjunto de entrenamiento.
•
El algoritmo de Wilson si se basa en un recorrido de comparación de clases con los
vecinos eliminará el caso (2,3), puesto que es de clase 1 y según el algoritmo de edición
debería ser de clase 0, igual se eliminará el caso (3,3) por la misma razón, Tiene más
vecinos cercanos de clase 1 que de clase 0, por lo que se considerará la clasificación K-
NN que se le dio como no válida.
Usando el método de condensación de Hart, reduce el conjunto de entrenamiento.
•
Consiste en construir incrementalmente S mediante una estrategia “voraz” que
abarca ir incorporando a S todas las muestras de R que resultan incorrectamente
clasificadas mediante la regla 1-NN, utilizando como conjunto de entrenamiento las
muestras de S. Este algoritmo permite obtener un conjunto reducido y consistente S a
partir de otro dado R excluyendo del último aquellas muestras que clasifican correctamente
9. a las demás. En definitiva descarta los puntos inmersos en los agrupamientos y selecciona
aquellos que definen las fronteras de decisión.
Para este algoritmo se
descartarán los casos (2,3) y (3,3), en
S se agregarán todos los casos
excepto los descartados que no
definen fronteras de decisión. En caso
de considerar los resultados de la
Edición de Wilson como un nuevo
grupo de entrenamiento R de entrada,
entonces al aplicar Hart no se daría
ningún cambio, los casos que se
pondrían en S serían todos.
• Clasifica el caso (2.5, 2.5) a partir de
los conjuntos de entrenamiento
reducidos obtenidos anteriormente y
considerando k = 1.
Caso (2,5;2,5) = Clase 0, por K-NN