統計學習的基本概念(復習篇)
-
總體(population):根據研究目的確定的同類對象的全體(集合) 樣本(sample):從總體中隨機抽取的部分具有代表性的研究對象。
-
參數(Parameter):反映總體特征的統計指標,如總體均數、標准差等,是固定的常量。
-
統計量(statistic):反映樣本特征的統計指標,如樣本均數、標准差等,是在參數附近波動的隨機變量。
-
統計資料分布(statistical distribution):定量(計量)資料、定性(計數)資料、等級資料。
計量資料統計描述:
- 集中趨勢:均數(mean)、中位數(median)、眾數(mode)。
- 離散趨勢:極差(range)、四分位間距(interquartile range)、標准差(standard deviation)(或方差(variance))、變異系數(variable coefficient)。
注:四分位數(Quartile)是統計學中分位數的一種,即把所有數值由小到大排列並分成四等份,處於三個分割點位置的數值就是四分位數。第三四分位數與第一四分位數的差距又稱四分位距(InterQuartile Range, IQR)。
在概率論和統計學中,變異系數,又稱“離散系數”(英文:coefficient of variation),是概率分布離散程度的一個歸一化量度,其定義為標准差與平均值之比
二項分布(Bionomial Distribution):
-
說起二項分布(binomial distribution),不得不提的前提是伯努利試驗(Bernoulli experiment),也即n次獨立重復試驗。伯努利試驗是在同樣的條件下重復、相互獨立進行的一種隨機試驗。
伯努利試驗的特點是:
(1)每次試驗中事件只有兩種結果:事件發生或者不發生,如硬幣正面或反面,患病或沒患病;
(2)每次試驗中事件發生的概率是相同的,注意不一定是0.5;
(3)n次試驗的事件相互之間獨立。
舉個實例,最簡單的拋硬幣試驗就是伯努利試驗,在一次試驗中硬幣要么正面朝上,要么反面朝上,每次正面朝上的概率都一樣p=0.5,且每次拋硬幣的事件相互獨立,即每次正面朝上的概率不受其他試驗的影響。如果獨立重復拋n=10次硬幣,正面朝上的次數k可能為0,1,2,3,4,5,6,7,8,9,10中的任何一個,那么k顯然是一個隨機變量,這里就稱隨機變量k服從二項分布。
n次拋硬幣中恰好出現k次的概率為:P(X=k) = C(n,k) * pk*(1-p)n-k
這就是二項分布的分布律,記作X~B(n,p),其中C(n,k)是組合數,在數學中也叫二項式系數,這就是二項分布名稱的來歷。判斷某個隨機變量X是否符合二項分布除了滿足上述的伯努利試驗外,關鍵是這個X是否表示事件發生的次數。二項分布的數學期望E(X)=np,方差D(X)=np*(1-p)。
泊松分布(poisson distribution)
泊松分布描述的是一個離散隨機事件在單位時間內發生的次數, 其對應的場景是我們統計已知單位事件內發生某事件的平均次數λ, 那么我們在一個單位事件內發生k次的概率是多大呢?
比如說醫院產房里統計歷史數據可知, 平均每小時出生3個寶寶,那么在接下來的一個小時內, 出生 0 個寶寶, 1 個寶寶, …, 3 個寶寶, …10 個寶寶, n 個寶寶的概率分別是多少呢? 泊松分布給出了定量的結果 :
其中 P(X=k) 描述的就是在單位時間內事件 X發生 k次的概率, λ代表在單位時間內事件發生的平均次數, 也就是泊松分布的期望, 同時也是方差.
一個場景可以用泊松分布來描述, 需要滿足三個條件:
-
-
均值穩定. 即 λ在任意划定的單位時間長度內,應該是一個穩定的數值.
-
事件獨立. 事件之間相互獨立, 若相關, 則泊松分布失效.
-
在一個極小的時間內, 事件發生的次數應趨近於0. 比如說:產房平均 1 小時出生 3 個寶寶, 那我任意指定1ms, 那這1ms 內出生的寶寶數趨近於 0 .
-
大數定理(Law of large numbers)
設隨機變量$X_1,X_2,X_3,...,X_n$是一列互相獨立的隨機變量(或者兩兩不相關),並且分別存在期望$E(X_k)$,則對於任意小的正數ε有: $$ \lim_{x→∞}P(|\frac{1}{n}\sum_{k=1}^nX_k-\frac{1}{n}\sum_{k=1}^nE(X_k)|<ε) $$ 理解:隨着樣本數量n的增加,樣本的平均數(總體中的一部分)將接近於總體樣本的平均數,所以在統計推斷中一般使用樣本平均數估計總體平均數的值。
下面我們用簡單的python代碼來客觀展現出大數定理:
import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt # 防止中文亂碼 mpl.rcParams['font.sans-serif']=[u'simHei'] mpl.rcParams['axes.unicode_minus']=False # 定義數據量大小 numberSize = 200 # 生成服從正態分布的隨機數據,其均值為0 randData = np.random.normal(scale=100, size=numberSize) # 保存隨機每增加一個數據后算出來的均值 randData_average = [] # 保存每增加一個數據后的數據和 randData_sum = 0 # 通過循環計算每增加一個數據后的均值 for index in range(len(randData)): randData_average.append((randData[index] + randData_sum) / (index + 1.0)) # 定義作圖的x值和y值 x = np.arange(0,numberSize,1) y = randData_average # 作圖設置 plt.title('大數定律') plt.xlabel('數據量') plt.ylabel('平均值') # 作圖並展示 plt.plot(x,y) plt.plot([0,numberSize], [0,0], 'r') plt.show()
結果如下:
由上圖即可進一步驗證我們的結論,隨着數據量的增加,均值越來越接近實際均值0。
即當我們的樣本數據量足夠大的時候,我們就可以用樣本的平均值來估計總體平均值。
- 正態分布(Normal distribution):正態分布又叫高斯分布,若隨機變量$X$服從一個數學期望為μ、方差為σ2的正態分布,記為N(μ,σ2):(這個我單寫過一章學習)
其概率密度函數為正態分布的期望值μ決定了其位置,其標准差σ決定了分布的幅度。當μ = 0,σ = 1時的正態分布是標准正態分布