1. ベクトルの2つの顔
紙の上では、ベクトル a は原点から伸びる矢印です。「どっちを向いて、どれだけ長いか」だけが本体で、置き場所は問いません。
一方、座標を使えば同じものが a = (2, 1) という数の組で書けます。「x 方向に 2、y 方向に 1」。矢印としての直感と、数としての計算しやすさ — この2つを自由に行き来できるのがベクトルの強さです。
矢印の長さを大きさ(ノルム)|a| と呼び、三平方の定理で計算できます。大きさを 1 に揃えたベクトルが単位ベクトルで、「向きだけ」を取り出したいときに使います。
|a| = √(a₁² + a₂²) â = a / |a|
â(単位ベクトル)は a と同じ向きで長さ 1。成分が増えても式の形はそのまま
POINT — データはぜんぶ高次元ベクトル
身長・体重・年齢を並べた (170, 60, 25) は3次元ベクトル。100×100 の画像は画素値を並べた1万次元ベクトル。機械学習が「データを扱う」とは「高次元ベクトルを扱う」ことにほかならない。
線形回帰も
k近傍法も、この見方の上に立っている。
2. 動かして体感 — 和・差・スカラー倍
ベクトルの基本演算は3つだけ。和 a+b は「a で移動してから b で移動」した合計の移動。差 a−b は「b の先端から a の先端へ向かう矢印」。スカラー倍 k·a は向きを保ったまま長さを k 倍(k が負なら反転)です。
下の盤で、矢印の先端をドラッグしてベクトルを動かしながら、3つの演算を切り替えてみてください。
ベクトル操作盤 — 矢印の先端をドラッグできます
和モード:b のコピーが a の先端へ滑っていき(つなぎ足し)、平行四辺形の対角線が a+b になります。差モード:a−b は「b の先端 → a の先端」。スカラー倍モード:k を負にすると矢印が反転します。座標値は左上に常時表示。
a + b = (a₁+b₁, a₂+b₂) k·a = (k a₁, k a₂)
成分ごとに足す・掛けるだけ。矢印のつなぎ足しと同じ結果になるのがポイント
注意 — 足せるのは同じ次元どうしだけ
2次元と3次元のベクトルは足せない。機械学習のコードで頻発する shape エラーの正体は、たいてい「次元の合わないベクトルや行列を混ぜた」こと。演算の前に「成分の個数が揃っているか」を確認する癖をつけよう。
3. 内積 — 「影の長さ」で類似度を測る
2本のベクトルから1つの数を作る演算が内積 a·b です。幾何的には「b の上に落ちた a の影の長さ |a|cosθ に、|b| を掛けたもの」。2本が同じ向きなら大きく、直角なら 0、逆向きなら負になります。
内積 = 影の長さ × |b| — 角度を回して符号の変化を見る
点線=b に垂直な「光」。a の影(太い線)が b の上に落ちます。θ = 90° でちょうど影が消えて内積 0、90° を超えると影が反対側に伸びて内積は負に。緑=正・赤=負です。
そしてもう1つの顔が成分計算。対応する成分を掛けて足すだけで、まったく同じ値が出ます。
a·b = |a||b|cosθ = a₁b₁ + a₂b₂
左=幾何の顔(影 × 長さ)、右=計算の顔(掛けて足すだけ)。この等式が内積の心臓部
注意 — 内積の答えはベクトルではない
a·b の結果は矢印ではなく、ただの1つの数(スカラー)。「ベクトルどうしの掛け算でベクトルが返る」と思い込むのが初学者の定番のつまずき。内積は2本の矢印を1つの数に要約する演算だと覚えよう。
POINT — 内積は「類似度」の物差し
同じ向きほど大、直交で 0、逆向きで負 — これはそのまま「似ている度合い」として使える。AI が単語や文をベクトル(
埋め込み表現)に変換したあと、意味が近いかどうかの判定は本質的にこの内積(コサイン類似度)で行われている。検索エンジンも推薦システムもこの1行の式の上で動いている。
4. 線形結合 — 2本のベクトルで平面を塗る
2本のベクトル v₁, v₂ に係数を掛けて足したもの c₁v₁ + c₂v₂ を線形結合と呼びます。係数 c₁, c₂ を自由に選ぶと、到達できる点はどこまで広がるでしょうか?
線形結合が張る世界 — 係数を振って平面を塗りつぶす
白い点が到達点 P = c₁v₁ + c₂v₂。スライダーを動かした軌跡と、乱数で振った係数の到達点が緑に塗られていきます(v₂ の向きを変えると塗りはリセット)。「v₂ を v₁ と平行にする」を押すと — どんなに係数を振っても直線しか塗れなくなります。これが一次従属です。
P = c₁v₁ + c₂v₂
係数を全部試して届く点の集合を「v₁, v₂ の張る空間(スパン)」と呼ぶ。独立なら平面全体、従属なら直線どまり
2本が別々の向きを向いていれば(一次独立)、係数しだいで平面のどこへでも届きます。逆に平行だと(一次従属)、2本目は何の新しい方向ももたらさず、直線から出られません。「手持ちのベクトルが何次元ぶんの世界を張れるか」という視点は、次の行列、そして次元削減(PCA)へまっすぐつながります。
5. まとめ
- 2つの顔:ベクトルは「向きと大きさの矢印」であり「数の組」。直感は矢印で、計算は成分で。
- 和・差・スカラー倍:矢印のつなぎ足し=成分ごとの足し算。k 倍は伸縮、負なら反転。
- 内積:影の長さ × |b| = 成分を掛けて足す。直交で 0、逆向きで負 — 類似度の物差し。
- 線形結合:c₁v₁+c₂v₂ の届く範囲が「張る空間」。独立なら平面、従属なら直線。
一歩先へ — 高次元でも式は変わらない
ここで見た式は、成分が 3 個でも 1 万個でも形が同じ。実は高次元空間では「ランダムに選んだ2本はほぼ直交する(内積 ≈ 0)」という不思議な性質があり、だからこそ
埋め込みベクトルで「内積が大きい=偶然ではない類似」が強い意味を持つ。矢印の絵は2次元まででも、計算と直感はそのまま高次元へ持ち上がる。