import tensorflow as tf
# the equation is : 4x+2 = 0
unknownvalue = tf.Variable(0.0)
a = tf.constant(4.0)
b = tf.constant(2.0)
c = tf.multiply(unknownvalue,a) # 4x
equation = tf.add(c,b) # 4x+2
zerovalue = tf.constant(0.0)
diff = tf.square(equation-zerovalue) # differnce is : 4x+2 - 0
solving = tf.train.GradientDescentOptimizer(0.01).minimize(diff)
init = tf.global_variables_initializer()
tf.print(init)
for n in range(1000):
tf.print(solving)
代码是从他的tensorflow库以新版本编写的 程序由于此错误而无法运行,它是 AttributeError:模块“ tensorflow._api.v2.train”没有属性“ GradientDescentOptimizer” 解决办法是什么?
答案 0 :(得分:0)
tensorflow 2在keras.optimizers中具有梯度下降,将其更改为:tf.keras.optimizers.SGD().minimize(var_list=diff)
包裹已经移动并重新组织。
这里是一个链接,它将向您显示将代码从使用tensorflow 1转换为tensorflow 2所需的更改:link