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.
添加与之无关的特性年代以随机顺序。
如果无法找到满足步骤中描述的条件的特性,软件可以跳过任何步骤。