numpy.random.shuffle():是在在原来数据上进行打乱,所以并且每使用一次,打乱的方式都不同,所以说要让训练数据和标签在打乱之后仍然对应,那么就要设置相同随机数种子,例如:
下面展示一些 未设置相同随机数种子时
。
// A code block
train = np.arange(9).reshape(3,3)
label = np.arange(9).reshape(3,3)
print("train:\n",train,"\n")
print("label:\n",label,"\n")
#下面两个shuffle对应的随机数种子不同
np.random.shuffle(train)
np.random.shuffle(label)
print(train)
print(label)
trian:
[[0 1 2]
[3 4 5]
[6 7 8]]
label:
[[0 1 2]
[3 4 5]
[6 7 8]]
[[0 1 2]
[3 4 5]
[6 7 8]]
[[6 7 8]
[0 1 2]
[3 4 5]]
下面展示一些 设置相同随机数种子时
。
train = np.arange(9).reshape(3,3)
label = np.arange(9).reshape(3,3)
print("trian:\n",train,"\n")
print("label:\n",label,"\n")
#下面要设置两个相同的随机数种子,具体多少随机即可
np.random.shuffle(train)
np.random.shuffle(label)
print(train)
print(label)
train:
[[0 1 2]
[3 4 5]
[6 7 8]]
label:
[[0 1 2]
[3 4 5]
[6 7 8]]
[[3 4 5]
[6 7 8]
[0 1 2]]
[[3 4 5]
[6 7 8]
[0 1 2]]
注意:该函数只会置乱第一维。