Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Lec8 PDF
Lec8 PDF
El Problema de Mı́nimos
Cuadrados
El problema del ajuste de datos; es decir, descubrir una función matemática que
pueda explicar de la mejor forma posible el comportamiento de algún mecanismo o
grupo de seres u objetos que puede ser medido, y del cual conocemos algunos datos
(con sus posibles errores de medición), es un problema clásico y ha supuesto un reto
para la comunidad matemática desde su planteamiento por Gauss y Legendre hacia
1800.
173
174 El Problema de Mı́nimos Cuadrados
r “ Ax ´ b P Cm ,
que se llama residuo o vector residual, sea lo “más pequeño” posible. Lo grande
o pequeño que sea r lo mediremos mediante una norma. El problema de mı́nimos
cuadrados consiste en encontrar x P Cnˆ1 para que el vector residuo tenga la menor
norma euclı́dea posible. Su formulación precisa serı́a la siguiente:
Ejemplo 8.1 El ejemplo más tı́pico de ajuste de datos por mı́nimos cuadrados es
el cálculo del polinomio de interpolación: dados m puntos del plano pxi , yi q,
i “ 1, . . . , m, de forma que xi ‰ xj para i ‰ j, se trata de encontrar un polinomio
de grado a lo más m ´ 1, ppxq “ a0 ` a1 x ` ¨ ¨ ¨ ` am´1 xm´1 , que pase por los n
puntos.
ppxi q “ yi , i “ 1, . . . , m.
5 Figura 8.1:
4
a=-5:5;
3
A=fliplr(vander(a));
b=[0 0 0 1 1 1 0 0 0 0 0]’;
2
c=Azb;
1
p=flipud(c);
−6 −4 −2 2 4 6 t=linspace(-5.05,5.05);
−1
plot(t, polyval(p,t),a,b,’r*’,...;
−2 ’markersize’,10);
−3 zeroaxes
curva que interprete los datos obtenidos. Como las mediciones se realizan en momen-
tos puntuales, tal gráfica deberı́a reflejar, salvo que se tengan motivos para pensar
lo contrario, una comportamiento suave entre dos datos consecutivos, y no la fluc-
tuación que muestra el polinomio de interpolación de nuestro ejemplo. Quizá un
polinomio de menor grado pueda mostrar un mejor comportamiento. Tal polinomio
no pasará por algunos de los puntos. Pero la medición de todo proceso real conlleva
errores que podrı́an explicar tal fenómeno.
Ejemplo 8.2 (Ajuste por mı́nimos cuadrados) Con los mismos datos del ejem-
plo anterior calcular el polinomio de grado 7 que mejor se ajusta a los datos en el
sentido de los mı́nimos cuadrados.
Siguiendo los mismos pasos que en el ejemplo anterior lo que buscamos es un poli-
nomio de grado a lo más n ´ 1 ď m ´ 1
ppxq “ a0 ` a1 x ` ¨ ¨ ¨ ` an´1 xn´1
tal que }ppxq ´ y}2 sea mı́nimo. Aquı́, ppxq es el vector cuya i-ésima componente es
ppxi q y el vector y es el que tiene por i-ésima componente yi .
Ahora bien, si » fi
1 x1 x21 ¨ ¨ ¨ x1n´1
—1 x2 x2 ¨ ¨ ¨ xn´1 ffi
— 2 2 ffi
A “ — .. .. .. . . .. ffi
–. . . .. fl
1 xm xm ¨ ¨ ¨ xm
2 n´1
Una observación final antes de abordar la solución del problema de mı́nimos cua-
drados y los algoritmos correspondientes. Una variante del problema de encontrar
8.2 La solución del problema de mı́nimos cuadrados 177
5 Figura 8.2:
4 a=-5:5
3
A=fliplr(vander(a))
2
b=[0 0 0 1 1 1 0 0 0 0 0]’;
p=polyfit(a,b,7);
1
t=linspace(-5.3,5.3);
−6 −4 −2 2 4 6 plot(t, polyval(p,t),a,b,’r*’,...
−1 ’markersize’,10);
−2 axis([-6 6 -3 5]);
−3 zeroaxes
que mejor se ajusta a una de tales nubes de puntos. Aquı́ φ1 , φ2 ,. . . , φn son funciones
dadas, o de las que uno sospecha que una combinación lineal de ellas puede ajustarse
bien a los datos. En este caso el problema se reduce a calcular el vector c donde se
alcanza el mı́nimo:
mı́n }Ax ´ y}2 ,
xPC
r=Ax0−b
b Im A
Ax0
(i) Ax0 “ PA b.
(ii) b ´ Ax0 P pIm AqK .
(iii) A˚ Ax0 “ A˚ b.
Pero como PA b P Im A, existe x1 P Cn tal que Ax1 “ PA b; i.e., }Ax1 ´b}2 “ }PA b´b}2 .
Por lo tanto mı́nn }Ax ´ b}2 “ }PA b ´ b}2 , tal y como deseábamos mostrar.
xPC
}PA b ´ b}22 “ mı́nn }Ax ´ b}22 “ }Ax0 ´ b}22 “ }Ax0 ´ PA b}22 ` }PA b ´ b}22 .
xPC
Sólo queda demostrar la equivalencia entre las tres condiciones. Por una parte
Finalmente, como pIm AqK “ Ker A˚ tenemos que b ´ Ax0 P pIm AqK si y sólo si
A˚ pb ´ Ax0 q “ 0; i. e., A˚ Ax0 “ A˚ b.
El Teorema 8.3 nos da las claves para calcular un vector x0 que solucione el problema
de mı́nimos cuadrados. En primer lugar, el sistema A˚ Ax “ A˚ b recibe el nombre de
180 El Problema de Mı́nimos Cuadrados
Teniendo en cuenta todo esto podemos dar un primer algoritmo para la resolución
del problema de mı́nimos cuadrados.
A˚ A “ R˚ Q˚ QR “ R˚ R “ LL˚ ,
Ahora bien, cuando el número de condición de A es muy grande (lo suficiente como
para poder pensar que A˚ A es singular) hay otras formas de resolver el problema de
mı́nimos cuadrados que veremos a continuación. En la primera de ellas el número de
condición puede ser grande pero no tan grande como para pensar que A tiene rango
menor que n. En este caso se puede usar la factorización QR de A y resolver un
sistema triangular superior. La idea es usar la segunda forma de obtener la solución
182 El Problema de Mı́nimos Cuadrados
del problema de mı́nimos cuadrados que hemos visto en el Teorema 8.3: x0 es solución
del problema de mı́nimos cuadrados mı́nn }Ax ´ b}2 si y s ólo si Ax0 “ PA b.
xPF
2. Calcúlese Q˚ b.
Ahora vamos a “volver hacia atrás” a fin de recuperar la solución del problema
en términos de los datos originales: A y b. Recordemos, antes de nada, que con
las notaciones introducidas A “ Ur Σr Vr˚ es una descomposición reducida de A en
valores singulares. En consecuencia
A: “ Vr Σ´1 ˚
r Ur
porque c “ Ur˚ b. Ası́ pues, el vector de norma mı́nima que soluciona el problema de
mı́nimos cuadrados es
x0 “ Vr Σ´1 ˚ :
r Ur b “ A b
Este proceso, además, nos proporciona un algoritmo para calcular la solución del
problema de mı́nimos cuadrados en el caso más general.
2. Calcular c “ U ˚ b.
Ya sabemos que, en este caso, la solución del problema es única y viene dada por
x “ A: b
y “ P b,
auxiliares. En primer lugar debemos recordar que para una matriz A P Fmˆn de
rango completo n el número de condición es
σ1
κ2 pAq “ }A}2 }A: }2 “ .
σn
b r=Ax−b
θ y=Ax=Pb
Im A
Ası́ pues
}y}2
cos θ “ .
}b}2
Para el seno usamos la identidad sen2 θ “ 1 ´ cos2 θ:
}y}22 }b}22 ´ }y}22
sen2 θ “ 1 ´ “ .
}b}22 }b}22
Ahora bien, b “ y ` b ´ y siendo y y b ´ y ortogonales (y P Im A y b ´ y “
b ´ P b “ pIm ´ P qb P pIm AqK ). Por consiguiente, usando el Teorema de Pitágoras,
}b}22 “ }y}22 ` }b ´ y}22 y
}b ´ y}2
sen θ “
}b}2
Todas estos resultados generalizan los habituales en R2 (Figura 8.4)
En tercer lugar, para cualquier norma inducida }Ax} ď }A} }x}. Necesitaremos una
medidad de lo lejos o cerca que está }y} “ }Ax} de su máximo valor posible:
}A}2 }x}2 }A}2 }x}2
η“ “ .
}y}2 }Ax}2
Estos parámetros tienen el siguiente rango de variación:
1 ď κpAq ă 8 0 ď θ ď π{2 1 ď η ď κpAq
Todas estas acotaciones son claras excepto, quizá, la última que viene de la siguiente
observación:
}x}2 “ }A´1 Ax}2 ď }A´1 }2 }Ax}2 ,
de modo que
}A}2 }A´1 }2 }Ax}2
ηď “ κ2 pAq.
}Ax}2
Para probar la propiedad (8.3) se usa el Teorema SVD para ver que los valores
singulares de pA˚ Aq´1 A˚ y los de A: coinciden.
}P }2 “ σ1 pP q “ 1
190 El Problema de Mı́nimos Cuadrados
}y}2
Finalmente, recordemos que cos θ “ . En conclusión:
}b}2
}P }2 }b}2 1
κpbq “ “ ,
}y}2 cos θ
tal y como se deseaba demostrar.
1 1 }δA}2 σn
(v) En primer lugar definimos E “ δA y f “ δb. Por hipótesis, ă
}A}2 σ1
y como }A}2 “ σ1 , tenemos que }δA}2 ă σn . Por el Teorema 3.18 resulta que
rangpA ` δAq “ n y consecuentemente rangpA ` tEq “ n para todo t P r0, s. Se
sigue entonces que el sistema
tiene una única solución para cada t P r0, s. Invertir una matriz es una función
diferenciable en los elementos de la matriz. Por lo tanto x es una función diferenciable
de t en r0, s. Por la definición de diferencial
Necesitamos una estimación de }x1 p0q}2 . Para ello calculamos x1 p0q en (8.11). Pri-
mero derivamos
E ˚ Ax ` A˚ Ex ` A˚ Ax1 p0q “ A˚ f ` E ˚ b.
Ası́
x1 p0q “ pA˚ Aq´1 A˚ pf ´ Exq ` pA˚ Aq´1 E ˚ pb ´ Axq.
Tomando normas:
}x1 p0q}2 ď }pA˚ Aq´1 A˚ }2 p}f }2 ` }E}2 }x}2 q ` }pA˚ Aq´1 }2 }E ˚ }2 }b ´ Ax}2 .
8.5 Estabilidad de los algoritmos para el problema de mı́nimos cuadrados 191
1
Por una parte, }E}2 “ }δA}2 ď }A}2 . Y de la misma forma }f }2 ď }b}2 . También
}A˚ }2 “ }A}2 , ası́ que
Por otra parte, por el Lema 8.4, }pA˚ Aq´1 A˚ }2 }A}2 “ κ2 pAq y }pA˚ Aq´1 }2 }A}22 “
κ2 pAq2 . Entonces
ˆ ˙
}x1 p0q}2 }b}2 {}Ax}2 }b ´ Ax}2 {}Ax}2
ď κ2 pAq ` 1 ` κ2 pAq2 .
}x}2 }A}2 }x}2 {}Ax}2 }A}2 }x}2 {}Ax}2
sustituyendo en (8.12)
" ˆ ˙ *
}x̃ ´ x}2 1 κ2 pAq2 tan θ
ď κ2 pAq `1 ` ` Op2 q,
}x}2 η cos θ η
Teorema 8.6 Supongamos que el problema de mı́nimos cuadrados con una matriz
A de rango completo se resuelve mediante el algoritmo QR por reflexiones de Hou-
seholder o mediante la descomposición en valores singulares en un ordenador que
cumple los axiomas (5.2) y (5.4) de la Lección 5. Este algoritmo es estable hacia
atrás: para cada A P Fmˆn (m ě n y rang A “ n) existe una perturbación δA tal
que
}δA}
“ OpM q
}A}
p producida por el algoritmo satisface
y la solución x