前文导读:
内积是什么?
在数学中,点积又称数量积或标量积,是一种接受两个等长的数字序列、返回单个数字的代数运算。在欧几里得几何中,两个笛卡尔坐标向量的点积常称为内积,见内积空间。 从代数角度看,先对两个数字序列中的每组对应元素求积,再对所有积求和,结果即为点积。从几何角度看,点积则是两个向量的长度与它们夹角余弦的积。
import numpy as np
v1 = np.array([1,0])
v2 = np.array([0,1])
np.dot(v2,v1)
#使用np内建的dot求两个向量的内积
输出
0
还记得内积的物理意义吗?
#np.linalg.norm内建函数可以求向量的模长
v1_norm = np.linalg.norm(v1)
v2_norm = np.linalg.norm(v2)
v1_v2_angle = 90
#由于v1, v2垂直,所以角度为90
#使用np.cos获得cos90度的值
cos_90 = int(np.cos(90 * np.pi / 180))
v1_norm * cos_90
#这个代表v1向量在v2向量上的投影长度
v1_norm * cos_90 * v2_norm
#再乘以v2_norm的模长就是当年v1与v2的内积,结果和我们直接使用np.dot(v1,v2)一样
输出
0.0
#此时v2与v1垂直,v2就是v1的法向量。
内积公式的物理意义再次得到了验证。两个向量的内积,就是两个向量的模长乘以两个向量夹角的cos值。
重点:
两个向量的内积公式为
所以要牢记,如果两个向量的夹角在90度因为,则内积为正,大于90度为负,正好90度为0。
这个特别重要。

前文导读:
更多内容请访问:IT源点
注意:本文归作者所有,未经作者允许,不得转载