前言本文主要分两个部分来讨论 Parzen 窗,第一个部分讨论其基本思想,第二个部分则将 Parzen 窗的基本形式展示出来
正文
一、Parzen窗方法的基本概念
一名老师召集了几名学生玩一个游戏。
老师告诉这些学生们:“现在在你们每个人的面前有一纸箱子,里面有三种颜色的衣服,分别是:红、黄、蓝。现在请你们各自挑选一件自己喜欢的衣服穿在身上,然后到我这儿来统计一下。”
当学生选好自己的衣服,并穿上之后,老师便开始一个个的记录同学们所选择的衣服。我们现在假设有
名同学。这
名同学中,有
人穿了红衣服,
人穿了黄衣服,剩下的都穿了蓝衣服。
接下来,我们把这
名学生陆续编号为
。最后,我们构建一个函数
满足条件:当
为红衣服时,该函数的值为
,否则,函数值为
。同理,构建一个函数
满足:当
为黄衣服时,该函数的值为
,否则,函数值为
。
听到这儿,感觉挺无聊吧?请再稍微忍一下,因为我已经开始揭露谜底了。
通过以上的定义,我们可以直接近似估计出这
名学生选择红衣服的概率密度:
,穿黄衣服的概率:
,以及穿蓝衣服的概率
。
看到这儿了,读者可能会想:这不扯犊子吗?讲这么简单的东西,这不就是小学时求概率所用到的直方图吗?
先别急,我会告诉你,这就是 Parzen 窗。
上面所提到的例子,若是花在直方图上,也只会有三根孤零零的直方柱。这是因为上述例子只有三类,所以我们也只求出三种概率密度。
如果我们现在引入更多的类别,那么直方图里就会有更多根直方柱。进一步想,如果我们引入无数个类别,那么直方柱的顶点将会形成一条光滑的曲线!一条光滑的概率密度曲线。
在现实生活中,我们往往都是通过将许多跟直方柱的顶点连上线条,从而近似成一根概率密度曲线的。直方柱的原始数量越多,曲线就会越精确。
这意味着什么?
因为在现实世界中,面对错综复杂的数据,如果将它们化成直方图,并近似成一根曲线。最终也可能会是一根特别复杂的曲线,它可能会凹凸不平,对应一个特别复杂的概率分布。那么,要对这样的数据进行建模是很困难的。这个时候,我们便可以直接利用 Parzen 窗方法估计出概率密度。
怎么做?
假设在一组数据
中,这组数据可以分成许多个不同的类别。现在我们考虑其中一个类别
,我们需要知道数据
属于
的概率密度。那么我们构建一个函数
,使得它满足:当
属于类别
时,
的值为
否则,
的值为
。
那么,概率密度
就会满足:
。
是不是很简单?先别急着兴奋,我们现在所看到的 Parzen 窗还不能算是完全体。我们还需要再考虑稍微复杂一丢丢的东西。
二、完整的 Parzen 窗
讨论了这部分内容之后,我们的 Parzen 窗方法就可以起到更大的作用。
我们之前讨论过,现实世界中的概率分布曲线可能是很复杂的。我们之前所讨论到的直方图,它内部的直方柱是由多个矩形堆砌而来的。但是现实生活中的概率分布曲线可能是更加复杂的东西。比如说,如果我们将一条线段从左到右按顺序分成
四个部分,其中,
的高度可能是
个高斯分布曲线堆砌而成的,
的高度是由
个高斯分布曲线堆砌而成的,
则是由
个高斯分布曲线堆砌而成的。就类似于下图( 只是“类似”而已 ,并不符合我所描述的情况):
很明显这张图左右两条曲线是由不同倍数的高斯分布曲线堆砌而成的
当然,不仅仅只有高斯分布曲线,其他的分布曲线也是可能的。
上述讨论意味着什么?意味着我们可能要重新修改一下函数
的定义:当
属于类别
时,
的值为
;否则,
的值为
。这里的
,代表的是分布曲线下所包含的面积。我们之前所讨论的直方图中,直方柱就是由无数面积为
的矩形曲线所堆砌起来的。引入了
的概念后,我们的公式便会更加接近完善:
。
还不够哦。我们还需要注意到最后一个信息,那就是:看下一段。
现实生活中的概率密度曲线,还有可能是被拉伸或缩短过的,是吧?所以我们还要再加入最后一个细节:若该曲线被拉长了
倍,则公式变为:
。
对了,还要注意最后一个。。。。。读者:够了!你有完没完!
真的。。真的是最后一个了。大家要注意坐标系的平移,所以最终的式子可能会变成:
。关于这个式子,我相信大家一看就懂啦。
看了这么久,总算是将 Parzen 窗的基础知识讲完了。大家可能注意到了,这方法能否奏效,函数
是一个关键。事实上,我们习惯称这个函数为“核函数”。核函数的话,网上有很多现成的函数给大家免费使用,这里就不详细讨论了。Parzen 窗又被称之为“核密度估计”,所以大家百度搜索核密度估计,在百度词条里会介绍几个相关的核函数的。
返回原文