tensorfow模拟函数拟合过程
tensorflow真是把机器学习变成了纯工程化的东西了 本文用TensorFlow 模拟函数拟合 用matplotlib 画出动图 便于直观感受
最终您会看到拟合的动图
import tensorflow as tf import numpy as np import matplotlib.pyplot as plt import matplotlib.animation as animation import time x_data=np.random.rand(100).astype(np.float32); #print(x_data); y_data=x_data*0.1+0.3; Weith=tf.Variable(tf.random_uniform([1],-1.0,1.0)); Baise=tf.Variable(tf.zeros([1])); y=Weith*x_data+Baise; #定义损失函数 loss=tf.reduce_mean(tf.square(y-y_data)); #学习效率 optimizer=tf.train.GradientDescentOptimizer(0.5);
//按照损失函数最小化进行训练 train=optimizer.minimize(loss); inint=tf.initialize_all_variables(); sess=tf.Session(); sess.run(inint); //动图模拟过程 fig2 = plt.figure() axes1 = fig2.add_subplot(111) axes1.plot(x_data,y_data); line,= axes1.plot(x_data,y_data,color='red')
def update(datay): line.set_ydata(datay) return line, def data_gen(): for step in range(201): sess.run(train); yield sess.run(Weith)*x_data+sess.run(Baise); ani = animation.FuncAnimation(fig2, update, data_gen, interval=0.1*1000) plt.show()
//动图模拟过程