CN102542487B - 离线反事实分析 - Google Patents
离线反事实分析 Download PDFInfo
- Publication number
- CN102542487B CN102542487B CN201110423107.3A CN201110423107A CN102542487B CN 102542487 B CN102542487 B CN 102542487B CN 201110423107 A CN201110423107 A CN 201110423107A CN 102542487 B CN102542487 B CN 102542487B
- Authority
- CN
- China
- Prior art keywords
- quality score
- advertisement
- assembly
- data
- parameter
- 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.)
- Active
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 49
- 238000012360 testing method Methods 0.000 claims abstract description 83
- 230000008859 change Effects 0.000 claims abstract description 44
- 238000002474 experimental method Methods 0.000 claims abstract description 5
- 238000004364 calculation method Methods 0.000 claims description 47
- 238000009826 distribution Methods 0.000 claims description 36
- 238000000034 method Methods 0.000 claims description 20
- 238000005303 weighing Methods 0.000 claims description 11
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 3
- 238000009795 derivation Methods 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 31
- 230000007246 mechanism Effects 0.000 description 24
- 238000003860 storage Methods 0.000 description 13
- 230000015654 memory Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 230000006399 behavior Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000000429 assembly Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
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/0242—Determining effectiveness of advertisements
- G06Q30/0243—Comparative campaigns
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
可以基于试验期间收集的数据而“离线”或者“事后”执行反事实分析,在该试验中系统的输出应用了随机变化,该系统的参数将成为反事实分析的对象。为了强调在随机变化与如果利用过反事实参数产生输出则将会预期的输出最接近地相似时得到的数据,可以推导加权因子并将其应用于该试验期间收集的数据。如果该正被考虑的反事实参数与进行试验所用的参数相差太大,则离线反事实分析可以估计系统性能的变化的方向和大小,与推导具体预期的系统性能值相对。在经济交易中,可以把另一方支付价格的变化认为是随机变化,从而使得能够推导它们的边际成本。
Description
背景技术
人们经常想知道若已经使用不同的参数组开发了特定系统,则那个系统产生的结果将会如何变化。例如,使计算装置能够下棋的计算机应用程序的开发者可能希望知道特定策略是否会导致计算装置比实际实现的策略更好地下棋。针对假设存在不同的环境组特定结果将会怎么不同的问题被称为“反事实(counterfactual)”考虑。
在开发针对一个或者多个任务的计算机可执行指令的上下文中,通常通过如下方式来评价反事实考虑:修改计算机可执行指令以解释不同环境组的或者以便基于不同参数组,然后观察这种修改过的计算机可执行指令的执行结果。在对针对由特定用户引导的任务性能的计算机可执行指令进行开发时,因为可以并行产生和并行测试计算机可执行指令的许多不同的变体,这种用来评价反事实考虑的机制可以是实际的。
然而,对于针对涉及一大群个体的任务性能的计算机可执行指令,例如经由互联计算装置的网络向成千上万的用户提供服务的计算机可执行指令,可能难以评价反事实考虑。例如,可能难以对大群人类用户的行为进行适当地模拟,所述人类用户传统地使用这种计算机可执行指令。同样地,由于例如由一个或者多个替代计算机可执行指令产生的不是最理想的性能,所以使大群人类用户了解被设计成评价一个或者多个反事实考虑的计算机可执行指令的不同替代品有疏远这些人类用户的危险。
经常出现反事实考虑的一个上下文是通过互联计算装置网络的广告选择和显示。传统上,待显示给正与通过互联计算装置网络提供的服务进行通信的用户的广告的选择是基于这样的模型:它试图预测被显示的广告对它们将为之显示的特定用户有多大用处,作为结果,可能导致用户选择这种广告,从而对显示广告的实体产生收益。因为难以准确地为这种大且变化多的用户池的行为建模,评价选择广告以显示给特定用户的可替代方法的传统机制依赖于在实际用户的小样本上对这种机制进行测试。然而,正如本领域技术人员所认识到的那样,这种传统机制效率低,因为它们既需要大量的准备努力(setupeffort),也需要延长的时间来收集足够的结果,这本身就可能变化过多以至于难以从中得到有意义的数据。另外,这种传统机制可能限制能够被测试的反事实考虑的量,这仅仅是由于对用户量以及访问的限制,通过所述访问来测试这种反事实考虑。
发明内容
在一个实施例中,可以基于试验期间收集的数据“离线”或者“事后”执行反事实分析,在该试验中随机变化应用到系统的输出,该系统的参数将成为反事实分析的对象。假定该系统正在使用该参数,随机变化可以导致系统的输出具有在其传统值周围的概率分布。离线反事实分析可以推导如果该系统已经利用了反事实参数而不是进行试验所用的参数则本应产生的预期的系统性能。
在另一个实施例中,可以通过推导加权因子并把它应用到试验期间收集的数据的方式执行离线反事实分析,其中为了估计利用不同参数时系统的行为和性能而把随机变化应用到系统的输出。假定由离线反事实分析来预期估计参数,在系统的输出与所预期的类似时,加权因子能够增加所收集数据的重要性,同时减少其他数据的重要性。因为能使用反事实参数预测那个预测概率分布,加权因子可以基于带有进行试验所用的参数的系统输出的预测概率分布与带有在进行试验所用的参数的系统输出的概率分布的比率。
在另一个实施例中,如果正被离线反事实分析考虑的反事实参数与进行试验所用的参数差别太大,离线反事实分析可以估计系统性能的变化的方向和大小,与推导被具体预期的系统性能形成对比。在这样一个实施例中,可以基于试验期间的系统性能乘以带有进行试验所用的参数的系统输出的概率分布算法关于进行试验所用模型中的变化的导数,产生指示系统性能变化的方向以及那个变化将发生得多快的矢量。
在另一个实施例中,如果系统通过其他施动者(actor)影响经济决策(economicdecision),假定这些其他施动者是理性的经济施动者,那么所应用的随机化可以被认为是经济随机化并可以推导其他施动者的边际成本。
提供本发明内容以简单的方式介绍了一些概念,下面的具体实施例中将进一步描述。本发明内容其意不在识别要求保护的主题的关键特征或者必要特征,也不在用于限制要求保护的主题的范围。
其他的特征和优点将从后面参考附图的具体实施方式中变得显而易见。
附图说明
当连同附图一起考虑时,可以最佳地理解下面的详细描述,其中:
图1是计算装置的示范性网络的框图;
图2是示范性离线反事实数据收集和分析系统的框图;
图3是离线反事实数据收集和分析机制的示范性操作的流程图;以及
图4是示范性计算装置的框图。
具体实施方式
下面的描述涉及基于试验(trial)期间收集的数据用于执行“离线”或者“事后”反事实分析的机制,在该试验中,系统的输出应用了随机变量,该系统的参数将成为反事实分析的对象。通过推导加权因子并把它应用于在试验期间所收集的数据可以执行离线反事实分析。当系统的输出与所预期的给定反事实参数类似时,加权因子能够增加所收集数据的重要性,同时减少其他数据的重要性。若该正被考虑的反事实参数与进行试验的情况下的参数相差太大,则离线的反事实分析可以估计系统性能的变化方向和尺度,而不是推导具体的预期系统性能。另外,若正在分析的系统通过其他施动者影响经济决策,假定这些其他施动者是理性的经济施动者,所应用的随机化可以被认为是经济的随机化并可以推导其他施动者的边际成本。
为了说明的目的,在此描述的技术参考所描述的机制的具体应用,即在对网络可访问的页面上的包括用户指定的网络搜索结果的广告显示进行优化的上下文中。这种参考意在在具体上下文中说明所描述的机制以使得能够更多地理解该所描述的机制。然而,所描述的机制同样可应用于由一个或者多个计算装置实现的且其性能可以被量化地测量的任何系统,其中该系统包括一组根据其参数可以修改的模型接收输入和提供输出的计算机可执行指令。同样地,下面对在网络可访问的页面上显示广告的具体上下文的参考意即仅仅是说明性的和示范性的,而并不意在把所描述的机制仅仅限制在该具体上下文中的应用。
虽然不是必须的,下面的描述将在诸如程序模块之类由计算装置执行的计算机可执行指令的一般上下文中进行。更具体地,除非另外指出,本描述将参考由一个或者多个计算装置或者外设执行的操作的动作和符号性表示。同样地,将要理解的是,这些时常被提及为被计算机执行的动作和操作包括处理单元对以有结构的形式表示数据的电信号的操纵。这些操纵使数据变形或者把它保存在存储器的存储单元(locationsinmemory)中,该操纵以本领域技术人员熟知的方式对计算装置或者外设的操作进行重新配置或者其他方式的改变。在其中保存数据的数据结构是具有由数据格式定义的特定属性的物理存储单元。
一般地,程序模块包括执行特定任务或者实现特定的抽象数据类型的例程、程序、对象、组件、数据结构等。此外,本领域技术人员将会理解的是计算装置不需要被限制到常规的个人计算机,还包括其他计算配置,包括手持式装置、多处理器系统、基于微处理器或者可编程的消费者电子设备、网络PC、迷你计算机、大型计算机等。类似地,计算装置不需要被限制到独立的计算装置,因为也可以在分布式计算环境中实施该机制,其中由通过通信网络链接的远程处理装置执行任务。在分布式计算环境中,程序模块可以被定位在本地和远程存储器存储装置中。
转向图1,示出了示范性系统100,包括客户机计算装置110、服务器计算装置,即搜索服务器计算装置130、广告计算装置170以及使得能够进行客户机计算装置110、搜索服务器计算装置130和广告客户计算装置170的两个或者多个之间的通信的网络190。虽然作为分开的计算装置130和170加以说明,在此描述的机制同样可以应用于在单个服务器计算装置上执行的独立进程,或者用于在其中在装置130或者170中的组件被分割在不同的服务器之间的配置。也可以把在此描述的机制应用于虚拟化的服务器计算装置,诸如能够在单个物理计算装置上或者在多个物理计算装置之间执行的一个或者多个进程所创造的那样。因此,计算装置130和170意在不仅表示是物理计算装置,还表示虚拟化的计算装置,或者任何其他独立的执行进程。
图1中显示的系统100的客户机计算装置110被描述为包括搜索应用120。在一个实施例中,该搜索应用120可以是向客户机计算装置110的用户提供搜索网络190的能力的专用应用,或者用其他方式提供客户机计算装置110的用户可以通过其访问经由网络190提供的一个或者多个服务的机制。在可替代的实施例中,搜索应用120可以是能够被简单定向或者用其他方式利用诸如可以由搜索服务计算装置130提供的将在下面被进一步详细描述的搜索服务的通用目的的网络浏览器。不论搜索应用120是专用的应用还是通用目的的浏览器,搜索应用120都可以与能够由一个或者多个服务器计算装置,诸如搜索服务器计算装置130承载的搜索服务140通信。
客户机计算装置110的用户可以利用搜索应用120,通过把诸如例如用户希望搜索的项(term)之类的信息输入到搜索应用120中,从而搜索网络190。可以把能够包括用户输入的项的搜索查询发送给正由搜索服务器计算装置130执行的搜索服务140,正如在图1的系统100中显示的通信125所说明的那样。然后可以向作为搜索服务140一部分的搜索引擎150提供该搜索查询的项。随后,搜索引擎150可以例如以本领域技术人员熟知的方式参考搜索数据库151,以识别搜索数据库151中的一个或者多个应答项目(entry),该搜索数据库151可以表示能够经由网络190访问的资源。能够经由通信145向用户返回那些能够经由网络190访问的,以及已经由搜索引擎150识别为与搜索查询相关的资源的识别符。
通过例如经由通信125提供搜索查询,客户机计算装置110的用户可以向搜索服务140提供与用户的当前兴趣有关的信息。同样地,匹配该用户的当前兴趣的产品或者服务的提供商将发现能够将他们的产品或者服务广告给这种用户是期望的,因为这些用户更可能购买他们的产品或者服务。所以,这种提供商将愿意给提供搜索服务140的实体付报酬以使该实体与经由通信145传输搜索结果一起显示与那些提供商的产品或者服务有关的广告。更具体地,若被发送搜索结果的用户不仅被显示广告,还实际上选择那些广告并因此与使该用户能够购买该正被做广告的产品或者服务的一个或者多个计算装置可通信地耦合,则该产品或者服务的提供商通常愿意为搜索服务140付报酬。
因此,在一个实施例中,搜索服务140可以进一步包括广告选择组件160,其能够参考广告数据库161并且能够识别也能经由通信145提供给用户的广告。更具体地,该广告选择组件160可以利用搜索查询中的信息,诸如经由通信125接收到的信息,从与该搜索查询相关的广告数据库161中识别广告。可以随后把被识别的广告例如经由通信145传输到客户机计算装置110并例如经由搜索应用120显示给客户机计算装置110的用户。通过从广告数据库161中识别与用户搜索查询有关的广告,该广告选择组件160可以选择该用户更可能选择的广告,因为这种广告可以与该用户的当前兴趣更加一致,正如搜索查询所证明的那样。在这种方式中,通过把用户将对呈现给他的一个或者多个广告加以选择的可能性最大化,提供搜索服务140的实体可以力图将其从广告客户收到的报酬最大化。
如图1的系统100说明的那样,广告选择组件160可以包括广告质量分数确定组件164和广告评级组件167。该广告质量分数确定组件164可以应用带有可修改的参数的模型,用于对输入搜索查询162的用户将选择具有广告内容163的广告的可能性加以量化。如上所述,因为搜索服务140能够基于用户对所显示广告的选择从广告客户收到报酬,因此广告质量分数确定组件164可被广告选择组件160用来识别那些提交搜索查询162的用户将最可能选择的广告。可以通过产生广告质量分数165来执行这种识别,该分数能够表示输入搜索查询162的用户将选择具有广告内容163的广告的可能性。可以从诸如广告180之类的广告中获得广告内容163,该广告180能够由例如在广告客户计算装置170上的广告客户产生,并且经由通信185传送到搜索服务140以便存储在广告数据库161中。
一旦广告质量分数确定组件164已经为广告数据库161中的广告确定了广告质量分数165,那么广告评级组件167就能生成广告的评级168,以使得广告选择组件160可以选择最高评级的广告(有一定程度的可变性)以便经由通信145传送给用户。广告评级组件167不但可以考虑广告质量分数165,即用户将选择这种广告的可能性,还可以考虑广告客户的出价166或者若用户选择那个广告则广告客户将会愿意给搜索服务140作报酬的数量。正如本领域技术人员会认识到的,若广告客户对于这种广告的出价166高得足以克服用户将选择该广告的较低的可能性,则选择具有较低质量分数165或者用户将选择它们的可能性的广告在经济上是合理的。例如,具有10%的机会被付$100作报酬比20%的机会被付$40作报酬在经济上更好。广告出价接口190例如可以由广告客户在广告客户计算装置170上执行,可以与搜索服务140接口对接以使广告客户能够指定若用户选择了特定的广告则广告客户愿意为搜索服务140付报酬的报酬数量或者“出价”。可以把这种出价例如从广告客户计算装置170经由通信195传递给搜索服务140。一旦被接收到,也可以把关于这种出价的信息存储到广告数据库161中。
一旦为经由通信125接收的特定的搜索查询产生了被评级的广告组168,广告选择组件160就能够根据各种呈现考虑,例如多少广告要与搜索结果一起显示、这种广告的位置之类的考虑,从被评级的广告组168中选择评级最高的广告。被选择的广告能够随后与搜索引擎150产生的搜索结果被包括在一起,并通过通信145被传递回客户机计算装置110上执行的搜索应用120。可选地,若客户机计算装置110的用户与经由通信145提供的一个或者多个广告交互,或者对它们加以选择,则可以将通知例如经由通信155返回到搜索服务140,该通知指示用户与一个或者多个广告的交互并且指定某广告。最后,用户与广告的交互(诸如经由通信155通信的那样)能够确定搜索服务140收到的报酬,并因此能够确定搜索服务140的经济效益。
为优化搜索服务140的经济效益,应当增加用户选择的广告的数量,正如广告客户应该对于那些广告出价那样。然而,两种度量(metrics)可以依赖于广告选择组件160选择吸引用户的广告的能力,因为那将不仅增加由用户选择广告的数目,还将导致广告客户愿意支付更多来使搜索服务140呈现他们的广告。正如之前指出的那样,正是广告质量分数确定组件164能够把广告质量分数165分配给广告,该广告质量分数165能够反映提供搜索查询162的用户将发现具有足够吸引力使用户选择这种广告的广告内容163的广告的所估计的可能性。因此,若把广告质量分数确定组件164优化到最准确地预测输入搜索查询162的用户是否会选择带有广告内容163的广告,则可以改进广告选择组件160来选择更吸引用户的广告。
然而,正如本领域技术人员将认识到的那样,试图预测人类行为很复杂并且可以基于无数个可调节参数。为了下面描述的目的,给定搜索查询162和广告内容163,广告质量分数确定组件164实现用来分配广告质量分数165的机制是这样一种机制就足够了:该机制的参数可以被调节,并且给定相同的搜索查询162,该调节能够导致不同的广告质量分数165被分配到具有相同广告内容163的相同广告。典型地,如之前所指出的那样,对由广告质量分数确定组件164利用的参数的调节会要求实现这种重新设计的广告质量分数确定组164的广告选择组件160被搜索服务140放进活动服务,并且用户对广告选择组件160所提供的广告的选择(例如经由通信155)可以被监控以确定对由广告质量分数确定组件164利用的参数的调节是否改进了广告选择过程,以及搜索服务140的总体财务业绩。也正如之前指出的那样,这种测试方法论效率低且对于所有列举的原因而言欠佳。
相反,不分别对广告质量分数确定组件164的每个调节加以测试,可以执行这样的试验:期间由广告质量分数确定组件164利用的参数或者实现的模型保持不变。相反,可以向由广告质量分数确定组件164产生的广告质量分数165加入干扰或者噪声。可以被加入到广告质量分数165的干扰或者噪声可以是随机分布的,以使得平均起来所生成的广告质量分数165和它在没有噪声的情况下保持相同。
转向图2,其中所显示的系统200说明了针对图1中所示的广告质量分数确定组件164的参数的示范性的离线反事实分析。首先,如图2的系统200中所示的那样,可以与试验性广告选择组件260一起进行试验。该试验性广告选择组件260能够包括加入噪声以得到确定的广告质量分数的广告质量分数确定组件264。更具体地,该广告质量分数确定组件264能够以与之前所描述的并在图1中说明的广告质量分数确定组件164相同的方式确定广告质量分数。一旦确定了这种广告质量分数,则可以向该被确定的广告质量分数加入随机量的噪声或者变化,以最终产生将被提供给广告评级组件167的广告质量分数265。
如本领域技术人员将会认识到的那样,并且如图2的系统200中所说明的那样,向被确定的广告质量分数增加随机量的噪声或者变化的结果能够导致被提供给广告评级组件167的广告质量分数265遵循传统的高斯分布,无论在什么值的附近,该被确定的广告质量分数都早于随机量的噪声的引入。作为简单化的例子,并为了进一步描述的目的,若对于给定的搜索查询162和给定的具有广告内容163的广告,其被确定的广告质量分数是例如值“5”,那么,每次例如经由通信125提供这种搜索查询162时,具有广告内容163的广告例如将有40%的机会收到广告质量分数“5”,20%的机会收到广告质量分数“4”,另一个20%的机会收到广告质量分数“6”,7%的机会收到广告质量分数“3”,另一个7%的机会收到广告质量分数“7”,等等。因此,在该试验的结尾,如果例如经由通信125向搜索服务140提供了一百次来自上面的例子的搜索查询162,则具有也来自上面的例子的广告内容163的广告将在接收的搜索查询162的那些实例中的40个中已被提供广告质量分数为“5”,在20个实例中已被提供广告质量分数为“6”,以及在另外20个实例中已被提供广告质量分数为“4”,等等。
当加入噪声时,对由广告质量分数确定组件264产生的广告质量分数265的变化导致广告评级组件167对广告的评级与没有引入该噪声的情况不同。因此,不同于图1所示的被评级的广告168的集合,只要搜索查询162和广告内容163保持不变,该在图1中的集合就不会改变,图2的系统200中所示的被评级的广告268的集合能够变化,而且在其中的被评级的广告可以因为加入到广告质量分数265的噪声被不同地评级。结果,试验性广告选择组件260实际选择的以及例如通过通信145被呈现给用户的广告能够同样地变化。
在一个实施例中,试验期间搜集详细信息的试验记录240可以被保存。如图2的系统200中的可变的简写符号(variablenotationshorthand)所指出的那样,可以被收集到试验记录240中的一组信息可以是试验期间搜索服务140接收的个别的搜索查询,诸如搜索查询162。同样地,也可以将试验中广告数据库161中的广告内容记录在试验记录240中。因为上述噪声的加入可以改变广告质量分数265,给定特定的搜索查询162,能够同样地在试验记录240中记录每个个别的广告质量分数和广告内容163。最后,通过记录用户是否选择了被显示的一个或者多个广告,试验记录240能够记录广告质量分数265中的变化的最终效果。
如本领域技术人员会认识到的那样,给定用户提供的搜索查询162,广告质量分数确定组件264输出的广告质量分数265的变化能够导致试验性广告选择组件260从广告数据库161中选择广告例如经由通信145被显示给客户机计算装置110的用户,而传统上,所述广告通常不会被选择以显示给用户。给定对系统的某些变化,恰恰是这种在基于通常本不会发生的情形收集响应数据加的过程中的行为使得离线反事实分析能够估计系统在事实后的行为。
特别是,一旦完成了试验,就可以停止向广告质量分数265加入噪声,而且广告质量分数确定组件264能够继续其之前的操作。此时,离线反事实分析组件290可以通过诸如经由图2的系统200中所示的通信245获得来自试验记录240的记录数据而分析来自试验记录240的数据。在一个实施例中,离线反事实分析组件290可以被包括在计算机可执行指令中,这些指令能够在远离搜索服务器计算装置130的计算装置上运行,例如如图2的系统200中所示的那样与网络190可通信地耦合的计算装置270。
如之前指出的那样,反事实分析是一种对如果发生早前情形的时候如果某些因素不同的话,那么在早先的情形中会发生什么加以考虑的分析。结果,图2的系统200中所说明的实施例中,可以引导离线反事实分析组件290对若利用了一组不同的参数或者不同的“模型”来产生广告质量分数265的话,搜索服务140的性能会怎样变化加以分析。正如本领域技术人员将会认识到的那样,可以用很多不同的方法量化搜索服务140的性能。传统上,可以定义一个或者多个关键性能指示器来使得能够量化搜索服务140的性能。例如,一个关键性能指示器可以是用户选择的广告的量。另一个关键性能指示器可以是例如由于用户的广告选择搜索服务140收到的收益量。
一般而言,可以把由搜索服务140产生的任何给定页面的性能或者搜索结果和广告的其他集合表达成用户选择的广告、被指定给广告的确定哪些广告实际上显示给了用户的质量分数、可以用于由搜索服务140显示的用户的搜索查询和广告内容的函数。在数学术语中,可以用的形式表达这种函数关系,其中变量“y”表示用户对一个或者多个广告的选择,如图2所示,变量“x”表示包括例如搜索查询162和广告内容163的相关输入数据,也如图2所示,变量“q”可以表示广告质量分数,也如图2所示。因为能够基于可修改的参数集合或者“模型”产生广告质量分数本身,变量“q”本身可以也可以就是上述数学表达式中用“M”表达的、被利用于产生广告质量分数“q”的“模型”的函数。然后整个搜索系统140的性能就可以基于它产生的页面的平均性能而被量化。在数学上,给定通过利用模型“M”确定广告质量分数的广告质量分数确定组件,可以把整个搜索系统140的性能表达成:。因此,离线反事实分析组件290能够寻求确定若已经利用了不同的模型产生广告质量分数则这种系统性能将会如何变化。
清楚起见,未将离线反事实分析组件290引导到确定通过广告质量分数确定组件264利用不同参数对于广告质量分数自身的产生有什么效果。因为广告质量分数在数学上,并因此准确地与所利用的参数和包括搜索查询162及广告内容163在内的相关输入有关,由广告质量分数确定组件264利用的参数的变化以已知的方式改变广告质量分数265。相反,如果不是不可能的话,准确地建模的困难之处并不是在数学上精确的广告质量分数确定组件264的行为,而是如果由广告质量分数确定组件264利用的参数原本不同,则在总体搜索服务140的性能方面有什么效果,包括这种搜索服务140的用户会如何响应。更具体地,假定对由广告质量分数确定组件264利用的参数的变化原本会导致由广告选择组件260选择不同的广告来显示给用户,也许一组不同的参数导致了增加广告的用户选择,该广告的用户选择例如可以经由通信155被传递到搜索服务140。
离线反事实分析组件290能够估计如果例如由广告质量分数确定组件264利用了一组不同的参数来产生广告质量分数265,则什么会是搜索服务140的关键性能指示器。实际上,如之前所指出的那样,当把离线反事实分析290的操作连同网络可访问的搜索结果的递送呈现到广告选择的具体上下文中时,所述的离线反事实分析机制就不那么受限制了。作为替换,可以利用所述的离线反事实分析机制来执行任何系统的离线反事实分析,该系统的输出受到可调节的参数的影响并且该系统的输出以未知方式影响这种系统的性能,从而使得离线反事实分析机制能够估计假如由于利用了不同参数的缘故而产生了不同的输出,则这种系统的性能将会怎样。
在一个实施例中,离线反事实分析组件能够通过对从试验中接收的数据重新加权而估计系统的性能,在该试验中利用被加入到其输出的随机扰动或者噪声干扰来操作该系统,以模拟带有不同参数的系统的操作。例如,在由图2的系统200所说明的特定的实现中,离线反事实分析组件290能够估计假如广告质量分数确定组件264利用了不同的参数,诸如由不同的广告质量分数确定模型定义的参数,来导出广告质量分数265,则诸如上面定义的搜索服务140的性能将会怎样。首先,离线反事实分析组件290能够例如经由通信245获得来自试验记录240的数据。随后,可以是反事实分析组件290的一部分的数据重新加权组件291能够推导对从试验记录240接收的数据的加权因子,以便于估计假如由广告质量分数确定组件264在该数据收集期间利用了一组不同的参数,则将会发生什么。
如前面所指出的那样,可以把随机噪声加入到广告质量分数265,以使在给定相同的搜索查询162和相同的广告内容163的情况下,提供给广告评级组件167的分数能够以在给定搜索查询162和广告内容163的情况下传统上已经被产生的广告质量分数为中心依照高斯分布变化。因为随机化已经以传统上已经被产生的广告质量分数为中心,对这种广告质量分数的平均将抵消随机化的噪声。作为结果,虽然增加了随机化的噪声,搜索服务140的总体性能可能不受到这种增加的影响。然而,为了确定总体搜索服务140的性能,可以把上面定义的性能修改为考虑这种广告质量分数265的分布。例如,广告质量分数不再是单一的值,而是随着随机干扰的增加现在能够被表示成与实际上已经被作为广告质量分数265提供给广告评级组件167的那些值的可能性相乘的个别值的总和。如本领域技术人员将会认识到的那样,这可以使用积分符号在数学上被更准确地表达:,其中项“PM”能够表示带有被加入的随机噪声的广告质量分数265的概率分布。
假如广告质量分数确定组件264为了推导广告质量分数265而利用了一组不同的参数,离线反事实分析组件290能够通过首先考虑这些不同的参数会如何影响本应由广告质量分数确定组件264推导的广告质量分数265来估计搜索服务140的系统性能将会是什么样。一旦可以确定这种新的广告质量分数265,例如通过对在数学上精确的广告质量分数确定组件264的操作加以模拟,离线反事实分析组件290就能够通过基于把随机化的噪声继续加入到由它确定的广告质量分数的广告质量分数确定组件264而产生估计的系统性能来估计搜索服务140的系统性能会是什么样,以使得用于估计系统性能的广告质量分数可以基于广告质量分数周围的高斯分布,该广告质量分数是由广告质量分数确定组件264本应利用正被考虑的新参数而产生的。如之前所指出的那样,这种随机化噪声的增加不能影响系统性能的最终计算,并且作为结果,上述假定实际上不影响利用反事实参数时系统性能会是什么样的估计的准确性。如在这里所利用的那样,术语“反事实参数”意思是那些正在为之执行反事实分析的参数;即,作为反事实考虑的基础的参数,所述反事实考虑考虑在改而利用所述参数时系统的性能会是什么样的。
在数学上,假设为了推导广告质量分数265,广告质量分数确定组件264已经利用了一组不同的参数,对可以通过离线反事实分析组件290产生的搜索服务140的系统性能的估计可以被表达为:,其中项“M”表示利用反事实参数产生广告质量分数265的模型。当然,正如本领域技术人员将会认识到的那样,因为由试验记录240收集的数据包括从而不是采样来的例子,直接产生这种被预期的性能估计可能是困难的。
因此,在一个实施例中,可以对由试验记录240收集的数据重新加权以反映假如广告质量分数确定组件264已经利用了反事实参数由广告质量分数确定组件264的产生广告质量分数的概率分布,而不是广告质量分数265的概率分布,由试验记录264收集的数据实际上是基于该广告质量分数265的。可以通过离线反事实分析组件290的数据重新加权组件291执行这种重新加权。图2的系统200说明了可以通过数据重新加权组件291执行的示范性重新加权。正如可以被看到的那样,由广告质量分数确定组件264产生的,以及基于其来收集240的试验中的数据的广告质量分数265在不加入随机化噪声的情况下原本由广告质量分数确定组件264分配的表示广告质量分数的广告质量分数260周围能够遵循概率分布266。相反地,假如组件已经实现了反事实因素,则本应由广告质量分数确定组件264产生的广告质量分数265在不加入随机化噪声的情况下,在表示原本由实现反事实参数的广告质量分数确定组件264分配的广告质量分数的广告质量分数280的周围能够遵循概率分布285。
可以由数据重新加权组件291执行的数据重新加权可以基于能够被执行以便将概率分布266(试验记录240中的数据基于该概率分布266收集)变换到概率分布285(假如广告质量分数确定组件264已经通过离线反事实分析组件290实现了正被分析的反事实参数,则试验记录240中的数据将基于该概率分布285收集)的重新加权。如图2的系统200中所示的那样,由数据重新加权组件291执行的数据重新加权能够例如如箭头296所,减小在由广告客户质量分数确定组件264分配的广告质量分数265具有广告质量分数值260时收集的数据的相对重要性,以及还能够例如如箭头297所示增加在广告质量分数265具有广告质量分数值280时收集的数据的相对重要性。
为了更具体地描述数据重新加权组件291执行的数据重新加权,再一次参考上面的简单化的例子,其中示范性广告质量分数值“5”被用作广告质量分数266的分布对于给定搜索查询162和给定广告内容163将会以其中心的广告质量分数值260。在上述简单化的例子中,有40%的机会收到广告质量分数“5”,20%的机会收到广告质量分数“4”,另一个20%的机会收到广告质量分数“6”,7%的机会收到广告质量分数“3”,另一个7%的机会收到广告质量分数“7”,等等。结果,在试验末尾,如果例如经由通信125向搜索服务140提供了一百次来自上面的例子的搜索查询162,则在接收的搜索查询162的那些实例中的40个中将向具有也来自上面的例子的广告内容163的广告提供广告质量分数为“5”,在20个实例中提供广告质量分数为“6”,以及在另外20个实例中提供广告质量分数为“4”,等等。
假如广告质量分数确定组件264已经利用了一组不同的参数并因此如分布285所说明的那样,产生了在广告质量分数值280的周围分布的广告质量分数,则包括用户是否选择了任何显示的广告的与那些实例的每一个相关联的数据将能够被试验记录240收集并被离线反事实分析290用来估计搜索服务140的系统性能。例如,假如广告质量分数确定组件264已经利用了反事实参数,则当接收到搜索查询162时,它能够把示范性广告质量分数值“7”分配给具有广告内容163的广告。再一次地,依照上面的简单化的例子,概率分布285就能够是这样的形式,其中在40%的实例中分配广告质量分数值“7”,在20%的实例中能够分配广告质量分数值“8”,另一个20%的实例能够被分配广告质量分数值“6”,在7%的实例中能够分配广告质量分数值“9”,在另一个7%的实例中能够分配广告质量分数值“5”,等等。当广告质量分数确定组件264利用反事实参数产生广告质量分数265时,如果已经接收到了该试验期间接收的特定的搜索查询162的上面示范性的一百个实例,那么,只有7个那些实例能够被分配广告质量分数值“5”,而不是那些实例中的40个被分配广告质量分数值“5”。类似地,当利用反事实参数时,广告质量分数确定组件264将使40个实例被分配广告质量分数值“7”,而不是只有7个实例被分配广告质量分数值“7”。
因此,给定对于其中接收特定的搜索查询162的那些示范性一百个实例通过试验记录240收集的数据,在由广告质量分数确定组件264分配的广告质量分数265具有值“7”时,可以增加所收集的数据的重要性以反映并非其中其中被分配该值的被分配该值的7个实例,而是模拟40个实例中该值的分配。类似地,当已经把值“5”分配给广告质量分数265时由试验记录240所收集的数据的重要性能够被减少以反映并非其中实际被分配该值的40个实例,而是模拟在仅仅7个实例中该值的分配。正如图2的系统200所示的那样,数据重新加权组件291能够重新加权从试验记录240获得的数据,例如以便如箭头296所示,减少具有广告质量分数值260的所收集的数据的相对重要性,该广告质量分数值260在上面的简单化的例子中能够表示广告质量分数值“5”,以及例如如箭头297所示,增加具有广告质量分数值280的所收集的数据的相对重要性,该广告质量分数值280在上面最简单的例子中能够表示广告质量分数值“7”。
数据重新加权组件291执行的数据重新加权可以基于特定搜索查询162和特定的广告内容163将会导致广告质量分数确定组件264利用反事实参数产生特定的广告质量分数的概率与该相同搜索查询162和广告内容163导致广告质量分数确定组件264利用进行试验的参数产生相同广告质量分数的概率的比率。在数学上,这能够被表达成,其中“”能够表示假如广告质量分数确定组件264已经利用了反事实参数,则会被产生的广告质量分数的概率分布,而“”能够表示在其数据被记录到试验记录240的试验期间由广告质量分数确定组件264实际产生的广告质量分数的概率分布。
因此,离线反事实分析组件290能够基于被数据重新加权组件291重新加权的试验记录240中的数据,估计搜索服务140的系统性能。更具体地,可以基于数据重新加权组件291确定的用于特定数据元素的重新加权因子,对试验记录240中的每个数据元素重新加权。在数学上,这能够被表达成,其中项“”等于上文所述的比率,即,。如本领域技术人员会认识到的那样,项“”基于试验期间所收集的并且正如所指出的那样在试验记录240中的数据并从中确定。特别是,能够同样地把上面为了解释广告质量分数的变化描述的搜索服务140的系统性能的相同估计用来估计如果广告质量分数确定组件264利用反事实参数并且仍然向所产生的广告质量分数增加所产生的噪声,则搜索服务140的系统性能会变成怎么样。在数学上,解释上述重新加权,,其恰好是,其中是上述重新加权因子。
在一个实施例中,当试验期间产生的广告质量分数的概率分布266与假如广告质量分数确定组件264利用了反事实参数则应产生的广告质量分数的概率分布285之间存在有意义的重叠时,可以由离线反事实分析组件290利用上述重新加权。当被考虑的反事实参数与试验期间利用的参数类似时,通常是这种情形。然而,如果离线反事实分析组件290要考虑本质上更加不同的一组参数会有什么效果,则离线反事实分析组件290可能不能够产生搜索服务140的系统性能的有意义的估计。然而作为替换,在一个实施例中,离线反事实分析组件290能够产生例如矢量形式的指示方向和大小的指示,假如例如广告质量分数确定组件264实现了这个本质上更加不同的模型,则搜索服务140的系统性能将会变化所指示的方向和大小。
在这样的实施例中,假如广告质量分数确定组件264利用了本质上更加不同的参数,给定由广告质量分数确定组件264利用的参数中的增量变化,以使那些参数递增地更接近试验期间利用的参数中的反事实参数,离线反事实分析组件290能够通过确定搜索服务140的系统性能的增量变化来产生关于搜索服务140的系统性能的变化的方向和大小的指示。在数学术语中,离线反事实分析组件290能够生成搜索服务140的系统性能的导数作为由广告质量分数确定组件264变化利用的参数,或者,其中,正如前面那样,项“”基于试验期间所收集的和在试验记录240中的数据。
因此,可以看出,可以利用试验期间所收集的和在试验记录240中的数据产生这个矢量。特别是,可以通过将试验记录240中的数据确定的页面性能与广告质量分数的概率分布的算法关于由广告质量分数确定组件264利用的模型或者该组参数中的变化的导数相乘而产生该矢量。
在这样的实施例中,所确定的矢量的每个分量能够描述在对单个参数有增量的小变化时,搜索服务140的系统性能能够如何变化。随后可以组合这些分量来估计在一次对参数的组合有增量的小变化时,描述搜索服务140的系统性能能够如何变化的方向导数。用这种方式,假如广告质量分数确定组件264利用与试验期间实际利用的那组参数发生了更加本质上的变化的一组不同的参数产生了广告质量分数265,那么当离线反事实分析组件290可能不能够直接估计搜索服务140的系统性能时,离线反事实分析组件290能够至少指示这种反事实参数是否将会以期望的方式改变搜索服务140的系统性能。
在某些情形中,其间把干扰加入系统的输出的试验能够导致外部因素以抵消所添加的干扰这样的方式工作,因此使得例如通过离线反事实分析组件290对由试验记录240收集的数据的分析变得更困难。例如,如所指出的那样,把干扰增加到由广告质量分数确定组件264产生的广告质量分数265能够导致广告评级组件167产生与它通常所产生的不同的广告评级268,从而进一步导致试验性广告选择组件260选择与它通常会选择的不同的广告用于显示给用户。这种在显示给用户的广告中的变化能够导致广告客户改变他们愿意提供给搜索服务140的报酬数量。例如,如果对广告质量分数265的干扰使得广告客户的广告显示频率降低,该广告客户能够通过增加他们的广告出价166而增加他们愿意提供给搜索服务140的报酬数量。因为广告链接组件167能够基于广告出价166中的广告质量分数265产生评级广告268,广告出价166的变化也能够对广告质量分数265的变化起到抵消变化作用,因此使在试验期间向广告质量分数265添加的干扰归于无效。
为了解决(accountfor)这种行为,在一个实施例中,可以假设广告客户以在经济上理性的方式动作。作为结果,向广告质量分数265添加的干扰能够反而被认为是对广告出价166的干扰,因为任何一个都能够导致广告评级组件167产生不同广告等级268。广告客户提供给搜索服务140的总报酬相对于例如通过通信155被传递给搜索服务140的用户选择他们的广告的次数的导数能够揭示这些广告客户对于用户对他们广告的额外选择愿意多支付多少;换句话说,他们的边际成本是什么。因为试验记录240能够包括关于对广告质量分数265的变化的信息,该广告质量分数265反而能够被认为是对于广告出价166的变化,以及还能够包括关于用户多久与所显示的广告交互或者对它进行选择的数据,所以该离线反事实分析组件290能够产生关于广告客户的边际成本的信息,从而使搜索服务140能够调节其定价以最大化其收益。
转向图3,在其中显示的流程图300说明了一系列示范性步骤,通过这些步骤可以在系统上执行离线反事实分析。首先,如图3的流程图300所示,可以在步骤310开始试验,在该步骤期间可以利用其参数可以变化的模型把随机噪声加入从一个或者多个输入产生输出的组件的这种输出中。在步骤315可以把这种随机噪声或干扰加入到输出,在步骤320,可以收集相关的数据。这种数据能够包括所接收的输入、所产生的带有随机干扰的输出,以及诸如如何接收所产生的带有随机干扰的输出以及如何由另一方进行响应之类的最终结果。最后,在步骤325,能够结束试验。
在步骤330,可以利用试验期间,例如在步骤320中所收集到的数据启动离线反事实分析。作为反事实分析的一部分,可以在步骤335输入如上所述的在这里被称作“反事实参数”的待评价的参数。假如模型在使用反事实参数,为了确定结果将会是什么,可以首先在步骤340确定基于反事实参数的反事实模型与试验期间使用的模型和参数之间的相似性。如果在步骤340确定了反事实参数并不与试验期间使用的参数本质上不同,则能够继续到步骤345处理,其中可以基于反事实模型的输出的预测的概率分布与试验期间观察到的模型的输出的概率分布之间的比率而产生重新加权因子。随后,在步骤350,如果系统已经利用了反事实模型,则可以利用在步骤345产生的重新加权因子重新加权试验期间,例如在步骤320所收集的数据来产生对系统性能的估计。随后能够在步骤365结束反事实分析。
另一方面,如果在步骤340确定了反事实参数与试验期间利用的参数本质上不同,则能够继续到步骤355处理,在其中可以产生导数,该导数是试验期间产生的输出的概率分布的算法关于在用于产生那个输出的模型中的递增变化的导数。随后,在步骤360,可以通过将步骤355产生的导数应用到所收集的数据而产生矢量。步骤360产生的矢量能够把系统性能变化的方向和速率指示为朝向反事实模型递增变化的模型的参数。正如之前那样,能够在步骤365结束反事实分析。
转向图4,说明了示范性计算装置400。该示范性计算装置400可以是图1中说明的客户机计算装置110和服务器计算装置130及170中的任何一个或者多个,它们的操作在上文详细描述了。例如,示范性计算装置400可以是服务器计算装置或者可以执行可以表示图1示出的服务器计算装置130及170的一个或者多个进程(例如,通过执行创建能够提供上面详细描述的操作的虚拟计算环境的一个或者多个进程)的计算装置。图4的示范性计算装置400能够包括,但不限于,一个或者多个中央处理单元(CPU)420、可以包括RAM432的系统存储器430、以及把包括系统存储器的各种系统组件耦合到处理单元420的系统总线421。系统总线421可以是包括存储器总线或者存储器控制器、外设总线以及使用多种总线架构之一的局部总线在内的若干类型总线结构中的任何一种。计算装置400能够可选地包括例如用于显示虚拟用户接口的的图形硬件,包括但不限于图形硬件接口490和显示装置491。根据具体的物理实现,可以使一个或者多个CPU420、系统存储器430以及其他计算装置400的组件物理地处于同一地方,例如在单个芯片上。在这种情况下,系统总线421的一些或者全部可以仅仅是在单个芯片结构内的硅路径,并且它在图4中的说明仅仅是为了说明目的的注释便利性。
计算装置400还典型地包括计算机可读介质,该介质能够包括任何可以由计算装置400访问的可用介质并包括易失性和非易失性介质以及可移除介质和非可移除介质。作为例子而不是限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以任何用于存储诸如计算机可读指令、数据结构、程序模块或者其他数据的信息的方法或者技术而实现的介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪速存储器或者其他存储器技术、CD-ROM、数字多功能盘(DVD)或者其他光盘存储器、磁带盒、磁带、磁盘存储器或者其他磁存储装置、或者任何其他可以被用于存储期望信息并且可以由计算装置400访问的介质。通信介质典型地体现为在诸如载波或者其他运输机制那样的调制数据信号中的计算机可读指令、数据结构、程序模块或者其他数据,而且包括任何信息递送介质。作为例子而不是限制,通信介质包括诸如有线网络或者直连的(direct-wired)连接那样的有线介质和诸如声学、RF、红外和其他无线介质那样的无线介质。计算机可读介质的范围中还应当包括上述的任意的组合。
系统存储器430包括诸如只读存储器(ROM)431和前述RAM432那样的易失性和/或非易失性存储器形式的计算机存储介质。在ROM431中典型地存储了包括例如在启动期间帮助在计算装置400内的元件之间传输信息的基本例程的基本输入/输出系统433(BIOS)。RAM432典型地包括由处理单元420可立即访问和/或当前操作的数据和/或程序模块。作为例子而不是限制,图4说明了与其他程序模块435以及程序数据436在一起的操作系统434。
计算装置400也可以包括其他可移除的/非可移除的、易失性的/非易失性的计算机存储介质。仅举例来说,图4说明了从非可移除的、非易失性的介质读取或者向其写入的硬盘驱动器441。可以与该示范性计算装置一起使用的其他可移除的/非可移除的、易失性的/非易失性的计算机存储介质包括,但不限于,盒式磁带、闪速存储器卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。典型地把硬盘驱动器441通过诸如接口440的非可移除的存储器接口连接到系统总线421。
在图4中说明的上述驱动器及与它们相关联的计算机存储介质提供了计算机可读指令、数据结构、程序模块和用于计算装置400的其他数据的存储。在图4中,例如,把硬盘驱动器441说明为存储操作系统444、其他程序模块445,以及程序数据446。需要注意的是这些组件可以与操作系统434、其他程序模块435和程序数据436相同或者不同。于此给予操作系统444、其他程序模块445和程序数据446不同的数字说明,在最低程度,它们是不同的拷贝。
使用到一个或者多个远程计算机的逻辑连接,可以在联网环境中操作计算装置400。计算装置400被说明为通过网络接口或者适配器470连接到一般网络连接471,该网络接口或者适配器470进而连接到系统总线421。在联网环境中,可以把相对于计算装置400,或者其部分或外设而描述的程序模块存储在通过一般网络连接471可通信地耦合到计算装置400的一个或者多个其他计算装置的存储器中。应当理解的是,所示的网络连接是示范性的并且可以使用其他在计算装置之间建立通信链路的手段。
正如可以从上面的描述中看到的那样,已经提出了用于执行离线,或者事后反事实分析的机制。鉴于对在此描述的主题的许多可能的变体,我们把所有可以落入下面的权利要求及其等价物的范围内的实施例作为我们的发明要求保护。
Claims (9)
1.一种利用离线反事实分析产生估计的系统性能的方法,执行步骤包括:
把随机干扰加入系统的组件(164,264)的原始输出(165)以产生被干扰输出(265),其中由一个或者多个计算装置实现该系统并且其中进一步地该系统的组件(164,264)包括一组计算机可执行指令,该计算机可执行指令接收一个或者多个输入(162,163)并根据由该组计算机可执行指令实现且包括可修改参数的模型产生原始输出(165);
为该系统的操作的每个实例收集数据(240),所收集的数据(240)包括所述一个或者多个输入(162,163)、被干扰的输出(265),以及对于该实例的系统的操作的一个或者多个结果(155),其中从该一个或者多个结果(155)中推导该系统的性能;
获得用于该系统的组件的一个或者多个反事实参数;
产生非零的重新加权因子;
如果该组件(164,264)利用了包括该反事实参数的反事实模型,则在被干扰的输出(265)与原本会由组件(164,264)产生的预期输出匹配时,用该非零的重新加权因子对所收集的数据(240)重新加权以强调所收集的数据;以及
如果该组件(164,264)已经利用了包括该反事实参数的该反事实模型,则用被重新加权的数据产生对于该系统的性能将会是什么样的估计。
2.根据权利要求1的方法,其中被干扰的输出依照以该原始输出为中心的概率分布而变化。
3.根据权利要求1的方法,其中基于该组件利用了包括该反事实参数的反事实模型的情形下该组件的被干扰的输出的预测的概率分布与该组件的被干扰的输出的概率分布之间的比率而产生该非零的重新加权因子。
4.根据权利要求1的方法,进一步包括步骤:如果该一个或者多个所获得的反事实参数与在收集数据期间利用的相应参数在本质上不同,则产生指示对于该模型中的递增变化系统的性能的变化的大小和方向的矢量;其中如果该一个或者多个所获得的反事实参数与在收集数据期间利用的相应参数在本质上并无不同,则仅执行重新加权所收集的数据以及产生该估计。
5.根据权利要求4的方法,其中产生该矢量包括基于该被干扰的输出的概率分布的算法关于该模型中的变化的导数而产生该矢量。
6.根据权利要求1的方法,其中:该系统是广告呈现系统;该组件是广告质量分数确定组件;该被干扰的输出是为了产生广告评级而提供给广告评级组件的广告质量分数,其中根据该广告评级来选择要呈现的广告;以及该系统的性能基于因为用户选择由该广告呈现系统呈现的广告而收到的报酬。
7.根据权利要求6的方法,其中该广告呈现系统包括搜索引擎;且其中进一步地该广告质量分数确定组件的一个或者多个输入包括为之产生质量分数的广告的广告内容和搜索查询,被选择的广告与响应于该搜索查询的搜索结果一起呈现。
8.一种广告呈现系统,包括:
用于基于广告内容(163)确定广告的质量分数(165)并且依照包括可修改参数的模型而产生的广告质量分数确定组件(164,264),在试验期间修改该广告质量分数确定组件(164,264)以把随机干扰加入到该广告的被确定的质量分数(165)以产生被干扰的广告质量分数(265);
用于基于该广告的质量分数(165,265)和因为该广告而要支付给该广告呈现系统的出价数量(166)而产生广告评级(168,268)的广告评级组件(167),该广告评级组件(167)基于该被干扰的广告质量分数(265)和试验期间的出价数量(166)产生广告的评级(168,268);
用于根据该广告的评级(168,268)选择一个或者多个广告以便显示给用户的广告选择组件(160,260);
用于在试验期间收集数据的试验记录(240),该数据包括被干扰的广告质量分数(265)和该用户是否选择了被显示给用户的被选择的一个或者多个广告中的任何一个;
离线反事实分析组件(290),假如该广告质量分数确定组件(164,264)利用了包括反事实参数的反事实模型而不是进行试验所用的模型,用于在试验后估计该广告呈现系统的性能在该试验期间将会是什么样,该离线反事实分析组件(164,264)用被重新加权的数据执行该估计;以及
数据重新加权组件(291),用于通过把非零的重新加权因子应用到在试验记录(240)中所收集的数据的至少一些而产生该被重新加权的数据,如果该广告质量分数确定组件(164,264)利用了包括该反事实参数的反事实模型,则该被重新加权的数据强调在被干扰的广告质量分数(265)与原本会由广告质量分数确定组件(164,264)产生的预期的广告质量分数匹配时所收集的数据。
9.根据权利要求8的系统,其中被干扰的广告质量分数依照以被确定的质量分数为中心的概率分布而变化。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/972417 | 2010-12-17 | ||
US12/972,417 US8606608B2 (en) | 2010-12-17 | 2010-12-17 | Offline counterfactual analysis |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102542487A CN102542487A (zh) | 2012-07-04 |
CN102542487B true CN102542487B (zh) | 2015-11-25 |
Family
ID=46235585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110423107.3A Active CN102542487B (zh) | 2010-12-17 | 2011-12-16 | 离线反事实分析 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8606608B2 (zh) |
CN (1) | CN102542487B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094772B (zh) * | 2014-05-07 | 2018-06-15 | 阿里巴巴集团控股有限公司 | 一种广告的质量分生成方法、装置和质量分服务系统 |
US11182280B2 (en) | 2014-10-13 | 2021-11-23 | Microsoft Technology Licensing, Llc | Application testing |
US10284664B2 (en) | 2014-10-13 | 2019-05-07 | Microsoft Technology Licensing, Llc | Application testing |
US10282745B2 (en) * | 2015-05-14 | 2019-05-07 | Google Llc | System and method for isolated simulations for accurate predictions of counterfactual events |
US10657556B1 (en) * | 2015-06-09 | 2020-05-19 | Twitter, Inc. | Click-through prediction for targeted content |
US11257019B2 (en) * | 2017-02-28 | 2022-02-22 | Verizon Media Inc. | Method and system for search provider selection based on performance scores with respect to each search query |
US10986110B2 (en) * | 2017-04-26 | 2021-04-20 | Elasticsearch B.V. | Anomaly and causation detection in computing environments using counterfactual processing |
US11038785B2 (en) * | 2019-01-22 | 2021-06-15 | Adobe Inc. | Facilitating changes to online computing environment by assessing impacts of temporary interventions |
SG11202010721QA (en) * | 2019-12-12 | 2020-11-27 | Alipay Hangzhou Inf Tech Co Ltd | Determining action selection policies of execution device |
CN112997198B (zh) | 2019-12-12 | 2022-07-15 | 支付宝(杭州)信息技术有限公司 | 确定执行设备的动作选择方针 |
CN112041811B (zh) | 2019-12-12 | 2022-09-16 | 支付宝(杭州)信息技术有限公司 | 确定执行设备的动作选择方针 |
US11847390B2 (en) | 2021-01-05 | 2023-12-19 | Capital One Services, Llc | Generation of synthetic data using agent-based simulations |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1510570A (zh) * | 2002-12-20 | 2004-07-07 | 国际商业机器公司 | 管理自主计算机系统中的工作负荷的方法和系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6665653B1 (en) * | 1999-07-03 | 2003-12-16 | Microsoft Corporation | Noise reduction for a cluster-based approach for targeted item delivery with inventory management |
US7158959B1 (en) | 1999-07-03 | 2007-01-02 | Microsoft Corporation | Automated web-based targeted advertising with quotas |
US20030040850A1 (en) | 2001-08-07 | 2003-02-27 | Amir Najmi | Intelligent adaptive optimization of display navigation and data sharing |
US7302379B2 (en) * | 2003-12-07 | 2007-11-27 | Adaptive Spectrum And Signal Alignment, Inc. | DSL system estimation and parameter recommendation |
WO2007131526A1 (en) | 2006-05-15 | 2007-11-22 | Joost N.V. | Method of associating program content data in a digital television network |
US7756769B2 (en) * | 2006-09-01 | 2010-07-13 | Cabot Research, Llc | Portfolio-performance assessment |
US8086557B2 (en) * | 2008-04-22 | 2011-12-27 | Xerox Corporation | Method and system for retrieving statements of information sources and associating a factuality assessment to the statements |
US20100094673A1 (en) | 2008-10-14 | 2010-04-15 | Ebay Inc. | Computer-implemented method and system for keyword bidding |
-
2010
- 2010-12-17 US US12/972,417 patent/US8606608B2/en active Active
-
2011
- 2011-12-16 CN CN201110423107.3A patent/CN102542487B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1510570A (zh) * | 2002-12-20 | 2004-07-07 | 国际商业机器公司 | 管理自主计算机系统中的工作负荷的方法和系统 |
Non-Patent Citations (1)
Title |
---|
基于反模式的中间件应用系统性能优化;兰灵等;《软件学报》;20080930;第19卷(第9期);第2167-2180页 * |
Also Published As
Publication number | Publication date |
---|---|
CN102542487A (zh) | 2012-07-04 |
US20120158488A1 (en) | 2012-06-21 |
US8606608B2 (en) | 2013-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102542487B (zh) | 离线反事实分析 | |
Vieira et al. | In pursuit of an effective B2B digital marketing strategy in an emerging market | |
Derdenger et al. | The dynamic effects of bundling as a product strategy | |
Pinto et al. | Support Vector Machines for decision support in electricity markets׳ strategic bidding | |
US20200118145A1 (en) | Characterizing and Modifying User Experience of Computing Environments Based on Behavior Logs | |
CN105574147A (zh) | 一种信息处理方法及服务器 | |
US20120253945A1 (en) | Bid traffic estimation | |
Xue et al. | Pricing personalized bundles: A new approach and an empirical study | |
CN115511501A (zh) | 一种数据处理方法、计算机设备以及可读存储介质 | |
CN112287238B (zh) | 用户特征的确定方法和装置、存储介质及电子设备 | |
Chen et al. | Common pitfalls in training and evaluating recommender systems | |
CN113379449B (zh) | 多媒体资源召回方法、装置、电子设备以及存储介质 | |
Xu et al. | Entrepreneurial learning and disincentives in crowdfunding markets | |
US11410203B1 (en) | Optimized management of online advertising auctions | |
US20180165706A1 (en) | Systems and methods for improving social media advertising efficiency | |
CN112232546A (zh) | 一种推荐概率预估方法、装置、电子设备及存储介质 | |
Xu et al. | Predicting advertiser bidding behaviors in sponsored search by rationality modeling | |
Khodaei et al. | Bridging the gap between entrepreneurial orientation and market opportunity: The mediating effect of absorptive capacity and market readiness | |
Frtisch et al. | The economics of automated market makers | |
Terano | Exploring the vast parameter space of multi-agent based simulation | |
Yang et al. | Transfer learning based on probabilistic latent semantic analysis for analyzing purchase behavior considering customers' membership stages | |
CN113011911A (zh) | 基于人工智能的数据预测方法、装置、介质及电子设备 | |
CN111814050A (zh) | 旅游场景强化学习模拟环境构建方法、系统、设备和介质 | |
CN110428281A (zh) | 针对多种关联产品联合确定对等资源量的方法和装置 | |
CN113902481B (zh) | 权益确定方法、装置、存储介质及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150617 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150617 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |