22 votos

¿Por qué se estima por separado el término de sesgo en SVM, en lugar de una dimensión adicional en el vector de características?

El hiperplano óptimo en SVM se define como:

$$\mathbf w \cdot \mathbf x+b=0,$$

donde $b$ representa el umbral. Si tenemos algún mapeo $\mathbf \phi$ que asigna el espacio de entrada a algún espacio $Z$ podemos definir SVM en el espacio $Z$ donde estará el hiperplano óptimo:

$$\mathbf w \cdot \mathbf \phi(\mathbf x)+b=0.$$

Sin embargo, siempre podemos definir la asignación $\phi$ para que $\phi_0(\mathbf x)=1$ , $\forall \mathbf x$ y entonces el hiperplano óptimo se definirá como $$\mathbf w \cdot \mathbf \phi(\mathbf x)=0.$$

Preguntas:

  1. Por qué muchos periódicos utilizan $\mathbf w \cdot \mathbf \phi(\mathbf x)+b=0$ cuando ya tienen cartografía $\phi$ y estimar los parámetros $\mathbf w$ y el $b$ ¿Por separado?

  2. ¿Hay algún problema para definir SVM como $$\min_{\mathbf w} ||\mathbf w ||^2$$ $$s.t. \ y_n \mathbf w \cdot \mathbf \phi(\mathbf x_n) \geq 1, \forall n$$ y estimar sólo el vector de parámetros $\mathbf w$ suponiendo que definamos $\phi_0(\mathbf x)=1, \forall\mathbf x$ ?

  3. Si la definición de SVM de la pregunta 2. es posible, tendremos $\mathbf w = \sum_{n} y_n\alpha_n \phi(\mathbf x_n)$ y el umbral será simplemente $b=w_0$ que no trataremos por separado. Por lo tanto, nunca utilizaremos fórmulas como $b=t_n-\mathbf w\cdot \phi(\mathbf x_n)$ estimar $b$ a partir de algún vector soporte $x_n$ . ¿Verdad?

23voto

Thomas Puntos 1

¿Por qué es importante el sesgo?

El término de sesgo $b$ es, de hecho, un parámetro especial en SVM. Sin él, el clasificador siempre pasará por el origen. Por lo tanto, SVM no le da el hiperplano de separación con el máximo margen si no pasa por el origen, a menos que tenga un término de sesgo.

A continuación se muestra una visualización de la cuestión de la parcialidad. A la izquierda (derecha) se muestra una SVM entrenada con (sin) un término de sesgo. Aunque ambas SVM se han entrenado con el término de sesgo mismos datos Sin embargo, su aspecto es muy diferente.

enter image description here

¿Por qué el sesgo debe tratarse por separado?

Como usuario logística señaló, el término de sesgo $b$ deben tratarse por separado debido a la regularización. SVM maximiza el tamaño del margen, que es $\frac{1}{||w||^2}$ (o $\frac{2}{||w||^2}$ dependiendo de cómo se defina).

Maximizar el margen es lo mismo que minimizar $||w||^2$ . También se denomina término de regularización y puede interpretarse como una medida de la complejidad del clasificador. Sin embargo, no se desea regularizar el término de sesgo porque, el sesgo desplaza las puntuaciones de clasificación hacia arriba o hacia abajo en la misma cantidad para todos los puntos de datos . En particular, el sesgo no cambia la forma del clasificador o el tamaño de su margen. Por lo tanto, ...

el término de sesgo en SVM NO debe regularizarse.

En la práctica, sin embargo, es más fácil introducir el sesgo en el vector de características en lugar de tener que tratarlo como un caso especial.

Nota: al introducir el sesgo en la función de características, es mejor fijar esa dimensión del vector de características en un número grande, por ejemplo. $\phi_0(x) = 10$ para minimizar los efectos secundarios de la regularización del sesgo.

2voto

njebert Puntos 249

A veces, la gente simplemente omitir el intercepto en SVM, pero creo que la razón tal vez podemos penalizar intercepto con el fin de omitirlo. es decir,

podemos modificar los datos $\mathbf{\hat{x}} = (\mathbf{1}, \mathbf{x})$ y $\mathbf{\hat{w}} = (w_{0}, \mathbf{w}^{T})^{T}$ de modo que omita el intercepto $$\mathbf{x} ~ \mathbf{w} + b = \mathbf{\hat{x}} ~ \mathbf{\hat{w}} $$ Como has dicho, se puede utilizar una técnica similar en la versión del núcleo.

Sin embargo, si ponemos el intercepto en las ponderaciones, la función objetivo será ligeramente diferente de la original. Por eso la llamamos "penalizar".

0voto

Pili66 Puntos 16

Además de las razones mencionadas anteriormente, la distancia de un punto $x$ a un hiperplano definido por la pendiente $\theta$ e interceptar $b$ es $$\frac{|\theta^T x + b|}{||\theta||}$$ Así se mueve el concepto de margen en SVM. Si cambia el $\theta$ para incluir el término de intercepción $b$ la norma de la $\theta$ se verá afectado por el tamaño del intercepto, lo que hará que la SVM optimice hacia un intercepto pequeño, lo que no tiene sentido en muchos casos.

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