【发布时间】:2020-11-16 07:02:29
【问题描述】:
为了在 Python 中训练 LSTM,我有一个想要重塑的数组。 这是我的数组的样子:
[[0,0,0,0,1]
[1,0,0,0,0]
[0,0,0,1,0]
[0,1,0,0,0]]
在上面的示例中,有 5 个特征。此时的其他 4 个特征设置为 0,其中一个特征为 1。我想使用 (sample,timestep,feature) 对其进行整形以创建 3D 数组。
我正在使用 numpy,当然,.reshape() 函数会很好用。
【问题讨论】:
-
它已经是(时间步长,特征)的形状了,不是吗?如果要在此处添加维度,只需执行 x[None,...]。如果您想堆叠其中的一些,请执行
np.array(x_list)。 -
@sachinruk 是的,正确,它是时间戳,特征形状。您说我应该通过执行 x[None,...] 添加维度,我不太了解该语法。你能澄清一下吗?
-
输入
None会在您的情况下添加一个维度以使其成为 (1, 4, 5)。 1 是这种情况下的样本量。你会需要更多的 LSTM 样本。 -
确实如此,但是,我想更多地询问我应该在哪个方向重塑数组......比如它是否应该是大小 (1,4,5), (4,1,5 ) 或 (4,5,1)。
标签: python arrays numpy lstm reshape