mate learning學習筆記(李宏毅)


mate learning = learn to learn

 

如下圖所示,mate learning就是 輸入訓練資料到 F,輸出的是一個可以用來識別圖像的 f*。

F(training data) = f (一個神經網絡)

而與其他的機器學習模型不同的是,機器學習是訓練出來一個模型F,用F來去識別圖像。   

f(圖片 貓)= “cat”          

如下圖所示,machine learning 的過程是這樣的,紅色標注的部分都是人為設定的,對於不同的初始化 theta 就會獲得不同是訓練模型。

思考,如何讓初始化參數自己學習出來,而不需要人為的設定?

 

 

 如何評價F 的好壞,每次從訓練集中選取一部分數據用做訓練 並對學習出來的f1 做測試 測試結果為l1  這為一個task,然后有很多這樣的task

把所有的li 求和 就是對 F 的評價結果,L(F) = Σ(l) 結果小就表示F 效果好,反之。

 

 

 下圖是 對訓練數據的划分方式,整體的數據集叫做training set 而每一個task中的數據集叫做 support set 和query set

 

 損失函數

 

 實現mate learning 的兩種方法

 MAML 過程

 

 maml 如何求出Φ使用梯度下降;對比預訓練和maml之間的區別 可以看出maml是 對每一個task中訓練好的模型中的θ求和(綠色符合) 然后求求出F 模型的Φ(藍色)

而pre_training 是 當前模型的在當前test集合上的Φ 求得。

 

 舉例說明這兩者的區別,我們不在意Φ在task上是否表現的很好,我們在意的是Φ是否可以訓練出好的θ,如下圖所示。

 

 而對於pre-training ,Φ可能在l2上表現的很好,但是放到l1上,它有可能陷入局部最優。

 

 所以總結是:

maml ——> Φ 是看訓練后可能達到最好的潛力

pre_train ——> Φ 關注它在當前模型上表現最好

maml 在訓練的時候只需要update一次

pre-train 和 maml 比較

數學推導公式

 

 可視化對比兩者

 

 pre-train maml reptile 三者比較

 

 maml 的問題

一開始依然需要初始化 初始化 參數的參數

完!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM