多输入模型的Tensorflow数据集生成器应如何构造其output_shape?

时间:2019-04-29 13:23:04

标签: python tensorflow tensorflow-datasets

我正在建立一个模型以在Tensorflow中使用多个输入。我对为数据集生成器提供输出形状时使用的正确结构感到困惑。

我的生成器产生的数据具有以下结构:

([x1, x2], y)

tf.data.Dataset docs指出output_shapes函数的Dataset.from_generator参数应为嵌套结构,因此我最初的假设是应为形状提供与生成器输出匹配的结构,即:([x1_shape, x2_shape], y_shape)(每个形状本身就是一个元组)。

但是,当我尝试训练模型时,会引发以下异常: “ TypeError:int()参数必须是字符串,类似字节的对象或数字,而不是'tuple'”。

  

突破异常(在Dimension.__init__中的tensor_shape.py中)表明尝试将self._value设置为int(value),其中value是形状元组之一。 看来tf并未将其视为Nested Structure,而是固定深度之一。

从生成器创建Tensorflow数据集以用于具有多个输入的模型时,output_shapes参数的正确结构是什么?

0 个答案:

没有答案