¿Debería una búsqueda de cuadrícula SVM mostrar una región de alta precisión con baja precisión alrededor?

12

Tengo 12 conjuntos de entrenamiento positivo (células cancerosas tratadas con medicamentos con cada uno de los 12 mecanismos de acción diferentes). Para cada uno de estos conjuntos de entrenamiento positivo, me gustaría entrenar una máquina de vectores de soporte para distinguirlo de un conjunto negativo de igual tamaño muestreado del experimento. Cada conjunto tiene entre 1000 y 6000 celdas, y hay 476 características (características de imagen) de cada celda, cada una escalada linealmente a [0, 1].

Yo uso LIBSVM y el núcleo Gaussian RGB. Utilizando la validación cruzada de cinco veces, he realizado una búsqueda en la cuadrícula para log₂ C ∈ [-5, 15] y log₂ ɣ ∈ [-15, 3]. Los resultados son los siguientes:

Resultados de la búsqueda de cuadrícula

Me decepcionó que no haya un solo conjunto de parámetros que proporcionen altas precisiones para los 12 problemas de clasificación. También me sorprendió que las cuadrículas generalmente no muestren una región de alta precisión rodeada de precisiones más bajas. ¿Significa esto que necesito expandir el espacio del parámetro de búsqueda, o es la búsqueda de la cuadrícula una indicación de que algo más está mal?

Vebjorn Ljosa
fuente
2
Re decepción: Usted no esperaría que cada problema que tienen los mismos parámetros, ¿por qué tendría que esperar que los problemas a los valores de buena parte de los hiperparámetros (gamma registro y C)?
conjugateprior
@Conjugate Prior: los conjuntos de entrenamiento son subconjuntos del mismo experimento, y los conjuntos de entrenamiento negativos se muestrean de la misma población, por lo que esperaba que el mismo ancho de núcleo RBF ɣ fuera efectivo. Debido a que los conjuntos positivos están siendo discriminados de la misma población de fondo (negativa), esperaba que la penalización ideal C también fuera similar. Si este no es el caso, hace que SVM sea realmente difícil de aplicar. El impulso suave, por ejemplo, parece mucho más fácil de sintonizar.
Vebjorn Ljosa
Ajá. Pero me parece que aunque es el mismo experimento en el sentido físico, sin embargo, está atacando problemas separados y diferentes en el sentido estadístico. Particularmente si los casos negativos se vuelven a muestrear para cada tratamiento.
conjugateprior
1
Por cierto, la búsqueda de cuadrícula es bastante ineficiente, el algoritmo de optimización simplex de Nelder-Mead es muy efectivo, al igual que los métodos de optimización de descenso de gradiente. La búsqueda de cuadrícula es simple, pero un poco "fuerza bruta".
Dikran Marsupial
@Vebjorn Ljosa (un año después), ¿cuánto se dispersan los 5 valores, digamos al final (C, gamma)? ¿Las 12 parcelas tienen la misma escala, por ejemplo, 50% ... 100% de predicción correcta? Gracias
denis

Respuestas:

9

Los valores óptimos para los hiperparámetros serán diferentes para diferentes tareas de aprendizaje, debe ajustarlos por separado para cada problema.

La razón por la que no obtiene un óptimo óptimo es porque tanto el parámetro del núcleo como el parámetro de regularización controlan la complejidad del modelo. Si C es pequeño, obtendrá un modelo uniforme, del mismo modo si el núcleo con es amplio, obtendrá un modelo uniforme (ya que las funciones básicas no son muy locales). Esto significa que diferentes combinaciones de C y el ancho del kernel conducen a modelos igualmente complejos, con un rendimiento similar (por lo que obtienes la característica diagonal en muchas de las parcelas que tienes).

El óptimo también depende del muestreo particular del conjunto de entrenamiento. Es posible sobrepasar el error de validación cruzada, por lo que elegir los hiperparámetros por validación cruzada puede empeorar el rendimiento si no tiene suerte. Vea a Cawley y Talbot para una discusión sobre esto.

El hecho de que haya una amplia meseta de valores para los hiperparámetros donde se obtienen valores igualmente buenos es en realidad una buena característica de las máquinas de vectores de soporte, ya que sugiere que no son demasiado vulnerables al sobreajuste en la selección del modelo. Si tuviera un pico agudo en los valores óptimos, sería algo malo ya que el pico sería difícil de encontrar utilizando un conjunto de datos finito que proporcionaría una indicación poco confiable de dónde reside realmente ese pico.

Dikran Marsupial
fuente
Por cierto, estoy realizando un estudio sobre el ajuste excesivo en la selección de modelos utilizando la búsqueda de cuadrícula, que resulta ser mucho más interesante de lo que pensaba. Incluso con pocos hiperparámetros, aún puede ajustar demasiado el criterio de selección del modelo si optimiza sobre una cuadrícula que es demasiado fino.
Dikran Marsupial
Estoy llegando al final del trabajo de simulación ahora, espero poder enviar el trabajo en un mes o dos ...
Dikran Marsupial
¿Me interesaría leer ese documento si está terminado? Me he encontrado con algunos picos extraños, etc. en las optimizaciones de búsqueda de cuadrícula que parece similar a lo que discute aquí.
BGreene
Todo el trabajo de simulación ahora está completo, solo estoy armando el documento en este momento (principalmente solo asegurándome de que todo sea completamente reproducible). He guardado todas las cuadrículas, por lo que debería ser posible un nuevo análisis para analizar otras preguntas que no pensé en ese momento.
Dikran Marsupial