¿Es mejor construir un clasificador multiclase que varios binarios?

18

Necesito clasificar las URL en categorías. Digamos que tengo 15 categorías en las que planeo poner cero a cada URL.

¿Es mejor un clasificador de 15 vías? Donde tengo 15 etiquetas y genero características para cada punto de datos.

O construyendo 15 clasificadores binarios, diga: Película o No película, y use los números que obtengo de estas clasificaciones para construir un rango, para elegir la mejor categoría, ¿va a ser mejor?

madCode
fuente

Respuestas:

12

En primer lugar, debe preguntarse si su problema es multimarca (es decir, una única URL puede pertenecer a varias clases) o no (es decir, una única URL puede pertenecer a una sola clase).

Si es lo primero, vaya con una batería de clasificadores binarios, porque esta es una forma predeterminada de resolver problemas de múltiples etiquetas.

Si es esto último, la respuesta depende de una combinación de cómo se ven sus datos, cuál es el objetivo de su análisis y qué método está utilizando; probablemente debería probar ambos y seleccionar mejor.
Solo tenga en cuenta que algunos métodos (como SVM) en realidad no pueden hacer clasificación multiclase debido a cómo se definen y, por lo tanto, usan internamente una batería de clasificadores binarios.


fuente
mi enunciado del problema está considerando la suposición anterior @mbq. Sé que hay multicapas. y sí, como dijiste, decidí elegir 15 clasificadores binarios, pero nuevamente, necesito clasificarlos para elegir una mejor categoría. Por lo tanto, intentaré realizar otra clasificación de nivel superior utilizando los números que obtuve de la batería de clasificadores binarios. ¿Ves algún problema?
madCode
Los SVM pueden realizar una clasificación multiclase. El método es muy similar a la regresión softmax (ver "Sobre la implementación algorítmica de máquinas de vectores basadas en kernel multiclase").
user1149913
4

Esto dependerá de cómo se dispersen sus datos. Hay un hermoso ejemplo que se dio recientemente a una pregunta similar en la que el OP quería saber si una sola función discriminante lineal sería un mejor clasificador para decidir la población A frente a B o C o una basada en múltiples funciones discriminantes lineales que separan A, B y C. Alguien dio un diagrama de dispersión de color muy bonito para mostrar cómo usar dos discriminantes sería mejor que uno en ese caso. Trataré de vincularlo.

Michael R. Chernick
fuente
Aférrate. Tengo problemas para encontrarlo, pero seguiré buscando.
Michael R. Chernick
Perdón por no poder encontrar el enlace. Imagine una nube de un color a la izquierda, otra en el medio y una tercera a la derecha. Dos líneas discriminantes lineales harían un buen trabajo al separar el grupo intermedio de los que están a la izquierda y a la derecha, pero ninguna línea individual funcionaría bien. La imagen valdría más que todas estas palabras.
Michael R. Chernick
1
@MichaelChernick ¿Es este el enlace que está buscando?
Creo que entiendo lo que estás diciendo: bit.ly/M1NydS : la imagen que definiste me encontré en esta presentación. Clasificación de 4 o 3 vías ... podría ser directa. Pero ... Me pregunto si la precisión / recuperación se vería comprometida si se realiza una clasificación de 15 vías, Dr. Chernick.
madCode
@Procrastinator Gracias por encontrar eso. Estaba teniendo muchos problemas para localizarlo y estaba pasando mucho tiempo buscando. Era una publicación reciente, así que pensé que sería fácil encontrarla.
Michael R. Chernick
1

Algunos métodos funcionan bien con bosques de múltiples clases, aleatorios, MLP, por ejemplo.

Si no quiere seguir ese camino, entonces es posible que ECOC pueda realizar 1-vs-All para su problema, solo las pruebas lo dirán.

image_doctor
fuente