En el aprendizaje automático , la clasificación de múltiples etiquetas y el problema fuertemente relacionado de la clasificación de múltiples salidas son variantes del problema de clasificación donde se pueden asignar múltiples etiquetas a cada instancia. La clasificación de múltiples etiquetas es una generalización de la clasificación de múltiples clases, que es el problema de una sola etiqueta de categorizar instancias precisamente en una de más de dos clases; en el problema de etiquetas múltiples, no hay ninguna restricción sobre cuántas de las clases se puede asignar a la instancia.
Formalmente, la clasificación de etiquetas múltiples es el problema de encontrar un modelo que mapee las entradas x a los vectores binarios y (asignando un valor de 0 o 1 para cada elemento (etiqueta) en y ).
Métodos de transformación de problemas
Existen varios métodos de transformación de problemas para la clasificación de múltiples etiquetas, y se pueden dividir a grandes rasgos en:
- Transformación en problemas de clasificación binaria : el enfoque de línea de base, llamado método de relevancia binaria , [1] equivale a entrenar de forma independiente un clasificador binario para cada etiqueta. Dada una muestra invisible, el modelo combinado predice todas las etiquetas para esta muestra para las cuales los clasificadores respectivos predicen un resultado positivo. Aunque este método de dividir la tarea en múltiples tareas binarias puede parecerse superficialmente a los métodos uno contra todos (OvA) y uno contra el resto (OvR) para la clasificación multiclase , es esencialmente diferente de ambos, porque un solo clasificador bajo relevancia binaria trata con una sola etiqueta, sin tener en cuenta otras etiquetas en absoluto. Una cadena de clasificadores es un método alternativo para transformar un problema de clasificación de etiquetas múltiples en varios problemas de clasificación binaria. Se diferencia de la relevancia binaria en que las etiquetas se predicen secuencialmente y la salida de todos los clasificadores anteriores (es decir, positiva o negativa para una etiqueta en particular) se ingresa como características a los clasificadores posteriores. [1] Se han aplicado cadenas de clasificación, por ejemplo, en la predicción de la resistencia a los medicamentos contra el VIH . [2] [3] La red bayesiana también se ha aplicado para ordenar clasificadores de manera óptima en cadenas de clasificadores . [4]
- Transformación en un problema de clasificación de clases múltiples : la transformación del conjunto de potencias de etiquetas (LP) crea un clasificador binario para cada combinación de etiquetas presente en el conjunto de entrenamiento. Por ejemplo, si las posibles etiquetas para un ejemplo fueran A, B y C, la representación del conjunto de potencias de etiquetas de este problema es un problema de clasificación de clases múltiples con las clases [0 0 0], [1 0 0], [0 1 0 ], [0 0 1], [1 1 0], [1 0 1], [0 1 1]. [1 1 1] donde, por ejemplo, [1 0 1] indica un ejemplo en el que las etiquetas A y C están presentes y la etiqueta B está ausente. [5]
- Métodos de conjunto : se puede utilizar un conjunto de clasificadores de varias clases para crear un clasificador de conjunto de varias etiquetas. Para un ejemplo dado, cada clasificador genera una sola clase (correspondiente a una sola etiqueta en el problema de múltiples etiquetas). Estas predicciones se combinan luego mediante un método de conjunto, generalmente un esquema de votación en el que cada clase que recibe un porcentaje requerido de votos de clasificadores individuales (a menudo denominado umbral de discriminación [6] ) se predice como una etiqueta presente en la etiqueta múltiple. producción. Sin embargo, existen métodos conjuntos más complejos, como las máquinas de comité . Otra variación es elalgoritmo de k -labelsetsaleatorios(RAKEL), que utiliza múltiples clasificadores LP, cada uno entrenado en un subconjunto aleatorio de las etiquetas reales; la predicción de etiquetas se lleva a cabo mediante un esquema de votación. [7] Un conjunto de clasificadores de etiquetas múltiples se puede utilizar de manera similar para crear un clasificador de conjuntos de etiquetas múltiples. En este caso, cada clasificador vota una vez por cada etiqueta que predice en lugar de una sola etiqueta.
Algoritmos adaptados
Algunos algoritmos / modelos de clasificación se han adaptado a la tarea de múltiples etiquetas, sin requerir transformaciones de problemas. Ejemplos de estos, incluso para datos de etiquetas múltiples.
- k vecinos más cercanos : el algoritmo ML-kNN extiende el clasificador k-NN a datos de etiquetas múltiples. [8]
- árboles de decisión : "Clare" es un algoritmo C4.5 adaptado para la clasificación de etiquetas múltiples; la modificación implica los cálculos de entropía. [9] MMC, MMDT y SSC El MMDT refinado puede clasificar datos con múltiples etiquetas basándose en atributos de múltiples valores sin transformar los atributos en valores únicos. También se denominan métodos de clasificación de árboles de decisión con múltiples valores y múltiples etiquetas. [10] [11] [12]
- métodos del kernel para la salida de vectores
- Redes neuronales : BP-MLL es una adaptación del popular algoritmo de retropropagación para el aprendizaje de múltiples etiquetas. [13]
Paradigmas de aprendizaje
Según los paradigmas de aprendizaje, las técnicas de clasificación de etiquetas múltiples existentes se pueden clasificar en aprendizaje por lotes y aprendizaje automático en línea . Los algoritmos de aprendizaje por lotes requieren que todas las muestras de datos estén disponibles de antemano. Entrena el modelo usando todos los datos de entrenamiento y luego predice la muestra de prueba usando la relación encontrada. Los algoritmos de aprendizaje en línea, por otro lado, construyen incrementalmente sus modelos en iteraciones secuenciales. En la iteración t, un algoritmo en línea recibe una muestra, x t y predice su (s) etiqueta (s) ŷ t utilizando el modelo actual; luego, el algoritmo recibe y t , la etiqueta o etiquetas verdaderas de x t y actualiza su modelo en función del par muestra-etiqueta: (x t , y t ).
Clasificación de flujo de etiquetas múltiples
Los flujos de datos son posiblemente secuencias infinitas de datos que crecen de forma continua y rápida con el tiempo. [14] La clasificación de flujo de etiquetas múltiples (MLSC) es la versión de la tarea de clasificación de etiquetas múltiples que tiene lugar en los flujos de datos. A veces también se denomina clasificación de etiquetas múltiples en línea. Las dificultades de la clasificación de etiquetas múltiples (número exponencial de posibles conjuntos de etiquetas, captura de dependencias entre etiquetas) se combinan con las dificultades de los flujos de datos (restricciones de tiempo y memoria, abordar el flujo infinito con medios finitos, deriva de conceptos ).
Muchos métodos MLSC recurren a métodos de conjunto para aumentar su rendimiento predictivo y lidiar con las desviaciones de conceptos. A continuación se muestran los métodos de conjunto más utilizados en la literatura:
- Métodos basados en empaquetado en línea (OzaBagging [15] ) : observar la probabilidad de tener K muchos de un determinado punto de datos en una muestra de arranque es aproximadamente Poisson (1) para grandes conjuntos de datos, cada instancia de datos entrantes en un flujo de datos se puede ponderar proporcionalmente a la distribución de Poisson (1) para imitar el bootstrapping en un entorno en línea. Esto se llama Embolsado en Línea (OzaBagging). En la literatura se proponen muchos métodos de etiquetas múltiples que utilizan el ensacado en línea, cada uno de los cuales utiliza diferentes métodos de transformación de problemas. EBR, [1] ECC, [1] EPS, [16] E B RT, [17] E B MT, [17] ML-Random Rules [18] son ejemplos de tales métodos.
- Métodos basados en ADWIN Bagging [19] : Los métodos de ensacado en línea para MLSC a veces se combinan con mecanismos explícitos de detección de deriva de conceptos como ADWIN [20] (ventana adaptable). ADWIN mantiene una ventana de tamaño variable para detectar cambios en la distribución de los datos y mejora el conjunto al restablecer los componentes que funcionan mal cuando hay una desviación en los datos entrantes. Generalmente, la letra 'a' se usa como subíndice en el nombre de dichos conjuntos para indicar el uso del detector de cambios ADWIN. E a BR, [19] E a CC, [19] E a HT PS [19] son ejemplos de estos conjuntos de etiquetas múltiples.
- GOOWE-ML [21] métodos basados en : Interpretación de las puntuaciones de importancia de cada componente del conjunto como vectores en el espacio de etiqueta y la solución de un problema de mínimos cuadrados en el extremo de cada lote, Geométricamente-Optimum Online-Weighted Ensemble para Multi-etiqueta Se propone la clasificación (GOOWE-ML). El conjunto intenta minimizar la distancia entre la predicción ponderada de sus componentes y el vector de verdad del terreno para cada instancia de un lote. A diferencia del ensacado en línea y el ensacado ADWIN, GOOWE-ML utiliza un esquema de votación ponderado en el que se da más peso a los componentes de mejor desempeño del conjunto. El conjunto GOOWE-ML crece con el tiempo y el componente de menor peso se reemplaza por un nuevo componente cuando está lleno al final de un lote. GOBR, [21] GOCC, [21] GOPS, [21] GORT [21] son los conjuntos de etiquetas múltiples basados en GOOWE-ML propuestos.
- Múltiples ventanas [22] : Aquí, los modelos BR que usan una ventana deslizante se reemplazan con dos ventanas para cada etiqueta, una para los ejemplos relevantes y otra para los no relevantes. Las instancias están sobremuestreadas o submuestreadas según un factor de carga que se mantiene entre estas dos ventanas. Esto permite detectar desviaciones de concepto que son independientes para cada etiqueta y manejar el desequilibrio de clases (asimetría en los ejemplos relevantes y no relevantes).
Estadísticas y métricas de evaluación
Considerando para ser un conjunto de etiquetas para muestra de datos (no lo confunda con un vector único; es simplemente una colección de todas las etiquetas que pertenecen a esta muestra), la medida en que un conjunto de datos es de etiquetas múltiples se puede capturar en dos estadísticas:
- La cardinalidad de la etiqueta es el número medio de etiquetas por ejemplo en el conjunto: dónde es el número total de muestras de datos;
- La densidad de etiquetas es el número de etiquetas por muestra dividido por el número total de etiquetas, promediado sobre las muestras: dónde , el número total de clases disponibles (que es el número máximo de elementos que pueden componer ).
Las métricas de evaluación para el rendimiento de la clasificación de múltiples etiquetas son inherentemente diferentes de las utilizadas en la clasificación de múltiples clases (o binaria), debido a las diferencias inherentes del problema de clasificación. Si T denota el verdadero conjunto de etiquetas para una muestra determinada y P el conjunto previsto de etiquetas, entonces se pueden definir las siguientes métricas en esa muestra:
- Pérdida de Hamming : la fracción de etiquetas incorrectas respecto al número total de etiquetas, es decir, dónde es el objetivo, es la predicción, y es el operador "Exclusivo o" que devuelve cero cuando el objetivo y la predicción son idénticos y uno en caso contrario. Esta es una función de pérdida , por lo que el valor óptimo es cero y su límite superior es uno.
- El índice de Jaccard estrechamente relacionado , también llamado Intersección sobre Unión en la configuración de etiquetas múltiples, se define como el número de etiquetas predichas correctamente dividido por la unión de etiquetas predichas y verdaderas,, dónde y son conjuntos de etiquetas predichas y etiquetas verdaderas respectivamente.
- Precisión, recuerdo y F 1 {\ Displaystyle F_ {1}} puntuación : la precisión es, recordar es , y es su media armónica . [23]
- Coincidencia exacta (también llamada precisión de subconjunto): es la métrica más estricta, que indica el porcentaje de muestras que tienen todas sus etiquetas clasificadas correctamente.
La validación cruzada en entornos de etiquetas múltiples se complica por el hecho de que la forma ordinaria (binaria / multiclase) de muestreo estratificado no funcionará; Se han sugerido formas alternativas de muestreo estratificado aproximado. [24]
Implementaciones y conjuntos de datos
Las implementaciones Java de algoritmos de etiquetas múltiples están disponibles en los paquetes de software Mulan y Meka , ambos basados en Weka .
El paquete de Python de scikit-learn implementa algunos algoritmos y métricas de etiquetas múltiples .
El paquete de Python scikit-multilearn se adapta específicamente a la clasificación de etiquetas múltiples. Proporciona implementación de múltiples etiquetas de varias técnicas conocidas, incluidas SVM, kNN y muchas más . El paquete está construido sobre el ecosistema scikit-learn .
El método de relevancia binaria, las cadenas de clasificadores y otros algoritmos de etiquetas múltiples con una gran cantidad de aprendices base diferentes se implementan en el paquete R mlr [25]
En el sitio web de Mulan se encuentra disponible una lista de conjuntos de datos de etiquetas múltiples de uso común .
Ver también
- Clasificación multiclase
- Aprendizaje de instancias múltiples
- Predicción estructurada
- vida útil de la correlación
Referencias
- ^ a b c d Jesse Read, Bernhard Pfahringer, Geoff Holmes, Eibe Frank. Cadenas clasificadoras para clasificación de etiquetas múltiples . Diario de aprendizaje automático. Saltador. Vol. 85 (3), (2011).
- ^ Heider, D; Senge, R; Cheng, W; Hüllermeier, E (2013). "Clasificación de múltiples etiquetas para explotar la información de resistencia cruzada en la predicción de resistencia a fármacos del VIH-1" . Bioinformática . 29 (16): 1946–52. doi : 10.1093 / bioinformatics / btt331 . PMID 23793752 .
- ^ Riemenschneider, M; Senge, R; Neumann, U; Hüllermeier, E; Heider, D (2016). "Explotación de la información de resistencia cruzada de la proteasa y transcriptasa inversa del VIH-1 para una mejor predicción de la resistencia a los medicamentos mediante la clasificación de múltiples etiquetas" . Minería de Biodatos . 9 : 10. doi : 10.1186 / s13040-016-0089-1 . PMC 4772363 . PMID 26933450 .
- ^ Soufan, Othman; Ba-Alawi, Wail; Afeef, Moataz; Essack, Magbubah; Kalnis, Panos; Bajic, Vladimir B. (10 de noviembre de 2016). "DRABAL: método novedoso para extraer grandes ensayos de detección de alto rendimiento utilizando aprendizaje activo bayesiano" . Revista de Cheminformatics . 8 : 64. doi : 10.1186 / s13321-016-0177-8 . ISSN 1758-2946 . PMC 5105261 . PMID 27895719 .
- ^ Spolaôr, Newton; Cherman, Everton Alvares; Monard, María Carolina; Lee, Huei Diana (marzo de 2013). "Una comparación de métodos de selección de características de etiquetas múltiples utilizando el enfoque de transformación de problemas" . Notas electrónicas en informática teórica . 292 : 135-151. doi : 10.1016 / j.entcs.2013.02.010 . ISSN 1571-0661 .
- ^ "Umbral de discriminación - documentación de Yellowbrick 0.9" . www.scikit-yb.org . Consultado el 29 de noviembre de 2018 .
- ^ Tsoumakas, Grigorios; Vlahavas, Ioannis (2007). Aleatorio k -labelsets: Un método de conjunto para la clasificación multietiqueta (PDF) . ECML. Archivado desde el original (PDF) el 29 de julio de 2014 . Consultado el 26 de julio de 2014 .
- ^ Zhang, ML; Zhou, ZH (2007). "ML-KNN: un enfoque de aprendizaje perezoso para el aprendizaje de múltiples etiquetas". Reconocimiento de patrones . 40 (7): 2038-2048. CiteSeerX 10.1.1.538.9597 . doi : 10.1016 / j.patcog.2006.12.019 .
- ^ Madjarov, Gjorgji; Kocev, Dragi; Gjorgjevikj, Dejan; Džeroski, Sašo (2012). "Una amplia comparación experimental de métodos para el aprendizaje de múltiples etiquetas". Reconocimiento de patrones . 45 (9): 3084–3104. doi : 10.1016 / j.patcog.2012.03.004 .
- ^ Chen, Yen-Liang; Hsu, Chang-Ling; Chou, Shih-chieh (2003). "Construcción de un árbol de decisiones con múltiples valores y múltiples etiquetas". Sistemas expertos con aplicaciones . 25 (2): 199–209. doi : 10.1016 / S0957-4174 (03) 00047-2 .
- ^ Chou, Shihchieh; Hsu, Chang-Ling (1 de mayo de 2005). "MMDT: un clasificador de árbol de decisión de múltiples valores y múltiples etiquetas para la minería de datos". Sistemas expertos con aplicaciones . 28 (4): 799–812. doi : 10.1016 / j.eswa.2004.12.035 .
- ^ Li, Hong; Guo, Yue-jian; Wu, Min; Li, Ping; Xiang, Yao (1 de diciembre de 2010). "Combinar la descomposición de atributos de valores múltiples con el aprendizaje de etiquetas múltiples". Sistemas expertos con aplicaciones . 37 (12): 8721–8728. doi : 10.1016 / j.eswa.2010.06.044 .
- ^ Zhang, ML; Zhou, ZH (2006). Redes neuronales de múltiples etiquetas con aplicaciones para genómica funcional y categorización de texto (PDF) . Transacciones IEEE sobre conocimiento e ingeniería de datos. 18 . págs. 1338-1351.
- ^ Aggarwal, Charu C., ed. (2007). Flujos de datos . Avances en sistemas de bases de datos . 31 . doi : 10.1007 / 978-0-387-47534-9 . ISBN 978-0-387-28759-1.
- ^ Oza, Nikunj (2005). "Embolsado e Impulso en Línea". Conferencia Internacional IEEE sobre Sistemas, Hombre y Cibernética . hdl : 2060/20050239012 .
- ^ Lee, Jesse; Pfahringer, Bernhard; Holmes, Geoff (15 de diciembre de 2008). Clasificación de etiquetas múltiples usando conjuntos de conjuntos podados . Sociedad de Informática IEEE. págs. 995–1000. doi : 10.1109 / ICDM.2008.74 . hdl : 10289/8077 . ISBN 9780769535029. S2CID 16059274 .
- ^ a b Osojnik, Aljaź; Panov, PanăźE; DźEroski, Sašo (1 de junio de 2017). "Clasificación de etiquetas múltiples mediante regresión de múltiples objetivos en flujos de datos" . Aprendizaje automático . 106 (6): 745–770. doi : 10.1007 / s10994-016-5613-5 . ISSN 0885-6125 .
- ^ Sousa, Ricardo; Gama, João (24 de enero de 2018). "Clasificación de etiquetas múltiples de flujos de datos de alta velocidad con reglas de modelo adaptativo y reglas aleatorias". Avances en Inteligencia Artificial . 7 (3): 177–187. doi : 10.1007 / s13748-018-0142-z . ISSN 2192-6352 . S2CID 32376722 .
- ^ a b c d Lee, Jesse; Bifet, Albert; Holmes, Geoff; Pfahringer, Bernhard (21 de febrero de 2012). "Clasificación multi-etiqueta escalable y eficiente para flujos de datos en evolución" . Aprendizaje automático . 88 (1–2): 243–272. doi : 10.1007 / s10994-012-5279-6 . ISSN 0885-6125 .
- ^ Bifet, Albert; Gavaldà, Ricard (2007-04-26), "Learning from Time-Changing Data with Adaptive Windowing", Actas de la Conferencia Internacional SIAM 2007 sobre Minería de Datos , Sociedad de Matemáticas Industriales y Aplicadas, págs. 443–448, CiteSeerX 10.1. 1.215.8387 , doi : 10.1137 / 1.9781611972771.42 , ISBN 9780898716306
- ^ a b c d e Büyükçakir, Alican; Bonab, Hamed; Can, Fazli (17 de octubre de 2018). Un novedoso conjunto apilado en línea para la clasificación de flujos de etiquetas múltiples . ACM. págs. 1063–1072. arXiv : 1809.09994 . doi : 10.1145 / 3269206.3271774 . ISBN 9781450360142. S2CID 52843253 .
- ^ Xioufis, Eleftherios Spyromitros; Spiliopoulou, Myra; Tsoumakas, Grigorios; Vlahavas, Ioannis (16 de julio de 2011). Lidiar con la deriva del concepto y el desequilibrio de clases en la clasificación de flujos de etiquetas múltiples . AAAI Press. págs. 1583-1588. doi : 10.5591 / 978-1-57735-516-8 / IJCAI11-266 . ISBN 9781577355144.
- ^ Godbole, Shantanu; Sarawagi, Sunita (2004). Métodos discriminatorios para la clasificación de múltiples etiquetas (PDF) . Avances en el descubrimiento del conocimiento y la minería de datos. págs. 22-30.
- ^ Sechidis, Konstantinos; Tsoumakas, Grigorios; Vlahavas, Ioannis (2011). Sobre la estratificación de datos de múltiples etiquetas (PDF) . ECML PKDD . págs. 145-158.
- ^ Philipp Probst, Quay Au, Giuseppe Casalicchio, Clemens Stachl, Bernd Bischl. Clasificación Multilabel con Paquete R mlr . The R Journal (2017) 9: 1, páginas 352-369.
Otras lecturas
- Madjarov, Gjorgji; Kocev, Dragi; Gjorgjevikj, Dejan; Džeroski, Sašo (2012). "Una amplia comparación experimental de métodos para el aprendizaje de múltiples etiquetas". Reconocimiento de patrones . 45 (9): 3084–3104. doi : 10.1016 / j.patcog.2012.03.004 .