Regresión de cresta, regresión LASSO, red elástica y función de pérdida en aprendizaje automático

Hoy vamos a hablar de algo puramente técnico. Esto es la base y no podemos explicarlo más adelante. En el campo del aprendizaje automático, podemos evitar el sobreajuste mediante la regularización. ¿Qué es la regularización? Los más comunes son la regresión de crestas, la regresión LASSO y la red elástica.

Primero, hablemos de ¿qué es el sobreajuste? Veamos la imagen de abajo.

Insertar descripción de la imagen aquí
El 1 de la izquierda se llama ajuste insuficiente, el del medio se ajusta mejor y el 1 de la derecha se ajusta demasiado porque presta demasiada atención al área local, lo que hace que el límite del gráfico sea demasiado complicado y no podemos ajustar por el simple hecho de ajustar. , como el derecho 1 La situación debe encajar muy bien en estos datos, pero no funcionará en otros datos, por lo que el sobreajuste no es práctico. La siguiente imagen también clasifica los datos de la misma manera:
Figura 2:
Insertar descripción de la imagen aquí
Podemos ver lo complicado que es el algoritmo en el lado derecho de la imagen de arriba para aumentar el grado de ajuste. El propósito de la regularización es suprimir algoritmos complejos para lograr un sobreajuste. Esto se logra principalmente comprimiendo los coeficientes del modelo mediante una función de penalización. Antes de eso, hablemos del método de mínimos cuadrados y la función de pérdida.

El método de mínimos cuadrados se utiliza ampliamente en estadística y aprendizaje automático.
Hay 4 puntos rojos en la imagen de abajo. Necesitamos ajustar la tendencia de estos 4 puntos. Luego necesitamos encontrar una línea. Suponiendo que la hayamos encontrado, es la línea azul en la imagen de abajo. Entonces, la Y de la posición del punto rojo es el valor real de Y, y el valor Y de la línea azul en el mismo eje X es el valor predicho de Y. Es comprensible. La diferencia entre el valor real de Y y el valor predicho de Y es nuestro error, también llamado residual en estadística, que es la parte verde.

Insertar descripción de la imagen aquí
Entonces, ¿cómo encontramos la línea más apropiada para ajustarse a la tendencia de 4 puntos, que es
Y1 (valor real) - Y1 (valor de error) + Y2 (valor real) - Y2 (valor de error) + Y3 (valor real) - Cuando Y3 (valor de error) + Y4 (valor real) - Y4 (valor de error) es igual al mínimo.
Ahí es cuando la suma de las longitudes de todas las líneas verdes es mínima. Debido a que a veces el valor real menos el valor promedio puede tener un valor negativo, elevamos al cuadrado sus diferencias y luego las sumamos, que es
(Y1 (valor real) - Y1 (valor de error)) 2+ (Y2 (valor real)) -Y2 (valor de error)) 2+ (Y3 (valor real)-Y3 (valor de error)) 2+ (Y4 (valor real)-Y4 (valor de error)) 2 En estadísticas de datos, podemos usar Y_i para representar Y
El valor real de

Insertar descripción de la imagen aquí
En el aprendizaje automático, la función combinada con parámetros optimizados se denomina función de pérdida. En este ejemplo, nuestra función de suma de cuadrados es la función de pérdida, que en realidad es la función que minimiza el error. Encontramos una línea que minimiza la suma de todos los cuadrados, que es nuestra línea de ajuste más apropiada.

La situación en este momento es relativamente simple: cuando es complicada, como la situación de la derecha en la Figura 2, puede ocurrir un sobreajuste para minimizar la función de pérdida. Los métodos de regularización comunes que utilizamos para evitar el sobreajuste incluyen la regresión de crestas, la regresión LASSO y las redes elásticas. Ahora hablemos del regreso de Xialing en línea.
La regresión de cresta agrega una función de penalización, llamada norma L2, a la función de pérdida ① de ahora, que se acumula después de elevar al cuadrado β y luego se multiplica por el coeficiente λ. Cabe señalar aquí que el coeficiente aquí no incluye el término de intersección.

Insertar descripción de la imagen aquí
Después de agregar la norma L2, la fórmula de la función de pérdida es la siguiente:
Insertar descripción de la imagen aquí
Podemos ver que después de agregar el parámetro λ a la norma L2, si hay muchos β en el modelo, el valor aumentará después de que se acumule el cuadrado de β. En este momento, λ puede comprimir la suma acumulada de β al cuadrado y optimizar nuestra función de pérdida. La función λ es un hiperparámetro y no se puede estimar a partir de los datos. Un λ óptimo solo se puede obtener mediante iteraciones continuas de validación cruzada del modelo. En nuestro artículo anterior "Enseñarle paso a paso cómo usar el lenguaje R para realizar la regresión LASSO", podemos ver la siguiente imagen (la imagen a continuación se genera mediante la regresión LASSO, pero el principio es el mismo). De hecho, un λ mantiene se hace más grande,
Insertar descripción de la imagen aquí
se valida de forma cruzada y luego se obtiene el mejor resultado.Un proceso de rendimiento óptimo, en el que se puede ver que los coeficientes están comprimidos.

