Selección de Prototipos Basada en Conjuntos Rugosos Difusos - UGent

SPCAD utiliza los conjuntos rugosos difusos. (CRD, [13]), un modelo híbrido que une la teoría de los conjuntos rugosos [
137KB Größe 5 Downloads 171 Ansichten
Selección de Prototipos Basada en Conjuntos Rugosos Difusos

Nele Verbiest1 , Chris Cornelis1,2 , Francisco Herrera2 1 Universiteit

Gent, Bélgica, {Nele.Verbiest,Chris.Cornelis}@UGent.be de Granada, Espana, ˜ [email protected]

2 Universidad

Abstract En este trabajo abordamos uno de los principales problemas de k vecinos más cercanos (kNN): su sensibilidad al ruido. Llevamos a cabo Selección de Prototipos (SP), es decir, eliminamos instancias ruidosas para mejorar la calidad de la clasificación de k vecinos más cercanos. Concretamente, basándonos en un método existente de selección de instancias basada en conjuntos rugosos difusos, construimos un algoritmo de tipo envoltura que tiene en cuenta la granularidad óptima de la relación difusa de indiscernibilidad en cada conjunto de datos. Llamamos a este método Selección de Prototipos a base de Conjuntos Aproximados Difusos (SPCAD). La comparación del enfoque con el estado del arte en Selección de Prototipos confirma que nuestro método ofrece buenos resultados: supera a todos los métodos de selección de prototipos existentes con respeto a la precisión de la clasificación. Palabras clave: conjuntos rugosos difusos, kNN, selección de prototipos

1.

Introducción

El algoritmo kNN (k vecinos más cercanos ,[10]) es uno de los clasificadores no paramétricos más usados en el campo de minería de datos y de aprendizaje automático. En general, un clasificador dispone de datos de entrenamiento (un sistema de decisión X que consiste en instancias con sus valores de atributos y su clase) e intenta predecir la clase d(t) de una instancia objetivo t. kNN resuelve este problema buscando las k instancias de X más similares a t y asignando t a la clase mayoritaria entre estas k instancias. El clasificador kNN debe su popularidad al hecho de que es simple, fácil de implementar y presenta un sesgo reducido:

para un problema de clasificación con dos clases, la tasa de error de 1NN nunca excederá el doble del error óptimo de Bayes. Sin embargo, kNN tiene algunas desventajas. Uno de sus problemas es la alta dimensionalidad [4]. La selección de características hace frente a este problema seleccionando solo características relevantes y eliminando características redundantes (p.e. [18]). En segundo lugar, kNN necesita mucho almacenamiento: el conjunto de entrenamiento completo tiene que ser almacenado para la clasificación de nuevas instancias. Además, kNN necesita mucho cómputo por que hace falta calcular las similitudes entre la instancia nueva y todas las instancias de entrenamiento. Finalmente, kNN es muy susceptible a los datos ruidosos, ya que considera todos los datos igual de relevantes, no teniendo en cuenta que el conjunto de entrenamiento pueda contener datos incorrectos. La Selección de Prototipos (SP, [14]) hace frente a dichos problemas: reduce el conjunto de entrenamiento para seleccionar los vecinos más cercanos. Se ha realizado mucho trabajo en el campo de métodos de SP; en [15], se presenta una taxonomía extensa de métodos existentes. En primer lugar, podemos distinguir entre los métodos SP basándonos en el tipo de instancias que eliminan. Los métodos de edición quitan instancias ruidosas, mientras que los métodos de condensación principalmente eliminan instancias supérfluas, y los métodos híbridos intentan eliminar ambos tipos de instancias al mismo tiempo. En segundo lugar, los métodos se agrupan en métodos de filtro y de envoltura. En el contexto de SP, los métodos de envoltura utilizan el conjunto entero de entrenamiento X para evaluar un subconjunto de instancias S ⊆ X. La calidad de S se mide clasificando X con una estrategia “leave-oneout”: cada instancia x en X se clasifica buscando vecinos dentro de S \ {x} si x ∈ S y dentro de S en otro caso. Los métodos filtro solo usan datos parciales para decidir si una instancia dada debe ser retenida o eliminada. Por ejemplo, el método CNN selecciona una instancia si la regla 1NN ejecutada con el subconjunto actual de instancias la cla-

Métodos de SP

la región positiva difusa está dado por: α (x) = ´ınf I (RαA (x, y), Rd (x, y)). POSA y∈X

Condensación Filtro CNN[19] MCNN[12] FCNN[2] RNN[17] MSS[3] POP[28] Reconsistent[24]

Híbrido

Edición Filtro

Envoltura

Filtro

Envoltura

RNG[29] MENN[20] AllKNN[31] MoCS[6]

SPCAD

DROP3[33] CPruner[36] HMNEI[25] CCIS[26] IB3[1] ICF[5]

GGA[23, 22] CHC[7] SSMA[16] RMHC[30]

En esta fórmula, I es una implicación difusa y Rd (x, y) = 1 si las instancias x e y tienen la misma decisión y 0 en otro caso. RαA (x, y) mide la indiscernibilidad de las instancias x e y con respeto a los atributos A . Se define por: RαA (x, y) = T (m´ax(0, 1 − αδa (x, y)), | {z } a∈A

Figura 1: Taxonomía de Métodos de SP, incluido SPCAD

sifica mal. En general, los métodos de envoltura son más exactos pero también más lentos que los filtros. En la Figura 1, se representa la taxonomía de SP. Para cada grupo de métodos, se muestran los que tienen mejor desempe˜no. El método que proponemos en este trabajo tiene como objetivo eliminar las instancias ruidosas y lo consigue evaluando la calidad de subconjuntos de instancias sobre el conjunto de entrenamiento completo. Por lo tanto, nuestra propuesta, Selección de Prototipos a base de Conjuntos Rugosos Difusos (SPCAD), es un método de envoltura y de edición. SPCAD utiliza los conjuntos rugosos difusos (CRD, [13]), un modelo híbrido que une la teoría de los conjuntos rugosos [27] que modelan el conocimiento imperfecto y la de los conjuntos difusos [35] que modelan datos imprecisos. La teoría CRD se ha explorado extensamente para la selección de características [9] pero su uso para SP todavía se encuentra en una etapa preliminar. En [21]) se presentó un primer método de selección de instancias basado en la teoría CRD. En este trabajo, extendemos este método y mejoramos su precisión usando un enfoque de envoltura. En la siguiente sección, describimos SPCAD y en la Sección 3, mostramos su buen desempe˜no en problemas reales. Concluimos el trabajo en la sección 4.

2.

Selección de Prototipos Basada en Conjuntos Rugosos Difusos

En lo sucesivo, se considera un sistema de decisión (X, A ∪ {d}), donde X = {x1 , . . . , xn } es un conjunto de instancias, A es un conjunto de atributos {a1 , . . . , am }, y d es el atributo de decisión (no incluido en A ). El valor de la instancia x para el atributo a se denota por a(x) y puede ser continuo (real) o nominal. El atributo de decisión de una instancia x, d(x), siempre es nominal. Sin perdida de generalidad, asumimos que todos los atributos continuos están normalizados: para cada x ∈ X, a(x) ∈ [0, 1]. El nucleo de la teoría CRD es el concepto de región positiva difusa. Para una instancia x ∈ X, el grado de pertenencia a

donde T es una norma triangular (t-norma) y δa es una medida de distancia basada en el atributo a. Nótese que esta definición sigue siendo válida incluso si A contiene más de dos atributos, ya que una t-norma es asociativa y por lo tanto se puede extender a [0, 1]m → [0, 1] inequívocamente. Usamos la siguiente medida de distancia en el caso de un atributo nominal a:  0, si a(x) = a(y) δa (x, y) = 1, en otro caso Si a es continuo, usamos: δa (x, y) = (a(x) − a(y))2 . Como asumimos que todos los atributos continuos están normalizados, RαA producirá un valor entre 0 y 1. El parámetro α ∈ [0, +∞[ se llama la granularidad y expresa lo grandes que las diferencias entre valores de atributos de instancias tienen que ser para poder distinguirse entre ellas. Cuando α es más peque˜no, los valores de atributos de las instancias tendrán que diferenciarse más. Para un α determinado, la región positiva evalua el grado en el que todas las instancias indiscernibles de una instancia x pertenecen a la misma clase. El algoritmo FRIS (Fuzzy Rough Instance Selection, [21]) emplea esta idea y elimina todas las instancias que no pertenecen completamente a la región positiva difusa (POSA (x) < 1). FRIS usa un valor fijo para el parámetro de granularidad α. Sin embargo, los experimentos en [21] mostraban que el desempe˜no de FRIS depende altamente de la elección de α, y que el valor óptimo de α depende del conjunto de datos. Por tanto, SPCAD estima el valor óptimo de α para FRIS usando un enfoque de envoltura. A continuación, escribimos FRISα para denotar el algoritmo FRIS usando α como parámetro de granularidad. Antes de introducir SPCAD, consideramos el siguiente teorema demostrable a partir de la teorïa CRD: Teorema de Granularidad Mínima: Sea I una implicación difusa tal que ∀t ∈ [0, 1], I (t, 0) = 1 − t (se mantiene por ejemplo para las conocidas implicaciones de Łukasiewicz y Kleene-Dienes), y sea x ∈ X.

Entonces si T es el mínimo o el producto:

Algorithm 1 SPCAD 1: input: Sistema de decisión (X, A ∪ {d}) 1 α 2: Calcula α(x1 ), . . . , α(xn ) (x) < 1} = m´ax m (1) sup{α ∈ [0, +∞[|POSA y∈[x] / d 3: Elimina duplicados y ordena los valores de α del paso m´ax δai (x, y) i=1 2: α1 > α2 > . . . > α p 4: opt.alphas ← {∞} y si T es la t-norma de Łukasiewicz: 5: Calcula vecinos más cercanos de todas las instancias 1 α 6: acc.opt ← accuracy(X, A ∪ {d}) (x) < 1} = m´ax m sup{α ∈ [0, +∞[|POSA , y∈[x] / d ∑i=1 δai (x, y) 7: acc.current ← acc.opt (2) 8: for α = α2 , . . . , α p do siempre que los denominadores sean distintos de 0. 9: Elimina instancias x para las que α(x) > α 10: if número de instancias restantes > 1 then Nótese que, en caso de que los denominadores son cero, 11: Recalcula vecinos más cercanos de instancias pasignifica que existen x, y ∈ X tales que ∀a ∈ A , a(x) = ra las que el vecino más cercano actual es elimia(y), pero d(x) 6= d(y). Entonces, para cada α ∈ [0, +∞[, α α nado POSA (x) = POSA (y) = 0. En otras palabras, x e y son eliα 12: Recalcula acc.current minadas por FRIS para cada valor de α. 13: if acc.current > acc.opt then Denotamos por α(x) el valor crítico de x y usamos la nota14: opt.alphas ← {α} ción simbólica ∞ para instancias que siempre están elimi15: else if acc.current = acc.opt then nadas por FRISα , independientemente del valor de α: 16: opt.alphas ← opt.alphas ∪{α}  17: end if ∞ si ∃y ∈ / [x]d , ∀a ∈ A a(x) = a(y) ∀x ∈ X : α(x) = 18: end if sup{α ∈ [0, +∞[|POSAα (x) < 1} en otro caso 19: end for 20: best.alpha = median(opt.alphas) Esto significa que si FRISα se ejecuta con un parámetro 21: Output FRISbest.al pha (X, A ∪ {d}) de granularidad α menor de α(x), elimina la instancia. Por otro lado, si α es mayor o igual a α(x), FRISα conserva la instancia. En el caso especial case donde α(x) = ∞, FRISα siempre elimina x, independientemente de la elección de α. ∀r ∈ R, r < ∞. Por sencillez, asumimos que FRIS∞ devuelve el conjunto de entrenamiento X entero. En la línea 5, Ahora podemos volver a formular el problema de enconse obtiene el vecino más cercano para cada instancia. A trar un valor óptimo de α para FRIS. Asumimos que las continuación, en la línea 6 se calcula el acierto usando el instancias x ∈ X están ordenadas según sus valores α(x): conjunto entero de entrenamiento. En cada ejecución del bucle, las instancias para las que α(x) excede el umbral α(x1 ) ≤ α(x2 ) . . . ≤ α(xn ), actual α se eliminan del conjunto actual de instancias. Nótese que esto equivale a aplicar FRISα . Si el acierto del donde asumimos que ∞ ≤ ∞ y ∀r ∈ R, r < ∞. conjunto de instancias actual es igual o mejor que el mejor El algoritmo FRISα elimina todas las instancias x para acierto encontrado hasta ahora, se actualizan este último las que α < α(x), es decir, existe un índice de división valor y la lista correspondiente de valores α optimales. Fii ∈ {1, . . . , n} tal que las instancias x1 , . . . , xi se conservan y nalmente, el mejor valor de α se calcula como la mediana que las instancias xi+1 , . . . , xn se eliminan. Esto se reduce a de todos los valores óptimos de α values, y se devuelve el aplicar el algoritmo FRISα(xi ) . Significa que encontrar un subconjunto obtenido con FRISbest.al pha . La razón por que buen α ∈ [0, ∞[ para FRISα es equivalente a encontrar un consideramos los valores de α en orden decreciente es que buen α ∈ {α(x1 ), . . . , α(xn )} para FRISα . así podemos implementar este paso de manera eficaz. Los El algoritmo SPCAD explota esta idea. Evalua los subconsubconjuntos de instancias son generados de manera decrejuntos S = {x1 , . . . , xi } de instancias correspondientes a los ciente. Cada vez que se eliminan instancias del subconjunto algoritmos FRISα(xi ) (i = 1, . . . , n) calculando sus precisioactual, solo recalculamos los vecinos más cercanos de las nes en entrenamiento usando leave-one-out. Selecciona los instancias afectadas por esta operación. El criterio de paravalores α que proporcionan un acierto de entrenamiento da en la línea 10 asegura que se puede obtener un vecino máximo. En caso de que distintos valores de α corresponmás cercano para cada instancia; si solo hay una instancia x den al mejor acierto en entrenamiento, tomamos su mediapara la que α(x) = α p , es decir, solo hay una instancia con na. menor valor de α, entonces en la línea 11 el vecino más cercano no se puede obtener para x: el único candidato es En Algoritmo 1, se muestra el esquema final del algoritx pero esta instancia no se puede elegir como vecino más mo. En primer lugar, los valores α(x) se calculan para cacercano de x en la estragía leave-one-out. Por eso, optamos da x ∈ X. Después, se eliminan los valores duplicados y por no considerar este subconjunto {x}. se ordenan los restantes, teniendo en cuenta de nuevo que

Un posible inconveniente del método básico SPCAD es que las fórmulas (1) y (2) para α(x) están basadas en el operador máximo. Esto significa que cambios peque˜nos en los datos pueden alterar los cálculos de manera drástica, y por lo tanto la robustez de la selección de prototipos podría verse afectada. Por tanto, consideramos una generalización del enfoque básico usando operadores de agregación del tipo OWA [34]. Recordemos que, dada una serie de valores a1 , . . . , a p ∈ R y un vector de pesos W = hw1 , . . . , w p i tal que ∀i ∈ 1, . . . , p :

21 métodos de selección de prototipos que tienen mejor desempe˜no entre los diferentes tipos de métodos de SP. Usamos la estrategía de validación cruzada en 10 partes para evaluar el rendimiento de los clasificadores. Para cada parte (datos de test), reducimos las partes restantes (datos de entrenamiento) usando un método de SP determinado, y clasificamos los datos de test con kNN, empleando los datos de entrenamiento reducidos. El rendimiento de SPCAD se compara usando 4 medidas:

p

wi ∈ [0, 1] y ∑ wi = 1, la agregación OWA de estos valoi=1

Precisión (acc): la tasa de instancias de test clasificadas correctamente

p

res se obtiene como [OWAW (a1 , . . . , a p ) = ∑ wi bi , donde i=1

bi = a j si a j es el i-ésimo mayor valor entre a1 , . . . , a p . Es decir, los valores se ordenan y después se extrae un promedio ponderado de estos valores.

Kappa de Cohen (κ) [8]: una medida adicional de precisión, basándose en la matriz de confusión, que compensa los éxitos obtenidos al azar, .

El operador OWA se puede usar para relajar la idea del máximo, haciéndolo menos estricto. Consideremos un vector de pesos Wmax = hw1 , . . . , w p i tal que w1 ≥ w2 . . . ≥ w p , donde valores mayores corresponden a pesos mayores. Se puede usar OWAWmax para calcular los α(x) de cada x ∈ X. Para T = TL , la definición generalizada de α(x) se denota por:

reducción de almacenamiento (red): la fracción de instancias eliminadas del conjunto de entrenamiento

1 , ∀x ∈ X : α OWA (x) = OWAWmax m ∑i=1 δai (x, y) | {z } y∈[x] / d

mientras que para T = TM or T = TP , podemos generalizar la definición de α(x) por: ∀x ∈ X : α OWA (x) = OWAWmax

OWAWmax δai (x, y) | {z } {z

}

La ventaja del operador OWAW es que todos los pesos pueden ser mayores de cero, lo que significa que todos valores pueden influir el resultado de agregación y se pueden resultados más estables. Un posible vector de pesos para una agregación OWA con el comportamiento del máximo puede obtenerse por: ∀i ∈ 1, . . . , p : wi =

3.

2(p − i + 1) . p(p + 1)

(3)

Resultados Experimentales

3.1.

Configuración Experimental

En esta sección estudiamos el rendimiento de SPCAD. Seguimos la configuración experimental del estudio realizado en [15]. Empleamos 58 conjuntos de datos y sus particiones del repositorio KEEL1 y comparamos SPCAD con los 1 http://sci2s.ugr.es/keel/datasets.php

Resultados

.

i=1,...,m

y∈[x] / d

Experimentos2 muestran que SPCAD utilizando TL como t-norma y el enfoque OWA con los pesos definidos como en la ecuación (3) obtienen los mejores resultados. Por lo tanto, empleamos esta configuración para los experimentos. Además, solo experimentamos con el clasificador 1NN. 3.2.

1

|

tiempo de ejecucíon (time): el tiempo de ejecucíon en segundos del método SP. El tiempo de ejecución de la clasificación 1NN posterior no se considera.

En la Tabla 1, se muestran los resultados medios para todos los métodos de SP. De dicha tabla podemos concluir que SPCAD funciona muy bien con respeto a exactitud y Cohen’s kappa. El test de Wilcoxon 3 [32] confirma esta conclusión: comparando SPCAD con cada de los demás métodos SP con respeto a exactitud y kappa, SPCAD siempre los supera con un nivel de α = 0,1 de significancia. Pese a ello, usando el test de Wilcoxon para multiples comparaciones por pares, perdemos el control sobre la verdadera tasa de error, es decir la probabilidad de hacer uno o más discubrimientos falsos entro todas las hipótesis [11]. Por ello, también usamos el test de Friedman y el procedimiento post-hoc de Holm 3 [11], dise˜nado especificamente para comparar multiples hipótesis. Hemos aplicado este test solo para los 9 algoritmos con mejor desempe˜no con respeto a la precisión en test y kappa (AllKNN, CHC, GGA, HMNEI, MoCS, RMHC, RNG, SSMA, FRPS) ya que el test pierde poder si se comparan demasiados algoritmos [11]. 2 No

incluidos en este trabajo debido a restricciones de espacio. Se pueden consultar en: users.ugent.be/~nverbies 3 Las estadísticas de este test se pueden consultar en: users.ugent.be/~nverbies

Test acc. SPCAD SSMA RMHC RNG CHC GGA MoCS HMNEI AllKNN POP MENN RNN MSS FCNN IB3 CNN DROP3 Reconsistent CPruner CCIS MCNN ICF

0.7920 0.7830 0.7777 0.7773 0.7766 0.7733 0.7710 0.7679 0.7662 0.7541 0.7520 0.7519 0.7460 0.7361 0.7347 0.7336 0.7139 0.7083 0.6971 0.6820 0.6819 0.6773

Kappa SPCAD SSMA RMHC HMNEI CHC RNG MoCS GGA AllKNN POP MENN MSS RNN FCNN IB3 CNN DROP3 Reconsistent MCNN ICF CCIS CPruner

0.5942 0.5756 0.5686 0.5644 0.5618 0.5601 0.5575 0.5572 0.5374 0.5298 0.5175 0.5172 0.5100 0.5073 0.5041 0.5026 0.4686 0.4659 0.4407 0.4118 0.4016 0.3894

Red. CHC SSMA MCNN GGA RNN CCIS CPruner RMHC DROP3 ICF IB3 FCNN CNN Reconsistent HMNEI MSS MENN SPCAD AllKNN RNG MoCS POP

0.9788 0.9653 0.9373 0.9301 0.9284 0.9213 0.9070 0.9010 0.8452 0.7452 0.7197 0.6638 0.6187 0.5886 0.5464 0.4750 0.4507 0.3557 0.3180 0.2081 0.1113 0.0767

Time POP CNN MCNN FCNN MSS CCIS MoCS AllKNN MENN SPCAD ICF HMNEI IB3 CPruner Reconsistent RNG SSMA CHC DROP3 RMHC GGA RNN

0.0620 0.2757 1.5016 2.3161 2.5574 4.1314 5.1014 8.1177 12.1973 27.6379 30.4970 66.5790 185.2876 194.9527 534.1992 616.2494 2084.4178 2244.7731 2296.5474 3962.0273 6965.3978 8030.0853

Cuadro 1: Resultados medios de SPCAD y de los algoritmos del estado del arte de SP Todos los métodos salvo RNG son significativamente peores que SPCAD con respeto a la precisión en test. Con respeto a kappa, SPCAD claramente supera a todos los demás algoritmos SP considerados.

[2] F. Angiulli. Fast nearest neighbor condensation for large data sets classification. IEEE Transactions on Knowledge and Data Engineering, 19(11):1450– 1464, 2007.

La tasa de reducción de SPCAD es similar a la de los demás métodos de edición. El tiempo de ejecución de SPCAD es aceptable: SPCAD es mucho más rápido que los demás métodos de envoltura, pero más lento que algunos de los filtros. Esto es interesante: SPCAD es un método de envoltura, pero su naturaleza decremental permite una implementación eficaz, lo que resulta en un tiempo de ejecución bastante bajo.

[3] R. Barandela, F. J. Ferri, and J. S. Sanchez. Decision boundary preserving prototype selection for nearest neighbor classification. International Journal of Pattern Recognition and Artificial Intellgence, 19:787– 806, 2005.

4.

Conclusión y Trabajo Futuro

En este artículo hemos presentado un nuevo método de selección de prototipos, SPCAD. Este método de preprocesamiento elimina instancias ruidosas e intenta mejorar el rendimiento del clasificador kNN. Hemos comparado SPCAD con 21 algoritmos del estado del arte de SP para 58 conjuntos de datos. Los resultados obtenidos muestran un rendimiento excelente: SPCAD supera a todos los algoritmos significativamente con respeto a precisión y kappa. Para mejorar la tasa de reducción de SPCAD, planeamos combinarlo con métodos de condensación para desarrollar un algoritmo híbrido de selección de prototipos basado en conjuntos aproximados difusos. Además, dado que kNN es susceptible a los datos de alta dimensionalidad, planeamos abordar dicho problema combinando SPCAD con selección de características.

Referencias [1] David W. Aha and Dennis Kibler. Instance-based learning algorithms. In Machine Learning, pages 37– 66, 1991.

[4] K. S. Beyer, J. Goldstein, R. Ramakrishnan, and U. Shaft. When is nearest neighbor meaningful? In 7th International Conference of Database theory (ICDT), pages 217–235, 1999. [5] Henry Brighton and Chris Mellish. Advances in instance selection for instance-based learning algorithms. Data Mining and Knowledge Discovery, 6:153–172, 2002. [6] Carla E. Brodley. Recursive automatic bias selection for classifier construction. Machine Learning, 20:63– 94, 1995. [7] J. R. Cano, F. Herrera, and M. Lozano. Using evolutionary algorithms as instance selection for data reduction in kdd: an experimental study. IEEE Transactions on Evolutionary Computation, 7(6):561–575, 2003. [8] Jacob Cohen. A Coefficient of Agreement for Nominal Scales. Educational and Psychological Measurement, 20:37–46, 1960. [9] C. Cornelis, R. Jensen, G. Hurtado, and D. Slezak. Attribute selection with fuzzy decision reducts. Information Sciences, 180(2):209–224, 2010. [10] T. Cover and P. Hart. Nearest neighbor pattern classification. IEEE Transactions on Information Theory, 13(1):21–27, 1967.

[11] Joaquín Derrac, Salvador García, Daniel Molina, and Francisco Herrera. A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms. Swarm and Evolutionary Computation, 1(1):3–18, 2011. [12] V. Susheela Devi and M. Narasimha Murty. An incremental prototype set building technique. Pattern Recognition, 35(2):505–513, 2002. [13] D. Dubois and H. Prade. Rough fuzzy sets and fuzzy rough sets. International Journal of General Systems, 17:191–209, 1990. [14] Robert P. W. Duin and Pavel Paclík. Prototype selection for dissimilarity-based classifiers. Pattern Recognition, 39:189–208, 2006. [15] S. García, J. Derrac, J.R. Cano, and F. Herrera. Prototype selection for nearest neighbor classification: Taxonomy and empirical study. To appear in: IEEE Transactions on Pattern Analysis and Machine Intelligence. [16] Salvador García, José Ramón Cano, and Francisco Herrera. A memetic algorithm for evolutionary prototype selection: A scaling up approach. Pattern Recognition, 41:2693–2709, 2008. [17] G. Gates. The reduced nearest neighbor rule. IEEE Transactions on Information Theory, 18(3):431–433, 1972. [18] Isabelle Guyon and André Elisseeff. An introduction to variable and feature selection. Journal of Machine Learning Research, 3:1157–1182, 2003.

[24] M. T. Lozano, J. S. Sanchez, and F. Pla. Using the geometrical distribution of prototypes for training set condensing, volume 3040. 2003. [25] Elena Marchiori. Hit miss networks with applications to instance selection. Journal of Machine Learning Research, 9:997–1017, 2008. [26] Elena Marchiori. Class conditional nearest neighbor for large margin instance selection. IEEE Transactions on Pattern Analysis and Machine Intelligence, 32:364–370, 2010. [27] Z. Pawlak. Rough sets. International Journal of Computer Information Science, 11:341–356, 1982. [28] J.C. Riquelme, J.S. Aguilar-Ruiz, Jesus S. Aguilarruiz, and M. Toro. Finding representative patterns with ordered projections. Pattern Recognition, 36(4):1009–1018, 2003. [29] J. S. Sánchez, F. Pla, and F. J. Ferri. Prototype selection for the nearest neighbour rule through proximity graphs. Pattern Recognition Letters, 18:507– 513, 1997. [30] David B. Skalak. Prototype and feature selection by sampling and random mutation hill climbing algorithms. In Machine Learning: Proceedings of the Eleventh International Conference, pages 293–301, 1994. [31] I. Tomek. An experiment with the edited nearestneighbor rule. IEEE Transactions on Systems, Man and Cybernetics, 6(6):448–452, 1976. [32] F. Wilcoxon. Individual comparisons by ranking methods. Biometrics Bulletin, (6):80–83, 1945.

[19] P. E. Hart. The condensed nearest neighbor rule. IEEE Transactions on Information Theory, 18:515– 516, 1968.

[33] D. Randall Wilson and Tony R. Martinez. Reduction techniques for instance-based learning algorithms. Machine Learning, 38:257–286, 2000.

[20] Kazuo Hattori and Masahito Takahashi. A new edited k-nearest neighbor rule in the pattern classification problem. Pattern Recognition, 32:521–528, 2000.

[34] Ronald R. Yager. On ordered weighted averaging aggregation operators in multicriteria decisionmaking. IEEE Transactions on Systems, Man and Cybernetics, 18:183–190, 1988.

[21] R. Jensen and C. Cornelis. Fuzzy-rough instance selection. In Proceedings of the 19th International Conference on Fuzzy Systems (FUZZ-IEEE 2010), pages 1–7, 2010. [22] Ludmila I. Kuncheva. Editing for the k-nearest neighbors rule by a genetic algorithm. Pattern Recognition Letters, 16(8):809–814, 1995. [23] Ludmila I. Kuncheva and Lakhmi C. Jain. Nearest neighbor classifier: Simultaneous editing and feature selection. Pattern Recognition Letters, 20:1149– 1156, 1999.

[35] L.A. Zadeh. Fuzzy sets. Information Control, 8:338– 353, 1965. [36] Ke-Ping Zhao, Shui-Geng Zhou, Ji-Hong Guan, and Ao-Ying Zhou. C-pruner: an improved instance pruning algorithm. In International Conference on Machine Learning and Cybernetics, volume 1, pages 94– 99, 2003.