|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
: S+ ]! S5 P( U8 a! S) q
论文提出了一种解决大规模稀疏问题的多目标算法,大规模稀疏存在于许多领域:机器学习、数据挖掘、神经网络。
! T1 b8 l7 _: Q1 Q5 I$ c. i5 H作者主要讨论了四个具体的问题
; `9 P2 ~! C/ ]) x) x- ①特征选择
- ②模式挖掘
- ③关键节点检测
- ④神经网络训练, t7 x% j* n, s3 m
上面四个问题虽然存在于不同领域,但是它们都属于多目标问题,它们的pareto面的解集都是稀疏的。举例来说,对于大规模特征选择问题,10000维中只能选取不到100个,压缩率达到了99%,是典型的稀疏问题。" X. y( t3 |$ m; b& u+ J
3 `/ I- q9 Y, j1 D! Z) w" Y具体问题
" [1 | K! u8 o" j2 u$ R% V. b. Q% m' O6 s7 b$ L
; o) D8 E# j8 R6 p# v w) n
) C/ F% \/ Z$ w5 S' w5 y
! n* _- r- W1 a& r# c9 v$ U. f; y# L8 _* p
; i. ~& o' w( {4 b, C算法的贡献
6 ]0 W8 H7 n3 l2 u4 ]" L- Z7 h' C: U t
- ①设计了新的种群初始化策略(根据稀疏大规模特性,能够获得一个很好的前沿面)
- ②设计了新的基于pareto解集稀疏性的遗传算子. T- N* f. j1 i
9 e4 g/ Q2 @6 c# ]' X) i: s3 f$ z( Y0 n- E+ ^- S" i( P/ _! j
具体算法
2 K' D0 w5 X" E; p# \: [4 E4 x2 q: G7 n+ e4 ?1 ~
算法框架
, a; G+ U5 O$ P6 ~: j& M" c+ P+ g4 P3 C1 I. z! O
类似于NSGA2的框架8 R. x" P. W/ [) p
0 w! t- T; P6 S: x5 |) V9 T/ g
, I% U- K0 v; e0 R# k# Y6 j) t
' G2 n" p3 M! Y* o& L- Q
$ h+ ^ k5 u1 }* M初始化策略4 V* s/ G+ b9 p n
( b6 C k/ V4 J* Z; X( h4 s
为了集成两种编码,需要引入两个向量,一个是决策变量向量dec (实际上是进化的解,对于01编码来说,可以全置1),另一个是掩码向量mask(实际上一个01向量,用来记录每个维度的好坏,好的置1),最终的决策变量是两者的内积。
/ A! V% U) F+ c V
/ g% z$ _5 {8 _/ T/ ?* x
4 S) n2 C$ Y6 } O( P! @* z$ B4 u8 R t$ T
经过初始化后的结果:# T% V; t" N& B1 z0 X) I0 c
6 |# R$ Y; z+ ^/ G) n
( T. |! n2 G* d% c5 {$ O. R
) u6 ^3 N- o* b2 F0 z可以看到,通过该初始化策略,获得一个一个近似于pareto面的良好分布。: ?2 f) ~0 l8 L
) o; v4 }% z. R
2 k( c# i5 }, w* f
交叉变异算子
! h3 \6 i" m# y# w ]5 B- G {( u; H
3 J& O, J$ @0 Y: r- Z( @9 R# N这个交叉变异是算法的核心,它每次在二进制向量mask中,以同样的概率每次在0元素中翻转一个元素,或者在非0元素中翻转一个元素,翻转是根据决策变量的适应度值进行的。因此,生成的子代不会有同样数量的0和1,并且可以保持子代的稀疏度。
& T% H% _) ?7 H( x8 V
" D; n: P4 e( X6 p3 l
& y: G$ x2 m! U( R8 L F( Q. ?$ Y4 `3 ]/ t/ f
采用交叉变异后的结果:3 d* _* Y# p. {9 q; O
2 L4 [3 |, G% O: c J% ?' C$ ?/ _$ W
" X, i/ F/ X" t" c* f9 T: O, z
" j6 x/ C# W* u" D2 F' o/ D可以看到,通过此策略,提高了稀疏度,被置为1的维度越来越少。3 }6 L0 h" G5 r8 A. k# ]
2 \# Z' _1 e8 p- F- E0 L
2 E; @4 w2 Y% E/ Q其他
: |4 O$ R2 ?, a# S& v
) U7 W1 R- [' n! o0 o5 Z5 k对于实验部分,作者设计了具体的测试套件,结果也非常乐观,在此不赘述。
- B& S1 O: A; I |
|