常態分佈,也稱為高斯分佈,是統計學和機器學習中最廣泛使用的概率分佈之一。理解其核心特性,即均值和方差,對於解釋數據和建模現實世界現象至關重要。在本文中,我們將深入探討均值和方差與常態分佈的關係,探索它們的重要性以及它們如何定義這一無處不在的概率分佈的形狀和行為。
什麼是常態分佈?
常態分佈是一種連續的概率分佈,特徵是其鐘形曲線,對稱于其均值(μ)。定義其概率密度函數(PDF)的方程為:
其中:
μ:均值(分佈中心),
σ2:方差(分佈的擴散),
σ:標準差(方差的平方根)。
常態分佈的均值
均值(μ)是分佈的中心值。它指示了峰值的位置,並充當分佈對稱的平衡點。
有關均值的要點:
- 分佈中的所有值均勻分佈在μ的周圍。
- 在現實世界數據中,μ通常表示數據集的“平均值”。
- 對於常態分佈,大約68%的數據位於一個標準差(μ±σ)內。
例子:如果一個身高數據集的常態分佈為μ=170厘米,則平均身高為170厘米,且分佈圍繞此值對稱。
另請參閱:數據科學統計:什麼是常態分佈?
常態分佈的方差
方差(σ2)量化了數據圍繞均值的擴散情況。較小的方差表示數據點緊密聚集在μ周圍,而較大的方差則表明擴散更廣。
有關方差的要點:
- 方差是從均值的平均平方偏差,其中xi是個別數據點。
- 標準差(σ)是方差的平方根,使其在與數據相同的單位中更易於解釋。
- 方差控制鐘形曲線的“寬度”。對於較高的方差:
- 曲線變得較平坦且較寬。
- 數據更分散。
例子:如果身高數據集的σ2=25,則標準差(σ)為5,這意味著大多數身高在170±5厘米之內。
另請參閱:常態分佈:終極指南
均值和方差之間的關係
- 獨立性質:均值和方差獨立影響常態分佈的形狀。調整μ會使曲線左右移動,而調整σ2則會改變擴散程度。
- 數據見解:這些參數共同定義了分佈的整體結構,對於預測建模、假設檢驗和決策至關重要。
實際應用
以下是實際應用:
- 數據分析:許多自然現象(例如身高、考試成績)遵循常態分佈,這使得使用μ和σ2進行簡單分析成為可能。
- 機器學習:在高斯朴素貝葉斯等算法中,均值和方差在建模類別概率中發揮了關鍵作用。
- 標準化:通過將數據轉換為μ=0和σ2=1(z分數),常態分佈簡化了比較分析。
可視化均值和方差的影響
- 改變均值:分佈的峰值在水平方向上移動。
- 改變方差:曲線變得更寬或更窄。較小的σ2導致更高的峰值,而較大的σ2則使曲線變平。
在Python中的實現
現在讓我們看看如何計算均值、方差,以及使用Python可視化均值和方差的影響:
1. 計算均值
均值是通過將所有數據點相加並除以點的數量來計算的。以下是在Python中逐步進行的方式:
步驟1:定義數據集
data = [4, 8, 6, 5, 9]
步驟2:計算數據的總和
total_sum = sum(data)
步驟3:計算數據點的數量
n = len(data)
步驟4:計算均值
mean = total_sum / n
print(f”均值: {mean}”)
均值: 6.4
或者我們可以使用統計模組中的內建函數mean來直接計算均值
import statistics
# 定義數據集 data = [4, 8, 6, 5, 9]
# 使用內建函數計算均值
mean = statistics.mean(data)
print(f”均值: {mean}”)
均值: 6.4
2. 計算方差
方差測量數據在均值周圍的擴散。遵循以下步驟:
步驟1:計算與均值的偏差
deviations = [(x – mean) for x in data]
步驟2:平方每個偏差
squared_deviations = [dev**2 for dev in deviations]
步驟3:求和平方偏差
sum_squared_deviations = sum(squared_deviations)
步驟4:計算方差
variance = sum_squared_deviations / n
print(f”方差: {variance}”)
方差: 3.44
我們也可以使用統計模組中的內建方法來計算方差。
import statistics
# 定義數據集 data = [4, 8, 6, 5, 9]
# 使用內建函數計算方差
variance = statistics.variance(data)
print(f”方差: {variance}”)
方差: 3.44
3. 可視化均值和方差的影響
現在,我們來可視化改變均值和方差如何影響常態分佈的形狀:
代碼:
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
步驟1:定義一組x值範圍
x = np.linspace(-10, 20, 1000)
步驟2:定義具有不同均值(mu)但相同方差的分佈
means = [0, 5, 10] # 不同的均值
constant_variance = 4
constant_std_dev = np.sqrt(constant_variance)
步驟3:定義具有相同均值但不同方差的分佈
constant_mean = 5
variances = [1, 4, 9] # 不同的方差
std_devs = [np.sqrt(var) for var in variances]
步驟4:繪製具有不同均值的分佈
plt.figure(figsize=(12, 6))
plt.subplot(1, 2, 1)
for mu in means:
y = norm.pdf(x, mu, constant_std_dev) # 常態PDF
plt.plot(x, y, label=f”均值 = {mu}, 方差 = {constant_variance}”)
plt.title(“改變均值的影響(常數方差)”, fontsize=14)
plt.xlabel(“x”)
plt.ylabel(“概率密度”)
plt.legend()
plt.grid()
步驟5:繪製具有不同方差的分佈
plt.subplot(1, 2, 2)
for var, std in zip(variances, std_devs):
y = norm.pdf(x, constant_mean, std) # 常態PDF
plt.plot(x, y, label=f”均值 = {constant_mean}, 方差 = {var}”)
plt.title(“改變方差的影響(常數均值)”, fontsize=14)
plt.xlabel(“x”)
plt.ylabel(“概率密度”)
plt.legend()
plt.grid()
plt.tight_layout()
plt.show()
另請參閱:數據科學中的6種概率分佈
從圖表得出的結論
改變均值的影響:
- 均值(μ)決定了分佈的中心位置。
- 觀察:隨著均值的變化:
- 整個曲線在x軸上水平移動。
- 整體形狀(擴散和高度)保持不變,因為方差是常數。
結論:均值影響分佈的中心位置,但不影響曲線的擴散或寬度。
改變方差的影響:
- 方差(σ2)決定了數據的擴散或離散程度。
- 觀察:隨著方差的變化:
- 較大的方差產生更寬和更平的曲線,表明數據擴散更大。
- 較小的方差產生更窄和更高的曲線,表明數據擴散較小,並更集中於均值周圍。
結論:方差影響數據在均值周圍的擴散程度,影響曲線的寬度和高度。
要點:
- 均值(μ)決定常態分佈的中心。
- 方差(σ2)決定其擴散。
- 它們共同提供了對常態分佈形狀的完整描述,使得數據建模更加精確。
解釋均值和方差時的常見錯誤
- 誤解方差:較高的方差不一定表示數據更差;它可能反映數據集中自然的多樣性。
- 忽視異常值:異常值可能會扭曲均值並膨脹方差。
- 假定正態性:並非所有數據集都是常態分佈,將基於均值/方差的模型應用於非正態數據可能會導致錯誤。
結論
均值(μ)決定常態分佈的中心,而方差(σ2)控制其擴散。調整均值會使曲線在水平方向上移動,而改變方差則會改變曲線的寬度和高度。它們共同定義了分佈的形狀和行為,使其對於數據分析、建模和在統計學及機器學習中做出明智決策至關重要。
此外,如果您正在尋找在線的AI/ML課程,那麼請探索:認證的AI & ML BlackBelt Plus計劃!
常見問題
Ans. 均值決定了分佈的中心。它表示對稱點和數據的平均值。
Ans. 均值決定了分佈的中心位置,而方差控制其擴散。調整一個不會影響另一個。
Ans. 改變均值會使曲線在x軸上水平移動,但不會改變其形狀或擴散。
Ans. 如果方差為零,所有數據點都是相同的,分佈將崩潰為均值處的單一點。
Ans. 均值和方差定義了常態分佈的形狀,對於統計分析、預測建模和理解數據變異性至關重要。
Ans. 更高的方差導致更平坦、更寬的鐘形曲線,顯示出數據的擴散,而較低的方差則導致更高、更窄的曲線,表明數據在均值周圍更為集中。