統計學和機器學習是兩個密切相關的領域。實際上,兩者之間的界限有時可能非常模糊。但是,有一些方法顯然屬于統計領域,不僅在機器學習項目中有用,而且非常有價值。可以公平地說,需要統計方法才能有效地通過機器學習預測建模項目工作。
統計學是先決條件
機器學習和統計學是兩個緊密相關的研究領域。因此許多統計學家將機器學習稱為“ 應用統計學 ”或“ 統計學習 ”,而不是以計算機科學為中心的名稱。
所有的機器學習初學者都應該學習一點統計學的知識。下面有幾個精心挑選的例子來具體說明。
從一本流行的應用機器學習書《 Applied Predictive Modeling 》的開頭看一下這句話:
… the reader should have some knowledge of basic statistics, including variance, correlation, simple linear regression, and basic hypothesis testing (e.g. p-values and test statistics)。
— Page vii, Applied Predictive Modeling, 2013
這是流行的《 Introduction to Statistical Learning 》一書中的另一個示例:
We expect that the reader will have had at least one elementary course in statistics.
— Page 9, An Introduction to Statistical Learning with Applications in R, 2013.
即使不是統計學的先決 條件,也需要一些原始的先驗知識,這可以從廣泛閱讀的“ Programming Collective Intelligence ”的引用中看出:
… this book does not assume you have any prior knowledge of […] or statistics. […] but having some knowledge of trigonometry and basic statistics will help you understand the algorithms.
— Page xiii, Programming Collective Intelligence: Building Smart Web 2.0 Applications, 2007.
為了能夠理解機器學習,需要對統計信息有一些基本的了解。
想要知道為什么會這樣,我們必須了解為什么首先需要統計領域。
為什么要學習統計?
原始觀測值本身就是數據,但它們不是信息或知識。
數據引發了一些問題,例如:
最常見或最期望的觀察是什么?
觀察的極限是什么?
數據是什么樣的?
盡管它們看起來很簡單,但必須回答這些問題才能將原始觀察結果轉化為我們可以使用和共享的信息。
除了原始數據,我們還可以通過設計實驗來收集觀察數據。從這些實驗結果中,我們可能會遇到更復雜的問題,例如:
哪些變量最相關?
兩次實驗的結果有何不同?
差異是真實存在的還是因為數據噪聲產生的?
這些問題很重要。問題的答案對項目,利益相關者以及有效的決策都是至關重要的。
需要統計方法來找到關于數據的問題的答案。
我們可以看到,為了了解用于訓練機器學習模型的數據并解釋測試不同機器學習模型的結果,都需要統計方法。
這只是冰山一角,因為預測建模項目中的每個步驟都將需要使用統計方法。
什么是統計學?
統計學是數學的一個子領域。
它指的是處理數據和使用數據回答問題的方法的集合。
Statistics is the art of making numerical conjectures about puzzling questions. […] The methods were developed over several hundred years by people who were looking for answers to their questions.
— Page xiii, Statistics, Fourth Edition, 2007.
這是因為該領域包括處理數據的方法包,對于初學者而言,它看起來像是很大的東西,而且是不確定的。很難看出屬于統計方法的方法與屬于其他研究領域的方法之間的界限。通常,技術既可以是統計中的經典方法,又可以是用于特征選擇或建模的現代算法。
盡管統計工作知識不需要深入的理論知識,但一些重要的且易于理解的定理可以為統計和概率之間的關系提供有價值的基礎。
兩個例子包括大數定律和中心極限定理;第一個有助于理解為什么較大的樣本通常更好,第二個則為我們如何比較樣本之間的期望值(例如平均值)提供了基礎。
對于我們在實踐中使用的統計工具,將統計領域分為兩大類方法可能會有所幫助:用于匯總數據的描述性統計和用于從數據樣本中得出結論的推論統計。
Statistics allow researchers to collect information, or data, from a large number of people and then summarize their typical experience. […] Statistics are also used to reach conclusions about general differences between groups. […] Statistics can also be used to see if scores on two variables are related and to make predictions.
Pages ix-x, Statistics in Plain English, Third Edition, 2010.
描述統計
描述性統計指的是將原始觀察匯總為我們可以理解和共享的信息的方法。
通常,我們將描述性統計視為對數據樣本的統計值的計算,以便總結數據樣本的屬性,例如共同的期望值(例如,均值或中位數)和數據的傳播范圍(例如,方差或標準差)。
描述性統計信息還可能涵蓋可用于可視化數據樣本的圖形方法。圖表和圖形可以對觀察的形狀或分布以及變量之間如何相互關聯提供有用的定性理解。
推論統計
推論統計是一些方法的統稱,這些方法可以幫助從較小的一組稱為樣本的觀測值中量化域或總體的屬性。
通常,我們認為推論統計是根據總體分布估算的數量,例如期望值或傳播數量。
更復雜的統計推斷工具可用于量化在給定假設的情況下觀察數據樣本的可能性。這些通常被稱為統計假設檢驗的工具,其中檢驗的基本假設稱為原假設。
給定我們可以假設的假設范圍以及我們可能施加在數據上的約束條件,以提高檢驗結果正確的能力或可能性,推理性統計方法的例子很多。
統計方法在機器學習項目中的使用示例
在下面的內容中,展示了統計方法的一些特定示例,這些示例在預測建模問題的關鍵步驟中非常重要。可以公平地說,需要統計方法才能有效地通過機器學習方法完成預測建模的工作。
1.問題框架
在預測建模問題中較大的影響力也許就是問題的框架。
這是問題類型的選擇,例如回歸或分類,也許是問題的輸入和輸出的結構和類型。
問題的框架并不總是很明顯。對于某個領域的新手,可能需要對該領域中的觀察結果進行大量探索。
對于可能不從常規角度看問題的領域專家,他們也可能會從多個角度考慮數據而獲取一些有用信息。
可以在問題分類期間幫助探索數據的統計方法包括:
探索性數據分析。進行匯總和可視化以探索數據的臨時視圖。
數據挖掘。自動發現數據中的結構化關系和模式。
2.數據理解
數據理解意味著對變量的分布以及變量之間的關系有密切的了解。
其中一些知識可能來自領域專業知識,或者需要領域專業知識才能進行解釋。盡管如此,研究領域的專家和新手都將從實際處理領域問題中的實際觀察有所受益。
統計方法的兩個大分支用于幫助理解數據。他們是:
摘要統計。使用統計量總結變量之間的分布和關系的方法。
數據可視化。使用圖表和圖形等可視化方法總結變量之間的分布和關系的方法。
3.數據清理
來自某個領域的觀察通常不是原始的。
盡管數據是數字的,但會受到可能破壞數據保真度的過程的影響,進而可能會影響使用該數據的任何下一步過程或模型。
一些示例包括:
數據損壞。
數據錯誤。
數據丟失。
識別和修復數據問題的過程稱為數據清理
統計方法用于數據清理,例如:
離群值檢測。識別與分布中的期望值相差甚遠的觀測值的方法。
歸責。修復或填充觀測值中損壞或缺失的方法。
4.數據選擇
建模時,并非所有觀察值或所有變量都可能相關。
將數據范圍縮小到對做出預測最有用的那些元素的過程稱為數據選擇。
用于數據選擇的兩種統計方法包括:
數據樣本。從較大的數據集中系統創建較小的代表性樣本的方法。
特征選擇。自動識別與結果變量最相關的那些變量的方法。
5.數據準備
數據通常不能直接用于建模。
通常需要進行一些轉換,以更改數據的形狀或結構,使其更適合問題的選定框架或學習算法。
使用統計方法進行數據準備。一些常見的示例包括:
縮放比例。標準化和歸一化等方法。
編碼。整數編碼和One-hot編碼等方法。
轉換。諸如Box-Cox方法之類的冪變換方法。
6.模型評估
預測建模問題的關鍵部分是評估學習方法。
在對模型訓練期間未看到的數據進行預測時,通常需要估計模型的技能。
通常,訓練和評估預測模型的過程的計劃稱為實驗設計。這是統計方法的整個子領域。
實驗設計。設計系統實驗以比較自變量對結果的影響的方法,例如選擇機器學習算法來提高預測精度。
作為實施實驗設計的一部分,使用方法對數據集進行重新采樣,以便經濟地利用可用數據,從而估算模型的技能。
重采樣方法。為了訓練和評估預測模型而將數據集系統地分為子集的方法。
7.模型超參數配置
給定的機器學習算法通常具有一整套超參數,這些超參數允許使用者根據特定問題而定制學習方法。
超參數的配置在本質上通常是經驗性的,而不是分析性的,需要大量的實驗才能評估不同的超參數的取值對模型效果的影響。
使用兩個統計子字段之一對不同的超參數配置之間的結果進行解釋和比較:
統計假設檢驗。給定對結果的假設或期望,量化觀察結果的可能性的方法(使用臨界值和p值表示)。
估計統計。使用置信區間量化結果不確定性的方法。
8.模型選擇
對于給定的預測建模問題,可能有不止一個機器學習算法適合于此問題。選擇一種方法作為解決方案的過程稱為模型選擇。這可能涉及項目利益相關者的一套標準,也包括對問題評估方法的估計技能的仔細解釋。
與模型配置一樣,出于模型選擇的目的,可以使用兩類統計方法來解釋不同模型的估計技能。他們是:
統計假設檢驗。給定對結果的假設或期望,量化觀察結果的可能性的方法(使用臨界值和p值表示)。
估計統計。使用置信區間量化結果不確定性的方法。
9.模型介紹
一旦對最終模型進行了訓練,就可以在使用或部署最終模型以對實際數據進行實際預測之前將其呈現給利益相關者。
呈現最終模型的一部分涉及呈現模型的估計方法。
估計統計領域的方法可用于通過使用公差區間和置信區間來量化機器學習模型的估計技能中的不確定性。
估計統計。通過置信區間量化模型技能不確定性的方法。
10.模型預測
最后,是時候開始使用最終模型對我們不知道實際結果的新數據進行預測了。
作為進行預測的一部分,量化預測的置信度很重要。
就像模型表示過程一樣,我們可以使用估計統計領域的方法來量化此不確定性,例如置信區間和預測區間。
估計統計。通過預測區間量化預測不確定性的方法。
從上面的例子可以看到統計方法在整個預測建模項目過程中的重要性。 探索性的數據分析,數據匯總和數據可視化可用于幫助構建預測性建模問題并更好地理解數據。統計方法可用于清理和準備用于建模的數據。統計假設檢驗和估計的統計數據可以在模型的選擇和從最終模型展示的技能和預測幫助。
責任編輯:ct
評論