# -*- coding: utf-8 -*-
"""
Spyder Editor

This is a temporary script file.
tensor flow 之线性回归模式
2019-oct-5
"""

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

SIZE=100
np.random.seed(100)#np随机种子
tf.set_random_seed(100)#tf随机种子
#1、构建数据
x=np.linspace(0,2,SIZE) #等差数列
noise_x=np.random.normal(loc=0.0,scale=1.0,size=SIZE) #‘随机正太分布 增加噪音
x=x+noise_x

y=8*x+8 #用于填充Y数组
noise_y=np.random.normal(loc=0.0,scale=1.1,size=SIZE)
y=y+noise_y

#2、设置为矩阵的模型
x.shape=(-1,1)
y.shape=(-1,1)

#3、构建一个模型 y=w*x+b 设置tf变量 用于训炼
w=tf.Variable(initial_value=tf.random_uniform(shape=[1],minval=-1.0,maxval=1.0,name='w'))
b=tf.Variable(initial_value=tf.zeros(shape=[1],name='b'))

#4、得到预测值
y_hat=w*x+b

#5、构建损失函数 loss
loss=tf.reduce_mean(tf.square(y_hat-y),name='loss') #损失函数 loss=聚合平均值(差的平方)

#6、梯度下降 优化损失函数 ,让其最小
optiomizer=tf.train.GradientDescentOptimizer(learning_rate=0.05)#初始化变量 及学习
train=optiomizer.minimize(loss=loss) #求最小损失函数 loss

#执行训练
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
run_w,run_b,run_loss=sess.run([w,b,loss])
print('w={},b={},loss={}'.format(run_w,run_b,run_loss))

for i in range(100):#训练100次
sess.run(train)
run_w,run_b,run_loss=sess.run([w,b,loss])#取w,b,loss这三个东东的值 并打印展示
print('w={},b={},loss={}'.format(run_w,run_b,run_loss))

#画表展示
#画线
x_hat=np.linspace(x.min(),x.max())
print("x_hat={}".format(x_hat))
y_hat2=run_w*x_hat+run_b
plt.plot(x_hat,y_hat2)
#画线
#画点
plt.plot(x,y,'go') #go rs ro
#画点
plt.show()#显示

tensor flow 线性回归的更多相关文章

  1. 机器学习: Tensor Flow +CNN 做笑脸识别

    Tensor Flow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库.节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数 ...

  2. **手把手教你安装 Anaconda + Tensor flow+Pycharm**

    手把手教你安装 Anaconda + Tensor flow+Pycharm 这篇博文主要讲一下自己安装Anaconda + Tensor flow + Pycharm 的一个过程. 1. ANACO ...

  3. scikit Flow ,tensor flow 做ml模型

    [https://github.com/ilblackdragon/tf_examples/blob/master/titanic.py] [keras 高层tensorflow] https://k ...

  4. 时事新闻之 谷歌 google 发布Tensor Flow 源代码

    TensorFlow: TensorFlow is an open source software library for numerical computation using data flow ...

  5. Tensor Flow基础(2.0)

    写在前面:此篇纯属自我记录,参考意义不大. 数据类型 数值型 标量Scalar:1.0,2.3等,shape为0->[] a = 1.2 向量Vector:[1.0],[2.3,5.4]等,sh ...

  6. tensor flow入门笔记

    个人学习笔记,欢迎交流.

  7. tensor flow中summary用法总结

    对于用法的总结详细的参见博文https://www.cnblogs.com/lyc-seu/p/8647792.html

  8. 在hadoop运行tensor flow

    http://www.infoq.com/cn/articles/deeplearning-tensorflow-casestudy http://www.tuicool.com/articles/a ...

  9. keras、 tensor flow 教程

    [keras]http://keras-cn.readthedocs.io/en/latest/getting_started/concepts/,[tensorflow] http://blog.c ...

随机推荐

  1. RobotFramework: 获取当前时间戳

    robot中先导入DateTime库 #获取当前时间:2019-07-31 10:46:29.940 ${time} Get Current Date result_format=timestamp ...

  2. Spring 消息转换器和注解控制器

    目录 1.什么是消息转换器? 2.消息转换器结构:HttpMessageConverter 3.Spring 调用逻辑 3.1 HandlerMethodArgumentResolver 接口 和 H ...

  3. js 上传txt格式文件

    判断文件是否为.txt格式: $(".delbao .file").on("change",function(){ var acceptType = $(thi ...

  4. Java程序内存分析

    1. Runtime.getRuntime().freeMemory() 和 jvisualvm.exe http://blog.csdn.net/u011004037/article/details ...

  5. Appium移动自动化测试-----(六)1.appium-desktop下载安装

    Appium 移动测试中有个很重新的组件 Appium-Server,它主要用来监听我们的移动设备(真机或模拟器),然将不同编程语言编写的 appium 测试脚本进行解析,然后,驱动移动设备来运行测试 ...

  6. Cannot assign requested address的解决办法

    今天想试一下redis,写了个程序,对redis连续进行100000访问,却出现以了Cannot assign requested address的问题,我起先是以为是redis的问题(可能承受不了这 ...

  7. 030 Android 第三方开源下拉框:NiceSpinner的使用+自定义Button样式+shape绘制控件背景图+图片选择器(selector)

    1.NiceSpinner下拉框控件介绍 Android原生的下拉框Spinner基本上可以满足Android开发对于下拉选项的设计需求,但现在越来越流行的下拉框不满足于Android原生提供的下拉框 ...

  8. 请求部署在 IIS7.5 上的 REST 服务的 Put/Post/Delete 操作发生 HTTP Error 405.0 - Method Not Allowed 错误之解决

    背景 请求部署在 IIS7.5 上的 REST 服务的 Put/POST/DELETE 操作发生 HTTP Error 405.0 - Method Not Allowed 错误. Issue 解决 ...

  9. AX 2009中现有量画面修改

    前端时间开发一个东西,需要在现有量画面增加一个字段 但是发现这个display方法写在任何数据源下面都不行,数据取的不对. 因为InventSum这个表只有所有维度都出来时才会有对应关联的invent ...

  10. MyBatis Generator 自动生成的POJO对象的使用(二)

    四.Example Class使用说明 示例类指定如何构建动态where子句. 表中的每个非BLOB列都可以选择包含在where子句中. 示例是演示此类用法的最佳方法. 示例类可用于生成几乎无限制的w ...