午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

正態(tài)分布在機器學習中為何如此重要?

 ml_Py 2021-12-08
數(shù)學王子鎮(zhèn)樓

從中心極限定理到正態(tài)分布

眾所周知 :一顆骰子每個面的概率相等兩個骰子面值之和的概率,是兩個骰子獨立事件的概率的和。比如,得到點數(shù)3的概率為:一顆1、一顆2的概率 加上 一顆2、一顆1的概率 之和:

P(1)P(2)+P(2)P(1)=1/6×1/6+1/6×1/6=1/18 

對所擲的點數(shù)求和并將數(shù)值在坐標軸上標記出來,當擲出次數(shù)增大到無限時,坐標軸上的散點就會呈現(xiàn)出“正態(tài)分布”的形式。

模擬 2000 次擲2顆骰子的結(jié)果,完美的正態(tài)分布

這就是概率統(tǒng)計中大名鼎鼎的中心極限定理果樣本量足夠大,則變量均值的采樣分布將近似于正態(tài)分布,而與該變量在總體中的分布無關(guān)根據(jù)中心極限定理,如果一個事物受到多種因素的影響,不管每個因素身是什么分布,它們加總后,結(jié)果的平均值就是正態(tài)分布。

from:高數(shù)叔(gaoshudashu666)

正態(tài)分布是一個在數(shù)學、物理及工程等領(lǐng)域都非常重要的概率分布,在統(tǒng)計學的許多方面有著重大的影響力。概率密度函數(shù)如下:

正態(tài)分布概率密度函數(shù)

正態(tài)分布只依賴于數(shù)據(jù)集的兩個特征:樣本的均值和方差,非常簡單而又容易被解釋和理解。在大多數(shù)自然事件中,當數(shù)據(jù)量大到一定程度時,數(shù)據(jù)往往都近似服從于正態(tài)分布。比如:女身高、壽命、血壓、考試成績、測量誤差等等。

在實際運用中,我們更關(guān)注數(shù)據(jù)集的期望和方差這些特征量。當我們求出了期望與方差,可以利用中心極限定理轉(zhuǎn)換為正態(tài)分布。

正態(tài)分布在機器學習中為何如此重要

在機器學習和深度學習中,我們經(jīng)常要對輸入的數(shù)據(jù)做歸一化或者在隱藏層使用Batch-Normlization(BN)操作,將數(shù)據(jù)范圍縮放到[0,1]或者[-1, 1]之間,主要作用:可以加快神經(jīng)網(wǎng)絡訓練速度,防止過擬合。然而無論做歸一化還是BN處理,雖然將數(shù)據(jù)的均值變?yōu)?,方差變?yōu)?,但是數(shù)據(jù)的整體分布并不一定服從標準的正態(tài)分布(實際數(shù)據(jù)大部分時候都不會是),做歸一化和BN時,我們求出來的均值和方差,并不能說明我們數(shù)據(jù)是服從正態(tài)分布的。

加快機器學習的學習速度

檢查特征是否滿足正態(tài)分布

判斷特征是否符合正態(tài)分布可以使用直方圖、KDE分布圖、Q-Q 圖等等。

直方圖和KDE分布圖可以比較直觀的看出數(shù)據(jù)樣本本身的分布特征,推薦seaborn中的distplot,它的主要功能是繪制單變量的直方圖,且還可以在直方圖的基礎(chǔ)上加入kdeplot和rugplot的部分內(nèi)容,是一個功能非常強大且實用的函數(shù)。

sns.distplot(a, bins=None, hist=True, 
kde=True, rug=False, fit=None, hist_kws=None, 
kde_kws=None, rug_kws=None, fit_kws=None, 
color=None, vertical=False, norm_hist=False, 
axlabel=None, label=None, ax=None)

QQ-圖用于直觀驗證一組數(shù)據(jù)是否來自某個分布,或者驗證某兩組數(shù)據(jù)是否來自同一(族)分布。如果兩個分布相似,則該Q-Q圖趨近于落在y=x線上。如果兩分布線性相關(guān),則點在Q-Q圖上趨近于落在一條直線上,但不一定在y=x線上。

fig = plt.figure()
ax = fig.add_subplot(111)
x = stats.loggamma.rvs(c=2.5, size=500)
stats.probplot(x, dist=stats.loggamma, sparams=(2.5,), plot=ax)
ax.set_title("Probplot for loggamma dist with shape parameter 2.5")

數(shù)據(jù)變化方法:Box-Cox

Box-Cox變換是是統(tǒng)計建模中常用的一種數(shù)據(jù)變換,用于連續(xù)的響應變量不滿足正態(tài)分布的情況。Box-Cox變換之后,可以一定程度上減小不可觀測的誤差和預測變量的相關(guān)性,可以明顯地改善數(shù)據(jù)的正態(tài)性、對稱性和方差相等性,對許多實際數(shù)據(jù)都行之有效。

from scipy import stats
from scipy.stats import norm, skew #for some statistics
#查看SalePrice的skewness
fig=plt.figure(figsize=(15,5))
#pic1
plt.subplot(1,2,1)
sns.distplot(trains['SalePrice'],fit=norm)
(mu,sigma)=norm.fit(trains['SalePrice'])
plt.legend(['$\mu=$ {:.2f} and $\sigma=$ {:.2f}'.format(mu,sigma)],loc='best')
plt.ylabel('Frequency')
plt.subplot(1,2,2)
res=stats.probplot(trains['SalePrice'],plot=plt)
plt.suptitle('Before')
#進行Box-Cox變換
trains.SalePrice,lambda_=stats.boxcox(trains.SalePrice)

然后再看一下變換后的分布情況和QQ圖

效果很顯著,以上,順求三連。

參考

https://www./t/dice-normal https://blog.csdn.net/qq_36653505/article/details/86618648 https://blog.csdn.net/weixin_42743978/article/details/88758003 https://blog.csdn.net/jim_sun_jing/article/details/100665967


加老胡微信,圍觀朋友圈

    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多