Dataset介绍
MindSpore提供基于Pipeline的数据引擎,Dataset是Pipeline的起始,用于加载原始数据。mindspore.dataset
提供了内置的文本、图像、音频等数据集加载接口,并提供了自定义数据集加载接口。
关于Dataset
mindspore.dataset
提供的接口仅支持解压后的数据文件,直接加载解压后的文件可以得到其数据集类型。
可以用create_tuple_iterator或create_dict_iterator接口创建数据迭代器,迭代数据,然后送入神经网络中进行训练。
数据集的常用操作采用dataset = dataset.operation()
的异步执行方式,执行操作返回新的Dataset,此时是在Pipeline中加入节点,不执行具体操作。最终进行迭代时,并行执行整个Pipeline。
自定义
mindspore.dataset
模块提供了一些常用的公开数据集和标准格式数据集的加载API,当遇到暂不支持直接加载的数据集,可以构造自定义数据加载类或自定义数据集生成函数的方式来生成数据集,然后通过GeneratorDataset
接口实现自定义方式的数据集加载。