.dot()
在两个数组之间执行矩阵乘法。它以两个数组作为输入,并返回两个数组的点积。该方法可以使用NumPy模块的dot()
函数调用,也可以在Python 3.5及更高版本中使用@
符号调用。
import numpy as np # 创建两个2x2矩阵 a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6], [7, 8]]) # 使用dot()方法执行矩阵乘法 c = np.dot(a, b) # 打印结果 print(c) #输出 [[19 22] [43 50]] # 在这个例子中,dot()
方法用于乘以两个2x2矩阵a
和b
。结果矩阵c
也是一个2x2矩阵,它是a
和b
的点积。
np.random
np.random.rand()
随机数生成函数,可以用来生成指定大小的随机数组,返回值是一个ndarray类型的数组。
参数是指定生成随机数组的形状,也就是数组的维度。具体来说:
- 如果没有参数,生成一个0到1之间的随机浮点数;
- 如果传入一个整数n,生成一个长度为n的一维随机浮点数数组;
- 如果传入两个整数n和m,生成一个n行m列的二维随机浮点数数组;
- 如果传入三个整数n、m和p,生成一个n行m列p深度的三维随机浮点数数组;
- 以此类推,可以传入任意数量的整数参数,生成对应形状的随机浮点数数组。
import numpy as np # 生成一个随机浮点数 x = np.random.rand() print(x) # 生成一个长度为5的一维随机浮点数数组 x = np.random.rand(5) print(x) # 生成一个2行3列的二维随机浮点数数组 x = np.random.rand(2, 3) print(x) # 生成一个2行3列2深度的三维随机浮点数数组 x = np.random.rand(2, 3, 2) print(x)
2行3列2深度的数组长什么样子,主要在哪里使用?
是一个三维数组,形状为(2,3,2)。它可以被想象成一个有2行,3列和2层的长方形盒子。
在NumPy中,这种类型的数组经常用于表示多维数据,例如图像、视频和时间序列数据。例如,一个宽度和高度维度分别为256和256像素,具有三个颜色通道(红、绿、蓝)的彩色图像可以表示为一个形状为(256、256、3)的三维数组。
三维数组也常用于机器学习和深度学习应用程序中,以表示输入特征或输出标签等数据。例如,在卷积神经网络(CNN)中,模型的输入数据通常是一批图像,其中每个图像都表示为一个具有(高度、宽度、通道)维度的三维数组。模型的输出也可以是一个三维数组,例如一系列的特征映射。