【学习记录】tensorflow图像数据增强

本文介绍了如何在TensorFlow中使用Keras预处理层对图片数据进行处理,包括调整尺寸、重缩放、数据增强等,以防止过拟合。通过加载beans数据集,演示了如何划分训练、验证和测试集,并展示了预处理步骤如随机翻转、旋转等。最后,讨论了将预处理集成到模型中以及在数据集上应用预处理的两种方式,并进行了模型训练和评估。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

使用 Keras 预处理层,对图片进行例如亮度,对比度,灰度,水平旋转,垂直旋转等的操作。降低神经网络模型对数据的过拟合。

数据集

采用tensorflow自带数据集beans

Beans 是使用智能手机相机在田间拍摄的豆类图像数据集。它由3个类别组成:2个疾病类别和健康类别。描述的疾病包括角叶斑病和豆锈病。数据由乌干达国家作物资源研究所 (NaCRRI) 的专家进行注释,并由 Makerere AI 研究实验室收集。

代码分析

1.在使用tfds.load数据集会出现无法获取google的token信息,从而无法下载数据集的情况

# 添加代码,取消认证
# 获得 Google 身份 
tfds.core.utils.gcs_utils._is_gcs_disabled = True

2.下载数据集并划分训练,验证,测试集

import matplotlib.pyplot as plt
import numpy as np
import tensorflow as tf
import tensorflow_datasets as tfds

from tensorflow.keras import layers

# # 查看数据集
# tfds.list_builders()

# 下载数据集合
(train_ds,val_ds,test_ds),metadata = tfds.load(
    'beans',
    split=['train[:80%]','train[80%:90%]','train[90%:]'],
    with_info=True, 
    as_supervised=True

)

# 数据集合的类别
num_classes = metadata.features['label'].num_classes
print(nu
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值