iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 3
0
自我挑戰組

Tensorflow.js初學筆記系列 第 3

Day2 TensorFlow.js機器學習Part2

  • 分享至 

  • xImage
  •  

Generalization
Generalization(泛化):模型對新樣本的預測能力很好
可以照字面上意思,泛化是指這個模型可以廣泛的範例上使用,爾不僅限於原有的範例資料集合。
若只能擬和原有的範例資料,這就意味著次模型已經過擬和(Overfitting),過度擬和現有資料,而不能廣泛的應用於新的例子上。
在實際上,為了防止發生這件事,通常會將資料拆成兩個部分,一部分的資料用來訓練模型,一部分用測試模型的的泛化能力。

Training and Test Sets: Splitting Data
根據上一個課程,為了要讓訓練的模型可以泛化,必須將資料拆成訓練資料與測試資料,這張稍微提了一下拆分的注意事項
1.相互獨立
2.隨機拆分
3.請勿將測試的資料納入訓練中
利用練習了解拆分對結果的影響

Validation Set: Another Partition
上面的第三項有談到不能將測試資料納入訓練中,原因就是因為上上面所談到的過擬和問題,但這又延伸下一個問題,必須透過測試資料的結果來得知模型的泛化能力,但若泛化能力不好,又必須利用另一組超參數訓練下一個模型,若反覆執行這個過程來找到模型,這樣就等於暴露了測試用的資料,變成另外一種訓練用資料了嗎
為了防止這件事的發生,通常的作法是再切一份資料,這個資料叫做驗證資料,用來代替剛剛所說的測試資料,流程變成訓練資料訓練模型,將訓練模型應用在驗證資料,不斷迭代找出泛化能力最好的模型,最後再透過測試資料進行確認。
對了,經過上述的流程,應該能漸漸體會,不斷使用同一筆資料來對模型進行改進,此模型就越可能過擬和現有資料,最好是能保持資料的不斷更新,而且資料量越大越好。


上一篇
Day1 Tensorflow.js機器學習
下一篇
Day3 Tensorflow.js機器學習Part3
系列文
Tensorflow.js初學筆記27
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言