python - 如何将值注入(inject) TensorFlow 图的中间?

标签 python tensorflow autoencoder

考虑以下代码:

x = tf.placeholder(tf.float32, (), name='x')
z = x + tf.constant(5.0)
y = tf.mul(z, tf.constant(0.5))

with tf.Session() as sess:
    print(sess.run(y, feed_dict={x: 30}))

结果图是 x -> z -> y。有时我对从 x 一直计算 y 很感兴趣,但有时我从 z 开始并想将这个值注入(inject)到图中。所以 z 需要表现得像一个部分占位符。我该怎么做?

(对于任何感兴趣的人,为什么我需要这个。我正在使用一个自动编码器网络,该网络观察图像 x,生成中间压缩表示 z,然后计算图像 y 的重建。我想看看网络重建什么时候我为 z 注入(inject)了不同的值。)

最佳答案

按以下方式使用默认占位符:

x = tf.placeholder(tf.float32, (), name='x')
# z is a placeholder with default value
z = tf.placeholder_with_default(x+tf.constant(5.0), (), name='z')
y = tf.mul(z, tf.constant(0.5))

with tf.Session() as sess:
    # and feed the z in
    print(sess.run(y, feed_dict={z: 5}))

傻我。

关于python - 如何将值注入(inject) TensorFlow 图的中间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41621053/

相关文章:

python - 自定义tensorflow解码器TypeError : __call__() missing 1 required positional argument: 'inputs'

python - `_softmax_cross_entropy_with_logits`在tensorflow中定义在哪里?

machine-learning - 自动编码器可以用于重建非二进制向量吗?

TensorFlow:如何将浮点序列嵌入到固定大小的向量中?

python - 删除 pandas 中的列

python - opencv、python-opencv、libopencv有什么区别?

python - 如何获取语料库中某个单词的平均 TF-IDF 值?

python - 确定数据框列中相同类型邻居范围的最快方法

tensorflow - 在 Tensorflow 中创建加权 MSE 损失函数

python - 用于学习 10 位分类的 Pytorch MNIST 自动编码器