多目标优化--MOEA/PSL(用无监督神经网络求解具有稀疏最优解的大规模多目标优化问题)笔记

Solving Large-Scale Multiobjective Optimization Problems With Sparse Optimal Solutions via Unsupervised Neural Networks
(Ye Tian , Chang Lu, Xingyi Zhang , Senior Member , IEEE, Kay Chen Tan Fellow, IEEE,and Yaochu Jin , Fellow, IEEE)

通过前期学习了一些基本的多目标优化算法,NSGA-II,MOEA/D,SPEA2,现在我主要学习大规模稀疏方面的内容。目前课题组发的大规模稀疏的文章有两篇,SparseEA和MOEA/PSL ,对于SparseEA这篇论文,其中相关博客内容也挺多,但是MOEA/PSL算法,并没有找到相关可以借鉴学习的博客,因此根据我对论文的了解,来写出这篇博客一些理解。

下面将从三个问题,带你快速理解稀疏的大规模多目标优化问题。

1、什么是大规模优化问题(LMOPs)?
简单来说就是决策变量的维度比较高的优化问题
2、稀疏指的是?
在大规模优化问题中,并不是每一维变量都会对目标函数函数产生影响,也就是虽然决策变量的维度很高,但是有意义的维度却很少。
在这里插入图片描述
正如这上面的复杂网络可知,某些节点是比较重要的,而绝大部分节点一般都不太重要.删除法是一种搜索重要节点的方法,具体地,删除某些节点,检测网络的连通性.删除的节点越重要,对网络连通性的破坏越大。
3、为什么稀疏的大规模问题比较难以解决?
(1)维度越高,搜索空间越大,越需要搜索能力更强的算法。
(2)交叉变异有可能对没有意义维度操作,使种群中存在大量冗余个体。

下面就继续介绍MOEA/PSL的概述
目前的问题:由于搜索空间的维数灾难,进化算法很难用有限的评价预算逼近大规模多目标优化问题(LMOPs)的最优解。

常规解决方案:决策变量分解、将原始的LMOP转换成一个小规模问题。

IDEA:在进化过程中逼近Pareto最优子空间,可以减小搜索空间,大大减轻进化算法遇到的困难。

本文解决方案:提出了一种通过学习Pareto最优子空间来求解稀疏LMOPs问题的进化算法。该算法使用两个无监督神经网络、一个受限玻尔兹曼机(RBM)和一个去噪自动编码器(DAE)来学习决策变量的稀疏分布和紧致表示,其中学习的稀疏分布和紧致表示的组合被视为Pareto最优子空间的近似。遗传算子在学习到的子空间中进行,然后通过两个神经网络将得到的子代解映射回原始搜索空间。

MOEA/PSL的亮点

提出了一种基于Pareto优化子空间学习的进化算法来求解Pareto最优解是稀疏的,即Pareto最优解的大多数决策变量为零的LMOP问题。

•采用受限玻尔兹曼机(RBM)和去噪自动编码器(DAE)来学习Pareto最优子空间。RBM学习的稀疏分布和DAE学习的紧致表示的结合被认为是Pareto最优子空间的近似,其中遗传算子在学习的子空间中进行,大大减少了原有的搜索空间。

•设计了一种参数自适应策略来自动确定Pareto最优子空间学习中的参数。一方面,根据非支配解的稀疏性估计两种神经网络的隐含层大小。另一方面,学习到的子空间中生成的子代解的比例根据前几代生成的成功子代解的数量进行动态调整。

