![MindSpore深度学习高阶技术](https://wfqqreader-1252317822.image.myqcloud.com/cover/710/47216710/b_47216710.jpg)
上QQ阅读APP看书,第一时间看更新
1.2.3 使用示例
1.基于概率的自动数据增强
本示例主要介绍如何实现基于概率的自动数据增强。
首先导入代码所需的相关模块,如代码1.14所示。
代码1.14 导入依赖模块
![](https://epubservercos.yuewen.com/6AA9C3/26581519801336606/epubprivate/OEBPS/Images/Figure-P26_34338.jpg?sign=1739297509-ATpoHYlHxhv870Kchk6JnZK3AqOarH0d-0-5c49a56886382543ad2af247cebb00d8)
使用ImageFolderDataset接口加载图像数据集,执行图像解码与随机缩放裁剪和随机水平翻转操作,如代码1.15所示。
代码1.15 加载数据集并执行有监督数据增强
![](https://epubservercos.yuewen.com/6AA9C3/26581519801336606/epubprivate/OEBPS/Images/Figure-P27_34339.jpg?sign=1739297509-RoQ1VDYZG9uqPAjMHmNB6olICHYKEjTV-0-52735d16fe2c77b72af4f17254f6ad6d)
使用RandomSelectSubpolicy接口进行随机子策略选择自动数据增强,如代码1.16所示。
代码1.16 执行自动数据增强
![](https://epubservercos.yuewen.com/6AA9C3/26581519801336606/epubprivate/OEBPS/Images/Figure-P27_34340.jpg?sign=1739297509-c6s7cVD4RYufSjvljk7JtDeBJJqTACGp-0-d727d4d6724aa903f8fd14ff6511b71e)
2.基于反馈的自动数据增强
本示例主要介绍如何实现基于反馈的自动数据增强。
导入代码所需的相关模块,如代码1.17所示。
代码1.17 导入相关模块
![](https://epubservercos.yuewen.com/6AA9C3/26581519801336606/epubprivate/OEBPS/Images/Figure-P27_34342.jpg?sign=1739297509-nFruVhZCwA0nNAk98b9mqdFlXDSzUJvv-0-ec72c99b35e3c865e9c91bcf1962c2c9)
为了便于展示,使用NumpySlicesDataset接口加载预先定义好的列表数据,然后定义一个Augment类,其中的preprocess函数为自定义的数据增强方法,而update函数为用于更新数据增强参数的回调函数,如代码1.18所示。
代码1.18 定义数据集与Augment类
![](https://epubservercos.yuewen.com/6AA9C3/26581519801336606/epubprivate/OEBPS/Images/Figure-P27_34343.jpg?sign=1739297509-9vdfCFHs2xkAR6Pht7e9MhP1xQkH87LQ-0-9984ab74ab0111001cb462a72f3eafe6)
定义同步等待函数与想要执行的数据增强操作,如代码1.19所示。
代码1.19 定义同步等待函数与数据增强操作
![](https://epubservercos.yuewen.com/6AA9C3/26581519801336606/epubprivate/OEBPS/Images/Figure-P28_34345.jpg?sign=1739297509-Uljyl1SKvCJFYyuPKctjbjdyIV0DuI95-0-fe7cfcb6f0a42a2bc31a1ee3499893b0)
在每个步骤中通过同步更新函数传递反馈参数,并释放相应的阻塞,执行预先定义的数据增强操作,如代码1.20所示。
代码1.20 定义同步更新函数与数据增强操作
![](https://epubservercos.yuewen.com/6AA9C3/26581519801336606/epubprivate/OEBPS/Images/Figure-P28_34346.jpg?sign=1739297509-RYbwIiOncsPTX5EjmOUW5ft1bVaM63U7-0-7214ed686eaade7b6e9091756c16fb18)
对应的输出结果如代码1.21所示。
代码1.21 代码输出结果
![](https://epubservercos.yuewen.com/6AA9C3/26581519801336606/epubprivate/OEBPS/Images/Figure-P29_34349.jpg?sign=1739297509-SyyItb32MnJpEERNiXldlrvpiwhQ6Mi1-0-6b42951434d8ca842e0b03e649548528)