人工智能必知必会-标量,向量,矩阵,张量

人工智能必知必会-标量,向量,矩阵,张量

每天五分钟,解决一个深度学习问题:

让我们开始本系列的第一个小节: 标量,向量,矩阵,张量。
在整个机器学习中,你需要把数据交给计算机来处理,这就要求你把数据数字化,这样才能运算。
这就要求你理解什么是张量
诶?你的标题不是标量,向量,矩阵,张量吗?为啥你只要重点标出张量呢?ok,那你就带着这样的疑问开始阅读吧!

深度学习中的数

在深度学习中的数,可以分为以下几类:
标量:2
向量: [ 1 3 ] \begin{bmatrix} 1 \\ {3} \\ \end{bmatrix}
矩阵: [ 1 0 0 1 ] \begin{bmatrix} 1 & 0\\ 0 & 1 \\ \end{bmatrix}
我们为了更好的记忆,可以把他们做一下物理意义的比较

标量

标量就是直线上的点。
标量

向量

向量就是平面上的一条线。
向量

矩阵

矩阵就是空间中的一个平面基(不知道什么是基,你就把他理解成是坐标系的x轴,y轴就可以了)。

矩阵

张量

在更高维度的空间中矩阵可以堆叠成一个体。 感觉就是这样:
在这里插入图片描述

这样是不是比较有感觉,在深度学习中,把他们统称为tensor,张量!张量!张量!张量!

标量就是1维度张量,向量是2维张量,平面是3维张量,以此类推可以到更高的维度。

你可以把矩阵想成是向量的堆叠。例如你把向量 [ 1 2 ] \begin{bmatrix} 1 \\ 2 \\ \end{bmatrix} [ 2 4 ] \begin{bmatrix} 2 \\ 4 \\ \end{bmatrix} 拼到一起就是矩阵 [ 1 2 2 4 ] \begin{bmatrix} 1 & 2 \\ 2 & 4 \\ \end{bmatrix}
矩阵由行和列组成,像刚才的矩阵,行为2,列为2,他的形状就记为2X2。
记住,要使用tensor,先要搞清楚形状,这是最重要的。


代码实现

好了,你现在已经知道什么张量了。
接下来,我们用python的numpy模块,把标量,向量,矩阵,还有张量表示出来。


环境准备

环境准备可以看视频

#导入模块
import numpy as np

标量

#标量,这个没啥要解释的。
a = 1
a

输出:

1

向量

#向量
v1 = np.array([1,3])
print("v1:",v1)
#注意观察向量的形状
print("v1 shape:", v1.shape)

输出:

v1: [1 3]
v1 shape: (2,)

矩阵

#矩阵,看起来就是python中的list套list
m1 = np.array([[1,0],[0,1]])
print("m1:", m1)
print("m1 shape:", m1.shape)

输出:

m1: [[1 0]
 [0 1]]
m1 shape: (2, 2)

张量

#矩阵,看起来就是python中的list套list
t1 = np.array([[[1,0],[0,1]],[[1,0],[0,1]]])
print("t1:", t1)
print("t1 shape:", t1.shape)

输出:

t1: [[[1 0]
     [0 1]]

 [[1 0]
  [0 1]]]
t1 shape: (2, 2, 2)

恭喜你掌握了人工智能入门的第一个知识点。

如果你感觉很有趣,请点赞,关注,转发!谢谢!

猜你喜欢

转载自blog.csdn.net/weixin_43936997/article/details/105850653