下面就来简单的介绍一下RBM(受限的玻尔兹曼机)和DAE(降噪自编码器)
受限玻尔兹曼机(RBM)是一种基于能量模型的神经网络模型,是深度信任网络(DBN)的构建块,可以在无监督的情况下对输入数据进行降维。
在这里插入图片描述
特点:
1)两层结构图,可视层和隐藏层;
2)同层无边,上下层全连接;
3)二值状态值,前向反馈和逆向传播求权参。
我们可以看到这张图,上面一层表示的是隐藏层,下面一层表示的是可视层。在同层的是没有边相连接的,而上下两层是全连接的状态,每一个隐藏层的节点都分别于可视层的所有节点连接。还有第三个特点就是RBM是二值状态值,本身只有0,1两个值表示,可以进行前向反馈和逆向传播求权参。
同时我们可以看到这个W,A,B分别代表的是隐藏层与可见层之间的连接权重、表示的是可见层神经元的偏置、表示的是隐藏层神经元的偏置。
每当向可见层输入一个观测值时,每个隐层单元取值为1和取值为0的概率便可以确定,此时我们可以将每个隐层单元的期望作为特征输出。

下一步就简单介绍一下RBM模型的计算,首先定义能量函数,利用能量公式,就可以定义联合概率分布,然后下一步就可以定义边缘概率分布。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过上面的概率分布,我们就可以根据公式计算给定可见层的状态,求解隐藏层某个神经元别激活的概率,根据之前的a,b的公式,最终我们可以得到能量公式,在最后来进行推导过程的讲解,首先是一个等价式,用到贝叶斯公式进行第二步,第三步则是选择HK=0或1的激活概率作为分母,因为RBM是一个二值状态值。然后经过化简获得了最后的一个公式,这个式子也就是给定可见层的状态,求解隐藏层某个神经元别激活的概率。
对于RBM 模型,主要就是可见层和隐藏层之间的权重,可见层的偏置以及隐藏层的偏置,W、A、B、对于给定训练样本,通过训练获得参数,使得在改参数下,由RBM表示的概率分布尽可能与训练数据相符合(最小化重建误差)
最后通过对比发散算法,来找到w、a、b的最佳值。

下面介绍的就是自编码器(AE),一种利用反向传播算法使得输出值等于输入值的神经网络,先将输入压缩成潜在空间表征,然后通过这种表征来重构输出。
我们可以看到下面这张图片,当从输入到隐藏层是一个编码的过程,从隐藏层到输出是一个解码过程,然后就是通过编码器过程,将一些图片或者高维空间的向量,压缩成一个低维的向量(潜在变量),然后通过解码层将低维向量解压重构出原始样本。
在这里插入图片描述
在这里插入图片描述
我们可以看到这张图,原始input(设为x)经过加权(W、b)、映射(Sigmoid)之后得到y,再对y反向加权映射回来成为z。
通过反复迭代训练两组(W、b),使得误差函数最小,也就是图中的Lh,即尽可能保证z近似于x,即完美重构了x。这样的话也很好的学习了input的一个关键特征。

对于降噪自编码器(DAE),他是自编码器的一个变体,是一类接受损坏数据作为输入,并训练来预测原始未被损坏数据作为输入的自编码器。
我们直观理解就是把DAE比作人体的感官系统,比如人眼看物体时,如果物体某一小部分被遮住了,人依然能够将其识别出来。或者多模态信息输入人体时(比如声音,图像等),少了其中某些模态的信息有时影响也不大。
那DAE相比于AE又有哪些优点呢?
对于AE而言,输入和重构后的输出相等,这种相等函数的表示有个缺点就是当测试样本和训练样本不符合同一分布,即相差较大时,效果不好。

在这里插入图片描述
我们同样以一张图来进行DAE的讲解,这张图与之前的区别在于,多了一个损坏数据x’,其他内容与AE相似,然后通过这个公式求出y值,然后再通过这个公式映射回来返回到Z上,最终使得误差函数最小。

通过上面的简单介绍,相信大家已经对RBM和DAE有个初步的了解,下面来重头戏,也就是这个算法的主要框架内容。

MOEA/PSL 框架内容

