假设最小化函数 y = x2 , 选择初始点 x0= 5


 

1. 学习率为1的时候,x在5和-5之间震荡。

 1 #学习率为1
 2 
 3 import tensorflow as tf
 4 training_steps = 10
 5 learning_rate = 1
 6 x = tf.Variable(tf.constant(5, dtype=tf.float32),name="x")
 7 y = tf.square(x)
 8 
 9 train_op = tf.train.GradientDescentOptimizer(learning_rate).minimize(y)
10 
11 with tf.Session() as sess:
12     sess.run(tf.global_variables_initializer())
13     for i in range(training_steps):
14         sess.run(train_op)
15         x_value = sess.run(x)
16         print("After %s iteration(s): x%s is %f."%(i+1,i+1,x_value))
17 
18 
19 #输出结果:
20 After 1 iteration(s): x1 is -5.000000.
21 After 2 iteration(s): x2 is 5.000000.
22 After 3 iteration(s): x3 is -5.000000.
23 After 4 iteration(s): x4 is 5.000000.
24 After 5 iteration(s): x5 is -5.000000.
25 After 6 iteration(s): x6 is 5.000000.
26 After 7 iteration(s): x7 is -5.000000.
27 After 8 iteration(s): x8 is 5.000000.
28 After 9 iteration(s): x9 is -5.000000.
29 After 10 iteration(s): x10 is 5.000000.
View Code

相关文章:

  • 2021-06-17
  • 2021-07-10
  • 2021-12-15
  • 2021-09-18
  • 2022-12-23
  • 2021-11-25
  • 2022-12-23
  • 2021-12-09
猜你喜欢
  • 2021-08-18
  • 2022-12-23
  • 2021-10-05
  • 2021-11-17
  • 2022-02-18
  • 2022-12-23
  • 2021-05-14
相关资源
相似解决方案