基于最大相关最小冗余的特征选择方法MRMR

By:Yang Liu
1.什么是特征选择
经典的特征选择定义为:依据某个准则,从N个特征集合中选出M个特征的子集(M=<N),以达到降低特征空间维数的目的。
特征选择包括特征提取和特征选择两个方面。
特征提取是指将原有的特征空间进行某种形式的变换,以得到新的特征。主成分分析PCA是这类方法中最著名的算法。特征选择是指从原始特征集中选择使某种评估标准最优的特征子集,使得任务如分类、回归等达到和特征选择前近似甚至更好的效果。
特征选择的主要思想就是从输入的特征集合中剔除那些很少或者不提供预测信息的特征,从而得到一个能更好反映数据特点的、使某种评估标准最优的特征子集。特征选择能显著地改进分类模型和识别模型的可理解性,并能建立一个预测更好的分类模型和识别模型(并能建立一个更好的预测或分类模型)。
2.特征选择研究的关键问题
特征选择算法研究的两个关键问题:
一是选择合适的评价准则来衡量特征子集的优劣;
二是选择一个高效率的特征子集搜索方法,以便在允许的时间,以可以忍受的代价找出最小的、最能描述类别的特征组合。
3.最大相关最小冗余(MRMR) 算法模型
最大相关最小冗余是基于互信息的特征选择方法,它根据最大统计依赖性准则来选择特征。从特征空
间中寻找与目标类别有最大相关性且相互之间具有最少冗余性的 m 个特征,
最大相关和最小冗余的定义为 :
最大相关max⁡D(S,c),D=1∣S∣∑xi∈SI(xi;c)\max D(S,c),D = \frac{1}{{|S|}}\sum\limits_{{{\text{x}}_i} \in S} {I({x_i};c)}maxD(S,c),D=∣S∣1​xi​∈S∑​I(xi​;c)
最小冗余min⁡R(S),R=1∣S∣2∑xi,xj∈SI(xi;xj)\min R(S),R = \frac{1}{{|S{|^2}}}\sum\limits_{{x_i},{x_j} \in S} {I({x_i};{x_j})}minR(S),R=∣S∣21​xi​,xj​∈S∑​I(xi​;xj​)
其中: S 表示特征集合; c 表示目标类别; I(xi;c)I({x_i};c)I(xi​;c)表示特征 i 和目标类别 c 之间的互信息;I(xi;xj)I({x_i};{x_j})I(xi​;xj​)是特征 i 与特征 j 之间的互信息。
给定两个随机变量 x和 y,它们之间的互信息根据其概率密度函数 p(x) 、p(y) 和 p( x,y) 分别定义为
I(x;y)=∬p(x,y)log⁡p(x,y)p(x)p(y)dxdyI(x;y) = \iint {p(x,y)\log \frac{{p(x,y)}}{{p(x)p(y)}}dxdy}I(x;y)=∬p(x,y)logp(x)p(y)p(x,y)​dxdy;
对于多元变量 S 和目标类别c,互信息定义为 I(Sm;c)=∬p(Sm,c)log⁡p(Sm,c)p(Sm)p(c)dSmdcI({S_{\text{m}}};c) = \iint {p({S_m},c)\log \frac{{p({S_m},c)}}{{p({S_m})p(c)}}d{S_m}dc}I(Sm​;c)=∬p(Sm​,c)logp(Sm​)p(c)p(Sm​,c)​dSm​dc;
MRMR 的特征选择标准为:
信息差max⁡ϕ(D,R),ϕ=D−R\max \phi (D,R),\phi = D - Rmaxϕ(D,R),ϕ=D−R;
信息熵max⁡ϕ1(D,R),ϕ1=DR\max {\phi _1}(D,R),{\phi _1} = \frac{D}{R}maxϕ1​(D,R),ϕ1​=RD​;
该算法的搜索方法为: 基于最大相关最小冗余原则实现最优特征集Sm{S_{\text{m}}}Sm​的选取,现假定已经获取了m-1 个特征所组成的特征集Sm - 1{S_{{\text{m - 1}}}}Sm - 1​,则第 m 个特征
可通过下式中的算子来进行搜索:
max⁡Δmid,Δmid=max⁡{I(xj,c)−1m−1∑xi∈Sm−1I(xj,xi)}\max {\Delta _{mid,}}{\Delta _{mid}} = \max \{ I({x_j},c) - \frac{1}{{m - 1}}\sum\limits_{{x_i} \in {S_{m - 1}}} {I({x_j},{x_i})}\}maxΔmid,​Δmid​=max{I(xj​,c)−m−11​xi​∈Sm−1​∑​I(xj​,xi​)} ;
max⁡Δmiq,Δmiq=max⁡{I(xj,c)/{1m−1∑xi∈Sm−1I(xj,xi)}}\max {\Delta _{miq,}}{\Delta _{miq}} = \max \{ I({x_j},c)/\{ \frac{1}{{m - 1}}\sum\limits_{{x_i} \in {S_{m - 1}}} {I({x_j},{x_i})\} } \}maxΔmiq,​Δmiq​=max{I(xj​,c)/{m−11​xi​∈Sm−1​∑​I(xj​,xi​)}} ;
式中,xj{x_j}xj​为原始特征集中不包含Sm−1{S_{{\text{m}} - 1}}Sm−1​中特征量的其他特征。
算法流程:

