2 votos

¿Cómo ayuda el descenso de gradiente a que SVM aprenda un hiperplano linealmente separable?

Así que veo el Algoritmo del Perceptrón aplicado para aprender un SVM, donde $\theta$ es el vector normal al hiperplano de separación lineal. ¿Cómo se actualiza?

$$\theta^{t+1}\leftarrow\theta^t+\alpha y_ix_i$$

enter image description here

Hay este ejemplo visual, pero no estoy seguro de cómo se ajusta $\theta$ en la dirección correcta.

¿Ayuda a empujar el hiperplano para aprender una separación lineal entre los puntos $x_n$, donde los puntos mal clasificados son $y_i$ y $x_i$?

4voto

Ben Puntos 251

Lo que has descrito no es el descenso de gradientes. Es el algoritmo de aprendizaje del Perceptrón. Además, el algoritmo del perceptrón no aprende la línea de separación de margen máximo como es el caso con SVM. Ambos están relacionados pero no son lo mismo. Aquí tienes una explicación visual del algoritmo:

introducir descripción de la imagen aquí

Por qué el algoritmo de aprendizaje de un perceptrón realmente funciona es un poco misterioso. Parece plausible que el hiperplano simplemente pueda saltar para siempre a medida que se actualizan los pesos. Sin embargo, hay una prueba de convergencia ingeniosa para el algoritmo (y si el algoritmo converge, necesariamente hemos encontrado un hiperplano separador).

El truco es monitorear la longitud del vector de pesos a medida que aumenta el número de actualizaciones de pesos. Podemos demostrar que, si los datos son linealmente separables, el algoritmo converge después de un máximo de $\frac{R^2}{\gamma^2}$ actualizaciones donde $R$ es la longitud del vector $x$ más largo y $\gamma$ es la distancia más larga entre un hiperplano separador potencial y el punto $x$ más cercano. La prueba es un poco complicada y larga, así que no la publicaré aquí, pero me gusta el documento Shivaram Kalyanakrishnan sobre esto.

Promo descarada

Tengo un curso gratuito sobre redes neuronales y la primera mitad de mi curso está dedicada a comprender los Perceptrones. La visualización de arriba la saqué de mi curso.

0voto

Según la ecuación de actualización (abajo de la figura), hay una resta de vectores. Para realizarla, simplemente dibuja una línea desde el punto hasta la punta de $\theta$. Tu nuevo $\theta$ sería este vector, así que muévelo al origen como los demás, y dibuja una normal como tu hiperplano. Este sería el caso para $\alpha=1$, es decir, $\theta-x$. Suponiendo un $\alpha$ más pequeño, por ejemplo $0.5$, esta resta produciría un vector más parecido al de la derecha.

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