使用tensorflow实现线性回归


Posted in Python onSeptember 08, 2018

本文实例为大家分享了tensorflow实现线性回归的具体代码,供大家参考,具体内容如下

一、随机生成1000个点,分布在y=0.1x+0.3直线周围,并画出来

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

num_points = 1000
vectors_set = []
for i in range(num_points):
  x1 = np.random.normal(0.0,0.55)
  //设置一定范围的浮动
  y1 = x1*0.1+0.3+np.random.normal(0.0,0.03)
  vectors_set.append([x1,y1])

x_data = [v[0] for v in vectors_set]
y_data = [v[1] for v in vectors_set]

plt.scatter(x_data,y_data,c='r')
plt.show()

二、构造线性回归函数

#生成一维的w矩阵,取值为[-1,1]之间的随机数
w = tf.Variable(tf.random_uniform([1],-1.0,1.0),name='W')
#生成一维的b矩阵,初始值为0
b = tf.Variable(tf.zeros([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)
#最小化loss
train = optimizer.minimize(loss,name='train')


sess=tf.Session()
init = tf.global_variables_initializer()
sess.run(init)

#print("W",sess.run(w),"b=",sess.run(b),"loss=",sess.run(loss))
for step in range(20):
  sess.run(train)
  print("W=",sess.run(w),"b=",sess.run(b),"loss=",sess.run(loss))

//显示拟合后的直线
plt.scatter(x_data,y_data,c='r')
plt.plot(x_data,sess.run(w)*x_data+sess.run(b))
plt.show()

三、部分训练结果如下:

W= [ 0.10559751] b= [ 0.29925063] loss= 0.000887708
W= [ 0.10417549] b= [ 0.29926425] loss= 0.000884275
W= [ 0.10318361] b= [ 0.29927373] loss= 0.000882605
W= [ 0.10249177] b= [ 0.29928035] loss= 0.000881792
W= [ 0.10200921] b= [ 0.29928496] loss= 0.000881397
W= [ 0.10167261] b= [ 0.29928818] loss= 0.000881205
W= [ 0.10143784] b= [ 0.29929042] loss= 0.000881111
W= [ 0.10127408] b= [ 0.29929197] loss= 0.000881066

拟合后的直线如图所示:

使用tensorflow实现线性回归

结论:最终w趋近于0.1,b趋近于0.3,满足提前设定的数据分布

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 字符串格式化代码
Mar 17 Python
python实现根据窗口标题调用窗口的方法
Mar 13 Python
python BeautifulSoup设置页面编码的方法
Apr 03 Python
python类继承用法实例分析
May 27 Python
Python中的迭代器与生成器高级用法解析
Jun 28 Python
python快速建立超简单的web服务器的实现方法
Feb 17 Python
详谈pandas中agg函数和apply函数的区别
Apr 20 Python
Django使用paginator插件实现翻页功能的实例
Oct 24 Python
python 用下标截取字符串的实例
Dec 25 Python
Python3 chardet模块查看编码格式的例子
Aug 14 Python
深入理解Python变量的数据类型和存储
Feb 01 Python
PyTorch中permute的使用方法
Apr 26 Python
Python  unittest单元测试框架的使用
Sep 08 #Python
tensorflow实现逻辑回归模型
Sep 08 #Python
Django实现表单验证
Sep 08 #Python
python实现排序算法解析
Sep 08 #Python
TensorFlow实现Logistic回归
Sep 07 #Python
tensorflow实现简单逻辑回归
Sep 07 #Python
Tensorflow使用支持向量机拟合线性回归
Sep 07 #Python
You might like
咖啡产品发展的三大浪潮
2021/03/04 咖啡文化
php 结果集的分页实现代码
2009/03/10 PHP
PHP 使用memcached简单示例分享
2015/03/05 PHP
MySql数据库查询结果用表格输出PHP代码示例
2015/03/20 PHP
Linux下编译redis和phpredis的方法
2016/04/07 PHP
php实现将base64格式图片保存在指定目录的方法
2016/10/13 PHP
ExtJS 2.2.1的grid控件在ie6中的显示问题
2009/05/04 Javascript
解析JavaScript中的标签语句
2013/06/19 Javascript
javascript抖动元素的小例子
2013/10/28 Javascript
Javascript中对象继承的实现小例
2014/05/12 Javascript
js实现文字在按钮上滚动的方法
2015/08/20 Javascript
js实现上传图片及时预览
2016/05/07 Javascript
javascript 实现文本使用省略号替代(超出固定高度的情况)
2017/02/21 Javascript
Vue Element使用icon图标教程详解(第三方)
2018/02/07 Javascript
Json实现传值到后台代码实例
2020/06/30 Javascript
js实现鼠标点击飘爱心效果
2020/08/19 Javascript
[54:43]DOTA2-DPC中国联赛 正赛 CDEC vs Dynasty BO3 第一场 2月22日
2021/03/11 DOTA
对pandas数据判断是否为NaN值的方法详解
2018/11/06 Python
对python判断ip是否可达的实例详解
2019/01/31 Python
python中的逆序遍历实例
2019/12/25 Python
基于python实现计算且附带进度条代码实例
2020/03/31 Python
keras中的卷积层&池化层的用法
2020/05/22 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
2020/07/14 Python
python搜索算法原理及实例讲解
2020/11/18 Python
python自动生成证件号的方法示例
2021/01/14 Python
美国大型的健身社区和补充商店:Bodybuilding.com
2016/09/06 全球购物
世界著名的顶级牛排:Omaha Steak(奥马哈牛排)
2016/09/20 全球购物
TUMI新加坡官网:国际领先的商旅箱包品牌
2019/01/12 全球购物
法国购买隐形眼镜和眼镜网站:Optical Center
2019/10/08 全球购物
德国W家官网,可直邮中国的母婴商城:Windeln.de
2021/03/03 全球购物
分别介绍一下Session Bean和Entity Bean
2015/03/13 面试题
学生励志演讲稿
2014/01/06 职场文书
小区门卫管理制度
2014/01/29 职场文书
2015年教师学期工作总结
2015/04/30 职场文书
律政俏佳人观后感
2015/06/09 职场文书
python 命令行传参方法总结
2021/05/25 Python