在TensorFlow中卷积整数张量

时间:2017-07-03 18:06:14

标签: python tensorflow

所以,我正在尝试使用depthwise_conv2d过滤器在tf.int32批次上运行卷积(标准tf.int32)。我收到错误:TypeError: Value passed to parameter 'input' has DataType int32 not in list of allowed values: float32, float64。鉴于我不需要渐变,我想知道是否有人知道可以表达卷积的op,并接受整数?谢谢!

1 个答案:

答案 0 :(得分:2)

您无法执行此操作,因为conv2d不接受int类型:

  

输入:A Tensor。必须是以下类型之一:half,float32。一个   四维张量。维度顺序根据值进行解释   data_format,详见下文。

因此,您的解决方案要么编写自己的conv2dint(这只是其不同类型的conv2d的副本),要么使用他们的conv2d并应用tf.cast(res_from_conv, tf.int32)