TensorFlow拟合线性函数

简单的TensorFlow图构造

以单个神经元为例

x_data数据为20个随机 [0, 1) 的32位浮点数按照 shape=[20] 组成的张量

y_data为 y = 3*x_data + 0.5 也为 shape=[20]

初始化此神经元的 weight 为 [-1, 1) 之间的一个随机32位浮点数

初始化此神经元的 bias 为 0

误差(Loss)选择为神经元输出结果与y_data的差平方平均值

Optimizer概览

Optimizer的选择一般由data的size及shape决定

class tf.train.GradientDescentOptimizer

随机梯度下降优化器,SGD,stochastic gradient descent,最普通,最慢,相对比较准确

Learing Rate根据Cost选择

class tf.train.MomentumOptimizer

动量法优化器,普遍,比GradientDescent快的多,开始可能偏差较大,后来纠正很快,随时间迁移

class tf.train.AdamOptimizer 普遍

class tf.train.AdadeltaOptimizer

class tf.train.AdagradOptimizer

class tf.train.FtrlOptimizer

class tf.train.RMSPropOptimizer AlphaGo使用

Gradient Descent Optimizer

梯度下降优化器 learning rate 0.75

三个数值为weight bias loss

200步之后 3. 0.5 0.0 完美

其他Optimizer

todo: 改变 learing rate 及其他参数对其他Optimizer进行测试

Code

import tensorflow as tf

# to fitting an unary linear function

# creat data
x_data = tf.random_uniform([20], 0, 1)
y_data = x_data*3 + 0.5 # creat tensorflow stuctrue start
Weights = tf.Variable(tf.random_uniform([1], -1.0, 1.0))
biases = tf.Variable(tf.zeros([1])) output = Weights*x_data + biases loss = tf.reduce_mean(tf.square(output - y_data))
optimizer = tf.train.AdamOptimizer(0.75)
train = optimizer.minimize(loss)
# creat tensorflow stuctrue end # run tensorflow
init = tf.initialize_all_variables()
with tf.Session() as sess:
sess.run(init)
for i in range(1, 201):
sess.run(train)
if i%20 == 0:
#print("x_data:\n", x_data,"\ny_data:\n", y_data)
print(i, sess.run(Weights), sess.run(biases), sess.run(loss))

TensorFlow拟合线性函数的更多相关文章

  1. 06 使用Tensorflow拟合x与y之间的关系

    看代码: import tensorflow as tf import numpy as np #构造输入数据(我们用神经网络拟合x_data和y_data之间的关系) x_data = np.lin ...

  2. tensorflow拟合随机生成的三维数据【学习笔记】

    平台信息:PC:ubuntu18.04.i5.anaconda2.cuda9.0.cudnn7.0.5.tensorflow1.10.GTX1060 作者:庄泽彬(欢迎转载,请注明作者) 说明:感谢t ...

  3. 线性函数拟合R语言示例

    线性函数拟合(y=a+bx) 1.       R运行实例 R语言运行代码如下:绿色为要提供的数据,黄色标识信息为需要保存的. x<-c(0.10,0.11, 0.12, 0.13, 0.14, ...

  4. tensorflow 莫烦教程

    1,感谢莫烦 2,第一个实例:用tf拟合线性函数 import tensorflow as tf import numpy as np # create data x_data = np.random ...

  5. 使用MindSpore的线性神经网络拟合非线性函数

    技术背景 在前面的几篇博客中,我们分别介绍了MindSpore的CPU版本在Docker下的安装与配置方案.MindSpore的线性函数拟合以及MindSpore后来新推出的GPU版本的Docker编 ...

  6. Java 使用 Apache commons-math3 线性拟合、非线性拟合实例(带效果图)

    Java 使用 CommonsMath3 的线性和非线性拟合实例,带效果图 例子查看 GitHub Gitee 运行src/main/java/org/wfw/chart/Main.java 即可查看 ...

  7. 《用Python玩转数据》项目—线性回归分析入门之波士顿房价预测(二)

    接上一部分,此篇将用tensorflow建立神经网络,对波士顿房价数据进行简单建模预测. 二.使用tensorflow拟合boston房价datasets 1.数据处理依然利用sklearn来分训练集 ...

  8. 大叔学ML第三:多项式回归

    目录 基本形式 小试牛刀 再试牛刀 调用类库 基本形式 上文中,大叔说道了线性回归,线性回归是个非常直观又简单的模型,但是很多时候,数据的分布并不是线性的,如: 如果我们想用高次多项式拟合上面的数据应 ...

  9. 广告成本控制-PID算法

    今天我们来聊聊广告成本控制中常用的PID算法. 0.PID算法简介 首先我们可以看下维基百科中给PID算法的定义:由比例单元(Proportional).积分单元(Integral)和微分单元(Der ...

随机推荐

  1. oracle 常用知识积累

    一.  基本操作 1.  表操作 1.1 复制建表 create table test as select * from dept; --从已知表复制数据和结构 create table test a ...

  2. CF368 E - Garlands

    主席树 其实暴力二维树状还更快 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int M ...

  3. Docker 小记 — MySQL 与 Redis 配置

    前言 本篇随笔是继 "Docker Engine" 与 "Compose & Swarm" 之后的一个实例补充,初衷是记录测试环境中的一次 MySQL ...

  4. Python编程核心内容之一——Function(函数)

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 截至上篇随笔<Python数据结构之四--set(集合)>,Python基础知识也介绍好了.接下来准备干 ...

  5. Python基础__Python序列基本类型及其操作(1)

    本节考虑的Python的一个中要的内置对象序列, 所谓的序列即一个有序对象的集合.这里的对象可以是数字.字符串等.根据功能的不同将序列分为字符串.列表.元组,本文将以下这几种对象做一些介绍. 一. 字 ...

  6. java继承属性相关介绍

    这个只需要记住一点,父类的任何属性(变量可以看做属性),子类均可继承并覆盖,allType(father)-->changeAnyType(son)-->AnyType 这是父类的所有代表 ...

  7. 百度在线编辑器 - PHP获取提交的数据

    原文:http://www.upwqy.com/details/14.html 1 我们知道在在百度在线编辑器的demo中. 我们只要在body 里面 加载 script 标签 id="ed ...

  8. Spring【DAO模块】就是这么简单

    前言 上一篇Spring博文主要讲解了如何使用Spring来实现AOP编程,本博文主要讲解Spring的DAO模块对JDBC的支持,以及Spring对事务的控制... 对于JDBC而言,我们肯定不会陌 ...

  9. Android OpenGL ES 开发(九): OpenGL ES 纹理贴图

    一.概念 一般说来,纹理是表示物体表面的一幅或几幅二维图形,也称纹理贴图(texture).当把纹理按照特定的方式映射到物体表面上的时候,能使物体看上去更加真实.当前流行的图形系统中,纹理绘制已经成为 ...

  10. handsontable 合并单元格

    <!DOCTYPE html> <html> <head> <title>handsontable demo</title> <met ...