預訓練有什麼用
機器學習:偏數學(《統計學習方法》-李航)
深度學習(人工智能)的項目:大數據支持(主流)
我們很多項目沒有大數據支持(小數據)
貓狗分類任務:100 張貓和狗的圖片 --》給你一張圖片,分出是貓還是狗(無法解決的一個問題,精度很低)
100000 張鵝和鴨的圖片(已知,有人做過的,通過這10w 張圖片做了一個模型 A)
有人發現,淺層通用的(橫豎撇捺)
我通過10w個鵝和鴨訓練了一個模型 A,100 層的 CNN
任務 B:100 張貓和狗的圖片,分類 --》 訓練處 100層的 CNN,不可能實現的
嘗試使用 A 的前 50 層,使用 100 層去完成任務 B
- 凍結:淺層參數不變
- 微調:淺層參數會跟着任務 B 訓練而改變
預訓練是什麼
通過一個已經訓練好的模型 A,去完成一個小數據量的任務 B(使用了模型 A 的淺層參數)
任務 A 和任務 B 極其相似
預訓練怎麼用
fairseq 、transformers 庫
總結
一個任務 A,一個任務 B,兩者極其相似,任務 A 已經訓練處一個模型 A,使用模型 A 的淺層參數去訓練任務 B,得到模型 B,1.