不同形状的Numpy ndarray用于Keras学习模型

时间:2019-02-14 09:20:44

标签: python numpy multidimensional-array keras shapes

我有一系列具有不同形状的numpy数组。我尝试将此列表转换为numpy数组,以为Keras创建批处理样本。在输出中,我想要一个形状为(batch_size,?,20)的数组,其中“?”是可变尺寸。我试试这个:

a = np.random.random((5,20))
b = np.random.random((2,20))
c = np.random.random((7,20))
d = [a,b,c]
np.array(d).shape
> (3,)

当我将此批次发送到Keras时,出现以下问题:

ValueError: Error when checking input: expected Input_Dim to have 3 dimensions, but got array with shape (3, 1)

1 个答案:

答案 0 :(得分:1)

也许这个简单的例子可以帮助您

import numpy as np

a = np.random.random((5,20))
b = np.random.random((2,20))
c = np.random.random((7,20))

d = np.array([a,b,c])
print(d.shape) # (3,)

d = d[np.newaxis]
print(d.shape) # (1, 3)