初学 Tensorflow(线性回归预测)

来源:互联网 发布:飞控算法工程师培训 编辑:程序博客网 时间:2024/06/07 13:58

大致过程是:

先生成函数为 y = 0.1x + 0.3 的x、y的数据,即 k = 0.1, b = 0.3

设 k, b 初始为随机数,进行 200 次学习,每隔 20 次输出一下训练结果


具体代码如下:

# coding: utf-8import tensorflow as tf import numpy as np # 创造数据,y = 0.1x + 0.3x_data = np.random.rand(100).astype(np.float32)y_data = x_data * 0.1 + 0.3### 开始创建 tensorflow #### 可能为矩阵,首字母大写# 随机数列生成,一维的,范围[-1, 1]的数Weights = tf.Variable(tf.random_uniform([1], -1.0, 1.0))# 初始值为 0 的一维的数biases = tf.Variable(tf.zeros([1]))y = Weights * x_data + biases# 预测值与真实值的差别loss = tf.reduce_mean(tf.square(y - y_data))# 建立优化器,减少误差,提高参数的准确度# 学习效率是一个小于 1 的数,这里设为 0.5optimizer = tf.train.GradientDescentOptimizer(0.5)train = optimizer.minimize(loss)# 初始化init = tf.global_variables_initializer()### 创建完毕 #### 激活 tensorflowsess = tf.Session()sess.run(init)for step in range(201):    sess.run(train)    # 每隔 20 步输出运行结果    if step % 20 == 0:        print step, sess.run(Weights), sess.run(biases)


阅读全文
0 0