算法的具体描述如下:




参考文献:
(1)《基于最大相关最小冗余的特征选择算法研究》-曹静
(2)《基于最大相关最小冗余的多标记特征选择》-杨文元

基于最大相关最小冗余的特征选择方法MRMR相关推荐

  1. 使用python中的pymrmr模块来进行特征提取,深入学习mRMR(最大相关最小冗余准则)

    文章目录 系列文章目录 前言 一.最大相关最小冗余准则(mRMR)在python对应的库? 二.如何安装和使用prmrmr? 1.新建一个环境 2.安装pymrmr库 3.如何使用pymrmr? py ...

  2. mrmr 最大关联度-最小冗余度 特征选择

    在做特征选择时,可能面临两个问题:特征与类别预测有多大相关性,特征之间有多大冗余度.在特征选择中,"最好的m个特征不一定是m个最好的特征",从相关度与冗余度来看,最好的m个特征是指 ...

  3. 论文解读《DeepCPP:一种基于核苷酸偏差信息和最小分布相似性特征选择的用于RNA编码潜力预测的深度神经网络》

    摘要 深度测序技术的发展导致了新转录本的发现.已经开发了许多计算机方法来评估这些转录本的编码潜力,以进一步研究它们的功能.现有方法在区分大多数长非编码 RNA (lncRNA) 和编码 RNA (mR ...

  4. 文本分类入门(十一)特征选择方法之信息增益

    前文提到过,除了开方检验(CHI)以外,信息增益(IG,Information Gain)也是很有效的特征选择方法.但凡是特征选择,总是在将特征的重要程度量化之后再进行选择,而如何量化特征的重要性,就 ...

  5. 基于蚁群优化算法的特征选择相关文献

    Dorigo等人在20世纪90年代初提出了蚁群优化算法(Ant colony optimization ,ACO).ACO是一种元启发式群智能算法,旨在解决组合优化问题.它利用了真实蚂蚁的觅食行为,由 ...

  6. 科学论文1-软件缺陷预测中基于聚类分析的特征选择方法

    国家科学基地有超级工程:两弹一星.航天发射中心,有国家科学研究院所和企业研发基地,包括山东的高速铁路研发中心,天津.广东广州和江苏无锡的高性能计算中心等.在此创建科学论文阅读中心,主要是计算机.电子系 ...

  7. 基于L2,1范数的特征选择方法

    本文来自于论文Feiping Nie, Heng Huang, Xiao Cai, Chris H. Q. Ding. Efficient and Robust Feature Selection v ...

  8. 互信息特征选择python_基于互信息的特征选择方法杂谈

    我们现在处于一个数据驱动的时代,但并不是所有的数据都是有意义的.只有有效的数据才能 带给我们"信息",无效的数据并不能带给我们"信息". 如果我们在做一件事情之 ...

  9. 图.exe 已触发了一个断点。 出现了_学术简报︱基于保护综合重要度的最小断点集优选方法...

    云南电力调度控制中心的研究人员蒋红亮,在2019年第10期<电气技术>杂志上撰文,为实现复杂环网整定配合起始点的合理选择,提出了一种基于保护综合重要度的最小断点集优选方法. 首先,定义了反 ...

最新文章

  1. Cadence 16.3 使用步骤
  2. 【Linux系统编程】进程常用调度算法
  3. 闪灯什么意思_车灯闪1下、2下、3下各代表什么意思?关键时刻可以保命
  4. vscode较详细注释的汇编语言hello world 输出程序,第一个汇编程序
  5. 【重要】使用Git命令行上传到GitHub上
  6. redis-cli使用密码登录
  7. Spring Boot2.0+中,自定义配置类扩展springMVC的功能
  8. myeclipse 保存失败
  9. MyBatis的其它方法
  10. HDU 2017 一系列统计数据
  11. js 使用Math函数取得数组最大最少值
  12. 多国语言点阵字库合并!!!
  13. AutoCAD 2018安装教程
  14. QT编写BarChart直方图
  15. 笔记本电脑建立Wifi热点多种方法
  16. Python爬虫之小猪短租房
  17. 详版大数据报告_如何制作大数据报告
  18. 生成MyEcilpse注册码
  19. C++ 字符串格式化
  20. 北京python r语言培训

热门文章

  1. js字符串的拼接及转换
  2. 上海市及市内各区地方税务局联系地址与电话
  3. c++ 总结之 cin输入
  4. 复制(部分复制,完全复制) Mat对象
  5. python pyc文件作用_Python中pyc文件的用途
  6. Kali渗透测试之DVWA系列2——Brute Force(暴力破解)
  7. 我儿子自己敲出来的代码:用pygame组件播放植物大战僵尸背景音乐
  8. Elasticsearch:在满意度调查中实现并使用情绪分析器
  9. React 路由详解(超详细详解)
  10. Java校验日期的合法性