乘风破浪的迁移学习!四字成语讲明白这个大热研究方向
導讀:現(xiàn)在遷移學習大熱,它紅,是有它的道理的。什么是遷移學習?本文用最通俗易懂的語言為你講解。
作者:木羊同學
來源:大數(shù)據(jù)DT(ID:hzdashuju)
遷移學習現(xiàn)在是很熱的一個前沿研究方向。
當然,無論什么時候,很熱的研究方向總是有幾個的,不過,就我的觀察,一個前沿研究方向能夠乘風破浪真正熱起來,除了必不可少的玄學影響,總的來說有兩個大的因素,一個因素是奇思妙想,創(chuàng)造了一個全新的腦洞,大家雖然不知道這個腦洞最終通不通,通向哪里,但實在太有趣了都忍不住鉆進去看看,也就是被做研究的趣味性所吸引。
另一個因素看起來就務(wù)實很多了,直指一個痛點問題。一套新的理論推出來,大家可能首先被它表現(xiàn)出來的能力,以及可被挖掘的潛力所折服,想象的空間很大,紛紛不吝溢美之詞——這是這套理論的高光時刻。
但時間會改變一切。隨著研究和實踐的深入,理論的局限性也逐漸浮出水面,這應(yīng)該說是每套理論的必然宿命,現(xiàn)實就像一個熱衷于亂涂亂畫的熊孩子,再優(yōu)美的理論放到了現(xiàn)實面前,總免不了被添上糟心的幾筆。
很快,這就成了這套優(yōu)美理論身上的一塊極不協(xié)調(diào)的丑陋傷疤,這就是痛點問題。每次研究到這,大家都會忍不住發(fā)彈幕來吐槽。但時間會改變一切,吐槽聲會慢慢稀落下來,大家開始逐漸接受這個痛點問題也是理論體系的一部分,愛她就要愛她的全部。
當然,這不是故事的全部。做研究畢竟是比單純吐槽得要多一點的思考。對一個問題吐槽的人越多,往往意味著,想解決這個問題人就越多。這個痛點問題的價值也就自然水漲船高,受關(guān)注度就越高,從而又進一步吸引更多的人來思考研究,形成一種良性循環(huán)。
01 機器學習之“痛”
現(xiàn)在遷移學習大熱,說起來也有一定的“天選”原因,上述的兩種因素,它都能扯得上關(guān)系。它紅,是有它的道理的。
首先,遷移學習直指一個痛點問題,即機器學習的痛點問題。機器學習有一個人盡皆知的痛點問題,不過可能太痛了,痛得人盡皆知了,以至于很多人都忘了這貨居然是一個貨真價實的痛點問題。
什么問題呢?打標簽數(shù)據(jù)不足的問題。
我們說機器學習技術(shù),甚至范圍更大一點,說人工智能技術(shù),一直在講一個美好的童話。現(xiàn)在是互聯(lián)網(wǎng)時代,互聯(lián)網(wǎng)時代什么多呢?風口多,數(shù)據(jù)更多。多到什么程度呢?非常非常的多,說是恒河沙數(shù)都太保守了,唯有占據(jù)這個藍色星球71%的那個藍色玩意,對,海洋,才可以相提并論。
互聯(lián)網(wǎng)有海量數(shù)據(jù),那怎么挖掘其中的風口呢?人肯定是看不過來了,996也看不過來,怎辦呢?讓機器幫幫忙吧,機器不眠不休,天生就愛處理數(shù)據(jù),不正好擅長做這個嘛。這一幫好家伙,把人工智能自己也幫成了下一個風口。
聽起來確實很美好,實際怎樣呢?
“你哭著對我說,童話里都是騙人的”——沒錯,人工智能技術(shù),具體來說,是機器學習確實非常適合處理海量數(shù)據(jù),可是,魔鬼藏在細節(jié)之處。使用機器學習模型,首先你得訓練機器學習模型。訓練機器學習模型需要數(shù)據(jù),這里說的數(shù)據(jù),不是隨隨便便什么數(shù)據(jù)都可以喔,機器學習可是一點也不隨便的。
02?卡住機器學習脖子的人力瓶頸
我們知道,機器學習中用得最最最多的一類學習方式,叫有監(jiān)督學習。聽起來很怪異,其實很簡單,我在《機器學習算法的數(shù)學原理和Python實現(xiàn)》中用一句話解釋什么叫“有監(jiān)督學習”:訓練數(shù)據(jù)中給出參考答案叫有監(jiān)督學習。
“給出參考答案”是有監(jiān)督學習最最顯眼的特征。所以,你要用有監(jiān)督學習的方法訓練模型,你得有數(shù)據(jù),光有數(shù)據(jù)還不行,你還得給出參考答案,行話叫給數(shù)據(jù)打標簽。你得把數(shù)據(jù)都先打好了標簽,才能開始訓練。
痛點問題就在這里。光是這么聽,你好像也沒什么感覺。可是你想一想,誰來完成數(shù)據(jù)打標簽的工作呢?是機器嗎?不是,是人,由人來給數(shù)據(jù)打標簽。
這就導致出現(xiàn)了一個很尷尬的局面:你想用機器學習,是因為數(shù)據(jù)海量,人忙不過來,可是真要用機器學習,你首先還是得先找人來打標簽。人的時間精力是有瓶頸的,所以對數(shù)據(jù)的處理能力也有瓶頸。你選擇使用機器學習,就是因為機器學習能夠突破這種人的能力瓶頸。
可是現(xiàn)在,要用上機器學習,你照樣還得先讓人來處理數(shù)據(jù),工作再一次被人的能力瓶頸所限制。
打標簽數(shù)據(jù)不足,是機器學習最人盡皆知的痛點問題,這個問題非常嚴重,讓機器學習陷入了一個非常狼狽的境地:你說數(shù)據(jù)是機器學習的燃料?那好,現(xiàn)在到處塞滿的都是數(shù)據(jù),就等著你來處理,可是偏偏你就沒辦法處理。
這個狼狽境地非常類似海難幸存者,自己非常口渴,而舉目四望周圍就是取之不盡的海水,偏偏自己一滴也喝不下去。最后造成的結(jié)果是,大家繞了一個大圈,最根本的問題還是沒有很好地解決,人的瓶頸再次成了機器學習的瓶頸。
看起來,不論是互聯(lián)網(wǎng)時代、大數(shù)據(jù)時代還是人工智能時代,最終還是沒能逃脫人的時間精力有限的魔咒。最近漸漸有一些聲音,說機器學習、人工智能技術(shù)已經(jīng)泡沫化了,未來發(fā)展前景暗淡,這也是其中一種重要的論據(jù)。
03 標簽數(shù)據(jù)不足的解渴之道
那業(yè)界主流是什么態(tài)度呢?簡單——有條件要上,沒條件創(chuàng)造條件也要上,你說打標簽的樣本少,數(shù)據(jù)集小模型學不了?那我就偏搞小樣本學習。
這不是說氣話,業(yè)界真的有一種研究方向就叫小樣本學習,而且已經(jīng)成了學術(shù)界和工業(yè)界一致關(guān)注的高價值問題,每年都有成噸的論文從不同方向朝著這個問題砸上去。其中知名度比較高的有三個:
第一個是從標簽信息傳播角度下手,想把未打標簽數(shù)據(jù)也用起來的半監(jiān)督學習;
第二個是從提高打標簽工作價值的角度下功夫,讓機器自己舉手提問的主動學習;
第三個是排在最后只是因為謙虛,其實效果很不錯的遷移學習。這也是本文的主角。
什么是遷移學習呢?
遷移學習的根本目的,前面我們已經(jīng)一再說過了,是為了應(yīng)對機器學習需要大量打標簽數(shù)據(jù),而實際場景中打標簽數(shù)據(jù)往往十分缺乏的問題,也即行話所說的小樣本學習。這一題是有多解的,那遷移學習的解題思路是什么呢?
由于遷移學習尚屬比較前沿的研究領(lǐng)域,我想首先給出權(quán)威的書面定義,讓大家在腦海里對遷移學習建立一個比較準確的概念,當然,書面定義總會比較有“嚼勁”,不過不要緊,隨后我會根據(jù)自己的理解嚼碎了來解釋。
在遷移學習領(lǐng)域,楊強教授可以說是無人不知的泰斗。根據(jù)楊教授專門介紹遷移學習的新書《遷移學習》給出的遷移學習的定義(定義1.1):
給定源域Ds和學習任務(wù)Ts、目標域Dt和學習任務(wù)Tt,遷移學習是獲取源域Ds和學習任務(wù)Ts中的知識以幫助提升目標域的預測函數(shù)的學習。
這段定義給我的感覺,很像早前網(wǎng)上對周董rap的評價:你要是知道他想說什么,你會發(fā)現(xiàn)他每一個字都咬得無比精準,但你要不知道他想說什么,你再怎么聽都覺得他不知所云。如果你看完了上面的定義,產(chǎn)生的是第二種感覺,不要緊,待我細細說來,保證也讓你體會到定義的“無比精準”。
理解遷移學習的關(guān)鍵,就在“遷移”二字上面。遷移有個“搬”的動作,從A地搬到B地,就叫遷移。所以,想要遷移,首先你得有兩個“地址”,源地址和目標地址。這就是定義中說的源域和目標域,這也是遷移學習和很多其它方法,譬如前面提到的半監(jiān)督學習重要的區(qū)別之處。把“知識”從源域“搬到”目標域,這就是所謂遷移學習。
04 為什么要“遷移”
可是等等,我們不是在聊“打標簽數(shù)據(jù)”,研究“小樣本學習”嗎?怎么搞出了兩個地址?這和打標簽又有什么關(guān)系?
這就聊到了遷移學習的基本思想。以下是我個人的理解:
遷移學習最本初的出發(fā)點,我覺得更像是從經(jīng)濟學獲得的靈感。現(xiàn)代經(jīng)濟學對我們的世界有一個最基本的假設(shè):資源的分布是不均衡的。
遷移學習顯然認同這個假設(shè),如果我們把“打標簽的數(shù)據(jù)”看作是一種資源,那么在遷移學習看來,這類資源在不同的領(lǐng)域是有不同的分布的。也就是說,在有一些領(lǐng)域,已經(jīng)打了標簽的數(shù)據(jù)會比較多,而另一些領(lǐng)域,打了標簽的數(shù)據(jù)則要少得多。
這個假設(shè)是理解遷移學習的一把鑰匙。這個假設(shè)乍看簡單粗暴毫無道理,細想其實非常符合現(xiàn)實。在現(xiàn)實生活中,主流和小眾就像光和影一樣相伴相生,數(shù)據(jù)集也不例外,雖然已經(jīng)打了標簽的數(shù)據(jù)在總體上來說非常稀缺,但具體到各個領(lǐng)域還是有明顯的“貧富”差距。
這個差距要怎樣運用于解決打標簽數(shù)據(jù)不足的問題呢?你可能已經(jīng)猜到了,沒錯,就是“遷移”!
05 照貓畫虎:遷移學習的核心奧義
既然有一些領(lǐng)域的打標簽數(shù)據(jù)比較充分,足夠讓我們的機器學習模型學習,那么,只要我們能夠把模型在這些領(lǐng)域?qū)W習到的知識“搬”出來,搬到缺乏打標簽數(shù)據(jù)的領(lǐng)域,因為有了基礎(chǔ)知識做底子,在新領(lǐng)域訓練所需的打標簽數(shù)據(jù)也就大大減少,雖然這個領(lǐng)域打標簽數(shù)據(jù)的數(shù)量仍然很少,但因為需求降下來了,也就足夠讓模型正常運轉(zhuǎn)起來。你看,這不就找到一種解決打標簽數(shù)據(jù)不足的方案了嗎?
沒錯,遷移學習就是這么認為的,我們有句俗語,叫“照貓畫虎”,這大家都聽過,這照貓畫虎就是遷移學習。
你仔細想想,照貓畫虎首先是因為什么呀?因為老虎的樣本太少,滿大街都不太好找,屬于典型的“小樣本”。而貓就好找多了,更別說現(xiàn)在還能云養(yǎng)貓,樣本集的“貧富”懸殊,十分符合我們上面的描述。
06 遷移學習的三個靈魂之問
但是,還有隱藏的一個重要因素。
《遷移學習》提醒我們,在設(shè)計一個遷移學習算法時,一定別忘了考慮三個主要問題,第一個就是“何時遷移”問題。何時遷移,也就是要關(guān)注什么情況下才能通過遷移學習提高模型的學習性能。
遷移學習并不是包治百病的神藥,在部分情況下,譬如說“照鹿畫虎”,或者“照猴畫虎”,源域與目標域彼此并不相關(guān),使用遷移學習反而可能造成學習性能下降,術(shù)語稱為“負遷移”,這是遷移學習所需要努力避免的,應(yīng)該放在首要位置考慮。
那還有兩個問題是什么呢?
第二個問題是遷移什么?前面我們說遷移學習就是給知識搬家,可這里“知識”指的是什么呢?不同的場景不同,不可一概而論,因此,劃定“知識”的范疇是遷移學習的第二項重要工作。
第三個問題是如何遷移,這就要具體到遷移學習的算法了。《遷移學習》歸納出四類算法,分別是基于樣本的算法、基于特征的算法、基于模型的算法和基于關(guān)系的算法。這也是遷移學習的核心內(nèi)容,有很多知識點,書里專門分了4章來進行介紹。
遷移學習就介紹到這里。當然了,作為時下熱門的研究方向,遷移學習的玩法還有很多,譬如說異構(gòu)遷移學習。異構(gòu),指的是源域和目標域有著不同模態(tài),也就是說照貓畫虎已經(jīng)算不得什么了,現(xiàn)在我們要照狗(的圖片)來學貓叫,而《遷移學習》這本書不僅權(quán)威,而且是遷移學習的玩法大全。
07 遷移學習,還能學些什么
最后,我想分享個人對遷移學習的一個看法:遷移學習正在努力回答那個我們熟視無睹的本質(zhì)問題,究竟什么是“學習”?
這不是一個很好回答的問題。機器學習現(xiàn)在大放異彩,解決了很多問題,提升了很多效率,這點有很多事實依據(jù)。
但是,從學術(shù)的角度看,機器學習模型的可用性和可解釋性,并不是一對線性關(guān)系,簡單來說,就是“我知道它很好用,但我并不知道它為什么能夠這么好用。”機器學習機器學習,既然叫“學習”,自然得有“知識”,但機器學習學到的究竟是個什么“知識”呢?
有人不以為然,認為機器學習就是一種統(tǒng)計學工具,所謂的知識,無非就是概率分布,拒絕繼續(xù)深入。更多的人,則故意忘掉了這個難纏的問題,選擇實用至上。
而在遷移學習這里,我看到了大家重新拾起那個看似簡單的問題,嘗試用形式化的語言,來描述和操縱我們熟悉又陌生的抽象名詞,“知識”。我推薦大家可以通過《遷移學習》這本書,從遷移學習這個前沿方向切入,了解業(yè)內(nèi)對機器學習的“知識”的各種思考。
關(guān)于作者:莫凡,網(wǎng)名木羊同學。娛樂向機器學習解說選手,《機器學習算法的數(shù)學解析與Python實現(xiàn)》作者,前沿技術(shù)發(fā)展觀潮者,擅長高冷技術(shù)的“白菜化”解說,微信公眾號“睡前機器學習”,個人知乎號“木羊”。
延伸閱讀《遷移學習》
點擊上圖了解及購買
轉(zhuǎn)載請聯(lián)系微信:DoctorData
推薦語:楊強教授領(lǐng)銜撰寫,遷移學習“開山之作”,解決人工智能的“最后一公里”問題。張鈸院士作序,鄧力、高文、李開復、周志華(按姓氏拼音排序)聯(lián)袂推薦。
劃重點????
干貨直達????
西安交大送大一新生這本書,你讀過嗎?12本有趣有料的科普書盤點
終于有人把AI、BI、大數(shù)據(jù)、數(shù)據(jù)科學講明白了
監(jiān)督學習、非監(jiān)督學習、強化學習都是什么?終于有人講明白了
一條SQL引發(fā)的“血案”:與SQL優(yōu)化相關(guān)的4個案例
更多精彩????
在公眾號對話框輸入以下關(guān)鍵詞
查看更多優(yōu)質(zhì)內(nèi)容!
PPT?|?讀書?|?書單?|?硬核?|?干貨?|?講明白?|?神操作
大數(shù)據(jù)?|?云計算?|?數(shù)據(jù)庫?|?Python?|?可視化
AI?|?人工智能?|?機器學習?|?深度學習?|?NLP
5G?|?中臺?|?用戶畫像?|?1024?|?數(shù)學?|?算法?|?數(shù)字孿生
據(jù)統(tǒng)計,99%的大咖都完成了這個神操作
????
總結(jié)
以上是生活随笔為你收集整理的乘风破浪的迁移学习!四字成语讲明白这个大热研究方向的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 入门大爆炸式发展的深度学习,你先要了解这
- 下一篇: 用Python实现磁盘IO操作全攻略,让