数据集 Dataset学习
1.数据集加载
因为mindspore.dataset只支持解压后的数据文件,所以需要下将下载的数据进行解压。
2.数据集的迭代
再进入神经网络训练前,一般采取迭代方式来获取数据。
3.数据集常用操作
(1)shuffle 数据集随机函数,消除数据排列造成的分布不均问题。
(2)map可以针对数据集指定列(column)添加数据变换(Transforms),将数据变换应用于该列数据的每个元素,并返回包含变换后元素的新数据集.
(3)batch 用于将数据集进行打包固定大小
4.自定义数据集
可以通过构造自定义数据加载类或函数来生成数据集
可随机访问数据集是实现了__getitem__
和__len__
方法的数据集,表示可以通过索引/键直接访问对应位置的数据样本。
可迭代的数据集是实现了__iter__
和__next__
方法的数据集,表示可以通过迭代的方式逐步获取数据样本。这种类型的数据集特别适用于随机访问成本太高或者不可行的情况。
生成器也属于可迭代的数据集类型,其直接依赖Python的生成器类型generator
返回数据,直至生成器抛出StopIteration
异常。