汤普森采样算法
原理
- 假设每个臂是否产生收益,决定于背后的一个概率分布,及产生收益的概率为p,每个臂对应的概率分布得出各自的随机数,最大的就是收益最高的
- 根据每次收益情况调整对应的概率分布
核心 (Beta)贝塔分布
贝塔分布: 是一种连续性概率密度分布,由形状参数(a,b)表示,一般用于伯努利事件成功概率的概率分布,定义域在(0,1)之间
伯努利试验:在同样的条件下重复地、相互独立地进行的一种随机试验 并且只有两种可能结果:发生或者不发生
分布特点:
对于不同的形状参数 a,b
- 分布很宽 a+b 很大
- 分布很窄 接近1 -> a/(a+b) 很大
- 分布很窄 接近0 -> a/(a+b) 很小
在推荐场景 a为候选项点击或购买次数 b为没有点击或购买的次数 用于解决推荐的冷启动和探索问题
python 实现
import pandas as pd
dataset=pd.read_excel("Ads_CTR_Optimisation.xlsx")
dataset.head()
<