Python深度學(xué)習(xí):為什么要學(xué)習(xí)深度學(xué)習(xí)?
2016年年初,傳奇的圍棋棋手李世石與一個(gè)圍棋界的"新手"開始了一系列舉世矚目的較量。
圍棋是一種棋盤類游戲,于2500年前發(fā)源于中國(guó)。它是一種比國(guó)際象棋更為復(fù)雜的策略游戲,全球有75個(gè)國(guó)家的選手積極地參與其中。
李世石,圍棋九段棋手,從2002年起多次獲得世界冠軍。他面對(duì)的是一個(gè)看不見的敵手-AlphaGo。AlphaGo是由倫敦的谷歌DeepMind團(tuán)隊(duì)開發(fā)的。不知道李世石在賽前對(duì)他的對(duì)手了解多少,也許他從科學(xué)作家馬修布拉加的關(guān)于圍棋的文章中得到了安慰。該文章于2014年發(fā)表,其中談到了圍棋:
“…是少數(shù)幾種計(jì)算機(jī)智能尚未掌握的游戲之一。該游戲有著太多的可能的走法,讓程序員長(zhǎng)期以來(lái)陷入僵局。”
但在數(shù)據(jù)科學(xué)領(lǐng)域, 24個(gè)月已經(jīng)是一段相當(dāng)長(zhǎng)的時(shí)間了。谷歌的深度學(xué)習(xí)算法可以打敗優(yōu)秀的計(jì)算機(jī)對(duì)手,甚至是在讓對(duì)手四子先手的情況下。 2016年1月, AlphaGo曾以5:0的比分完勝歐洲冠軍樊磨。2016年3月, AlphaGo挑戰(zhàn)傳奇選手李世石。
1、最后一子
在最后一子落下之前,勝負(fù)已經(jīng)十分明了。法國(guó)著名媒體機(jī)構(gòu)CAUSEUR尖叫: "李世石感到羞恥的一天。"震驚的九段冠軍掙扎著講述他被數(shù)學(xué)算法打敗:
“...我應(yīng)該表現(xiàn)得更好,應(yīng)該有更好的結(jié)果以及更好的比賽過(guò)程。我為沒(méi)能滿足很多人的期望而道歉。我有些無(wú)能為力。”
李世石僅僅是另一個(gè)在人機(jī)對(duì)戰(zhàn)中被高度關(guān)注的選手。人機(jī)對(duì)戰(zhàn)的歷史可以追溯到約翰亨利和新技術(shù)蒸汽鉆那場(chǎng)史詩(shī)般的對(duì)戰(zhàn)。在那場(chǎng)無(wú)限制的比賽中,雙方表現(xiàn)得旗鼓相當(dāng),最終亨利獲勝,但不久就因虛脫而死。隨著鐵路蜿蜒穿越整個(gè)美國(guó),蒸汽鉆成了必不可少的工具。深度學(xué)習(xí)之于李世石如同蒸汽鉆之于約翰享利。
1.2 —件怪事
奇怪的是,對(duì)于那些以建立專家模型為生的人,從神經(jīng)網(wǎng)絡(luò)和其他來(lái)自機(jī)器學(xué)習(xí)的高度技術(shù)中獲益是顯而易見的。實(shí)際上(與理論猜測(cè)相反) ,深度學(xué)習(xí)的驚人成果受到了商界、政府機(jī)構(gòu)、研究界以及越來(lái)越多的學(xué)者的高度重視。正如一位學(xué)者所說(shuō):
"20世紀(jì)90年代,經(jīng)驗(yàn)主義的復(fù)興是一個(gè)激動(dòng)人心的時(shí)刻。我們從來(lái)沒(méi)有想到,我們的努力會(huì)如此成功。當(dāng)時(shí),我們想要的只不過(guò)是一席之地而已。在當(dāng)時(shí)流行的各項(xiàng)研究之外,我們所想的只是為不同于當(dāng)時(shí)其他研究的工作爭(zhēng)取一點(diǎn)空間。”
1.3 兩類人
還記得那個(gè)古老的笑話嗎?世界上有兩類人——一類人相信世界上有兩類人,而另一類人完全不相信前一觀點(diǎn)。好吧,我確實(shí)相信世界上有兩種數(shù)據(jù)科學(xué)家。我并不是在說(shuō)那些學(xué)習(xí)計(jì)算機(jī)科學(xué)的數(shù)據(jù)科學(xué)家和那些學(xué)習(xí)統(tǒng)計(jì)學(xué)的數(shù)據(jù)科學(xué)家。任何稱職的數(shù)據(jù)科學(xué)家都可以在需要概率、統(tǒng)計(jì)、數(shù)據(jù)結(jié)構(gòu)和算法的時(shí)候信手拈來(lái)。實(shí)際上,本書中的建議同樣適用于這兩個(gè)學(xué)科的數(shù)據(jù)科學(xué)家,我們也會(huì)看到對(duì)兩者都有很大好處的例子。
我也不是在談?wù)摍C(jī)器學(xué)習(xí)狂熱分子與傳統(tǒng)統(tǒng)計(jì)建模的數(shù)據(jù)科學(xué)家。經(jīng)典的統(tǒng)計(jì)建模和由現(xiàn)代機(jī)器學(xué)習(xí)開發(fā)的算法在識(shí)別和利用數(shù)據(jù)集的重要特征方面都起著重要的作用。本書將幫助你更好地理解這兩種方法,并將它們更有效地結(jié)合到分析數(shù)據(jù)集中。
我甚至談?wù)摰囊膊皇蔷哂袑iT領(lǐng)域知識(shí)的數(shù)據(jù)科學(xué)家和那些通才的數(shù)據(jù)科學(xué)家。在一個(gè)學(xué)科深入進(jìn)去并精通,是會(huì)有很好的回報(bào)的;靈活地跨越多個(gè)學(xué)科之間需要非凡的天分,也會(huì)是收獲頗豐的。本書會(huì)在這兩個(gè)方面幫助到你。
好吧,我認(rèn)為世界上的兩種數(shù)據(jù)科學(xué)家是具備深度學(xué)習(xí)技術(shù)知識(shí)的和不具備深度學(xué)習(xí)技術(shù)知識(shí)的。我不是說(shuō)那些缺乏這些知識(shí)的人就比他們當(dāng)代的同行們不專業(yè)。簡(jiǎn)單來(lái)說(shuō),深度學(xué)習(xí)的知識(shí)能讓你接觸到更廣范圍的工具,能從不同的角度解決具有挑戰(zhàn)性的問(wèn)題,并能快速有效地得出解決方案。簡(jiǎn)而言之,深度學(xué)習(xí)擴(kuò)展了你的數(shù)據(jù)科學(xué)工具包。
一位數(shù)據(jù)科學(xué)家,如果對(duì)深度學(xué)習(xí)優(yōu)秀的方法知之甚少,那么與具有該技能的同事相比,這會(huì)是一個(gè)非常顯著的缺點(diǎn)。從衰老研究到動(dòng)物學(xué)分析,對(duì)深度學(xué)習(xí)技能的需求都是非常高的。
2、什么是深度學(xué)習(xí)
深度學(xué)習(xí)是機(jī)器學(xué)習(xí)與神經(jīng)網(wǎng)絡(luò)、人工智能、圖形化建模、優(yōu)化、模式識(shí)別和信號(hào)處理等技術(shù)融合后產(chǎn)生的一個(gè)領(lǐng)域。在嚴(yán)謹(jǐn)?shù)膶W(xué)術(shù)期刊中,這個(gè)新興學(xué)科的模型一直受嚴(yán)肅理智的學(xué)者所推崇:
"深度學(xué)習(xí)網(wǎng)絡(luò)是神經(jīng)網(wǎng)絡(luò)革命性的發(fā)展,人們甚至認(rèn)為可以用它來(lái)創(chuàng)建更強(qiáng)大的預(yù)測(cè)模型。”
2.1 成功的藍(lán)圖
簡(jiǎn)單來(lái)說(shuō),深度神經(jīng)網(wǎng)絡(luò)是一種用多層抽象來(lái)表示概念或特征的方式。其實(shí),任何工程師或者建筑師都在用這種基本方法。想想大型辦公樓的藍(lán)圖:在最底層,會(huì)標(biāo)示出電路、水管和排水系統(tǒng)的詳細(xì)情況;而在最高層,可能會(huì)有一個(gè)旋轉(zhuǎn)觀景臺(tái)和旗桿,能看到整個(gè)30層樓的輪廓。
深度神經(jīng)網(wǎng)絡(luò)也遭循這個(gè)非常有用的方案。該方案幾乎被用于生活的各個(gè)領(lǐng)域。醫(yī)生有診斷書,教師有教學(xué)大綱,企業(yè)有盈利策劃書,甚至學(xué)術(shù)界都有一個(gè)發(fā)表研究論文的規(guī)范。
實(shí)際上,在生活中很難找出不用多層抽象來(lái)表達(dá)觀點(diǎn)的例子——軍隊(duì)指揮官用相同的原則部署作戰(zhàn),政治家以此贏得競(jìng)選。相同的原理同樣適用于神經(jīng)網(wǎng)絡(luò)或者其他多層模型的分類和預(yù)測(cè),這是室無(wú)道理的。
更快的計(jì)算機(jī)處理器,日益廉價(jià)的內(nèi)存以及層出不窮的新數(shù)據(jù)格式,使得任意規(guī)模的企業(yè)都能用深度學(xué)習(xí)來(lái)做數(shù)據(jù)分析。
2.2 有監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)
深度學(xué)習(xí)使用多層機(jī)器學(xué)習(xí)模型對(duì)數(shù)據(jù)進(jìn)行有監(jiān)督學(xué)或無(wú)監(jiān)督學(xué)習(xí)。模型中的不同層由非線性數(shù)據(jù)變換的多個(gè)階段組成,數(shù)據(jù)的特征在相繼更高、更抽象的層表示。
數(shù)據(jù)科學(xué)領(lǐng)域有如下兩種基本的學(xué)習(xí)類型。
有監(jiān)督學(xué)習(xí):訓(xùn)練的數(shù)據(jù)包含已知的結(jié)果。模型相對(duì)于這些結(jié)果進(jìn)行訓(xùn)練。
無(wú)監(jiān)督學(xué)習(xí):訓(xùn)練數(shù)據(jù)不包含任何已知的結(jié)果。算法自行發(fā)現(xiàn)數(shù)據(jù)中的聯(lián)系。
2.3 深度學(xué)習(xí)的流程
在學(xué)習(xí)深度學(xué)習(xí)的核心思想時(shí),我們采取的通用方法一般如圖2.1所示。無(wú)論開發(fā)什么類型的機(jī)器學(xué)習(xí)模型,最終都回歸到這個(gè)基本模型。輸入數(shù)據(jù)傳遞給模型,經(jīng)過(guò)多個(gè)非線性層進(jìn)行過(guò)濾,最后一層包含分類器——決定該對(duì)象所屬的種類。
圖2.1 通用深度學(xué)習(xí)框架
用數(shù)據(jù)進(jìn)行學(xué)習(xí)的目標(biāo)是預(yù)測(cè)響應(yīng)變量或者用一組給定的屬性對(duì)響應(yīng)變量分類。這與線性回歸有點(diǎn)類似,在線性回歸中,用一組獨(dú)立變量(也叫屬性或特征)通過(guò)一個(gè)線性模型來(lái)預(yù)測(cè)因(響應(yīng))變量。不過(guò),傳統(tǒng)的線性回歸模型并不被視為深度學(xué)習(xí),因?yàn)樗鼈儧](méi)有對(duì)數(shù)據(jù)進(jìn)行多層的非線性變換。
其他流行的數(shù)據(jù)學(xué)習(xí)技術(shù)有決策樹( decision tree ) 、隨機(jī)森林( random forest )和支持向量機(jī)(support vector machine )。這些技術(shù)雖然強(qiáng)大,但是并不深入。決策樹和隨機(jī)森林工作在原始輸入數(shù)據(jù)上,不進(jìn)行變換,也不生成新特征;支持向量機(jī)層次較淺,因?yàn)樗鼈儍H由核函數(shù)和線性變換組成。類似地單隱藏層神經(jīng)網(wǎng)絡(luò)也不被視為深度神經(jīng)網(wǎng)絡(luò),因?yàn)樗鼈冎话粋€(gè)隱藏層。
3、深度學(xué)習(xí)能解決什么問(wèn)題
深度學(xué)習(xí)的威力來(lái)自于用適量的并行非線性步驟對(duì)非線性數(shù)據(jù)進(jìn)行分類或預(yù)測(cè)的能力。從原始輸入數(shù)據(jù)到數(shù)據(jù)的實(shí)際分類的過(guò)程中,深度學(xué)習(xí)模型學(xué)習(xí)輸入數(shù)據(jù)的分層特征。每一層從前一層的輸出中提取特征。
本書所指的深度學(xué)習(xí)模型是有多個(gè)隱藏層的神經(jīng)網(wǎng)絡(luò)。如圖2.2所示,最簡(jiǎn)單的深度神經(jīng)網(wǎng)絡(luò)至少包含兩層的隱藏神經(jīng)元。其中每一層的輸入來(lái)自上一層的輸出。
圖2.2 帶兩個(gè)隱蔽層的前饋神經(jīng)網(wǎng)絡(luò)
多層深度神經(jīng)網(wǎng)絡(luò)有多個(gè)非線性層級(jí),可以緊湊地表示高度非線性的和/或高度變化的函數(shù)。它們擅長(zhǎng)識(shí)別數(shù)據(jù)中的復(fù)雜模式,可以用來(lái)改進(jìn)計(jì)算機(jī)視覺(jué)和自然語(yǔ)言處理等工作,并可以解決非結(jié)構(gòu)化數(shù)據(jù)難題。
全球發(fā)行且讀者眾多的雜志《IEEE Spectrum》 報(bào)道 :"數(shù)據(jù)科學(xué)家供不應(yīng)求。這些專業(yè)人士享有高薪和大型股票期權(quán)......"據(jù)麥肯錫全球研究所稱,僅美國(guó)就缺少14萬(wàn)~19萬(wàn)具備適當(dāng)技能的數(shù)據(jù)科學(xué)家,哈佛商業(yè)評(píng)論聲稱數(shù)據(jù)科學(xué)是21世紀(jì)最吸引人的工作。
4、哪些領(lǐng)域使用深度學(xué)習(xí)
深度學(xué)習(xí)技術(shù)正商業(yè)化地應(yīng)用在醫(yī)療保健行業(yè)、醫(yī)學(xué)圖像處理、自然語(yǔ)言處理和提高廣告點(diǎn)擊率等領(lǐng)域。微軟、IBM、雅虎、Twitter、百度、PayPal和Facebook都在運(yùn)用深度學(xué)習(xí)來(lái)了解用戶的偏好,以便能推薦針對(duì)性的服務(wù)和產(chǎn)品。深度學(xué)習(xí)無(wú)處不在,甚至用在智能手機(jī)上來(lái)支持語(yǔ)音輔助技術(shù)。
很難想出一個(gè)不能從深度學(xué)習(xí)受益的商業(yè)活動(dòng)。思考5分鐘,把你一些最好的想法列下來(lái)。
這是我想到的領(lǐng)域列表:
過(guò)程建模和控制
健康診斷
投資組合管理
軍事目標(biāo)識(shí)別
核磁共振和X光分析
銀行和其他金融機(jī)構(gòu)的個(gè)人信用評(píng)級(jí)
營(yíng)銷活動(dòng)
語(yǔ)音識(shí)別
股市預(yù)測(cè)
文本檢索
金融欺詐檢測(cè)
Richard Socher寫下了自己的列表,從中找到了一個(gè)有用的應(yīng)用,與他人聯(lián)合創(chuàng)立MetaMind,該公司專門從事醫(yī)學(xué)圖像分析和自動(dòng)圖像識(shí)別。其他數(shù)據(jù)科學(xué)家、企業(yè)家、應(yīng)用研究人員,甚至可能是你,將會(huì)跟隨Richard的腳步進(jìn)入這個(gè)日益增長(zhǎng)的利潤(rùn)空間。
4.1深度學(xué)習(xí)能揭開永葆青春的秘密嗎
有一天,我從一個(gè)科研機(jī)構(gòu)獲得一篇新聞稿,其中有一則新奇的消息-發(fā)生了一件極具吸引力的事情,其中涉及深度學(xué)習(xí)。這則新聞報(bào)道涉及美容行業(yè),該行業(yè)每年有超過(guò)2600億美元的全球市場(chǎng)。
美容產(chǎn)品的核心在于保持青春-逆轉(zhuǎn)衰老。在世界各地,這一承諾反映在人們每年每天花費(fèi)在市場(chǎng)營(yíng)銷的數(shù)百萬(wàn)美元上。充滿青春活力、成熟快樂(lè)人士的形象廣告充斥著人們的手機(jī)、平板電腦和筆記本電腦。
無(wú)論你在什么時(shí)候碰巧讀到本書,都會(huì)有一個(gè)承諾永葆青春的新美客產(chǎn)品剛剛發(fā)布。不信你去看看,快速地在網(wǎng)上搜索一下......
4.2衰老的挑戰(zhàn)
有史以來(lái),衰老的挑戰(zhàn)一直是偉大思想家、政治家和科學(xué)家關(guān)注的前沿。期美國(guó)老年學(xué)家I.L. Nascher在他的經(jīng)典著作中寫到 :
“為什么人會(huì)變老,或者為什么經(jīng)過(guò)一段時(shí)間的身體機(jī)能完美后,器官和組織會(huì)退化,其功能變?nèi)醪⒉∽?直到它們無(wú)法維持生命所必需的、和諧的相互關(guān)系,這個(gè)問(wèn)題是生與死這一偉大問(wèn)題的一部分。”
直到1601年,英國(guó)伊麗莎白女王宣布的《濟(jì)貧法》使這一問(wèn)題有所緩解,被遺棄的老人因無(wú)工作能力窮困無(wú)依的困境,是制定該法律的一個(gè)關(guān)鍵問(wèn)題:
“...維持秩序,為國(guó)家的福祉做出貢獻(xiàn)。”
《濟(jì)貧法》要求兒女贍養(yǎng)他們的父母和祖父母,因?yàn)镮.L.Nascher觀察到:
“在中國(guó)有敬奉祖先和老人的精神,但在我們這里沒(méi)有。”
《濟(jì)貧法》在英國(guó)持續(xù)了250多年。在這段時(shí)間里,英國(guó)人的預(yù)期壽命從約40歲翻了一番,超過(guò)了80歲。其他國(guó)家也有類似的趨勢(shì)。
4.3眾多的理論
預(yù)期壽命的穩(wěn)步上升有很多原因。臨床外科專家Victor Horsley爵士將衰老歸因于甲狀腺的退化;著名科學(xué)家Elie Metchnikoff提出“吞噬作用"的理論--大腸白細(xì)胞破壞加速老化的細(xì)菌;著名的老年學(xué)家Shock博士在一次激烈的討論中大膽地宣稱:
"或許老年醫(yī)學(xué)研究最有用的貢獻(xiàn)之一就是證明衰老不一定與退化和疾病有關(guān)。”
衰老問(wèn)題依然存在無(wú)數(shù)理論,生物學(xué)家、老年學(xué)家和人口學(xué)家之間存在巨大的分歧。衰老是一種疾病嗎?人類的壽命是有限的嗎?衰老可以停止甚至反轉(zhuǎn)嗎?
4.4數(shù)據(jù)科學(xué)家的答案
一則新的消息引起了我的注意,因?yàn)樗f(shuō)到,深度學(xué)習(xí)很可能一勞永逸地解決衰老這個(gè)問(wèn)題。由青年實(shí)驗(yàn)室聯(lián)合創(chuàng)始人Alex Zhavoronkov帶領(lǐng)的研究人員進(jìn)行了一項(xiàng)研究,旨在確定與衰老相關(guān)的一組生物指標(biāo),一旦成功,這些指標(biāo)便可以用來(lái)有針對(duì)性地長(zhǎng)期跟蹤干預(yù)治療的有效性。這項(xiàng)研究一個(gè)令人震驚的地方便是-它僅需進(jìn)行基本的血液檢測(cè)。
研究人員開發(fā)了一套深度神經(jīng)網(wǎng)絡(luò)來(lái)預(yù)測(cè)實(shí)際年齡。它用超過(guò)60000個(gè)樣本進(jìn)行訓(xùn)練。研究人員驚奇地發(fā)現(xiàn),該系統(tǒng)確定了5個(gè)核心的生物指標(biāo),預(yù)測(cè)精度達(dá)81.5%。
這個(gè)非常新穎且頗具開拓性的分析發(fā)表在世界著名的研究雜志上。該研究結(jié)果極具價(jià)值,研究人員也受邀參加世界美容創(chuàng)新峰會(huì)——深度學(xué)習(xí)進(jìn)軍美容行業(yè)了。
深度學(xué)習(xí)需要專業(yè)的數(shù)據(jù)科學(xué)人才,而這些人才仍供不應(yīng)求。目前只有屈指可數(shù)的少數(shù)公司能從深度學(xué)習(xí)中獲益,其他企業(yè)正在迎頭趕上。
5、想使用深度學(xué)習(xí)——卻不知如何開始
深度學(xué)習(xí)已經(jīng)成為迄今為止使用人工智能構(gòu)建解決現(xiàn)實(shí)世界問(wèn)題的系統(tǒng)的有效方法之一。互聯(lián)網(wǎng)時(shí)代產(chǎn)生的海量數(shù)據(jù)正越來(lái)越多地被應(yīng)用在深度學(xué)習(xí)中。正如記者Robin Wigglesworth在《金融時(shí)報(bào)》中寫到:
“簡(jiǎn)單來(lái)說(shuō),深度學(xué)習(xí)建立在20世紀(jì)90年代神經(jīng)網(wǎng)絡(luò)發(fā)展的基礎(chǔ)上,機(jī)器使用人造神經(jīng)元矩陣掃描信息,尋找模式并做出決策,很像人腦的運(yùn)作模式,但速度超快。”
深度學(xué)習(xí)在需要分類和/或預(yù)測(cè)的領(lǐng)域非常有用。在商業(yè)、工業(yè)或者研究的任何領(lǐng)域,任何對(duì)預(yù)測(cè)和分類問(wèn)題感興趣的人都應(yīng)該學(xué)習(xí)深度學(xué)習(xí)。實(shí)際上,如果有足夠的歷史數(shù)據(jù)、需要預(yù)測(cè)或分類的研究案例,便可以構(gòu)建一個(gè)深度學(xué)習(xí)模型進(jìn)行研究。
要學(xué)習(xí)一個(gè)新的東西,最難的事情就是找到容易理解和部署的例子。找到課題相關(guān)的大量技術(shù)論文非常容易,但找到入門學(xué)習(xí)并快速搭建的具體的例子是很難的。本書就是為了解決這個(gè)問(wèn)題。書中有直觀的插圖、實(shí)用的例子以及對(duì)模型的簡(jiǎn)單解釋,這些可以用Python直接搭建和測(cè)試。這樣就很容易上手,通過(guò)數(shù)據(jù)和Python進(jìn)行試驗(yàn)。
運(yùn)用本書中的想法將改變你的數(shù)據(jù)科學(xué)實(shí)踐思維。即使僅實(shí)踐了本書每章中的一個(gè)想法,你也不僅可以使用深度學(xué)習(xí)完成任務(wù),還將能游刃有余地面對(duì)更多數(shù)據(jù)的機(jī)會(huì)和挑戰(zhàn)。