我正在尝试优化 tensorflow 中的一个非常复杂的函数,其中函数的最后两层是:
dist = tf.contrib.distributions.Normal(mu = self._mu_pos[0][0], sigma=self._sig[0][0])
objective = a*dist.cdf(b)
其中 a
和 b
是标量值
但是,由于变量 objective
是一个标量,我无法使用此处定义的 train_op
:
opt = tf.train.GradientDescentOptimizer(learning_rate=0.01)
train_op = opt.minimize(objective_acq,var_list = [self._input])
这是因为 opt.minimize
期望 objective
是一个 tensorflow 变量。
如何将objective
转换为 tensorflow 变量?
谢谢
最佳答案
您可以使用 tf.convert_to_tensor(),请参阅文档 here .
关于optimization - 将标量函数转换为 tensorflow 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40495631/