1. 程式人生 > >深度卷積網路訓練:典型過程

深度卷積網路訓練:典型過程

假設資料共有10000個(即10000個輸入和10000個期望輸出),批大小為100。那麼訓練網路的典型過程如下:
1)讀入所有資料
2)將資料劃分為訓練集和測試集,例如前9000個作為訓練集,後1000個作為測試集。將這個劃分固定下來。
3)開始第一個epoch。將訓練集的9000個數據打亂,注意輸入和輸出保持正確的對應。
4)將第一個batch,即打亂後的資料第1~100號,送入網路。
5)正向傳播。將結果和期望值比較,計算損失。
6)反向傳播。更新網路引數。
7)將第二個batch,即打亂後的資料的第101-200號,送入網路。重複上述過程。
8)在所有的測試集完成後,即經過9000/100=90個batch後,完成第1個epoch。
9)將測試集送入網路。正向傳播。將結果與期望值做比較,計較損失。
10)觀察訓練集的損失和測試集的損失,做一些事情,例如,可能需調整學習速率,或停止訓練,或停止訓練兵修改超引數。
11)開始第2個epoch。將訓練集的9000個數據再次打亂。重複上述過程。