CN111095330A - 用于预测在线用户交互的机器学习方法和系统 - Google Patents
用于预测在线用户交互的机器学习方法和系统 Download PDFInfo
- Publication number
- CN111095330A CN111095330A CN201880056986.0A CN201880056986A CN111095330A CN 111095330 A CN111095330 A CN 111095330A CN 201880056986 A CN201880056986 A CN 201880056986A CN 111095330 A CN111095330 A CN 111095330A
- Authority
- CN
- China
- Prior art keywords
- content
- user
- machine learning
- processor
- event
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0273—Determination of fees for advertising
- G06Q30/0275—Auctions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0242—Determining effectiveness of advertisements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0254—Targeted advertisements based on statistics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0255—Targeted advertisements based on user history
Abstract
一种计算机实现的方法,包括访问在线数据存储库以检索与内容投放事件相关的记录以及与用户交互事件相关的记录。从原始特征值计算丰富训练特征向量集合,并将其与交互事件标签一起使用以训练机器学习模型。处理器被配置为执行机器学习模型,并且接收与在线内容投放位相关的信息和与用户相关的信息。处理器基于所选择的用于在在线内容投放位内投放的内容项、与用户相关的信息以及与在线内容投放位相关的信息,计算丰富估计特征向量。处理器基于丰富估计特征向量执行机器学习模型,以确定用户与所选择的内容项交互的可能性的估计。
Description
技术领域
本发明涉及机器学习模型在预测在线用户的行为方面的应用。特别地,本发明的实施例基于先前用户在相似上下文中的聚合行为来预测用户与在线内容元素的交互的可能性。本发明可以应用于在线广告系统中,例如以确定是否对要例如经由移动应用内的网页呈现给用户的广告的投放进行竞价。
背景技术
在线(例如,基于web、移动或应用内)广告与传统媒体中的广告不同之处在于其个性化受众定向的程度。例如,广播媒体广告(诸如电视广告之类)旨在到达由广泛特性(诸如年龄组、社会经济状态和/或一般兴趣之类)所定义的目标人群,而在线广告旨在到达对所呈现的产品、服务或信息具有特定兴趣的个人。
高度个性化受众定向技术已使得特定于在线广告的商业模型的发展。例如,现在对于提供新闻、聚合信息和特定用户感兴趣的其他内容的网站来说,托管第三方广告作为产生收入的手段已经很常见。这些网站上出现的广告的广告主可以基于观看机会或印象(通常如以“每千次印象(impression)成本”(又名CPM)来计量)、基于每次点击成本(CPC)或根据某种其它性能计量来向运营商付款。投放在要呈现给个人用户的网页上的广告的实际选择至少可以部分地基于竞价处理,由此愿意支付更高CPM、CPC或其它费用计量的广告主更可能将其广告呈现给用户。
根据一种常见的模型,“广告交易(exchange)平台”促进了竞价处理。广告交易所是这样的技术平台,其实现允许广告主和网站以及其它在线内容的发布者通常通过实时拍卖来买卖广告空间的数字市场。著名的广告交易平台包括DoubleClickTM(由GoogleTM拥有)、AppNexusTM、MicrosoftTM Ad ExchangeTM和OpenXTM。
广告交易所维护“广告位”池。发布者将其广告位(例如,嵌入在用于用户的网页内的可用广告位)贡献到池中。然后,买家可以对他们想要购买的广告位竞价。竞价决策通常基于诸如广告所用于的用户的先前行为、一天中的时间、设备类型、广告位置等信息实时做出。在实践中,这些竞价决策本身必须非常迅速地做出,例如,使用通常称为需求方平台(DSP)的技术平台在最多几十毫秒内做出。由于广告主通过广告交易购买印象会产生实际成本,因此DSP中部署的用于评估用户的潜在“价值”以便做出竞价决策的技术和算法的性能可能具有重大的业务影响。
举例来说,基于web的显示广告的平均点击率(CTR)约为0.05%,即每10,000次印象有5次点击。在经由广告交易购买广告位的情况下,每次印象都表示成本(即,获胜竞价后支付的价格)。但是,在采用CPC模型的情况下,平均只有0.05%的印象会导致产生收入。因此,较低的CTR会导致技术资源(诸如DSP的处理资源之类)的低效使用以及对于成功广告主的更高成本(由于较少的“点击”次数必须覆盖所有印象的成本)。此外,较低的CTR指示向在线用户显示的广告缺乏适当性或相关性。
因此,非常期望在DSP平台中部署能够导致更高CTR的技术。通过增强技术资源的利用率和增加用户与广告内容的交互产生的收入,此类技术可以使DSP运营商受益。广告主也可以从更有效和更成功的广告投放中受益,从而获得更高的点击率,并送达更多潜在感兴趣的顾客的受众。在线用户也从中受益,因为更高的CTR一般是由具有对用户的更大适当性和相关性的广告投放来实现的。
提高CTR的一种常见方法是采用在线跟踪来推断用户兴趣并投放与那些兴趣相关的广告内容。例如,浏览器cookie和其它跟踪技术可以用于收集关于例如用户访问的网站、在社交媒体网站上查看的主题和/或用户进行的在线搜索的信息。可以处理这样的信息以识别被推断为与用户相关的广告内容。但是,预测用户将与此类内容进行交互的可能性更为困难。如上所述,平均CTR很低,因此即使广告内容已基于用户兴趣进行有效定位,单个在线用户也很少与广告内容进行交互。相应地,很少有直接数据可以用于基于单个用户跟踪来预测用户与广告内容进行交互的可能性。
因此,显然需要实时计算机实现的技术、方法和系统,这些技术、方法和系统可以被部署在DSP内,并且能够通过广告交易平台做出关于广告选择和竞价的改进决策。特别地,期望提供用于预测在线用户将与广告内容交互的可能性的改进的方法和系统。为了满足技术要求,并确保在选择和竞价处理中不会过分增加页面加载时间,有必要在不超过几十毫秒的时间内做出这样的预测。本发明致力于解决这些需求。
发明内容
一方面,本发明提供了一种计算机实现的方法,包括:
访问在线数据存储库以检索与内容投放事件相关的记录以及与用户交互事件相关的记录,其中投放事件和交互事件在定义的时间段内发生;
将检索到的内容投放事件记录与检索到的交互事件记录进行匹配,以生成包括多条记录的匹配数据集合,该匹配数据集合的每条记录都包括从内容投放事件中导出的原始特征值集合以及指示是否发生了与内容投放事件对应的交互事件的交互事件标签;
从原始特征值计算丰富训练特征向量的对应集合;
使用丰富训练特征向量和对应的交互事件标签来训练机器学习模型;
在被配置为执行机器学习模型的处理器处,接收与在线内容投放位相关的信息和与将向其显示在线内容投放位内的内容的用户相关的信息;
由该处理器基于所选择的用于在在线内容投放位内投放的内容项、与用户相关的信息以及与在线内容投放位相关的信息,计算丰富估计特征向量;
由执行机器学习模型的该处理器基于丰富估计特征向量,确定用户与所选择的内容项交互的可能性的估计。
有利的是,本发明的实施例采用聚合的内容投放事件与聚合的用户交互事件的匹配,以支持使用机器学习模型预测在线用户与内容的交互。内容项可以例如是包括一个或多个供应物(offer)的在线广告,并且用户交互事件可以包括诸如对广告内的特定供应物的点击之类的交互。相应地,在这样的实施例中:
在线内容投放位是广告位;
接收与广告位相关的信息和与将向其显示广告位内的内容的用户相关的信息以及从广告交易服务器发送的竞价请求消息;以及
内容项包括用于投放在广告位内的至少一个供应物。
该方法还可以包括:
作为对竞价请求消息的回复,由处理器向广告交易服务器发送竞价响应消息;
由处理器从广告交易服务器接收成功竞价通知;
由处理器用与内容项的投放相关的内容投放事件数据更新在线数据存储库;
由处理器接收用户与内容项交互的通知;以及
用与内容项的用户交互相关的用户交互事件数据更新(226)在线数据存储库(166)。
以这种方式,本发明的实施例提供了对内容投放事件和用户交互事件的存储记录的连续更新,从而使得机器学习模型能够用关于用户行为的当前信息更新。为此,该方法可以包括重复执行以下步骤:访问在线数据存储库、将检索到的内容投放事件记录与检索到的交互事件记录进行匹配、计算丰富训练特征向量以及训练机器学习模型。
在另一方面,本发明提供了一种实现需求方平台的计算装置,该计算装置包括:
处理器;
处理器可访问的至少一个存储器设备;以及
与处理器可操作地相关联的数据通信接口,
其中存储器设备包含程序指令主体,该程序指令主体包括机器学习模型,该机器学习模型可由处理器执行并且被配置为确定用户与内容项交互的可能性的估计,该模型已使用丰富训练特征向量集合以及从匹配数据集合导出的对应的交互事件标签进行训练,该匹配数据集合是从与内容投放事件相关的记录和与从在线数据存储库中检索到的用户交互事件相关的记录生成的,其中投放事件和交互事件在定义的时间段内发生,
程序指令主体还包括指令,该指令在由处理器执行时使计算装置实现包括以下步骤的方法:
经由数据通信接口接收与在线内容投放位相关的信息和与将向其显示在线内容投放位内的内容的用户相关的信息;
基于所选择的用于投放在在线内容投放位内的内容项、与用户相关的信息以及与对应的在线内容投放位相关的信息,计算丰富估计特征向量;以及
执行机器学习模型以基于丰富估计特征向量确定用户与所选择的内容项交互的可能性的估计。
在本发明的实施例中,机器学习模型是包括多个模型系数的广义线性模型,并且特别地,机器学习模型可以是逻辑回归模型。
有利的是,多个模型系数可以存储在字典数据结构中,在该字典数据结构中,每个条目由键和系数值定义,其中每个键包括特征名称和对应的特征值的拼接的散列表示。使用这种类型的数据结构使得能够非常快速地(例如,在30毫秒内)计算对用户交互的可能性的预测。程序指令因此可以通过以下方式使计算装置实现执行机器学习模型的步骤:
为丰富估计特征向量的每个特征值生成对应的键;
从字典数据结构中检索每个生成的键的对应的系数值;以及
使用丰富估计特征向量和检索到的系数值计算用户与所选择的内容项交互的可能性的估计。
在其中在线内容投放位是广告位的实施例中,接收与广告位相关的信息和与将向其显示广告位内的内容的用户相关的信息以及从广告交易服务器发送的竞价请求消息,并且内容项包括用于投放在广告位内的至少一个供应物,程序指令主体还可以包括在由处理器执行时使计算装置实现包括以下步骤的方法的指令:
作为对竞价请求消息的回复,向广告交易服务器发送竞价响应消息;
响应于从广告交易服务器接收到成功竞价通知,用与内容项的投放相关的内容投放事件数据更新在线数据存储库;以及
响应于接收到用户与内容项的交互的通知,用与内容项的用户交互相关的用户交互事件数据更新在线数据存储库。
在又一方面,本发明提供了一种实现机器学习模型的训练的计算装置,该机器学习模型被配置为估计用户与内容项的交互的可能性,该计算装置包括:
处理器;
处理器可访问的至少一个存储器设备;以及
处理器可访问的数据存储库,
其中存储器设备包含程序指令主体,该程序指令主体包括指令,该指令在由处理器执行时使计算装置实现包括以下步骤的方法:
访问数据存储库以检索与内容投放事件相关的记录和与用户交互事件相关的记录,其中投放事件和交互事件在定义的时间段内发生;
将检索到的内容投放事件记录与检索到的交互事件记录进行匹配,以生成包括多条记录的匹配数据集合,该匹配数据集合的每条记录都包括从内容投放事件中导出的原始特征值集合以及指示是否发生了与内容投放事件对应的交互事件的交互事件标签;
从原始特征值计算丰富训练特征向量的对应集合;以及
使用丰富训练特征向量和对应的交互事件标签来训练机器学习模型。
在本发明的实施例中,机器学习模型是包括多个模型系数的逻辑回归模型,并且程序指令使计算装置实现以下步骤:使用借助“遵循正则化领导者”-近端(follow-the-regularised-leader-proximal,FTRL-proximal)学习的正则化逻辑回归来训练机器学习模型。
程序指令主体还可以包括指令,该指令在由处理器执行时使计算装置对于多个模型系数中的每个系数实现还包括以下步骤的方法:
生成键,该键包括特征名称和与该系数对应的特征值的散列表示;以及
在字典数据结构中,存储与该键相关联的该系数的值,
从而该字典数据结构包括对该机器学习模型的有效编码。
程序指令主体可以包括指令,该指令在由处理器执行时使计算装置重复执行以下步骤来更新机器学习模型:访问在线数据存储库、将检索到的内容投放事件记录与检索到的交互事件记录进行匹配、计算(406)丰富训练特征向量,以及训练机器学习模型。
在另一方面,本发明提供了一种包括程序代码指令的计算机程序,当所述程序在计算机上执行时,该程序代码指令用于执行根据第一方面的方法的步骤。程序代码指令可以例如存储在有形的机器可读介质上。
根据以下对各种实施例的描述,本发明的实施例的其它方面、优点和特征对于相关领域的技术人员将是显而易见的。但是,将认识到的是,本发明不限于所描述的实施例,提供这些实施例是为了说明如前述陈述和所附权利要求书中所定义的本发明的原理,并帮助技术人员将这些原理付诸于实践效果。
附图说明
现在将参考附图描述本发明的实施例,其中相同的附图标记指代相同的特征,并且其中:
图1是图示实施本发明的示例性联网系统的示意图;
图2示出了实施本发明的用户设备、web服务器和广告交易服务器与DSP之间的通信时间线;
图3是示例性地图示实施本发明的包括在线用户交互预测引擎的多个代码模块的框图;
图4示出了实施本发明的机器学习模型的在线更新的方法的流程图;
图5示出了根据本发明的实施例的特征工程化和模型超参数优化的方法的流程图;
图6示出了根据本发明的实施例的操作实时竞价模块的方法的流程图;以及
图7(a)和图7(b)示出了图示实施本发明的实时竞价模块的性能的图表。
具体实施方式
图1是图示包括需求方平台(DSP)服务器102的示例性联网系统100的框图,该需求方平台(DSP)服务器102被配置为实现根据本发明的实施例的针对投放广告内容进行竞价的方法。DSP服务器102可以包括具有常规体系架构的计算机系统。特别地,如图所示,DSP服务器102包括处理器104。处理器104例如经由如图所示的一个或多个数据/地址总线108可操作地与非易失性存储器/存储设备106相关联。非易失性存储设备106可以是硬盘驱动器,和/或可以包括固态非易失性存储器,诸如ROM、闪存、固态驱动器(SSD)等。处理器104还接口到与包含与DSP服务器102的操作相关的程序指令和瞬态数据的易失性存储设备110(诸如RAM之类)。
在常规配置中,存储设备106维护与DSP服务器102的正常操作相关的已知程序和数据内容。例如,存储设备106可以包含操作系统程序和数据,以及认证服务器102的预期功能所需的其它可执行应用软件。存储设备106还包含程序指令,这些程序指令在由处理器104执行时使DSP服务器102执行与本发明的实施例相关的操作,诸如下面更详细描述的并且特别是参考图2和图6描述的操作。在操作中,保持在存储设备106上的指令和数据被传送到易失性存储器110以便按需执行。
处理器104还以常规方式可操作地与通信接口112相关联。通信接口112促进对于广域数据通信网络(诸如互联网116)的访问。
在使用中,易失性存储设备110包含程序指令的对应主体114,程序指令从存储设备106传送并且被配置为执行实施本发明的特征的处理和其它操作。如下面进一步描述的,程序指令114包括根据本发明的对本领域的特定技术贡献。
关于DSP服务器102以及本说明书中描述的其它处理系统和设备的前述概述,除非上下文另有要求,否则诸如“处理器”、“计算机”等术语应当被理解为是指包括硬件和软件的组合的设备、装置和系统的多种可能实现方式。这包括单处理器设备和装置和多处理器设备和装置,包括便携式设备、台式计算机和各种类型的服务器系统,包括可以同位(co-located)或分布的协作硬件和软件平台。物理处理器可以包括通用CPU、数字信号处理器、图形处理单元(GPU)和/或适合于高效执行所需程序和算法的其它硬件设备。计算系统可以包括常规的个人计算机体系架构或其它通用硬件平台。软件可以包括开源和/或商业可用的操作系统软件以及各种应用和服务程序。替代地,计算或处理平台可以包括定制硬件和/或软件体系架构。为了增强可扩展性,计算和处理系统可以包括云计算平台,从而使得物理硬件资源能够响应于服务需求而被动态地分配。虽然所有这些变化都落入本发明的范围内,但是为了便于解释和理解,本文描述的示例性实施例基于单处理器通用计算平台,通常可用的操作系统平台和/或广泛可用的消费者产品,诸如台式PC、笔记本PC或膝上型PC、智能电话、平板计算机等。
特别地,在本说明书(包括权利要求书)中使用术语“处理单元”来指代被配置为执行特定定义任务(诸如访问和处理离线数据或在线数据、执行机器学习模型的训练步骤或执行机器学习模型的预测步骤)的任何合适的硬件和软件组合。这样的处理单元可以包括在单个处理设备上的单个位置处执行的可执行代码模块,或者可以包括在多个位置和/或多个处理设备上执行的协作可执行代码模块。例如,在本发明的一些实施例中,分类和竞价决策处理可以完全由在DSP服务器102上执行的代码来执行,而在其它实施例中,可以以分布式方式在多个DSP服务器上执行对应的处理。
如软件工程领域的技术人员所熟悉的,可以使用任何合适的编程语言、开发环境或语言和开发环境的组合来开发实施本发明的特征的软件组件(例如,程序指令114)。例如,可以使用C编程语言、Java编程语言、C++编程语言、Go编程语言和/或适用于实现网络或基于web的服务的多种语言(诸如JavaScript、HTML、PHP、ASP、JSP、Ruby、Python、Perl等)来开发合适的软件。这些示例并非旨在进行限制,并且将认识到的是,根据系统要求,可以采用方便的语言或开发系统。作为示例,提供了本说明书中呈现的描述、框图、流程图等,以使软件工程和机器学习领域的技术人员能够理解和认识到本发明的特征、性质和范围,并通过实现根据本公开的合适的软件代码而不需要运用附加的发明性创新来实施本发明的一个或多个实施例。
返回图1,系统100还包括附加的DSP服务器,例如118、120,其在使用中与DSP服务器102竞争以针对经由广告交易服务器122提供的在线广告位内的广告内容的投放进行竞价。广告交易服务器122实现数字市场,该数字市场允许网站和其它在线内容的发布者和广告主以实时在线拍卖的形式买卖广告空间,其中每个DSP服务器102、118、120是自动化的高速竞价者。广告交易服务器122包括数据库124,在数据库124中,它维护在线内容提供商(web服务器)和广告主(DSP)的细节,以便运营数字广告市场。诸如DoubleClickTM(由GoogleTM拥有)、AppNexusTM、MicrosoftTM Ad ExchangeTM和OpenXTM之类的广告交易平台的功能是众所周知的,因此除非为了充分说明本发明的实施例的操作所必需的,否则本文将不对其进行进一步详细描述。
系统100还包括用户终端设备,由终端设备126作为例证。终端设备126可以是例如台式PC或便携式PC、智能电话、平板电脑或其它个人计算设备,并且每个终端设备包括处理器128,该处理器128例如经由地址/数据总线130与易失性存储设备132、非易失性存储设备134和至少一个数据通信接口136接口。处理器128还接口到一个或多个用户输入/输出(I/O)接口140。易失性存储设备132包含与终端设备126的操作相关的程序指令和瞬态数据。
终端设备存储设备132、134可以包含与设备126的正常操作相关的程序和数据内容。这可以包括操作系统程序和数据(例如,与Windows、Android、iOS、MacOS、Linux或其它操作系统相关联),以及一般与本发明无关的其它可执行应用软件。存储设备132还包括程序指令138,该程序指令138在由处理器128执行时使终端设备能够向用户提供对在线内容的访问。虽然已知许多应用提供这种访问,但是为了简单起见,在本说明书中,假定程序指令138实现具有经由用户I/O接口140呈现的图形用户界面(GUI)的web浏览器。
相应地,在终端设备126的用户访问web服务器142的情况下,经由设备UI 140生成对应的网页显示144。显示144包括网站内容146和一个或多个广告位(例如148、150)。如进一步图示的,每个广告位148、150可以包括代表广告主的多个特定“供应物”。这些供应物通常以网格布局布置,例如如图1中的虚线矩形148a、148b、148c、150a、150b、150c所指示的。然后进行许多通信步骤以便填充这些广告位,即,在网页显示144内向在线广告主提供广告印象。现在将参考图2所示的时间线200来描述这些通信步骤。
最初,用户终端126经由执行的web浏览器应用138并且响应于用户输入,向web服务器142发送202HTTP请求,该HTTP请求包括期望的web内容的URL。web服务器142通过将内容(例如,以HTML格式的网页)发送204到用户设备126来响应。如web编程领域的技术人员将认识到的,网页显示144的完整填充和呈现可能需要多个请求和响应,并且可能涉及与web服务器142和/或与其它在线服务器(诸如内容分发网络(CDN)服务器和其它提供嵌入内容的web服务器)的进一步事务。为了简单起见并促进专注于实施本发明的特征的通信,所有这些已知的附加事务在图2中由单个示例性通信206表示。
为了获得广告内容以填充广告位148、广告位150,由web服务器142发送到用户设备126的网页通常包括超文本引用(“href”),其引导浏览器138根据由服务器122的相关运营商定义和提供的应用编程接口(API)从广告交易服务器122检索内容。相应地,用户设备126将HTTP请求发送208到广告交易服务器122。请求包括网站信息和与终端设备126的用户相关的用户信息。可用的用户信息可以包括web服务器142已收集的信息,并且可以包括客户端侧信息,诸如设备和浏览器标识和技术细节、浏览器cookie的识别信息和内容等。用于收集、维护和跟踪用户和设备信息的许多在线机制是众所周知的,并且对于web编程领域的技术人员是可获得的,因此这里不再进一步详细描述。
广告交易服务器122接收该请求、在其数据库124中识别相关的DSP服务器102、118、120,并且向每个选择的DSP服务器发送210竞价请求消息。在实施本发明的DSP服务器102处接收包括站点和用户信息的一个这样的竞价请求消息,该DSP服务器102根据其特定的编程114执行处理212,以便预测用户与所选择的广告的交互的可能性并得出竞价决策,所选择的广告包括投放在可用广告位148、150中的一个或多个广告位内的一个或多个供应物。在对所提供的印象进行竞价的决策被做出并且竞价价格被确定的情况下,DSP服务器102然后将竞价发送214到广告交易服务器122。
广告交易服务器122接收从包括服务器102的DSP服务器发送的所有竞价,并选择获胜的竞价。然后,它从其数据库124中检索与获胜竞价对应的广告内容,并将该广告内容发送216到用户设备126,以在对应的广告位(例如,广告位148或广告位150)内呈现。
众所周知,从用户的角度来看,页面加载速度是网站的重要特性,完全加载网页所需的时间过长是不希望的。典型地,加载时间优选地不超过几秒钟,例如3秒218。如上面已经描述的,要完全服务复杂网页的所有内容,需要许多步骤,这些步骤可能涉及全球互联网上的多个服务器。相应地,重要的是严格限制由广告交易服务器202促进的竞价处理的持续时间。当前认为,DSP服务器102应该在不超过几十毫秒内,例如在不到30毫秒220内做出竞价决策。该决策须用有限的用户信息并且鉴于错误的决策可能会对广告主造成很大后果的事实而做出。例如,如果DSP服务器错误地确定用户是特定广告的期望目标(即,计算“假正面(positive)”),那么它可能投放相对高的获胜竞价并产生实际成本,而几乎没有或完全没有任何回报前景。相反,如果DSP服务器错误地确定用户不是广告的期望目标(即,计算“假负面(negative)”),那么它可能没有竞价,或者投放低的失败竞价,并导致广告主错失获得带来真正回报前景的印象的机会。
为了在旅行预订服务的上下文中以高速实现质量决策,本发明的实施例采用机器学习方法。为了进一步促进对该方法的理解,现在回到图1进行参考,其中系统100还包括机器学习服务器(“ML服务器”)152,其被配置为处理与内容(即,广告/供应物)的投放以及用户交互(即,用户对广告/供应物的点击)相关的原始数据,以生成用于机器学习模型的训练数据集合,并训练机器学习模型以部署到DSP服务器102。下面参考图3和图4更详细地描述处理、训练和部署步骤,并且可以连续地、定期地和/或按需地执行处理、训练和部署步骤,以便维持机器学习模型的即时性(currency)。
如DSP服务器102那样,ML服务器152可以包括具有常规体系架构的计算机系统,例如,包括经由所示的一个或多个数据/地址总线158与非易失性存储器/存储设备156可操作地相关联的处理器154。处理器154还接口到易失性存储设备160,该易失性存储设备160包含与ML服务器152的操作相关的程序指令和瞬态数据。常规上,存储设备156包含操作系统程序和数据以及ML服务器152的预期功能所需的其它可执行应用软件,并且包括程序指令,该程序指令在由处理器154执行时使ML服务器152执行与本发明的实施例相关的操作,诸如下面特别参考图3和图4更详细描述的操作。在操作中,保持在存储设备156上的指令和数据被传送到易失性存储器150用于按需执行。附加地,处理器154以常规方式可操作地与通信接口162相关联,从而提供对互联网116的访问。
在使用中,易失性存储设备160包含从存储设备156传送的并且被配置为执行实施本发明的处理、训练和部署步骤的程序指令的对应主体164。程序指令164包括根据本发明的对本领域的进一步的特定技术贡献。
系统100还包括至少一个数据库166,其被配置为存储与内容(即,广告/供应物)的投放以及用户交互(即,用户对广告/供应物的点击)相关的原始历史数据。此类数据的量在感兴趣的时间段(诸如一个或多个月)内可能非常大。例如,在特定的实时部署中,发现单日的数据日志包含约2000万行(即,投放事件和交互事件),其总存储大小约为10Gb。相应地,数据库166优选地使用针对跨多个数据库服务器和存储设备的非常大量数据(有时称为“大数据”)的高效存储、检索和更新而优化的技术来实现。虽然存在许多合适的商业和开源技术来用于数据库166的实现,但是示例性实验实施例已经使用Apache Hadoop框架来实现,其中数据以Parquet格式存储在HDFS(Hadoop分布式文件系统)上并且使用Impala来提供高速、类似于SQL的查询引擎。已经对该实现方式进行了测试,并且发现该实现方式为本发明的实施例的实际在线部署提供了更为充分的性能。
DSP服务器102和ML服务器152都可以访问数据库166。在图1中,逻辑访问由对应的箭头图示。在实际的实施例中,数据库166与DSP服务器102和ML服务器152之间的物理访问可以经由互联网116,以及/或者经由其它专用通信链路或网络,诸如本地存储区域网络(SAN)之类。DSP服务器102被配置为用与投放事件和交互事件相关的原始数据实时地更新数据库166。根据本发明的实施例,ML服务器152被配置为从数据库166中检索原始数据,并且基于检索到的数据来执行处理、训练和部署步骤。
返回图2,图示了与由DSP服务器102更新数据库166相关的进一步操作。特别地,在DSP服务器102投放成功竞价,并且对应的广告内容被发送216到用户设备126的情况下,DSP服务器102更新222数据库166,添加与广告的投放相关的数据(即,广告/供应物印象)。与广告相关联的代码被配置为使得在用户随后与广告进行交互(即,点击)的情况下,DSP服务器102直接或间接地接收该交互事件的通知224。然后,DSP服务器102用该交互事件的细节更新226数据库166。以这种方式,用与DSP服务器102已知的所有投放事件和交互事件相关的原始数据连续地更新数据库166。
图3是示例性地图示多个代码模块的框图,这些代码模块一起包括实施本发明的在线用户交互预测引擎300。用户交互预测引擎300的实现跨ML服务器152和DSP服务器102分布,如图3中的虚线框所示。引擎300的ML服务器组件由三个代码模块组成,即匹配模块302、特征丰富模块304和机器学习模块306。这三个模块全部在ML服务器152上执行的程序指令164内实现。现在将更详细地描述在这些模块中的每个模块内实现的功能。
匹配模块302的目的是将投放事件(即,用户设备126的显示144的广告位148、广告位150中的广告以及广告内的供应物的显示)与随后的交互事件(即,用户对投放在用户设备126的显示144上的广告内的供应物的点击实例)进行匹配。匹配使得投放事件能够被标记为“被点击”或“未被点击”,使得它们可以被机器学习模块306用于有监督的机器学习模型的训练,以基于投放事件数据预测用户交互事件。此外,匹配使得投放事件数据能够与对应的交互事件数据组合以创建包含关于投放和交互的所有可用信息的被点击广告的记录。
匹配带来了挑战,因为在投放事件(广告印象)和随后的用户交互(广告点击)之间没有明确的链接。如图2的时间线200中所示,用户交互可以在投放之后的任何时间发生,例如,在显著的延迟之后发生。由于新的投放事件和/或交互事件可以在实时系统中以非常高的速率(例如每秒数百次或数千次)发生,因此对应的投放事件和/或交互事件在数据库166中可能会变得广泛分离。此外,交互事件率可能非常低,例如,据一般报道,基于web的显示广告的点击率(CTR)约为0.05%。此外,期望在供应物级别而不是仅在广告级别处对投放事件和交互事件进行链接。
在本发明的实施例中针对匹配采用的一般方法是在数据库166中识别预定时间窗口内具有所选择的匹配参数集合的投放事件和随后的交互事件。时间窗口应具有足够的持续时间以捕获所有交互的绝大部分,并且参数的数量和选择应足以确保在绝大多数情况下进行唯一匹配。完美匹配可能难以实现,因为无法知道交互是否发生或何时发生。较长持续时间的时间窗口将捕获在较长延迟之后发生的交互,但是也会增加错误匹配(其中例如用户与随后呈现的具有相似参数的广告交互)的风险。类似地,可以通过使用较大的所选择的参数集合在呈现的广告之间进行区分以减少错误匹配的风险,但代价是使匹配处理更加复杂。
在示例性实验实施例中,已经使用从实时系统捕获的事件数据在代表广告主操作的领域特定的DSP服务器的上下文中实现了本发明。采取启发式方法来设计匹配模块,并进行了许多实验以确定合适的时间窗口和所选择的参数集合。与匹配以下事件参数相结合,发现80秒时间窗口是有效的:
·唯一的用户标识符(经由浏览器cookie跟踪);
·广告主标识符;
·发布者标识符(即,通过其投放广告的广告交易/分发网络);
·被点击的供应物的格式(例如,供应物图形的宽度和高度,以像素为单位);
·广告产品类型;
·广告产品池;
·用户细分(基于用户先前查看的诸如航班、宾馆或餐馆之类的产品的用户产品细分和指示用户自上一次活动以来已经经过的时间的用户时间细分的组合);
·站点URL;
·广告位可见性;
·用户设备;
·用户正在寻找关于其的信息的目的地(地点)与作为特定供应物的主题的目的地之间的距离的测量;以及
·广告位键(用于发布者、广告位和页面的组合的稳定标识符)。
在示例性实施例中,使用Impala SQL查询来执行匹配,以选择并联接关于与上面列出的参数对应的字段的值的投放事件和交互事件的记录的表。具体而言,将投放记录左联接(LEFT JOIN)到交互记录,使得结果得到的表包括用于每个投放事件的行。每行包括从匹配事件导出的原始特征的值的集合,以及指示是否发生交互事件(即,广告/供应物点击)的指示符。匹配数据的表被输入到特征丰富模块304。
特征丰富模块304的功能是从由匹配模块302生成的匹配数据表中的原始特征的值中导出由供机器学习模块306使用的丰富特征向量的对应集合。下面参考图5详细描述用于确定丰富特征的合适集合的处理(即,特征工程化)。在图3中,由特征丰富模块304使用的丰富特征的定义被示出为存储在数据存储库308内的文件310中,但是,这可以被认为是示意性方便起见。在实际实施例中,可以以这种方式存储特征定义、可以将特征定义编译到代码模块并链接到特征丰富模块304,或者可以将其硬编码到特征丰富模块。将认识到的是,这些实现选项中的每一个(以及对于本领域技术人员而言显而易见的其它实现选项)都可能在灵活性、代码复杂度和执行速度之间提供不同的权衡。
在示例性实施例中,所有丰富特征都是分类类型的(即,采用多个离散值之一),并且是独热(one-hot)编码的。因此,结果得到的特征向量一般是相对稀疏的,并且包括二进制元素。此外,每个特征向量对应于呈现给用户的广告内的供应物,并且与指示用户是否与该供应物交互(即,点击供应物)的二进制标签相关联。结果得到的特征向量和标签的表被输入到机器学习模块306。
机器学习模块306包括在ML服务器152上执行的程序代码,并且在示例性实验实施例中被配置为实现广义线性模型。具体而言,示例性实施例的机器学习模块306利用“遵循正则化领导者”-近端(FTRL-proximal)学习来实现正则化逻辑回归算法。有利的是,这种机器学习算法已知在高度不平衡的数据集的情况下是有效的(注意特征向量表中只有约0.05%的样本被标记为“被点击”)。该算法的更多细节及其在点击预测中的应用可以参见H.Brendan McMahan等人的“Ad Click Prediction:a View from the Trenches”,KDD'13,2013年8月11日至14日,芝加哥,美国伊利诺伊州。该算法具有多个可以被调整以便针对特定问题优化其在训练数据上的学习准确性的超参数。下面参考图5详细描述确定用于超参数的值的合适集合的处理。在图3中,供机器学习模块306使用的超参数的固定值被示出为存储在数据存储库308内的文件312中。但是,如将认识到的是,替代实现方式是可能的,诸如将参数硬编码到机器学习模块306中。
如将在下面参考图6更详细地描述的,机器学习模块306在特定数据集上的执行导致可以由DSP服务器102执行的模型的生成。特别地,逻辑回归模型的特征完全在于与输入特征向量的元素相关联的系数集合。在示例性实施例中,采用模型的特别高效表示,以使DSP服务器102能够非常迅速地(即恰好在30毫秒目标窗口220内)计算用户交互的可能性的预测,以生成竞价决定。具体而言,系数被存储在字典数据结构中,其中每个条目由键和值来定义。键是特征名称(即,特征表中的列标签)和对应特征值(即,独热编码之前的分类值)的拼接的散列表示。字典中的关联值就是对应的模型系数。已知这种类型的数据结构提供非常快的查找,尤其对于稀疏特征集。特别地,通过使用散列值,可以对散列特征的数量施加限制(这种方案有时被称为“散列特技(trick)”)。该方案可以用于极大地加快查找和计算速度,但以字典关键值可能发生冲突为代价。但是,有利的是,从算法的整体性能的角度来看,可以忽略这些冲突的统计效果。
为了部署到DSP服务器102,模型数据结构以二进制格式被序列化(在示例性实施例中,使用了Python“pickle”格式),并且被存储在数据存储库308中的模型文件314中。
在使用中,ML服务器152重复地(例如,连续地、周期性地或按需地)执行模块302、304、306。这由图4中所示的流程图400示出。在步骤402处,从数据库166中检索原始数据。示例性实施例使用预定时间段的最近数据,其被视为代表系统100的当前在线用户的行为。例如,可以采用来自最近一个月时间段的原始数据。在步骤404处,匹配模块302执行投放事件和交互事件的匹配,如已经描述的。在实践中,检索402步骤和匹配404步骤可以被组合为单个查询,例如,Impala SQL查询。
在步骤406处,ML服务器152执行特征丰富模块,其使用丰富特征定义310来计算与匹配数据对应的丰富特征向量。这些被传送到机器学习模块306,该机器学习模块306使用被标记的特征向量和在配置文件312中定义的预定超参数来训练模型。结果得到的模型系数被散列化、序列化并发布410到模型文件314。
可选地,ML服务器然后在步骤402处重新开始该处理之前等待412。从等待条件412的退出可能由多种不同的事件触发。例如,ML服务器可以被配置为定期地(例如,每天一次)运行模块302、304、306。替代地或附加地,它可以被配置为按需(例如,当接收到来自系统100内的控制器(未示出)的信号时)运行模块302、304、306。在一些实施例中,ML服务器可以连续地运行模块302、304、306,从而基于数据匹配、特征丰富和模型训练所需的时间尽可能频繁地更新模型文件314。在示例性实验配置中,发现基于30分钟批次数据的更新在匹配模块302的输出质量(即,针对良好的训练数据集准确协调交互事件和投放事件的需要)与对广告交易网络中实时变化(例如,新的活动发布、竞争对手的进入/退出、对一些内容的用户需求的变化等)的反应性之间提供了适当的权衡。
现在转到图5,其中示出了根据本发明的实施例的特征工程化和模型超参数优化的处理的流程图500。在实践中,处理500是部分自动化的,并且在人工监督下操作。具有强大预测能力的适当特征的开发以及模型超参数的适当范围的选择涉及大量的经验、判断力、创造力和独创性,并且在大多数情况下不能被高效地完全自动化。
处理500需要在步骤502处被检索并且可以以与上面所描述的相同方式来获得的关于匹配模块302的功能的测试数据集合。特别地,可以使用与匹配模块302所使用的形式相同形式的Impala SQL查询从数据库166中提取用于所选择的测试时段的数据。
在步骤504处,定义并配置了丰富特征集合。在示例性实施例中,该步骤包括应用有经验的数据科学家的判断力、创造力和独创性。在实践中,根据处理500并且在测试数据集的进一步分析的支持下,已经进行了许多实验,以便识别丰富特征的有效集合。在步骤506处,从原始测试数据集合计算所定义的丰富特征的值。
在步骤508处,选择超参数值集合,并且用所选择的值来配置机器学习模型。在步骤510处,使用丰富测试数据来训练结果得到的模型。典型地,测试数据的一部分在训练步骤510中被保留,然后在交叉验证步骤512中使用该部分来评估被训练模型在训练步骤510期间未看到的数据上的性能。
然后在决策步骤514处评估被训练模型的性能,例如通过达到某种最佳或足够的性能水平来确定其是否可接受。选择评估性能的标准对于识别可接受的模型可能是重要的。可以采用各种已知的标准,诸如接收者操作曲线下的面积(AUROC)、对数损失或基尼系数(Gini)(其与AUROC相关)。在示例性实施例中,基尼系数(其取值介于-1和1之间,并且被期望尽可能高)和对数损失(被期望尽可能低)的组合用于评估不同模型的性能。该方法不仅用于所选择的FTRL-近端模型的不同超参数,而且还用于由于在分析的数据集上提供不佳的性能而最终被拒绝的许多替代模型,包括决策树(分布式随机森林、梯度提升树)、朴素贝叶斯和深度学习网络。
在性能被认为是不可接受的或优化处理不完整的情况下,在决策514处,对是否更新模型超参数做出进一步的决策516。结果得到的配置超参数、训练和测试模型的循环通常使用诸如网格搜索或类似的算法来自动化。在这种情况下,监督数据科学家的作用是为超参数的网格确定合适的范围。
在不需要超参数的进一步变化的情况下,经由决策518实现的外部循环允许丰富特征的替代集合的测试。如果已经用尽模型算法、超参数和丰富特征的可用选择和值而没有识别出可接受的模型,那么处理500可以被视为已经失败,并且可能需要重新考虑策略。但是,出于示例性实施例的目的,处理500导致具有可接受性能的模型。因此,在步骤520处,将识别出的丰富特征定义和模型超参数写入数据存储库308中的数据文件310、312中。表1中呈现了经由处理500开发的丰富特征的摘要。
返回图3,在线用户交互预测引擎300包括实时竞价模块316,其在DSP服务器102上执行的程序指令114内实现。实时竞价模块316采用丰富特征定义310和被训练的模型表示314。特别地,实时竞价模块316的操作由图6中所示的流程图600表示,其中在步骤602处,接收站点和用户信息,即,经由从广告交易服务器122的传输210接收站点和用户信息。该信息在步骤604处用于根据定义310来计算对应的丰富特征向量。
在步骤606处,实时竞价模块访问如已经描述的模型表示,该模型表示包括存储在高效字典结构中用于快速系数查找的系数集合。如上所述,特别是参考图4,可以由ML服务器152不时地更新模型。模型表示314可以存储在共享存储介质308中,并且可以由DSP服务器102异步读取。在一些实施例中,DSP服务器可以维护用于快速访问的模型表示314的高速缓存副本,该高速缓存副本在由ML服务器152更新存储的文件时被更新。
该模型的输出是基于丰富特征向量的与所选择的广告内的供应物的用户交互的可能性的估计。在示例性实施例中,该输出是表示用户将点击所选择的广告内的供应物的概率的值。在步骤608处,该值在竞价决策处理中使用。处理608可以包括确定究竟是否要竞价,和/或确定针对可用广告位竞价的特定价格。例如,可以应用阈值,使得如果该值低于阈值,则不进行竞价。在一些实施例中,可以基于值的大小来确定竞价额,使得如果模型指示用户将点击所选择的广告内的供应物的更高可能性,则竞价更高的价格。在做出针对广告位进行竞价的决定的情况下,控制被引导610到步骤612,在步骤612中竞价信息被发送214回到广告交易服务器122。在竞价成功的情况下,控制被引导614到步骤616,在步骤616中,用投放事件的细节来更新数据库166。
为了评估实施本发明的实时竞价模块316的性能,将实验模块与实现常规竞价算法的多个模块并行运行。结果显示在图7(a)和图7(b)的图表中。
特别地,图7(a)是在垂直轴702上具有点击率(CTR)的图表700,其中十个竞价模块的对应性能被显示为一系列条块。条块704表示九个常规竞价模块的性能,而条块706表示实施本发明的实验竞价器的性能。如可以看到的,实验竞价器实现的CTR约为常规竞价器平均性能的五倍。
图7(b)是在垂直轴710上具有被定义为净利润除以成本的边际(margin)的图表708。条块712表示九个常规竞价模块的性能,所有九个常规竞价模块都处于亏损运营。但是,由条块714表示的实验竞价器能够获利运营。
因此,图7(a)和7(b)中的结果清楚地演示了本发明相对于预测在线用户交互的常规方法可实现的技术优势和实践优势。
应该认识到的是,虽然本文已经描述了本发明的特定实施例和变型,但是对于相关领域的技术人员来说,进一步的修改和替换将是显而易见的。特别地,这些示例是通过图示本发明的原理的方式提供,并提供了许多使这些原理生效的具体方法和布置。一般而言,本发明的实施例依赖于提供技术布置,由此可以基于从机器学习模型导出的用户交互的预测来执行自动化的实时在线决策,该机器学习模型是使用从投放事件和交互事件的数据库中导出的数据来训练的。由示例性实施例实现的技术步骤包括匹配事件以生成被标记以供有监督的学习算法使用的组合的投放/交互记录、计算用于在线学习的丰富特征向量以及基于连续地更新事件数据来训练机器学习模型,以维护具有高效格式的可由实时竞价模块使用以做出快速决策(例如在30毫秒内)的当前且定期更新的模型表示。
所描述的实施例应该被理解为是通过示例的方式提供的,是为了教导本发明的一般特征和原理,但是不应被理解为限制本发明的范围,本发明的范围如所附权利要求书所定义。
表1:丰富特征摘要
Claims (19)
1.一种实现需求方平台的计算装置,所述计算装置包括:
处理器;
所述处理器可访问的至少一个存储器设备;以及
与所述处理器可操作地相关联的数据通信接口,
其中所述存储器设备包含程序指令主体,所述程序指令主体包括机器学习模型,所述机器学习模型可由所述处理器执行并且被配置为确定用户与内容项交互的可能性的估计,所述模型已使用丰富训练特征向量集合以及从匹配数据集合导出的对应的交互事件标签进行训练,所述匹配数据集合是从与内容投放事件相关的记录和与从在线数据存储库中检索到的用户交互事件相关的记录生成的,其中所述投放事件和所述交互事件在定义的时间段内发生,
所述程序指令主体还包括指令,所述指令在由所述处理器执行时使所述计算装置实现包括以下步骤的方法:
经由所述数据通信接口接收与在线内容投放位相关的信息和与将向其显示所述在线内容投放位内的内容的用户相关的信息;
基于所选择的用于投放在所述在线内容投放位内的内容项、与所述用户相关的信息以及与对应的在线内容投放位相关的信息,计算丰富估计特征向量;以及
执行所述机器学习模型以基于所述丰富估计特征向量确定所述用户与所选择的内容项交互的可能性的估计。
2.根据权利要求1所述的装置,其中所述机器学习模型是包括多个模型系数的广义线性模型。
3.根据权利要求2所述的装置,其中所述机器学习模型是逻辑回归模型。
4.根据权利要求2或3所述的装置,其中所述多个模型系数被存储在字典数据结构中,在所述字典数据结构中每个条目由键和系数值定义,其中每个键包括特征名称和对应的特征值的拼接的散列表示,并且其中所述程序指令通过以下方式使所述计算装置实现执行所述机器学习模型的步骤:
为所述丰富估计特征向量的每个特征值生成对应的键;
从所述字典数据结构中为每个生成的键检索对应的系数值;以及
使用所述丰富估计特征向量和检索到的系数值计算所述用户与所选择的内容项交互的可能性的估计。
5.根据权利要求1至4中的任一项所述的装置,其中:
所述在线内容投放位是广告位;
接收与所述广告位相关的信息和与将向其显示所述广告位内的内容的所述用户相关的信息以及从广告交易服务器发送的竞价请求消息;
所述内容项包括用于投放在所述广告位内的至少一个供应物,以及
所述程序指令主体还包括在由所述处理器执行时使所述计算装置实现还包括以下步骤的方法的指令:
作为对所述竞价请求消息的回复,向所述广告交易服务器发送竞价响应消息;
响应于从所述广告交易服务器接收到成功竞价通知,用与所述内容项的投放相关的内容投放事件数据更新在线数据存储库;以及
响应于接收到用户与所述内容项交互的通知,用与所述内容项的用户交互相关的用户交互事件数据更新所述在线数据存储库。
6.根据权利要求1至5中的任一项所述的装置,其中与内容投放事件相关的记录和与用户交互事件相关的记录不包括彼此之间明确的链接。
7.一种实现机器学习模型的训练的计算装置,所述机器学习模型被配置为估计用户与内容项交互的可能性,所述计算装置包括:
处理器;
所述处理器可访问的至少一个存储器设备;以及
所述处理器可访问的数据存储库,
其中所述存储器设备包含程序指令主体,所述程序指令主体包括指令,所述指令在由所述处理器执行时使所述计算装置实现包括以下步骤的方法:
访问所述数据存储库以检索与内容投放事件相关的记录以及与用户交互事件相关的记录,其中所述投放事件和所述交互事件在定义的时间段内发生;
将检索到的内容投放事件记录与检索到的交互事件记录进行匹配,以生成包括多条记录的匹配数据集合,所述匹配数据集合的每条记录都包括从内容投放事件中导出的原始特征值集合以及指示是否发生了与内容投放事件对应的交互事件的交互事件标签;
从所述原始特征值计算丰富训练特征向量的对应集合;以及
使用所述丰富训练特征向量和对应的交互事件标签来训练所述机器学习模型。
8.根据权利要求7所述的装置,其中所述机器学习模型是包括多个模型系数的广义线性模型。
9.根据权利要求8所述的装置,其中所述机器学习模型是逻辑回归模型,并且所述程序指令使所述计算装置实现以下步骤:使用借助“遵循正则化领导者”-近端(FTRL-proximal)学习的正则化逻辑回归来训练所述机器学习模型。
10.根据权利要求9所述的装置,其中所述程序指令主体还包括指令,所述指令在由所述处理器执行时使所述计算装置对于所述多个模型系数中的每个系数实现还包括以下步骤的方法:
生成键,所述键包括特征名称和与所述系数对应的特征值的散列表示;以及
在字典数据结构中,存储与所述键相关联的所述系数的值,
从而所述字典数据结构包括对所述机器学习模型的有效编码。
11.根据权利要求7至10中的任一项所述的装置,其中所述程序指令主体包括指令,所述指令在由所述处理器执行时使所述计算装置重复执行以下步骤来更新所述机器学习模型:访问所述在线数据存储库、将检索到的内容投放事件记录与检索到的交互事件记录进行匹配、计算丰富训练特征向量,以及训练所述机器学习模型。
12.根据权利要求7至11中的任一项所述的装置,其中与内容投放事件相关的记录和与用户交互事件相关的记录不包括彼此之间明确的链接。
13.一种计算机实现的方法,包括:
访问在线数据存储库以检索与内容投放事件相关的记录以及与用户交互事件相关的记录,其中所述投放事件和所述交互事件在定义的时间段内发生;
将检索到的内容投放事件记录与检索到的交互事件记录进行匹配,以生成包括多条记录的匹配数据集,所述匹配数据集的每条记录都包括从内容投放事件中导出的原始特征值集合以及指示是否发生了与内容投放事件对应的交互事件的交互事件标签;
从所述原始特征值计算丰富训练特征向量的对应集合;
使用所述丰富训练特征向量和对应的交互事件标签来训练机器学习模型;
在被配置为执行所述机器学习模型的处理器处,接收与在线内容投放位相关的信息和与将向其显示在所述在线内容投放位内的内容的用户相关的信息;
由所述处理器基于所选择的用于在所述在线内容投放位内投放的内容项、与所述用户相关的信息以及与所述在线内容投放位相关的信息,计算丰富估计特征向量;
由执行所述机器学习模型的所述处理器基于所述丰富估计特征向量确定所述用户与所选择的内容项交互的可能性的估计。
14.根据权利要求13所述的方法,其中:
所述在线内容投放位是广告位;
接收与所述广告位相关的信息和与将向其显示所述广告位内的内容的所述用户相关的信息以及从广告交易服务器发送的竞价请求消息;以及
所述内容项包括用于投放在所述广告位内的至少一个供应物。
15.根据权利要求14所述的方法,还包括:
作为对所述竞价请求消息的回复,由所述处理器向所述广告交易服务器发送竞价响应消息;
由所述处理器从所述广告交易服务器接收成功竞价通知;以及
由所述处理器用与所述内容项的投放相关的内容投放事件数据来更新所述在线数据存储库。
16.根据权利要求15所述的方法,还包括:
由所述处理器接收与所述内容项的用户交互的通知;以及
用与所述内容项的用户交互相关的用户交互事件数据更新所述在线数据存储库。
17.根据权利要求16所述的方法,其中重复执行以下步骤来更新所述机器学习模型:访问所述在线数据存储库、将检索到的内容投放事件记录与检索到的交互事件记录进行匹配、计算丰富训练特征向量,以及训练所述机器学习模型。
18.根据权利要求13至17中的任一项所述的方法,其中与内容投放事件相关的记录和与用户交互事件相关的记录不包括彼此之间明确的链接。
19.一种包括程序代码指令的计算机程序,当所述程序在计算机上执行时,所述程序代码指令用于执行根据权利要求13至18所述的方法的步骤。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1758514 | 2017-09-14 | ||
FR1758514A FR3071085B1 (fr) | 2017-09-14 | 2017-09-14 | Un procede et un systeme d'apprentissage automatique pour predire les interactions d'un utilisateur en ligne |
US15/704,320 | 2017-09-14 | ||
US15/704,320 US10943184B2 (en) | 2017-09-14 | 2017-09-14 | Machine learning methods and systems for predicting online user interactions |
PCT/EP2018/073841 WO2019052869A1 (en) | 2017-09-14 | 2018-09-05 | METHOD AND SYSTEM FOR AUTOMATIC LEARNING TO PREDICT USER INTERACTIONS ONLINE |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111095330A true CN111095330A (zh) | 2020-05-01 |
CN111095330B CN111095330B (zh) | 2023-10-03 |
Family
ID=63557443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880056986.0A Active CN111095330B (zh) | 2017-09-14 | 2018-09-05 | 用于预测在线用户交互的机器学习方法和系统 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP3682402A1 (zh) |
CN (1) | CN111095330B (zh) |
WO (1) | WO2019052869A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112100067A (zh) * | 2020-09-10 | 2020-12-18 | 北京完美赤金科技有限公司 | 一种基于回归分析的测试方法、系统及存储介质 |
CN113424207A (zh) * | 2020-10-13 | 2021-09-21 | 支付宝(杭州)信息技术有限公司 | 高效地训练可理解模型的系统和方法 |
CN115442321A (zh) * | 2021-06-04 | 2022-12-06 | 中国移动通信集团浙江有限公司 | 消息投放方法、装置、设备及计算机程序产品 |
US11605042B1 (en) * | 2020-11-20 | 2023-03-14 | Amazon Technologies, Inc. | Artificial intelligence system for content presentation impact estimation |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010141835A1 (en) * | 2009-06-04 | 2010-12-09 | Joshua Feuerstein | Method and system for electronic advertising |
US20180018304A1 (en) | 2016-07-14 | 2018-01-18 | Intent Media, Inc. | Graphical user interface and system for viewing landing page content |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050131762A1 (en) * | 2003-12-31 | 2005-06-16 | Krishna Bharat | Generating user information for use in targeted advertising |
CN101484890A (zh) * | 2006-05-02 | 2009-07-15 | 英维迪技术公司 | 基于模糊逻辑的观看者识别 |
US20130254787A1 (en) * | 2006-05-02 | 2013-09-26 | Invidi Technologies Corporation | Method and apparatus to perform real-time audience estimation and commercial selection suitable for targeted advertising |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2261527T3 (es) * | 2001-01-09 | 2006-11-16 | Metabyte Networks, Inc. | Sistema, procedimiento y aplicacion de software para publicidad dirigida mediante una agrupacion de modelos de comportamiento, y preferencias de programacion basadas en grupos de modelos de comportamiento. |
JP6226846B2 (ja) * | 2014-09-19 | 2017-11-08 | ヤフー株式会社 | 情報分析装置、情報分析方法および情報分析プログラム |
-
2018
- 2018-09-05 CN CN201880056986.0A patent/CN111095330B/zh active Active
- 2018-09-05 EP EP18769114.2A patent/EP3682402A1/en active Pending
- 2018-09-05 WO PCT/EP2018/073841 patent/WO2019052869A1/en unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050131762A1 (en) * | 2003-12-31 | 2005-06-16 | Krishna Bharat | Generating user information for use in targeted advertising |
CN101484890A (zh) * | 2006-05-02 | 2009-07-15 | 英维迪技术公司 | 基于模糊逻辑的观看者识别 |
US20130254787A1 (en) * | 2006-05-02 | 2013-09-26 | Invidi Technologies Corporation | Method and apparatus to perform real-time audience estimation and commercial selection suitable for targeted advertising |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112100067A (zh) * | 2020-09-10 | 2020-12-18 | 北京完美赤金科技有限公司 | 一种基于回归分析的测试方法、系统及存储介质 |
CN112100067B (zh) * | 2020-09-10 | 2023-08-25 | 北京完美赤金科技有限公司 | 一种基于回归分析的测试方法、系统及存储介质 |
CN113424207A (zh) * | 2020-10-13 | 2021-09-21 | 支付宝(杭州)信息技术有限公司 | 高效地训练可理解模型的系统和方法 |
CN113424207B (zh) * | 2020-10-13 | 2022-05-17 | 支付宝(杭州)信息技术有限公司 | 高效地训练可理解模型的系统和方法 |
US11605042B1 (en) * | 2020-11-20 | 2023-03-14 | Amazon Technologies, Inc. | Artificial intelligence system for content presentation impact estimation |
CN115442321A (zh) * | 2021-06-04 | 2022-12-06 | 中国移动通信集团浙江有限公司 | 消息投放方法、装置、设备及计算机程序产品 |
CN115442321B (zh) * | 2021-06-04 | 2023-08-18 | 中国移动通信集团浙江有限公司 | 消息投放方法、装置、设备及计算机程序产品 |
Also Published As
Publication number | Publication date |
---|---|
EP3682402A1 (en) | 2020-07-22 |
WO2019052869A1 (en) | 2019-03-21 |
CN111095330B (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10943184B2 (en) | Machine learning methods and systems for predicting online user interactions | |
CN111095330B (zh) | 用于预测在线用户交互的机器学习方法和系统 | |
US11551245B2 (en) | Determining transactional networks using transactional data | |
US10366400B2 (en) | Reducing un-subscription rates for electronic marketing communications | |
AU2010210726B2 (en) | Determining conversion probability using session metrics | |
US20190080363A1 (en) | Methods and systems for intelligent adaptive bidding in an automated online exchange network | |
US8364525B2 (en) | Using clicked slate driven click-through rate estimates in sponsored search | |
US20090271228A1 (en) | Construction of predictive user profiles for advertising | |
US10776816B2 (en) | System and method for building a targeted audience for an online advertising campaign | |
US20120059713A1 (en) | Matching Advertisers and Users Based on Their Respective Intents | |
US20110029382A1 (en) | Automated Targeting of Information to a Website Visitor | |
US20100257022A1 (en) | Finding Similar Campaigns for Internet Advertisement Targeting | |
US20210056458A1 (en) | Predicting a persona class based on overlap-agnostic machine learning models for distributing persona-based digital content | |
US20160132935A1 (en) | Systems, methods, and apparatus for flexible extension of an audience segment | |
US11120480B2 (en) | Systems and methods for real-time online traveler segmentation using machine learning | |
US20210192549A1 (en) | Generating analytics tools using a personalized market share | |
CN111052167A (zh) | 自动化在线交易网络中的智能自适应竞价的方法和系统 | |
US10115121B2 (en) | Visitor session classification based on clickstreams | |
US20100217668A1 (en) | Optimizing Delivery of Online Advertisements | |
US10855786B1 (en) | Optimizing value of content items delivered for a content provider | |
Bucklin et al. | Marketing models for internet advertising | |
US20160342699A1 (en) | Systems, methods, and devices for profiling audience populations of websites | |
JP2016062358A (ja) | 抽出装置、抽出方法及び抽出プログラム | |
CN111095331B (zh) | 使用机器学习的实时在线旅行者细分的方法和系统 | |
US20150032540A1 (en) | Automated targeting of information influenced by delivery to a user |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |