Está en la página 1de 50

Se dispone de un conjunto N de prototipos

(muestras clasificadas) llamadas Conjunto


de Entrenamiento.
Tenemos que clasificar un nuevo caso X, no
perteneciente al conjunto de entrenamiento.
Existe una métrica entre los distintos objetos
del espacio de representación.
No se utiliza ninguna otra información acerca
de las distribución de los parámetros
estadísticos asociados al conjunto de
entrenamiento.
Algoritmos de clasificación por
vecindad
Una técnica de clasificación supervisada.
Precisan de la definición de una métrica que
ayude a comprar las distancias entre los
distintos objetos.
Gozan de Simplicidad Conceptual: la
clasificación de un nuevo espacio de
representación se calcula en función de las
clases, conocidas de antemano, de los
puntos más próximos a él. Así las muestras
pertenecientes a una clase se encontrarán
próximas en el espacio de representación.
Las reglas de clasificación por vecindad
están basadas en la búsqueda de un
conjunto de los k prototipos más cercanos al
patrón a clasificar.
Se realiza una transducción: Hallándose
implícito el modelo en los datos, y no
realizándose una inducción + deducción
como en otros algoritmos de clasificación.
La regla de clasificación por los k vecinos
más cercanos o simplemente k-NN (k
nearest neighbors) establece que un nuevo
Regla del vecino más próximo .
Considerando un espacio de
representación, el caso a ser clasificado
tomará la clase que esté más cerca
dentro de ese espacio.
Regla de los K vecinos más próximos
(K-NN) . El nuevo caso a ser clasificado
se ubicará en la clase con más votos en
el contexto de los K vecinos más cerca
del conjunto de entrenamiento.
k–Vecinos más cercanos es uno de los métodos
de aprendizaje basados en instancias más
básicos, pero con resultados aceptables en
tareas que involucran el análisis de texto. En
resumen, este algoritmo no tiene una fase de
entrenamiento fuera de línea, por lo tanto, el
principal cálculo se da en línea cuando se
localizan los vecinos más cercanos. La idea en
el algoritmo es almacenar el conjunto de
entrenamiento, de modo tal que para clasificar
una nueva instancia, se busca en los ejemplos
almacenados casos similares y se asigna la clase
• Un nuevo caso se va a clasificar en la clase más
frecuente a la que pertenecen sus K vecinos más
cercanos
• Idea muy simple
e intuitiva
• Fácil implementación
• No hay modelo
explícito
• Case Based Reasoning
(CBR)
COMIENZO
Entrada: D = {(x1, c1), . . . , (xN, cN)} x = (x1, . .
. , xn) nuevo caso a clasificar
PARA todo objeto ya clasificado (xi, ci)
calcular di = d(xi, x)
Ordenar di(i = 1, . . . ,N) en orden ascendente
Quedarnos con los K casos DKX ya clasificados
más cercanos a x
Asignar a x la clase más frecuente en DKX
FIN
Regla K-NN con rechazo . Se toma en
cuenta un nivel fijado con anterioridad
que sirve como referencia para que
cuando una clase tiene un mayor número
de votos que ese nivel, entonces la clase
podrá ser asignada. Ese nivel puede
tomar un valor entre K/M y K, K es el
número de vecinos más próximos y M es
el total de clases. En resumen:
Para clasificar un caso exijo ciertas garantías
• Si no las tengo puedo dejar el caso sin clasificar
• Umbral
prefijado
• Mayoría
absoluta
Para clasificar un caso exijo ciertas garantías
• Si no las tengo puedo dejar el caso sin clasificar
• Umbral
prefijado
• Mayoría
absoluta
Regla K-NN por distancia media . Un caso
es clasificado en una clase si es que el
valor de la distancia media es el menor
con respecto al de las otras clases.
EJEMPLO:
Clasificador de la distancia mínima . Primero se
selecciona un representante para cada clase.
Luego, la tarea consiste en clasificar al nuevo caso
en la clase cuyo vecino es el más cercano al nuevo
caso.
Seleccionar un caso por clase (ej. el más cercano
al baricentro de la clase)
• Reducción de la dimensión del fichero
almacenado de N a m
• Ejecutar un 1-NN a dicho fichero reducido
Se toma un caso presentante de cada posible valor,
luego se mide distancias y se asigna la clase del que
tenga distancia más
corta
Basado en el hecho de que la vecindad de un caso
se halla sujeta a dos restricciones:
Debido a la utilización del criterio de distancia, los k
vecinos de un caso X dado deben estar lo más
cerca posible.
Debido al criterio de simetría, su centroide debe
estar lo más cerca posible al caso X.

Se enfoca básicamente en hallar los K vecinos


con centroide más cercano a X
Al inicio no se tomaba en cuenta que no
todas las variables inflluyen de la misma
manera en la predicción de la clase, ni
todos los casos aportan la misma
información.
Suponiendo que los casos (x1, &1).......
(xK.&k) son los k vecinos mas cercanos a
un caso x a clasificar, en un problema de
clasificación con M clases al caso x se le
asignara la clasificación más vota de
entre estos vecinos, teniendo en cuenta
que cada voto viene ponderado por un
peso Wi,1= 1,......,K que no tiene que ser
el mismo para todos.
Para asocias los pesos a los K casos vecinos
se deberia toma en cuenta que:

El voto que aporta un caso dado es


inversamente proporcional a la distancia que
se encuentra de la instancia a clasificar
Voto fijo según el orden de vecindad

Voto ponderado según las prioridades


a priori de las clases a las que
pertenece los datos en caso de
empate. De este modo, en caso de
empate se elige la clase menos
probable, ya que es la que menos peso
tiene.
Consideromos un problema de clasificación en el
que se han tenido en cuenta n varibles predictoras
X1,X2,……,Xn, y que el peso atribuido a cada una
de estas n variables es W1,W2,……,Wn. La
distancia entre dos casos de este problema, x=(x1,
x2,…,xn) e y=(y1, y2,…,yn) se calcula:
El peso asociado a cada variable X viene determinado por la medida
de la información mutua entre ella y la variable a Clasificar C.
Si una variable determina exactamente la clase, la información mutua
entre ambas es proporcional al logaritmo del número de clases,
asuminedo que las instancias de cada una de las clases son
iguelmente frecuentes.
Determinar un conjunto de l pesos fijos,
l<n, y asociarse a cad una de las variables
algunos de estos pesos según el
resultado de algún tipo de test.

l=2
l=3
l=m
El costo computacional asociado a los
algoritmos de clasificación por vecindad viene
influenciado de froma cuadrática por el tamaño
de la base de datos de entrenamiento.

A los casos que forman el subconjunto


resultante de la reducción se los denomina
"prototipos"
Problemas de selección de referencias y se los
resuelve con algortimos de edición o reglas de
edición

Algoritmos de Edición:

Reconocimiento de Patrones

Aprendizaje Automático
Como objetivos de los algoritmos de edición
tenemos:
Reducir el costo computacional asociado a la
aplicación de las reglas de vecindad

Incrementar el poder clasificatorio

Existen 3 aproximaciones cuando se emplea


algoritmos de selección de prototipos

Filtrado de casos

Búsqueda estócastica
La Técnica de selección de
prototipos se suelen clasificar en:
Técnicas encaminadas a eliminar prototipos
erróneamente clasificados del conjunto de
entrenamiento, y a la vez, eliminar los
posibles solapamientos entre regiones de
clases distintas en el espacio de
representación (técnicas de edición)

Técnicas que se centran en seleccionar un


subconjunto suficientemente representativo
del conjunto de prototipos inicial (técnicas
Lleva a la organización de prototipos en
clusters pertenecientes a la misma clase.
Edición de Wilson :

Utiliza la técnica de validación Leaving-


One-Out, que conssite en eliminar todos
aquellos prototipos que resulten mal
clasificados utilizando la regla K-NN.
El principal inconveniente que tiene este
algoritmo s el alto costo computacional.
ENN(Training set T): object set S
1. S=T
2. For each object Oi in S do
a) Find the k nearest neighbors of Oi in S –
{Oi}
b) Remove Oi from S if its label disagrees
with the class
associated with the largest number of k
nearest neighbors
3. Return S
Edición repetitiva:

Aprovecha los agrupamientos mas o


menos compactos que proporciona el
método de edición de Wilson.

No es una mejora significativa ya que


aumenta el costo computacional por
ser repetitivo.
Edición con reetiquetado:

Se basa en reetiquetar determinados


prototipos en función de la zona de
representación en la que se
encuentren.

En casos reales está estrategía no


representa buenos resultados.
Edición con rechazo:

Se lo utiliza no solo en edición sino en


clasificación también.

MM+1
Multiedit:

Se aplica repetidamente el proceso de edición


por partición pero con:

K=1 (1-NN)

Los esquemas de edición basados en


particiones se usan para cojuntos de muestras
amplios.
1. Inicialización: t ←0
2. Repetir hasta que en las últimas t iteraciones
(t>f) no se produzcan ninguna eliminación de
prototipos del conjunto X.
2.1. Asignar a S el resultado de aplicar la
Edición por Partición sobre X utilizando la regla
NN
2.2. Si no se ha producido ninguna nueva
eliminación en el paso 2.1
( X = S ), hacer t ← t+1 e ir al paso 2.
2.3. Asignar a X el contenido de S y hacer t ←0
Se pretende que la reducción de casos no
afecte a la eficacia del clasificador

Condensado de Hart
Condensado Reducido
Nearest Neighbour selectivo
IB2 e IB3
Condensado de Hart:

Define la consistencia con respecto al


conjunto de entrenamiento.

S es consistente con respecto a otro


conjunto D, si al utilizar S como
conjunto de entrenamiento, es posible
clasificar los casos de D
correctamente.
COMIENZO
Como entrada disponemos
La base de entrenamientos D, conteniendo N casos
Inicializar al vacio el subconjunto S de prototipos
PARA cada caso de D, HACER
COMIENZO
SI la clase que le asigna al algoritmo NN
tomando por modelo los prototipos de S es correcta
ENTONCES
No añadir el caso actual S
SINO
Incluir el caso actual en S
FIN
Como salida, se obtiene el subconjunto de prototipos seleccionados, S
FIN
Condensado Reducido

Se pretende eliminar del conjunto


consistente obtenido a partir del
condesado de Hart.

No asegura la consecusión del


algoritmo minimal consistente.
COMIENZO
Como entrada disponemos de:
La base de entrenamientos D, conteniendo N casos
Inicializar al vacio el subconjunto S de prototipos
Inicializar el subconjunto auxiliar T a X
MIENTRAS T sea diferente de S HACER
COMIENZO
Obtener el subconjunto S de prototipo mediante el condensado de Hart sobre T
Aux = S
PARA cada caso de D, HACER
COMIENZO
SI la clase que le asigna al algoritmo NN a todos los casos de T
tomando por modelo los prototipos de S/Xi es correcta
ENTONCES
Eliminar caso actual S
SINO
Mantener el caso actual en S
FIN
T = Aux
FIN
Como salida, se obtiene el subconjunto de prototipos seleccionados, S FIN
FIN
Nearest Neighbour selectivo

El subconjunto que se obtiene es el


subconjunto más pequeño que contiene al
menos una instancia de cada una de las
relaciones de este tipo que aparecen en
el conjunto de entrenamiento.
IB2 e IB3:

IB2 guarda sólo los casos mal clasificados


utilizando el algoritmo NN.

IB3 utiliza instancias aceptables como


prototipos, se selecciona previamente
instancias no ruidosas de la BD y luego se
reduce el conjunto resultante.
Sólo un subconjunto de éstas será utilizado en
el proceso de clasificación.
[1]http://iie.fing.edu.uy/ense/asign/recpat/material/tema3_00-
01/node6.html
[2] Aprendizaje Automático: conceptos básicos y avanzados
(2006), Basilio Sierra Araujo. T. Joachims. Text
categorization with support vector machines: Learning with
many relevant features. In Proceedings of the Tenth
European Conference on Machine Learning (ECML’98) ,
Lecture Notes in Computer Science, Number 1398, pp. 137-
142, 1998.
[3] www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/t9s.pdf
[4] www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/t9knn.pdf
[5] www.nebrija.es/~cmalagon/inco/ejercicios%20y%
20practicas/Ejercicios_knn.pdf

También podría gustarte