Tensorflow学习:模型构造,模型优化的简单示例
import tensorflow as tf
import numpy as np
# Tensorflow:模型构造和模型优化的简单示例
# 使用numpy生成100个随机点(作为样本)
x_data = np.random.rand(100)
y_data = x_data * 0.1 + 0.2
# 构造一个线性模型(用来拟合上面的随机点样本)
b = tf.Variable(0.)
k = tf.Variable(0.)
# k,b:两个变量:通过梯度下降法来改变这两个值
y = k * x_data + b
# 二次代价函数loss
# y_data为真实值,y为预测的值:求误差的平方,再求一个平方
loss = tf.reduce_mean(tf.square(y_data - y))
# 定义一个梯度下降法来进行训练的优化器:学习率为:0.2
optimizer = tf.train.GradientDescentOptimizer(0.2)
# 定义一个最小化的代价函数(训练的目的)
train = optimizer.minimize(loss)
# 初始化变量
init = tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
# 进行迭代
for step in range(201):
sess.run(train)
if step % 20 == 0:
print(step, sess.run([k, b]))