機械学習線形代数

グラム・シュミットの正規化

ぐらむしゅみっとのせいきか · Gram-Schmidt orthogonalization
15 views

グラム・シュミットの正規化は、線形代数において互いに一次独立なベクトルの集合から、互いに直交し長さが1の正規直交基底を作り出すアルゴリズムです。機械学習やデータ分析においては、データの次元削減や主成分分析、行列のQR分解などの計算において、冗長な情報を排除し計算安定性を高めるための基礎手法として広く利用されています。

グラム・シュミットの正規化とは

グラム・シュミットの正規化を一言でいうと、与えられた複数のベクトルから互いに直交する長さ1の正規直交基底を順次計算して作成する数学的手法です。

詳しく解説

グラム・シュミットの正規化は、線形独立なベクトルの集合を受け取り、各ベクトルからすでに求めた直交ベクトルの方向成分を取り除く(射影を引く)ことで直交化を行い、最後にそれぞれの長さを1に正規化します。機械学習や数値計算の分野では、重なり合った特徴量の相関を取り除いたり、数値的安定性を保ちながら行列演算を行うために欠かせない概念です。特に行列のQR分解を計算する際の実装基盤として重要であり、主成分分析や最小二乗法の解法など、多様なモデルの裏側で活用されています。

具体例・使われ方

例えば、機械学習モデルに入力するデータの中で多重共線性が存在する場合、グラム・シュミットの正規化を応用して互いに無相関なベクトルに変換することで、学習の不安定さを解消できます。また、画像の幾何学的変換や高次元データの次元削減を行う際、互いに直交する座標系を構築する目的でも用いられます。

似た用語との違い

グラム・シュミットの正規化は手計算や理論の理解には適していますが、大規模な数値計算においては誤差が累積しやすい性質があります。そのため実際の数値解析ライブラリでは、より数値的に安定したハウスホルダー変換やギブンス回転を用いたQR分解が好まれる点が異なります。また、データ全体の分散を最大化する主成分分析や、行列を特異値に分解する特異値分解とは異なり、与えられた基底の順序に依存して直交基底を構築するプロセスの違いがあります。

注意点

計算過程で浮動小数点数の丸め誤差が累積すると、得られたベクトル群の直交性が失われる現象が発生します。これを防ぐために修正グラム・シュミット法などの改良版が使われますが、極めて悪条件な行列に対しては他の手法を検討する必要があります。

更新日時: 2026年9月8日 04:01