本页使用了标题或全文手工转换

数量积

维基百科,自由的百科全书
跳转至: 导航搜索
线性代数
\mathbf{A} = \begin{bmatrix}
1 & 2 \\
3 & 4 \end{bmatrix}
向量 · 矩阵  · 行列式  · 线性空间

点乘德语Punktprodukt英语Dot Product)是接受在实数R上的两个向量并返回一个实数标量二元运算,它的结果是欧几里得空间的标准内积。兩個向量的点积寫作a·b。点乘的结果叫做点积,也称作数量积标量积(德语Skalarprodukt英语Scalar Product)及内积(德语inneres Produkt英语Inner Product)。

向量的另一種乘法是叉乘 (德语Kreuzprodukt 或 Vektorprodukt英语Cross Product 或 Vector Product),寫作a×b

定义[编辑]

点积有两种定义方式:代数方式和几何方式。通过在欧氏空间中引入笛卡尔坐标系,向量之间的点积既可以由向量坐标的代数运算得出,也可以通过引入两个向量的长度角度等几何概念来求解。

代数定义[编辑]

两个向量\vec{a} = [a1, a2,…, an]和\vec{b} = [b1, b2,…, bn]的点积定义为:

\vec{a}\cdot \vec{b} = \sum_{i=1}^n a_ib_i = a_1b_1 + a_2b_2 + \cdots + a_nb_n

这裡的Σ指示求和符号

例如,两个三维向量[1, 3, -5]和[4, -2, -1]的点积是

\begin{bmatrix}1&3&-5\end{bmatrix} \cdot \begin{bmatrix}4&-2&-1\end{bmatrix} = (1)(4) + (3)(-2) + (-5)(-1) = 3

使用矩阵乘法并把(纵列)向量当作n×1 矩阵,点积还可以写为:

\vec{a} \cdot \vec{b} = \vec{a}^T \vec{b}

这裡的\vec{a}^T指示矩阵\vec{a}转置

使用上面的例子,将一个1×3矩阵(就是行向量)乘以一个3×1向量得到结果(通过矩阵乘法的优势得到1×1矩阵也就是标量):

\begin{bmatrix}
 1&3&-5
\end{bmatrix}\begin{bmatrix}
 4\\-2\\-1
\end{bmatrix} = \begin{bmatrix}
 3
\end{bmatrix}

几何定义[编辑]

在欧几里得空间中,点积可以直观地定义为

 \vec{a} \cdot \vec{b} = |\vec{a}| \, |\vec{b}| \cos \theta \;,

这里 |\vec{x}| 表示\vec{x}(长度),θ表示两个向量之间的角度

注意点积的形式定义和这个定义不同;在形式定义中,\vec{a}\vec{b}的夹角是通过上述等式定义的。

这样,两个互相垂直的向量的点积总是零。若\vec{a}\vec{b}都是单位向量(长度为1),它们的点积就是它们的夹角的余弦。那么,给定两个向量,它们之间的夹角可以通过下列公式得到:

 \cos{\theta} = \frac{\mathbf{a \cdot b}}{|\vec{a}| \, |\vec{b}|}

这个运算可以简单地理解为:在点积运算中,第一个向量投影到第二个向量上(这裡,向量的顺序是不重要的,点积运算是可交换的),然后通过除以它们的标量长度来“标准化”。这样,这个分数一定是小于等于1的,可以简单地转化成一个角度值。

标量投影[编辑]

A·B = |A| |B| cos(θ).
|A| cos(θ)是AB的投影。

欧氏空间中向量A在向量B上的标量投影是指

A_B=\|\mathbf A\|\cos\theta

这里 θ 是AB的夹角。 从点积的几何定义不难得出,两个向量的点积:\mathbf A\cdot\mathbf B可以理解为向量\mathbf A在向量\mathbf B上的投影再乘以B的长度。

\mathbf A\cdot\mathbf B = A_B\|\mathbf{B}\|=B_A\|\mathbf{A}\|.

两种定义的等价性[编辑]

点积的两种定义中,只需给定一种定义,另外一种定义就可以推出。

1、由几何定义推出代数定义

e1,...,enRn 空间的一组标准正交基, 可以得出:

\begin{align}
\mathbf A &= [a_1,\dots,a_n] = \sum_i a_i\mathbf e_i\\
\mathbf B &= [b_1,\dots,b_n] = \sum_i b_i\mathbf e_i.
\end{align}

上文中已经得知两个向量点积的几何定义实际上就是一个向量在另外一个向量上的投影,故A在任一标准基en 的点积\mathbf A\cdot\mathbf e_i就是A在此标准基向量上的投影,而根据向量自身的定义,这个投影即为ai 。因此:

