美文网首页机器学习
Thompson抽样算法-R

Thompson抽样算法-R

作者: 灵妍 | 来源:发表于2018-04-18 22:04 被阅读35次

楔子:


Thompson抽样算法.PNG 贝叶斯推理.PNG
1、数据预处理

代码:

# Thompson Sampling

# Importing the dataset
dataset = read.csv('Ads_CTR_Optimisation.csv')
2、数据初始化

代码:

# Implementing Thompson Sampling
N = 10000
d = 10
ads_selected = integer(0)
numbers_of_rewards_1 = integer(d)
numbers_of_rewards_0 = integer(d)
total_reward = 0
3、ThompsonSampling

代码:

for (n in 1:N) {
  ad = 0
  max_random = 0
  for (i in 1:d) {
    random_beta = rbeta(n = 1,
                        shape1 = numbers_of_rewards_1[i] + 1,
                        shape2 = numbers_of_rewards_0[i] + 1)
    if (random_beta > max_random) {
      max_random = random_beta
      ad = i
    }
  }
  ads_selected = append(ads_selected, ad)
  reward = dataset[n, ad]
  if (reward == 1) {
    numbers_of_rewards_1[ad] = numbers_of_rewards_1[ad] + 1
  } else {
    numbers_of_rewards_0[ad] = numbers_of_rewards_0[ad] + 1
  }
  total_reward = total_reward + reward
}
4、数据可视化

代码:

# Visualising the results
hist(ads_selected,
     col = 'blue',
     main = 'Histogram of ads selections',
     xlab = 'Ads',
     ylab = 'Number of times each ad was selected')
5、结果
最佳广告.PNG 点击次数.PNG

我们可以看出:无论是点击次数还是寻找最佳广告的速度,Thompson抽样算法都更胜一筹。

相关文章

  • Thompson抽样算法-R

    楔子: 1、数据预处理 代码: 2、数据初始化 代码: 3、ThompsonSampling 代码: 4、数据可视...

  • Thompson抽样算法原理

    1、回顾多臂老虎机 在多臂老虎机中,我们通过探索加利用的方法,预测多臂老虎机的奖励分布。 我们将生活中的问题转化成...

  • Thompson抽样算法-Python

    楔子:伯努利试验:就是一次实验只有两种可能的结果n次伯努利试验:一次实验只有两种可能的结果,并且每次的实验之间相互...

  • 机器学习A-Z~Thompson抽样算法

    本文继续讲一个强化学习的算法,叫做Thompson抽样算法。这个算法的数学理论基础要用到的是贝叶斯推断(Bayes...

  • 蓄水池抽样算法(Reservoir Sampling)

    蓄水池抽样算法(Reservoir Sampling) 许多年以后,当听说蓄水池抽样算法时,邱simple将会想起...

  • 分层抽样

    这篇帖子中实现了常见集中抽样方法:【机器学习算法-python实现】采样算法的简单实现 但没有是实现 分层抽样。今...

  • 借鉴水塘抽样算法的一种解决思想

    1背景 关于水塘抽样的算法原理此处不再说明了, 本文重点是针对它的一种应用场景, 具体算法原理可参考水塘抽样算法原...

  • 推荐系统遇上深度学习(十三)--linUCB方法浅析及实现

    上一篇中介绍了Bandit算法,并介绍了几种简单的实现,如 Epsilon-Greedy算法,Thompson s...

  • 水库抽样

    水库抽样算法是一个典型的空间亚线性算法。 在很多时候我们要在海量数据中进行均匀的抽样,由于我们要取样的是海量数据,...

  • R语言统计抽样

    1 简单随机抽样 简单随机抽样是指从数据总体中任意抽取指定数量的数据作为样本,其中每个可能被抽取中的样本概率相...

网友评论

    本文标题:Thompson抽样算法-R

    本文链接:https://www.haomeiwen.com/subject/irnbkftx.html