|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
i y- y, C! x; j* b) W; l在做特征选择时,可能面临两个问题:特征与类别预测有多大相关性,特征之间有多大冗余度。在特征选择中,“最好的m个特征不一定是m个最好的特征”,从相关度与冗余度来看,最好的m个特征是指与分类最相关的特征,但由于最好的m个特征之间可能存在冗余,因此最相关的m个特征并不一定比其他m个特征产生更好的分类准确率。可以看出,特征选择可以分为两个过程:1、怎样度量特征相关性。2、怎样解决特征之间的冗余。# w c! W* F: E6 _
( j4 S! n: n7 U+ q+ t0 g' ~互信息4 ]6 L0 e% G, S' D U: z, y- h
1 ]: s9 t; N! P
1 w0 N! X# y0 q' z8 n! T( g互信息可以度量两个变量x,y之间的相关关系。如下图所示:1 d3 Y3 p* ^! g6 G; N
3 w4 N# R! Z3 t' J' _ z- `
" m/ i5 W8 M5 N
: ?; v* u. y z+ u+ J8 v
考虑特征x与分类目标c,计算I(x,c),I(x,c)的大小代表了x与c之间的关联度的大小。从所有特征中选出与c之间互信息最大的m个特征,就可以得到与c最相关的m个特征。
% N" E( ]9 L% y
0 {, i; a' G* s1 V最大相关度与最小冗余度, Y6 N' Q/ o9 y g% o6 ?9 ^ X
$ G, @ I! h6 ~% b0 [6 p
设S表示特征{xi}的集合,|S|=m. 为了选出m个最相关特征,使得S满足如下公式:( R' p/ k1 L& p- q% b+ l8 n7 h5 S
$ l: {6 @9 {7 P# S, h
* t. W) P* X( W P! Q" L4 N
1 ]" ~' u% S3 Y' F! e) S; [可见目标是选出m个平均互信息最大的集合S。4 W9 Z( p# ]- U7 U; N& J
S很可能包含相关度很大的特征,也就是说特征之间存在冗余。集合S的冗余度如下式所示:
8 R; t7 k+ U3 L( f/ ~1 w: g( V
3 ^" o) r; m) ~9 l4 x8 p
" e& E5 _$ G, @3 o( y! P( Q
) ?, q- _3 I$ j; w9 ]9 w Q$ r
最终目标是求出拥有最大相关度-最小冗余度的集合S,直接优化下式:! }' Y1 e1 X6 f* ]3 T! S$ s7 [
+ |" V# K4 \$ Y! k4 n Y
3 f3 ^; E# i0 [1 l7 R& N, y% P
- O! c @7 H0 I, g直观上说D的增大,R的减小都会使得目标函数增大。- O- [" B- Y- y$ U$ i* I
假设现在S中已有m-1个特征,现在需要从余下的特征中选择第m个特征。0 d2 F. l3 s7 H9 F' k4 X. V/ M
" c% Q7 R- U9 z2 b s) j/ I' A
6 r8 \9 [1 v6 z' \1 a
* m" x# ^$ l& u3 Q% n/ R2 L特征选择过程; [% s' P" _% c( k2 X- B3 W) I( `
7 L* _( t% b; R& p! ?
特征选择的目的是选择出一个具有很好分类效果的精简特征集。为了达到此目的,可以分两步进行:第一步,利用mrmr选出候选特征集;第二步,利用其它方法选出精简特征集。+ S0 Z: v1 R4 J$ r/ c; I8 _
8 E* E, }: W4 ~& q0 a6 U' l8 m: S
+ k* y& P* {/ I主要步骤:/ {( Q/ x6 N* H% [' C/ U. B5 m
0 K0 {) w7 ~5 L) P9 k" I' ^# [
- 将数据进行处理转换的过程(注:为了计算两个特征的联合分布和边缘分布,需要将数据归一化到[0,255]之间,并且将每一维特征使用合理的数据结构进行存储)
- 计算特征之间、特征与响应变量之间的分布及互信息
- 对特征进行mrmr得分,并进行排序
0 H$ [( c+ t: W! q
) v3 I# N# T- o S |
|