美文网首页
tensorflow 简单的结构

tensorflow 简单的结构

作者: 朱宏飞 | 来源:发表于2018-08-21 22:53 被阅读0次

    目的:根据预测值和实际值的误差,训练。不断地修正参数。

    程序如下:

    #导入

    import tensorflow as tf

    import numpy as np

    #数据

    X_data =np.random.rand(100).astype(np.float32)

     #    在tensorflow大部分数据形式是float32,生成100个随机数

    Y_data=X_data*0.1+0.3

    #本次实验的目的:经过训练,使得Weights尽可能接近0.1,biases接近0.3。

    ##创造tensorflow的结构开始###

    Weights=tf.Variable(tf.random_uniform[1],-1.0,1.0)

    #定义变量用到Variable,结构为一维,范围是-1到1

    biases=tf.Variable(tf.zeros[1])

    #初始值定义为0

    Y=Weights*X_data+biases

    Loss=tf.reduce_mean(tf.square(Y-Y_data))

     #计算预测Y和实际Y的差别

    Optimizer=tf.train.GradientDescentOptimizer(0.5)

    #优化器梯度下降法,学习效率0.5

    train =optimizer.minimize(loss)

    #训练使得loss误差不断变小

    init=tf.initialize_all_varibles() #初始化变量,

    ##创造tensorflow的结构结束###

    Sess=tf.Session()

    Sess.run(init)  #激活,很重要!!!

    for step in range(201)

       sess.run(train)

    if step%20==20:

       print(step,sess.run(Weights),sess.run(biases))

        #每隔20步打印出来

    结果图:

    通过训练使得参数不断地优化。对于这种简单的数据利用梯度下降法足够用了。还有其他的优化器,下次写到CNN的时候再说。

    相关文章

      网友评论

          本文标题:tensorflow 简单的结构

          本文链接:https://www.haomeiwen.com/subject/tbmsiftx.html