实时无效机器人广告点击检测
切片级机器人检测(SLIDR)系统利用深度学习和优化技术,确保广告主无需为机器人或欺诈性广告点击付费。
在电子商务网站上,判断一次广告点击是由人类还是软件程序发起,被称为机器人广告点击检测。其目标是确保广告主的营销活动不会因机器人活动而被收费,同时保证人类点击不被误判。该系统需要实时运作,以最大程度地减少对广告主体验的影响,并且必须具备可扩展性、全面性、精确性,并能快速响应不断变化的流量模式。
在今年的人工智能创新应用会议(IAAI)上,我们提出了SLIDR(切片级机器人检测)系统。这是一个通过弱监督训练的实时深度神经网络模型,用于识别在线广告中的无效点击。SLIDR自2021年起已在亚马逊部署,保护广告主的活动免受机器人点击的影响。
在论文中,我们阐述了一个凸优化问题,使得SLIDR能够在单个流量切片上实现最优性能,同时控制整体误报率预算。我们还描述了我们的系统设计,该设计支持持续的离线再训练和大规模的实时推理,并分享了从部署SLIDR中学到的重要经验,包括使用防护措施防止异常模型更新,以及用于减轻或纠正故障模型决策的灾难恢复机制。
挑战
在线广告中的机器人活动检测面临多重挑战:(1) 难以获得具有高覆盖率的精确真实标签;(2) 机器人行为模式不断演变;(3) 不同流量切片(如桌面端与移动端)的机器人行为模式差异巨大;(4) 误报会减少广告收入。
标签
由于无法大规模获取准确的真实标签,我们通过识别两种极不可能由机器人完成的高门槛活动来生成数据标签:(1) 导致购买的广告点击;(2) 来自具有高RFM评分客户账户的广告点击。RFM评分代表了客户在亚马逊上购买行为的近度(R)、频率(F)和金额(M)。这两种点击都被标记为人类点击;所有剩余的点击则标记为非人类点击。
指标
由于缺乏可靠的真实标签,准确率等典型指标无法用于评估模型性能。因此,我们采用三个更具体的指标。
无效化率(IVR)定义为被算法标记为机器人的点击占总点击的比例。IVR反映了模型的召回率,因为IVR越高的模型,越有可能无效化机器人点击。
然而,单独使用IVR可能会产生误导,因为性能不佳的模型会同时无效化人类和机器人点击。因此,我们将IVR与误报率(FPR)结合衡量。我们将购买点击视为人类点击分布的代表,并将FPR定义为被算法无效化的购买点击的比例。这里我们做了两个假设:(1) 所有购买点击都是人类所为;(2) 购买点击是所有人类点击的一个代表性样本。
我们还通过检查模型对一个启发式规则的覆盖程度,来定义一个更精确的召回率变体。该启发式规则将一小时内广告点击次数超过k次的用户会话中的所有点击标记为极有可能是机器人。我们将这个指标称为机器人覆盖率。
用于检测机器人的神经网络模型
我们为模型考虑了多种输入特征,使其能够区分机器人和人类行为:
- 用户级频率和速率计数器:计算用户在不同时间段内的点击量和点击速率。这些特征有助于识别涉及突发点击的机器人攻击。
- 用户实体计数器:跟踪来自同一IP地址的不同会话或用户数量等统计信息。这些特征有助于识别可能是网关(背后有大量用户)的IP地址。
- 点击时间:跟踪一天中的小时和一周中的天,并将其映射到单位圆上。人类活动遵循昼夜和每周活动模式,而机器人活动通常不遵循。
- 登录状态:区分已登录客户和未登录会话,因为预计后者会有更多的机器人流量。
该神经网络是一个二分类器,由三个全连接层组成,激活函数为ReLU,并在中间层使用了L2正则化。
在训练模型时,我们使用了样本权重,根据一天中的小时、一周中的天、登录状态和标签值对点击进行同等加权。我们发现样本权重对于提高模型性能和稳定性至关重要,尤其是在夜间等稀疏数据切片上。
我们将模型与逻辑回归和计算点击速率分数的启发式规则等基线进行了比较。这两个基线都缺乏建模复杂模式的能力,因此无法像神经网络那样表现出色。
校准
校准涉及为模型的输出概率选择一个阈值,高于该阈值的所有点击都将被标记为无效。模型应无效化某些高概率的机器人点击,但同时避免因无效化人类点击而造成高额收入损失。为此,一种方法是选择IVR-FPR曲线的“拐点”,即超过该点后,误报率的增加速度相对于IVR的增加速度会急剧上升。
然而,跨所有流量切片一起校准模型会导致不同切片的行为差异。例如,通过全局校准获得的决策阈值应用于桌面端切片时可能欠校准:较低的阈值可能会无效化更多机器人。同样,当全局决策阈值应用于移动端切片时,可能过校准:较高的阈值可能能够在不影响机器人覆盖率的情况下挽回部分收入损失。
为确保所有流量切片的公平性,我们将校准问题形式化为一个凸优化问题。我们通过设定一个总的FPR预算(所有切片总FPR的上限)来对所有切片进行联合优化,并求解以最大化所有切片的总IVR。该优化必须满足两个条件:(1) 每个切片都有最低机器人覆盖率,这为其FPR设定了下限;(2) 所有切片的总FPR不应超过FPR预算。
由于每个切片的IVR-FPR曲线可以近似为FPR的二次函数,求解联合优化问题可以为每个切片找到合适的值。我们发现切片级校准对于降低整体FPR和提高机器人覆盖率至关重要。
部署
为了快速适应不断变化的机器人模式,我们构建了一个离线系统,该系统每天对模型进行再训练和重新校准。对于传入的流量请求,实时组件使用Redis和只读数据库缓存的组合来计算特征值,并在水平可扩展的GPU实例集群上运行神经网络推理。为了满足实时性要求,整个运行在AWS上的推理服务的p99.9延迟低于5毫秒。
为了解决再训练和重新校准期间的数据和模型异常问题,我们对输入训练数据和模型性能设置了某些防护措施。例如,当购买标签缺失几个小时时,模型可能会学会无效化大量流量。诸如每周每小时最低人类点击密度等防护措施可以防止此类行为。
我们还开发了灾难恢复机制,例如在观察到指标急剧偏差时快速回滚到先前稳定的模型,以及一个回放工具,该工具可以通过先前稳定的模型回放流量,或重新计算实时特征并发布延迟决策,这有助于防止高影响事件的发生。
未来,我们计划为模型增加更多特征,例如用户、IP地址、用户代理和搜索查询的学习表示。我们在NeurIPS 2022的论文《面向大规模表格数据的自监督预训练》中介绍了该方向的初步工作。我们还计划尝试先进的神经网络架构,如深度与交叉网络,该架构可以有效地捕捉表格数据中的特征交互。FINISHED