|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
% o( N6 e6 C' s7 s2 ^
论文提出了一种解决大规模稀疏问题的多目标算法,大规模稀疏存在于许多领域:机器学习、数据挖掘、神经网络。
' n" E) e7 Z/ z; F作者主要讨论了四个具体的问题# `+ T8 G0 H' [' {* z
- ①特征选择
- ②模式挖掘
- ③关键节点检测
- ④神经网络训练
* _; L) U% ~4 y+ Q0 f3 S 上面四个问题虽然存在于不同领域,但是它们都属于多目标问题,它们的pareto面的解集都是稀疏的。举例来说,对于大规模特征选择问题,10000维中只能选取不到100个,压缩率达到了99%,是典型的稀疏问题。
8 ~( X* K' H) S5 [. y3 M* Q v7 R( e. M, W
具体问题( J5 K" U8 |7 G$ y9 B$ ?9 O, S
9 k6 k& M2 N A( `
) Y' M T7 D7 y( B' K: f: r2 ?( Z5 ?
# r' W- J! m/ |6 t, m6 A8 x R( q
( Y* X" ^( B7 W y( c( b0 Y! q
# | n# w0 k) P' F0 z4 c y6 o
算法的贡献2 W V+ B( v9 } v+ [5 z. _
/ C Z9 x2 w* ]. R% ?
- ①设计了新的种群初始化策略(根据稀疏大规模特性,能够获得一个很好的前沿面)
- ②设计了新的基于pareto解集稀疏性的遗传算子/ `7 {: N9 s( P- u4 j/ D3 m
5 S" W) q9 X# \' A; W6 N0 r$ U& U+ }6 z
具体算法
/ q$ Z) i* ? a& [% ]' g7 d8 m
4 e9 {3 O: {* O; _8 g算法框架
- d5 L A* X1 N' z8 f: t. x4 F3 a; M& H; U: V* O
类似于NSGA2的框架1 D! x1 F) c' V: } c$ S. [
0 e" P; m" ?3 R( {4 U+ m4 d
7 l" {4 b: Z, r6 K" w5 n8 t5 Z! \6 B6 S
1 A7 `4 w" }$ p" n y6 c1 G) ^
初始化策略* X$ a1 g. W* D& ^- ]- F9 i
% [) Z' r2 d4 O
为了集成两种编码,需要引入两个向量,一个是决策变量向量dec (实际上是进化的解,对于01编码来说,可以全置1),另一个是掩码向量mask(实际上一个01向量,用来记录每个维度的好坏,好的置1),最终的决策变量是两者的内积。
/ z( o# |+ G4 [. V7 X4 E
' s4 q' b6 I% s% p+ N, ~
+ T5 X- A$ r; m3 I: U8 t) L! Y. a9 W
, [2 u. L9 {9 {经过初始化后的结果:7 d6 m$ l' ?( j+ I# Z: I0 K
5 ]# z, q* C3 J: G% R
$ o1 @# U* O; c
/ J O7 F3 E2 n6 b
可以看到,通过该初始化策略,获得一个一个近似于pareto面的良好分布。% Q. x5 V- X$ }* }6 S
! l5 T3 M* P! |
7 f( F. A! ~# \" G' y交叉变异算子
" \, _; h; r) {( ~) [2 j8 q% o3 m) f0 Q; A1 S
这个交叉变异是算法的核心,它每次在二进制向量mask中,以同样的概率每次在0元素中翻转一个元素,或者在非0元素中翻转一个元素,翻转是根据决策变量的适应度值进行的。因此,生成的子代不会有同样数量的0和1,并且可以保持子代的稀疏度。
0 f5 ~, W- f- W) D O7 a3 ]! ~3 g/ j
; J' K; m [1 e& e6 J
9 ? o8 z+ ?" k- Y8 d
# ~; \- C8 b' p, ~ P; D6 r
采用交叉变异后的结果:: h! b" c2 Z+ o, ^5 D6 @9 U$ C7 J
. P2 O h7 |5 ^
) H5 x, U* E1 R* k/ }. H6 M# |% S5 @
$ o* R- |4 i8 ]0 ~
可以看到,通过此策略,提高了稀疏度,被置为1的维度越来越少。
5 a; d5 d7 s" h, ]: ?4 }& @
# z/ i- @) U% S: R/ Y3 D( _- j2 _0 u9 G6 z' {5 e* d
其他# j# ?4 e/ A( _
. r& j6 Q% T" ]对于实验部分,作者设计了具体的测试套件,结果也非常乐观,在此不赘述。
, R4 \( d4 r* E+ L" q8 e |
|