Taller Algoritmos Clasificación Vecindad

9

Click here to load reader

description

Ejercicios de Algoritmos de Clasificación por Vecindad.

Transcript of Taller Algoritmos Clasificación Vecindad

Page 1: Taller Algoritmos Clasificación Vecindad

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 [email protected] 093708717 / 2560740

Docente Investigador:

Ing. Nelson Piedra

[Abril 2009]

Page 2: Taller Algoritmos Clasificación Vecindad

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 c on s i d e r a r qu e ten e m o s o ch o ca s o s cla s ific a d o s , d e lo s cual 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 s ifi ca r 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

Page 3: Taller Algoritmos Clasificación Vecindad

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.

Page 4: Taller Algoritmos Clasificación Vecindad

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)/3Dclase0 = 2,96

Dclase1 = 2/1Dclase1 = 2

Caso 10 = Clase 0

Page 5: Taller Algoritmos Clasificación Vecindad

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.

Page 6: Taller Algoritmos Clasificación Vecindad

• 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

Page 7: Taller Algoritmos Clasificación Vecindad

• 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:

S RPara todo caso ϵ R hacer

Si (Dif (caso .R – {caso}.k)) entoncesS S – {caso}

Fin_siFin_para

Don d e R e s el c onjunto d e entr e n a mi e n t o original y S el c onjunto d e entr e n a m i e n t o editad o .

Así para 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 di stinto si s e no s hubi e s e dad o un valor d e K=4, a s í la Cla s e 9 s e hubi e s e elimina d o d e bi d o a qu e fue cla s ific a d a co m o cla s e 1 s a bi e n d o qu e tien e 3 v e c in o s má s d e cla s e 0. En ca m b i o el ca s o 10 no s e eliminaría d e bi d o a qu e su s 4 ca s o s v e c in o s s o n d e la cla s e qu e le fue a si gn a d a , e s d e c ir s o n cla s e 0.

• Con una reducción del fichero inicial en base al método denominado condensación de Hart. k =1.

S 0Repetir

Salir VERDADPara todo p R Hacerϵ

Si (Dif(p,S,1))entoncesR R – {p}S S U {p}Salir FALSO

Fin_siFin_para

Hasta ((Salir) o (R = 0))

Page 8: Taller Algoritmos Clasificación Vecindad

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

Page 9: Taller Algoritmos Clasificación Vecindad

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