|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
/ I- }% u1 @0 m, n' |
论文提出了一种解决大规模稀疏问题的多目标算法,大规模稀疏存在于许多领域:机器学习、数据挖掘、神经网络。+ v- y, x+ f8 C/ W! f! ]) [
作者主要讨论了四个具体的问题
( }, r. f- j+ P& Y- ①特征选择
- ②模式挖掘
- ③关键节点检测
- ④神经网络训练! z" F) c; c8 }/ `' n
上面四个问题虽然存在于不同领域,但是它们都属于多目标问题,它们的pareto面的解集都是稀疏的。举例来说,对于大规模特征选择问题,10000维中只能选取不到100个,压缩率达到了99%,是典型的稀疏问题。6 d, |- p1 \: V3 y7 P
& y: s0 @* j8 D) ]具体问题
+ y# ]3 }- p- V' X& |/ v# h; @: ~5 F: W
; [( x$ s, s R6 r. ]& H6 l* d: A, n. f# O3 K R$ _" v) v
, I, Z* l1 y4 ^% \! _ y3 G; o
6 H& w; w2 n8 B4 j1 _
( E4 y l# W5 x算法的贡献* ~( Y" O% }! v* U- L$ w
: l& G3 b" o# O( X+ t$ q/ h
- ①设计了新的种群初始化策略(根据稀疏大规模特性,能够获得一个很好的前沿面)
- ②设计了新的基于pareto解集稀疏性的遗传算子3 X/ ?- R8 E$ Y
. c5 a( x# u+ y! E6 }0 A
8 T, b- u% z% F2 @/ g$ d
具体算法- K4 t; z0 |! r/ b [
: s% [; g+ J7 o. Z; u- ]" b: M算法框架' j @4 o$ t- D0 `) d
5 a& L* |" i: | C+ q# _- ]. [# c/ O
类似于NSGA2的框架7 j* ~& B. E4 r( K
7 w7 X& D: P: s8 d
7 S, a5 u. e/ C+ q
- E* J# \! W6 ^
J7 n4 Q+ n h5 j& Z初始化策略
- X9 z4 u$ u' f0 t0 X. ~# E
( Y7 m+ G! }$ V- n为了集成两种编码,需要引入两个向量,一个是决策变量向量dec (实际上是进化的解,对于01编码来说,可以全置1),另一个是掩码向量mask(实际上一个01向量,用来记录每个维度的好坏,好的置1),最终的决策变量是两者的内积。
: i ?6 b2 b0 I$ n! g% T% k* {9 K; j7 a" C6 ]/ ?9 Z
5 H% P8 H5 ?# d [0 F$ i Y
3 r1 e- t. D4 H
经过初始化后的结果:
3 ^5 V/ y( b: x$ |8 i: s, @& r7 Z6 G
: z' x, z" N" a# R" f! z4 N4 d7 m% ]8 z
可以看到,通过该初始化策略,获得一个一个近似于pareto面的良好分布。: G' U5 \. B( W7 \, l4 |' u
" x& s6 P6 c) \" r0 C
1 p2 ~& @8 y9 P+ f+ H- W4 r8 s3 G9 B0 E0 c交叉变异算子$ p/ [& V3 v* K# i) Z' T, k
. I7 i# E1 N. L% S这个交叉变异是算法的核心,它每次在二进制向量mask中,以同样的概率每次在0元素中翻转一个元素,或者在非0元素中翻转一个元素,翻转是根据决策变量的适应度值进行的。因此,生成的子代不会有同样数量的0和1,并且可以保持子代的稀疏度。4 [" N: f: C7 K R# ?
5 T5 ^* o( M! u4 q
0 S" ~4 J- Q, P9 C- N/ D
7 W( H! M/ v7 ]) ?! ] V" q* F采用交叉变异后的结果:
& \- J% q3 h4 j6 @ w- W# j2 r" H/ L/ B! F
6 X) Q0 I+ o9 H# X% h
3 a8 g( c' y5 |3 A1 P7 m
可以看到,通过此策略,提高了稀疏度,被置为1的维度越来越少。$ [% ^2 w! v8 f$ d
1 S$ R. K( I% \$ M* T7 l" @. I
: j L7 Y; l# j3 O* {
其他
# U/ A: N3 `/ |9 @$ P
9 N" f0 k) R- g, J对于实验部分,作者设计了具体的测试套件,结果也非常乐观,在此不赘述。2 x) c6 `) ^% ]/ _0 z
|
|