一个标量就是一个单独的数
向量加和:A + B = B + A 需要维度相同 [1, 2] + [3, 4] = [4, 6]
向量内积:A * B = B * A 需要维度相同 [1, 2] * [3, 4] = 1 * 3 + 2 * 4 = 11
向量夹角余弦值:
cosΘ = A * B / |A| * |B|
向量的模
是一个二维数组,矩阵中每一个值是一个标量,可以通过行号和列号进行索引
是一个 3×2的矩阵
在Python中,向量一般使用numpy
库,而张量一般使用torch
库
pip install numpy
pip install torch
安装成功后,即可调用相关代码
import numpy as np
import torch
# 构造一个2行3列的矩阵
x = np.array([[1,2,3], [4,5,6]])
# 查看维度
print(x.ndim)
# 形状
print(x.shape)
# 元素总数
print(x.size)
# 元素和
print(np.sum(x))
# 对列求和
print(np.sum(x, axis=0))
# 对行求和
print(np.sum(x, axis=1))
# 改变形状为3行2列矩阵
print(np.reshape(x, (3,2)))
# 开根号
print(np.sqrt(x))
# 求指数
print(np.exp(x))
# 转置
print(x.transpose())
# 展平
print(x.flatten())
# 将x转换成浮点型张量
x = torch.FloatTensor(x)
print(x)
# 明确指出将x转换成2列,-1表示自动推断出行数
print(x.view(-1,2))
部分输出:
再看一个张量操作的例子