新聞中心

EEPW首頁 > 智能計算 > 業(yè)界動態(tài) > 機器學習的關鍵點是什么 數(shù)據(jù)量比算法還重要

機器學習的關鍵點是什么 數(shù)據(jù)量比算法還重要

作者: 時間:2018-11-21 來源:elecfans 收藏

  5. 中最大的問題就是“維度災難”!

本文引用地址:http://www.butianyuan.cn/article/201811/394640.htm

  除了過擬合,中最大的問題就是維度災難。這一名詞是由 Bellman 在 1961 年提出的,指的是當輸入維度很高時,許多在低維工作正常的將無法正常工作。但是在中,它的意義更廣。隨著樣本維度(特征數(shù)量)的增加,進行正確泛化變得越來越難,因為固定大小的訓練集對輸入空間的覆蓋逐漸縮減。

  高維的一般問題是,來自三維世界的人類直覺通常不適用于高維空間。在高維度當中,多元高斯分布的大部分數(shù)據(jù)并不接近平均值,而是在其周圍越來越遠的「殼」中;此外,高維分布的大部分體積分布在表面,而不是體內(nèi)。如果恒定數(shù)量的樣本在高維超立方體中均勻分布,那么在超越某個維數(shù)的情況下,大多數(shù)樣本將更接近于超立方體的一個面,而不是它們的最近鄰。此外,如果我們通過嵌入超立方體的方式逼近一個超球面,那么在高維度下,超立方體幾乎所有的體積都在超球面之外。這對于機器學習來說是個壞消息,因為一種類型的形狀常常可以被另一種形狀所逼近,但在高維空間中卻失效了。

  建立二維或三維分類器容易;我們可以僅通過視覺檢查找出不同類別樣本之間的合理邊界。但是在高維中,我們很難理解數(shù)據(jù)的分布結構。這又反過來使設計一個好的分類器變得困難。簡而言之,人們可能會認為收集更多的特征一定不產(chǎn)生負面作用,因為它們最多只是不提供有關分類的新信息而已。但事實上,維度災難的影響可能大于添加特征所帶來的利益。

  6. “理論保證”與“實際出入”的相互關系

  機器學習論文中充斥著理論保證。最常見的保證就是關于保持模型良好泛化能力的訓練樣本數(shù)量約束問題。首先,該問題顯然是可證的。歸納通常與演繹相對:通過演繹,你可以確保結論是正確的; 在歸納中,所有臆想都被摒棄。或許這就是傳世的古老智慧。近十年的主要突破就是認識到歸納的結果是可證的這一事實,尤其在我們愿意給出概率保證時。

  必須斟酌這類約束意味著什么。這并不意味著,如果你的網(wǎng)絡返回與某個特定訓練集一致的假設,那么這個假設就可能具有很好的泛化能力。而是,給定一個足夠大的訓練集,你的網(wǎng)絡很可能會返回一個泛化能力好的假設或無法得到一致的假設。這類約束也沒有教我們?nèi)绾芜x擇一個好的假設空間。它只告訴我們,如果假設空間包含好的分類器,那么隨著訓練集的增大,網(wǎng)絡訓練出一個弱分類器的概率會減小。如果縮小假設空間,約束條件作用會增強,但是訓練出一個強分類器的概率也會下降。

  另一種常見的理論保證是漸進性:假如輸入的數(shù)據(jù)規(guī)模是無窮大的,那么網(wǎng)絡肯定會輸出一個強分類器。聽起來靠譜,但是由于要保證漸近性,選擇某個網(wǎng)絡而非另一個就顯得過于輕率。在實踐中,我們很少處于漸近狀態(tài)。由上面討論的偏差 - 方差權衡可知,如果網(wǎng)絡 A 在具有海量數(shù)據(jù)時比網(wǎng)絡 B 好,則在有限數(shù)據(jù)情況下,B 往往比 A 好。

  理論保證在機器學習中存在的意義不僅僅是作為評判實際決策的標準,而且是理解的方法及設計的動力。鑒于此,它十分有用。事實上,這么多年以來,正是理論聯(lián)系實際促進了機器學習的飛躍式進步。注意:學習是一個復雜的現(xiàn)象,它在理論上說得通,在實際工作中可行,也并不表示前者是導致后者的原因。

  7. “特征工程”是機器學習的關鍵

  最后,有些機器學習項目大獲成功,有些卻失敗了。這是什么造成的?最重要的影響因素就是使用的特征。如果你獲取到很多獨立的且與所屬類別相關的特征,那么學習過程就很容易。相反,若某一個類是特征的極其復雜的函數(shù),你的模型可能無法學習到該函數(shù)。通常來說,原始數(shù)據(jù)格式很不適合學習,但是可以基于它來構建特征。這正是機器學習項目最重要的部分,通常也是最有趣的部分,直覺、創(chuàng)造力、「魔術」和技術同樣重要。

  初學者常常會驚訝于機器學習項目實際上花在機器學習上的時間很少。但是當你將收集、整合、清洗和預處理數(shù)據(jù)以及將數(shù)據(jù)重構成特征過程中解決錯誤等瑣事所消耗的時間考慮在內(nèi)就不奇怪了。而且,機器學習并不只是構建數(shù)據(jù)集跑一次模型就沒事了,它通常是一個跑模型、分析結果、修改數(shù)據(jù)集/模型的迭代式過程。學習是其中最快的部分,但這取決于我們已經(jīng)可以熟練運用它!特征工程因為針對特定的領域,所以很難做,而模型架構的適用范圍更廣泛。但是,這二者之間并沒有清晰的界線,這通??梢越忉屇切┱狭祟I域知識的模型具有更好的性能。

  8. 記?。簲?shù)據(jù)量比還重要!

  在計算機科學的大多數(shù)領域,時間和內(nèi)存是兩大緊缺資源。但在機器學習中,數(shù)據(jù)集儼然是第三個緊缺資源。隨著時間的推移,瓶頸之爭也在不斷改變。在 20 世紀 80 年代,數(shù)據(jù)通常是瓶頸。而如今時間更為寶貴。我們今天有海量的數(shù)據(jù)可用,但是卻沒有充足的時間去處理它,這些數(shù)據(jù)因此被擱置。這就產(chǎn)生了一個悖論:即使在原則上講,大量的數(shù)據(jù)意味著可以學習到更復雜的分類器,但在實踐中,我們往往采用更簡單的分類器,因為復雜的分類器意味著更長的訓練時間。部分解決方案是提出可以快速學習到復雜分類器的方法,且今天在這一方向上確實取得了顯著的進展。

  使用更智能的算法的收益不如期望的部分原因是,第一次取近似值時,它跟其它算法無異。當你認為表征方式之間的區(qū)別與規(guī)則、神經(jīng)網(wǎng)絡之間的區(qū)別類似時,這會讓你驚訝。但事實是,命題規(guī)則可以輕易地編碼進神經(jīng)網(wǎng)絡,并且其它的表征方式之間也有類似的關系。模型本質(zhì)上都是通過將近鄰樣本分到相同的類別而實現(xiàn)的,關鍵差異在于「近鄰」的含義。對于非均勻分布的數(shù)據(jù),模型可以產(chǎn)生廣泛不同的邊界,同時在重要的區(qū)域(具有大量訓練樣例的區(qū)域,因此也是大多數(shù)文本樣例可能出現(xiàn)的區(qū)域)中產(chǎn)生相同的預測。這也能解釋為什么強大的模型可能是不穩(wěn)定的但仍然很準確。


  一般來說,我們首先要考慮最簡單的模型(例如,先考慮樸素貝葉斯而非 logistic 回歸,先考慮 K-近鄰而非支持向量機)。模型越復雜越誘人,但是它們通常很難使用,因為你需要調(diào)整很多的節(jié)點以獲得好的結果,同時,它們的內(nèi)部構造極其不透明。

  模型可以分為兩種主要類型:一種是規(guī)模固定的模型,例如線性分類器,另一種是表征能力隨數(shù)據(jù)集增強的模型,例如決策樹。固定規(guī)模的模型只能利用有限的數(shù)據(jù)。規(guī)??勺兊哪P屠碚撋峡梢詳M合任何函數(shù),只要有足夠大的數(shù)據(jù)集,但是現(xiàn)實很骨感,總存在算法的局限性或計算成本。而且,由于維度災難,現(xiàn)有的數(shù)據(jù)集可能不夠。鑒于這些原因,更智能的算法—那些充分利用數(shù)據(jù)和計算資源的算法--如果你愿意努力去調(diào)試,最終會得到好的結果。在設計模型與學習分類器之間并沒有十分清晰的界線;但是,任何給定的知識點都可以編碼進模型或從數(shù)據(jù)中學習到。因此,模型設計往往是機器學習項目中的重要組成部分,設計者最好擁有相關專業(yè)背景。

  9. “單模型”很難實現(xiàn)最優(yōu),“多模型集成”才是出路!

  在機器學習發(fā)展的早期,大家都有各自喜愛的模型,用一些先驗的理由說明它的優(yōu)越性。研究員對模型開發(fā)了大量的變體并從中挑選一個最優(yōu)的模型。隨后,系統(tǒng)的經(jīng)驗比較表明,最好的模型隨應用的改變而改變,開始出現(xiàn)了包含許多不同模型的系統(tǒng)?,F(xiàn)在的研究開始嘗試調(diào)試多個模型的不同變體,然后挑選表現(xiàn)最好的那一個。但研究人員開始注意到,不選擇找到的最佳變體,而是結合多個變體,卻得到了更好的結果(通常會好很多),而且這沒有增加工作量。


  現(xiàn)在,模型集成已經(jīng)是標準方法。其中最簡單的技術叫 bagging 算法,我們僅通過重采樣來生成訓練數(shù)據(jù)集的隨機變體,再基于這些變體分別學習分類器,并通過投票整合這些分類器的結果。此法的可行性在于它大幅減少了方差,且只微微提升了一點偏差。在 boosTIng 算法中,訓練樣例有權重,而且這些權重各不相同,因此每個新分類器都把重點放在前面的模型會出錯的樣例上。在 stacking 算法中,每個單獨的分類器的輸出作為「高層」模型的輸入,這些高層模型會以最佳方式組合這些模型。

  還有很多其它的方法,就不一一列舉了,但是總的趨勢是規(guī)模越來越大的集成學習。在 Netflix 的獎金激勵下,全世界的團隊致力于構建最佳視頻推薦系統(tǒng)。隨著競賽的推進,競賽團隊發(fā)現(xiàn)通過結合其它團隊的模型可以獲得最佳結果,同時這也促進團隊的合并。冠軍和亞軍模型都是由 100 多個小模型組成的集成模型,兩個集成模型相結合可進一步提高成績。毫無疑問,將來還會出現(xiàn)更大的集成模型。

  10 .“簡單”不能代表是“準確”!

  奧卡姆剃刀原理指出,如無必要,勿增實體。在機器學習中,這通常意味著,給定兩個具有相同訓練誤差的分類器,兩者中較簡單的分類器可能具有最低的評估誤差。關于這一說法的佐證在文獻中隨處可見,但實際上有很多反例用來反駁它,「沒有免費午餐」定理質(zhì)疑它的真實性。


  我們在前文中也看到了一個反例:集成模型。即使訓練誤差已經(jīng)達到零,通過增加分類器,增強集成模型的泛化誤差仍然可以繼續(xù)減少。因此,與直覺相悖,模型的參數(shù)數(shù)量與其過擬合趨勢并沒有必然的聯(lián)系。

  一個巧妙的觀點是將模型復雜性等同于假設空間的大小,因為較小的空間允許用較短的編碼表征假設。類似理論保證部分中的界限可能被理解成較短的假設編碼有更好的泛化能力。通過在有先驗偏好的空間中對假設進行較短的編碼,我們可以進一步細化這一點。但是把這看作準確率和簡單性之間的權衡的證明則是循環(huán)論證:我們通過設計使偏愛的假設更簡單,如果它們準確率不錯,那是因為偏愛假設的正確,而不是因為在特定表征下假設的「簡單」。

  11.“可表征”并不代表“可學習”!

  所有運用于非固定規(guī)模的模型表征實際上都有「任意函數(shù)都可以使用該表征來表示或無限逼近」之類的相關定理。這使得某表征方法的偏好者常常會忽略其它要素。然而,僅憑可表征性并不意味著模型可以學習。例如,葉節(jié)點多于訓練樣本的決策樹模型就不會學習。在連續(xù)的空間中,通常使用一組固定的原語表征很簡單的函數(shù)都需要無限的分量。


  進一步講,如果評估函數(shù)在假設空間有很多局部最優(yōu)點(這很常見),模型可能就找不到最優(yōu)的函數(shù),即使它是可表征的。給定有限的數(shù)據(jù)、時間及存儲空間,標準的模型只能學到所有可能函數(shù)集的一個很小的子集,且這個子集隨所選的表征方法的不同而不同。因此,關鍵問題不在「模型是否可表示」,而「模型是否可學習」以及嘗試不同的模型(甚至是集成模型)是很重要的。

  12 .“相關性”并非就是“因果關系”!

  相關性并不意味著因果關系這一點被頻繁提起,以至于都不值得再批評。但是,我們討論的某類模型可能只學習相關性,但是它們的結果通常被看作是表征因果關系。有問題嗎?如果有,那么大家為何還這么做?


  通常是不對的,預測模型學習的目標是用它們作為行動的指南。當發(fā)現(xiàn)人們在買啤酒的時候也會買紙尿布,那么把啤酒放在紙尿布旁邊或許會提高銷量。但如果不實際進行實驗則很難驗證。機器學習通常用于處理觀測數(shù)據(jù),其中預測變量不受模型的控制,和實驗數(shù)據(jù)相反(可控的)。一些學習算法也許可以通過觀測數(shù)據(jù)挖掘潛在的因果關系,但是實用性很差。另一方面,相關性只是潛在的因果關系的標識,我們可以用它指導進一步的研究。


上一頁 1 2 下一頁

關鍵詞: 機器學習 算法

評論


相關推薦

技術專區(qū)

關閉