TensorFlow 2.0:建立图像分类网络
本文于 1214 天之前发表,文中内容可能已经过时。
既然google官方已经推出了tensorflow2.0的正式版,tensorflow的一些新特性让他变得更加便于使用,未来必将取代tensorflow1.x系列,为了避免被淘汰。我开始尝试tensorflow2.0,这是第一篇关于tensorflow2.0的文章,内容是使用tensotflow2.0实现一个图像分类卷积网络。
keras作为tensorflow的一个子模块添加到里面,故可以方便地调用,和1.x版本里面使用keras没有太大什么区别,有变化的地方我会在下面写出来。
这一次我们还是循规蹈矩地做一个三分类的网络。
1、预读取训练数据
图片数据的预读取可以参照我之前一篇文章《神经网络训练–数据预读取和存储》,但是这里因为tensorflow2.0里面集成的keras特性,训练时采用的labels不可以是独热编码(one-hot label),取而代之的是索引值,因此需要对预读取的代码进行修改。
这样一来,操作上确实是简单了一些,但是代价是逻辑上的不直观。我个人觉得得不偿失。
修改的部分代码如下:
1 | # 载入库 |
2、训练程序部分
主要是以下几个步骤:
- 载入库
- 读取训练数据
- 构建神经网咯模型
- 开始训练
- 训练过程可视化
下面是源代码
1 | #!/usr/bin/env python |
Reference:
赏
支付宝打赏
微信打赏
支付宝打赏
微信打赏
赞赏是不耍流氓的鼓励