模块“tensorflow._api.v2.train”没有属性“GradientDescentOptimizer”

qy2*_*806 16 python tensorflow

我使用了 Python 3.7.3 并安装了 tensorflow 2.0.0-alpha0,但是有一些问题?例如模块 'tensorflow._api.v2.train' 没有属性 'GradientDescentOptimizer' 这是我所有的代码

import  tensorflow as tf
import  numpy as np

x_data=np.random.rand(1,10).astype(np.float32)
y_data=x_data*0.1+0.3


Weights = tf.Variable(tf.random.uniform([1], -1.0, 1.0))
biases = tf.Variable(tf.zeros([1]))
y=Weights*x_data+biases

loss=tf.reduce_mean(tf.square(y-y_data))

optimizer=tf.train.GradientDescentOptimizer(0.5)
train=optimizer.minimize(loss)

init = tf.global_variables_initializer()  

sess = tf.Session()
sess.run(init)          

for step in range(201):
    sess.run(train)
    if step % 20 == 0:
        print(step, sess.run(Weights), sess.run(biases))
Run Code Online (Sandbox Code Playgroud)

Sha*_*rky 16

在 TensorFlow 2.0 中,Keras 成为默认的高级 API,并且优化器函数从tf.keras.optimizers名为tf.optimizers 的单独 API迁移。它们继承自 Keras 类优化器。tf.trainTF 2.0 中不包含相关功能。所以要访问GradientDescentOptimizer,请致电tf.optimizers.SGD


小智 13

您正在使用 Tensorflow 2.0。以下代码会有所帮助:

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
Run Code Online (Sandbox Code Playgroud)