数据拟合线性最小二乘法及其应用(householder变换)
这样,可描述正交化方法求最小二乘解的计算步骤为:
1)对 × 阶矩阵A建立QR分解A=QR;
2)计算C=QY,形成方程组Rb=c;
3)用回代法解Rb=C得出最小二乘解b.
正交化方法因其数值稳定而显得优于求解法方程,但因对A建立分解的计算量较大,故除非已经有了这种分解的资料可直接引用或者法方程病态,一般还是愿意从法方程来求最小二乘解的.
第五章 matlab代码实现
5.1 Householder变换
matlab代码如下:
function [H,rho]=householder(x,y)
% 求解正交对称的Householder矩阵H,使Hx=rho*y,其中rho=-sign(x(1))*||x||/||y|| %
% 参数说明
% x:列向量
% y:列向量,x和y必须具有相同的维数
%
% 实例说明
% x=[3 5 6 8]';
% y=[1 0 0 0]';
% [H,rho]=householder(x,y);
% H*x-rho*y % 验证Hx=rho*y
% H'*H % 验证正交
%
% 关于HouseHolder变换
% 1.H=I-2vv',其中||v||=1,我们称H为反射(HouseHolder)矩阵,易证H对称且正交