参考大神:http://www.cnblogs.com/heaad/archive/2011/01/02/1924088.html
个人理解:
1、特征选择:
从原始的高维特征向量集合中,选择出m个最能代表向量空间的向量作为子集。去除掉冗余,最大化相关。
2、 特征选择的理由:
原始提取出的特征一般数量很大,维度很高。在用分类器进行分类的时候,往往太耗费时间。特征选择能够选出最具代表性的特征,来优化模型,较少冗余。可以提高分类器的速度和准确度,还能提高可理解性。
3、特征选择过程:
可以分为四个部分:产生过程;评价函数;停止准则;验证过程。
1)产生过程:利用搜索函数,选择出之前确定的m个特征子集。搜索函数有例如:sfs,bds, sffs 等。
2) 评价函数:可以分为筛选器和封装器两种。
Filter: 利用某一个函数,作为对子集特征好坏的评价。相关的函数例如:相关,距离,信息增量,分类错误率,一致性,这些准则。
Wrapper: 利用选出来的特征子集,来对原来的特征进行分类,通过分类的准确率来评价特征子集选的好坏。
3)停止准则:满足了相关的阈值的要求,就可以停止了。例如分类精度达到了某个点,可以选择其作为特征子集了。
4)验证过程:利用已经了解分类的测试集,进行测试验证。
大体的降维过程:
原始材料
- - -- 提取高维特征(eg. PCET)- - >原始高维特征集合------特征选择(eg. sffs )--->适当的特征子集。
( - - - 分类器- ----->合适的分类)
对于特征的评价也可以通过很多已有的程序来完成,比如说Matlab 中的SVM.
在模式识别中:
作为训练集的数据,会事先给出,高维数据,和 其所属的类别c. 首先进行特征降维的时候,会选择出前m个和C关联最大的特征向量。 相关程度可以通过互信息 I (xi;c) 来测量。不过研究表明,并非前m个最大相关的特征会导致最好的分类效果。 因此还要进行一定的处理,比如说去掉冗余之类的。
转载请注明原文地址: https://ju.6miu.com/read-676238.html