大规模点击率预测问题中使用了哪些类型的特征?

数据挖掘 机器学习 分类 大数据 数据集
2021-10-13 17:59:12

我经常在有关大规模学习的论文(示例)中看到的一点是,每个示例的点击率 (CTR) 问题可能具有多达 10 亿个特征。这篇 Google 论文中,作者提到:

我们系统中使用的功能来自各种来源,包括查询、广告创意的文本以及各种与广告相关的元数据。

我可以想象有几千个特征来自这种类型的来源,我猜是通过某种形式的特征散列。

我的问题是:如何获得十亿个特征?公司如何将用户行为转化为功能以达到这种功能规模?

1个回答

这确实是一个很好的问题,尽管一旦你是 Facebook 或 Google 等,你就会遇到相反的问题:如何将功能的数量从数十亿减少到十亿左右。

那里确实有数十亿个功能。

想象一下,在您的特征向量中,您有数十亿个可能的短语,用户可以在搜索引擎中输入这些短语。或者,您有数十亿个用户可以访问的网站。或者用户可以登录系统的数百万个位置。或者用户可以发送邮件或接收邮件的数十亿个邮件帐户。

或者,切换到类似社交网站的问题。想象一下,在您的特征向量中,您有数十亿用户,特定用户可能知道这些用户,或者与这些用户有一定程度的分离。您可以添加用户可以在其 SNS 供稿中发布的数十亿个链接,或者用户可以“喜欢”的数百万个页面(或执行 SNS 允许他执行的任何操作)。

从语音和图像识别到生物学、化学等的各个分支,在许多领域都可能发现类似的问题。我喜欢你的问题,因为这是深入研究处理大量特征问题的一个很好的起点。祝你探索这个地区好运!

由于您的评论而更新:

使用二进制以外的功能只是想象事物的一步。您可以以某种方式对搜索进行聚类,并计算特定聚类的搜索频率。

在 SNS 设置中,您可以建立用户之间的关系向量,定义为分离程度,而不是仅仅作为朋友或不是朋友的二元特征。

想象一下全球公司持有数百万用户的日志。有很多东西可以用比二进制更详细的方式来衡量。

一旦我们考虑在线设置,事情就会变得更加复杂。在这种情况下,您没有时间进行复杂的计算,并且您通常会留下二进制特征,因为它们更便宜。

不,我并不是说,一旦问题减少到神奇的十亿个特征,问题就会变得容易处理。我只是说,经过大量努力减少维度数量后,您可能最终会获得十亿个特征。