PSO搜参

论文地址:https://www.semanticscholar.org/paper/A-new-optimizer-using-particle-swarm-theory-Eberhart-Kennedy/8263efcbc5e6b3c7c022b1131038b888babc8548

算法思想

  PSO(Particle Swarm Optimization ,粒子群优化算法)算法的思想来源于对鸟群的捕食行为的观察。

  设想这样一个场景:一群鸟在随机搜索食物。在这个区域里只有一块食物。所有的鸟都不知道食物在哪里,但是他们鼻子够灵,知道当前的位置离食物还有多远,那么找到食物的最优策略是什么呢?最简单有效的就是搜寻目前离食物最近的鸟的周围区域。

  PSO从这种模型中得到启示并用于解决优化问题。PSO中,每个优化问题的解都是搜索空间中的一只鸟。我们称之为“粒子”。所有的粒子都有一个由被优化的函数决定的适应值(fitness value),我个人喜欢把这个值叫做损失值(loss),由损失函数求出。每个粒子还有一个速度决定他们飞翔的方向和距离。然后粒子们就追随当前的最优粒子在解空间中搜索。

  对模型参数,初始化为一群随机粒子(随机解),也可以根据经验或已有的实验初始化粒子。然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个"极值"来更新自己。第一个就是粒子本身所找到的最优解,这个解叫做个体极值pBest。另一个极值是整个种群目前找到的最优解,这个极值是全局极值gBest。另外也可以不用整个种群而只是用其中一部分作为粒子的邻居,那么在所有邻居中的极值就是局部极值。

pso算法

参数

  超参数包括:粒子个数m,参数个数n,参数上界限ub(如果有的话),参数下界限lb(如果有的话),迭代次数iter,以及损失函数中可能存在的超参数。

  PSO需要参数如下:

size 解释
x m × n m\times n m×n 粒子位置,每一行表示一个粒子在参数空间的向量表示,其中向量的每一个值,就表示一个参数
v m × n m\times n <
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值