从代码案例入门keras1:LeNet对手写数字Mnist分类

 

本系列文章适合有深度学习基础(上过课,看得懂代码,但是想自己上手觉得困难的初学者)

首先上LeNet论文:

===Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. (1998).
Gradient-based Learning applied to document recognition. 
Proceedings of the IEEE, 86(11), 2278–2324.===========

首先我们从导入数据集观察它可以干什么开始

import keras

from keras.datasets import mnist

print(dir(mnist))

结果显示:

然后我们可以看到我们可以操作的几个基本的功能:'absolute_import', 'division', 'get_file', 'load_data', 'np', 'print_function'

这里我们用得着加载数据:load_data

这个函数的返回值如下:

所以为了好操作 ,我们弄四个数组接住这些数值:

(x_train, y_train), (x_test, y_test)=mnist.load_data()

这时候我们得注意这些数据的形态可以导入numpy(np.shape())查看:

数组名 形态
x_train (60000, 28, 28)
y_train (60000, 28, 28)
x_test (10000, 28, 28)
y_test (10000,)

60000张训练数据,28*28的图像,0,1表示像素点,把它想成黑像素和白像素(对这个理解不能的同学可以去搜搜mnist可视化的文章这里就不介绍了)

然后我们可以开始写模型了。

f:id:ohke:20190316135330p:image:w500
网络结构

我们现在的标签是1,2,6,3,5这样的我们需要把它变成onehot模式:

keras有提供好的keras.utils.to_categorical 所以这里就直接用它了,里面有两个参数,一个是导入的label数据,一个是标签的种类总个数。

classNumber=len(set(y_test))
Y_train = keras.utils.to_categorical(y_train,classNumber)
Y_test = keras.utils.to_categorical(y_t
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值