1 import tensorflow as tf 2 import numpy as np 3 4 5 x_data = np.float32(np.random.rand(2,100)) 6 #print(x_data) 7 y_data = np.dot([0.100, 0.200], x_data) + 0.300 8 #print(y_data) 9 10 #构造线性模型 11 12 b =tf.Variable(tf.zeros([1])) 13 #print(b) 14 w = tf.Variable(tf.random_uniform([1,2],-1.0,1.0)) 15 y = tf.matmul(w,x_data) + b 16 17 18 loss = tf.reduce_mean(tf.square(y - y_data)) #均方误差损失 19 optimizer = tf.train.GradientDescentOptimizer(0.5) #梯度下降算法,学习率为0.5 20 train = optimizer.minimize(loss) 21 22 23 init = tf.initialize_all_variables() #初始化所有变量 24 25 #启动tf 26 sess = tf.Session() 27 sess.run(init) 28 29 #设置迭代的次数 30 for step in range(0,100000): 31 sess.run(train) 32 #if step %20 == 0: 33 print(step,sess.run(w),sess.run(b)) 34
构造线性模型,迭代次数100000次,得到最佳的权值和偏置。
# 得到最佳拟合结果 W: [[0.100 0.200]], b: [0.300]
浙公网安备 33010602011771号