獨家 | 淺析機器學習中的自由度

作者:Jason Browniee

翻譯:張若楠

校對:林鶴衝

本文長度爲2800字,建議閱讀8分鐘

本文介紹了自由度的概念,以及如何判斷統計學模型和機器學習模型中的自由度。

標籤:數據處理

自由度是統計和工程學的重要概念,它通常用於總結在人們在計算樣本統計或統計假設檢驗統計量時所使用的數據量。在機器學習中,自由度可以指模型中的參數數量,例如線性迴歸模型中的係數數量或深度學習神經網絡中的權重數量。

其中值得關注的地方在於,如果機器學習模型中存在過多的自由度(即模型參數),那麼這個模型將會過擬合訓練集,這是統計學上的普遍認識。可以通過使用正則化技術來克服這種問題,比如正則化線性迴歸,以及深度學習神經網絡模型中常用的各種正則化手段。

在本文中,你將進一步瞭解統計學和機器學習中的自由度。閱讀這篇文章後,你會認識到:

  • 自由度通常表示一個模型系統的起控制作用的因子數。

  • 在統計學中,自由度是用於計算某個統計量的數據大小。

  • 在機器學習中,自由度是模型參數的數量。

讓我們開始吧。

概覽

本文分爲以下三部分:

一、什麼是自由度

二、統計學中的自由度

三、機器學習中的自由度

  1. 線性迴歸模型自由度

  2. 線性迴歸誤差自由度

  3. 線性迴歸總自由度

  4. 負自由度

  5. 自由度與過擬合

自由度

 

自由度表示的是一個系統、模型或一個計算中的控制因子數。每個可以變換的獨立參數都是d維空間中的一個維度,這個d維空間定義了可能影響系統的值的範圍。某一個觀測值或樣本點就是該空間中的一個單獨點。

在數學上,自由度通常用希臘字母ν表示,看起來像小寫的“ v”。也可以縮寫爲“ d.o.f”、“ dof”、“ d.f.”,或直接寫作“ df”。自由度是統計學和工程學中的術語,也通用於機器學習。

統計學中的自由度

 

在統計中,自由度是用於計算一個統計量時,所用的一系列數值中可以變換的個數。

自由度:大致來說,就是計算統計所需的最少數據量。實際上,它是一個或多個數字,來近似數據集中觀測值的數量,從而確定統計顯着性。

---《Statistics in Plain English》,2010年第三版P60

它的計算方法是:計算統計量時使用的獨立值的數量減去所計算的統計量的個數,即:

自由度 = 獨立值的數量 統計數量

例如我們有50個獨立樣本,希望計算樣本的統計量,比如均值。我們在計算中使用了全部50個樣本,並且只有一個統計量,因此在這種情況下,均值的自由度計算爲:

自由度 = 獨立值的數量–統計數量

自由度 = 50 – 1

自由度 = 49

自由度通常是數據分佈和統計假設檢驗中需要重點考慮的因素。例如,通常有針對不同自由度查詢臨界值的表格(相比起直接計算統計數據,既簡單又常用)。以上是統計學中的自由度,那麼對於數據擬合的模型(例如在機器學習模型)又如何呢?

 

機器學習中的自由度

 

在預測建模中,自由度通常是指模型中從數據估計的參數數量。這可以涵蓋模型的係數以及用於模型誤差計算的數據。

理解這一點的最佳例子是線性迴歸模型。

 

線性迴歸模型中的自由度

 

下面考慮數據集中有兩個輸入變量的線性迴歸模型。對於每個輸入變量,我們將在模型中給定一個係數,也就是說該模型將具有兩個參數。

該模型如下所示,其中x1和x2是輸入變量,beta1和beta2是模型參數。

yhat = x1 * beta1 + x2 * beta2

該線性迴歸模型具有兩個自由度,因爲它有兩個參數必須從訓練數據集中估計得到。在數據中再增加一列(增加一個輸入變量)將爲模型增加一個度自由度。

模型自由度 = 根據數據估算的參數數量

人們通常根據模型訓練的參數數量來表達一個模型的複雜程度。例如,具有兩個參數的線性迴歸模型的複雜度等於自由度,在這種情況下爲2。相對於較高複雜度的模型,我們通常更喜歡較低複雜度的模型。簡單的模型通常更有普適性。

自由度是對模型估計多少參數的解釋,也是對線性迴歸模型的複雜度的衡量

— P71,應用預測建模 (2013)

 

線性迴歸誤差的自由度

 

訓練集的數據量很重要,並且會影響迴歸模型的總體自由度。

假設使用包含100個樣本的訓練集擬合線性迴歸模型的係數,通過最小化模型預測值與實際值之間的誤差來擬合模型。考慮該模型的誤差時,誤差值對於模型訓練集的每一個樣本具有一個自由度,同時需要減去參數的個數。

在這種情況下,模型誤差的參數個數爲100減2,即98個自由度。

  • 誤差自由度 = 樣本數量 - 參數數量

  • 誤差自由度 = 100 - 2

  • 誤差自由度 = 98

在模型分析的報告中通常要提及線性模型的誤差以及其誤差自由度是有益的,或者至少可以彙報訓練數據中的樣本量,以便確定模型誤差的自由度。

 

