理財(cái)和基金的區(qū)別 關(guān)于理財(cái)和基金的區(qū)別介紹
2023-01-26
更新時(shí)間:2022-06-10 14:00:44作者:佚名
新智元報(bào)道
編輯:LRS
【新智元導(dǎo)讀】吳恩達(dá)最近發(fā)布了一篇博客,介紹了幾個(gè)基礎(chǔ)算法的起源和直觀理解,還宣傳了一下自己重置版機(jī)器學(xué)習(xí)課程:目的竟是為了復(fù)習(xí)一遍!
神經(jīng)網(wǎng)絡(luò)模型在學(xué)術(shù)界和工業(yè)界都處于絕對(duì)的壟斷地位,使得「機(jī)器學(xué)習(xí)」幾乎要跟「深度學(xué)習(xí)」劃上等號(hào)了。
作為深度學(xué)習(xí)的領(lǐng)軍人,吳恩達(dá)自然也是深度學(xué)習(xí)的忠實(shí)使用者。
最近吳恩達(dá)在博客網(wǎng)站上發(fā)表了一篇特刊,表示自己由于常年使用神經(jīng)網(wǎng)絡(luò),已經(jīng)快忘了該怎么用傳統(tǒng)的機(jī)器學(xué)習(xí)算法了!
因?yàn)樯疃葘W(xué)習(xí)并非在所有場(chǎng)景下都好用,所以在「盲目」使用神經(jīng)網(wǎng)絡(luò)受挫后,痛定思痛,寫了一篇文章,為一些傳統(tǒng)的機(jī)器學(xué)習(xí)算法提供一些直觀上的解釋。
這篇博客也是為即將發(fā)布的、由 Stanford Online 和 DeepLearning.AI 聯(lián)合推出Machine Learning Specialization課程提供一些基礎(chǔ)知識(shí),包括線性回歸、邏輯回歸、梯度下降、神經(jīng)網(wǎng)絡(luò)、決策樹、K-means聚類等算法。
吳恩達(dá)的來(lái)信
親愛(ài)的朋友們,
幾年前,我們計(jì)劃在有限的計(jì)算量預(yù)算內(nèi)將該算法應(yīng)用于一個(gè)龐大的用戶群,所以有必要選擇一個(gè)高效的算法。
在神經(jīng)網(wǎng)絡(luò)和決策樹學(xué)習(xí)算法之間,我選擇了神經(jīng)網(wǎng)絡(luò)。
因?yàn)槲乙呀?jīng)有一段時(shí)間沒(méi)有使用提升決策樹了,我直覺(jué)上認(rèn)為它們需要的計(jì)算量比實(shí)際要多,但選擇神經(jīng)網(wǎng)絡(luò)是一個(gè)錯(cuò)誤的決定。
幸運(yùn)的是,我的團(tuán)隊(duì)很快就指出了錯(cuò)誤,并修正了我的決定,而這個(gè)項(xiàng)目最后也獲得了成功。
這次經(jīng)歷給我上了一課,告訴我學(xué)習(xí)和不斷刷新基礎(chǔ)知識(shí)的重要性。如果我重新熟悉了提升樹,我就會(huì)做出更好的決定。
機(jī)器學(xué)習(xí)和其他技術(shù)領(lǐng)域一樣,隨著研究人員社區(qū)在彼此工作的基礎(chǔ)上不斷發(fā)展,一些貢獻(xiàn)經(jīng)過(guò)時(shí)間的考驗(yàn)后,長(zhǎng)盛不衰,并成為進(jìn)一步發(fā)展的基礎(chǔ)。
從住房?jī)r(jià)格預(yù)測(cè)器到文本、圖像生成器,一切新算法都建立在基礎(chǔ)算法上(例如線性和邏輯回歸、決策樹等)和基礎(chǔ)概念(如正則化、優(yōu)化損失函數(shù)、偏差/方差等)的核心思想上。
堅(jiān)實(shí)的、時(shí)刻更新的基礎(chǔ)知識(shí)是成為一名高效的機(jī)器學(xué)習(xí)工程師的一個(gè)關(guān)鍵。許多團(tuán)隊(duì)在日常工作中都會(huì)用到這些想法,而博客文章和研究論文也常常假定你對(duì)這些思想很熟悉,這些常識(shí)基礎(chǔ)對(duì)于我們近年來(lái)看到的機(jī)器學(xué)習(xí)的快速進(jìn)步至關(guān)重要。
這也是為什么我把原來(lái)的機(jī)器學(xué)習(xí)課程進(jìn)行了更新。
我的團(tuán)隊(duì)花了很多時(shí)間來(lái)討論最核心的教學(xué)概念,為各種主題制定了廣泛的教學(xué)大綱,并在其中設(shè)計(jì)了課程單元的原型。
這個(gè)過(guò)程幫助我們認(rèn)識(shí)到,主題的多樣性比細(xì)節(jié)的知識(shí)更重要,所以我們又重新制作了一份大綱。
我希望最后的結(jié)果是一套易于理解的課程,能夠幫助任何人掌握當(dāng)今機(jī)器學(xué)習(xí)中最重要的算法和概念,包括深度學(xué)習(xí),但也包括很多其他東西,并能夠建立有效的學(xué)習(xí)系統(tǒng)。
本著這種精神,我們決定探討一些領(lǐng)域內(nèi)最重要的算法,解釋了它們是如何工作的,并介紹它們不為人知的起源。
如果你是一個(gè)初學(xué)者,我希望它能幫助你揭開機(jī)器學(xué)習(xí)核心的一些方法的神秘面紗。
對(duì)于那些老手來(lái)說(shuō),你會(huì)在熟悉的領(lǐng)域中發(fā)現(xiàn)一些鮮為人知的觀點(diǎn)。
學(xué)無(wú)止境,保持學(xué)習(xí)!
吳恩達(dá)
線性回歸
線性回歸(Linear regression)可能是機(jī)器學(xué)習(xí)中的最重要的統(tǒng)計(jì)方法,至于誰(shuí)發(fā)明了這個(gè)算法,一直爭(zhēng)論了200年,仍未解決。
1805年,法國(guó)數(shù)學(xué)家勒讓德(Adrien-Marie Legendre)在預(yù)測(cè)一顆彗星的位置時(shí),發(fā)表了將一條線擬合到一組點(diǎn)上的方法。天體導(dǎo)航是當(dāng)時(shí)全球商業(yè)中最有價(jià)值的科學(xué),就像今天的人工智能一樣。
四年后,24歲的德國(guó)天才數(shù)學(xué)家高斯(Carl Friedrich Gauss)堅(jiān)持認(rèn)為,他自1795年以來(lái)一直在使用這種方法,但他認(rèn)為這種方法太過(guò)瑣碎,無(wú)法寫出來(lái)。高斯的說(shuō)法促使Legendre發(fā)表了一份匿名的附錄,指出「一位非常有名的幾何學(xué)家毫不猶豫地采用了這種方法」。
這類長(zhǎng)期存在發(fā)明爭(zhēng)議的算法都有兩個(gè)特點(diǎn):好用,且簡(jiǎn)單!
線性回歸的本質(zhì)上就是斜率(slopes)和截距(biases,也稱偏置)。
當(dāng)一個(gè)結(jié)果和一個(gè)影響它的變量之間的關(guān)系是一條直線時(shí),線性回歸就很有用。
例如,一輛汽車的油耗與它的重量呈線性關(guān)系。
一輛汽車的油耗y和它的重量x之間的關(guān)系取決于直線的斜率w(油耗隨重量上升的陡峭程度)和偏置項(xiàng)b(零重量時(shí)的油耗):y=w*x+b。
在訓(xùn)練期間,給定汽車的重量,算法預(yù)測(cè)預(yù)期的燃料消耗。它比較了預(yù)期和實(shí)際的燃料消耗。然后通過(guò)最小二乘法,使平方差最小化,從而修正w和b的值。
考慮到汽車的阻力,有可能產(chǎn)生更精確的預(yù)測(cè)。額外的變量將直線延伸到一個(gè)平面。通過(guò)這種方式,線性回歸可以接收任何數(shù)量的變量/維度作為輸入。
線性回歸算法在當(dāng)年可以幫助航海家追蹤星星,后來(lái)幫助生物學(xué)家(特別是查爾斯-達(dá)爾文的表弟弗朗西斯-高爾頓)識(shí)別植物和動(dòng)物的遺傳性狀,進(jìn)一步的發(fā)展釋放了線性回歸的潛力。
1922年,英國(guó)統(tǒng)計(jì)學(xué)家羅納德-費(fèi)舍爾和卡爾-皮爾遜展示了線性回歸如何融入相關(guān)和分布的一般統(tǒng)計(jì)框架,再次擴(kuò)大了其適用范圍。
近一個(gè)世紀(jì)后,計(jì)算機(jī)的出現(xiàn)為其提供了數(shù)據(jù)和處理能力,使其得到更大的利用。
當(dāng)然,數(shù)據(jù)從來(lái)沒(méi)有被完美地測(cè)量過(guò),而且多個(gè)變量之間也存在不同的重要程度,這些事實(shí)也刺激了線性回歸產(chǎn)生了更復(fù)雜的變體。
例如,帶正則化的線性回歸(也稱為嶺回歸)鼓勵(lì)線性回歸模型不要過(guò)多地依賴任何一個(gè)變量,或者說(shuō)要均勻地依賴最重要的變量。如果你要追求簡(jiǎn)化,使用L1的正則化就是lasso回歸,最終的系數(shù)更稀疏。換句話說(shuō),它學(xué)會(huì)了選擇具有高預(yù)測(cè)能力的變量,而忽略了其他的變量。
Elastic net結(jié)合了兩種類型的正則化,當(dāng)數(shù)據(jù)稀少或特征出現(xiàn)關(guān)聯(lián)時(shí),它很有用。
神經(jīng)網(wǎng)絡(luò)中最常見的一種神經(jīng)元就是線性回歸模型,往往后面再跟著一個(gè)非線性激活函數(shù),所以線性回歸是深度學(xué)習(xí)的基本構(gòu)件。
Logistic回歸
Logistic函數(shù)可以追溯到19世紀(jì)30年代,當(dāng)時(shí)比利時(shí)統(tǒng)計(jì)學(xué)家P.F. Verhulst發(fā)明了該函數(shù)來(lái)描述人口動(dòng)態(tài)。
隨著時(shí)間的推移,最初的爆炸性指數(shù)增長(zhǎng)在消耗可用資源時(shí)趨于平緩,從而形成了Logistic曲線。
一個(gè)多世紀(jì)后,美國(guó)統(tǒng)計(jì)學(xué)家威爾遜(E. B. Wilson)和他的學(xué)生簡(jiǎn)-伍斯特(Jane Worcester)設(shè)計(jì)了邏輯回歸算法,以計(jì)算出多少給定的危險(xiǎn)物質(zhì)會(huì)致命。
Logistic回歸將logistic函數(shù)擬合到數(shù)據(jù)集上,以預(yù)測(cè)在某一事件(例如,攝入馬錢子)發(fā)生特定結(jié)果(例如,過(guò)早死亡)的概率。
1、訓(xùn)練時(shí)水平地調(diào)整曲線的中心位置,垂直地調(diào)整其中間位置,以使函數(shù)的輸出和數(shù)據(jù)之間的誤差最小。
2、將中心向右或向左調(diào)整意味著需要更多或更少的毒藥來(lái)殺死普通人。陡峭的坡度意味著確定性:在中間點(diǎn)之前,大多數(shù)人都能活下來(lái);超過(guò)中間點(diǎn),那就說(shuō)得再見了。一個(gè)平緩的斜率更寬容:低于曲線的中間點(diǎn),超過(guò)一半的人可以存活;更遠(yuǎn)的地方,不到一半。
3、設(shè)置一個(gè)閾值,比如說(shuō)0.5,曲線就成了一個(gè)分類器。只要把劑量輸入模型,你就會(huì)知道你應(yīng)該計(jì)劃一個(gè)聚會(huì)還是一個(gè)葬禮。
Verhulst的工作發(fā)現(xiàn)了二元結(jié)果的概率,后來(lái)英國(guó)統(tǒng)計(jì)學(xué)家David Cox和荷蘭統(tǒng)計(jì)學(xué)家Henri Theil在20世紀(jì)60年代末獨(dú)立工作,將邏輯回歸法用于有兩個(gè)以上類別的情況。
Logistic函數(shù)可以描述多種多樣的現(xiàn)象,并具有相當(dāng)?shù)臏?zhǔn)確性,因此Logistic回歸在許多情況下提供了可用的基線預(yù)測(cè)。
在醫(yī)學(xué)上,它可以估計(jì)死亡率和疾病的風(fēng)險(xiǎn);在政治中,它可以預(yù)測(cè)選舉的贏家和輸家;在經(jīng)濟(jì)學(xué)中,它可以預(yù)測(cè)商業(yè)前景。
在神經(jīng)網(wǎng)絡(luò)中,有一部分神經(jīng)元為L(zhǎng)ogistic回歸,其中非線性函數(shù)為sigmoid。
梯度下降
想象一下,在黃昏過(guò)后的山區(qū)徒步旅行,你會(huì)發(fā)現(xiàn)除了你的腳以外看不到什么。而你的手機(jī)沒(méi)電了,所以你無(wú)法使用GPS應(yīng)用程序來(lái)尋找回家的路。
你可能會(huì)發(fā)現(xiàn)梯度下降的方向是最快路徑,只是要小心不要走下懸崖。
1847年,法國(guó)數(shù)學(xué)家Augustin-Louis Cauchy發(fā)明了近似恒星軌道的算法。60年后,他的同胞雅克-哈達(dá)瑪?shù)拢↗acques Hadamard)獨(dú)立開發(fā)了這一算法,用來(lái)描述薄而靈活的物體的變形。
不過(guò),在機(jī)器學(xué)習(xí)中,它最常見的用途是找到學(xué)習(xí)算法損失函數(shù)的最低點(diǎn)。
神經(jīng)網(wǎng)絡(luò)通常是一個(gè)函數(shù),給定一個(gè)輸入,計(jì)算出一個(gè)期望的輸出。
訓(xùn)練網(wǎng)絡(luò)的一種方法是,通過(guò)反復(fù)計(jì)算實(shí)際輸出和期望輸出之間的差異,然后改變網(wǎng)絡(luò)的參數(shù)值來(lái)縮小該差異,從而使損失最小化,或其輸出中的誤差最小。
梯度下降縮小了誤差,使計(jì)算損失的函數(shù)最小化。
網(wǎng)絡(luò)的參數(shù)值相當(dāng)于景觀上的一個(gè)位置,而損失是當(dāng)前的高度。隨著你的下降,你提高了網(wǎng)絡(luò)的能力,以計(jì)算出接近所需的輸出。
不過(guò)可見性是有限的,因?yàn)樵诒O(jiān)督學(xué)習(xí)下,算法完全依賴于網(wǎng)絡(luò)的參數(shù)值和梯度,也就是當(dāng)前損失函數(shù)的斜率。
使用梯度下降,你也有可能被困在一個(gè)由多個(gè)山谷(局部最小值)、山峰(局部最大值)、馬鞍(馬鞍點(diǎn))和高原組成的非凸形景觀中。事實(shí)上,像圖像識(shí)別、文本生成和語(yǔ)音識(shí)別這樣的任務(wù)都是非凸的,而且已經(jīng)出現(xiàn)了許多梯度下降的變體來(lái)處理這種情況。
K-means聚類
如果你在派對(duì)上與其他人站得很近,那么你們之間很可能有一些共同點(diǎn)。
K-means的聚類就是基于這種先驗(yàn)想法,將數(shù)據(jù)點(diǎn)分為多個(gè)group,無(wú)論這些group是通過(guò)人類機(jī)構(gòu)還是其他力量形成的,這種算法都會(huì)找到它們之間的關(guān)聯(lián)。
美國(guó)物理學(xué)家斯圖爾特-勞埃德(Stuart Lloyd)是貝爾實(shí)驗(yàn)室標(biāo)志性創(chuàng)新工廠和發(fā)明原子彈的曼哈頓項(xiàng)目的校友,他在1957年首次提出了k-means聚類,以分配數(shù)字信號(hào)中的信息,不過(guò)他直到1982年才發(fā)表。
與此同時(shí),美國(guó)統(tǒng)計(jì)學(xué)家愛(ài)德華-福吉(Edward Forgy)在1965年描述了一種類似的方法——?jiǎng)诎5?福吉算法。
K-means聚類首先會(huì)尋找group的中心,然后將數(shù)據(jù)點(diǎn)分配到志同道合的group內(nèi)??紤]到數(shù)據(jù)量在空間里的位置和要組成的小組數(shù)量,k-means聚類可以將與會(huì)者分成規(guī)模大致相同的小組,每個(gè)小組都聚集在一個(gè)中心點(diǎn)或中心點(diǎn)周圍。
在訓(xùn)練過(guò)程中,算法最初需要隨機(jī)選擇k個(gè)人來(lái)指定k個(gè)中心點(diǎn),其中k必須手動(dòng)選擇,而且找到一個(gè)最佳的k值并不容易。
然后通過(guò)將每個(gè)人與最接近的中心點(diǎn)聯(lián)系起來(lái)形成k個(gè)聚類簇。
對(duì)于每個(gè)聚類簇,它計(jì)算所有被分配到該組的人的平均位置,并將平均位置指定為新的中心點(diǎn)。每個(gè)新的中心點(diǎn)可能都不是由一個(gè)具體的人占據(jù)的。
在計(jì)算出新的中心點(diǎn)后,算法將所有人重新分配到離他們最近的中心點(diǎn)。然后計(jì)算新的中心點(diǎn),調(diào)整集群,以此類推,直到中心點(diǎn)(以及它們周圍的群體)不再移動(dòng)。
將新人分配到正確的群組很容易,讓他們?cè)诜块g里找到自己的位置,然后尋找最近的中心點(diǎn)。
K-means算法的原始形式仍然在多個(gè)領(lǐng)域很有用,特別是因?yàn)樽鳛橐环N無(wú)監(jiān)督的算法,它不需要收集潛在的昂貴的標(biāo)記數(shù)據(jù),它的運(yùn)行速度也越來(lái)越快。
例如,包括scikit-learn在內(nèi)的機(jī)器學(xué)習(xí)庫(kù)都得益于2002年增加的kd-trees,它能極快地分割高維數(shù)據(jù)。
參考資料:
https://read.deeplearning.ai/the-batch/issue-146/