統計vs機器學習,資料領域的「少林和武當」

2021-09-20 08:06:55 字數 4501 閱讀 5794

和武俠世界裡有少林和武當兩大門派一樣,資料科學領域也有兩個不同的學派:以統計分析為基礎的統計學派,以及以機器學習為基礎的人工智慧派。

雖然這兩個學派的目的都是從資料中挖掘價值,但彼此「互不服氣」。注重模型**效果的人工智慧派認為統計學派「固步自封」,研究和使用的模型都只是一些線性模型,太過簡單,根本無法處理複雜的現實資料。

而注重假設和模型解釋的統計學派則認為人工智慧派搭建的模型缺乏理論依據、無法解釋,很難幫助我們通過模型去理解資料。

這一紛爭由來已久,很多研究者都對兩種研究方法的差異做過論述,最著名的一篇**statistical modeling: the two cultures 來自random forrest的發明人leo breiman。

這篇文章發表於2023年,指出了當時出現在統計學中的另外一種文化,以及代表這種文化的兩種模型,隨機森林和svm,並指出這兩個模型顛覆了人們對於模型多樣性,模型複雜性-**準確率矛盾,和維度災難的傳統認知,認為我們應該擁抱新文化,新模型。

而本文將從資料科學的研究目標和挑戰聊起,用幾個簡單的例子,對比資料科學圈這兩大門派之爭。

01 目標

資料科學是一門最近大火的新興學科。這門學科的目標十分簡單,就是如何從實際的生活中提取出資料,然後利用計算機的運算能力和模型演算法從這些資料中找出一些有價值的內容,為商業決策提供支援。

傳統的資料分析手段是所謂的商業智慧型(business intelligence)。這種方法通常將資料按不同的維度交叉分組,並在此基礎上,利用統計方法分析每個組別裡的資訊。

比如商業智慧型中最常見的問題是:「過去3個月,通過搜尋引擎進入**並成功完成註冊的新使用者裡,年齡分布情況如何?若將上面的使用者群按年齡段分組,各組中有多大比例的使用者在完成註冊後,完成了至少一次消費?」

這樣的分析是非常有用的,能揭示一些資料的直觀資訊。但這樣的方法如同盲人摸象,只能告訴我們資料在某個區域性的情況,而不能給出資料的全貌。而且對於某些問題,這樣的結果顯得有些不夠用。比如使用者註冊之後完成消費的比例與哪些因素相關?又比如對於某個客戶,他對某一產品的估計是多少?在這些場景下,我們就需要更加精細的資料分析工具—機器學習和統計模型。這些內容正是資料科學的核心內容。

圖102 挑戰

在資料科學實踐中,我們將使用較為複雜的機器學習或統計模型對資料做精細化的分析和**。這在工程實現和模型搭建兩方面都提出了挑戰,如圖2所示。

工程實現的挑戰

資料科學在工程上的挑戰可以大致分為3類:特徵提取、矩陣運算和分布式機器學習。

(1)乙個建模專案的成功在很大程度上依賴於建模前期的特徵提取。它包含資料清洗、資料整合、變數歸一化等。經過處理後,原本攪作一團的原始資料將被轉換為能被模型使用的特徵。這些工作需要大量的自動化程式來處理,特別是面對大資料時,因為這些大資料無法靠「人眼」來檢查。在乙個典型的建模專案中,這部分花費的時間遠遠大於選擇和編寫模型演算法的時間。

(2)對於乙個複雜的數學模型,計算機通常需要使用類似隨機梯度下降法的最優化演算法來估算它的模型引數。這個過程需要大量的迴圈,才能使引數到達收斂值附近。因此即使面對的是很小的資料集,複雜的模型也需要很長時間才能得到正確的引數估計。而且模型在結構上越複雜,需要估計的引數也就越多。

對這些大量的模型引數同時做更新,在數學上對應著矩陣運算。但傳統的cpu架構並不擅長做這樣的運算,這導致模型訓練需要耗費大量的時間。為了提高模型的訓練速度,需要將相應的矩陣運算(模型引數的估算過程)移植到gpu或者特製的計算晶元上,比如tpu。

(3)近年來,隨著分布式系統的流行和普及,儲存海量資料成為了業界的標配。為了能在這海量的資料上使用複雜模型,需要將原本在一台機器上執行的模型演算法改寫成能在多台機器上並行執行,這也是分布式機器學習的核心內容。

圖2模型搭建的挑戰

資料科學對模型搭建的要求也可以總結為3點:模型**效果好、模型引數是穩定且「正確」的、模型結果容易解釋。

(1)模型的**效果好,這是資料科學成功的關鍵。而乙個模型的**效果取決於它的假設是否被滿足。從數學上來看,任何乙個模型除去假設部分,它的其他推導都是嚴謹的數學演算,是無懈可擊的。因此模型假設就像模型的阿喀琉斯之踵,是它唯一的薄弱環節。當問題場景或資料滿足模型假設時,模型的效果一定不會差,反之,則**效果就無法保證了。

但在實際生產中,針對乙個具體的問題,幾乎不可能找到乙個模型,它的假設被百分之百地滿足。這時就需要避重就輕,通過特徵提取等手段,盡量避免違反那些對結果影響很大的假設。這就是為什麼說「所有模型都是錯的,但是,其中有一些是有用的」。

(2)除了被用來對未知資料做**外,模型另乙個重要的功能就是對已有資料做分析,比如哪個變數對結果的影響最大或者某個變數對結果到底是正向影響還是負向影響等。這些分析結果在很大程度上依賴於模型引數的估計值,後者的準確與否直接決定分析結果的質量。

