向量幾何:方向、大小、內積與外積
從逆風降落的飛機談起,理解向量加法、內積判正交與外積找垂直方向的幾何直覺與計算
為什麼飛機逆風還能準時降落?
想像你是一架小飛機的駕駛。地面塔台告訴你跑道方向,但天空中有一股強勁的側風,把你不斷往旁邊推。你的「真實航向」其實是兩股力量相加的結果:引擎推著你往前,風推著你往側邊。你想知道的不只是「我有多快」,更是「我往哪個方向、以多快的速度前進」。
這正是向量(vector)登場的時刻。一個純粹的數字——例如「時速 200 公里」——叫做純量(scalar),它只有大小。但飛機的速度同時包含方向與大小,這種既有方向又有大小的量,就是向量。學會操作向量,你就能把「風」與「推力」這類看似糾纏不清的問題,化成乾淨俐落的幾何運算。

向量是什麼:方向與大小
我們用一個有序的數組來表示向量。在平面上,向量 $\vec{v} = (v_1, v_2)$;在空間中,$\vec{v} = (v_1, v_2, v_3)$。幾何上,它是一個從起點指向終點的箭頭,箭頭的長短代表大小,箭頭的指向代表方向。
向量的大小(magnitude,又稱長度或模)用畢氏定理計算:
$$ \lVert \vec{v} \rVert = \sqrt{v_1^2 + v_2^2 + v_3^2} $$
例如 $\vec{v} = (3, 4)$ 的大小是 $\sqrt{3^2 + 4^2} = \sqrt{25} = 5$。
一個重要的觀念:向量不綁定在特定位置。$(3, 4)$ 從原點出發,與從 $(1,1)$ 出發到 $(4,5)$ 的箭頭,是同一個向量——只要方向與大小相同,它們就相等。這個「可以自由平移」的特性,讓向量成為描述「位移」「速度」「力」的理想語言。
單位向量與方向
如果我們只想保留方向、把大小標準化為 $1$,就把向量除以它自己的長度,得到單位向量(unit vector):
$$ \hat{v} = \frac{\vec{v}}{\lVert \vec{v} \rVert} $$
以 $\vec{v} = (3, 4)$ 為例,$\hat{v} = \left(\tfrac{3}{5}, \tfrac{4}{5}\right)$。你可以驗證 $\sqrt{(3/5)^2 + (4/5)^2} = 1$。單位向量是「純粹的方向」,回到飛機的例子,它就是「機鼻指向哪裡」而不管飛多快。
向量加法:把力量疊起來
向量相加的規則非常直覺:對應分量相加。
$$ \vec{u} + \vec{v} = (u_1 + v_1,\; u_2 + v_2) $$
幾何上,這是平行四邊形法則或首尾相接法則:把 $\vec{v}$ 的起點接到 $\vec{u}$ 的終點,從 $\vec{u}$ 的起點畫到 $\vec{v}$ 的終點,就是合向量。
回到開頭的飛機:若引擎推力給出的速度向量是 $\vec{u} = (200, 0)$(往東 200),側風是 $\vec{v} = (0, 50)$(往北 50),那麼飛機相對地面的真實速度是
$$ \vec{u} + \vec{v} = (200, 50),\qquad \lVert (200,50) \rVert = \sqrt{200^2 + 50^2} \approx 206.2. $$
純量乘法(scalar multiplication)則是縮放:$c\vec{v} = (cv_1, cv_2)$。$c > 0$ 維持方向、改變大小;$c < 0$ 則反轉方向。
內積:兩個向量「有多合拍」
接下來是向量幾何最重要的工具之一:內積(dot product,又稱點積或純量積)。它把兩個向量「吃進去」,吐出一個純量:
$$ \vec{u} \cdot \vec{v} = u_1 v_1 + u_2 v_2 + u_3 v_3 $$
更深刻的是它的幾何意義。設 $\theta$ 為兩向量的夾角,則
$$ \vec{u} \cdot \vec{v} = \lVert \vec{u} \rVert\, \lVert \vec{v} \rVert \cos\theta. $$
這條公式是內積的靈魂。它告訴我們:
- 內積為正:夾角為銳角($\cos\theta > 0$),兩向量大致同向。
- 內積為零:$\cos\theta = 0$,兩向量垂直(正交,orthogonal)。
- 內積為負:夾角為鈍角,兩向量大致反向。
由此可反求夾角:
$$ \cos\theta = \frac{\vec{u} \cdot \vec{v}}{\lVert \vec{u} \rVert\, \lVert \vec{v} \rVert}. $$
看一個例子:求夾角
設 $\vec{u} = (1, 2, 2)$,$\vec{v} = (2, 0, 1)$,求兩者夾角。
先算內積:
$$ \vec{u} \cdot \vec{v} = (1)(2) + (2)(0) + (2)(1) = 2 + 0 + 2 = 4. $$
再算大小:
$$ \lVert \vec{u} \rVert = \sqrt{1 + 4 + 4} = 3,\qquad \lVert \vec{v} \rVert = \sqrt{4 + 0 + 1} = \sqrt{5}. $$
代入公式:
$$ \cos\theta = \frac{4}{3\sqrt{5}} = \frac{4}{3\sqrt{5}} \approx 0.596, $$
所以 $\theta = \arccos(0.596) \approx 53.4^\circ$。兩向量呈銳角,方向相當接近。
投影:影子有多長
內積還能回答「一個向量在另一個向量方向上的影子有多長」。$\vec{u}$ 在 $\vec{v}$ 上的純量投影(scalar projection)是
$$ \text{comp}_{\vec{v}} \vec{u} = \frac{\vec{u} \cdot \vec{v}}{\lVert \vec{v} \rVert}, $$
而向量投影(vector projection)保留方向:
$$ \text{proj}_{\vec{v}} \vec{u} = \frac{\vec{u} \cdot \vec{v}}{\lVert \vec{v} \rVert^2}\, \vec{v}. $$
這在物理裡無所不在。當你斜斜推一個箱子,只有「沿著地面」的那個分量在做功,做功 $W = \vec{F} \cdot \vec{d}$ 正是力與位移的內積。投影也是機器學習、訊號處理裡「把資料分解到某些方向上」的核心動作。
外積:找出垂直於兩者的方向
內積把兩向量變成純量;外積(cross product,又稱叉積或向量積)則把兩個三維向量變成第三個向量。它的特殊之處在於:結果向量同時垂直於原本兩個向量。
外積只定義在三維空間。計算上,可用行列式記憶:
$$ \vec{u} \times \vec{v} = \begin{vmatrix} \vec{i} & \vec{j} & \vec{k} \\ u_1 & u_2 & u_3 \\ v_1 & v_2 & v_3 \end{vmatrix} = (u_2 v_3 - u_3 v_2,\; u_3 v_1 - u_1 v_3,\; u_1 v_2 - u_2 v_1). $$
外積的大小也有漂亮的幾何意義:
$$ \lVert \vec{u} \times \vec{v} \rVert = \lVert \vec{u} \rVert\, \lVert \vec{v} \rVert \sin\theta, $$
這恰好等於以 $\vec{u}$、$\vec{v}$ 為兩邊所張成的平行四邊形面積。方向則由右手定則決定:右手四指從 $\vec{u}$ 彎向 $\vec{v}$,大拇指指向 $\vec{u} \times \vec{v}$。
注意外積不可交換,而是反交換:$\vec{u} \times \vec{v} = -(\vec{v} \times \vec{u})$。交換順序會讓結果向量反向,這與右手定則一致。
動手試試:算外積與面積
設 $\vec{u} = (1, 0, 2)$,$\vec{v} = (0, 3, 1)$,求 $\vec{u} \times \vec{v}$ 及平行四邊形面積。
逐分量計算:
$$ \begin{aligned} (\vec{u} \times \vec{v})_1 &= u_2 v_3 - u_3 v_2 = (0)(1) - (2)(3) = -6, \\ (\vec{u} \times \vec{v})_2 &= u_3 v_1 - u_1 v_3 = (2)(0) - (1)(1) = -1, \\ (\vec{u} \times \vec{v})_3 &= u_1 v_2 - u_2 v_1 = (1)(3) - (0)(0) = 3. \end{aligned} $$
所以 $\vec{u} \times \vec{v} = (-6, -1, 3)$。你可以驗證它與 $\vec{u}$、$\vec{v}$ 都垂直:$(-6, -1, 3) \cdot (1, 0, 2) = -6 + 0 + 6 = 0$,確實正交。
平行四邊形面積:
$$ \lVert \vec{u} \times \vec{v} \rVert = \sqrt{(-6)^2 + (-1)^2 + 3^2} = \sqrt{36 + 1 + 9} = \sqrt{46} \approx 6.78. $$
外積在物理裡描述力矩 $\vec{\tau} = \vec{r} \times \vec{F}$ 與角動量;在電腦圖學裡用來算三角形的法向量(決定一個面朝哪邊、該被怎麼打光)。
內積與外積:一張對照表
不少學生會把這兩者混淆。一個簡明的對照能釐清:
- 內積:輸入兩向量、輸出純量;任何維度都能算;衡量「同向程度」;零代表垂直;公式核心是 $\cos\theta$。
- 外積:輸入兩向量、輸出向量;只在三維;衡量「張開的面積」並給出垂直方向;零代表平行;公式核心是 $\sin\theta$。
一句話記憶:內積問「你們多合拍」,外積問「你們圍出多大、朝哪垂直」。
重點回顧
- 向量同時具有方向與大小,可自由平移;大小用 $\lVert\vec{v}\rVert = \sqrt{\sum v_i^2}$ 計算,除以自身長度得單位向量。
- 向量加法是分量相加(平行四邊形法則),純量乘法做縮放與反向。
- 內積 $\vec{u}\cdot\vec{v} = \lVert\vec{u}\rVert\lVert\vec{v}\rVert\cos\theta$ 輸出純量,可求夾角、判斷正交(內積為零)、計算投影與做功。
- 外積 $\lVert\vec{u}\times\vec{v}\rVert = \lVert\vec{u}\rVert\lVert\vec{v}\rVert\sin\theta$ 輸出垂直於兩者的向量,大小等於平行四邊形面積,方向由右手定則決定,且反交換。
- 內積看「合拍程度($\cos$)」、外積看「張開面積與垂直方向($\sin$)」,是互補的兩把幾何工具。
深入探討(研究所視角)
向量幾何在大學階段呈現的是 $\mathbb{R}^2$、$\mathbb{R}^3$ 的具象圖像,但其真正的威力在於它是內積空間(inner product space) 與多重線性代數(multilinear algebra) 的入門。
從內積到內積空間。 我們所用的 $\vec{u}\cdot\vec{v} = \sum u_i v_i$ 只是內積的一個特例。抽象地說,內積是任一滿足對稱性、線性與正定性 $\langle \vec{v}, \vec{v}\rangle \ge 0$ 的雙線性形式。一旦有了內積,就能定義長度、角度與正交,這把幾何直覺推廣到函數空間:在 $L^2$ 空間中,$\langle f, g\rangle = \int_a^b f(x)\,g(x)\,dx$,於是兩個函數可以「正交」。傅立葉級數(Fourier series)正是把函數投影到一組正交基底 $\{\sin nx, \cos nx\}$ 上——投影公式 $\text{proj}$ 與本文的向量投影完全同構。柯西—施瓦茨不等式 $|\langle \vec{u},\vec{v}\rangle| \le \lVert\vec{u}\rVert\lVert\vec{v}\rVert$ 保證 $\cos\theta$ 永遠落在 $[-1,1]$,這個不等式在機率(相關係數)、量子力學與分析中反覆出現。
外積的真身是楔積。 外積看似優雅卻有個尷尬:它只在三維存在,且其「方向」依賴右手定則這個人為約定。現代觀點用外代數(exterior algebra) 的楔積(wedge product)$\vec{u} \wedge \vec{v}$ 取代它。楔積在任意維度都成立,產生的是一個「二維面元(bivector)」,自然編碼了面積與定向,而不需要硬塞一個垂直向量。三維之所以特殊,是因為二維面元的空間恰好也是三維($\binom{3}{2}=3$),透過霍奇對偶(Hodge dual)可以把面元「翻譯」回向量——這就是傳統外積的來源。理解這點後,向量微積分裡的旋度 $\nabla \times \vec{F}$ 與散度,都能統一在微分形式(differential forms)與廣義斯托克斯定理 $\int_{\partial M}\omega = \int_M d\omega$ 之下。
三重積與體積。 把內積與外積合起來,$\vec{u}\cdot(\vec{v}\times\vec{w})$ 稱為純量三重積,其絕對值等於三向量張成的平行六面體體積,也等於以三向量為列的 $3\times 3$ 行列式。這揭示了行列式的幾何本質:它度量線性變換對體積的縮放倍率,而符號則記錄了定向是否翻轉。這個觀念延伸成微積分換元時的 Jacobian 行列式,以及微分幾何中度量張量 $\sqrt{\det g}$ 所決定的體積元。
跨領域連結。 內積驅動了機器學習的核方法(kernel method)——把資料隱式映射到高維內積空間後再做線性分割;注意力機制(attention)的核心 $\text{softmax}(QK^\top)$ 本質是一連串內積在度量查詢與鍵的相似度。外積與楔積則撐起電腦圖學的法向量計算、剛體動力學的角動量、以及電磁學中 $\vec{F} = q\vec{v}\times\vec{B}$ 的勞侖茲力。當你下次看到一個內積或外積,不妨記得:你看見的不只是兩個箭頭的運算,而是一整套貫穿分析、幾何、物理與資料科學的語言的最小單元。