Insertar descripción de la imagen aquí
De la figura anterior, podemos encontrar que cuando λ = 0, los coeficientes de β1 y β2 son ambos 1,5. De esta manera, cuando λ se comprime aún más en el círculo, los coeficientes de β1 y β2 se vuelven más pequeños y el coeficiente de β2 en el punto seleccionado mediante la regresión de cresta se ha comprimido a 0,6, por lo que el uso de la regresión de cresta evita el sobreajuste del modelo de entrenamiento a los datos.
A continuación, hablemos de la regresión LASSO: ¿cuál es la diferencia entre esta y la regresión de cresta? La regresión de crestas usa la norma L2, mientras que LASSO usa la norma L1. La fórmula es la siguiente:

Insertar descripción de la imagen aquí
La norma de la regresión de cresta es la acumulación de cuadrados de los coeficientes β, mientras que LASSO es la acumulación de los valores absolutos de los coeficientes β. La siguiente es la fórmula de la función de pérdida de regresión LASSO. Entonces la pregunta es, ¿cuál es la diferencia? entre estas dos funciones
Insertar descripción de la imagen aquí
? La regresión de cresta comprimirá los coeficientes, pero los coeficientes no se comprimirán a 0, pero la regresión LASSO puede comprimir los coeficientes a 0. Esto puede ayudarnos a filtrar indicadores.

Insertar descripción de la imagen aquí
Podemos ver que la función de penalización de la regresión de cresta es circular, mientras que la función de penalización de la regresión LASSO tiene forma de diamante. En la misma regresión de cresta lambda, el coeficiente de β2 es 0,6, mientras que el coeficiente de β2 en la regresión LASSO es 0, indicando que β2 ha sido eliminado.

Finalmente, hablemos de qué es una red elástica. La red elástica es una combinación empaquetada de regresión de cresta y regresión LASSO. Su fórmula es la siguiente: Se puede ver que la red elástica introduce el hiperparámetro α. Cuando α es 0,
Insertar descripción de la imagen aquí
el red elástica Es igual a la regresión de crestas. Cuando α es igual a 1, es igual a la regresión LASSO. Por lo tanto, tiene las ventajas de la regresión de crestas y la regresión LASSO y es más popular.
En este punto, la teoría básicamente ha terminado, hablar de teoría lleva mucho tiempo. Echemos un vistazo al siguiente artículo combinando el paquete glmnet con mi artículo "Enseñarle paso a paso cómo utilizar el lenguaje R para realizar la regresión LASSO". Echemos un vistazo a la explicación de los parámetros
de la función glmnet en glmnet. paquete.

Insertar descripción de la imagen aquí
Depende principalmente del parámetro alfa. 1 es lazo y 0 es penalización de cresta. ¿Es muy similar a nuestra red elástica?

Insertar descripción de la imagen aquí
A continuación, echemos un vistazo al gráfico del coeficiente de compresión generado en LASSO.

cvfit=cv.glmnet(x,y)
plot(cvfit)

Insertar descripción de la imagen aquí
Podemos ver que la función cv.glmnet genera un gráfico del MSE de este cambio lambda,

Insertar descripción de la imagen aquí
Podemos ver que la función cv.glmnet es una función de validación cruzada, calcula el MSE a través del valor lambda proporcionado y finalmente obtiene una solución óptima. Esto confirma lo que dijimos anteriormente.

Finalmente, para resumir, hoy tenemos una introducción preliminar a la regresión de crestas, la regresión LASSO, la red elástica y la función de pérdida. La función de pérdida es una parte importante del aprendizaje automático. No hay forma de hablar de ello sin mencionar esto. Cuando tengamos tiempo más adelante, presentaremos cómo derivar manualmente los resultados de la regresión logística o la regresión lineal en lenguaje R. Después de comprender el principio y cómo la regresión genera resultados, muchos problemas en R se pueden resolver fácilmente, como el siguiente error: 1: glm.fit: el algoritmo no agrega 2: glm.fit: la probabilidad de ajuste se calcula como una valor de cero o uno

Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
Todo esto se debe a que el modelo no converge, hablemos de ello cuando tengamos tiempo.

Supongo que te gusta

Origin blog.csdn.net/dege857/article/details/132784205
Recomendado
Clasificación