1 回答

TA貢獻1860條經(jīng)驗 獲得超8個贊
在Keras模型中,您也忘記了標準化驗證數(shù)據(jù)。您可以通過使用訓練數(shù)據(jù)datagen.mean并對其進行datagen.std計算來做到這一點:
# normalize test data; add a small constant to avoid division by zero,
# you can alternatively use `keras.backend.epsilon()`
X_test = (X_test - datagen.mean) / (datagen.std + 1e-8)
或者您可以使用該datagen.standardize()方法對測試數(shù)據(jù)進行規(guī)范化:
X_test = datagen.standardize(X_test)
有關(guān)更多信息,請參見SO上的這個問題:預(yù)測期間,數(shù)據(jù)標準化如何在keras中起作用?
別忘了您應(yīng)該通過對訓練數(shù)據(jù)計算出的統(tǒng)計數(shù)據(jù)對測試數(shù)據(jù)進行歸一化。永遠不要通過自己的統(tǒng)計數(shù)據(jù)對測試數(shù)據(jù)進行歸一化。
警告:似乎也standardize 改變了它的參數(shù)...是的,您可以在源代碼中確認這一點。
添加回答
舉報