小编Dav*_*ave的帖子

Python中的类中的Tensorflow会话?

我想稍后使用张量流梯度来计算其他量。我需要在一个类中将目标函数和梯度作为函数进行数值计算(然后在其余套件中使用该类)。但是,以下代码出现错误:

import tensorflow as tf
class MyClass:
    def __init__(self):
        x=tf.Variable(tf.zeros(2))
        func = tf.cos(14.5 * x[0] - 0.3) + (x[1] + 0.2) * x[1] + (x[0] + 0.2) * x[0]
        diff_func = tf.gradients(func,x)

        sess = tf.Session()

    def getFunc(self,coords):
        return self.sess.run(self.func,feed_dict={self.x:coords})

    def getGrad(self,coords):
        grad = self.sess.run(self.diff_func,feed_dict={self.x:coords})
        return grad

MyClass = MyClass()
MyClass.getFunc([0.362,0.556])
MyClass.getGrad([0.362,0.556])
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

追溯(最近一次通话):

文件“”,第19行,位于MyClass.getFunc([0.362,0.556])中

getFunc中第11行的文件“”返回self.sess.run(self.func,feed_dict = {self.x:coords})

AttributeError:MyClass实例没有属性“ sess”

不确定如何使此类正常运行。谢谢。

python session class tensorflow

4
推荐指数
2
解决办法
1117
查看次数

标签 统计

class ×1

python ×1

session ×1

tensorflow ×1