如何评价特征子集的好坏
答案:
有比较多的评价函数可以用于评价特征子集的好坏,评价函数主要用来度量一个特征(或者特征子集)可以区分不同类别的能力,使用不同的度量方法最终得到的特征子集也不一样。一个特征子集是最优的往往指相对于特定的评价函数来说。
有如下5种比较常见的评价函数。
1)距离度量:如果特征集 X 在不同类别中能产生比特征集 Y 大的差异,那么就说明特征集 X 要好于特征集 Y 。
2)信息度量:主要是计算一个特征的信息增益(IG),即保留这个特征的信息熵与删除这个特征的信息熵之差。
3)相关性度量:可以使用相关性系数、卡方检验、互信息(MI)等。比如通过互信息可以发现一个特征和一个类别的相关性。如果特征集 X 和类别的相关性高于特征集 Y 与类别的相关性,那么特征集 X 优于特征集 Y 。使用互信息的衍生概念点互信息(PMI)可以用来计算两个特征之间的依赖性,值代表着两个特征之间的冗余度。
4)一致性度量:若两个样本属于不同的分类,但在特征 A 、 B 上的取值完全一样,那么它们就是不一致的,此时特征子集{ A , B }不应该选作最终的特征集。找到与全集具有同样区分能力的最小子集。严重依赖于特定的训练集和最小特征偏见(Min-Feature bias)的用法;找到满足可接受的不一致率(用户指定的参数)的最小规模的特征子集。
5)误分类率度量:主要用于Wrapper式的评价策略中。使用特定的分类器,利用选择的特征子集来预测测试集的类别,用分类器的准确率来作为指标。这种方法准确率很高,但是计算开销较大。
如何制定特征选择的停止准则
答案:
停止准则决定什么时候停止特征选择。停止条件用来决定迭代过程什么时候停止,生成过程和评价函数可能会对于怎么选择停止条件产生影响。
停止条件可以有如下4种。
1)预先设定最大迭代次数,达到最大迭代次数就停止。
2)预先设定最大特征数,达到最大特征数就停止。
3)当评价函数值达到某个阈值或者最优值后就可停止搜索。比如对于独立性准则,可以选择样本间平均间距最大;对于关联性度量,可以选择使得分类器的准确召回最高作为准则。
4)特征集不再变化时就停止。
如何验证特征子集的有效性
答案:对特征子集进行验证的过程并不是特征选择本身的一部分,但是必须确保选择出的特征是有效的。所谓有效性,是指获得的特征子集是否能够改善学习器的预测效果。因此,需要使用不同的测试集、学习方法验证选择出来的特征子集,然后比较这些验证结果。最好采取与前期选择方法不相关的度量方法,这样可以减少其间的耦合。