• 导赏!广美研究生导师带你看2018研究生毕业作品展 2019-04-20
  • 【沙湾风光】百花盛开 迎六月 2019-04-20
  • 【专题】传统文化点亮精彩生活 2019-04-10
  • 四川九寨沟发生特大泥石流 冲毁民房、省道205线被埋 2019-04-10
  • 探寻秘境阿勒泰《章棋的视频日志》 2019-04-06
  • 讲述波兰女子拯救百名犹太儿童的故事 美国教师获森德勒奖 2019-04-06
  • 一个理想的数列递减,看着就想笑,根本放不出什么屁来 2019-04-05
  • 给脑部做个“大扫除” 让大脑充分放松 2019-04-05
  • 海上洄游时 北海狗 连续两周深睡眠 2019-04-03
  • “石家庄太行大街发生重大事故”是谣言!传谣者被拘留 2019-04-01
  • 4号线为端午节“加班” 2019-04-01
  • 这18家小众颜高又难找的家居店,一次性帮你搜罗全了! 2019-03-24
  • “首届中国非处方药行业品牌宣传月”活动将在北京举办 2019-03-24
  • 《礼记》中的礼乐制度与“生活政治” 2019-03-23
  • 众泰T300 1.5L CVT车型上市 6.98万起 2019-03-23
  • 广东36选七开奖:3.2_MNIST数据集简单分类测试

    广东快乐十分20选8计划 www.sde9.com

    背景:

    MNIST 数据集

    • 包含四个部分Training set images, Training set labels, Test set images, Test set labels.
    • 训练集的图片是mnist.train.images, 训练集的标签是mnist.train.labels
    • 训练集由来自250人手写的数字构成,测试集也是同样比例的手写数字。
    • 每一张图包含28×28=784个像素点,训练集中含有60000张图,测试集中含有10000张图。
    • 每张图都有对应的标签,是one hot vectors,即10个数字中只有一位是1,其余为0,即,mnist.train.labels是一个[6000,10]的数字矩阵

    目标:

    使用简单的无隐藏层的网络,对MNIST数据集进行简单的分类,输入层神经元784个,输出层神经元10个。
    激活函数用softmax(), 给不同对象分配概率。MNIST的每一张图片都表示一个数字,从0到9,希望最后训练的结果,得到给定图片代表每个数字的概率。

    程序:

    import tensorflow as tf
    from tensorflow.examples.tutorials.mnist import input_data#下载数据集
    
    mnist = input_data.read_data_sets("C:/Users/WangT/Desktop/MNIST_data",one_hot=True)#导入数据
    
    batch_size = 100#定义每一次批次处理的数据大小
    n_batch = mnist.train.num_examples // batch_size
    #计算分批处理次数,//是整除的除数,结果始终为整数,区别于/
    #mnist.train.num_examples是训练集的数据大小,类似还有mnist.validation.num_examples, mnist.test.num_examples.
    
    x = tf.placeholder(tf.float32,[None,784])
    y = tf.placeholder(tf.float32,[None,10])
    #placeholder占位符,希望能输入任意数量的MNIST图像,每一张图像展平为784维的向量,用2维浮点数张量来表示这些图,这个张量的形状是【none,784】,此处None表示此张量的第一个维度可以是任意长度的。
    
    W = tf.Variable(tf.zeros([784,10]))
    b = tf.Variable(tf.zeros([10]))
    #模型的参数,可以用Variable表示,可以计算输入值,也可以在计算中被修改,此处用全为零的张量来初始化w和b
    prediction = tf.nn.softmax(tf.matmul(x,W)+b)
    #得到预测结果
    loss = tf.reduce_mean(tf.square(y - prediction))
    #损失函数,评估模型好坏,tf.square是平方,tf.reduce_mean是取平均值
    train_step = tf.train.GradientDescentOptimizer(0.2).minimize(loss)
    #tf使用梯度下降法,以0.2的学习速率,不断修改模型参数来最小化loss
    
    init = tf.global_variables_initializer()
    #添加一个操作来初始化变量
    correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(prediction,1))
    #tf.equal()比对两个数,相同返回true不同返回false,tf.argmax(y,1)返回y最大时对应的x
    accuracy = tf.reduce_mean(tf.cast(correct_prediction,tf.float32))
    #tf.cast()将上述结果每一次转换成浮点型,累加并取平均值,得到准确率
    
    with tf.Session() as sess:#定义对话
        sess.run(init)
        for epoch in range (21):#模型循环训练21次
            for batch in range(n_batch):#每次训练要循环n_batch批次
                batch_xs,batch_ys = mnist.train.next_batch(batch_size)#读取训练集的下一批数据
                sess.run(train_step, feed_dict={x:batch_xs,y:batch_ys})#运行模型训练
            
            acc = sess.run(accuracy, feed_dict={x:mnist.test.images, y:mnist.test.labels})#每训练一次输出一次准确率,利用的是测试集的数据
            print("Iter"+str(epoch)+",Testing Accuracy"+str(acc))
    
    结果:
    	Iter0,Testing Accuracy0.8308
    	Iter1,Testing Accuracy0.8711
    	Iter2,Testing Accuracy0.8814
    	Iter3,Testing Accuracy0.8885
    	Iter4,Testing Accuracy0.8943
    	Iter5,Testing Accuracy0.8965
    	Iter6,Testing Accuracy0.8994
    	Iter7,Testing Accuracy0.9011
    	Iter8,Testing Accuracy0.9036
    	Iter9,Testing Accuracy0.9055
    	Iter10,Testing Accuracy0.9064
    	Iter11,Testing Accuracy0.9071
    	Iter12,Testing Accuracy0.908
    	Iter13,Testing Accuracy0.9086
    	Iter14,Testing Accuracy0.9098
    	Iter15,Testing Accuracy0.9106
    	Iter16,Testing Accuracy0.9116
    	Iter17,Testing Accuracy0.9129
    	Iter18,Testing Accuracy0.9131
    	Iter19,Testing Accuracy0.914
    	Iter20,Testing Accuracy0.9138
    

    新的学习:

    • tensorflow.examples.tutorials.mnist
    • input_data.read_data_sets()
    • mnist.train.num_examples
    • mnist.train.next_batch()
    • tf.placeholder()
    • tf.Variable()
    • tf.zeros()
    • tf.matmul()
    • tf.nn.softmax()
    • tf.square()
    • tf.reduce_mean()
    • tf.train.GradientDescentOptimizer().minimize()
    • tf.global_variables_initializer()
    • tf.equal()
    • tf.argmax()
    • tf.cast()

    没有更多推荐了,广东快乐十分20选8计划

  • 导赏!广美研究生导师带你看2018研究生毕业作品展 2019-04-20
  • 【沙湾风光】百花盛开 迎六月 2019-04-20
  • 【专题】传统文化点亮精彩生活 2019-04-10
  • 四川九寨沟发生特大泥石流 冲毁民房、省道205线被埋 2019-04-10
  • 探寻秘境阿勒泰《章棋的视频日志》 2019-04-06
  • 讲述波兰女子拯救百名犹太儿童的故事 美国教师获森德勒奖 2019-04-06
  • 一个理想的数列递减,看着就想笑,根本放不出什么屁来 2019-04-05
  • 给脑部做个“大扫除” 让大脑充分放松 2019-04-05
  • 海上洄游时 北海狗 连续两周深睡眠 2019-04-03
  • “石家庄太行大街发生重大事故”是谣言!传谣者被拘留 2019-04-01
  • 4号线为端午节“加班” 2019-04-01
  • 这18家小众颜高又难找的家居店,一次性帮你搜罗全了! 2019-03-24
  • “首届中国非处方药行业品牌宣传月”活动将在北京举办 2019-03-24
  • 《礼记》中的礼乐制度与“生活政治” 2019-03-23
  • 众泰T300 1.5L CVT车型上市 6.98万起 2019-03-23
  • 北京快中彩走势图 欢乐生肖实时开奖 蚌埠彩票大奖 七乐彩走势图近二百期 大乐透开奖第14065 重庆最新幸运农场开奖 河南22选5开奖结果 广州开福利彩票投注站 北京pk赛车开历史记录 快乐8官网登录 北京快中彩中奖规则 北京pk10口诀计划 老时时彩后二技巧 欢乐生肖 双色球ac值公式 体彩排列5第12251