首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vowpal Wabbit -如何从测试样本上的上下文bandit模型获得预测概率

Vowpal Wabbit -如何从测试样本上的上下文bandit模型获得预测概率
EN

Stack Overflow用户
提问于 2017-01-16 12:17:16
回答 2查看 1K关注 0票数 5

给定一个经过训练的上下文bandit模型,我如何检索测试样本上的预测向量?

例如,假设我有一个名为"train.dat“的训练集,其中包含如下格式的行

代码语言:javascript
复制
1:-1:0.3 | a b c  # <action:cost:probability | features> 
2:2:0.3 | a d d 
3:-1:0.3 | a b e
....

我在命令下运行。

代码语言:javascript
复制
vw -d train.dat --cb 30 -f cb.model --save_resume

这将生成一个文件'cb.model‘。现在,假设我有一个测试数据集,如下所示

代码语言:javascript
复制
| a d d 
| a b e

我希望看到下面的概率

代码语言:javascript
复制
0.2 0.7 0.1

对这些概率的解释是,动作1应该在20%的时间内被选中,动作2- 70%,动作3- 10%。

有没有办法弄到这样的东西?

EN

回答 2

Stack Overflow用户

发布于 2018-02-05 10:35:53

当您使用"--cb K“时,预测是基于argmax策略的最优arm/动作,这是一个静态策略。

当使用"--cb_explore K“时,预测输出包含每个arm/动作的概率。根据您选择的策略,计算概率的方式会有所不同。

票数 5
EN

Stack Overflow用户

发布于 2018-03-26 00:14:56

如果您将这些行发送到运行您的模型的守护进程,您就会得到这样的结果。您发送一个上下文,而回复是允许的操作数量上的概率分布,大概包含模型提供的“建议”。

假设你有3个动作,就像你的例子一样。启动上下文盗贼守护程序:

代码语言:javascript
复制
vowpalwabbit/vw -d train.dat --cb_explore 3 -t --daemon --quiet --port 26542

然后发送一个上下文给它:

代码语言:javascript
复制
| a d d 

你会得到你想要的回复。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41669363

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档