推荐系统中的EE算法

news/2024/7/8 1:40:02

人生中有很多选择问题,当每天中午吃饭的时候,需要选择吃饭的餐馆,那么就面临一个选择,是选择熟悉的好吃的餐馆呢,还是冒风险选择一个没有尝试过的餐馆呢。同样的,推荐系统处处也面临着这样的选择,是推荐一个已经熟悉的点击率很高的物品呢,还是选择一个新的物品呢。这些都可以泛化成一个经典问题,多臂老虎机问题,也是一个研究很广的问题,这里介绍一些常用的bandit算法。

Topmpson sampling(汤普森采样)

假设每个臂是否产生收益,其背后有一个概率分布,产生收益的概率为 p。
我们不断地试验,去估计出一个置信度较高的 “概率 p 的概率分布” 就能近似解决这个问题了。
怎么能估计 “概率 p 的概率分布” 呢? 答案是假设概率 p 的概率分布符合 beta(wins, lose)分布,它有两个参数: wins, lose。
每个臂都维护一个 beta 分布的参数。每次试验后,选中一个臂,摇一下,有收益则该臂的 wins 增加 1,否则该臂的 lose 增加 1。
每次选择臂的方式是:用每个臂现有的 beta 分布产生一个随机数 b,选择所有臂产生的随机数中最大的那个臂去摇。
可以很简洁的用一行pyhton代码实现

import  numpy as np
import  pymc
N = 100
i = 0
win = [0 ,1, 3, 6, 10, 100]
trials = [0, 2, 5, 30, 21, 205]
while i<100: 
    choice = np.argmax(pymc.rbeta(1 + wins, 1 + trials - wins)) 
    wins[choice] += 1
    trials[choice] += 1
    i += 1

这个算法中重要点的理解:

在这里插入图片描述

UCB算法(Upper Confidence Bound)

在这里插入图片描述

Epsilon-Greedy 算法

在这里插入图片描述

总结

在这里插入图片描述
在这里插入图片描述


http://lihuaxi.xjx100.cn/news/1265267.html

相关文章

关于nginx,正向代理和反向代理是什么意思

为什么要使用nginx 很多公司会用到nginx做代理服务器&#xff0c;为什么用nginx&#xff0c;tomcat服务器不行吗&#xff1f; tomcat缺点&#xff1a;并发量小&#xff0c;用户使用的少 nginx&#xff1a;高并发&#xff0c;高性能&#xff0c;cpu、内存等资源消耗却非常低&…

Triton教程 --- 速率限制器

Triton教程 — 速率限制器 Triton系列教程: 快速开始利用Triton部署你自己的模型Triton架构模型仓库存储代理模型设置优化动态批处理 速率限制器 速率限制器管理 Triton 在模型实例上调度请求的速率。 速率限制器在 Triton 中加载的所有模型上运行&#xff0c;以允许跨模型优…

冥想第八百二十七天

1.今天周日&#xff0c;还是在下雨&#xff0c;带着溪溪桐桐去了郑大&#xff0c;跑了800m&#xff0c;感觉真好呀 2.空气非常好&#xff0c;充实的一天。 3.感谢父母&#xff0c;感谢朋友&#xff0c;感谢家人&#xff0c;感谢不断进步的自己。

从0到1精通自动化测试,pytest自动化测试框架,生成html报告与html报告报错截图+失败重跑(五)

目录 一、生成html报告 1、pytest-html 2、html报告 3、指定报告路径 4、显示选项 5、更多功能 二、html报告报错截图失败重跑 1、conftest.py 2、报告展示 3、失败重试 一、生成html报告 1、pytest-html pytest-HTML是一个插件&#xff0c;pytest用于生成测试结果…

用python写一个接收数据的服务

import socket # 定义服务器地址和端口号 SERVER_HOST localhost SERVER_PORT 8000 # 创建服务器套接字 server_socket socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 绑定地址和端口号 server_socket.bind((SERVER_HOST, SERVER_PORT)) # 监听客户端连接 server_so…

下峰锁定,行情未尽,筹码峰真的不会骗人吗?

在学习筹码分布的时候&#xff0c;经常可以看到这样的顺口溜&#xff1a;“上峰不死&#xff0c;下跌不止&#xff1b;下峰锁定&#xff0c;行情未尽”。简单解释一下就是&#xff1a;下跌行情中&#xff0c;如果上密集峰未被充分消耗&#xff0c;那么就没有新的行情产生&#…

实时监控Active Directory用户登录操作

用户登录到其域计算机是任何企业中发生的日常活动。一开始&#xff0c;这可能看起来是一个简单的Active Directory事件&#xff0c;但分配了不同角色的管理员可以将这些有价值的数据用于各种审计&#xff0c;合规性和运营需求。组织需要审核“AD 用户登录日志”的详细信息&…

2023-06-21:redis中什么是BigKey?该如何解决?

2023-06-21&#xff1a;redis中什么是BigKey&#xff1f;该如何解决&#xff1f; 答案2023-06-21&#xff1a; 什么是bigkey bigkey是指存储在Key-Value数据库中的键对应的值所占用的内存空间较大。举个例子&#xff0c;如果值是字符串类型&#xff0c;它可以达到最大512MB的…