机器学习——轮盘赌算法
轮盘赌选择法(roulette wheel selection)是最简单也是最常用的选择方法,在该方法中,各个个体的选择概率和其适应度值成比例,适应度越大,选中概率也越大。但实际在进行轮盘赌选择时个体的选择往往不是依据个体的选择概率,而是根据“累积概率”来进行选择。
轮盘赌选择法操作过程
以一个实例来讲述轮盘赌选择法的具体过程,现有一个抽奖轮盘如下:
pie
title 轮盘赌
"一等奖" : 5
"二等奖" : 15
"三等奖" : 20
"幸运奖" : 25
"谢谢参与": 35
对于这个游戏来说, 每一个奖项都有它概率。
奖项 | 谢谢参与 | 幸运奖 | 三等奖 | 二等奖 | 一等奖 |
---|---|---|---|---|---|
编号 | 1 | 2 | 3 | 4 | 5 |
选中概率 | 0.35 | 0.25 | 0.2 | 0.15 | 0.05 |
累计概率 | 0.35 | 0.6 | 0.8 | 0.95 | 1 |
但是对于轮盘赌这个说法来说,并没有这一说,概率往往用适应度来表示,类似于发生次数。
\(x_i\)的适应度记为\(f(x_i)\)。其计算公式为\(p(x_i)=\frac{f(x_i)}{\sum_{j=i}^Nf_j}\),很像softmax的计算公式。
同样的我们利用这个累计概率和cdf画两个图出来。
这样我们随机从0-1分布内取数,就可以获得与原数据分布相同的数据
有时会发现学习是一件很快乐的事情 比一直跑步容易多了 不是嘛