考え方
ベクトルの内積・長さ(ノルム)・直交射影を計算し、グラム・シュミットの方法で互いに直交する基底を作れるようになります。レコメンドの類似度、最小二乗法、信号の成分分解の基本です。
- 内積 u⋅v
- 成分どうしの積の和。∣u∣∣v∣cosθ に等しく、向きのそろい具合を表す。
- ノルム ∣v∣
- ベクトルの長さ。∣v∣2=v⋅v。
- 正射影(直交射影)
- u の先から v の直線へ垂直に下ろした「影」のベクトル。
- グラム・シュミットの直交化
- ベクトルの組から、前のベクトルへの射影を順に引いて、互いに直交する組を作る方法。
内積は u1v1+u2v2+u3v3 のように成分ごとの積を足したもので、∣u∣∣v∣cosθ に等しくなります。向きがそろうほど大きく、直交すると 0、逆向きなら負です。
u のうち、v の方向の成分だけを取り出したのが正射影です。影の長さは ∣v∣u⋅v で、これに向きを表す ∣v∣v をかけるので、全体では ∣v∣2 で割ることになります。
u から射影を引いた残りは、v と直交します。これを順にくり返すのがグラム・シュミットの直交化で、最後に各ベクトルを長さ 1 にそろえると、正規直交基底になります。
u=(1,3) の先から v=(4,2) の直線へ垂直に下ろした足までのベクトル (2,1) が正射影です。∣v∣2u⋅v=2010=21 なので、v のちょうど半分になります。ポイント
u⋅v=u1v1+u2v2+u3v3=∣u∣∣v∣cosθ
v 方向への正射影: ∣v∣2u⋅vv
グラム・シュミット: b1=a1、b2=a2−∣b1∣2a2⋅b1b1
解き方の手順
- 内積 u⋅v を、成分ごとの積の和で計算する。
- ∣v∣2=v12+v22+v32 を計算する(平方根はとらない)。
- 係数 ∣v∣2u⋅v を v の各成分にかける(分数は約分する)。
- 確かめ: u から射影を引いたベクトルと v の内積が 0 になる。
例
u=(2,3,−1) の、v=(1,2,2) 方向への正射影ベクトルを求めてください。
- 内積: u⋅v=2⋅1+3⋅2+(−1)⋅2=6
- ∣v∣2=12+22+22=9
- 正射影 =96(1,2,2)=(32,34,34)
- 確かめ: u から引くと (34,35,−37) で、v との内積は 34+10−14=0
よくある間違い
練習問題でこの間違い方をしたときは、その場でお伝えします。
- 正射影で |v| を2乗し忘れる正射影ベクトルを (u·v / |v|) v とし、|v|² で割るところを |v| で割ってしまう。正射影は (u·v / |v|²) v です。|v| ではなく |v|² で割ります。
レコメンドでは、ユーザーの好みをベクトルで表します。ある方向(たとえば「アクション映画好き」の方向)にどれだけ寄っているかを取り出すのに、直交射影を使います。
問いu=(−3,−1,2) の、v=(−2,3,−2) 方向への正射影ベクトルを求めてください。
途中の式
- v 方向への正射影: ∣v∣2u⋅vv
- u⋅v=(−3)⋅(−2)+(−1)⋅3+2⋅(−2)=−1
- ∣v∣2=(−2)2+32+(−2)2=17
- 正射影 =−171(−2,3,−2)=(172,−173,172)
- 確かめ: u から正射影を引いたベクトルは v と直交します(内積が 0)。
答え正射影ベクトル(例: (1, 2, 3)、分数は 1/2 のように)は (172,−173,172)
一緒にやる
小さく分けて、一緒に解く
1つずつ答えを確かめながら進みます。間違えても大丈夫です。
レコメンドでは、ユーザーの好みをベクトルで表します。ある方向(たとえば「アクション映画好き」の方向)にどれだけ寄っているかを取り出すのに、直交射影を使います。
u=(5,−2,0) の、v=(3,1,2) 方向への正射影ベクトルを求めてください。
小さな問いに分けて、1つずつ一緒に進めます。
ステップ 1 / 3
内積 u⋅v は?
自分でやる
練習問題
数字は毎回変わります。2〜3問続けて解けたら、次の単元や元のレッスンに進みましょう。