CN112154433A - 响应内容请求的计算资源的有效使用 - Google Patents
响应内容请求的计算资源的有效使用 Download PDFInfo
- Publication number
- CN112154433A CN112154433A CN201980004540.8A CN201980004540A CN112154433A CN 112154433 A CN112154433 A CN 112154433A CN 201980004540 A CN201980004540 A CN 201980004540A CN 112154433 A CN112154433 A CN 112154433A
- Authority
- CN
- China
- Prior art keywords
- request
- content
- requests
- priority value
- specified threshold
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4831—Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
方法、系统和装置,包括编码在计算机存储介质上的计算机程序,用于在响应内容请求时有效地使用计算资源。方法包括使用优先级排序模型和指定内容提供商的最大可允许的负面结果的指定阈值,来确定接收的内容请求是否是低优先级请求。方法还包括扼制响应于低优先级请求对计算资源的访问,同时为其他内容请求提供对计算资源的访问。方法还包括基于新的内容请求集的数据来定期更新优先级排序模型和指定阈值。
Description
背景技术
本说明书涉及响应内容请求的数据处理和计算资源的有效使用。
内容提供商定期接收大量内容请求,并响应这些请求提供内容。处理和响应这些请求可能需要大量的计算资源。
发明内容
一般来说,本说明书中描述的主题的一个创新方面可以体现在包括以下操作的方法中:由数据处理装置从客户端设备接收内容请求;由数据处理装置从内容请求中提取特征;由数据处理装置将特征输入到使用先前内容请求集训练的优先级排序模型中;基于输入到模型的特征,由数据处理装置并从优先级排序模型获得内容请求的优先级值;基于目标损失百分比和先前内容请求集的结果来确定指定阈值;并且由数据处理装置基于指定阈值和请求的优先级值来扼制用于响应请求的对计算资源的访问,包括:当优先级排序模型输出满足指定阈值的优先级值时,提供对响应请求的计算资源的访问;和当优先级排序模型输出未能满足指定阈值的优先级值时,拒绝对计算资源的访问。该方面的其他实施例包括被配置为执行该方法的动作的相应系统、设备、装置和计算机程序。计算机程序(例如,指令)可以在计算机存储设备上编码。这些和其他实施例可以各自可选地包括以下特征中的一个或多个。
方法可以包括将在接收到内容请求之后接收的后续内容请求集识别为保持请求;提供响应于保持请求所需的对计算资源的访问,而不管保持请求的任何优先级值;监控响应于保持请求而提供的内容的实际结果;并且基于实际结果更新优先级排序模型。
更新优先级排序模型可以包括获得响应于保持请求而提供的内容的优先级值;将优先级值与实际结果进行比较;以及基于优先级值和实际结果之间的差异来调整优先级排序模型。
方法可以包括基于目标损失百分比和被拒绝访问计算资源的被丢弃内容请求的百分比之间的关系来调整优先级排序模型。
方法可以包括基于输入到模型的特征,由数据处理装置并从模型中获得内容请求的优先级值,这包括使用优先化模型,基于先前内容请求集中的请求的结果,确定内容请求生成积极结果的概率;并且使用优先化模型,基于由先前内容请求生成的积极结果,确定内容请求的积极结果的预期大小;并且由数据处理装置将内容请求生成积极结果的概率与积极结果的预期大小相组合,以生成优先级值。
基于目标损失百分比和先前内容请求集的结果来确定指定阈值可以包括获得先前内容请求集中的每个请求的结果;合计先前内容请求集中的每个请求的结果,以生成先前内容请求集的合计结果;并且按目标损失百分比缩放合计结果以生成指定阈值。
方法可以包括基于目标损失百分比和保持请求的结果来更新指定阈值。
基于目标损失百分比和保持请求的结果来更新指定阈值可以包括获得保持请求中的每个请求的结果;合计保持请求中的每个请求的结果,以生成保持请求的合计结果;并且按目标损失百分比缩放合计结果以生成指定阈值。
如上所述,处理和响应请求可能需要大量的计算资源,但不能保证任何特定的结果。例如,其中一些请求会给内容提供商带来积极结果,而另一些则不会。积极结果可以是对请求的任何响应,其导致对内容提供商有利的结果,诸如用户与内容提供商提供的内容交互。例如,用户可以通过用输入设备选择内容、下载内容、用光标悬停在内容上或在输出设备上查看内容来与内容交互。相反,一些内容请求可能不会导致用户与内容提供商提供的内容交互。因此,存在一些内容不会给内容提供商带来积极结果的请求,但是需要花费大量的计算资源。在任一情况下,对请求的处理和响应消耗有限的计算资源,这些资源随后不可用于处理其他请求,或者被分配给其他任务(例如,使得过程完全独立于请求处理)。本文档讨论了可以提高请求处理效率的各种技术和系统,例如,通过将计算资源的分配限制于那些被识别为可能导致积极结果的请求,从而释放本来会被分配来处理分配给其他任务的所有请求的计算资源。
本说明书中描述的主题的特定实施例可以被实现以实现一个或多个以下优点。例如,本说明书中描述的创新有助于有效使用计算资源来响应内容请求。具体地,本说明书中描述的创新通过保留计算资源而不是将它们花费在不会给内容提供商带来积极结果的内容请求上来实现操作效率。结果,这些计算资源可用于高优先级请求,即对内容提供商带来积极结果的内容请求。
作为另一个示例,本说明书中描述的创新通过更准确的预测建模来促进内容请求的更准确的优先级排序。传统模型通常是静态的,即它们不会用新的数据集来更新。由于这些模型所基于的陈旧和静态数据,它们可能会将某些高优先级请求不正确地分类为低优先级请求。本说明书中描述的建模技术通过利用动态模型来实现请求分类的更高准确度,该动态模型使用被称为保持请求的新的内容请求集来定期更新。作为训练和更新模型的一部分,这些保持请求被提供对必需的计算资源的访问,而不管它们是否包括可能导致例如它们被分类为低优先级请求的特征。通过向这些保持请求提供必需的计算资源,可以确定它们的实际结果,然后基于实际结果和模型生成的优先级值之间的差异来更新模型。因此,更新的模型为未来的内容请求生成了更准确的优先级值。换句话说,未来的内容请求可以被更准确地分类为高优先级请求或低优先级请求。
本说明书中描述的主题的一个或多个实施例的细节在附图和以下描述中阐述。从说明书、附图和权利要求书中,主题的其他特征、方面和优点将变得显而易见。
附图说明
图1是其中内容被分发用于呈现的示例环境的框图。
图2是确定是否提供响应于内容请求所需的对计算资源的访问的示例过程的流程图。
图3是更新优先级排序模型的示例过程的流程图。
图4是确定指定阈值的示例过程的流程图。
图5是示例计算机系统的框图。
各种附图中的相似的参考标号和标示指示相似的元素。
具体实施方式
内容提供商定期接收和响应大量内容请求。处理和响应这些请求可能需要大量的计算资源。在一些情况下,内容提供商接收需要大量计算资源的内容请求,但不会给内容提供商带来积极结果。这种请求在本说明书中被称为低优先级请求,它消耗了原本可用于高优先级请求的计算资源,即为内容提供商带来积极结果的请求。积极结果可以是对请求的任何响应,其导致对内容提供商有利的结果,诸如用户与内容提供商提供的内容交互。
如本说明书中所述,通过扼制(throttle)响应低优先级请求所需的对计算资源的访问,同时提供响应高优先级请求所需的对计算资源的访问,可以有效地使用计算资源。在确定是否扼制响应内容请求所需的对计算资源的访问时,内容提供商首先确定内容请求是否是低优先级请求。为了便于这种确定,内容提供商从内容请求中提取特征,并将这些特征输入到优先级排序模型中。
使用先前内容请求集的数据训练的优先级排序模型基于输入到优先级排序模型的内容请求的特征来确定接收的内容请求的优先级值。反过来,优先级排序模型输出内容请求的优先级值,该优先级值可用于确定例如该请求是高优先级请求还是低优先级请求,如下面更详细讨论的。
内容提供商还确定指定阈值,指定阈值表示内容提供商可允许的最大负面结果,指定阈值控制对计算资源的访问的扼制。指定阈值可以基于先前内容请求集的实际结果来确定,如通过预定的目标损失百分比来缩放,如本说明书中所详述的。
内容提供商将内容请求的优先级值与指定阈值进行比较。如果内容请求的优先级值不满足指定阈值,则该请求被视为低优先级请求。另一方面,如果内容请求的优先级值满足指定阈值,则该请求被视为高优先级请求。
内容提供商还确定是否提供响应内容请求所需的对计算资源的访问(或分配)。如果内容提供商已经确定请求是低优先级请求,则内容提供商扼制响应该请求所需的对计算资源的访问。另一方面,如果内容提供商确定请求是高优先级请求,则内容提供商提供响应该请求所需的对计算资源的访问。
为了确保优先级排序模型继续为其随时间接收的内容请求提供准确的预测,内容提供商可以使用不受上述扼制的新内容请求集来定期更新优先级排序模型,从而处理新内容请求集中的所有请求。具体地,内容提供商可以评估新的内容请求集的实际结果和优先级值,并使用实际结果和优先级值之间的差异来更新优先级排序模型。
下面参考图1至图5更详细地描述这些特征和附加特征。
图1是其中内容被分发用于呈现的示例环境100的框图。示例环境100包括网络108,诸如局域网(LAN)、广域网(WAN)、互联网或其组合。网络108连接内容提供商130和客户端设备102。示例环境100可以包括许多不同的内容提供商130和客户端设备102。
客户端设备102是能够通过网络108请求和接收内容和资源的电子设备。示例客户端设备102包括个人计算机、移动通信设备、数字助理设备以及能够通过网络108发送和接收数据的其他设备。客户端设备102通常包括诸如网络浏览器的用户应用,以便于通过网络108发送和接收数据,但是由客户端设备102执行的本地应用也可以便于通过网络108发送和接收内容。
在客户端设备102处呈现的内容的示例包括网页、文字处理文档、便携式文档格式(portable document format,PDF)文档、图像、视频和搜索结果页面。内容提供商130可以向客户端设备102提供内容。例如,在一些实施方式中,内容提供商130包括内容服务器126,其托管响应于内容请求而提供的内容。在该示例中,客户端设备102可以发起内容请求104。内容请求104由客户端设备102通过网络108(例如,电信网络)发送到内容提供商130。
在一些实施方式中,内容提供商130包括请求分析器110、数据存储116、优先级排序模型122、扼制引擎124以及一个或多个内容服务器126。内容提供商130可以被实现为数据处理装置或者参考图5描述的计算机系统,或者任何其他适当的处理系统。
如图1的框图所示,内容提供商130被描绘为具有各种子框的单个框。然而,尽管内容提供商可以是单个设备或单个设备集,但是本说明书设想内容提供商也可以是一组设备,或者甚至是通信以便向客户端设备提供内容的多个不同系统。例如,内容提供商可以包括搜索系统、视频流服务、音频流服务、导航服务或任何其他服务中的一个或多个。内容提供商可以包括内容的发布者,或者可以是不同于发布者的实体。
内容提供商130的上述组件确定内容请求是否是低优先级请求,以及是否提供响应内容请求所需的对计算资源的访问。参考图2来描述这些组件的操作,图2是由内容提供商实现以确定是否提供对响应内容请求的所需计算资源的访问的示例过程200的流程图。下面仅出于说明的目的来描述过程200的操作。过程200的操作可以由任何适当的设备或系统来执行,例如任何适当的数据处理装置。过程200的操作也可以被实现为存储在计算机可读介质上的指令,当由一个或多个数据处理装置执行时,该指令使得一个或多个数据处理装置执行过程200的操作。
内容提供商130从客户端设备接收内容请求104(在202)。例如,内容请求104可以是包含由用户通过其移动设备的浏览器发送并由内容提供商130接收的词语“廉价的税务筹划公司”的查询。例如,内容提供商130可以是搜索引擎或被配置为通过向客户端设备102发送内容来响应内容请求104的任何其他类型的服务(例如,网络服务器)。
内容提供商130从内容请求104中提取特征(在204)。在接收到内容请求104时,该请求被发送到内容提供商130的请求分析器110组件。在一些实施方式中,请求分析器110包括两个子组件:特征提取器112和优先级分析器114。特征提取器112从内容请求104中提取一个或多个特征。本文使用的术语“特征”可以指内容请求104的任何属性,内容提供商130可以使用该属性来选择适当的内容以响应于该请求而提供。例如,特征提取器112可以从内容请求104中提取特征,除了其他特征之外,这些特征包括请求所引用的关键词、请求所引用的实体(例如,人、地方、事物)、地理信息(例如,提交请求的区域、网络位置)、请求设备(例如,客户端设备102)的名称(或网络位置)、用户是否正在使用广告拦截器、用户正在使用的设备类型(桌面上的浏览器、移动设备上的浏览器)、浏览器的类型(例如,Chrome、Safari、Firefox)、请求的时间以及请求的日期。如本文所使用的,提取特征包括从内容请求中检索(retrieve)特征以及识别内容请求内的特征。
在上面的示例中,内容提供商从用户通过其移动设备的浏览器发送的包含单词“廉价的税务筹划公司”的查询中提取特征。该示例中提取的特征可以包括查询中存在的单词(“廉价的税务筹划公司”)、客户端设备104的IP地址,其可以用于确定查询源自加利福尼亚州圣马特奥(San Mateo,California),并且用户正在其移动设备上使用品牌X浏览器。
内容提供商然后将一些或所有提取的特征输入到优先级排序模型(在206)。优先级排序模型被配置为生成数值,该数值被称为优先级值。优先级值可用于对内容请求进行优先级排序,以便确定是否允许单个内容请求访问计算资源来响应该请求。特征提取器112在从内容请求104中提取到特征时,将这些特征输入到优先级排序模型122中。在上面的示例中,单词“廉价的税务筹划公司”、加利福尼亚州圣马特奥、移动设备、和品牌X浏览器被输入作为优先级排序模型的特征。
基于特征提取器112输入到优先级排序模型122的特征,优先级排序模型122输出内容请求104的优先级值(在208)。在一些实施方式中,优先级排序模型122可以使用来自先前内容请求集的数据来生成。具体地,优先级排序模型122可以使用从先前内容请求中提取的特征和先前内容请求的实际结果来确定内容请求的优先级值。
优先级排序模型122可以包括两个子模型:SM1 118和SM2 120。SM1 118确定请求生成积极结果的概率,并且SM2 120确定具有积极结果的内容请求的有条件的预期结果。SM1 118和SM2 120的输出可以被组合以生成优先级值。
优先级排序模型122的第一子模型SM1 118基于由先前内容请求集生成的结果来预测内容请求生成积极结果的概率(在214)。特征提取器112从先前内容请求中提取特征,并且优先级分析器114获得这些请求中的每一个的结果。这些提取的特征和先前内容请求的结果被存储在数据存储116中。SM1 118访问指定来自数据存储116的先前内容请求的这些特征和结果的数据。在一些实施方式中,第一子模型使用泊松回归(PoissonRegression)模型,其中,对于具有特征级别X的内容请求CR,该模型根据以下假设预测CR生成积极结果的概率:
其中,OX是具有特征级别X的内容请求被看到的次数(偏移量),NX是具有预期积极结果的内容请求的次数,并且Θ表示模型的参数向量。
例如,SM1 118可以基于先前查询的所有结果数据(包括具有积极结果和消极结果的查询)来确定查询生成积极结果(例如,用户与响应于查询而提供的内容交互)的概率。因此,内容请求CR导致积极结果的概率(在上面的示例中是查询是否导致提供用户可以与之交互的内容)估计如下:
优先级排序模型122的第二子模型SM2 120基于生成积极结果的先前内容请求集中的请求来预测内容请求的有条件的预期结果(在216)。有条件的预期结果是一个数字值,表示内容请求的积极结果的大小。SM2 120使用指定存储在数据存储116中的先前内容请求的特征和结果的数据。该模型可以使用对数-高斯回归(Log-Gaussian regression)模型来实现。在一些实施方式中,对于具有特征级别X的每个内容请求CR,对数-高斯模型根据以下假设预测CR的预期结果(其可以量化用户与响应于查询而提供的内容的交互):
log(Rev+ε)~Gaussian(ΓTX,σ2),
其中Γ是模型的参数向量,并且ε设置为小正数(ε~10-6)以防止非常小的对数参数(log argument)。
优先级排序模型122组合SM1 118和SM2 120的输出来生成优先级值。具体地,优先级排序模型122通过将由SM1 118确定的积极结果的概率与由SM2 120确定的有条件的预期结果相组合来确定优先级值(在218)。这可以用下面的等式来表示:
E[交互]=P(交互>0)xE[交互|交互>0]
在用户通过移动设备浏览器提交包含“廉价的税务筹划公司”的查询的上述示例中,优先级排序模型可以基于内容请求的输入特征来确定内容请求具有65的优先级值。为了便于解释,在本说明书中,优先级值被示为整数,但是应当理解,优先级值可以在任何合适的标度(例如,货币、时间等)上测量。
注意,尽管以上出于示例的目的讨论了模型的具体实现,但是也可以使用其他合适的模型,诸如线性回归模型和神经网络模型。
内容提供商130基于目标损失百分比和先前请求集的结果来确定指定阈值(在210)。参考图4来描述内容提供商确定指定阈值的过程的细节,图4是由内容提供商130实现以确定指定阈值的示例过程400的流程图。
如参考图4所述,内容提供商获得先前内容请求集中的每个请求的结果(在402)。作为示例,内容提供商可以访问存储在数据存储116中的先前内容请求集的实际结果(例如收入,诸如广告收入、用户采取的动作或其他结果)。例如,出于示例的目的,假设存在十个先前内容请求获得以下广告收入(以美元计):100、150、200、50、30、10、25、400、15、20。应当理解,收入只是可以量化先前内容请求的实际结果的一种可能方式。可以量化先前内容请求的结果的其他方式包括用户观看时间或内容的交互时间。
内容提供商130合计先前内容请求的结果,以生成合计结果(在404)。在上面的示例中,内容提供商130基于合计(例如,100+150+200+50+30+10+25+400+15+20)来确定先前内容请求的总收入是$1000。如果使用用户观看时间来量化实际结果,则内容提供商130通过合计(求和)每个请求的观看时间来确定先前内容请求的总观看时间。
内容提供商按目标损失百分比缩放合计结果,以生成指定阈值(在406)。可以预先确定的目标损失百分比指定了被拒绝访问计算资源的内容请求的比例。因此,内容提供商130可以通过指定目标损失百分比来调整系统的性能,该目标损失百分比导致对一部分内容请求的服务被拒绝。在上述示例中,内容提供商130可以将目标损失百分比设置为10%。内容提供商因此将$1000的总收入按此10%目标损失百分比进行缩放,以生成指定阈值100。如果使用用户观看时间来量化实际结果,则内容提供商130将先前内容请求的总观看时间缩放10%的目标损失百分比。
指定阈值的计算也可以以其他方式执行。在一些实施方式中,内容提供商可以获得先前内容请求的预测和实际结果。内容提供商合计先前内容请求的实际结果。使用上面的示例,10个先前内容请求的实际合计结果是1000。然后,内容提供商通过将总的实际结果缩放10%的预定目标损失阈值来计算初始阈值。在上面的示例中,内容提供商将1000的实际合计结果按5%的预定目标损失阈值进行缩放,以获得50的初始阈值(即,5/100*1000)。
内容提供商以递增的顺序对预测结果进行排序,然后使用该顺序获得相应的实际结果集。然后,从实际结果的列表中的第一个内容请求开始,内容提供商将每个请求的实际结果相加,直到被分析的请求的实际结果的总和超过初始阈值。此时,内容提供商选择与预测结果的总和没有超过初始阈值的最后实际结果相对应的预测结果作为指定阈值。
在上面的示例中,内容提供商获得10个先前内容请求中的每一个的实际收入[100、150、200、50、30、10、25、400、15、20]和相应的预测收入[100、150、200、50、30、10、20、400、15、22]。内容提供商以递增的顺序对预测收入进行排序来获得以下数据集:10、15、20、22、30、50、100、150、200、400。然后,内容提供商使用该顺序来获得与实际数据集相对应的实际收入的数据集,如下所示:10、15、25、20、30、50、100、150、200、400。然后,从实际收入数据集中的第一个结果开始,内容提供商将每个请求的实际收入相加,直到实际收入的总和超过初始阈值50。前三次请求(即10+15+25)后的实际收入总和为50。当第四个实际收入20被加到实际收入的总和时,实际收入的总和超过初始阈值50(即10+15+25+20=70,其大于50)。因此,内容提供商选择20作为指定阈值,因为它是与实际收入之和没有超过初始阈值50的最后实际收入(25)相对应的预测收入。如果内容请求的结果可以使用用户观看时间或内容的交互时间(或以任何其他适当的方式)而不是收入来量化,则上述分析将是相同的。
基于新的内容请求集(在本说明书中称为保持请求(holdout request))及其相应的结果,可以使用上述过程定期更新指定阈值。
请注意,百分比用于上述示例,但目标损失可以用其他方式表示,诸如总合计损失、特定时期内的总损失或其他损失的度量。还要注意,阈值可以基于所提供的内容、内容提供商和/或提供内容的国家而变化。
参考图1和图2,内容提供商130确定优先级值是否满足指定阈值(在212)。内容提供商130将优先级排序模型122生成的优先级值和指定阈值输入到扼制引擎124。基于优先级值和指定阈值,扼制引擎124评估是否提供响应内容请求104所需的对计算资源的访问。在上述示例中,扼制引擎124将优先级值65(由优先级排序模型122生成)与100的指定阈值进行比较。
如果扼制引擎124确定优先级值不满足指定阈值,则扼制引擎拒绝响应请求所需的对计算资源的访问(在222)。在上面的示例中,因为优先级值65不满足指定阈值100,所以扼制引擎拒绝对识别内容请求的广告列表所需的计算资源的访问。
在确定优先级值不满足指定阈值时,扼制引擎124可以通知内容服务器126不处理内容请求104。在一些实施方式中,扼制引擎124可以向内容服务器126发送消息,该消息包括内容请求104、提取的特征以及关于是否提供对响应内容请求的计算资源的访问的“否”指示符。在接收到该消息时,内容服务器126忽略内容请求104,并且可以在回复106中用“拒绝访问”来响应客户端设备102。结果,客户端设备102可以简单地不显示任何内容。通知内容服务器不处理内容请求的其他方式包括设置阻止内容服务器处理内容请求的数据标志,或者简单地不指示内容服务器处理内容请求(例如,在内容服务器的默认是不处理内容请求的情况下,除非明确指示)。
另一方面,如果扼制引擎124确定优先级值满足指定阈值,则扼制引擎124提供响应请求所需的对计算资源的访问(在220)。在上述示例中,如果优先级值已经达到或超过100的指定阈值,则扼制引擎将提供响应于内容请求而提供内容所需的对计算资源的访问。
在一些实施方式中,在确定优先级值满足指定阈值时,扼制引擎124可以通知内容服务器126处理内容请求104。扼制引擎124可以向内容服务器126发送消息,该消息包括内容请求104、提取的特征以及关于是否提供对响应该请求的计算资源的访问的“是”指示符。在接收到该消息时,内容服务器126利用计算资源来识别适当的内容(例如,搜索结果)以响应内容请求104。然后,内容服务器126在回复106中将该内容提供给客户端设备102。结果,在搜索引擎中搜索结果的情况下,客户端设备102显示检索到的搜索结果。通知内容服务器处理内容请求的其他方式包括设置触发内容服务器处理内容请求的数据标志,或者简单地不向内容服务器发送任何指令(例如,在内容服务器的默认是处理内容请求的情况下,除非明确指示)。
如上参考图1和图2所述,使用先前内容请求集来训练优先级排序模型,并且基于先前内容请求集来为特定内容请求生成优先级值。在一些实施方式中,优先级排序模型使用新的内容请求集来定期更新,如参考图3所述。
图3是由内容提供商130实现以更新优先级排序模型122的示例过程300的流程图。
在从客户端设备102接收到特定内容请求之后(参考图2描述其处理),或者在任何时候,内容提供商130可以将从多个客户端设备接收到的新的内容请求集识别为保持请求(在302)。
对于这些保持请求,内容提供商130提供对所需计算资源的访问,而不管保持请求的任何优先级值(在304)。在一些实施方式中,在特征提取器112组件从保持请求中提取特征之后,特征提取器将提取的特征和相应的保持请求并行发送到内容服务器126、优先级排序模型122和数据存储116。
对于发送到优先级排序模型122的保持请求,优先级排序模型确定优先级值(如上文参考图1和图2所述),并将这些优先级值存储在数据存储116中。
对于特征提取器112直接发送到内容服务器126的保持请求,内容服务器126花费计算资源来识别保持请求的提取的特征的内容。在保持请求的情况下,内容服务器126不需要来自扼制引擎124的关于是否处理内容请求的任何消息。例如,当特征提取器112将提取的特征直接发送到内容服务器时,它还可以包括标记标识符“保持”,这可以允许内容服务器126在不从扼制引擎124接收任何指令的情况下操作。
内容提供商130监控响应于保持请求而提供的内容的实际结果(在306)。在一些实施方式中,优先级分析器114监控由内容服务器126处理的每个保持请求的实际结果。例如,当正在处理保持请求时,优先级分析器114可以具有在内容服务器126上运行的代理,由内容服务器126提供的内容在被发送到客户端设备102之前通过该代理。优先级分析器114从包括在内容中的元数据中提取内容源(例如,可以托管响应于内容请求而提供的内容的服务器)和会话标识符(即,为其提供内容的特定内容请求102的标识符)。优先级分析器114的代理然后可以查询内容源以获得与特定会话标识符相对应的实际结果数据。在从内容源接收到实际结果数据时,优先级分析器114将每个保持请求的该数据存储在数据存储116中。
内容提供商130基于实际结果更新优先级排序模型(在308)。这可以分三步完成。首先,内容提供商130获得响应于保持请求而提供的内容的优先级值(在310)。在一些实施方式中,优先级分析器114获得存储在数据存储116中的保持请求的优先级值。例如,优先级分析器114可以向数据存储116查询保持请求的优先级值。优先级分析器可以向数据存储116发送每个保持请求的唯一标识符,数据存储116可以存储不同内容请求的标识符和这些请求中的每个请求的相应数据。因此,在从优先级分析器114接收到查询时,数据存储116使用标识符来定位存储在数据存储116中的相应优先级值数据。
内容提供商130将优先级值与实际结果进行比较(在312),并基于优先级值和实际结果之间的差异来调整优先级排序模型(在314)。在一些实施方式中,优先级分析器114从数据存储116获得每个保持请求的实际结果。然后,优先级分析器114将优先级值和保持请求的实际结果进行比较。例如,优先级分析器114确定每个保持请求的实际结果和优先级值之间的差异。实际结果和/或优先级值可以被缩放(例如乘以数值)以使得它们能够进行比较。在一些实施方式中,优先级分析器114可以基于优先级值和实际结果之间的差异来生成平均差异,然后使用该平均差异来更新优先级排序模型。例如,优先级分析器114可以确定优先级值和实际结果之间的平均差是-50。换句话说,优先级分析器114可以确定实际结果平均比优先级值小50。内容提供商130可以更新优先级排序模型122的一种方式是将输出缩放50。例如,内容提供商130可以从当前优先级排序模型的最终确定输出中减去50。因此,如果当前模型将生成100的优先级值,则更新的模型将生成50的优先级值(即,100减去50)。
内容提供商130可以进一步基于目标损失百分比和被拒绝访问计算资源的被丢弃请求的数量之间的关系来调整优先级排序模型(316)。例如,基于内容提供商130随时间接收的内容请求,内容提供商130可以以特定的目标损失百分比来保持被拒绝访问计算资源的被丢弃请求的数量的分布。
例如,虽然当前请求丢弃率可以是50%,但是内容提供商130可以基于该分布来确定对于10%的目标损失百分比,所期望的被丢弃请求的数量应该是70%。内容提供商130可以通过调整优先级排序模型来实现该最佳请求丢弃率。这是使用基于10%目标损失百分比的37.5的指定阈值和10个内容请求的样本数据来说明的,其中由优先级排序模型确定了以下优先级值:15、20、25、30、35、40、45、50、55和60。使用37.5的指定阈值,优先级值低于37.5的前五个请求将被丢弃。
在此示例中,10%目标损失百分比仅导致50%的请求丢弃率(即,总共10个查询中有5个查询被丢弃)。在相同的目标损失阈值下,将请求丢弃率从50%增加到70%,可以通过将优先级排序模型的输出缩放10来实现。因此,10个内容请求的样本数据现在将具有以下更新的优先级值:5、10、15、20、25、30、35、40、45和50。现在,应用指定阈值37.5,可以实现70%的请求丢弃率。这是因为优先级值低于37.5的前七个请求被丢弃。
图5是可用于执行上述操作的示例计算机系统500的框图。系统500包括处理器510、存储器520、存储设备530和输入/输出设备540。组件510、520、530和540中的每一个可以例如使用系统总线550互连。处理器510能够处理在系统500内执行的指令。在一些实施方式中,处理器510是单线程处理器。在另一实施方式中,处理器510是多线程处理器。处理器510能够处理存储在存储器520或存储设备530上的指令。
存储器520在系统500内存储信息。在一个实施方式中,存储器520是计算机可读介质。在一些实施方式中,存储器520是易失性存储器单元。在另一实施方式中,存储器520是非易失性存储单元。
存储设备530能够为系统500提供大容量存储。在一些实施方式中,存储设备530是计算机可读介质。在各种不同的实施方式中,存储设备530可以包括例如硬盘设备、光盘设备、由多个计算设备在网络上共享的存储设备(例如,云存储设备)、或者一些其他大容量存储设备。
输入/输出设备540为系统500提供输入/输出操作。在一些实施方式中,输入/输出设备540可以包括网络接口设备(例如以太网卡)、串行通信设备(例如RS-232端口)和/或无线接口设备(例如和802.11卡)中的一个或多个。在另一实施方式中,输入/输出设备可以包括被配置为接收输入数据并将输出数据发送到其他输入/输出设备的驱动设备,例如键盘、打印机和显示设备560。然而,也可以使用其他实施方式,诸如移动计算设备、移动通信设备、机顶盒电视客户端设备等。
尽管在图5中描述了示例处理系统,但是本说明书中描述的主题和功能操作的实施方式可以在其他类型的数字电子电路中实现,或者在计算机软件、固件或硬件中实现,包括本说明书中公开的结构及其结构等同物,或者在它们中的一个或多个的组合中实现。
本说明书中描述的主题和操作的实施例可以在数字电子电路中实现,或者在计算机软件、固件或硬件中实现,包括本说明书中公开的结构及其结构等同物,或者在它们中的一个或多个的组合中实现。本说明书中描述的主题的实施例可以被实现为一个或多个计算机程序,即一个或多个计算机程序指令模块,被编码在计算机存储介质(或多个介质)上,用于由数据处理装置执行或控制数据处理装置的操作。可替换地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以编码信息,用于传输到合适的接收器装置以由数据处理装置执行。计算机存储介质可以是或包括在计算机可读存储设备、计算机可读存储基底、随机或串行存取存储器阵列或设备、或它们中的一个或多个的组合中。此外,虽然计算机存储介质不是传播信号,但是计算机存储介质可以是人工生成的传播信号中编码的计算机程序指令的源或目的地。计算机存储介质也可以是或包括在一个或多个单独的物理组件或介质(例如,多个CD、磁盘或其他存储设备)中。
本说明书中描述的操作可以实现为由数据处理装置对存储在一个或多个计算机可读存储设备上或从其他源接收的数据执行的操作。
术语“数据处理装置”包括用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机、片上系统或前述的多个或组合。该装置可以包括专用逻辑电路,例如FPGA(field programmable gate array,现场可编程门阵列)或ASIC(application-specific integrated circuit,专用集成电路)。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机或它们中的一个或多个的组合的代码。该装置和执行环境可以实现各种不同的计算模型基础设施,诸如网络服务、分布式计算和网格计算基础设施。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言、声明性或过程性语言,并且它可以以任何形式来部署,包括作为独立程序或作为模块、组件、子例程、对象或其他适合在计算环境中使用的单元。计算机程序可以但是不需要对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或多个脚本)、专用于所讨论的程序的单个文件或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以被部署为在一个计算机或位于一个站点或分布在多个站点并通过通信网络互连的多个计算机上执行。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器来执行,以通过对输入数据进行操作并生成输出来执行动作。过程和逻辑流程也可以由专用逻辑电路来执行,并且装置也可以被实现为专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
举例来说,适于执行计算机程序的处理器包括通用和专用微处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于根据指令执行动作的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,或者可操作地耦合到一个或多个用于存储数据的大容量存储设备,以从一个或多个大容量存储设备接收数据或向一个或多个大容量存储设备传送数据或者接收和传送数据。然而,计算机不需要具有这样的设备。此外,计算机可以嵌入到另一个设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备(例如通用串行总线(USB)闪存驱动器),仅举几个示例。适用于存储计算机程序指令和数据的设备包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;和CD-ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充,或者合并在专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施例可以在计算机上实现,该计算机具有用于向用户显示信息的显示设备,例如CRT(cathode ray tube,阴极射线管)或LCD(liquid crystal display,液晶显示器),以及键盘和定点设备,例如鼠标或轨迹球,用户可以通过键盘和定点设备向计算机提供输入。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且来自用户的输入可以以任何形式接收,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如通过响应于从网络浏览器接收的请求,将网页发送到用户的客户端设备上的网络浏览器。
本说明书中描述的主题的实施例可以在计算系统中实现,该计算系统包括后端组件,例如作为数据服务器,或者该计算系统包括中间件组件,例如应用服务器,或者该计算系统包括前端组件,例如具有图形用户界面或网络浏览器的客户端计算机,用户可以通过该图形用户界面或网络浏览器与本说明书中描述的主题的实现进行交互,或者一个或多个这样的后端组件、中间组件或前端组件的任意组合。系统的组件可以通过任何形式或介质的数字数据通信(例如通信网络)来互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、互连网络(例如互联网)和对等网络(例如ad hoc对等网络)。
计算系统能够包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器的关系借助于在各个计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。在一些实施例中,服务器将数据(例如,HTML页面)传输到客户端设备(例如,出于向与客户端设备交互的用户显示数据和从用户接收用户输入的目的)。可以在服务器处从客户端设备接收在客户端设备处生成的数据(例如,用户交互的结果)。
尽管本说明书包含许多具体的实施细节,但这些不应被解释为对任何发明或可能要求保护的范围的限制,而是对特定发明的特定实施例的特征的描述。本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独或以任何合适的子组合来实现。而且,虽然特征可能在上面被描述为出现在某些组合中并且甚至一开始就被请求按这样进行保护,但是来自请求保护的组合的一个或多个特征在一些情况下能够从该组合中被删除,并且请求保护的组合可以针对子组合或者子组合的变化。
类似地,尽管在附图中以特定的顺序描述了操作,但是这不应该被理解为要求以所示的特定顺序或顺序执行这些操作,或者执行所有示出的操作,以获得期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。此外,上述实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或者封装到多个软件产品中。
因此,已经描述了主题的特定实施例。其他实施例在以下权利要求的范围内。在一些情况下,权利要求中列举的动作可以以不同的顺序执行,并且仍然获得期望的结果。此外,附图中描述的过程不一定需要所示的特定顺序或顺序来获得期望的结果。在某些实施方式中,多任务处理和并行处理可能是有利的。
Claims (24)
1.一种计算机实现的方法,包括:
由数据处理装置从客户端设备接收内容请求;
由数据处理装置从所述内容请求中提取特征;
由数据处理装置将所述特征输入到使用先前内容请求集训练的优先级排序模型中;
基于输入到所述模型的特征,由数据处理装置从所述优先级排序模型获得所述内容请求的优先级值;
基于目标损失百分比和所述先前内容请求集的结果来确定指定阈值;和
由数据处理装置基于所述指定阈值和所述内容请求的优先级值来扼制用于响应所述请求的对计算资源的访问,包括:
当所述优先级排序模型输出满足所述指定阈值的优先级值时,提供对计算资源的访问以响应于所述请求;和
当所述优先级排序模型输出未能满足所述指定阈值的优先级模型时,拒绝对所述计算资源的访问。
2.根据权利要求1所述的计算机实现的方法,还包括:
将在接收到所述内容请求之后接收的后续内容请求集识别为保持请求;
提供响应所述保持请求所需的对计算资源的访问,而不管所述保持请求的任何优先级值;
监控响应于所述保持请求而提供的内容的实际结果;和
基于所述实际结果更新所述优先级排序模型。
3.根据权利要求2所述的计算机实现的方法,其中,更新所述优先级排序模型包括:
获得响应于所述保持请求而提供的内容的优先级值;
将所述优先级值与所述实际结果进行比较;和
基于所述优先级值和所述实际结果之间的差异来调整所述优先级排序模型。
4.根据权利要求3所述的计算机实现的方法,还包括基于目标损失百分比和被拒绝访问计算资源的被丢弃内容请求的百分比之间的关系来调整所述优先级排序模型。
5.根据权利要求4所述的计算机实现的方法,其中,基于输入到所述模型的特征,由数据处理装置从所述模型获得所述内容请求的优先级值包括:
使用所述优先级排序模型,基于所述先前内容请求集中的请求的结果,确定所述内容请求生成积极结果的概率;和
使用所述优先级排序模型,基于由所述先前内容请求生成的积极结果,确定所述内容请求的积极结果的预期的大小;和
由数据处理装置将所述内容请求生成积极结果的概率与所述积极结果的预期大小相组合,以生成所述优先级值。
6.根据权利要求1所述的计算机实现的方法,其中,基于所述目标损失百分比和所述先前内容请求集的结果来确定指定阈值包括:
获得所述先前内容请求集中的每个请求的结果;
合计所述先前内容请求集中的每个请求的结果,以生成所述先前内容请求集的合计结果;和
按目标损失百分比缩放所述合计结果,以生成所述指定阈值。
7.根据权利要求2所述的计算机实现的方法,还包括基于所述目标损失百分比和所述保持请求的结果来更新所述指定阈值。
8.根据权利要求7所述的计算机实现的方法,其中,基于所述目标损失百分比和所述保持请求的结果来更新所述指定阈值包括:
获得所述保持请求中的每个请求的结果;
合计所述保持请求中的每个请求的结果,以生成所述保持请求的合计结果;和
按目标损失百分比缩放所述合计结果,以生成所述指定阈值。
9.一种系统,包括:
存储指令的一个或多个存储器设备;和
一个或多个数据处理装置,其被配置为与所述一个或多个存储器设备交互,并且在执行指令时,执行包括以下的操作:
从客户端设备接收内容请求;
从所述内容请求中提取特征;
将所述特征输入到使用先前内容请求集训练的优先级排序模型中;
基于输入到所述模型的特征,从所述优先级排序模型获得所述内容请求的优先级值;
基于目标损失百分比和所述先前内容请求集的结果来确定指定阈值;和
基于所述指定阈值和所述内容请求的优先级值来扼制用于响应所述请求的对计算资源的访问,包括:
当所述优先级排序模型输出满足所述指定阈值的优先级值时,提供对计算资源的访问以响应于所述请求;和
当所述优先级排序模型输出未能满足所述指定阈值的优先级值时,拒绝对所述计算资源的访问。
10.根据权利要求9所述的系统,其中,所述一个或多个数据处理装置被配置为执行还包括以下的操作:
将在接收到所述内容请求之后接收的后续内容请求集识别为保持请求;
提供响应所述保持请求所需的对计算资源的访问,而不管所述保持请求的任何优先级值;
监控响应于所述保持请求而提供的内容的实际结果;和
基于所述实际结果更新所述优先级排序模型。
11.根据权利要求10所述的系统,其中,更新所述优先级排序模型包括:
获得响应于所述保持请求而提供的内容的优先级值;
将所述优先级值与所述实际结果进行比较;和
基于所述优先级值和所述实际结果之间的差异来调整所述优先级排序模型。
12.根据权利要求11所述的系统,其中,所述一个或多个数据处理装置被配置为执行还包括以下的操作:
基于所述目标损失百分比和被拒绝访问计算资源的被丢弃内容请求的百分比之间的关系来调整所述优先级排序模型。
13.根据权利要求12所述的系统,其中,基于输入到所述模型的特征,从所述模型获得所述内容请求的优先级值包括:
使用所述优先级排序模型,基于所述先前内容请求集中的请求的结果,确定所述内容请求生成积极结果的概率;和
使用所述优先级排序模型,基于由所述先前内容请求生成的积极结果,确定所述内容请求的积极结果的预期大小;和
由数据处理装置将所述内容请求生成积极结果的概率与所述积极结果的预期大小相组合,以生成所述优先级值。
14.根据权利要求9所述的系统,其中,基于所述目标损失百分比和所述先前内容请求集的结果来确定所述指定阈值包括:
获得所述先前内容请求集中的每个请求的结果;
合计所述先前内容请求集中的每个请求的结果,以生成所述先前内容请求集的合计结果;和
按目标损失百分比缩放所述合计结果,以生成所述指定阈值。
15.根据权利要求10所述的系统,其中,所述一个或多个数据处理装置被配置为执行还包括以下的操作:
基于所述目标损失百分比和所述保持请求的结果来更新所述指定阈值。
16.根据权利要求15所述的系统,其中,基于所述目标损失百分比和所述保持请求的结果来更新所述指定阈值包括:
获得所述保持请求中的每个请求的结果;
合计所述保持请求中的每个请求的结果,以生成所述保持请求的合计结果;和
按目标损失百分比缩放所述合计结果,以生成所述指定阈值。
17.一种存储指令的非暂时性计算机可读介质,当被一个或多个数据处理装置执行时,所述指令使得所述一个或多个数据处理装置执行包括以下的操作:
从客户端设备接收内容请求;
从所述内容请求中提取特征;
将所述特征输入到使用先前内容请求集训练的优先级排序模型中;
基于输入到所述模型的特征,从所述优先级排序模型获得所述内容请求的优先级值;
基于目标损失百分比和所述先前内容请求集的结果来确定指定阈值;和
基于所述指定阈值和所述内容请求的优先级值来扼制用于响应所述请求的对计算资源的访问,包括:
当所述优先级排序模型输出满足所述指定阈值的优先级值时,提供对计算资源的访问以响应于所述请求;和
当所述优先级排序模型输出未能满足所述指定阈值的优先级值时,拒绝对所述计算资源的访问。
18.根据权利要求17所述的非暂时性计算机可读介质,其中,当被一个或多个数据处理装置执行时,所述指令使得所述一个或多个数据处理装置执行操作,包括:
将在接收到所述内容请求之后接收的后续内容请求集识别为保持请求;提供响应所述保持请求所需的对计算资源的访问,而不管所述保持请求的任何优先级值;
监控响应于所述保持请求而提供的内容的实际结果;和
基于所述实际结果更新所述优先级排序模型。
19.根据权利要求18所述的非暂时性计算机可读介质,其中,更新所述优先级排序模型包括:
获得响应于所述保持请求而提供的内容的优先级值;
将所述优先级值与所述实际结果进行比较;和
基于所述优先级值和所述实际结果之间的差异来调整所述优先级排序模型。
20.根据权利要求19所述的非暂时性计算机可读介质,其中,当被一个或多个数据处理装置执行时,所述指令使得所述一个或多个数据处理装置执行操作,包括:
基于所述目标损失百分比和被拒绝访问计算资源的被丢弃内容请求的百分比之间的关系来调整所述优先级排序模型。
21.根据权利要求20所述的非暂时性计算机可读介质,其中,基于输入到所述模型的特征,从所述模型获得所述内容请求的优先级值包括:
使用所述优先级排序模型,基于所述先前内容请求集中的请求的结果,确定所述内容请求生成积极结果的概率;和
使用所述优先级排序模型,基于由所述先前内容请求生成的积极结果,确定所述内容请求的积极结果的预期大小;和
将所述内容请求生成积极结果的概率与所述积极结果的预期大小相组合,以生成所述优先级值。
22.根据权利要求17所述的非暂时性计算机可读介质,其中,基于所述目标损失百分比和所述先前内容请求集的结果来确定所述指定阈值包括:
获得所述先前内容请求集中的每个请求的结果;
合计所述先前内容请求集中的每个请求的结果,以生成所述先前内容请求集的合计结果;和
按目标损失百分比缩放所述合计结果,以生成所述指定阈值。
23.根据权利要求18所述的非暂时性计算机可读介质,其中,当由一个或多个数据处理装置执行时,所述指令使得所述一个或多个数据处理装置执行操作,包括基于所述目标损失百分比和所述保持请求的结果来更新所述指定阈值。
24.根据权利要求23所述的非暂时性计算机可读介质,其中,基于所述目标损失百分比和所述保持请求的结果来更新所述指定阈值包括:
获得所述保持请求中的每个请求的结果;
合计所述保持请求中的每个请求的结果,以生成所述保持请求的合计结果;和
按目标损失百分比缩放所述合计结果,以生成所述指定阈值。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2019/029292 WO2020219064A1 (en) | 2019-04-26 | 2019-04-26 | Efficient use of computing resources in responding to content requests |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112154433A true CN112154433A (zh) | 2020-12-29 |
Family
ID=66655437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980004540.8A Pending CN112154433A (zh) | 2019-04-26 | 2019-04-26 | 响应内容请求的计算资源的有效使用 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11366698B2 (zh) |
EP (1) | EP3752932A1 (zh) |
JP (1) | JP7013569B2 (zh) |
KR (2) | KR102464339B1 (zh) |
CN (1) | CN112154433A (zh) |
WO (1) | WO2020219064A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11570176B2 (en) * | 2021-01-28 | 2023-01-31 | Bank Of America Corporation | System and method for prioritization of text requests in a queue based on contextual and temporal vector analysis |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6058426A (en) | 1997-07-14 | 2000-05-02 | International Business Machines Corporation | System and method for automatically managing computing resources in a distributed computing environment |
US20040236857A1 (en) * | 2003-05-19 | 2004-11-25 | Sumit Roy | Systems and methods for selecting a provider to service content requested by a client device |
US7647242B2 (en) | 2003-09-30 | 2010-01-12 | Google, Inc. | Increasing a number of relevant advertisements using a relaxed match |
JP2006109007A (ja) | 2004-10-04 | 2006-04-20 | Matsushita Electric Ind Co Ltd | 情報配信装置、情報配信方法及び情報受信方法 |
US7870256B2 (en) | 2005-03-25 | 2011-01-11 | Hewlett-Packard Development Company, L.P. | Remote desktop performance model for assigning resources |
US7827060B2 (en) | 2005-12-30 | 2010-11-02 | Google Inc. | Using estimated ad qualities for ad filtering, ranking and promotion |
US8001582B2 (en) | 2008-01-18 | 2011-08-16 | Microsoft Corporation | Cross-network reputation for online services |
US9098333B1 (en) | 2010-05-07 | 2015-08-04 | Ziften Technologies, Inc. | Monitoring computer process resource usage |
US9158586B2 (en) | 2011-10-10 | 2015-10-13 | Cox Communications, Inc. | Systems and methods for managing cloud computing resources |
KR20130082685A (ko) * | 2011-12-14 | 2013-07-22 | 주식회사 케이티 | 가상 머신을 이용한 콘텐츠 서비스 제공 시스템 및 방법 |
US9594594B2 (en) * | 2012-10-18 | 2017-03-14 | Advanced Micro Devices, Inc. | Media hardware resource allocation |
US20150170072A1 (en) * | 2013-07-26 | 2015-06-18 | Ad-Vantage Networks, Inc. | Systems and methods for managing network resource requests |
CN106030566B (zh) | 2014-01-03 | 2019-03-01 | 奥誓公司 | 用于内容处理的系统和方法 |
KR20150083713A (ko) * | 2014-01-10 | 2015-07-20 | 삼성전자주식회사 | 자원 관리를 위한 전자 장치 및 방법 |
US9430533B2 (en) * | 2014-03-21 | 2016-08-30 | Microsoft Technology Licensing, Llc | Machine-assisted search preference evaluation |
GB2564165B (en) * | 2017-02-02 | 2021-11-24 | Google Llc | Custom digital components |
-
2019
- 2019-04-26 WO PCT/US2019/029292 patent/WO2020219064A1/en unknown
- 2019-04-26 EP EP19726801.4A patent/EP3752932A1/en not_active Withdrawn
- 2019-04-26 JP JP2020515102A patent/JP7013569B2/ja active Active
- 2019-04-26 KR KR1020227004918A patent/KR102464339B1/ko active IP Right Grant
- 2019-04-26 CN CN201980004540.8A patent/CN112154433A/zh active Pending
- 2019-04-26 KR KR1020207007383A patent/KR102364970B1/ko active IP Right Grant
- 2019-11-04 US US16/673,526 patent/US11366698B2/en active Active
-
2022
- 2022-06-16 US US17/842,524 patent/US11687602B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20220327000A1 (en) | 2022-10-13 |
KR20220025248A (ko) | 2022-03-03 |
KR102364970B1 (ko) | 2022-02-18 |
US11366698B2 (en) | 2022-06-21 |
US11687602B2 (en) | 2023-06-27 |
JP2021524070A (ja) | 2021-09-09 |
US20200341816A1 (en) | 2020-10-29 |
JP7013569B2 (ja) | 2022-01-31 |
KR102464339B1 (ko) | 2022-11-07 |
WO2020219064A1 (en) | 2020-10-29 |
EP3752932A1 (en) | 2020-12-23 |
KR20200125922A (ko) | 2020-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10872296B2 (en) | Training neural networks using a variational information bottleneck | |
CN108833458B (zh) | 一种应用推荐方法、装置、介质及设备 | |
EP3542319A1 (en) | Training neural networks using a clustering loss | |
US20220207180A1 (en) | Privacy preserving data collection and analysis | |
US20230350978A1 (en) | Privacy-sensitive training of user interaction prediction models | |
CN109075987B (zh) | 优化数字组件分析系统 | |
US11687602B2 (en) | Efficient use of computing resources in responding to content requests | |
US20190108416A1 (en) | Methods for more effectively moderating one or more images and devices thereof | |
US11436412B2 (en) | Predictive event searching utilizing a machine learning model trained using dynamically-generated event tags | |
CN112218114B (zh) | 视频缓存控制方法、装置和计算机可读存储介质 | |
CN117751368A (zh) | 隐私敏感神经网络训练 | |
JP7235900B2 (ja) | コンテンツ要求に応答する際のコンピューティングリソースの効率的な使用 | |
CN115131058A (zh) | 账号识别方法、装置、设备及存储介质 | |
CN111461188A (zh) | 一种目标业务控制方法、装置、计算设备及存储介质 | |
US20230259815A1 (en) | Machine learning techniques for user group based content distribution | |
US11810206B2 (en) | Solver-based media assignment for content moderation | |
WO2024039474A1 (en) | Privacy sensitive estimation of digital resource access frequency | |
WO2022039755A1 (en) | Data integrity optimization | |
WO2024086256A1 (en) | Privacy sensitive estimation of digital resource access frequency | |
CN114761948A (zh) | 隐私保护机器学习预测 | |
CN116708298A (zh) | 流量控制方法、装置、计算机设备及存储介质 | |
Zhang et al. | Parallel Service Selection Method Based on Adaptive Cloud Model for Mobile Application | |
WO2019112731A1 (en) | System and method for inferring anonymized publishers |
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 |