3.2.4 迁移学习和多任务学习
遷移學習
總結一下,什么時候遷移學習是有意義的?如果你想從任務A學習并遷移一些知識到任務B,那么當任務A和任務B都有同樣的輸入時,遷移學習是有意義的。在第一個例子中,A和B的輸入都是圖像,在第二個例子中,兩者輸入都是音頻。當任務A的數據比任務多得多時,遷移學習意義更大。所有這些假設的前提都是,你希望提高任務B的性能,因為任務B每個數據更有價值,對任務A來說通常任務的數據量必須大得多,才有幫助,因為任務A里單個樣本的價值沒有比任務B單個樣本價值大。然后如果你覺得任務A的低層次特征,可以幫助任務B的學習,那遷移學習更有意義一些。
遷移學習最有用的場合是,如果你嘗試優化任務B的性能,通常這個任務數據相對較少,例如,在放射科中你知道很難收集很多X射線掃描圖來搭建一個性能良好的放射科診斷系統,所以在這種情況下,你可能會找一個相關但不同的任務,如圖像識別,其中你可能用1百萬張圖片訓練過了,并從中學到很多低層次特征,所以那也許能幫助網絡在任務B在放射科任務上做得更好,盡管任務B沒有這么多數據。遷移學習什么時候是有意義的?它確實可以顯著提高你的學習任務的性能,但我有時候也見過有些場合使用遷移學習時,任務A實際上數據量比任務B要少,這種情況下增益可能不多。
多任務學習
在遷移學習中,你的步驟是串行的,你從任務A里學習知識然后遷移到任務B。在多任務學習中,你是同時開始學習的,試圖讓單個神經網絡同時做幾件事情,然后希望這里每個任務都能幫到其他所有任務。
我們來看一個例子,假設你在研發無人駕駛車輛,那么你的無人駕駛車可能需要同時檢測不同的物體,比如檢測行人、車輛、停車標志,還有交通燈各種其他東西。比如在左邊這個例子
那么多任務學習什么時候有意義呢?當三件事為真時,它就是有意義的。
第一,如果你訓練的一組任務,可以共用低層次特征。對于無人駕駛的例子,同時識別交通燈、汽車和行人是有道理的,這些物體有相似的特征,也許能幫你識別停車標志,因為這些都是道路上的特征。
第二,這個準則沒有那么絕對,那個小任務的平均數據量差不多。
吳教主深度學習和神經網絡課程總綱
總結
以上是生活随笔為你收集整理的3.2.4 迁移学习和多任务学习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 3.2.3 如何解决数据不匹配问题
- 下一篇: 3.2.5 端到端的学习