传感器数据的形状为(1,200,9),通道数为9,但我想将其转换为通道为1的2-D数据,最终形状为(9,200,1) 。我测试了keras.layers.core.Reshape((9,200,1)),但是有错误。所以我不知道该怎么做,我希望有人可以帮助我,非常感谢你。
答案 0 :(得分:1)
如果您在处理数据时这样做。你可以使用numpy swapaxes
。文档示例:
WITH ignoreDuplicate AS (
SELECT SerialNumber,
COUNT(SerialNumber) OVER (PARTITION BY SerialNumber) tot
FROM electronic_list
)
SELECT SerialNumber FROM ignoreDuplicate WHERE tot = 1;
但是,如果您使用它来转换其中一个训练图层,则必须在深度学习框架中使用tensorflow transpose
函数或模拟函数。
>>> x = np.array([[[0,1],[2,3]],[[4,5],[6,7]]])
>>> x
array([[[0, 1],
[2, 3]],
[[4, 5],
[6, 7]]])
>>> np.swapaxes(x,0,2)
array([[[0, 4],
[2, 6]],
[[1, 5],
[3, 7]]])
在您的情况下,由于我们讨论的是您的系统输入,因此您应该使用x = tf.constant([[[ 1, 2, 3],
[ 4, 5, 6]],
[[ 7, 8, 9],
[10, 11, 12]]])
tf.transpose(x, perm=[0, 2, 1]) # [[[1, 4],
# [2, 5],
# [3, 6]],
# [[7, 10],
# [8, 11],
# [9, 12]]]
进行预处理。