【发布时间】:2018-10-02 07:21:10
【问题描述】:
我正在尝试将 TensorFlow 中的数据集转换为具有多个单值张量。数据集当前如下所示:
[12 43 64 34 45 2 13 54] [34 65 34 67 87 12 23 43] [23 53 23 1 5] ...
转换后应该是这样的:
[12] [43] [64] [34] [45] [2] [13] [54] [34] [65] [34] [67] [87] [12] ...
我最初的想法是在数据集上使用flat_map,然后使用reshape 和unstack 将每个张量转换为张量列表:
output_labels = self.dataset.flat_map(convert_labels)
...
def convert_labels(tensor):
id_list = tf.unstack(tf.reshape(tensor, [-1, 1]))
return tf.data.Dataset.from_tensors(id_list)
然而,每个张量的形状只是部分已知(即(?, 1)),这就是unstack操作失败的原因。有没有办法在不显式迭代它们的情况下仍然“连接”不同的张量?
【问题讨论】:
标签: python tensorflow flatten tensor tensorflow-datasets