2017-06-03 35 views
1

我正在使用LSTM和tensorflow的翻譯模型來訓練會話代理。我使用批次式訓練,導致每次紀元開始後訓練數據困惑度顯着下降。這種下降可以通過我批量讀取數據的方式來解釋,因爲我保證訓練數據中的每個訓練對在每個紀元處理一次。當一個新紀元開始時,模型在以前的時代中所做的改進將再次遇到訓練數據,從而顯示其利潤,表現爲圖中的下降。其他分批方法(如張量流的翻譯模型中使用的方法)不會導致相同的行爲,因爲他們的方法是將整個訓練數據加載到內存中,並隨機從中挑選樣本。困惑之間的計算上升各顯着下降

enter image description here

步驟,困惑

  • 330000,19.36
  • 340000,19.20
  • 350000,17.79
  • 360000,17.79
  • 370000,17.93
  • 380000, 17.98
  • 390000,18.05
  • 400000,18.10
  • 410000,18.14
  • 420000,18.07
  • 430000,16.48
  • 440000,16.75

(從困惑小文檔片斷示出下降在350000和430000.之間的下降,困惑略有上升)

但是,我的問題是關於下降後的趨勢。從圖中可以清楚地看到,困惑度略微上升(對於每步350000後),直到下一次下降。有人可以給出答案或理論爲什麼會發生這種情況嗎?

回答

0

這將是典型的過度配合。