¿Qué es una explicación intuitiva del parámetro gamma en SVM?

Gamma define un factor de escala general para la noción de distancia de SVM entre dos puntos; esto a su vez define cómo un vector de soporte da forma al límite de decisión en su vecindario cercano.

La clave para comprender su efecto es pensar en el núcleo de tener regímenes: cerca, lejos y la región variante.

En el régimen cercano, el núcleo tiene un valor de casi siempre 1. Lejos, tenía un valor de casi siempre 0; y en la región variante, el valor puede variar.

Cuando aumenta gamma, reduce los regímenes cercanos y variantes para estar muy cerca del vector de soporte; por lo tanto, las diferencias significativas en la distancia del núcleo solo tienen lugar muy cerca de un solo vector de soporte; el efecto es que un solo vector de soporte define casi por completo el límite de decisión en su proximidad.

Si baja gamma significativamente, expande el régimen cercano; cada vector de soporte ahora puede influir en puntos incluso muy lejos; y las diferencias en distancias tienen contribuciones de todos los vectores de soporte.

La razón por la que la alta gamma conduce a una alta varianza ahora debería tener sentido; en lugar de muchas muestras que contribuyen al límite de decisión local, quizás solo 1 lo hará.

Por otro lado, la baja gamma permite que muchos puntos contribuyan, pero tampoco permite matices definidos localmente en el límite de decisión.

El escenario ideal es probablemente un punto intermedio; desea establecer el tamaño de la región cercana para que contenga puntos que sean de la misma clase, la región lejana para que contenga puntos que sean de la clase opuesta y la región variante que se centrará alrededor del límite de decisión.

Comencemos con el concepto de complejidad de conjuntos de hipótesis y sobreajuste.

Para cualquier problema de aprendizaje automático, esencialmente, puede dividir sus puntos de datos en dos componentes: patrón + ruido estocástico .

Por ejemplo, si tuviera que modelar el precio de un apartamento, sabe que el precio depende del área del apartamento, no. de dormitorios, etc. Por lo tanto, esos factores contribuyen al patrón: más dormitorios generalmente conducirían a precios más altos. Sin embargo, todos los apartamentos con la misma área y no. de las habitaciones no tienen exactamente el mismo precio. La variación en el precio es el ruido.

Como otro ejemplo, considere conducir. Dada una curva con una curvatura específica, hay una dirección óptima de dirección y una velocidad óptima. Cuando observa a 100 conductores en esa curva, la mayoría de ellos estaría cerca de ese ángulo de dirección y velocidad óptimos. Pero no tendrán exactamente el mismo ángulo y velocidad de dirección. De nuevo, la curvatura de la carretera contribuye al patrón para el ángulo y la velocidad de dirección, y luego hay ruido que causa desviaciones de este valor óptimo.

Ahora el objetivo del aprendizaje automático es modelar el patrón e ignorar el ruido. Cada vez que un algoritmo intenta ajustar el ruido además del patrón, se sobreajusta.

En la configuración supervisada, normalmente desea hacer coincidir el resultado de una función de predicción con sus etiquetas de entrenamiento. Entonces, en el ejemplo de manejo anterior, desearía predecir con precisión el ángulo de dirección y la velocidad. A medida que agrega más y más variables, como la curvatura de la carretera, el modelo del automóvil, la experiencia del conductor, el clima, el estado de ánimo del conductor, etc., tiende a hacer mejores y mejores predicciones sobre los datos de entrenamiento. Sin embargo, más allá de un punto, agregar más variables no ayuda a modelar el patrón, sino que solo intenta ajustar el ruido. Dado que el ruido es estocástico, esto no se generaliza bien para datos invisibles y, por lo tanto, tiene un error de entrenamiento bajo y un error de prueba alto.

Considere el siguiente escenario:

(¿Existe una representación gráfica de la compensación de sesgo-varianza en la regresión lineal?)

El algoritmo izquierdo devuelve la línea de mejor ajuste dados esos puntos, mientras que el algoritmo derecho devuelve el polinomio de mejor ajuste de grado k dados esos n puntos. (k es un número grande, como 10, en este ejemplo).