\mathbf A\cdot\mathbf B = \mathbf A\cdot\sum_i b_i\mathbf e_i = \sum_i b_i(\mathbf A\cdot\mathbf e_i) = \sum_i b_ia_i

2、由代数定义推出几何定义

应用余弦定理

 注意:这个证明采用三维向量,但可以推广到n维的情形。

考虑向量

 \vec{v} = v_1 \vec{i} + v_2 \vec{j} + v_3 \vec{k} \; .

重復使用勾股定理得到

 |\vec{v}|^2 = v_1^2 + v_2^2 + v_3^2 \;.

而由代数定义

 \vec{v} \cdot \vec{v} = v_1^2 + v_2^2 + v_3^2 \;,

所以,根据向量点积的代数定义,向量\vec{v}和自身的点积就是其长度的平方。

引理1
 \vec{v} \cdot \vec{v} = |\vec{v}|^2 \;

现在,考虑两个从原点出发的向量\vec{a}\vec{b},夹角θ。第三个向量\vec{c}定义为

 \vec{c} \equiv \vec{a} - \vec{b} \;,

构造以\vec{a}\vec{b}\vec{c}为边的三角形,采用余弦定理,有

 |\vec{c}|^2 = |\vec{a}|^2 + |\vec{b}|^2 - 2 |\vec{a}||\vec{b}| \cos \theta \;.

根据引理1,用点积代替向量长度的平方,有

 \vec{c} \cdot \vec{c}
= \vec{a} \cdot \vec{a}
+ \vec{b} \cdot \vec{b}
- 2 |\vec{a}||\vec{b}| \cos\theta \;. (1)

同时,根据定义\vec{c}\vec{a} - \vec{b},有

 \vec{c} \cdot \vec{c}
= (\vec{a} - \vec{b}) \cdot (\vec{a} - \vec{b}) \;,

根据分配律,得

 \vec{c} \cdot \vec{c}
= \vec{a} \cdot \vec{a}
+ \vec{b} \cdot \vec{b}
-2(\vec{a} \cdot \vec{b}) \;. (2)

连接等式 (1)(2)

 \vec{a} \cdot \vec{a}
+ \vec{b} \cdot \vec{b}
-2(\vec{a} \cdot \vec{b})
= \vec{a} \cdot \vec{a}
+ \vec{b} \cdot \vec{b}
- 2 |\vec{a}||\vec{b}| \cos\theta \;.

简化等式即得

 \vec{a} \cdot \vec{b} = |\vec{a}||\vec{b}| \cos\theta \; ,

以上即为向量点积的几何定义。


需要注意的是,点积的几何解释通常只适用于\mathbb{R}^n (n \le 3)。在高维空间,其他的域或中,点积只有一个定义,那就是

\left \langle \vec{a}, \vec{b} \right \rangle = \sum_{i=1}^n a_ib_i

点积可以用来计算合力。若\vec{b}为单位向量,则点积即为\vec{a}在方向\vec{b}的投影,即给出了在这个方向上的分解。功即是力和位移的点积。

性质[编辑]

  • 在乘以一个标量的时候点积满足: (c_1\vec{a}) \cdot (c_2\vec{b}) = (c_1c_2) (\vec{a} \cdot \vec{b})

(后两个性质从前两个得出)。

两个非零向量\vec{a}\vec{b}垂直的,当且仅当\vec{a}·\vec{b} = 0。

如果\vec{b}单位向量,则点积给出\vec{a}在方向\vec{b}上投影的大小,如果方向相反则带有负号。分解向量对求向量的和经常是有用的,比如在力学中计算合力

不像普通数的乘法服从消去律,如果ab = ac,则b总是等于c,除非a等于零。而对于点积:

如果\vec{a}·\vec{b} = \vec{a}·\vec{c}并且\vec{a}0:
则根据分配律可以得出: \vec{a}· (\vec{b} - \vec{c}) = 0;进而:
如果\vec{a}垂直于 (\vec{b} - \vec{c}),则 (\vec{b} - \vec{c})可能 ≠ 0,因而\vec{b} 可能≠ \vec{c};否则\vec{b} = \vec{c}



应用[编辑]

物理学力学的力做功的问题,经常用到点积计算。

计算机图形学常用来进行方向性判断,如两向量点积大于0,则它们的方向朝向相近;如果小于0,则方向相反。

向量内积是人工智能领域中的神经网络技术的数学基础之一。

此方法被用于动画渲染(Animation-Rendering)。

广义定义[编辑]

在一个向量空间中,正定对称双线性形式即是数量积,而添加有一个数量积的向量空间即是内积空间

参见[编辑]