Amazon web services 实践作业AWS计算机视觉:获取\u Cifar10\u数据集
我对这个方法有问题,它应该返回训练数据集和验证数据集,并检查它以返回与Amazon web services 实践作业AWS计算机视觉:获取\u Cifar10\u数据集,amazon-web-services,mxnet,Amazon Web Services,Mxnet,我对这个方法有问题,它应该返回训练数据集和验证数据集,并检查它以返回与CIFAR10中每个类的第一次出现相对应的索引 这是代码: def get_cifar10_dataset():“”“应创建cifar 10网络,并标识每个新类第一次使用的数据集索引 出现 系统要求您返回带有标签和相应索引的词典。使用以下函数可以解决您的问题 def get_idx_dict(data): lis = [] idx = [] indices = {} for i in
CIFAR10
中每个类的第一次出现相对应的索引
这是代码:
def get_cifar10_dataset():“”“
应创建cifar 10网络,并标识每个新类第一次使用的数据集索引
出现
系统要求您返回带有标签和相应索引的词典。使用以下函数可以解决您的问题
def get_idx_dict(data):
lis = []
idx = []
indices = {}
for i in range(len(data)):
if data[i][1] not in lis:
lis.append(data[i][1])
idx.append(i)
indices = {lis[i]: idx[i] for i in range(len(lis))}
return indices
该函数返回具有所需输出的字典。对来自训练集和验证集的数据使用此函数
train_indices = get_idx_dict(train_data)
val_indices = get_idx_dict(val_data)
你可以这样做
def get_cifar10_dataset():
"""
应创建cifar 10网络,并确定每个新类首次出现时的数据集索引
:return:训练和验证数据集以及标签索引的元组
:rtype:(glon.data.Dataset,dict[int:int],glon.data.Dataset,dict[int:int])
"""
列车数据=无
val_数据=无
列_指数={}
val_指数={}
#对数据集使用'root=M5_IMAGES'
train_data=glion.data.vision.datasets.CIFAR10(train=True,root=M5_图像)
val_data=glion.data.vision.datasets.CIFAR10(train=False,root=M5_图像)
#火车
对于范围内的i(len(列_数据)):
如果列单元数据[i][1]不在列单元索引中:
列车\u索引[列车\u数据[i][1]]=i
#有效的
对于范围内的i(len(val_数据)):
如果val_数据[i][1]不在val_指数中:
val_指数[val_数据[i][1]]=i
#引发未实现的错误()
返回列车数据、列车索引、val\ U数据、val\ U索引
您可以添加运行此代码的详细信息吗?我在aws云上运行此代码
train_indices = get_idx_dict(train_data)
val_indices = get_idx_dict(val_data)