En el aprendizaje automático , la clasificación multietiqueta o clasificación multisalida es una variante del problema de clasificación donde se pueden asignar múltiples etiquetas no excluyentes a cada instancia. La clasificación multietiqueta es una generalización de la clasificación multiclase , que es el problema de etiqueta única de categorizar instancias en una de varias (o más de dos) clases. En el problema multietiqueta, las etiquetas no son excluyentes y no hay restricciones sobre a cuántas clases se puede asignar la instancia. La formulación del aprendizaje multietiqueta fue introducida por primera vez por Shen et al. en el contexto de la clasificación de escenas semánticas, [ 1 ] [ 2 ] y posteriormente ganó popularidad en diversas áreas del aprendizaje automático.
Formalmente, la clasificación multietiqueta es el problema de encontrar un modelo que mapee las entradas x a vectores binarios y ; es decir, que asigne un valor de 0 o 1 a 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 multietiqueta, que pueden dividirse a grandes rasgos en:
Transformación en problemas de clasificación binaria
El enfoque de referencia, denominado método de relevancia binaria , [ 3 ] consiste en entrenar de forma independiente un clasificador binario para cada etiqueta. Dado una muestra no vista, 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 único clasificador bajo relevancia binaria trata una sola etiqueta, sin tener en cuenta ninguna otra etiqueta. Una cadena de clasificadores es un método alternativo para transformar un problema de clasificación multietiqueta 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, positivo o negativo para una etiqueta particular) se introduce como características para los clasificadores subsiguientes. [ 3 ] Las cadenas de clasificadores se han aplicado, por ejemplo, en la predicción de la resistencia a los fármacos contra el VIH . [ 4 ] [ 5 ] La red bayesiana también se ha aplicado para ordenar de forma óptima los clasificadores en cadenas de clasificadores . [ 6 ]
En caso de transformar el problema en múltiples clasificaciones binarias, la función de verosimilitud se lee: donde índicerecorre las muestras, índicecorre sobre las etiquetas,indica los resultados binarios 0 o 1,indica el delta de Kronecker ,indica las múltiples etiquetas codificadas en caliente de la muestra.
Transformación en un problema de clasificación multiclase
La transformación de conjunto de potencia 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 de conjunto de potencia de etiquetas de este problema es un problema de clasificación multiclase con las clases [0 0 0], [1 0 0], [0 1 0], [0 0 1], [1 1 0], [1 0 1], [0 1 1] y [1 1 1], donde, por ejemplo, [1 0 1] denota un ejemplo en el que las etiquetas A y C están presentes y la etiqueta B está ausente. [ 7 ]
Un conjunto de clasificadores multiclase puede utilizarse para crear un clasificador de conjunto multietiqueta. En un ejemplo dado, cada clasificador produce una única clase (que corresponde a una única etiqueta en el problema multietiqueta). Estas predicciones se combinan mediante un método de conjunto, generalmente un esquema de votación donde cada clase que recibe un porcentaje requerido de votos de los clasificadores individuales (a menudo denominado umbral de discriminación [ 8 ] ) se predice como una etiqueta presente en la salida multietiqueta. Sin embargo, existen métodos de conjunto más complejos, como las máquinas de comité . Otra variante es el algoritmo de conjuntos de k etiquetas aleatorias (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. [ 9 ] Un conjunto de clasificadores multietiqueta puede utilizarse de forma similar para crear un clasificador de conjunto multietiqueta. En este caso, cada clasificador vota una vez por cada etiqueta que predice, en lugar de por una sola etiqueta.
Algoritmos adaptados
Algunos algoritmos/modelos de clasificación se han adaptado a la tarea de etiquetas múltiples, sin necesidad de transformaciones del problema. Ejemplos de estos, incluidos los utilizados para datos de etiquetas múltiples, son:
- k-vecinos más cercanos : el algoritmo ML-kNN extiende el clasificador k-NN a datos multietiqueta. [ 10 ]
- Árboles de decisión : "Clare" es un algoritmo C4.5 adaptado para la clasificación multietiqueta; la modificación implica los cálculos de entropía. [ 11 ] MMC, MMDT y SSC, una versión refinada de MMDT, pueden clasificar datos multietiquetados basándose en atributos multivalorados sin transformar los atributos en valores únicos. También se les denomina métodos de clasificación de árboles de decisión multivalorados y multietiquetados. [ 12 ] [ 13 ] [ 14 ]
- métodos de kernel para salida vectorial
- redes neuronales : BP-MLL es una adaptación del popular algoritmo de retropropagación para el aprendizaje multietiqueta. [ 15 ]
paradigmas de aprendizaje
Basándose en paradigmas de aprendizaje, las técnicas de clasificación multietiqueta 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. Entrenan el modelo utilizando todos los datos de entrenamiento y luego predicen la muestra de prueba utilizando 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(s) etiqueta(s) verdadera(s) de x t y actualiza su modelo basándose en el par muestra-etiqueta: (x t , y t ).
Clasificación de flujos con múltiples etiquetas
Los flujos de datos son secuencias posiblemente infinitas de datos que crecen de forma continua y rápida con el tiempo. [ 16 ] La clasificación de flujos multietiqueta (MLSC) es la versión de la tarea de clasificación multietiqueta que se lleva a cabo en flujos de datos. A veces también se la denomina clasificación multietiqueta en línea. Las dificultades de la clasificación multietiqueta (número exponencial de conjuntos de etiquetas posibles, captura de dependencias entre etiquetas) se combinan con las dificultades de los flujos de datos (restricciones de tiempo y memoria, direccionamiento de flujos infinitos con medios finitos, derivas conceptuales ).
Muchos métodos MLSC recurren a métodos de conjunto para aumentar su rendimiento predictivo y abordar las desviaciones conceptuales. A continuación se presentan los métodos de conjunto más utilizados en la literatura:
- Métodos basados en Online Bagging (OzaBagging [ 17 ] ) : Observando que la probabilidad de tener K veces un punto de datos determinado en una muestra bootstrap es aproximadamente Poisson(1) para grandes conjuntos de datos, cada instancia de datos entrante en un flujo de datos puede ponderarse proporcionalmente a la distribución Poisson(1) para imitar el bootstrapping en un entorno en línea. Esto se llama Online Bagging (OzaBagging). Muchos métodos multietiqueta que utilizan Online Bagging se proponen en la literatura, cada uno de los cuales utiliza diferentes métodos de transformación del problema. EBR, [ 3 ] ECC, [ 3 ] EPS, [ 18 ] E B RT, [ 19 ] E B MT, [ 19 ] ML-Random Rules [ 20 ] son ejemplos de tales métodos.
- Métodos basados en ADWIN Bagging [ 21 ] : Los métodos de Bagging en línea para MLSC a veces se combinan con mecanismos explícitos de detección de deriva conceptual como ADWIN [ 22 ] (Ventana Adaptativa). ADWIN mantiene una ventana de tamaño variable para detectar cambios en la distribución de los datos y mejora el conjunto reiniciando los componentes que funcionan mal cuando hay una deriva 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, [ 21 ] E a CC, [ 21 ] E a HT PS [ 21 ] son ejemplos de tales conjuntos multietiqueta.
- Métodos basados en GOOWE-ML [ 23 ] : Interpretando las puntuaciones de relevancia de cada componente del conjunto como vectores en el espacio de etiquetas y resolviendo un problema de mínimos cuadrados al final de cada lote, se propone el Conjunto Ponderado en Línea Geométricamente Óptimo para Clasificación Multietiqueta (GOOWE-ML). El conjunto intenta minimizar la distancia entre la predicción ponderada de sus componentes y el vector de verdad fundamental para cada instancia en un lote. A diferencia de Online Bagging y ADWIN Bagging, GOOWE-ML utiliza un esquema de votación ponderada donde los componentes con mejor rendimiento del conjunto reciben mayor peso. El conjunto GOOWE-ML crece con el tiempo, y el componente de menor peso se reemplaza por un nuevo componente cuando está completo al final de un lote. GOBR, [ 23 ] GOCC, [ 23 ] GOPS, [ 23 ] GORT [ 23 ] son los conjuntos multietiqueta basados en GOOWE-ML propuestos.
- Ventanas múltiples [ 24 ] : En este caso, los modelos BR que utilizan una ventana deslizante se reemplazan por dos ventanas para cada etiqueta, una para los ejemplos relevantes y otra para los no relevantes. Las instancias se sobremuestrean o submuestrean según un factor de carga que se mantiene entre estas dos ventanas. Esto permite detectar desviaciones conceptuales independientes para cada etiqueta y gestionar el desequilibrio de clases ( sesgo en los ejemplos relevantes y no relevantes).
Estadísticas y métricas de evaluación
En vista deser un conjunto de etiquetas paramuestra de datos (no la confunda con un vector one-hot ; es simplemente una colección de todas las etiquetas que pertenecen a esta muestra), el grado en que un conjunto de datos es multietiqueta se puede capturar en dos estadísticas:
- La cardinalidad de etiquetas es el número promedio de etiquetas por ejemplo en el conjunto:dóndees 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 en todas las muestras:dónde, el número total de clases disponibles (que es el número máximo de elementos que pueden formar).
Las métricas de evaluación del rendimiento en la clasificación multietiqueta son intrínsecamente diferentes de las utilizadas en la clasificación multiclase (o binaria), debido a las diferencias inherentes al problema de clasificación. Si T denota el conjunto real de etiquetas para una muestra dada, y P el conjunto de etiquetas predichas, entonces se pueden definir las siguientes métricas para esa muestra:
- Pérdida de Hamming : la fracción de etiquetas erróneas con respecto al número total de etiquetas, es decir, dóndees el objetivo,es la predicción, yes el operador "O exclusivo" 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 y también llamado Intersección sobre Unión en el contexto de múltiples etiquetas, se define como el número de etiquetas predichas correctamente dividido por la unión de las etiquetas predichas y verdaderas,, dóndeyson conjuntos de etiquetas predichas y etiquetas verdaderas respectivamente.
- Precisión, exhaustividad ypuntuación : precisión es, el recuerdo es, yes su media armónica . [ 25 ]
- 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 multietiqueta se complica por el hecho de que el método ordinario (binario/multiclase) de muestreo estratificado no funciona; se han sugerido métodos alternativos de muestreo estratificado aproximado. [ 26 ]
Implementaciones y conjuntos de datos
Las implementaciones en Java de algoritmos multietiqueta están disponibles en los paquetes de software Mulan y Meka , ambos basados en Weka .
El paquete de Python scikit-learn implementa algunos algoritmos y métricas de etiquetas múltiples .
El paquete scikit-multilearn de Python está específicamente diseñado para la clasificación multietiqueta. Proporciona implementaciones multietiqueta de varias técnicas conocidas, como 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 multietiqueta con muchos aprendices base diferentes están implementados en el paquete R mlr [ 27 ].
En el sitio web de Mulan se puede consultar una lista de conjuntos de datos multietiqueta de uso común .
Véase también
Referencias
- ↑ Xipeng Shen, Matthew Boutell, Jiebo Luo y Christopher Brown, " Aprendizaje automático multietiqueta y su aplicación a la clasificación semántica de escenas ", En Actas del decimosexto Simposio Anual de IS&T/SPIE sobre imágenes electrónicas: ciencia y tecnología (EI 2004), San José, California, EE. UU., enero de 2004, páginas 188-199.
- ↑ Matthew R. Boutell, Jiebo Luo, Xipeng Shen y Christopher M. Brown, " Aprendizaje de clasificación de escenas con múltiples etiquetas" , en Pattern Recognition, Volumen 37, Número 9, 2004, páginas 1757-1771.
- 1 2 3 4 Jesse Read, Bernhard Pfahringer, Geoff Holmes, Eibe Frank. Cadenas de clasificadores para clasificación multietiqueta . Machine Learning Journal. Springer. Vol. 85(3), (2011).
- ↑ Heider, D; Senge, R; Cheng, W; Hüllermeier, E (2013). "Clasificación multietiqueta para explotar la información de resistencia cruzada en la predicción de la resistencia a fármacos del VIH-1" . Bioinformatics . 29 (16): 1946– 52. doi : 10.1093/bioinformatics/btt331 . PMID 23793752 .
- ↑ Riemenschneider, M; Senge, R; Neumann, U; Hüllermeier, E; Heider, D (2016). "Aprovechamiento de la información sobre la resistencia cruzada a la proteasa y la transcriptasa inversa del VIH-1 para mejorar la predicción de la resistencia a los fármacos mediante la clasificación multietiqueta" . BioData Mining . 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. (2016-11-10). " DRABAL: nuevo método para extraer datos de ensayos de cribado de alto rendimiento a gran escala mediante aprendizaje activo bayesiano" . Journal of Cheminformatics . 8 : 64. doi : 10.1186/s13321-016-0177-8 . ISSN 1758-2946 . PMC 5105261. PMID 27895719 .
- ↑ Spolaôr, Newton; Cherman, Everton Alvares; Monard, Maria Carolina; Lee, Huei Diana (marzo de 2013). "Una comparación de métodos de selección de características multietiqueta utilizando el enfoque de transformación del problema" . Electronic Notes in Theoretical Computer Science . 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). Random k -labelsets: Un método de conjunto para la clasificación multietiqueta (PDF) . ECML. Archivado del original (PDF) el 29-07-2014 . Recuperado el 26-07-2014 .
- ↑ Zhang, ML; Zhou, ZH (2007). "ML-KNN: Un enfoque de aprendizaje perezoso para el aprendizaje multietiqueta". Pattern Recognition . 40 (7): 2038– 2048. Bibcode : 2007PatRe..40.2038Z . CiteSeerX 10.1.1.538.9597 . doi : 10.1016/j.patcog.2006.12.019 . S2CID 14886376 .
- ↑ Madjarov, Gjorgji; Kočev, Dragi; Gjorgjevikj, Dejan; Džeroski, Sašo (2012). "Una extensa comparación experimental de métodos para el aprendizaje de etiquetas múltiples". Reconocimiento de patrones . 45 (9): 3084– 3104. Bibcode : 2012PatRe..45.3084M . doi : 10.1016/j.patcog.2012.03.004 . S2CID 14064264 .
- ↑ Chen, Yen-Liang; Hsu, Chang-Ling; Chou, Shih-chieh (2003). "Construcción de un árbol de decisión multivalorado y multietiquetado". Expert Systems with Applications . 25 (2): 199– 209. doi : 10.1016/S0957-4174(03)00047-2 .
- ↑ Chou, Shihchieh; Hsu, Chang-Ling (2005-05-01). "MMDT: un clasificador de árbol de decisión multivalorado y multietiquetado para minería de datos". Expert Systems with Applications . 28 (4): 799– 812. doi : 10.1016/j.eswa.2004.12.035 .
- ↑ Li, Hong; Guo, Yue-jian; Wu, Min; Li, Ping; Xiang, Yao (2010-12-01). "Combinar la descomposición de atributos multivalorados con el aprendizaje multietiqueta". Expert Systems with Applications . 37 (12): 8721– 8728. doi : 10.1016/j.eswa.2010.06.044 .
- ↑ Zhang, ML; Zhou, ZH (2006). Redes neuronales multietiqueta con aplicaciones a la genómica funcional y la categorización de texto (PDF) . IEEE Transactions on Knowledge and Data Engineering. Vol. 18. pp. 1338–1351 .
- ↑ Aggarwal, Charu C., ed. (2007). Flujos de datos . Avances en sistemas de bases de datos. Vol. 31. doi : 10.1007/978-0-387-47534-9 . ISBN 978-0-387-28759-1.
- ↑ Oza, Nikunj (2005). "Online Bagging and Boosting". Conferencia Internacional IEEE sobre Sistemas, Hombre y Cibernética . hdl : 2060/20050239012 .
- ↑ Read, Jesse; Pfahringer, Bernhard; Holmes, Geoff (15 de diciembre de 2008). "Clasificación multietiqueta mediante conjuntos de conjuntos podados". Octava Conferencia Internacional IEEE sobre Minería de Datos de 2008. IEEE Computer Society. págs. 995–1000 . doi : 10.1109/ICDM.2008.74 . hdl : 10289/8077 . ISBN 9780769535029. S2CID 16059274 .
- 1 2 Osojnik, Aljaź; Panov, PanăźE; DźEroski, Sašo (1 de junio de 2017). "Clasificación de etiquetas múltiples mediante regresión de objetivos múltiples 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 multietiqueta a partir de flujos de datos de alta velocidad con reglas de modelo adaptativas y reglas aleatorias". Progress in Artificial Intelligence . 7 (3): 177– 187. doi : 10.1007/s13748-018-0142-z . ISSN 2192-6352 . S2CID 32376722 .
- 1 2 3 4 Read, Jesse; Bifet, Albert; Holmes, Geoff; Pfahringer, Bernhard (2012-02-21). "Clasificación multietiqueta escalable y eficiente para flujos de datos en evolución" . Machine Learning . 88 ( 1–2 ): 243–272 . doi : 10.1007/s10994-012-5279-6 . ISSN 0885-6125 .
- ↑ Bifet, Albert; Gavaldà, Ricard (26 de abril de 2007), "Aprendizaje a partir de datos que cambian con el tiempo mediante ventanas adaptativas", Actas de la Conferencia Internacional SIAM de 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, S2CID 2279539
- 1 2 3 4 5 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 multietiqueta". Actas de la 27.ª Conferencia Internacional ACM sobre Gestión de Información y Conocimiento . 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). "Abordar la deriva de conceptos y el desequilibrio de clases en la clasificación de flujos de etiquetas múltiples" . Prensa AAAI. págs. 1583-1588 . doi : 10.5591/978-1-57735-516-8/IJCAI11-266 . ISBN 9781577355144.
- ↑ Godbole, Shantanu; Sarawagi, Sunita (2004). Métodos discriminativos para la clasificación multietiqueta (PDF) . Avances en el descubrimiento de 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 etiquetas múltiples (PDF) . ECML PKDD . págs. 145-158 .
- ↑ Philipp Probst, Quay Au, Giuseppe Casalicchio, Clemens Stachl, Bernd Bischl. Clasificación multietiqueta con el paquete mlr de R. The R Journal (2017) 9:1, páginas 352-369.
Lecturas adicionales
- Madjarov, Gjorgji; Kočev, Dragi; Gjorgjevikj, Dejan; Džeroski, Sašo (2012). "Una extensa comparación experimental de métodos para el aprendizaje de etiquetas múltiples". Reconocimiento de patrones . 45 (9): 3084– 3104. Bibcode : 2012PatRe..45.3084M . doi : 10.1016/j.patcog.2012.03.004 . S2CID 14064264 .
- Algoritmos de clasificación