- 深度学习全书:公式+推导+代码+TensorFlow全程案例
- 陈昭明
- 530字
- 2025-02-25 04:56:46
2-2-1 向量
向量是一维的张量,它与线段的差别是除了长度(Magnitude)以外,还有方向(Direction),其数学表示法为

图形表示如图2.3所示。

图2.3 向量长度与方向
下面使用程序计算向量的长度与方向,请参阅02_01_线性代数_向量.ipynb。
1.长度
计算公式为欧几里得距离(Euclidean Distance),即

程序代码如下:

也可以使用np.linalg.norm()计算向量长度,程序代码如下:

2.方向
使用tan-1()函数计算

移项为

程序代码如下:

3.向量四则运算规则
(1)加减乘除一个常数:常数直接对每个元素作加减乘除。
(2)加减乘除另一个向量:两个向量相同位置的元素作加减乘除,所以两个向量的元素个数必须相等。
4.向量加减法
向量加减一个常数,长度、方向均改变。
(1)程序代码如下:

(2)执行结果:如图2.4所示。

图2.4 向量加减一个常数,长度、方向均改变
5.向量乘除法
向量乘除一个常数,长度改变、方向不改变。
(1)程序代码如下:

(2)执行结果:如图2.5所示。

图2.5 向量乘除一个常数,长度改变、方向不改变
6.向量加减乘除另一个向量
两个向量的相同位置的元素作加减乘除。
(1)程序代码如下:

(2)执行结果:如图2.6所示。

图2.6 向量加另一个向量
7.“内积”或称“点积”(Dot Product)
公式为

numpy是以@作为内积的运算符号,而非*。程序代码如下:

8.计算两个向量的夹角
公式为

移项,得

再利用cos-1()计算夹角θ。程序代码如下:
