分享

特征选择之最小冗余最大相关性(mRMR)

 icecity1306 2017-08-29

最小冗余最大相关性(mRMR)是一种滤波式的特征选择方法,由Peng et.al提出。
用途:图像识别,机器学习
一种常用的特征选择方法是最大化特征与分类变量之间的相关度,就是选择与分类变量拥有最高相关度的前k个变量。但是,在特征选择中,单个好的特征的组合并不能增加分类器的性能,因为有可能特征之间是高度相关的,这就导致了特征变量的冗余。这就是Peng et.al说的“the m best features are not the best m features”。因此最终有了mRMR,
即最大化特征与分类变量之间的相关性,而最小化特征与特征之间的相关性。这就是mRMR的核心思想。

互信息

定义:给定两个随机变量x和y,他们的概率密度函数(对应于连续变量)为p(x),p(y),p(x,y),则互信息为

I(x;y)=p(x,y)logp(x,y)p(x)p(y)dxdy

mRMR算法

我们的目标就是找出含有m{xi}个特征的特征子集S
离散变量
最大相关性:

maxD(S,c),D=1|S|ΣxiSI(xi;c)

xiicS
最小冗余度:
minR(S),R=1|S|2Σxi,xjSI(xi;xj)

连续变量
最大相关性:
maxDF,DF=1|S|ΣxiSF(xi;c)

F(xi,c)F
最小冗余度:
minRc,R=1|S|2Σxi,xjSc(xi;xj)

c(xi,xj)
当然,对于这些目标函数,还可以换做其他的函数,像信息增益,基尼指数等。
然后整合最大相关性和最小冗余度:
加法整合:
maxΦ(D,R),Φ=DR

乘法整合:
maxΦ(D,R),Φ=D/R

在实践中,用增量搜索方法寻找近似最优的特征。假设我们已有特征集Sm1,我们的任务就是从剩下的特征XSm1中找到第m个特征,通过选择特征使得Φ(.)最大。增量算法优化下面的条件:
maxxjXSm1[I(xj;c)1m1ΣxiSm1I(xj;xi)]

其算法的复杂度为O(|S|M)

算法优点

  • 速度快
  • 估计结果更鲁棒
  • I(.)的一阶最优估计

参考
【Hanchuan Peng et.al】Feature Selection Based on Mutual Information: Criteria of Max-Dependency, Max-Relevance, and Min-Redundancy
【Barry O’Sullivan, Cork】Feature Selection for High-Dimensional Data

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多