跳到主内容
快讯直播
AI智模界
AI 词典

核密度估计 KDE:不给分布假设,也能画出密度曲线

一句话定义:核密度估计(Kernel Density Estimation,简称 KDE)是一种非参数方法——它不预设数据服从正态分布之类的固定形状,而是直接用现有的数据点"叠加"出一条平滑的概率密度曲线。

原理:像在每颗豆子上盖一座小山包

想象你把 100 颗豆子随手撒在桌面上,想知道豆子在哪里最密集。最直觉的做法是画直方图:把桌面切成若干格子,数每格里有多少颗。但直方图很烦人——格子宽度换一下,图形就从"双峰"变成"单峰",而且永远是锯齿状的。

KDE 换了个思路:不给豆子归格子,而是给每颗豆子头上盖一座小小的"山包"(核函数,kernel,最常见的是高斯核,也就是一条钟形曲线)。100 颗豆子就有 100 座小山包,把它们全部叠起来,得到一条光滑的曲线:豆子扎堆的地方山包互相堆高,孤零零的豆子只留下一道小土丘。

用公式说就是,对每个位置 x,把每个数据点 xᵢ 处的核函数值加总再平均:

p̂(x) = 1/(n·h) · Σ K((x − xᵢ)/h)

其中 h 叫带宽(bandwidth),是 KDE 唯一的关键旋钮。它是山包的"胖瘦":h 太小,曲线变成一排尖刺,每个数据点自成一峰(过拟合);h 太大,山包糊成一片,本来两个峰也被揉成一个(欠拟合)。所以带宽的选择往往比核函数形状更重要,常用交叉验证或经验法则来定。具体实现里的默认值,以官方文档为准。

和相邻概念的区别

方法是否假设分布形状输出形态关键旋钮
参数化估计(如拟合正态)是,假定属于某个分布族几个参数的解析式分布族选择
直方图否阶梯状柱形箱宽与起点
KDE否平滑曲线带宽 h
K 近邻密度估计(kNN)否局部密度值邻居数 k

一句话:直方图的坑是"分箱不连续",KDE 的坑是"带宽很敏感",两者都是不假设分布的非参数做法。

对从业者意味着什么

  • 探索性分析:拿到一列连续特征(用户停留时长、订单金额),先用 KDE 看形状是单峰、双峰还是长尾,比只看均值方差信息量大得多。
  • 异常检测:KDE 给出的是密度,密度极低的位置就是"罕见样本",天然可作为异常分数。
  • 生成与分类:KDE 本质上是一个非参数生成模型,能从估计出的密度里采样;朴素贝叶斯的 KDE 变体也是用同样思路处理连续特征。
  • 注意维度灾难:维度一高,需要的样本量会爆炸式增长。实践中 KDE 多见于一维、二维可视化或低维特征,别指望它直接啃几百维的原始数据。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。