数据增强是一种在深度学习和机器学习中广泛使用的技术,主要用于增加数据的数量和多样性。
数据增强通过对原始数据进行一系列随机的变换操作,生成新的、与原始数据相似但游不完全相同的数据样本。这些变换操作可以在不改变数据的本质特征的前提下,增加数据的变化性,从而使模型能够学到更广泛的模式和特征。
1.翻转:包括水平翻转和垂直翻转
2.旋转:对图片进行一定角度的旋转
3.缩放:对图片进行放大或者缩小的操作
4.裁剪:随机裁剪图像的一部分
5.亮度、对比度、色彩调整:改变图片的亮度,对比度,色彩饱和度邓属性
5.加噪声:对图片添加随机的噪声,比如高斯噪声,椒盐噪声等等
这些操作在PyTorch中都可以实现,先导入from torchvision import transforms,transforms中有商面操作的一系列函数
1.transfrom.RandomRotation:用于图片随机旋转,传入需要旋转的角度即可
transfrom.RandomRotation(45) # 随机旋转旋转角度为-45到45之间
2.transfrom.CenterCrop:从中心开始裁剪,传入需要裁剪后的图片大小即可
transfrom.CenterCrop(224) # 将图片从中心开始裁剪后为224*224大小的图片
3.transfrom.RandomHorizontalFlip:将随机图片水平翻转,参数为一个翻转概率
transfrom.RandomHorizontaFlip(p=0.5) # 表示有百分之五十的概率将这张图片水平翻转
4.transfrom.RandomVerticalFlip():和水平翻转类似,不过这个是随机垂直翻转
5.transfrom.ColorJitter:改变图片的亮度、对比度、色彩饱和度。参数1为亮度,参数2为对比度,参数3为饱和度,参数4为色相
# 参数1为亮度,参数2为对比度,参数3为饱和度,参数4为色相
transforms.ColorJitter(brightness=0.2, contrast=0.1, saturation=0.1, hue=0.1)
6.transfrom.RandomGrayscale:随机转换成灰度
transforms.RandomGrayscale(p=0.025)
1.增加数据量:通过生成新的样本,可以有效地扩充训练数据集的大小。在数据量有限的情况下,这可以帮助模型更好地学习到数据的分布和特征,提高模型的性能和泛化能力。
2.提高模型的泛化能力:数据增强可以使模型接触到更多不同的样本,从而减少对特定样本的过拟合风险。模型能够学习到更通用的特征和模式,更好地适应新的、未见过的数据。
3.增强模型的鲁棒性:通过添加噪声、进行随机变换等操作,可以使模型对数据中的噪声、变化和干扰具有更强的抵抗能力。这使得模型在实际应用中更加稳定和可靠。
4.适应不同的任务和场景:数据增强可以根据具体的任务和场景进行定制化的操作。例如,对于图像分类任务,可以进行特定的图像变换;对于文本情感分析任务,可以进行文本的语义变换。这样可以使模型更好地适应不同的任务需求
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- bangwoyixia.com 版权所有 湘ICP备2023022004号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务