線性迴歸的總體自由度

 

線性迴歸模型的總體自由度就是模型自由度與模型誤差自由度的和。

  • 線性迴歸自由度 = 模型自由度+模型誤差自由度

  • 線性迴歸自由度 = 2 + 98

  • 線性迴歸自由度 = 100

通常,自由度等於用於訓練集的樣本量。現在仍然考慮一個包含100個樣本的數據集,但是假設現在我們有70個輸入變量。這意味着該模型現在有70個擬合的參數。因此,模型誤差將爲30 (100 70 ) 自由度。

而模型的總自由度仍等於樣本量,即70 + 30 = 100。

 

負自由度

 

當我們的數據集列多於行時會發生什麼?

例如,我們可能有100行數據和10000個變量,例如100位患者的基因標記。這種情況下,線性迴歸模型將具有10000個參數,這意味着該模型將具有10000個自由度。

我們可以如下計算模型誤差的自由度:

  • 模型誤差的自由度 = 樣本量 參數量

  • 模型誤差自由度 = 100 10000

  • 模型誤差自由度 = -9900

我們可以如下計算總自由度:

  • 線性迴歸自由度 = 模型自由度 + 模型誤差自由度

  • 線性迴歸自由度 = 10000 + (9900) 

  • 線性迴歸自由度 = 100

該模型仍具有100個總自由度,但是模型誤差具有負的自由度。負自由度是有效的。這表明我們計算出的統計量多於我們有的變量。在這種情況下,模型中的參數要多於要訓練集樣本量。這就是所謂的p >> n,即參數遠大於樣本量。

 

自由度和過擬合

當我們的參數量比樣本量大時,模型就存在過擬合訓練集的風險。如果我們將模型中的每個係數都視爲一個控制點就很容易理解。如果在模型中的控制點多於觀察點,則理論上我們可以通過調參來百分百正確的預測實際值。過度學習訓練集的細節,從而降低了準確預測新數據的性能,這就是過擬合的定義。

統計學家們普遍擔憂深度學習神經網絡模型容易過擬合。深度學習模型通常有比樣本量更多的參數(模型權重)。如果按照我們對線性模型的理解,這是很可能過擬合的。然而,通過仔細選擇模型架構和採用正則化技術,可以防止它們過度擬合併保持較低的誤差。

此外,在深度模型中,有效自由度可以與模型中參數的數量分開討論。

如我們所述,對於簡單的分類模型,自由度等於模型中的參數數量。在深度網絡中,自由度通常遠小於模型中參數的數量,深度網絡往往有較小的自由度。

---《深度神經網絡的自由度》2016

因此,統計學家和機器學習從業人員開始傾向於不再使用自由度來表示模型複雜性,以及不用其並判斷是否會過擬合。

對於大多數應用統計學家來說,擬合過程的自由度是其模型複雜度或對數據過擬合可能性的代名詞。[…]而我們認爲恰恰相反,模型的複雜性和自由度或許並沒有很強的對應關係。

---《有效自由度:存在缺陷的指標》2013

 

總結

 

在本文中,你瞭解了統計和機器學習的自由度,要點如下:

  • 自由度通常表示一個系統中的控制點數。

  • 在統計中,自由度是用於計算統計量的樣本個數。

  • 在機器學習中,自由度是模型參數的數量。


如您想與我們保持交流探討、持續獲得數據科學領域相關動態,包括大數據技術類、行業前沿應用、講座論壇活動信息、各種活動福利等內容,敬請掃碼加入數據派THU粉絲交流羣,紅數點恭候各位。

編輯:於騰凱

校對:林亦霖

譯者簡介

張若楠,UIUC統計研究生畢業,南加州傳媒行業data scientist。曾實習於國內外商業銀行,互聯網,零售行業以及食品公司,喜歡接觸不同領域的數據分析與應用案例,對數據科學產品研發有很大熱情。

翻譯組招募信息

工作內容:需要一顆細緻的心,將選取好的外文文章翻譯成流暢的中文。如果你是數據科學/統計學/計算機類的留學生,或在海外從事相關工作,或對自己外語水平有信心的朋友歡迎加入翻譯小組。

你能得到:定期的翻譯培訓提高志願者的翻譯水平,提高對於數據科學前沿的認知,海外的朋友可以和國內技術應用發展保持聯繫,THU數據派產學研的背景爲志願者帶來好的發展機遇。

其他福利:來自於名企的數據科學工作者,北大清華以及海外等名校學生他們都將成爲你在翻譯小組的夥伴。

點擊文末“閱讀原文”加入數據派團隊~

轉載須知

如需轉載,請在開篇顯著位置註明作者和出處(轉自:數據派ID:DatapiTHU),並在文章結尾放置數據派醒目二維碼。有原創標識文章,請發送【文章名稱-待授權公衆號名稱及ID】至聯繫郵箱,申請白名單授權並按要求編輯。

發佈後請將鏈接反饋至聯繫郵箱(見下方)。未經許可的轉載以及改編者,我們將依法追究其法律責任。

點擊“閱讀原文”擁抱組織

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章