TensorFlow入门一简单的回归例子

# 首先引进需要的包
import tensorflow as tf
import numpy as np

if __name__ == "__main__":

    # x_data 和y_data是伪造的训练数据
    x_data = np.random.rand(100).astype(np.float32)
    y_data = 0.1 * x_data + 0.3

    # 默认权重Weight 与偏置bias
    # tf.random_uniform三个参数 shape, minval,maxval
    # tf.Variable 必要参数initial_value 是一个tensor
    Weight = tf.Variable(tf.random_uniform([1], -1.0, 1.0))
    bias = tf.Variable(tf.zeros([1]))
    # 预测y
    y = Weight*x_data + bias
    # 使用平方计算损失
    loss = tf.reduce_mean(tf.square(y_data - y))
    # 构造优化器, 必要参数学习率 这里取0.5
    optimizor = tf.train.GradientDescentOptimizer(0.5)
    # 根据优化器与损失训练
    train = optimizor.minimize(loss)

    # 初始化所有变量 重要
    init = tf.initialize_all_variables()
    # 建立会话
    sess = tf.Session()
    sess.run(init) #初始化变量

    for step in range(201):
        sess.run(train)
        if step % 20 == 0:
            # 每20步打印训练得出的权重与bias
            print (step, sess.run(Weight), sess.run(bias))

猜你喜欢

转载自blog.csdn.net/jade07/article/details/80427730