一、gluon数据加载
图片数据(含标签)加载函数:gluon.data.vision.ImageFolderDataset
给出ImageFolderDataset类的描述,
Init signature: mxnet.gluon.data.vision.datasets.ImageFolderDataset(root,flag=1,transform=None) Source: class ImageFolderDataset(dataset.Dataset): """A dataset for loading image files stored in a folder structure like:: root/car/0001.jpg root/car/xxxa.jpg root/car/yyyb.jpg root/bus/123.jpg root/bus/023.jpg root/bus/wwww.jpg Parameters ---------- root : str Path to root directory. flag : {0,1},default 1 # 控制彩色or灰度 If 0,always convert loaded images to greyscale (1 channel). If 1,always convert loaded images to colored (3 channels). transform : callable,default None A function that takes data and label and transforms them: :: transform = lambda data,label: (data.astype(np.float32)/255,label) Attributes ---------- synsets : list # 查看类别,实际就是文件名 List of class names. `synsets[i]` is the name for the integer label `i` items : list of tuples # 生成的数据 List of all images in (filename,label) pairs. """
实例:
train_imgs = gluon.data.vision.ImageFolderDataset( data_dir+‘/hotdog/train‘,transform=lambda X,y: transform(X,y,train_augs)) test_imgs = gluon.data.vision.ImageFolderDataset( data_dir+‘/hotdog/test‘,test_augs)) print(train_imgs) print(train_imgs.synsets) data = gluon.data.DataLoader(train_imgs,32,shuffle=True)
<mxnet.gluon.data.vision.datasets.ImageFolderDataset object at 0x7fbed5641c18> [‘hotdog‘,‘not-hotdog‘]
batch迭代器:gluon.data.DataLoader
具有特殊方法,def __iter__(self),其实例可以被迭代,也就是每次返回一个batch的数据,在第一维度上切割。
首个定位参数文档如下:
dataset : Dataset Source dataset. Note that numpy and mxnet arrays can be directly used as a Dataset.
最后生成的X_batch送入net(X_batch)向前传播,y_batch送入loss(output,y_batch)计算loss后反向传播。
二、MXNet数据加载
https://blog.csdn.net/qq_36165459/article/details/78394322
https://blog.csdn.net/u012759136/article/details/50208733#%E4%BA%8C%E4%BB%8E%E5%8E%9F%E7%94%9F%E6%95%B0%E6%8D%AE%E7%94%9F%E6%88%90lst%E6%96%87%E4%BB%B6
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。