0
我使用簡單的Keras模型進行系列預測。禁用Keras批處理標準化/標準化
我給它的輸入在整個系列中進行歸一化。
模型預測準確性在訓練期間似乎是正確的。但是,當我繪製model.predict()
函數的輸出時,我可以看到輸出已經以某種方式縮放。這似乎是某種標準化/標準化縮放類型。
更改培訓中的批量大小會影響結果。我嘗試將批處理大小設置爲輸入集的大小,以便整個系列的訓練在單個批處理中完成,這樣可以提高結果,但仍會縮放。
我的假設是這與每個輸入批處理規範化或輸出規範化有關。我的模型中沒有任何BatchNormalization
圖層。
有沒有辦法在Keras中禁用輸入/輸出的默認標準化/標準化(並且這種默認行爲是否存在)?
我使用Keras 2與Tensorflow後端和Tensorflow 1.1。
什麼是您的最終激活層?乙狀結腸?正切?那些將始終輸出標準化的結果。 (建議這樣做,最好將訓練的預期結果標準化) –
最後一層的輸出應該被標準化。我正在使用'sigmoid'激活。這不是問題。我相信每個批次的輸入都是標準化/標準化的(或者輸出是按比例縮放的),似乎沒有辦法關閉它。 –
爲什麼你認爲結果是縮放?你的「基本事實/預期結果數組」是什麼?你是否認爲訓練的準確性是可以的,但是驗證數據的準確性不是? –