import numpy
import tensorflow as tf

#自己创建的数据
x_data = numpy.random.rand(100).astype(numpy.float32)#创建具有100个元素的数组
y_data = x_data*0.1+0.3#具有自动遍历的功能

##设置神经网络的结构###
Weights = tf.Variable(tf.random_uniform([1],-1,1))
basiss = tf.Variable(tf.zeros([1]))
#模拟我们之前写的数学方程式
y = Weights*x_data+basiss
#比较误差
loss = tf.reduce_mean(tf.square(y-y_data))
#知道误差,建立优化器,减小误差
optimzier = tf.train.GradientDescentOptimizer(0.5)#其中的数据表示学习效率,一般是小于1的数据
#参数更新
trian = optimzier.minimize(loss)
#以上都是建立神经网络的结构

#下面是训练
#初始化,初始化Variable,才能使用变量
init = tf.global_variables_initializer()
#创建对话可以理解为c++的指针
sess = tf.Session()
#指向结构
sess.run(init)
#训练
for step in range(201):
#指向误差更新,使得它不断的训练
  sess.run(trian)
  if step%20==0:
    print(step,sess.run(Weights),sess.run(basiss))

#初步跑一个简单的神经网络代码:思路:1、创建一个数学方程 2、设置神经网络的结构(1)、设置

两个变量的值,然后仿照第一步数学方程,求出来的结果和第一步求出来的结果比较(2)、比较误差
优化误差,刷新误差 3、开始训练:(1)、初始化结构里面的vairable (2)、创建对话(指针)
然后指向结构(执行)、然后用for语句进行训练

运行结果:

0 [0.03197816] [0.476912]
20 [0.06810132] [0.31761634]
40 [0.09198748] [0.304425]
60 [0.09798737] [0.30111152]
80 [0.09949446] [0.3002792]
100 [0.09987302] [0.30007014]
120 [0.09996811] [0.30001763]
140 [0.099992] [0.30000442]
160 [0.09999802] [0.3000011]
180 [0.0999995] [0.30000028]
200 [0.09999988] [0.30000007]

tensorflow学习之路---简单的代码的更多相关文章

  1. tensorflow学习之路-----简单卷积神经网路

    import tensorflow as tf#取数据,目的是辨别数字from tensorflow.examples.tutorials.mnist import input_data'''手动添加 ...

  2. java学习之路--简单基础的面试题

    1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注 ...

  3. tensorflow学习之路-----MNIST数据

    ''' 神经网络的过程:1.准备相应的数据库 2.定义输入成 3.定义输出层 4.定义隐藏层 5.训练(根据误差进行训练) 6.对结果进行精确度评估 ''' import tensorflow as ...

  4. luluzero的angularJs学习之路_angularJs示例代码

    最近开始自学 angularJs这个前端MVC框架,感觉在前端实现MVC很酷有木有.哈哈哈... 先说说我对前端MVC的一个基本的理解吧(刚开始学习接触得还比较浅显,理解可能会有些不到位,还请各位大神 ...

  5. html学习之路--简单图片轮播

    一个简单的图片轮播效果 photo.html页面代码,基本的HTML结构,在main中显示图片,此处图片依次命名为1.jpg.2.jpg.3.jpg.4.jpg. <!DOCTYPE html& ...

  6. TensorFlow学习之路1-TensorFlow介绍

    TensorFlow是一个采用数据流图(data flow graphs),用于数据计算的开源软件库. 什么是数据流图? TensorFlow的数据流图是由“节点”(nodes)和“线”(edges) ...

  7. Spring学习之路——简单入门HelloWorld

    Spring简单介绍 Spring是一个提供了解决J2EE问题的一站式框架. Spring的核心是反转控制,通过配置文件完成业务对象之间的依赖注入,他鼓励一个良好的习惯,就是注入对接口编程而不是对类编 ...

  8. IOS学习之路五(代码实现UITableView)

    先展示一下运行结果: 代码实现: 1.先创建一个空项目: 2.创建一个Controller:(TableViewController) 在AppDelegate.h中声明属性: //  AppDele ...

  9. tensorflow学习之路----保存和提取数据

    #保存数据注意他只能保存变量,不能保存神经网络的框架.#保存数据的作用:保存权重有利于下一次的训练,或者可以用这个数据进行识别#np.arange():arange函数用于创建等差数组,使用频率非常高 ...

随机推荐

  1. 微信公众号开发将war包导入新浪sae出现错误

    JAVA_Error: Error for /wechat.do java.lang.NoSuchFieldError: INSTANCE at org.apache.http.impl.io.Def ...

  2. 4、java变量、函数、基本类型的值传递、分支、循环、流程控制

    一.全局变量(global).局部变量(local).动态变量(dynamic).静态变量(static) 在类中的变量为全局变量,在方法函数中为局部变量,局部变量必须有人为赋的初值,全局变量的初值是 ...

  3. nodejs 实现简单 http 代理并缓存

    var http = require('http'), fs = require("fs"), url = require('url'), querystring = requir ...

  4. objc_clear_deallocating 与弱引用

    void *objc_destructInstance(id obj){ if (obj) { Class isa_gen = _object_getClass(obj); class_t *isa ...

  5. bzoj1604 牛的邻居 STL

    Description 了解奶牛们的人都知道,奶牛喜欢成群结队.观察约翰的N(1≤N≤100000)只奶牛,你会发现她们已经结成了几个“群”.每只奶牛在吃草的时候有一个独一无二的位置坐标Xi,Yi(l ...

  6. Winscp远程连接Linux主机,上传和下载文件

    1.安装Winscp.这里不再赘述,网上搜索下载安装就可以 2.点击桌面Winscp快捷键,打开Winscp 3.在打开的页面上填写远程主机的IP,用户名和密码,点击保存,会在页面的左边出现一个站点, ...

  7. Qt 在圆形中贴图片

    void Widget::paintEvent(QPaintEvent *) { QPainter p(this); QPixmap pix(":/images/a.jpg"); ...

  8. PCL ubuntu-12.04

    1.apt-get install build-essential cmake cmake-qt-gui 2.sudo add-apt-repository ppa:v-launchpad-joche ...

  9. HDU4565 So Easy! 矩阵高速幂外加数学

    easy 个屁啊,一点都不easy,题目就是要求公式的值,但是要求公式在最后的取模前的值向上取整.再取模,无脑的先试了高速幂 double  fmod来做,结果发现是有问题的.这题要做肯定得凑整数,凑 ...

  10. Simditor用法

    一不小心接触到Simditor,瞬间被它优美极简的界面所吸引.Simditor是Tower开源的所见即所得的在线富文本编辑器. Simditor的理念是保持简单,避免过度的功能,每个特性都追求极致的用 ...