• 締切済み

線形数学 最小2乗解の求め方

ベクトルu1,u2をu1=(0,1,1),u2=(1,1,0)とする。またベクトルbをb=(1,0,1)とする。 という問題で、正規直交基底q1=1/√2(0,1,1),q2=1/√6(2,1,-1)を求めました。 その次の問題で、 「ベクトルq1,q2を列ベクトルとしてもつ行列をWとする。行列Wの列空間上の点で、bに最も近い点pを求めよ。また、連立一次方程式 Wx=b の最小2乗解x'を求めよ。」 というものでして、ネットや教科書を見て調べたのですが答えが導き出せません。 pとx’の導きだし方を教えていただけませんか。よろしくお願いします。

みんなの回答

回答No.1

こんにちは. まず,方程式系 Wx=b の解が存在する必要十分条件が 「bがWの列空間にあること」であることを思い出してください. 今回の場合はこれが満足されませんから,方程式系は解を持ちません. しかしながら,bを何らかの基準でWの列空間の元に対応させれば, 一応,解を得ることができます. そこで,Wの列空間の元のうち,bに一番近い点pを対応させます. これはbをWの列空間に直交射影すれば得られます. bの成分のうちq1に対応するものはq1^T*b,q2に対応するものはq2^T*bですから(^Tは転置記号), 射影したbはq1,q2を使って, p = q1*(q1^T*b) + q2*(q2^T*b) = W*W^T*b と書けます. bをp = W*W^T*bと見なして方程式を解くわけですから,解はある誤差を含むことになりますが, pはそれを最小とするものです(一番近い点を選んだため). Wx = bの最小二乗解は Wx' = p の解ですから, 後者に左からW^Tを乗算すれば解が得られます. Wの列の直交性に注意すると,以下の解を得ます. W^T*W*x' = W^T*p <==> x' = W^T*W*W^T*b <==> x' = W^T*b 具体的な数値はご自身で確認してください.

関連するQ&A