ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

最易懂深度学习1:手写mnist网络配置及爬坑(1)

2019-04-12 21:50:11  阅读:243  来源: 互联网

标签:network keras labels 28 train test 易懂 手写 mnist


前期准备

python以及相关依赖包,tensorflow的安装和keras的安装事项,我是在win10上运行的,所以早早查阅了相关资料,总之这个系列默认已经安装好了基本的gpu版tensorflow,有了jupyter notebook的环境,作者用的是Anaconda的配置。

代码示例以及其中的注解

import keras
keras.__version__

from keras.datasets import mnist
(train_images, train_labels), (test_images, test_labels) = mnist.load_data()

这里先看keras的版本号,无关紧要。接着要下载mnist数据集,这里要注意的是在中国是不能直接下载的,原因众所周知。网上的解决方法五花八门,可是我建议为了以后的方便最好使用科学上网的软件,一劳永逸,价格也完全不贵。

train_images.shape
len(train_labels)
train_labels
test_images.shape
len(test_labels)
test_labels

在这里输入的几行都是为了了解数据集和测试集的大小规格,是为了了解基本的属性,明白就好。

from keras import models
from keras import layers

network = models.Sequential()
network.add(layers.Dense(512, activation='relu', input_shape=(28 * 28,)))
network.add(layers.Dense(10, activation='softmax'))

这里搭建了神经网络。定义了变量network为序列类,这是固定写法,神经网络显而易见的有两层,激活函数分别为relu和softmax。这里如果keras版本太高会报错找不到softmax,最简单的解决方法是将tensorflow_backend.py中第3149行中axis=axis改成dim=axis(就是定义了softmax函数的语句),具体的行数可能会有所变化。
input_shape这里表示了28×28的一维张量,就是输入的尺寸,这里不是二维,28×28是一个数字,因为对图做过处理使其reshape,后面会看到。
512和10代表了这一层输出的量的大小,因为最后一层必须要输出的是0到9的分类,所以只能是10个,中间层的数字需要经验,大了小了都不合适,具体原因以后分析。

network.compile(optimizer='rmsprop',
                loss='categorical_crossentropy',
                metrics=['accuracy'])

现在就要编译神经网络了。
优化器选择了rmsprop,RMSprop优化器的原理类似于动量梯度下降算法。RMSprop优化器限制了垂直方向上的振荡,使我们的算法可以在水平方向上采取更大的步,进行更快地收敛。后期会再研究。
损失函数选择了交叉熵损失函数,现在先了解。
指标选择了准确度,这个比较好理解,就是准确率。下面的留到下一期去说

标签:network,keras,labels,28,train,test,易懂,手写,mnist
来源: https://blog.csdn.net/qq_40195614/article/details/89258691

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有