8 votos

Conjunto de clases extremadamente grande para la clasificación de máquinas de vectores de soporte (SVM)

Para un problema en el que tengo decenas de miles de clases diferentes, ¿no sería muy ineficiente utilizar los métodos multiclase típicos? Si tuviera que hacer una frente a todas, ¿no significaría eso que tendría que pasar por cada clase individual antes de determinar si un nuevo conjunto de datos pertenece a cierta clase? Eso sería computacionalmente muy lento.

¿Hay una manera de evitar esto? ¿Debería usar SVM cuando llegue a ese tamaño?

3voto

John Richardson Puntos 1197

Me gustaría utilizar el DAGSVM enfoque, que construye un árbol de pares de los clasificadores. Si usted tiene sólo 100 patrones por clase, sino de decenas de miles de clases, muchos de los pares de los clasificadores no tendrá ninguna de datos de entrenamiento y, por tanto, no todos los posibles pares de clasificador tendrá que ser construido.

Sin embargo, más importante aún, es difícil considerar un problema con un gran número de clases, en la que la clasificación no es en algún sentido jerárquico. Un mejor enfoque sería en primer lugar, construir un clasificador para clasificar cada patrón en categorías generales (que representa a un conjunto de clases relacionadas) y, a continuación, perfeccionar continuamente los patrones dentro de cada categoría amplia para identificar las sutiles distinciones entre clases.

2voto

David A. Puntos 1332

Echa un vistazo a un Vowpal Wabbit. Es una implementación de Stochasic Gradient Decent, que es muy eficiente para conjuntos de datos a gran escala. Si elige los parámetros correctos, puede imitar un SVM (pérdida de bisagra). También incluye una reducción llamada Torneos de corrección de errores , que es bastante eficiente para varias clases.

1voto

markymuy Puntos 21

Existen modelos de clasificación que son intrínsecamente multiclase, sin códigos de corrección de errores o de uno contra lo resto. Algunos de los más populares son Redes neuronales, Análisis discriminante lineal, Bosques aleatorios, Bayas naive y kNN. El tiempo de entrenamiento generalmente aumenta un poco, pero es mucho más eficiente que la clasificación de uno contra otro. Hay una formulación multiclase de SVM estructural, que vale la pena mencionar. Aunque no lo he usado yo mismo.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X