十三、Sklearn核密度估計


參考url:

https://jakevdp.github.io/PythonDataScienceHandbook/05.13-kernel-density-estimation.html

密度評估器是一種利用D維數據集生成D維概率分布估計的算法,GMM算法用不同高斯分布的加權匯總來表示概率分布估計。核密度估計(kernel density estimation,KDE)算法將高斯混合理念擴展到了邏輯極限(logical extreme),它通過對每個點生成高斯分布的混合成分,獲得本質上是無參數的密度評估器。

1、KDE的由來:直方圖

  密度估計評估器是一種尋找數據集生成概率分布模型的算法。

  一維數據的密度估計——直方圖,是一個簡單的密度評估器,直方圖將數據分成若干區間,統計落入每個區間內的點的數量,然后用直觀的方式將結果可視化。

  

 

  

 

   

 

  

 

   

 

   

2、核密度估計的實際應用

  核密度估計的自由參數是核類型(kernel)參數,他可以指定每個點核密度分布的形狀。

  核帶寬(kernel bandwidth)參數控制每個點的核的大小

  核密度估計算法在sklearn.neighbors.KernelDensity評估器中實現,借助六個核中的任意一個核、二三十個距離量度就可以處理具有多個維度的KDE。

  由於KDE計算量非常大,因此Scikit-Learn評估器底層使用了一種基於樹的算法,可以利用atol(絕對容錯)和rtol(相對容錯)參數來平衡計算時間與准確性,可以用Scikit-Learn的標准交叉檢驗工具來確定自由參數核帶寬。

  

 

   通過交叉檢驗選擇帶寬

  在KDE中,帶寬的選擇不僅對找到合適的密度估計非常重要,也是在密度估計中控制偏差-方差平衡的關鍵:

  (1)帶寬過窄將導致估計呈現高方差(即過擬合),而且每個點的出現或缺失都會引起很大的不同

  (2)帶寬過寬將導致估計呈現高偏差(即欠擬合),而且帶寬較大的核還會破壞數據結構

  

  機器學習中超參數的調優通常都是通過交叉檢驗完成的。

  

 

  

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM