# -*- coding: utf-8 -*-
import tensorflow as tf
import numpy as np
# 1.准备数据:使用 NumPy 生成假数据(phony data), 总共 100 个点.
x_data = np.float32(np.random.rand(2, 100))
y_data = np.dot([0.100, 0.200], x_data) + 0.300
# 2.构造一个线性模型
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1,2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b
# 3.求解模型
# 设置损失函数:误差的均方差
loss = tf.reduce_mean(tf.square(y-y_data))
# 选择梯度下降的方法
optimizer = tf.train.GradientDescentOptimizer(0.5)
# 迭代的目标:最小化损失函数
train = optimizer.minimize(loss)
############################################################
# 以下是用 tf 来解决上面的任务
# 1.初始化变量:tf 的必备步骤,主要声明了变量,就必须初始化才能用
init = tf.global_variables_initializer()
# 2.启动图 (graph)
sess = tf.Session()
sess.run(init)
# 3.迭代,反复执行上面的最小化损失函数这一操作(train op),拟合平面
for step in xrange(0, 201):
sess.run(train)
#train.run(session = sess)
if step % 20 == 0:
print step, sess.run(W), sess.run(b)
tf的整体流程
最新推荐文章于 2023-11-07 11:13:34 发布