機器學習與統計學是互補的嗎?

汪汪發表於2016-01-01

本文中,阿姆斯特丹大學教授Max Welling介紹了機器學習與統計學關係的歷史和未來。本文來自第6屆IMS-ISBA(數理統計研究會和國際貝葉斯協會)圓桌討論。 

作者:Max Welling

在第6屆IMS-ISBA(數理統計研究會-國際貝葉斯協會)會議上,我受邀發表關於「未來50年的資料科學」的個人看法,特別是機器學習與統計學之間的關係。二者之中,機器學習是相對年輕的學科,建立在統計學的基礎上,多年來吸收了統計學的許多哲學思想和技術。例如,在機器學習中,我們幾乎全都遵循極大似然或貝葉斯的方法來進行估計,並使用期望最大化(EM, expectation maximization)來處理隱含變數。並且,在深度學習之前,機器學習的上一次熱潮與非引數化貝葉斯方法有關,而這顯然是統計學的核心領域。與此同時,機器學習與統計學之間還存在著文化差異:統計學更聚焦在統計推斷,也就是從我們看來隨機的樣本中解釋或測試一個總體的性質;而機器學習則更側重於做出預測,即使這個預測缺乏完美的解釋(也叫作「黑盒預測」)。 今天,我們正在目睹機器學習向深度學習的正規化轉變,這個轉變為機器學習與統計學之間的文化差異描繪了一幅美麗的示意圖。這是過去十年中二者相匯的延伸,那時候的工具是圖模型和非引數法,期望最大化和MCMC(馬爾科夫鏈蒙特卡洛)的學習/推理方法如日中天。 深度學習的成功可以用三個因素來解釋:

  1. 計算能力擴充套件(例如通過使用GPU)

  2. 收集和處理海量的資料

  3. 使用具有海量引數的模型,即使這些引數不容易辨別和解釋。

第1個和第2個因素是機器學習研究者的第二天性,因為他們擁有電腦科學(而非數學)的教育背景。第3個因素是前兩個因素作用的結果,聚焦在做出精確的預測,而不是統計推斷。深度學習中的正規化似乎越來越接近下面這樣:收集一個(巨大的)資料集,確定你希望最小化的成本函式,設計一個(巨大的)神經網路結構,使得梯度可以在「端與端之間」傳播,最終應用某種隨機梯度下降法,將成本降到最低,直至時間耗盡。不管你喜不喜歡,令人驚訝的是,在預測這件事上還沒有什麼能打敗這種正規化。  

圖模型獨領風騷10年後,鐘擺似乎再一次擺向了遠離統計學的方向,而更加接近密集計算的方法。想要解釋神經網路架構中的幾十億個引數幾乎不太可能。(人們現在)甚至不大情願在對(預測)結果賦予校訂過的概率,來嘗試量化預測本身的不確定性。

我預測,這兩個學科永遠不會分家。他們分別代表了資料科學中兩個重要的方面,從長期來看應當整合起來。(是的,如果我們不把它們放進兩個不同的學系,或許會更有幫助。)對統計學家,我會說:在今天的世界,如果忽略那些可獲取來進行分析的大量資料,將是愚蠢的(其實很多統計學家都清楚這個事實)。為了分析大量的資料,我們需要考慮資料的儲存和(分散式)計算。我經常聽到統計學系的研究者們失望地抱怨著學生們慘淡的程式設計技能。因此,很有必要將電腦科學的課程引入統計學系的課程表中。那麼,那些很難解釋的複雜黑盒預測模型呢?很顯然,這取決於具體問題是什麼。但是,在「真實世界無限複雜」這個前提下,模型的複雜性肯定會隨著資料量的提升而增加,也許這就是我們需要付出的代價。  

有一個統計學和計算機完美融合的地方,那就是用模擬模擬來表達模型。實際上,大多數科學類的學科正是以這種方法來表達它們問題域中的專業知識,例如天氣預測。所有的變數都有清晰的語義解釋。統計學家的任務就是在這些變數之上進行推斷。然而,這種任務非常需要計算機的參與,並且需要仔細考慮在哪裡以及怎樣使用可獲得的計算能力。這個領域在統計學上被稱為「近貝葉斯法」(ABC, approximate Bayesian computation)。在機器學習中,正在出現一個新的正規化,稱為「概率規劃」(probabilistic programming),旨在解決同樣的推斷任務,但會開發另外的專門程式語言(例如,基於圖模型)並在其中來表達這些模型。  

有一個關鍵問題是,統計學和機器學習是否會在深度學習這樣的領域內融合呢?換句話說,統計學家會使用重度依賴計算機的深度學習模型正規化嗎?機器學習研究者會使用某些統計學工具來豐富這個領域嗎?我的預測是肯定的。以下是原因。對某些特定的應用來說,僅有預測就足夠了,但對很多應用來說並不夠。例如,預測一個網頁上應該顯示什麼廣告。原則上說,做出精確的預測就能創造利潤。然而,確定哪些因素會導致特定的結果(一種統計推斷)將能創造出洞察,並能極大地有助於設計出更好的預測機制,而這些機制更能耐受變化多端的輸入域。同樣的,校準不確定度估計也有助於基於協變數(基於內容的過濾)或過去的使用者點選行為(協同過濾)來做出預測。此外,它還能有助於平衡收益(展示我們知道使用者會喜歡的廣告)和探索(展示能讓我們從使用者身上學到東西的廣告)。  

更一般地說,我認為,當我們在真實世界部署預測機制,也就是讓它們與真人互動並基於此做出決策時,我們需要統計學的工具(例如因果推理和誤差線校準)。例如,一個醫師想要理解為什麼一個演算法會認為某個病人將罹患阿茲海默症,他也很想知道該預測正確的概率有多大。同樣的,無人駕駛汽車必須知道,在它不理解路況的時候應當將方向盤交還給人類司機。這樣,對許多應用來說,為了成功地與人類互動,機器都需要向人們解釋它們的推理過程,包括對置信度的量化。 

最後,機器學習研究者傾向於聚焦在模型中更加實用和方法論的方面(儘管機器學習有一個子領域正是研究理論問題)。結果就是,機器學習領域出現了很多理論基礎相當有限的「公認」方法,或者說這些理論基礎並沒有被深入研究過。例如,儘管許多研究者都在使用或開發半監督式學習方法,但是我們並不清楚這種方法在什麼情況下有效。在我看來,更加傾向理論研究的統計學家們能在這方面對機器學習做出自己的貢獻。 統計學和機器學習交融之處,孕育了許多迷人的資料科學問題。例如:

  1. 做出公允的決策(例如,不根據種族或性別做出決策)

  2. 去除在實地中收集到的資料的偏差(也就是,不遵守隨機抽樣的程式規範產生的偏差)

  3. 保護隱私的預測

  4. 把因果關係和關聯關係分離清楚

  5. 針對高維資料建立良好的統計流程。等等

我希望這兩個學科能繼續意識到他們的工具真的是互補的,只有這樣,在接下來的幾年中,這兩個領域之間的合作才能越來越多。  

來自ics,作者Max Welling(阿姆斯特丹大學),機器之心編譯出品。參與:汪汪,Wei。

相關文章