Python做个猫狗识别系统,给人美心善的邻居

宠物真的看着好治愈
谁不想有一只属于自己的乖乖宠物捏~
这篇文章中我放弃了以往的model.fit()训练方法,
改用model.train_on_batch方法。
两种方法的比较:
model.fit():用起来十分简单,对新手非常友好
model.train_on_batch():封装程度更低,可以玩更多花样。
此外我也引入了进度条的显示方式,更加方便我们及时查看模型训练过程中的情况,可以及时打印各项指标。
🚀 我的环境:
语言环境:Python3.6.5
编译器:jupyter notebook
深度学习环境:TensorFlow2.4.1
显卡(GPU):NVIDIA GeForce RTX 3080

一、前期工作
1. 设置GPU
如果使用的是CPU可以注释掉这部分的代码。

2. 导入数据

3. 查看数据


二、数据预处理
1. 加载数据
使用image_dataset_from_directory
方法将磁盘中的数据加载到tf.data.Dataset中

TensorFlow版本是2.2.0的同学可能会遇到
module ‘tensorflow.keras.preprocessing’ has no attribute 'image_dataset_from_directory’的报错,
升级一下TensorFlow就OK了


我们可以通过class_names输出数据集的标签。标签将按字母顺序对应于目录名称。

2. 再次检查数据

Image_batch是形状的张量(8, 224, 224, 3)。这是一批形状224x224x3的8张图片(最后一维指的是彩色通道RGB)。
Label_batch是形状(8,)的张量,这些标签对应8张图片
3. 配置数据集
shuffle() :打乱数据,关于此函数的详细介绍可以参考:https://zhuanlan.zhihu.com/p/42417456
prefetch() :预取数据,加速运行,其详细介绍可以参考我前两篇文章,里面都有讲解。
cache() :将数据集缓存到内存当中,加速运行

如果报 AttributeError: module ‘tensorflow._api.v2.data’ has no attribute ‘AUTOTUNE’ 错误,就将 AUTOTUNE = tf.data.AUTOTUNE 更换为 AUTOTUNE = tf.data.experimental.AUTOTUNE,这个错误是由于版本问题引起的。
4. 可视化数据



免费发放python学习资料 点赞+评论学习