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