首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vowpal Wabbit中上下文bandit的数值训练数据格式

Vowpal Wabbit中上下文bandit的数值训练数据格式
EN

Stack Overflow用户
提问于 2021-08-09 17:40:49
回答 1查看 72关注 0票数 0

我已经计划使用Vowpal Wabbit(大众)的上下文强盗来构建推荐系统。

我有N用户的M(在这种情况下是26)维数字特征,并有反馈日志,其中包含用户点击哪个项目(例如广告)的信息。每个反馈日志的有效操作总数略有不同(约为100~150)。只有来自项(操作)的信息才是其唯一ID。

因此,在这种情况下,我决定使用ADF学习模式(--cb_explore_adf)。但在the tutorial中,大众似乎只关心分类数据类型,而不是数字类型。无论如何,我尝试设置测试数据格式,如下所示。

代码语言:javascript
复制
shared |User feat_0=1.0 feat_1=0.00389094278216362 feat_2=0.004632890224456787 feat_3=0.003936515189707279 feat_4=0.0053831832483410835 ...  feat_23=0.4192083477973938 feat_24=0.003969503100961447 feat_25=0.0038898871280252934
|Action item_id=hamny-kU9bbbbbak
|Action item_id=hamny-kU9bcxP9v1
... 
|Action item_id=hamny-bbbbbcxP9v 
|Action item_id=hamny-k7bbbbbcxd 
|Action item_id=hamny-bbbbbbbbbc 
|Action item_id=hamny-aaaaaaaaac

上面的例子要求CB模型在给定26D用户上下文特征的100个动作中产生pmf(预测)。

在从模型和奖励中获得预测后,训练数据格式将为..

代码语言:javascript
复制
shared |User feat_0=1.0 feat_1=0.00389094278216362 feat_2=0.004632890224456787 feat_3=0.003936515189707279 feat_4=0.0053831832483410835 ...  feat_23=0.4192083477973938 feat_24=0.003969503100961447 feat_25=0.0038898871280252934
|Action item_id=hamny-kU9bbbbbak
|Action item_id=hamny-kU9bcxP9v1
... 
|Action item_id=hamny-bbbbbcxP9v 
0:-1:0.57124 |Action item_id=hamny-k7bbbbbcxd 
|Action item_id=hamny-bbbbbbbbbc 
|Action item_id=hamny-aaaaaaaaac

我不确定它的格式是否正确。但是,当我对CTR运行一些模拟时,我得到了与CB模型几乎相同的结果,而不考虑勘探选项(例如epsilonbagsoftmax等)。

我刚刚在教程函数(run_simulation)中尝试了相同的逻辑。唯一的区别是示例:共享上下文、操作数量和ADF。

EN

回答 1

Stack Overflow用户

发布于 2021-09-01 20:41:39

VW文本格式非常简单。在指定特性时,如果您使用':‘,然后使用浮点型,则允许您指定特性的值。如果':‘后面没有显式的值,则值为1。

因此,当您将一个特征作为feat_1=0.00389094278216362提供时,它是一个值为1的分类特征。这里需要注意的重要一点是,如果该特征字符串的任何部分发生更改,它将导致一个完全不同的特征(整个字符串被散列以确定其索引),因此feat_1=0.00389094278216363 (最后更改的字符)是一个完全不同的特征。这两者之间没有关系。

您可以尝试指定像feat_1:0.00389094278216362这样的值,但我不确定这是否真的有效。也许如果特征与结果之间存在某种线性关系?

您还可以尝试使用四舍五入将特征四舍五入到某个小数位。因此,feat_1=0.00389094278216362可能会变成feat_1=0.004

我不确定在这里应该做什么背后的理论,但这些是我的想法,你可以尝试经验。

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

https://stackoverflow.com/questions/68716366

复制
相关文章

相似问题

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