Numpy 将二维阵列重塑为4D阵列
您好,关于重塑阵列的问题 我有一个数组train_x(2D),其内容是(103784) 在这种情况下,103是示例的数量 784是我的神经网络的输入 现在我想从2D重塑为4D 我使用以下命令:Numpy 将二维阵列重塑为4D阵列,numpy,ipython,conv-neural-network,Numpy,Ipython,Conv Neural Network,您好,关于重塑阵列的问题 我有一个数组train_x(2D),其内容是(103784) 在这种情况下,103是示例的数量 784是我的神经网络的输入 现在我想从2D重塑为4D 我使用以下命令: train_x = np.reshape(train_x, (103, 28, 28, 1)) 在这种情况下,103仍然是训练示例的数量,并且在这种情况下,我的输入784被划分为28x28的矩阵,这是否正确?1在本例中为我的频道,不使用RGB(否则该频道应为3) 如果我的假设不正确,请有人建议如何从2D
train_x = np.reshape(train_x, (103, 28, 28, 1))
在这种情况下,103仍然是训练示例的数量,并且在这种情况下,我的输入784被划分为28x28的矩阵,这是否正确?1在本例中为我的频道,不使用RGB(否则该频道应为3)
如果我的假设不正确,请有人建议如何从2D重塑为4D以归档上述内容?你的假设是正确的。NumPy文件关于州: 您可以将重塑视为首先散开数组(使用给定的索引顺序),然后使用与散开相同的索引顺序将散开数组中的元素插入新数组
train_x
形状为(103784)的列车将行驶至:
[img_0[0],…,img_0[783],img_1[0],…,img_1[783],…,img_102[0],img_102[783]
然后使用问题中的“重塑”命令将其重塑为103个28x28x1图像,如预期的那样
您应该确保平面784值已按用于分解它们的相同顺序展开,行主视图或列主视图。如果您不确定,一个快速的健全性检查是在重塑后绘制一个图像。或者,您可以使用以下方法
train_X = X_train.reshape(X_train.shape[0],28,28,1)
假设X-train的形状为(103784)用一个较小的例子测试,例如
np.arange(12).重塑(3,4).重塑(3,2,2,1)