MRMR算法[1]查找相互和最大不同的最佳特征集,可以有效地表示响应变量。该算法最小化特征集的冗余,并最大化特征设置为响应变量的特征的相关性。该算法使用变量的相互信息与特征和响应的相互信息的相互信息来定量冗余和相关性。您可以使用此算法进行分类问题。
MRMR算法的目标是找到一个最优集年代最大化的特性V年代,相关性年代对于响应变量y,并最小化W年代,冗余年代, 在哪里V年代和W年代被定义为互信息我:
|的|是功能的数量年代.
寻找最优集年代需要考虑所有2|Ω|组合,在哪里Ω是整个特性集。相反,MRMR算法通过前向加法方案对特征进行排序,这需要O(|Ω|·|年代|))计算,使用互信息商(MIQ)值。
在哪里Vx和Wx为特征的相关性和冗余,分别为:
的fscmrmr
功能排名所有功能Ω并返回idx.
(根据特征重要性排序的特征指数)。因此,计算成本就变成O(|Ω|2).该函数使用启发式算法量化特性的重要性并返回分数
.一个较大的得分值表明相应的预测器是重要的。此外,特征重要性得分的下降表示特征选择的置信度。例如,如果软件有信心选择一个特性x,然后下一个最重要的特征的分数值远小于分数值x.您可以使用输出来找到最优集年代对于给定数量的功能。
fscmrmr
排名的功能如下:
选择相关性最大的特征,
.将选定的特性添加到空集年代.
在的补语中找出非零相关和零冗余的特征年代,年代c.
重复步骤2,直到所有特性的冗余不为零年代c.
中具有非零相关性和非零冗余的MIQ值最大的特征年代c,并将所选特性添加到集合中年代.
重复步骤4,直到所有功能的相关性为零年代c.
添加与之无关的特性年代以随机的顺序。
如果无法找到满足步骤中描述的条件的特性,软件可以跳过任何步骤。