zoukankan      html  css  js  c++  java
  • tensorflow学习之路---简单的代码

    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]
  • 相关阅读:
    如何确定Kafka的分区数、key和consumer线程数
    Storm程序永久代内存溢出
    JVM堆内存相关的启动参数:年轻代、老年代和永久代的内存分配
    Git添加本地项目出现fatal: unable to get credential storage lock: File exists
    Kafka的通讯协议
    文件上传 数据对比
    jquery 弹出层
    XSS 简单理解之:AntiSamy
    XSS 简单理解
    超人说我最叼蝙蝠侠笑了 超级英雄战力排名
  • 原文地址:https://www.cnblogs.com/MyUniverse/p/9399026.html
Copyright © 2011-2022 走看看