论文背后: Anand Muralidhar 检测广告中的机器人点击

您为什么会加入亚马逊广告?
说实话,我一开始并不熟悉亚马逊广告的具体工作内容。2016 年,我正逐步结束在一家初创公司的工作,并且想找一个能让我研究机器学习模型的职位,而这个职位恰好出现了。我加入时并不了解项目的规模和复杂性,因此在加入团队后,我感到非常惊喜。
您专注于哪些研究领域?
我的研究重点一直在变化。在亚马逊职业生涯前四分之三的时间里,我研究的是如何检测机器人流量。在过去几年,我开始转为研究内容相关广告。这是亚马逊广告的一个重要关注领域,因为亚马逊广告会先尝试理解用户正在查看的网页或应用程序的内容,之后再展示与之相符的广告。举例来说,如果你正在浏览一个关于巧克力蛋糕配方的页面,那我们就希望向您展示与巧克力蛋糕相关的广告,比如烤盘、黄油和巧克力豆等。
什么是机器人流量?为什么会出现这种流量?
亚马逊广告每天会在 Amazon.com 上展示数十亿条广告,这些广告会被点击数百万次。而每次有人点击广告,亚马逊广告就会向广告主收费。网络上的一些不法分子试图利用这一点,并构建了机器人来点击这些广告。
构建机器人来点击广告的原因可能多种多样。假设你想耗尽某个手表卖家的广告预算。当有人在亚马逊站内搜索手表时,这个卖家的手表广告会被展示出来。如果用机器人来点击每条这种广告,卖家的广告预算很快就会耗尽,而实际上并没有人看到这些广告。再举一个机器人流量的例子:即使其他广告与搜索查询更相关,机器人也可以通过提高点击量来提高商品的广告排名。这可能会让机器学习系统做出错误判断,无意中提高商品的排名。
这些机器人的设计者已经变得非常老练,并且会不断地改进和优化自己的算法。
您的论文实时检测在线广告中的机器人流量是如何介绍解决这个问题的?
这篇论文讨论了一种可以识别此类机器人流量的机器学习模型:切片级机器人检测 (SLIDR)。SLIDR 实时运行,会分析用户在 Amazon.com 上查看广告时进行的每一次点击。它会判断点击是来自人类还是机器人,如果点击来自机器人,亚马逊广告不会向广告主收费。
SLIDR 于 2021 年部署,每天处理数千万次点击和数十亿次展示。如今,部署深度学习模型听起来不是什么大不了的事情,因为大家都会部署。不过,当我们在 2020 年开始部署这种模型时,它可能是第一个在 Amazon.com 上以如此大的规模运行的深度学习模型,对我们来说也是一个非常大的挑战。
SLIDR 模型会分析来自桌面设备、移动应用或移动网站等不同设备的流量片段。所有这些片段都需要以不同的方式进行处理,以实现系统的最大性能,我们研究出了一些技术来做到这一点。此外我们逐渐发现,需要设置一些防护措施来确保在生产环境中部署这些系统时不会出现任何问题,并且我们始终处于一种故障安全模式之下。这篇论文还介绍了有关我们如何设定问题的其他几项技术细节:模型架构、用于评估性能的指标类型,以及模型在不同的流量片段上的表现等。
这项研究及其影响有什么令人兴奋的地方?
SLIDR 最终为广告主节省了原本可能被浪费的费用。
另一个重要的事情是规模: 在这方面,很少有系统能与亚马逊广告相媲美。即便有人在探讨为大数据构建模型,他们实际上也没有以这种规模运行这些模型。
在亚马逊广告工作有一个巨大的优势,那就是你能够以几乎难以想象的规模处理数据。我们每天处理数十亿条记录,在一个月内就累积了海量数据。因此,我们构建的模型必须稳固、高效并受到密切监控。同时,我们在使用机器学习,因此还需要根据自己选择的任何指标来保证性能。
所有这些都让亚马逊广告成为了一个相当有挑战性并令人兴奋的工作场所。我们最终在数据中发现了很多特殊的现象,而如果你只是进行理论研究或概念验证,通常是看不到这些现象的。只有在以这么大的规模运行模型时,才会发现模型性能的微小变化可能对亚马逊的收入或客户的预算产生巨大影响,复杂性才会显现出来。
这项研究的另一个影响,就是让我们对于在生产框架中部署深度学习模型充满信心。在此之前,我们没有这方面的经验,也不知道如何实现。现在,亚马逊广告能够非常自如地大规模运行深度学习模型,实现了一个相当大的飞跃。
为什么您的团队决定开发 SLIDR 模型?
我的团队最初基于相对简单的规则构建了一些用于识别机器人流量的解决方案,随着时间的推移,这些规则变得非常复杂。我们跟踪了多种参数,例如特定 IP 地址的或用户的点击频率,以及过去几小时、几分钟、几秒钟内的点击量等。
随着亚马逊广告的业务增长,机器人流量的规模以及机器人作恶者所用算法的复杂性也随之增加。我们发现原有的规则无法跟上挑战的步伐,而每年甚至每季度手动调整这些规则是一项相当耗时的工作。
所以我们考虑是否应该从人工制定规则转变为使用机器学习模型。一开始这是一个需要解决的问题,不仅是因为规模,还因为实时性。我们只有几毫秒的时间来对点击进行评估。我们构建了一些叫做梯度提升树的模型,这些模型在运行了几年后取得了相当好的效果。但随后我们经历了深度学习的浪潮,并抓住机会进一步提升了模型。这些模型不断发展,而我们正在开发更复杂的技术,以便更好地区分人类点击和机器人点击。
您提到在加入亚马逊广告时,您对亚马逊广告的规模和复杂性感到惊喜。您还注意到了什么?
你可能会觉得,科学家负责坐在角落里开发机器学习模型,编写部署规范,然后将它们交给坐在别的地方的工程师。但事实并非如此。亚马逊广告的所有员工都在同一层楼工作,彼此相邻,这创造了一个非常有趣的环境,让科学家可以随时与工程师交流想法。
我们的团队已经建立了框架,让科学家能够毫不费力地在生产系统中部署模型。过去,从提出模型概念到将模型部署到生产环境这一周期长达好几个月,而我们现在已将这个周期缩短至几周。大家可以拿出一个很棒的新想法或新机器学习模型,快速对其进行测试,然后在生产环境中启动运行。这一点非常好,可以让人们在非常短的时间内看到自己的工作产生的影响。对一项几十亿美元规模的业务产生推动作用,我认为其他地方没有这样的机会。
在您的职位上,您是如何对广告进行革新与重塑的?
随着互联网浏览器继续远离第三方 Cookie,我的研究已经转向内容相关广告。这种广告可以识别网页的主要主题、内容和关键词,并根据这些信息展示最合适的广告。这就是亚马逊广告的责任:确保那些信任亚马逊广告的广告主能够继续获得与以前相同的广告效果。
亚马逊广告正在使用最先进的人工智能技术来加快内容相关广告领域的创新,为广告主和用户提供最佳体验。