tensorflow是sparse_to_dense函数,output_shape参数

时间:2016-07-28 18:41:46

标签: tensorflow

我正在尝试使用max_pool_with_argmax和sparse_to_dense来实现http://www.cv-foundation.org/openaccess/content_iccv_2015/html/Noh_Learning_Deconvolution_Network_ICCV_2015_paper.html中描述的解除拼接。但是sparse_to_dense函数似乎只将标量值作为output_shape。 例如,我写了这个脚本:

import tensorflow as tf
import numpy as np
unpooled=tf.sparse_to_dense(sparse_indices=[0,1,3],output_shape=[3,4],sparse_values=[4,5,6])
sess=tf.Session()
[unpol]=sess.run([unpooled])
print(unpol)

它会引发错误gose: 提升类型(e)(node_def,op,message)
tensorflow.python.framework.errors.InvalidArgumentError:output_shape的元素数量不正确:2应该是:1

这是一个错误还是我错了?

1 个答案:

答案 0 :(得分:0)

未计算的行应为:

unpooled=tf.sparse_to_dense(sparse_indices=[0,1,3],output_shape=[4],sparse_values=[4,5,6])

: [4,5,0,6]

因为最大索引是3,这意味着你有4个值。