numpy.random.permutation() ,使用numpy随机打散训练数据,同时保持训练数据与标签的对齐

如果训练数据之间相关性很大,比如配对是按照从1到9开始的顺序,则用这样的训练数据训练时很可能导致训练的泛华能力不足,所以有必要训练前把训练数据打乱,同时还要保持打乱前训练数据和训练标签的对应关系。

numpy.random.permutation(length)用来产生一个随机序列作为索引,再使用这个序列从原来的数据集中按照新的随机顺序产生随机数据集。length 为训练数据的个数。

import numpy as np
indices = numpy.random.permutation(data_x.shape[0]) # shape[0]表示第0轴的长度,通常是训练数据的数量
rand_data_x = data_x[indices]
rand_data_y = data_y[indices] # data_y就是标记(label)

 

你可能感兴趣的:(python-numpy)