¿Cuál es una explicación intuitiva para el equilibrio de sesgo-varianza?
Respuestas
12/18/2024
Per
La compensación de Bias-Variance está relacionada con la descomposición de Bias-Variance. Esa descomposición es una de nuestras ideas más útiles sobre la tarea extremadamente difícil de generalización. Esa tarea: dada una muestra de datos, ¿cómo se construye un modelo que pronostique bien otro, aún invisible muestra de datos?
Me explico.
Primero, ¿qué estamos asumiendo?
Asumimos [matemáticas] y [/ matemáticas] es una variable de respuesta escalar de valor real y [matemáticas] \ mathbf {x} [/ matemáticas] Es un vector de predictores. Están relacionados con alguna función "verdadera" desconocida [matemáticas] f (\ cdot) [/ matemáticas] como:
dónde [matemáticas] \ epsilon [/ matemáticas] es un ruido irreducible que nace de una distribución de errores donde [math] \ mathbb {E} [\ epsilon] = 0 [/ math] y [matemáticas] \ textrm {var} (\ epsilon) = \ sigma _ {\ epsilon} ^ 2 [/ matemáticas]. Entonces un observado [matemáticas] y_0 [/ matemáticas] se genera conectando el asociado [matemáticas] \ mathbf {x} _0 [/ matemáticas] dentro [matemáticas] f (\ cdot) [/ matemáticas] y agregando un [matemáticas] \ epsilon_0 [/ matemáticas] muestreado de la distribución de errores.
En general, nuestro objetivo es adivinar [matemáticas] f (\ cdot) [/ matemáticas] de nuestros datos. Llamemos a nuestra función estimada [matemáticas] f _ {\ textrm {est}} (\ cdot) [/ matemáticas] y el algoritmo que ingiere nuestros datos de entrenamiento y produce esta función como "procedimiento de estimación".
Antes de cargar, será útil considerar un entorno al que en realidad no tenemos acceso en aplicaciones reales. Este es el entorno donde podemos repetidamente muestra [matemáticas] y [/ matemáticas]es de la verdadera función para el mismo [matemáticas] \ mathbf {x} [/ matemáticas]. Si tenemos [matemáticas] N [/ matemáticas] puntos de datos en un conjunto de datos muestreados, y repetidamente muestreamos [matemáticas] S [/ matemáticas] veces (donde [matemáticas] S [/ matemáticas] es grande), entonces podemos representar todos nuestros [matemáticas] y [/ matemáticas]es como un [matemáticas] N [/ matemáticas]-Por-[matemáticas] S [/ matemáticas] matriz [matemáticas] \ mathbf {Y} [/ matemáticas]. Entonces la entrada [matemáticas] y_ {i, j} [/ matemáticas] es el [matemáticas] j [/ matemáticas]-th muestra usando [matemáticas] \ mathbf {x} _i [/ matemáticas]. En otras palabras, una columna es un conjunto de [matemáticas] y [/ matemáticas] valores que obtendríamos en un solo conjunto de datos. Una fila es un conjunto de muestras [matemáticas] y [/ matemáticas]es para un particular [matemáticas] \ mathbf {x} _i [/ matemáticas].
Ahora supongamos que estamos interesados en minimizar la pérdida esperada de error al cuadrado en algún punto entrante aún no visto [matemáticas] \ mathbf {x} _1 [/ matemáticas]. Es decir, nos importa este valor [1]:
donde la expectativa se realiza con respecto a la distribución del error (piense en una fila en [matemáticas] \ mathbf {Y} [/ matemáticas]).
Esta es una forma específica de la tarea de generalización. Veamos cómo la descomposición de Bias-Varianza revela las capas.
¿Qué es el equilibrio de sesgo-varianza?
El compromiso de Bias-Variance se basa en descomponer el valor del error en tres valores positivos de dos componentes [2]:
Hablemos de cada pieza:
Error irreducible: Esta es la varianza de nuestra distribución de errores que apareció en nuestros supuestos. Por tales suposiciones, este término de error no se puede predecir, por lo que no tenemos la esperanza de reducir la varianza asociada a él.
Parcialidad[matemáticas] ^ 2 [/ matemáticas]: Pensemos en nuestro [matemáticas] \ mathbf {Y} [/ matemáticas] matriz de antes. Como mencioné, cada columna representa el [matemáticas] y [/ matemáticas]-vector podríamos obtener en un solo conjunto de datos de entrenamiento. Imagina que encajamos [matemáticas] S [/ matemáticas] modelos para cada una de estas columnas (junto con el asociado [matemáticas] \ mathbf {x} [/ matemáticas]'s), proporcionando funciones estimadas [matemáticas] f _ {\ textrm {est}} ^ {(1)} (\ cdot), f _ {\ textrm {est}} ^ {(2)} (\ cdot), \ cdots, f _ {\ textrm {est }} ^ {(S)} (\ cdot) [/ math]. Vamos a evaluar cada uno de estos en [matemáticas] \ mathbf {x} _1 [/ matemáticas], dándonos un conjunto de predicciones [math]\hat{y}_1^{(1)},\hat{y}_1^{(2)},\cdots,\hat{y}_1^{(S)}[/math]. Si tuviera que tomar el promedio de estos, reste [matemáticas] f (\ mathbf {x} _1) [/ matemáticas] y al cuadrado eso, eso te daría sesgo al cuadrado [3]. Si este número es alto, su predicción promedio entre las muestras está desactivada. En otras palabras, su procedimiento está 'sesgado' de tal manera que está constantemente fuera de la marca en una dirección, ¡no es una propiedad deseable!
Diferencia: Considere el mismo conjunto de predicciones. La varianza es solo la varianza de estas predicciones. Si la varianza es alta, nuestro procedimiento de estimación dice cosas muy diferentes para diferentes muestras al mismo tiempo. [matemáticas] \ mathbf {x} _1 [/ matemáticas] ¡Otra propiedad indeseable!
Dado que nuestro objetivo es minimizar su suma, deseamos que cada uno sea lo más pequeño posible. Por supuesto, el n. ° 1 no tiene remedio, por lo que nos centramos en el n. ° 2 y n. ° 3. La compensación de Bias-Variance nos dice que estos dos negociar - un procedimiento de estimación que funciona bien en uno tiende a funcionar mal en el otro.
¡Pero hay buenas noticias!
Lo llamé útil, ¿no? ¿Cómo nos ayuda algo de esto en la tarea de generalización? Pues lo hace.
Para explicar cómo, consideremos un procedimiento de estimación que está parametrizado por un parámetro que nos permite atravesar esta compensación. Elegir un valor en un extremo nos dará un procedimiento de estimación que funciona muy bien en Bias pero mal en varianza. Una elección en el otro extremo tiene el efecto contrario. Desde este ángulo, consideramos dos buenas noticias:
La compensación no es una compensación perfecta. Hay un "punto medio feliz" donde se minimiza el error total. Podríamos elegir nuestro parámetro (usando ese procedimiento clásico de validación cruzada con el que todos estamos familiarizados) para llegar a ese punto medio.
El término medio feliz persiste fuera de la muestra. ¡Esto suele ser cierto en todos los conjuntos de datos! ¡Este es un gran negocio! La razón de esto es la idea generalizada de complejidad. Ese término medio feliz habla del nivel de complejidad del mecanismo subyacente de los datos, y esa complejidad es relativamente constante en diferentes muestras [4]. ¡Ahora podemos progresar!
Debido a esta noticia, casi todos los modelos que ha encontrado tienen 'hiperparámetros' que hacen exactamente esto. Este es el propósito genérico de 'regularización'. ¿Penalización de coeficientes en regresión de cresta, regresión de lazo y regresión logística? Esos son para atravesar el equilibrio de sesgo-varianza. Profundidad de los árboles en bosques al azar? ¡La misma cosa! ¿Número de vecinos en k-vecinos más cercanos? Lo mismo otra vez!
Dado que esto ha guiado nuestra intuición para diseñar tantos modelos de ML, ¿no está claro por qué es tan importante?
¡Vamos a verlo!
He hablado mucho, hagamos un ejemplo. Decir [matemáticas] \ mathbf {x} [/ matemáticas] Es un escalar de tiempo-esque. De esa manera, podemos imaginar nuestra verdadera función y una muestra de ella como:
Estos puntos representan un muestra única conjunto de datos Nuestro trabajo es usarlos para adivinar esa verdadera curva de función.
Entonces, usemos una versión suavizada del algoritmo vecino k-más cercano para hacer exactamente eso. Para estar en línea con lo anterior, hagámoslo en muchas muestras y superpongamos cada curva de predicción sobre la función verdadera.
Luego elegiremos un particular [matemáticas] x [/ matemáticas]-valor (llámalo [matemáticas] x_1 [/ matemáticas]) y observe el histograma de predicciones para ese punto. Aquí, podemos señalar el sesgo y la varianza.
También hagamos esto para variar los puntos dentro de la compensación Bias-Variance, que se puede lograr variando el ancho de nuestro algoritmo vecino más cercano.
Todo este trabajo se puede representar con un visual:
Entonces, vemos: un procedimiento de estimación optimizado para Bias es rápido para aceptar el patrón de onda y dominante, pero con frecuencia se confunde con el ruido. Un procedimiento de estimación optimizado para Variance duda en aceptar tales ondas, protegiéndose del ruido, pero sin conocer el alcance de ese mecanismo subyacente. En algún lugar en el medio hay un procedimiento de estimación que funcionará mejor fuera de la muestra, de manera consistente.
Ahora para algunos comentarios desorganizados
La descomposición de sesgo-varianza es más útil que los supuestos que se muestran. Se generaliza a diferentes pérdidas e incluso problema de clasificaciones. Entonces siempre tenlo en cuenta, incluso si tu problema es diferente.
En realidad, solo tenemos una sola columna de [matemáticas] \ mathbf {Y} [/ matemáticas] - ¿Cómo podemos optimizar las columnas en la práctica? En el formulario anterior, donde tratamos con un único punto de datos y muchas muestras, no podemos, ya que nunca tenemos ese lujo. Pero la validación cruzada en realidad produce un hiperparámetro sintonizado de manera similar como si lo hiciéramos. Esto se debe a la superposición precisa en el [matemáticas] \ mathbf {x} [/ matemáticas]'s (como obtendrías en una sola fila de [matemáticas] \ mathbf {Y} [/ matemáticas]) no es necesario.
Notas a pie de página
[1] ¿Solo un punto? ¿Qué? Ok, en realidad, promediamos muchos puntos fuera de la muestra. Pero para esta explicación, solo necesitamos considerar un solo punto.
[2] ¿Quieres ver el álgebra? Aqui tienes:
[3] OK, esto no es exactamente cierto. El sesgo es un cálculo de expectativa realizado con respecto a la distribución de errores. Estoy tomando el promedio asociado con muestras de esa distribución. Si [matemáticas] S [/ matemáticas] es grande, estos dos estarán cerca. Voy con este enfoque porque es más fácil de entender. También hay un problema menor similar con Variance.
[4] También podrías argumentar que habla al nivel de ruido en el conjunto de datos. Veo esto como el otro lado de la misma moneda. Si conoce la complejidad de la función verdadera y tiene algunos datos observados, también tiene una idea del nivel de ruido.
Fuentes
[1] Me encontré con esto por primera vez en el Elemento de aprendizaje estadístico. Tienen una explicación diferente y probablemente mejor de esta idea en el capítulo 7.
Si se encuentra en Australia, tiene muchas opciones y puede utilizar empresas estadounidenses. Estaba con una firma muy importante en EE. UU. Y clientes en Australia. En algunos países no pude iniciar negocios, pero Australia no era uno. Querrá invertir en el extranjero, el mercado de valores de Australia está lleno de materias primas, así que obtenga un par de ellas. No sé cuánto tiene que invert...
Respuestas
La compensación de Bias-Variance está relacionada con la descomposición de Bias-Variance. Esa descomposición es una de nuestras ideas más útiles sobre la tarea extremadamente difícil de generalización. Esa tarea: dada una muestra de datos, ¿cómo se construye un modelo que pronostique bien otro, aún invisible muestra de datos?
Me explico.
Primero, ¿qué estamos asumiendo?
Asumimos [matemáticas] y [/ matemáticas] es una variable de respuesta escalar de valor real y [matemáticas] \ mathbf {x} [/ matemáticas] Es un vector de predictores. Están relacionados con alguna función "verdadera" desconocida [matemáticas] f (\ cdot) [/ matemáticas] como:
dónde [matemáticas] \ epsilon [/ matemáticas] es un ruido irreducible que nace de una distribución de errores donde [math] \ mathbb {E} [\ epsilon] = 0 [/ math] y [matemáticas] \ textrm {var} (\ epsilon) = \ sigma _ {\ epsilon} ^ 2 [/ matemáticas]. Entonces un observado [matemáticas] y_0 [/ matemáticas] se genera conectando el asociado [matemáticas] \ mathbf {x} _0 [/ matemáticas] dentro [matemáticas] f (\ cdot) [/ matemáticas] y agregando un [matemáticas] \ epsilon_0 [/ matemáticas] muestreado de la distribución de errores.
En general, nuestro objetivo es adivinar [matemáticas] f (\ cdot) [/ matemáticas] de nuestros datos. Llamemos a nuestra función estimada [matemáticas] f _ {\ textrm {est}} (\ cdot) [/ matemáticas] y el algoritmo que ingiere nuestros datos de entrenamiento y produce esta función como "procedimiento de estimación".
Antes de cargar, será útil considerar un entorno al que en realidad no tenemos acceso en aplicaciones reales. Este es el entorno donde podemos repetidamente muestra [matemáticas] y [/ matemáticas]es de la verdadera función para el mismo [matemáticas] \ mathbf {x} [/ matemáticas]. Si tenemos [matemáticas] N [/ matemáticas] puntos de datos en un conjunto de datos muestreados, y repetidamente muestreamos [matemáticas] S [/ matemáticas] veces (donde [matemáticas] S [/ matemáticas] es grande), entonces podemos representar todos nuestros [matemáticas] y [/ matemáticas]es como un [matemáticas] N [/ matemáticas]-Por-[matemáticas] S [/ matemáticas] matriz [matemáticas] \ mathbf {Y} [/ matemáticas]. Entonces la entrada [matemáticas] y_ {i, j} [/ matemáticas] es el [matemáticas] j [/ matemáticas]-th muestra usando [matemáticas] \ mathbf {x} _i [/ matemáticas]. En otras palabras, una columna es un conjunto de [matemáticas] y [/ matemáticas] valores que obtendríamos en un solo conjunto de datos. Una fila es un conjunto de muestras [matemáticas] y [/ matemáticas]es para un particular [matemáticas] \ mathbf {x} _i [/ matemáticas].
Ahora supongamos que estamos interesados en minimizar la pérdida esperada de error al cuadrado en algún punto entrante aún no visto [matemáticas] \ mathbf {x} _1 [/ matemáticas]. Es decir, nos importa este valor [1]:
donde la expectativa se realiza con respecto a la distribución del error (piense en una fila en [matemáticas] \ mathbf {Y} [/ matemáticas]).
Esta es una forma específica de la tarea de generalización. Veamos cómo la descomposición de Bias-Varianza revela las capas.
¿Qué es el equilibrio de sesgo-varianza?
El compromiso de Bias-Variance se basa en descomponer el valor del error en tres valores positivos de dos componentes [2]:
Hablemos de cada pieza:
Dado que nuestro objetivo es minimizar su suma, deseamos que cada uno sea lo más pequeño posible. Por supuesto, el n. ° 1 no tiene remedio, por lo que nos centramos en el n. ° 2 y n. ° 3. La compensación de Bias-Variance nos dice que estos dos negociar - un procedimiento de estimación que funciona bien en uno tiende a funcionar mal en el otro.
¡Pero hay buenas noticias!
Lo llamé útil, ¿no? ¿Cómo nos ayuda algo de esto en la tarea de generalización? Pues lo hace.
Para explicar cómo, consideremos un procedimiento de estimación que está parametrizado por un parámetro que nos permite atravesar esta compensación. Elegir un valor en un extremo nos dará un procedimiento de estimación que funciona muy bien en Bias pero mal en varianza. Una elección en el otro extremo tiene el efecto contrario. Desde este ángulo, consideramos dos buenas noticias:
Debido a esta noticia, casi todos los modelos que ha encontrado tienen 'hiperparámetros' que hacen exactamente esto. Este es el propósito genérico de 'regularización'. ¿Penalización de coeficientes en regresión de cresta, regresión de lazo y regresión logística? Esos son para atravesar el equilibrio de sesgo-varianza. Profundidad de los árboles en bosques al azar? ¡La misma cosa! ¿Número de vecinos en k-vecinos más cercanos? Lo mismo otra vez!
Dado que esto ha guiado nuestra intuición para diseñar tantos modelos de ML, ¿no está claro por qué es tan importante?
¡Vamos a verlo!
He hablado mucho, hagamos un ejemplo. Decir [matemáticas] \ mathbf {x} [/ matemáticas] Es un escalar de tiempo-esque. De esa manera, podemos imaginar nuestra verdadera función y una muestra de ella como:
Estos puntos representan un muestra única conjunto de datos Nuestro trabajo es usarlos para adivinar esa verdadera curva de función.
Entonces, usemos una versión suavizada del algoritmo vecino k-más cercano para hacer exactamente eso. Para estar en línea con lo anterior, hagámoslo en muchas muestras y superpongamos cada curva de predicción sobre la función verdadera.
Luego elegiremos un particular [matemáticas] x [/ matemáticas]-valor (llámalo [matemáticas] x_1 [/ matemáticas]) y observe el histograma de predicciones para ese punto. Aquí, podemos señalar el sesgo y la varianza.
También hagamos esto para variar los puntos dentro de la compensación Bias-Variance, que se puede lograr variando el ancho de nuestro algoritmo vecino más cercano.
Todo este trabajo se puede representar con un visual:
Entonces, vemos: un procedimiento de estimación optimizado para Bias es rápido para aceptar el patrón de onda y dominante, pero con frecuencia se confunde con el ruido. Un procedimiento de estimación optimizado para Variance duda en aceptar tales ondas, protegiéndose del ruido, pero sin conocer el alcance de ese mecanismo subyacente. En algún lugar en el medio hay un procedimiento de estimación que funcionará mejor fuera de la muestra, de manera consistente.
Ahora para algunos comentarios desorganizados
Notas a pie de página
[1] ¿Solo un punto? ¿Qué? Ok, en realidad, promediamos muchos puntos fuera de la muestra. Pero para esta explicación, solo necesitamos considerar un solo punto.
[2] ¿Quieres ver el álgebra? Aqui tienes:
[3] OK, esto no es exactamente cierto. El sesgo es un cálculo de expectativa realizado con respecto a la distribución de errores. Estoy tomando el promedio asociado con muestras de esa distribución. Si [matemáticas] S [/ matemáticas] es grande, estos dos estarán cerca. Voy con este enfoque porque es más fácil de entender. También hay un problema menor similar con Variance.
[4] También podrías argumentar que habla al nivel de ruido en el conjunto de datos. Veo esto como el otro lado de la misma moneda. Si conoce la complejidad de la función verdadera y tiene algunos datos observados, también tiene una idea del nivel de ruido.
Fuentes
[1] Me encontré con esto por primera vez en el Elemento de aprendizaje estadístico. Tienen una explicación diferente y probablemente mejor de esta idea en el capítulo 7.