在这里插入图片描述
传统的进化算法就是在初始化要进行一个交叉变异生成子代的过程,生成过后再通过环境选择选出适应度高的个体保留到下一代,参与下一代的进化,目前看到的这个算法,是两条不同的路径。上面这条路径跟下面这条路径相同的部分,都是交配选择,包括后面的子代生成都是通过交叉变异这个操作,唯一不同的就是上面的路径有一个帕累托最优子空间生成,这个部分是用到了RBM和DAE机器学习中的方法,去进行子空间的学习。在学习到子空间这个过程,学习,压缩,过后再进行传统的操作。
这两条路径是怎么选择呢?会有一个在子空间生成的解占所有保留到下一代的解的一个比例,这个比例如果大于某一个随机值,或者小于某一个随机值,选择走上面或者走下面。
MOEA/PSL伪代码分析
在这里插入图片描述
首先就是用抽样方法初始化N个解,形成初始种群P,
计算每个解的非支配前沿数和拥挤距离。
在主循环中,通过二进制锦标赛选择选择N个父代,并用于生成N个子代解。
然后将子代集合O与群体P相结合,在P?O中具有较好的非支配前沿数和拥挤距离的N个解将存活到下一代。
最后,根据新的种群调整参数ρ和K。
因此,MOEA/PSL的交配选择和环境选择与NSGA-II[6]相同,而MOEA/PSL在学习的子空间中产生一些子解。

帕累托最优子空间的学习与子代生成

在这里插入图片描述
其中这个论文中最重要的技术帕累托最优子空间的学习,
首先就是二进制向量xb,旨在从大量候选集合中选择或删除少量元素,以优化特定目标
实向量xr ,找到一组参数的最佳值。
其中xbi表示第i个决策变量是否为零,xri表示第i个决策变量的实际值,
两数的乘积则代表每一个决策变量。
我们可以看出,如果xbi为0,整体则为0,那么就可以表示稀疏分布
而当xbi为1,那么实向量为最佳值,那么也就能够表示紧凑分布
因此我们用所有非支配解的二进制向量通过对比散度算法训练RBM,用所有非支配解的实向量通过梯度下降法训练DAE,使RBM和DAE能够分别学习稀疏分布和紧凑表示。
在这里插入图片描述
下面这张图也能直观的看到决策变量的值,是由二进制向量xb和实向量xr相乘得到,同时可以通过RBM算法来进行约简化,同时也可以通过式子,将约简化后的向量进行恢复。
每个解都可以在原始搜索空间和Pareto最优子空间之间映射,其中子代解在Pareto最优子空间中生成,并由原始搜索空间中的目标函数进行评估

在这里插入图片描述
在这里插入图片描述
输入的是初始化种群P,匹配池P’ p在帕累托最优子空间中生成子代解的比率,K隐藏层大小
输出:子代集合O
下面分为两步
模型训练:
NP 代表P中所有非支配解
NPB NP中解的二元向量
NPR NP中解的实向量
基于NPB的K个隐藏神经元的RBM训练
如果决策变量是实数,基于NPR的K个隐含神经元训练DAE
子代解生成
OB 子代解的二元向量
OR 子代解的实向量
当NPB不为空时
从NPB中随机选择两个向量xb、yb
如果决策变量为实数
同理从NPR中选择与NPB中xb和yb位置相同的两个向量 xr,yr

参数ρ用于确定每个子代解是在帕累托最优子空间还是在原始搜索空间中生成。
将参数ρ与[0,1]内的随机值进行比较,如果ρ大于随机值,则父代的二进制向量减去(1)得到xb’,yb’,对xb’和yb’进行单点交叉和逐位变异得到pb’ qb’。恢复则是由(2)式得到pb,qb,最后将pb,qb并起来组成OB
同理,用实向量通过模拟二进制交叉[51]和多项式变异生成两个子代解的实向量,得到OR.
如果不大于随机值,直接对xb和yb进行单点交叉和逐位变异得到pb,qb,并起来组成OB,OR

