iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 9
0
Google Developers Machine Learning

初心者的自我挑戰系列 第 9

Google Study Jam- Launching into machine learning on coursera Module2 - part3

  • 分享至 

  • xImage
  •  

ML model pitfalls:
問題一: 使用同一個模型每次訓練時的結果不同:
很正常的! 因為loss並不是一個convex surface,也就是說不一定只有一個最低點,很多時候都是有global min , 很多local min, 而這些local min可能靠得很近,因此每次predict時可能結果會不同. 另外很多時候找到的最低loss也不一定是global Min,沒有人知道是不是,只能盡可能地去接近,在實用端上看起來結果令人滿意就行了! 或是可以用momentum的概念幫助克服local min,這邊就不岔出去.

問題二:model training 太慢:
這一般來說training 分成3個步驟
a.calculate derivative
b.take a step
c.check loss
我們可以從這些步驟中著手:比方來說可以使用mini batch的概念來解決訓練太慢,mini batch的意思是我們一次training不丟入所有的data給Model訓練,而是丟一小部分的trainning data,那這樣為甚麼比較快呢? 你想看看,如果total training data是10000筆,我丟入10000筆data進去model,他算完才更新一次參數,而我如果一次是mini batch丟入100筆,這樣我100筆data就更新1次參數,10000筆資料就更新100次,因此這樣可以加快,並且mini-batch還可以進行GPU平行運算加速.

另外我們還可以減少check loss frequency:
有些loss function是time based or step based, 可以減少check的次數來增加訓練的速度.

明天介紹lab 0 google tensorflow playground~


上一篇
Google Study Jam- Launching into machine learning on coursera Module2 - part2
下一篇
Google Study Jam- Launching into machine learning on coursera Module2 - part4
系列文
初心者的自我挑戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言