• Hello TensorFlow


    昨天把电脑充电器落公司了 没办法今天只能来公司看书了

    买spark编程基础顺便买了本TensorFlow实战= =

    昨天把作业写完了 今天就看看这本书吧2333

    昨晚走之前把东西都装差不多了

    今天来pip一下就直接用了

    机器瞎学

     1 from tensorflow.examples.tutorials.mnist import input_data
     2 import tensorflow as tf
     3 
     4 # 下载数据集
     5 mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
     6 
     7 
     8 # 注册 session
     9 sess = tf.InteractiveSession()
    10 
    11 # 创建数据集Placeholder
    12 # None表示不限条数 784表示输入是784维的向量
    13 x = tf.placeholder(tf.float32, [None, 784])
    14 
    15 
    16 # 下面是公式 P49
    17 # w是输入数据
    18 # 784代表特征的维数
    19 # 10代表结果 因为是识别手写数字 所以一共10维代表0-9
    20 # b代表bias 数据本身的偏向
    21 w = tf.Variable(tf.zeros([784, 10]))
    22 b = tf.Variable(tf.zeros([10]))
    23 y = tf.nn.softmax(tf.matmul(x, w) + b)
    24 
    25 # y_是真实概率分布
    26 # cross_entropy是信息熵 数学之美里有介绍 在这里作为损失函数
    27 y_ = tf.placeholder(tf.float32, [None, 10])
    28 cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1]))
    29 
    30 # 梯度下降算法
    31 train_step = tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy)
    32 
    33 # 全局参数初始化
    34 tf.global_variables_initializer().run()
    35 
    36 # 每次取1000个样本进行训练
    37 # 书上是取100 训出来的结果是92.05%(虽然每次也都在变 但变化不大)
    38 # 改成1000之后训出来是92.57% 表示根本没啥差距= =
    39 for i in range(10000):
    40     batch_xs, batch_ys = mnist.train.next_batch(10000)
    41     train_step.run({x: batch_xs, y_: batch_ys})
    42 
    43 # 最后返回计算分类是否正确的操作 correct_prediction
    44 correct_prediction = tf.equal(tf.argmax(y, 1), tf.argmax(y_, 1))
    45 
    46 # 把correct_prediction转成float32(double不行吗真是的= =) 再求平均
    47 accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))
    48 
    49 # 输出准确率
    50 print(accuracy.eval({x: mnist.test.images, y_: mnist.test.labels}))
  • 相关阅读:
    Java System.getProperty vs System.getenv
    Bring JavaScript to your Java enterprise with Vert.x
    es4x 引用外部jar 包以及集成typescrip
    cube.js 最近的一些更新
    es4x 调用其他三方jar 包
    graalvm native image 试用
    es4x 使用nodejs 开发vertx 应用框架试用
    clojure 环境搭建
    restql 学习三 查询语言简单说明
    restql 学习二 几种查询模式
  • 原文地址:https://www.cnblogs.com/general10/p/9651325.html
Copyright © 2020-2023  润新知