查看: 1717|回复: 0

使用Numpy将数据集中的data和target同时shuffle

[复制链接]

665

主题

1234

帖子

6566

积分

xdtech

Rank: 5Rank: 5

积分
6566
发表于 2019-9-22 20:39:07 | 显示全部楼层 |阅读模式
假设现在有图像数据imgs和对应标签targets。数据维度分别如下
imgs.shape = (num, channel, width, height)
targets.shape = (num, class)
因为通常我们需要将数据打散,这样的好处是可以让模型训练更具鲁棒性,那么如何同时打散data和target,而且还需要保持对应顺序不变呢?方法如下
# 得到打乱后的index
from random import shuffle
index = [i for i in range(len(imgs))]
shuffle(index)
imgs = imgs[index, :, :, :]
targets = targets[index, :]
要注意的是数据的维度要保持正确,也就是上面的:数量要正确,假如在mnist数据集上,target的维度是(num,)维度,所以此时应该写成targets = targets[index]即可。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表