我使用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))
答案 0 :(得分:1)
您正在使用Tensorflow 2.0。 以下代码会有所帮助:
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
答案 1 :(得分:0)
在TensorFlow 2.0中,Keras成为默认的高级API,优化程序功能从tf.keras.optimizers
迁移到名为tf.optimizers的单独API中。它们从Keras类Optimizer继承。 tf.train
中的相关功能未包含在TF 2.0中。因此,要访问GradientDescentOptimizer
,请致电tf.optimizers.SGD
答案 2 :(得分:0)
这是因为您正在使用TensorFlow版本2。
`tf.train.GradientDescentOptimizer(0.5)`
上述调用是针对TensorFlow版本1(例如:1.15.0)的。
您可以尝试pip install tensorflow==1.15.0
降级TensorFlow并按原样使用代码。
否则,通过以下调用使用TensorFlow版本2(您已经拥有的版本)。
tf.optimizers.SGD (learning_rate=0.001, lr_decay=0.0, decay_step=100, staircase=False, use_locking=False, name='SGD')
答案 3 :(得分:0)