tensorflow训练线性回归模型
tensorflow安装
tensorflow安装过程不是很顺利,在这里记录一下
环境:Ubuntu
安装
sudo pip install tensorflow
如果出现错误
Could not findany downloads that satisfy the requirement tensorflow
执行
sudo pip install --upgrade pip
sudo pip install tensorflow
如果出现错误
Cannot uninstall 'six'.It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
然后执行
sudo pip install six --upgrade --ignore-installed six
sudo pip install tensorflow
完整代码
import tensorflow as tf
import matplotlib.pyplot as plt
import numpy as np
#样本数据
x_train = np.linspace(-1,1,300)[:,np.newaxis]
noise = np.random.normal(0, 0.1, x_train.shape)
y_train = x_train * 3 + noise + 0.8
#线性模型
W = tf.Variable([0.1],dtype = tf.float32)
b = tf.Variable([0.1],dtype = tf.float32)
x = tf.placeholder(tf.float32)
line_model = W * x + b
#损失模型
y = tf.placeholder(tf.float32)
loss = tf.reduce_sum(tf.square(line_model - y))
#创建优化器
optimizer = tf.train.GradientDescentOptimizer(0.001)
train = optimizer.minimize(loss)
#初始化变量
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
# 绘制样本数据
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.scatter(x_train, y_train)
plt.ion()
plt.show()
plt.pause(3)
#训练100次
for i in range(100):
#每隔10次打印1次成果
if i % 10 == 0:
print(i)
print('W:%s b:%s' % (sess.run(W),sess.run(b)))
print('loss:%s' % (sess.run(loss,{x:x_train,y:y_train})))
sess.run(train,{x:x_train,y:y_train})
print('---')
print('W:%s b:%s' % (sess.run(W),sess.run(b)))
print('loss:%s' % (sess.run(loss,{x:x_train,y:y_train})))
样本训练数据分布如下

输出结果如下

结论
通过打印结果可以看到W已经非常接近初始给定的3,b也非常接近给定的0.8 (误差不可避免)
注:本文 代码+tensorboard功能 进阶,戳: https://www.cnblogs.com/maskerk/p/9973664.html
思考
与不用框架的神经网络学习( https://www.cnblogs.com/maskerk/p/9975510.html )相比,使用tensorflow进行迭代的时候,不会显式地处理 权重 和 偏差值 ,就是需要训练的参数。
在tensorflow框架下,只要定义成变量(tf.Variable)类型,在训练过程中,就会通过优化器顺藤摸瓜式的找到变量进行修改训练。
使用框架的话,套路居多,为什么这样做会变得模糊不清。所以要先看一下明白没有框架的代码是怎么运行的。再回头学框架的内容。
tensorflow训练线性回归模型的更多相关文章
- TensorFlow 训练好模型参数的保存和恢复代码
TensorFlow 训练好模型参数的保存和恢复代码,之前就在想模型不应该每次要个结果都要重新训练一遍吧,应该训练一次就可以一直使用吧. TensorFlow 提供了 Saver 类,可以进行保存和恢 ...
- 深度学习入门实战(二)-用TensorFlow训练线性回归
欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者 :董超 上一篇文章我们介绍了 MxNet 的安装,但 MxNet 有个缺点,那就是文档不太全,用起来可能 ...
- 学习TensorFlow,线性回归模型
学习TensorFlow,在MNIST数据集上建立softmax回归模型并测试 一.代码 <span style="font-size:18px;">from tens ...
- 利用TensorFlow实现线性回归模型
准备数据: import numpy as np import tensorflow as tf import matplotlib.pylot as plt # 随机生成1000个点,围绕在y=0. ...
- TensorFlow实现线性回归模型代码
模型构建 1.示例代码linear_regression_model.py #!/usr/bin/python # -*- coding: utf-8 -* import tensorflow as ...
- 用Pytorch训练线性回归模型
假定我们要拟合的线性方程是:\(y=2x+1\) \(x\):[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] \(y\):[1, 3, 5, 7, ...
- 1.1Tensorflow训练线性回归模型入门程序
tensorflow #-*- coding: utf-8 -*- # @Time : 2017/12/19 14:36 # @Author : Z # @Email : S # @File : 1. ...
- 自学tensorflow——2.使用tensorflow计算线性回归模型
废话不多说,直接开始 1.首先,导入所需的模块: import numpy as np import os import tensorflow as tf 关闭tensorflow输出的一大堆硬件信息 ...
- 线性回归模型的 MXNet 与 TensorFlow 实现
本文主要探索如何使用深度学习框架 MXNet 或 TensorFlow 实现线性回归模型?并且以 Kaggle 上数据集 USA_Housing 做线性回归任务来预测房价. 回归任务,scikit-l ...
随机推荐
- 什么是ajax和json,说说他们的优缺点
ajax异步传输的js和xml.实现页面无刷新状态更新页面和异步提交 所谓异步,简单解释就是:向服务器发送请求的时候,我们不必等待结果,而是同时做其他的事情,等到有了结果后它自己会根据设定进行后续操作 ...
- HIVE—数据仓库
1. hive是什么? Hive是基于 Hadoop 的一个数据仓库工具: 1. hive本身不提供数据存储功能,使用HDFS做数据存储: 2. hive也不分布式计算框架,h ...
- 001---mysql
Mysql数据库 数据库相关概念 数据库服务器:运行数据管理软件的计算机 数据库:顾名思义数据仓库,是一个文件夹.存储多个文件(数据表) 数据表:对应一个文件,存储在数据库下 数据:对应文件中的每一行 ...
- scala (1) for 循环
scala if else 判断 (1)在scala中末尾不需要添加 分号 作为语句的终结符. val name = "Leo" (2) 在 scala 中 if else ...
- shiro实战整合
引入依赖(包括缓存等): <!-- SECURITY begin --> <dependency> <groupId>org.apache.shiro</gr ...
- 20155202 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
20155202 <Java程序设计>实验一(Java开发环境的熟悉)实验报告 一.实验内容及步骤 使用JDK编译.运行简单的java程序 命令行下的程序开发 一(新建文件夹): 打开wi ...
- SublimeText 改变 tab的距离
view -> Indentation -> Tab width ……
- 【转载】Alpha混合物体的深度排序
原文:Alpha混合物体的深度排序 先说个题外话, 本来我想解答一下最近Creators Club论坛上经常出现的一个问题, 意外的是在网上竟然找不到什么全面的答案.. 这是个有着复杂答案的简单问题: ...
- Oracle用户和模式,表空间
oracle 用户与表空间关系 oracle用户与表空间关系用户=商家表=商品表空间=仓库1. 1个商家能有很多商品,1个商品只能属于一个商家2. 1个商品可以放到仓库A,也可以放到仓库B,但不能同时 ...
- Windows Powershell统计代码行数
dir .\ -Recurse *.py | Get-Content | Measure-Object