zoukankan      html  css  js  c++  java
  • 十三、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)带宽过宽将导致估计呈现高偏差(即欠拟合),而且带宽较大的核还会破坏数据结构

      

      机器学习中超参数的调优通常都是通过交叉检验完成的。

      

      

     

  • 相关阅读:
    pip安装flask问题解决
    GRE新东方推荐学习方法(2010年左右)
    使用eclipse IDE遇到的问题
    2014年互联网大会(商业价值,北京,7月)
    Indexing the World Wide Web: the Journey So Far阅读笔记
    Big Data Opportunities and Challenges(by周志华)论文要点
    spark常用算子总结
    使用Faster R-CNN做目标检测
    Oracle 性能调优 SQL_TRACE
    Oracle 性能调优 10053事件
  • 原文地址:https://www.cnblogs.com/nuochengze/p/12542515.html
Copyright © 2011-2022 走看看