tensorflow线性回归

一、构造1000组高斯分布数据

import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt

#定义一个空的列表
vector = []
#生成1000组随机数
for i in range(1000):
    x = np.random.normal(0,0.6)
    y = 0.2*x + 0.4 + np.random.normal(0,0.08)
    vector.append([x,y])
    
x_data = [v[0] for v in vector]
y_data =[v[1] for v in vector]
plt.scatter(x_data,y_data,c='r')
plt.show()

tensorflow线性回归_第1张图片

二、训练模型

#初始化权重w和偏置b
w = tf.Variable(tf.random_uniform([1],-1,1),name='w')
b = tf.Variable(tf.random_uniform([1],-1,1),name='b')

#经过计算得出预估值
y = w * x_data + b

#定义损失函数(均方误差)
loss = tf.reduce_mean(tf.square(y-y_data),name='loss')

#采用梯度下降来更新参数
optimizer = tf.train.GradientDescentOptimizer(0.5)

#训练:训练的过程就是最

你可能感兴趣的:(tensorflow)