En el libro de Bishop sobre aprendizaje automático, se analiza el problema de ajustar una función polinómica a un conjunto de puntos de datos.
Sea M el orden del polinomio ajustado. Dice como eso
Vemos que, a medida que M aumenta, la magnitud de los coeficientes generalmente aumenta. En particular para el polinomio M = 9, los coeficientes se han ajustado finamente a los datos desarrollando grandes valores positivos y negativos para que la función polinómica correspondiente coincida exactamente con cada uno de los puntos de datos, pero entre puntos de datos (particularmente cerca de los extremos de rango) la función exhibe las grandes oscilaciones.
No entiendo por qué los valores grandes implican un ajuste más preciso de los puntos de datos. Creo que los valores serían más precisos después del decimal para un mejor ajuste.
fuente
Respuestas:
Este es un problema bien conocido con polinomios de alto orden, conocido como fenómeno de Runge . Numéricamente está asociado con un mal acondicionamiento de la matriz de Vandermonde , lo que hace que los coeficientes sean muy sensibles a pequeñas variaciones en los datos y / o redondeo en los cálculos (es decir, el modelo no es establemente identificable ). Vea también esta respuesta en el SciComp SE.
Hay muchas soluciones a este problema, por ejemplo , la aproximación de Chebyshev , el suavizado de splines y la regularización de Tikhonov . La regularización de Tikhonov es una generalización de la regresión de crestas , penalizando una norma del vector de coeficientes θ , donde para alisar la matriz de peso Λ es un operador derivado. Para penalizar las oscilaciones, puede usar Λ θ = p ′ ′ [ x ] , donde p [ x ]||Λθ]|| θ Λ Λθ=p′′[x] p[x] es el polinomio evaluado en los datos.
EDITAR: La respuesta del usuario hxd1011 señala que algunos de los problemas numéricos de mal acondicionamiento pueden abordarse utilizando polinomios ortogonales, lo cual es un buen punto. Sin embargo, quisiera señalar que aún persisten los problemas de identificación con los polinomios de alto orden. Es decir, el mal acondicionamiento numérico se asocia con la sensibilidad a las perturbaciones "infinitesimales" (por ejemplo, redondeo), mientras que el mal acondicionamiento "estadístico" se refiere a la sensibilidad a las perturbaciones "finitas" (por ejemplo, valores atípicos; el problema inverso está mal planteado ).
Los métodos mencionados en mi segundo párrafo están relacionados con esta sensibilidad atípica . Puede pensar en esta sensibilidad como una violación del modelo de regresión lineal estándar, que al usar un desajuste asume implícitamente que los datos son gaussianos. La regularización de Splines y Tikhonov trata esta sensibilidad atípica al imponer una suavidad previa al ajuste. Ofertas de aproximación de Chebyshev con este mediante el uso de una L ∞ inadaptado aplican sobre el dominio continuo , es decir, no sólo en los puntos de datos. Aunque los polinomios de Chebyshev son ortogonales (wrt un cierto producto interno ponderado), creo que si se usan con un desajuste L 2 sobre los datos,L2 L∞ L2 todavía tener sensibilidad atípica.
fuente
Lo primero que debe verificar es si el autor está hablando de polinomios sin procesar frente a polinomios ortogonales .
Para polinomios ortogonales. el coeficiente no se está volviendo "más grande".
Aquí hay dos ejemplos de expansión polinómica de segundo y décimo quinto orden. Primero mostramos el coeficiente para la expansión de segundo orden.
Luego mostramos el decimoquinto orden.
Tenga en cuenta que estamos utilizando polinomios ortogonales , por lo que el coeficiente del orden inferior es exactamente el mismo que los términos correspondientes en los resultados del orden superior. Por ejemplo, la intersección y el coeficiente para primer orden es 20.09 y -29.11 para ambos modelos.
fuente
summary(lm(mpg~poly(wt,2),mtcars)); summary(lm(mpg~poly(wt,5),mtcars)); summary(lm(mpg~ wt + I(wt^2),mtcars)); summary(lm(mpg~ wt + I(wt^2) + I(wt^3) + I(wt^4) + I(wt^5),mtcars))
poly(x,2,raw=T)
summary(lm(mpg~poly(wt,15, raw=T),mtcars))
. Efecto masivo en los coeficientes!Abhishek, tiene razón en que mejorar la precisión de los coeficientes mejorará la precisión.
Creo que el problema de la magnitud es bastante irrelevante para el punto general de Bishop: que el uso de un modelo complicado con datos limitados conduce a un 'sobreajuste'. En su ejemplo, se usan 10 puntos de datos para estimar un polinomio de 9 dimensiones (es decir, 10 variables y 10 incógnitas).
Si ajustamos una onda sinusoidal (sin ruido), entonces el ajuste funciona perfectamente, ya que las ondas sinusoidales [en un intervalo fijo] pueden aproximarse con precisión arbitraria utilizando polinomios. Sin embargo, en el ejemplo de Bishop tenemos una cierta cantidad de "ruido" que no deberíamos encajar. La forma en que hacemos esto es manteniendo el número de puntos de datos al número de variables del modelo (coeficientes polinómicos) grandes o mediante la regularización.
La regularización impone restricciones 'blandas' al modelo (por ejemplo, en la regresión de cresta), la función de costo que intenta minimizar es una combinación de 'error de ajuste' y complejidad del modelo: por ejemplo, en la regresión de cresta, la complejidad se mide por la suma de coeficientes cuadrados En efecto, esto impone un costo en la reducción del error: el aumento de los coeficientes solo se permitirá si tiene una reducción lo suficientemente grande en el error de ajuste [qué tan grande es lo suficientemente grande se especifica mediante un multiplicador en el término de complejidad del modelo]. Por lo tanto, la esperanza es que al elegir el multiplicador apropiado no se ajustará a un término de ruido pequeño adicional, ya que la mejora en el ajuste no justifica el aumento de los coeficientes.
Preguntó por qué los coeficientes grandes mejoran la calidad del ajuste. Esencialmente, la razón es que la función estimada (sin + ruido) no es un polinomio, y los grandes cambios en la curvatura requeridos para aproximar el efecto de ruido con polinomios requieren coeficientes grandes.
Tenga en cuenta que el uso de polinomios ortogonales no tiene ningún efecto (he agregado un desplazamiento de 0.1 solo para que los polinomios ortogonales y sin procesar no estén uno encima del otro)
fuente