¿Qué sucede si mueve el punto más bajo hacia arriba por cierta distancia?

La línea en la figura izquierda se vuelve un poco más plana: se mueve un poco hacia arriba a la izquierda y permanece aproximadamente en la misma posición a la derecha. Sin embargo, la curva de la derecha cambia bastante. La caída que ves entre los puntos 1 y 3 puede desaparecer por completo.

Claramente, el algoritmo de la derecha está ajustando el ruido. Como se puede ver en este ejemplo, una forma de reducir el sobreajuste es penalizar artificialmente los polinomios de mayor grado . Esto asegura que se seleccione un polinomio de mayor grado solo si reduce el error significativamente en comparación con un modelo más simple, para superar la penalización. Esto es lo que logra la lambda en Lasso y la regresión de cresta: controlar el equilibrio entre el error y la complejidad del modelo.


Ahora, para SVM con kernel RBF, la función de decisión viene dada por

[matemáticas] f (x) = \ sum_ {i = 1} ^ {N} \ alpha_ {i} y_ {i} K (x, x_ {i}) = \ sum_ {i = 1} ^ {N} \ alpha_ {i} y_ {i} \ exp (- \ gamma \ | x – x_ {i} \ | ^ 2) [/ math]

Intuitivamente, [matemáticas] \ alpha_ {i} [/ matemáticas] nos dice cuán importante es un punto de entrenamiento [matemáticas] x_ {i} [/ matemáticas] y [matemáticas] K (x, y) [/ matemáticas] nos dice cómo similares son los puntos [matemática] x [/ matemática] y [matemática] y [/ matemática]. Entonces, dado un nuevo punto de datos [matemática] x [/ matemática], observamos cada punto de entrenamiento, y si el punto es importante (alto [matemático] \ alpha_ {i} [/ matemático]) y es similar a [matemático ] x [/ math] (high [math] K (x, x_ {i}) [/ math]), luego empujamos la predicción hacia la etiqueta de este punto de entrenamiento ([math] y_ {i} [/ math] )

Ahora, [math] \ gamma [/ math] controla cómo medimos la similitud y, por lo tanto, controla el sobreajuste. Si [math] \ gamma [/ math] se establece en cero, entonces [math] K (x, y) [/ math] es 1 para cualquier [math] x [/ math] y [math] y [/ math] . Entonces, dado un nuevo punto, considera que todos los puntos en sus datos de entrenamiento son igualmente similares a este nuevo punto, y su predicción es siempre [matemática] \ sum_ {i} \ alpha_ {i} y_ {i} [/ matemática] . Por lo tanto, se ha perdido completamente el patrón en los datos.

En el otro extremo del espectro, si configura [math] \ gamma [/ math] en [math] \ infty [/ math], entonces [math] K (x, y) [/ math] es 1 solo cuando [ math] x [/ math] y [math] y [/ math] son ​​idénticos y, de lo contrario, es cero. Por lo tanto, su predicción será igual a [math] y_ {i} [/ math] si su nuevo punto de datos coincide exactamente con uno de los puntos de entrenamiento [math] x_ {i} [/ math]; de lo contrario, su predicción será cero. Por lo tanto, ha sobreajustado por completo los datos de entrenamiento, incluido todo el ruido, y no puede generalizar sobre nuevos datos.

Ambos escenarios anteriores son malos. Desea permanecer en algún punto intermedio, y ese punto óptimo se encuentra utilizando un error de validación.


Respuestas relacionadas:

La respuesta de Prasoon Goyal a En términos simples, ¿cuál es lambda para la regresión de lazo y cresta?

La respuesta de Prasoon Goyal a ¿Puede ocurrir un sobreajuste en un algoritmo de aprendizaje no supervisado?

La respuesta de Prasoon Goyal a Variance es cuánto cambia su algoritmo dados los nuevos datos. ¿Qué significa esto?

La respuesta de Prasoon Goyal a ¿Qué es la optimización de hiperparámetros en el aprendizaje automático en términos formales?