最后 通过(5)基于OB和OR生成子代解得到O;

MOEA/PSL中参数自适应策略

在这里插入图片描述
当前种群P, p在帕累托最优子空间生成子代解的比率
输出:p在帕累托最优子空间生成子代解的比率,隐藏层的大小
下面一步就是更新参数p
S1t-在帕累托最优子空间中生成子代解的数量
S2t当前代在原始搜索空间中生成的成功子代解的数量
在这里插入图片描述
我们可以看到6这个式子,首先pt代表第t代的p值 ,p0=0.5
这个比率可以反映出帕累托子空间生成子代解的有效性。
同时我们可以看到,当S1t数量较多的时候,在帕累托最优子空间中生成的成功子代解的比例越高,ρ就越大,反之亦然
确定参数K
参数K是根据当前种群中非支配解的稀疏性来确定的。
dec是表示每个决策变量是否应为非零的二元向量,根据非支配解集NP估计Decision设置为1的概率。
我们可以看到7这个式子,如果xi=0,那么整个式子也就等于0。否则的话就为1,然后通过将概率与[0,1]内均匀分布的随机值进行比较采样分贝值,由于可以忽略DEC中的零元素(即,决策变量的稀疏部分),因此将隐藏层的大小设置为DEC中的非零元素的数量。

实验结果

最后一部分就是实验结果这方面
在这里插入图片描述
在基准问题的结果
MOEA/PSL在24个测试实例中的19个上表现最好,SparseEA在5个测试实例上表现最好,而LMEA、WOFSMPSO和MAOEA-IT没有获得任何最好的结果。因此,MOEA/PSL和SparseEA的实验结果验证了稀疏性在求解稀疏问题中的重要性,MOEA/PSL比SparseEA的优越性验证了Pareto最优子空间学习在求解LMOP问题上的有效性。
在这里插入图片描述
关于现实世界的问题
提出的MOEA/PSL在这些实际问题上获得了最好的整体性能,在24个测试实例中的19个上取得了最好的性能,对于特征选择问题,MOEA/PSL的解略优于SparseEA和WOF-SMPSO
在这里插入图片描述
在两种神经网络在MOEA/PSL中的有效性方面,所有测试问题上都表现出比使用单一技术的测试方法更好的性能。(世代距离评价指标(Inverted Generational Distance, IGD) 是一个综合性能评价指标。它主要通过计算每个在真实 Pareto前沿面上的点(个体)到算法获取的个体集合之间的最小距离和,来评价算法的收敛性能和分布性能。值越小,算法的综合性能包括收敛性和分布性能越好)

最后揭示了帕累托Pareto最优子空间学习在求解稀疏多目标问题中的必要性,
同时对于我们的启发就是将所提出的Pareto最优子空间学习方法与其他更有效的多目标进化算法相结合来解决超大规模问题是非常有必要的。

重点

这是我从读者的角度来理解的这篇论文。通过前一段时间大组会上跟原作老师沟通,我知道了原作当时的一个想法。
对于这篇文章也有几个问题
为什么会选用RBM和DAE 这两种神经网络呢?
其实原作的想法很简单,就是想的是能够有降维,同时能够具有返回原来的值,并且能够达到稀疏的效果就可以了。然后通过自己想要的功能,再进行选择具有这种功能的神经网络,最后选出了RBM和DAE这两种神经网络。

下面这是我的ppt,如果需要,可以进行下载:https://download.csdn.net/download/qq_36317312/12804113

对于我的启发比较大,我们有时候读论文只是跟随着作者的思路而继续思考,有一个先入为主的效果,因而会往往不能理解作者当时的真实想法,所以有时候我们也得换一条思路,多思考作者是怎么样想的,思考作者为什么要这样做;那样的话,你会对文章理解的会更加深刻。希望能够对于你们有所帮助,后期我会继续更新我学习内容,可以点一波关注。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

研行笔录

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值