养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

使用MindSpore进行数据处理的常用方法

时间:2024-10-22 02:49:09

在模型训练中,数据集对于模型训练是非常重要,好的数据集可以有效提高训练精度和效率。我们通常会在加载数据集前,对数据集进行一些处理,下面我们展示下常见的处理方法。

工具/原料

MindSpore1.5.0

Windows10

方法/步骤

1、注:本次操作使用的MNIST数据集这里我们把数据集处理主要分为四个步骤:1.定义函数create_dataset来创建数据集。2.定义需要进行的数据增强和处理操作,为之后进行map映射做准备。3.使用map映射函数,将数据操作应用到数据集。4.进行数据shuffle、batch操作。

2、importmindspore.datasetasdsimportmindspore.dataset.transforms.c_transformsasCimportmindspore.dataset.vision.c_transformsasCVfrommindspore.dataset.visionimportInterfrommindsporeimportdtypeasmstypedefcreate_dataset(data_path,batch_size=32,repeat_size=1,num_parallel_workers=1):#定义数据集mnist_ds=ds.MnistDataset(data_path)resize_height,resize_width=32,32rescale=1.0/255.0shift=0.0rescale_nml=1/0.3081shift_nml=-1*0.1307/0.3081

3、#定义所需要操作的map映射resize_op=CV.Resize((resize_height,resize_width),interpolation=Inter.LINEAR)rescale_nml_op=CV.Rescale(rescale_nml,shift_nml)rescale_op=CV.Rescale(rescale,shift)hwc2chw_op=CV.HWC2CHW()type_cast_op=C.TypeCast(mstype.int32)

4、#使用map映射函数,将数据操作应用到数据集mnist_ds=mnist_ds.map(operations=type_cast_op,input_columns="label",num_parallel_workers=num_parallel_workers)mnist_ds=mnist_ds.map(operations=resize_op,input_columns="image",num_parallel_workers=num_parallel_workers)mnist_ds=mnist_ds.map(operations=rescale_op,input_columns="image",num_parallel_workers=num_parallel_workers)mnist_ds=mnist_ds.map(operations=rescale_nml_op,input_columns="image",num_parallel_workers=num_parallel_workers)mnist_ds=mnist_ds.map(operations=hwc2chw_op,input_columns="image",num_parallel_workers=num_parallel_workers)

5、#进行shuffle、batch操作buffer_size=10000mnist_ds=mnist_ds.shuffle(buffer_size=buffer_size)mnist_ds=mnist_ds.batch(batch_size,drop_remainder=True)returnmnist_ds

© 一点知识