ハウスホルダー変換の使用とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > ハウスホルダー変換の使用の意味・解説 

ハウスホルダー変換の使用

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/02/28 14:18 UTC 版)

QR分解」の記事における「ハウスホルダー変換の使用」の解説

QR分解のためのハウスホルダー変換: 目標ベクトル x {\displaystyle x} を同じ長さかつ e 1 {\displaystyle e_{1}} の共線であるベクトル変換する線形変換を見つけることである。直交射影(グラム・シュミット法)を使うこともできるが、ベクトル x {\displaystyle x} と e 1 {\displaystyle e_{1}} が直交に近い場合数値的に安定である。代わりにハウスホルダー変換により点線通して鏡映する(点線は x {\displaystyle x} と e 1 {\displaystyle e_{1}} のなす角の二等分線)。この変換による最大角は45度である。 ハウスホルダー変換 (またはハウスホルダー鏡映)はベクトル取り平面または超平面に関する鏡映をする変換である。この演算はm×n行列 A {\displaystyle A} (m ≥ n)のQR変換計算に使うことができる。 Qは一つ座標除いたすべての座標未知でもベクトル鏡映するために使用できるスカラαに対して ‖ x ‖ = | α | {\displaystyle \|{\boldsymbol {x}}\|=|\alpha |} を満たすような A {\displaystyle A} の任意の実m次元列ベクトル x {\displaystyle {\boldsymbol {x}}} を考える。もしこのアルゴリズム浮動小数点演算用いて実装されている場合桁落ちを防ぐため、行列Aの最終的な三角部分においてすべての要素が0である後のピボット座標 x k {\displaystyle x_{k}} に対し、αを x {\displaystyle {\boldsymbol {x}}} のk番目の座標の逆符号とする。複素行列場合、 α = − exp ⁡ ( i argx k ) ‖ x ‖ {\displaystyle \alpha =-\exp(i\arg x_{k})\|{\boldsymbol {x}}\|} (Stoer & Bulirsch 2002, p. 225)とし、以下のQの導出において転置共役転置読み替えること。 ここで、 e 1 {\displaystyle {\boldsymbol {e}}_{1}} をベクトル(1 0 … 0)T、||·||をユークリッド距離、 I {\displaystyle I} をm×m単位行列とし、 u = x − α e 1 , v = u ‖ u ‖ , Q = I − 2 v v T {\displaystyle {\begin{aligned}{\boldsymbol {u}}&={\boldsymbol {x}}-\alpha {\boldsymbol {e}}_{1},\\{\boldsymbol {v}}&={{\boldsymbol {u}} \over \|{\boldsymbol {u}}\|},\\Q&=I-2{\boldsymbol {v}}{\boldsymbol {v}}^{\textsf {T}}\end{aligned}}} あるいは、 A {\displaystyle A} が複素行列ならば、 Q = I − 2 v v ∗ {\displaystyle Q=I-2{\boldsymbol {v}}{\boldsymbol {v}}^{*}} とおく。 Q {\displaystyle Q} はm×mハウスホルダー行列であり、 Q x = [ α 0 ⋯ 0 ] T   {\displaystyle Q{\boldsymbol {x}}={\begin{bmatrix}\alpha &0&\cdots &0\end{bmatrix}}^{\textsf {T}}\ } これによりm×n行列Aを上三角の形に漸次変換できる。まず、xの最初の列を選んで得られるハウスホルダー行列Q1にAを乗算する。この結果行列Q1Aは左の列が(最初の行を除き)ゼロになる。 Q 1 A = [ α 1 ⋆ … ⋆ 0 ⋮ A ′ 0 ] {\displaystyle Q_{1}A={\begin{bmatrix}\alpha _{1}&\star &\dots &\star \\0&&&\\\vdots &&A'&\\0&&&\end{bmatrix}}} この操作をA′ (Q1Aから最初の列と最初の行を除いたもの)に繰り返すと、ハウスホルダー行列Q′2が得られる。Q′2はQ1より小さということ注意すること。A′の代わりにQ1Aで計算したいため、A′を左上拡張し、ひとつの1を埋め必要がある。つまり、一般的には Q k = [ I k1 0 0 Q k ′ ] {\displaystyle Q_{k}={\begin{bmatrix}I_{k-1}&0\\0&Q_{k}'\end{bmatrix}}} とする。 t {\displaystyle t} 回このプロセス繰り返すと、 t = min ( m − 1 , n ) {\displaystyle t=\min(m-1,n)} のとき、 R = Q t ⋯ Q 2 Q 1 A {\displaystyle R=Q_{t}\cdots Q_{2}Q_{1}A} は上三角行列である。であるからして、 Q = Q 1 T Q 2 T ⋯ Q t T {\displaystyle Q=Q_{1}^{\textsf {T}}Q_{2}^{\textsf {T}}\cdots Q_{t}^{\textsf {T}}} とすると、 A = Q R {\displaystyle A=QR} は A {\displaystyle A} のQR分解である。 このメソッド先述のグラム・シュミット法よりも数値的安定性がある。 下表サイズnの正方行列仮定したときの、ハウスホルダー変換によるQR分解のk番目のステップにおける計算量を示す。 演算k番目のステップにおける計算量乗算 2 ( n − k + 1 ) 2 {\displaystyle 2(n-k+1)^{2}} 加算 ( n − k + 1 ) 2 + ( n − k + 1 ) ( n − k ) + 2 {\displaystyle (n-k+1)^{2}+(n-k+1)(n-k)+2} 除算 1 {\displaystyle 1} 平方根 1 {\displaystyle 1} これらの数をn − 1ステップ(サイズnの正方行列であるため)まで合計して、このアルゴリズムの(浮動小数点演算観点からの)複雑さ2 3 n 3 + n 2 + 1 3 n − 2 = O ( n 3 ) {\displaystyle {\frac {2}{3}}n^{3}+n^{2}+{\frac {1}{3}}n-2=O\left(n^{3}\right)} と表せる。

※この「ハウスホルダー変換の使用」の解説は、「QR分解」の解説の一部です。
「ハウスホルダー変換の使用」を含む「QR分解」の記事については、「QR分解」の概要を参照ください。

ウィキペディア小見出し辞書の「ハウスホルダー変換の使用」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

ハウスホルダー変換の使用のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ハウスホルダー変換の使用のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのQR分解 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS