【问题标题】:Assign value to Variable in Tensorflow为 TensorFlow 中的变量赋值
【发布时间】:2016-05-23 19:57:04
【问题描述】:

我需要将零分配给 Tensorflow 变量,如下所示。有可能这样做吗?我该怎么办?

layer = tf.nn.sigmoid(tf.add(tf.matmul(x, h), b))
layer[0] = 0

在上面的例子中,我想将 x 矩阵和 h 向量相乘计算的变量的第一个索引设置为零。

【问题讨论】:

    标签: tensorflow deep-learning


    【解决方案1】:

    您不能直接分配它,但您可以使用.assign() 操作来实现它,here is the documentation。此外,在您分配后,您必须使用.run().eval() 运行操作。在我看来,这段代码应该可以工作:

    layerOp = layer[0].assign(0)
    sess.run(layerOp) 
    

    请查找此post 以供参考。

    【讨论】:

    • 澄清一下:上面的layertf.Tensor 而不是tf.Variable,所以上面没有定义assign() 方法。达到预期结果的最简单方法是使用tf.slice()tf.concat() 来构建预期结果。
    猜你喜欢
    • 1970-01-01
    • 2016-03-17
    • 2018-08-05
    • 2013-03-01
    • 2016-12-27
    • 1970-01-01
    • 2018-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多