但問題是,模型引數的估計值是不太「可靠」的。例如從訓練資料中隨機抽取兩個不完全一樣的資料子集a和b,然後用這兩個資料集分別訓練同乙個模型,得到的引數估計值幾乎不可能完全一樣。

從數學的角度來看,這說明模型引數的估計值其實是乙個隨機變數,具體的值取決於訓練模型時使用的資料。於是我們要求這些估計值是「正確」的:圍繞引數真實值上下波動(也就是說它們的期望等於引數真實值)。我們還要求這些估計值是穩定的:波動的幅度不能太大(也就是說它們的方法比較小)。這樣就可以把引數估計值的「不可靠性」控制在可接受的範圍內。

參與這個過程的不僅有懂模型的資料科學家,還有更多非技術的業務人員。而後者往往是使用模型的主力,比如根據反欺詐系統的結果,對可疑使用者進行人工審核,又或者向客戶解釋為什麼他的車險比別人貴。為了幫助他們更好地理解模型結果,需要將複雜深奧的模型翻譯成直觀的普通語言。這要求模型是能被解釋的,而且是容易被解釋的。

03 兩大門派

在學術上,通常將統計學派的模型稱為資料模型(data model),將人工智慧派的模型稱為演算法模型(algorithm model),如圖3所示。

資料模型的建模思路是假設資料的產生過程是已知的(或者是可以假設的),可以通過模型去理解整個過程。因此,這類模型通常具有很好的可解釋性,分析其穩定性的數學工具也很多,能很好地滿足上面提到的後兩點。但是在實際生產中,這些模型的**效果並不好,或者更準確地說,單獨使用時,**效果並不理想。

圖3演算法模型,也就是人工智慧的核心內容,它們假設資料的產生過程是複雜且未知的。建模的目的是盡可能地從結構上「模仿」資料的產生過程,從而達到較好的**效果。但代價是模型的可解釋性很差,而且模型穩定性的分析方法也不多。

事實上,統計學和機器學習在某些方面具有極好的互補性。因此在實際的生產中,為了將乙個資料科學專案做得盡可能完美,我們需要將這兩種思路結合起來使用。比如使用機器學習的模型對資料建模,然後借鑑資料模型的分析工具,分析模型的穩定性和給出模型結果的直觀解釋。

模型幻覺

雖然資料科學領域兩大門派的模型很多,但它們都特別依賴所使用的資料。但是資料就百分之百可靠嗎?下面就來看兩個資料「說謊」的例子。

圖4讀者可能會覺得上面這個例子太過簡單了,只需要使用一些簡單的統計指標,比如平均值或每個月的增長率,就可以避免錯誤的結論。那麼下面來看乙個複雜一點的例子。

當得到如圖5所示的兩組資料時,我們應該如何用模型去描述資料的變化規律呢?對於圖5a,資料的圖形有點像拋物線,因此選擇二次多項式擬合是乙個比較合理的選擇。於是假設模型的形式為y=(x-a)(x-b)。然後使用資料去估計模型中的未知引數a,b。得到的結果還不錯,模型的**值與真實值的差異並不大。

圖5對於圖5b,資料之間有明顯的線性關係,所以使用線性回歸對其建模,即y=ax+b。與上面類似,得到的模型結果也不錯。

根據上面的分析結果,可以得出如下的結論,圖5a中的x與y之間是二次函式關係,而圖5b的x與y之間是線性關係。但其實兩幅圖中的變數y都是與x無關的隨機變數,只是因為觀察視窗較小,收集的資料樣本太少,讓我們誤以為它們之間存在某種關係。如果增大觀察視窗,收集更多的資料,則可以得到完全不同的結論。

如圖6所示,如果將收集的樣本數從20增加到200,會發現圖6a中的資料圖形更像是乙個向下開口的拋物線,這與圖5a中的結論完全相反。而圖6b中也不再是向下的直線,而與開口向上的拋物線更加相似。

圖6上面的例子就是所謂的模型幻覺:表面上找到了資料變動的規律,但其實只是由隨機擾動引起的數字巧合。因此在對搭建模型時,必須時刻保持警惕,不然很容易掉進資料的「陷阱」裡,被資料給騙了,而這正是資料科學的研究重點。這門學科會「小心翼翼」地處理它的各種模型,以確保模型能擺脫資料中隨機因素的干擾,得到穩定且正確的結論。

原文發布時間為:2018-06-26

機器學習周志華 機器學習的應用領域

多 圖形學 網路通訊等計算機應用技術領域,尤其是計算機視覺 自然語言處理。交叉學科的技術支撐,例如生物資訊學,它的研究涉及從 生命現象 到 規律發現 的整個過程,包括資料處理整個流程,其中 資料分析 就是機器學習的舞台。資料科學的核心即通過分析資料獲取價值。機器學習是大資料時代必不可少的核心技術,因...

機器學習的統計基礎

從總體抽取乙個樣本量為n的樣本 x1 x2,xn x1,x2,xn x1,x2,xn 後,為了將分散在樣本中的資訊集中起來,需要構造出不同的樣本函式t x 1,x2 x n t x1,x2,xn t x1,x2,xn 稱為統計量。統計量與樣本概念不同,它是關於樣本的函式,並不依賴於總體的未知引數。x...

AutoML與機器學習領域的理解

featuretools如你所言能夠自動完成特徵工程,它屬於automl範疇,接下來我還是主要談automl1 吧。由於機器學習應用高門檻和應用範圍的廣闊,所以很多組織於2017和2018年開始自動化的機器學習嘗試,想降低機器學習應用的門檻,讓非專業人員也能夠應用。機器學習的工作流通常為資料清洗 特...