将函数映射到TensorFlow中的部分张量

时间:2018-11-28 22:18:01

标签: python tensorflow

在TensorFlow体系结构中,如何将函数仅应用于张量中的某些元素?例如,在图层的最终输出中,一些变量表示我要通过S型曲线的像素密度,而张量开头的一些变量表示无界的连续值,我不希望应用激活完全起作用。

这是我正在尝试的:

    output_activation=tf.nn.sigmoid
    x = tf.layers.dense(z, hidden_size, activation=hidden_activation)
    x = tf.layers.dense(x, hidden_size, activation=hidden_activation)
    _logits = tf.layers.dense(x, output_size, activation=None)
    # Apply sigmoid only to image variables
    logits = tf.concat(_logits[:functional_inputs], tf.map_fn(output_activation, _logits[functional_inputs:]), 0)

哪个给出以下值错误:

ValueError: Tensor conversion requested dtype int32 for Tensor with dtype float32: 'Tensor("build_decoder/map/TensorArrayStack/TensorArrayGatherV3:0", shape=(?, 288755), dtype=float32)'

这是最好的方法吗?

0 个答案:

没有答案