歡迎您光臨本站 註冊首頁

在Keras中利用np.random.shuffle()打亂數據集實例

←手機掃碼閱讀     月球人 @ 2020-06-16 , reply:0

我就廢話不多說了,大家還是直接看代碼吧~

  from numpy as np  index=np.arange(2000)  np.random.shuffle(index)  print(index[0:20])     X_train=X_train[index,:,:,:]#X_train是訓練集,y_train是訓練標籤  y_train=y_train[index]

 

補充知識:Keras中shuffle和validation_split的順序

模型的fit函數有兩個參數,shuffle用於將數據打亂,validation_split用於在沒有提供驗證集的時候,按一定比例從訓練集中取出一部分作為驗證集

這裡有個陷阱是,程序是先執行validation_split,再執行shuffle的,

所以會出現這種情況:

假如你的訓練集是有序的,比方說正樣本在前負樣本在後,又設置了validation_split,那麼你的驗證集中很可能將全部是負樣本

同樣的,這個東西不會有任何錯誤報出來,因為Keras不可能知道你的數據有沒有經過shuffle,保險起見如果你的數據是沒shuffle過的,最好手動shuffle一下

np.random.seed(1024) random.shuffle(index) data = data[index] label = label[index] splitpoint = int(round(num * 0.8)) (X_train, X_val) = (data[0:splitpoint], data[splitpoint:]) (Y_train, Y_val) = (label[0:splitpoint], label[splitpoint:]) X_train=X_train/255 X_val=X_val/255


                                                     

   


[月球人 ] 在Keras中利用np.random.shuffle()打亂數據集實例已經有428次圍觀

http://coctec.com/docs/python/shhow-post-238749.html