将形状为(m,n)的输入转换为(m,k,n),其中k作为数组的字符串表示在内部“隐藏”?

时间:2020-08-17 08:12:45

标签: python arrays tensorflow keras

我有一个数据集,如下图所示,其中有m行(=批处理大小)和n列(v1, v2, ... vn),每行代表一个要素。对于数据集中的每个示例,每个要素都是浮点数组的字符串表示形式,因此类似'[-0.05, 1.12, -0.23, ..., 1.22]'。如果将表示为字符串的“隐藏”数组转换为浮点数组,则其长度为k。此输入直接输入到Tensorflow / Keras模型中,而无需任何Python预处理将数据集按原样传递给 model.fit,因此没有办法转换和重塑熊猫或Numpy。

作为第一层,是否可以在模型内部进行转换和重塑?模型采用形状为(m, n)的输入,提取长度为k的隐藏数组,然后将输入形状重新排列为(m, k, n)

1 个答案:

答案 0 :(得分:-1)

首先,您不能直接将字符串输入模型。您需要先将其转换为浮动

您无法从模型内部重塑数据,但是您可以做的是将输入形状设置为。如果输入数据的形状不固定,则可以将输入形状设置为。在这种情况下,您的模型将接受任何形状的数据。

您也可以在此处查看讨论。 https://github.com/keras-team/keras/issues/2054