CN107735777A - 会话中推荐的正则模型适应 - Google Patents

会话中推荐的正则模型适应 Download PDF

Info

Publication number
CN107735777A
CN107735777A CN201580081396.XA CN201580081396A CN107735777A CN 107735777 A CN107735777 A CN 107735777A CN 201580081396 A CN201580081396 A CN 201580081396A CN 107735777 A CN107735777 A CN 107735777A
Authority
CN
China
Prior art keywords
version
user
statistical model
global version
global
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.)
Withdrawn
Application number
CN201580081396.XA
Other languages
English (en)
Inventor
缪旭
周易通
J·D·杨
唐立军
A·巴辛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
LinkedIn Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by LinkedIn Corp filed Critical LinkedIn Corp
Publication of CN107735777A publication Critical patent/CN107735777A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Development Economics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Accounting & Taxation (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Medical Informatics (AREA)
  • Finance (AREA)
  • Game Theory and Decision Science (AREA)
  • Quality & Reliability (AREA)
  • Educational Administration (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

所公开的实施例提供一种用于执行用于会话中推荐的正则化模型适应的方法和系统。在操作期间,服务器向多个客户端传输统计模型的第一全局版本以用于向用户生成推荐。在每个客户端处,在与客户端的用户的第一用户会话期间,第一全局版本被用于向用户输出一个或多个推荐,并且基于用户的反馈,实时地生成对全局版本的更新以创建统计模型的第一个性化版本。在第一用户会话结束时,对统计模型的第一全局版本的更新被传输给服务器,以供在服务器生成统计模型的第二全局版本中使用,其再次分发给客户端。

Description

会话中推荐的正则模型适应
技术领域
所公开的实施例涉及会话中推荐。更具体地,所公开的实施例涉及用于执行用于会话中(in-session)推荐的正则化模型适应的技术。
背景技术
分析可以被用于发现与大量复杂的、相互关联的和/或多维数据集合有关的趋势、模式、关系和/或其他属性。进而,所发现的信息可以被用于获得洞察和/或指导与数据有关的决策和/或动作。例如,业务分析可以被用于评估以往性能、指导业务规划、和/或标识可以改善未来性能的动作。
然而,数据集合的大小的显著增加已导致与及时收集、存储、管理、传送、共享、分析和/或可视化数据相关联的困难。例如,常规软件工具和/或存储机构可能不能处理从多个异构源以每日和/或连续地生成的拍字节(petabyte)或艾字节(exabyte)的松散结构化数据。相反,“大数据”的管理和处理可能需要在大量物理服务器和/或节点上运行的大规模并行软件,以及服务器和/或节点之间的同步。
因而,大数据分析可以通过有效和/或高效地收集、存储、管理、压缩、传送、共享、分析和/或可视化大数据集的机构来促进。
附图说明
图1示出根据所公开的实施例的系统的示意图。
图2示出根据所公开的实施例的执行异步分布式机器学习所涉及到的示例性操作序列。
图3示出根据所公开的实施例的用于会话中推荐的模型适应正则化。
图4示出图示根据所公开的实施例的操作异步分布式机器学习系统中的服务器的过程的流程图。
图5示出图示根据所公开的实施例的操作异步分布式机器学习系统中的客户端的过程的流程图。
图6示出图示根据所公开的实施例的执行会话中推荐的正则化模型适应的过程的流程图。
图7示出根据所公开的实施例的计算机系统。
在附图中,相似的附图标记指代相同的附图元件。
具体实施方式
呈现以下描述以使得本领域任何技术人员能够制造和使用实施例,并且在特定应用及其要求的上下文中提供以下描述。对于本领域技术人员而言,对所公开的实施例的各种修改将是明显的,并且在不背离本公开的精神和范围的情况下,本文中所定义的一般原理可以被应用于其他实施例和应用。因此,本发明不限于所示出的实施例,而是应被赋予与本文中所公开的原理和特征一致的最宽范围。
在该具体实施方式中描述的数据结构和代码通常被存储在计算机可读存储介质上,该计算机可读存储介质可以是能够存储代码和/或数据以供计算机系统使用的任何设备或介质。计算机可读存储介质包括但不限于易失性存储器、非易失性存储器、磁和光存储设备(诸如磁盘驱动器、磁带、CD(光盘)、DVD(数字通用光盘或数字视频光盘)、或者能够存储代码和/或数据的现在已知或以后开发的其他介质。
在具体实施方式部分中描述的方法和过程可以被体现为可以如上文所描述的被存储在计算机可读存储介质中的代码和/或数据。当计算机系统读取并且执行存储在计算机可读存储介质上的代码和/或数据时,计算机系统执行被体现为数据结构和代码并且存储在计算机可读存储介质内的方法和过程。
更进一步地,本文中所描述的方法和过程可以被包括在硬件模块或装置中。这些模块或装置可以包括但不限于专用集成电路(ASIC)芯片、现场可编程门阵列(FPGA)、在特定时间执行特定软件模块或代码片段的专用或共享处理器、和/或现在已知或以后开发的其他可编程逻辑设备。当硬件模块或装置被激活时,它们执行包括在其中的方法和过程。
所公开的实施例提供了一种用于处理数据的方法、装置和系统。更具体地,所公开的实施例提供了一种用于执行异步分布式机器学习的方法、装置和系统。如图1所示,一种用于执行异步分布式机器学习的系统可以包括服务器102和若干个客户端(例如,客户端1104、客户端Y 106),它们彼此交互以产生统计模型108的多个版本。在下文对这些部件中的每个部件进行更详细的描述。
统计模型108可以被用于执行统计推断、估计、分类、聚类、个性化、推荐、优化、假设检验和/或其他类型的数据分析。例如,统计模型108可以是回归模型、人工神经网络、支持向量机、决策树、朴素贝叶斯分类器、贝叶斯网络、分层模型和/或组合模型。这种分析的结果可以被用于发现数据中的关系,模式和/或趋势;从输入数据中获得洞察;和/或指导与数据有关的决策或动作。例如,统计模型108可以被用于分析与用户、组织、应用、网站、内容和/或其他类别有关的输入数据。统计模型108然后可以被用于基于数据来输出评分、提供推荐、做出预测、管理关系和/或使用户体验个性化。
另外,统计模型108可以被训练和/或适应于客户端上接收的新数据。例如,客户端可以是电子设备(例如,个人计算机、膝上型计算机、移动电话、平板电脑、便携式媒体播放器、数字相机等),其基于来自客户端的用户的用户反馈来产生对统计模型108的更新114至116。可替代地,客户端可以在来自服务器102和/或另一集中式数据源的训练数据的不同子集上以分布方式生成对统计模型108的更新114至116。
每个更新可以表示适应于对应的客户端上的输入数据的统计模型108的本地版本。另外,客户端可以从统计模型108的全局版本(例如,全局版本1 110,全局版本x 112)产生更新114至116。例如,客户端可以周期性地从服务器接收统计模型108的最新全局版本。客户端然后可以通过向全局版本提供用户反馈和/或其他输入数据作为训练数据来生成对全局版本的更新。
进而,客户端可以向服务器102传送更新114至116,并且服务器102可以将更新114至116合并到统计模型108的后续全局版本中。在统计模型108的新全局版本被创建之后,服务器102可以向客户端传送新全局版本,以向客户端传播包括在新全局版本中的更新114至116。然后,客户端可以从新全局版本产生附加更新,并且向服务器102提供附加更新,以便随后生成统计模型108的附加全局版本。
因此,可以通过数据从服务器102到客户端以及从客户端到服务器102的双向传输来迭代地训练统计模型108。此外,由从多个客户端聚合的输入数据创建统计模型108的全局版本与在客户端上更新全局版本的交替进行可以防止统计模型108过度拟合(overfitting)到各个客户端上的输入数据。
在一个或多个实施例中,在客户端上产生统计模型108的本地版本,以向客户端的用户个性化统计模型108。更具体地,客户端可以从服务器102获得统计模型108的全局版本。然后,每个客户端可以基于来自客户端的用户的反馈或用户输入来实时更新全局版本。因此,在用户与统计模型108交互时,客户端上的统计模型108的本地版本可以适应于用户的行为或偏好。例如,客户端可以在与职位搜索工具的用户会话期间跟踪用户的搜索、点击、查看、文本输入、转换和/或其他反馈。在从用户接收到每个反馈时,客户端可以提供反馈作为用于统计模型108的训练数据,以为用户的当前职位搜索活动定制统计模型108的输出。因而,客户端可以基于用于产生全局版本的聚合的训练数据以及用户在与职位搜索工具的当前会话期间的输入来生成职位列表的推荐。下文参照图3对使统计模型适应于会话中用户行为进行更详细描述。
在一个或多个实施例中,服务器102和客户端执行异步分布式机器学习,其中用于同步统计模型108的更新的屏障(barrier)或锁被完全移除。例如,服务器102可以通过以下来更新统计模型108:产生统计模型108的全局版本,并且独立于从客户端接收对全局版本的更新114至116而向客户端传送全局版本。由于对全局版本的更新不受各个客户端的处理速度、计算能力和/或网络延迟的变化的影响,统计模型108可以比包括用于同步统计模型更新的屏障或锁的分布式机器学习技术更快地得到更新。
更具体地,图1的系统可以使用自动版本控制来执行异步分布式机器学习。如图1所示,服务器102中的版本管理装置118可以使用版本标识符(例如,版本标识符1 122、版本标识符x 124)集合来跟踪统计模型108的全局版本(例如,全局版本1 110、全局版本x112)。每个版本标识符可以表示由合并装置118创建的统计模型108的给定全局版本,合并装置118将来自客户端的更新114至116的子集合并到统计模型108的一个或多个先前全局版本中。
为了跟踪已经被合并到每个全局版本中的更新的子集,可以从用于更新的子集的更新标识符(例如,更新标识符1 188,更新标识符x 120)集合生成对应的版本标识符。例如,每个更新标识符可以指定从其接收到对应更新的客户端,以及用于产生该更新的统计模型108的全局版本。版本管理装置118可以将用于更新114至116的给定子集的更新标识符并置、散列和/或以其他方式组合成将要从更新产生的全局版本的版本标识符。进而,合并装置118可以使用版本标识符来确保来自客户端的所有更新114至116已经被合并到统计模型108的全局版本中,同时避免将每个更新不止一次合并到全局版本中。因此,通过以用于全局版本的版本标识符跟踪对统计模型108的更新114至116,版本管理装置118可以允许在没有与更新114至116相关联的同步屏障的情况下生成全局版本。
由图1的系统执行的异步分布式机器学习可以使用下式定义为优化问题:
特别地,式1可以表示优化问题的一般形式,其中wi是客户端(例如,客户端1 104,客户端Y 106)上的统计模型108的本地版本,客户端从1到M被索引,z是统计模型108的全局版本。式2表示统计模型108在分类任务中的使用,其中l是凸损失函数,xij是输入特征向量,并且yij是要预测的目标。
式1可以使用同步交替方向乘子法(ADMM)技术来求解。更具体地,本地共识变量qi被加到式1中以得到以下:
条件是qi=z,
式3也可以被转换成增广拉格朗日式来得到以下:
在式4中,λ表示拉格朗日乘子的估计。
然后,可以使用以下来得到同步ADMM解:
然后,可以使用式5、6和7以获得以下更新规则,其中μ=λ/ρ:
在同步ADMM中,式8、9和10在客户端中执行,而式11由服务器102执行。服务器102可以在将更新114至116合并到统计模型108的新全局版本之前等待客户端要提交的每一轮更新114至116。因此,服务器102生成统计模型108的全局版本的速率可能受到最慢客户端上更新统计模型108的限制。
异步ADMM可以省略同步屏障,从而允许服务器102独立于从客户端向统计模型108传输更新114至116来生成统计模型108的全局版本。在异步ADMM中,服务器102可以使用以下更新规则来创建统计模型108的新全局版本:
在以上的更新规则中,表示统计模型108的全局版本,其中h(j)∈[1...k-1]是从客户端j到由其产生客户端上的更新的给定全局版本的版本标识符的映射,并且Bk是提交用于在时间k处合并到统计模型108中的更新(例如,更新114至116)的客户端集合。
在异步ADMM期间,服务器102可以使用统计模型108的全局版本的版本标识符(例如,版本标识符1 122,版本标识符x 124)来跟踪更新114至116到统计模型108中的合并。例如,服务器102可以使用以下来迭代地生成统计模型108的新全局版本,其中K是统计模型108的最新全局版本的版本号(例如,版本标识符),并且Δj是来自第j个客户端的对统计模型108的更新(例如,更新114至116):
input:{Δj,h(j)|j∈B}
for j∈B do
end
K=K+1;
Broadcast(zK,K);
上述步骤可以在没有迭代锁的情况下执行,以使全局版本独立于来自客户端的对统计模型108的更新114至116而生成。一旦全局版本被生成,全局版本就可以向客户端广播。
进而,每个客户端可以使用以下来生成对统计模型108的更新114至116,其中zK是统计模型108的最新全局版本:
input:x,y,i
将x,y添加到客户端i的样本;
根据式8、9和10更新μi,qi,wi
令μi 0和qi 0为原始值;
Δi=μi+qii 0-qi 0
Reduce(Δi,k)
更具体地,客户端i可以通过基于在客户端处接收到的输入数据来更新中间变量μi和qi以及统计模型108wi的本地版本和/或基于该输入数据来更新本地版本的输出,而执行本地优化。接下来,客户端可以计算更新后的变量和变量的先前版本之间的差异。然后,客户端可以使用诸如消息传递接口(MPI)之类的分布式处理技术中的减少步骤,来使用该差异和从其产生本地版本的统计模型108的当前全局版本而产生对统计模型108的更新(例如,更新114至116)。
上文所描述的等式还包括若干个参数,其可以被用于控制和/或修改服务器102和/或客户端的行为。首先,优化参数ρ可以被用于调整统计模型108的全局版本的收敛速率,其中ρ的值越高导致收敛到不太理想的结果的速率越快。因此,可以选择ρ以平衡统计模型108的收敛速度和性能。
其次,正则化参数γ可以控制统计模型108的每个本地版本的个性化的量。当γ为0时,针对对应客户端的用户,本地版本被完全个性化,并且不包括对其他用户的行为的任何适应。换句话说,γ的值为0可以导致创建与统计模型108的任何全局版本完全分开的统计模型108的本地版本。随着γ增加,本地版本的个性化和统计模型108的收敛根据ρ/2的上限减小。
正则化参数可以被调整以用统计模型108的个性化平衡统计模型108的一般化。例如,可以初始地将γ设置为较大的值,以防止统计模型108过度拟合到用户的有限可用数据。在从用户收集附加数据(例如,在一个或多个用户会话期间),可以减少γ以使统计模型108的本地版本更适应用户在对应客户端上的行为。如果该用户的行为也偏离其他用户的那些行为(例如,基于来自其他用户的用于创建统计模型108的全局版本的聚合输入),则可以继续减小γ直到γ达到0为止。在另一示例中,γ的不同值可以与不同会话和/或与每个用户的其他交互间隔一起使用,并且可以为用户选择具有最佳性能的γ值。
虽然已经关于上文的等式对异步分布式机器学习技术进行了描述,但是本领域技术人员应当领会图1的系统可以被用于处理其他类型的问题。例如,图1的系统可以被应用于任何类型的凸优化问题,其包括与个性化和/或推荐有关的问题。
通过执行异步分布式机器学习,与需要同步屏障、仅在所有客户端上使用统计模型的全局版本、或者仅在每个客户端上使用统计模型的个性化版本的常规模型适应技术相比,图1的系统可以改进对统计模型108的训练。同时,优化和正则化参数可以被用于在具有大量用户和/或多个训练数据集合的分布式环境中调整统计模型108的收敛性、性能和/或个性化。因此,图1的系统可以经由异步分布式机器学习来提供大规模的个性化和/或推荐。
本领域技术人员应当领会图1的系统可以以多种方式实现。第一,客户端可以在不同类型的软件或硬件部件上执行和/或包括不同类型的软件或硬件部件。例如,客户端可以包括网络应用、本机应用、移动应用、操作系统、设备驱动程序和/或其他类型的软件。类似地,客户端可以在个人计算机、膝上型计算机、工作站、便携式电子设备和/或其他类型的网络使能计算设备上执行。
第二,服务器102的一个或多个实例可以被用于将来自客户端的更新114至116聚合到统计模型108的全局版本中。如果存在服务器102的多个实例,则每个实例可以基于实例的属性和客户端而被匹配到不同的客户端子集。例如,服务器102的给定实例上的网络带宽,处理器资源和/或存储器可以基于客户端生成对统计模型108的更新的速率、客户端的重要性、与客户端相关联的收益、和/或与客户端相关联的其他度量或特征而被匹配到客户端。然后,可以通过服务器102实例之间的附加通信将由实例产生的统计模型108的不同全局版本合并到主全局版本中。
第三,服务器102可以使用不同的版本控制技术来跟踪从客户端接收的更新114至116生成统计模型108的全局版本。例如,服务器102可以将要被合并到统计模型108的全局版本中的更新的更新标识符散列成全局版本的版本标识符。在另一示例中,服务器102可以基于合并到每个全局版本中的更新的数目、从其接收更新的客户端的类型、全局版本之间的时间间隔、和/或与全局版本和/或更新114至116相关联的其他属性来生成统计模型108的全局版本的版本号。
第四,服务器102可以使用若干种技术来将更新114至116聚合到全局版本中。如以上等式所示出的,服务器102可以通过平均每个更新的贡献来将更新集合合并到统计模型108的全局版本中。可替代地,服务器102可以根据每个客户端中的活动水平、更新的新近度、客户端的重要性、与客户端相关联的收益、和/或客户端的其他属性来将更新合并到全局版本中。服务器102还可以向客户端中的一些或全部客户端传送统计模型108的全局版本的部分以减少服务器102和客户端之间的网络业务。
图2示出了根据所公开的实施例的执行异步分布式机器学习时所涉及的示例性操作序列。如上文所提及的,服务器102可以使用版本控制来产生统计模型(例如,图1的统计模型108)的全局版本210至216,其独立于来自客户端的对全局版本210至216的更新220至234而被创建并且被传送到客户端A 202、B 204、C 206和D 208的集合。
特别地,服务器102可以以统计模型的第一全局版本210开始,并且为其指派版本标识符“1.0”。服务器102可以向客户端A 202、B 204和C 206传送全局版本210。进而,客户端A 202可以生成对全局版本210的更新220,而客户端C 206可以生成对全局版本210的单独更新222。更新220和222可以被传送到服务器102并且被合并到具有版本标识符“2.0A1C1”的第二全局版本212中。为了生成全局版本212的版本标识符,服务器102可以递增统计模型的版本号(例如,“2.0”),将更新220和222标识为来自客户端A 202和C 206的对全局版本210的改变,并且将更新的表示和由更新修改的全局版本(例如,“A1”和“C1”)增补到版本号。
一旦创建了全局版本212,则服务器102可以向客户端C 206和D 208传送全局版本212,而客户端D 208可以生成对全局版本212的更新226。在产生全局版本212之后,服务器102还可以从客户端B 204接收对全局版本210的更新224。因此,服务器102可以将对统计模型的两个单独的全局版本210、212的更新224和226合并到具有版本标识符“3.0B1D2”的第三全局版本214中。与全局版本212的版本标识符一样,服务器102可以通过递增统计模型的版本号(例如,“3.0”),将更新224和226标识为来自客户端B 204和D 208的对全局版本210和212的对应改变,并且将更新的表示和由更新修改的全局版本(例如,“B1”和“D2”)增补到版本号来生成全局版本214的版本标识符。
服务器102然后可以向客户端A 202和B 204传送全局版本214。进而,客户端A 202和B 204可以产生对全局版本214的两个单独更新230和232。在产生全局版本214之后,客户端C 206向服务器102传送对全局版本212的更新228。最后,服务器102可以将更新228至232合并到具有版本标识符“4.0A3B3C2”的第四全局版本216中。版本标识符可以包括比先前全局版本210至214的版本号更高的版本号(例如,“4.0”),随后是更新228至232的表示以及由更新(“A3”,“B3”和“C2”)修改的全局版本212-214的版本号。
通过使用全局版本210至216的版本标识符跟踪更新220至232到全局版本210-216中的合并,服务器102可以独立于从客户端A 202、B 204、C 206和D 208接收的对先前全局版本的更新220至232而生成统计模型的新全局版本。例如,服务器102可以使用版本标识符来确保先前被合并到先前全局版本中的更新没有被合并到统计模型108的新全局版本中,并且已经从客户端收到但尚未合并到先前全局版本中的更新被包括在新全局版本中。换句话说,服务器102可以使用与客户端的双向模型传输和版本控制技术来执行异步分布式机器学习。
图3示出了按照所公开的实施例的用于会话中推荐的模型适应的正则化。更具体地,图3示出了在与客户端(例如,图1的客户端1 104,客户端Y 106)上的用户的用户会话310期间统计模型(例如,统计模型108)针对用户的个性化。首先,客户端可以从服务器(诸如图1的服务器102)获得统计模型的全局版本302。例如,客户端可以在与用户的第一用户会话310开始处从服务器下载全局版本302。
接下来,客户端可以使用统计模型在用户会话310期间与用户进行交互。例如,客户端可以实现web应用、本机应用、移动应用和/或其他类型的应用的一个或多个特征。在用户会话310中与用户交互期间,客户端可以使用全局版本302来向用户输出一个或多个推荐318。例如,客户端可以在职位搜索工具与在线专业网络一起使用期间向用户推荐一个或多个职位列表。
如图3所示,客户端还可以使用来自用户的用户反馈314来在用户会话310期间创建统计模型的个性化版本306。继续上述示例,客户端可以在用户会话310开始时从全局版本302创建个性化版本306并且将用于用户会话310的会话标识符用作用于个性化版本306的更新标识符。接下来,客户端可以跟踪用户的点击、查看、搜索、到职位列表的应用、和/或利用职位搜索工具的其他活动作为来自用户的用户反馈314。每个用户反馈314可以被提供为用于在用户会话310期间创建或更新个性化版本306的训练数据。例如,个性化版本306可以随着从用户接收的每次点击和/或其他类型的输入而被更新。进而,个性化版本306的输出可以适应于用户在用户会话310期间的实时行为或偏好。
在一个或多个实施例中,个性化版本306的训练受到用户反馈314的质量308的影响。质量308可以基于用户反馈314的上下文和/或与用户反馈314相关联的一个或多个属性。例如,由于可能需要花费大量的精力和/或时间来录入表单字段中的信息,所以在一个或多个表单字段中提交的信息可以表示较高质量的用户反馈314。相反,由于花费在生成点击和/或查看与点击相关联的内容上的时间或精力较少,所以在没有来自用户的附加输入的情况下的一系列快速点击可以表示较低质量的用户反馈314,并且因此与需要更多用户交互的用户反馈314相比,点击不太可能指示用户意图。
为了基于用户反馈314的质量308来训练个性化版本306,可以为每个用户反馈314指派反映质量308的权重。例如,较高质量的用户反馈314可以比较低质量的用户反馈加权更多,以使与较低质量的用户反馈314相比,个性化版本306更适应于较高质量的用户反馈314。在为每个用户反馈314指派权重之后,可以将权重作为附加训练数据提供给个性化版本306。可替代地,权重可以被用于在将表示对应的用户反馈314的值作为训练数据输入到个性化版本306之前对该值进行缩放。
类似地,在用户反馈314作为训练数据被提供给个性化版本306之前,用户反馈314可以被标记。例如,用户反馈314可以被标记为正反馈或负反馈,其中正反馈表示正用户动作(例如,点击、查看、搜索、转换、喜欢、分享、赞成、关注等),而负反馈表示缺少用户动作(例如,非点击或忽略)或负用户动作(例如,反对、厌恶、隐藏、取消关注等)。标记还可以包括与质量308相关联的权重。例如,用于用户反馈314的强正标记可以与更长的查看时间和/或更冗长的用户交互相关联,而用于用户反馈314的弱正标记可以与短查看时间和/或立即返回到应用的先前屏幕相关联。
一旦在用户会话310期间基于用户反馈314来从全局版本302适配个性化版本306,则个性化版本306可以被用于向用户输出一个或多个附加推荐320。更具体地,来自个性化版本306的推荐320可以基于用户反馈314和先前输出的推荐318两者。首先,可以基于与用户反馈314相关联的内容的相似度330来选择推荐320。例如,推荐320可以包括在用户会话310期间与用户先前已经与之交互的其他职位发布具有高相似度330的职位发布(例如,类似的职位名称、行业、职位描述等)。同时,因为个性化版本306是从全局版本302适配的,而非仅由用户会话310中的相对少量的用户反馈314创建,所以可以避免将个性化版本306过度拟合到用户反馈314。
其次,个性化版本306可以使用推荐318和用户反馈314,以避免在较新推荐320中包括先前输出的推荐318。例如,个性化版本306可以跟踪先前输出的推荐318、320和与推荐相关联的用户反馈314。每次选择并且向用户示出推荐而没有接收到与推荐相关联的正用户反馈314(例如,点击)时,推荐的重要性就被打折。如果用户继续忽略该推荐,则推荐被选择和/或示出的频率可以继续降低,直到推荐不再输出给用户为止。相反,个性化版本306可以被用于输出新推荐,其对用户来说可能更相关和/或更感兴趣。换句话说,个性化版本306可以被用于在用户会话310期间执行推荐318、320的印象折扣。
在用户会话310结束时,客户端可以向服务器传送包含个性化版本306和全局版本302之间的差异的更新322。一旦更新322被提供给服务器,客户端就可以丢弃个性化版本306。进而,服务器可以使用更新322和/或来自其他客户端的对全局版本302或统计模型的其他先前全局版本的其他更新来产生统计模型的新全局版本304。例如,如上文所讨论的,服务器可以与从客户端接收更新异步地使用版本控制来将更新322和/或其他更新合并到全局版本304中。然后,服务器可以向客户端传送全局版本304,并且客户端可以在与用户集合的各个用户会话期间将全局版本304适配到个性化版本中。因此,统计模型可以通过由客户端上的统计模型的全局版本创建统计模型的每会话(per-session)个性化版本以及随后将个性化版本合并到服务器上的统计模型的新全局版本中而不断更新。
在一个或多个实施例中,个性化版本306和更新322基于与统计模型的正则化会话中适配相关联的一个或多个参数324来创建。如上文所描述的,参数324可以包括优化参数和/或正则化参数。服务器可以使用优化参数来调整统计模型的全局版本302、304的收敛速度。
客户端可以使用正则化参数来在用户会话310期间控制统计模型对于用户的个性化的量。如上文所讨论的,正则化参数可以由上文公式中的γ来表示,用于执行异步ADMM。当γ为0时,个性化版本306完全适应于用户的会话中行为,并且与统计模型的任何全局版本完全分离。随着γ的增加,个性化版本306受到全局版本302的影响更大。
正则化参数可以被适配到用户反馈314和/或其他用户行为或特征。例如,正则化参数最初可以被设置为较大的值,以防止统计模型在用户会话310期间过度拟合到有限用户反馈314。当收集附加用户反馈314时,正则化参数可以被减小以使个性化版本306适应于用户的行为。如果用户的行为与其他用户的行为不同(例如,基于来自其他用户的用于创建全局版本302的聚合用户反馈),则正则化参数可以继续减小直到正则化参数达到0为止。在另一示例中,正则化参数的不同值可以和与用户的不同用户会话一起使用,并且可以为用户选择具有最佳性能的正则化参数的值。
图4示出了图示了按照所公开的实施例的操作异步分布式机器学习系统中的服务器的过程的流程图。在一个或多个实施例中,可以省略、重复和/或以不同次序执行步骤中的一个或多个步骤。因而,图4中所示的步骤的特定布置不应被解释为限制实施例的范围。
最初,基于服务器和客户端的属性,服务器与客户端集合匹配以用于统计模型的分发(操作402)。例如,服务器的速度、存储器量和/或网络带宽可以和与客户端相关联的网络业务、流行度和/或成本匹配。接下来,服务器向客户端集合传送统计模型的第一全局版本(操作404)。例如,服务器可以将来自客户端的统计模型的若干个本地版本合并成统计模型的第一全局版本。可替代地,服务器和/或另一部件可以由预先定义的训练数据集合生成全局版本。然后,服务器可以向客户端广播第一全局版本以用于在客户端上更新第一全局版本。
在将第一全局版本提供给客户端之后,服务器从第一客户端子集获得对第一全局版本的第一更新集合(操作406)。每个更新可以包括对应客户端上的统计模型的本地版本与第一全局版本之间的差异。例如,客户端可以通过使用客户端上的数据(例如,用户反馈)来训练第一全局版本而产生更新。
接下来,服务器将第一更新集合合并到统计模型的第二全局版本中(操作408)。例如,如先前关于异步ADMM技术所描述的,服务器可以生成第二全局版本作为第一更新集合的平均。可替代地,服务器可以使用与第一客户端子集相关联的权重集合来将第一更新集合合并到第二全局版本中,以使一些更新对第二全局版本的贡献比其他更新更多。每个权重可以表示新近度、活动水平、流行度、收益、和/或与对应更新相关联的另一属性。
类似地,服务器将第一更新集合与第二全局版本相关联(操作410)。例如,服务器可以获得和/或生成第一更新集合的更新标识符和/或用于产生更新的全局版本,并且将更新标识符组合成用于第二全局版本的版本标识符。换句话说,服务器可以使用版本控制来跟踪和管理来自客户端的更新到统计模型的全局版本中的异步合并。
然后,与从另一客户端子集接收对一个或两个全局版本的第二更新集合异步,服务器可以向客户端传输第二全局版本(操作412)。例如,服务器可以生成并且广播第二全局版本,而不使用任何迭代屏障或锁来同步来自客户端的更新。为了减少去往和/或来自客户端的网络业务,服务器还可以传输第二全局版本的一部分(例如,第二全局版本与每个客户端上的本地版本之间的差异)来代替整个第二全局版本。
然后,服务器可以使用关联的第一更新集合来将第二更新集合合并到统计模型的第三全局版本中,而不将第一更新集合合并到第三全局版本中(操作414)。例如,服务器可以使用第二全局版本的版本标识符来将第一更新集合标识为已经被合并到第二全局版本中。然后,服务器可以通过将自第一更新集合以来接收到的更新合并到第二全局版本中来生成第三全局版本。最后,如下文关于图5所描述的,服务器可以向客户端集合传输第三全局版本(操作416),以便随后更新客户端上的第三全局版本。与第二全局版本一样,服务器可以向客户端传输第三全局版本的一个或多个部分来代替整个第三全局版本,以减少到客户端的网络业务。
图5示出了图示了按照所公开的实施例的操作异步分布式机器学习系统中的客户端的过程的流程图。在一个或多个实施例中,可以省略、重复和/或以不同次序执行一个或多个步骤。因而,图5中所示的步骤的特定布置不应被解释为限制实施例的范围。
首先,客户端从服务器获得统计模型的第一全局版本以及统计模型的正则化参数(操作502)。正则化参数可以控制客户端上的统计模型的个性化水平。接下来,客户端使用正则化参数和客户端上的数据来从第一全局版本产生统计模型的本地版本(操作504)。例如,客户端可以从第一全局版本输出一个或多个推荐,并且从客户端上的用户获得与推荐相关联的用户反馈。客户端可以通过将用户反馈作为训练数据提供给第一全局版本并且使用正则化参数来调整本地版本受训练数据影响的量,来从第一全局版本产生本地版本。然后,客户端可以基于附加用户反馈来更新本地版本,并且在与用户的用户会话期间使用本地版本来生成附加推荐。换句话说,客户端可以使用本地版本来针对用户的偏好和/或行为定制统计模型的输出。
然后,客户端与从服务器接收统计模型的第二全局版本异步地向服务器发送包含本地版本与第一全局版本之间的差异的更新(操作506)。例如,客户端可以基于上文关于异步ADMM技术讨论的等式来计算更新。然后,客户端可以在与用户的用户会话结束时,在周期的基础上和/或根据与更新统计模型相关联的其他准则来传输更新。
客户端还可以基于正则化参数来利用第二全局版本更新本地版本(操作508)。例如,客户端可以在随后的用户会话期间或者在客户端上更新统计模型期间的其他间隔期间使用正则化参数来组合本地版本和第二全局版本。可替代地,如果本地版本仅针对单个会话的持续时间被持久保留,则客户端可以在随后的用户会话或模型训练会话开始时以第二全局版本替换本地版本。
附加地,客户端可以基于客户端上的数据来更新正则化参数(操作510)。例如,客户端可以跟踪在与用户的一个或多个用户会话期间被用于更新统计模型的用户反馈。如果用户反馈偏离统计模型的全局版本所捕获的预期用户行为,则可以更新正则化参数以增加针对用户的行为对本地版本进行的个性化。可替代地,如果用户的行为与用于产生全局版本的用户行为类似,则可以修改正则化参数以减少本地版本的个性化。
图6示出了图示了按照所公开的实施例的执行会话中推荐的正则化模型适配的过程的流程图。在一个或多个实施例中,可以省略、重复和/或以不同次序执行一个或多个步骤。因而,图6中所示的步骤的特定布置不应被解释为限制实施例的范围。
最初,从服务器获得统计模型的第一全局版本(操作602)。客户端可以获得第一全局版本来执行会话中推荐。在与用户的第一用户会话期间,客户端使用第一全局版本向用户输出一个或多个推荐(操作604)。例如,在用户与客户端上的职位搜索工具进行交互的同时,客户端可以使用第一全局版本向用户推荐一个或多个职位列表。
接下来,客户端使用第一全局版本和来自用户的用户反馈来创建统计模型的第一个性化版本(操作606)。例如,客户端可以通过提供第一个用户反馈作为用于第一全局版本的训练数据来由第一全局版本生成第一个性化版本。一旦由第一全局版本创建个性化版本,客户端就可以利用从用户接收到的每个用户反馈单元实时更新第一个性化版本。在创建第一个性化版本期间,客户端可以基于用户反馈的质量为针对用户反馈确定一个或多个权重。然后,客户端可以将权重和用户反馈包括在用于由全局版本创建第一个性化版本的训练数据中。进而,一个或多个权重可以允许第一个性化版本更多适应于更高质量的用户反馈,而更少适应于更低质量的用户反馈。
然后,客户端使用第一个性化版本向用户输出一个或多个附加推荐(操作608)。例如,客户端可以使用第一个性化版本来折扣用户忽略了的先前输出的推荐的选择。在另一示例中,客户端可以选择类似于与用户反馈相关联的内容的附加推荐。因此,客户端可以使统计模型适应于用户的会话中行为。
在第一会话结束时,客户端向服务器传输包含第一个性化版本与第一全局版本之间的差异的更新(操作610)。如上文所讨论的,服务器然后可以使用更新来产生统计模型的第二全局版本。
在产生第二全局版本并且第一用户会话已经结束之后,客户端从服务器获得第二全局版本(操作612)并且以第二全局版本替换第一全局版本(操作614)。随后,客户端使用第二全局版本和来自用户的附加用户反馈来在与用户的第二用户会话期间创建统计模型的第二个性化版本(操作616)。最后,客户端使用第二个性化版本来向用户输出一个或多个附加推荐(操作618)。
换句话说,客户端可以在与用户的每个用户会话期间由最新全局版本创建统计模型的单独的个性化版本。在用户会话结束时,客户端可以向服务器传输表示个性化版本与由其创建个性化版本的全局版本之间的差异的更新,以用于服务器产生统计模型的后续全局版本。客户端处的每会话的用户反馈可以因此被用于使统计模型适应于用户的行为,并且生成统计模型的后续全局版本。
图7示出了按照实施例的计算机系统700。计算机系统700可以与装置相对应,该装置包括处理器702、存储器704、存储装置706和/或电子计算设备中找到的其他部件。处理器702可以支持与计算机系统700中的其他处理器的并行处理和/或多线程操作。计算机系统700还可以包括输入/输出(I/O)设备,诸如键盘708、鼠标710和显示器712。
计算机系统700可以包括执行本实施例的各种部件的功能。具体地,计算机系统700可以包括操作系统(未示出),其协调计算机系统700上的硬件和软件资源的使用;以及一个或多个应用,其执行用户的特殊任务。为了执行用户的任务,应用可以从操作系统获得计算机系统700上的硬件资源的使用,以及通过由操作系统提供的硬件和/或软件框架与用户交互。
在一个或多个实施例中,计算机系统700提供用于执行异步分布式机器学习的版本控制的系统。该系统可以包括服务器,其向客户端计算机系统集合传输统计模型的第一全局版本。接下来,服务器可以从客户端计算机系统的第一子集获得对第一全局版本的第一更新集合。然后,服务器可以将第一更新集合合并到统计模型的第二全局版本中。最后,服务器可以与从客户端计算机系统的第二子集接收对第一全局版本和第二全局版本的第二更新集合异步地向客户端计算机系统传输第二全局版本。
可替代地,计算机系统700可以实现客户端中的一个客户端。客户端可以从服务器获得第一全局版本。接下来,客户端可以利用计算机系统上的数据更新第一全局版本以产生统计模型的本地版本。然后,客户端可以与从服务器接收统计模型的第二全局版本异步地向服务器传输包含本地版本和第一全局版本之间的差异的更新。
客户端可以附加地执行用于会话中推荐的正则化模型适配。更具体地,客户端可以在与用户的用户会话期间改善统计模型的性能。首先,客户端可以使用第一全局版本来向用户输出一个或多个推荐。接下来,客户端可以使用第一全局版本和来自用户的用户反馈来创建统计模型的第一个性化版本。在第一会话结束时,客户端可以向服务器传输包含第一个性化版本与第一全局版本之间差异的更新,以供在服务器更新第一全局版本中使用。
另外,计算机系统700的一个或多个部件可以被远程定位并且通过网络连接到其他部件。本实施例的各部分(例如,服务器、客户端、本地版本、全局版本、个性化版本等)还可以位于实现实施例的分布式系统的不同节点上。例如,可以使用云计算系统来实现本实施例,该云计算系统基于来自远程客户端集合的对统计模型的更新来执行异步分布式机器学习和/或会话中个性化。
仅出于说明和描述的目的而呈现了各种实施例的前述描述。它们不旨在是穷尽的或将本发明限制于所公开的形式。因而,对于本领域技术人员而言,许多修改和变化将是明显的。此外,上述公开内容并不旨在限制本发明。

Claims (25)

1.一种方法,包括:
由计算机系统从服务器获得统计模型的第一全局版本;以及
在与用户的第一用户会话期间,通过在所述计算机系统上执行以下步骤来提高所述统计模型的性能:
使用所述第一全局版本向所述用户输出一个或多个推荐;以及
使用所述第一全局版本和来自所述用户的用户反馈来创建所述统计模型的第一个性化版本;以及
在所述第一用户会话结束时,向所述服务器传输包括所述第一个性化版本与所述第一全局版本之间的差异的更新,以供在所述服务器产生所述统计模型的第二全局版本中使用。
2.根据权利要求1所述的方法,还包括:
从所述服务器获得所述统计模型的所述第二全局版本,其中所述第二全局版本包括所述更新和来自一个或多个附加计算机系统的对所述统计模型的一个或多个附加更新;
以所述第二全局版本替换所述第一全局版本;以及
使用所述第二全局版本和来自所述用户的附加用户反馈在与所述用户的第二用户会话期间创建所述统计模型的第二个性化版本。
3.根据权利要求1所述的方法,还包括:
使用所述第一个性化版本向所述用户输出一个或多个附加推荐。
4.根据权利要求3所述的方法,其中使用所述第一个性化版本向所述用户输出所述一个或多个附加推荐包括:
基于所述一个或多个推荐和所述用户反馈来选择所述一个或多个附加推荐。
5.根据权利要求4所述的方法,其中基于所述一个或多个推荐和所述用户反馈来选择所述一个或多个附加推荐包括:
基于同与所述用户反馈相关联的内容的相似度来选择所述一个或多个附加推荐。
6.根据权利要求4所述的方法,其中基于所述一个或多个推荐和所述用户反馈来选择所述一个或多个附加推荐包括:
使用所述一个或多个推荐和所述用户反馈来避免选择先前在所述第一用户会话期间被输出的推荐。
7.根据任一前述权利要求所述的方法,其中使用所述第一全局版本和来自所述用户的用户反馈来创建所述统计模型的所述第一个性化版本包括:
基于所述用户反馈的质量来确定用于所述用户反馈的一个或多个权重;以及
将所述一个或多个权重和所述用户反馈包括在用于从所述第一全局版本创建所述第一个性化版本的训练数据中。
8.根据权利要求1至6中任一项所述的方法,其中使用所述第一全局版本和来自所述用户的所述用户反馈来创建所述统计模型的所述第一个性化版本包括:
在所述用户反馈的一个或多个单元从所述用户被接收之后,更新所述第一个性化版本。
9.根据任一前述权利要求所述的方法,其中所述一个或多个推荐包括以下中的至少一项:
职位推荐;
新闻推荐;
用户接口元素;以及
动作。
10.根据任一前述权利要求所述的方法,其中所述用户反馈包括以下中的至少一项:
点击;
查看;
转换;以及
搜索。
11.一种方法,包括:
从服务器向计算机系统集合传输统计模型的第一全局版本以用于针对用户集合生成推荐集合;
由所述服务器从所述计算机系统的第一子集获得第一更新集合,所述第一更新集合包括所述第一全局版本与所述统计模型的第一个性化版本集合之间的差异,所述第一个性化版本集合根据在用户会话期间在所述计算机系统的所述第一子集上接收到的用户反馈而被生成;
由所述服务器将所述第一更新集合合并到所述统计模型的第二全局版本中;以及
与从所述计算机系统的第二子集接收对所述第一全局版本和所述第二全局版本的第二更新集合异步地向所述计算机系统集合传输所述第二全局版本的至少一部分。
12.根据权利要求11所述的方法,还包括:
将所述第一更新集合与所述第二全局版本相关联;
使用所关联的所述第一更新集合来将所述第二更新集合合并到所述统计模型的第三全局版本中,而不将所述第一差异集合合并到所述第三全局版本中;以及
向所述计算机系统集合传输所述第三全局版本的至少一部分。
13.根据权利要求12所述的方法,其中将所述第一更新集合与所述第二全局版本相关联包括:
将所述第一更新标识符集合组合成用于所述第二全局版本的版本标识符。
14.根据权利要求13所述的方法,其中使用所关联的第一更新集合来将所述第二更新集合合并到所述第三全局版本中而不将所述第一差异集合合并到所述第三全局版本中,包括:
在用于所述第二全局版本的所述版本标识符中标识所述第一更新标识符集合;以及
基于所述版本标识符中所标识的所述第一更新标识符集合,省略所述第一更新集合到所述第二全局版本中的合并。
15.根据权利要求11所述的方法,还包括:
基于所述服务器的第一属性和所述客户端计算机系统集合的第二属性,将所述服务器与所述客户端计算机系统集合匹配以用于所述统计模型的分发。
16.一种装置,包括:
一个或多个处理器;以及
存储器,存储有指令,所述指令当由所述一个或多个处理器执行时使得所述装置:
从服务器获得统计模型的第一全局版本;以及
在与用户的第一次用户会话期间,通过以下操作来改进所述统计模型的性能:
使用所述第一全局版本向所述用户输出一个或多个推荐;以及
使用所述第一全局版本和来自所述用户的用户反馈来创建所述统计模型的第一个性化版本;以及
在所述第一用户会话结束时,向所述服务器传输包括所述第一个性化版本与所述第一全局版本之间的差异的更新,以供在所述服务器产生所述统计模型的第二全局版本中使用。
17.根据权利要求16所述的装置,其中所述存储器还存储指令,所述指令当由所述一个或多个处理器执行时使得所述装置:
从所述服务器获得所述统计模型的所述第二全局版本,其中所述第二全局版本包括所述更新和来自一个或多个附加计算机系统的对所述统计模型的一个或多个附加更新;
以所述第二全局版本替换所述第一全局版本;以及
使用所述第二全局版本和来自所述用户的附加用户反馈来在与所述用户的第二用户会话期间创建所述统计模型的第二个性化版本。
18.根据权利要求16所述的装置,其中所述存储器还存储指令,所述指令当由所述一个或多个处理器执行时使得所述装置:
使用所述第一个性化版本向所述用户输出一个或多个附加推荐。
19.根据权利要求16至18中任一项所述的装置,其中使用所述第一全局版本和来自所述用户的用户反馈来创建所述统计模型的所述第一个性化版本包括:
基于所述用户反馈的质量来确定用于所述用户反馈的一个或多个权重;以及
将所述一个或多个权重和所述用户反馈包括在用于从所述第一全局版本创建所述第一个性化版本的训练数据中。
20.根据权利要求16至18中任一项所述的装置,其中使用所述第一全局版本和来自所述用户的所述用户反馈来创建所述统计模型的所述第一个性化版本包括:
在所述用户反馈的每个单元从所述用户被接收之后,更新所述第一个性化版本。
21.一种执行异步分布式机器学习的计算机实现的方法,在所述异步分布式机器学习中用于针对用户集合生成推荐集合的统计模型通过数据从服务器到多个客户端以及从所述多个客户端到所述服务器的双向传输而被迭代地训练,所述方法包括:
从服务器向多个客户端传输所述统计模型的第一全局版本;
在各个客户端处:
使用所述统计模型的所述第一全局版本在与所述用户的第一用户会话期间向相应的客户端的用户输出一个或多个推荐;
基于用户输入来在所述第一用户会话期间实时地生成对所述统计模型的所述第一全局版本的更新,以针对所述用户创建所述统计模型的第一个性化版本;以及
将所述更新从所述客户端传输给所述服务器;
通过所述服务器将从多个客户端接收的所述更新合并到所述统计模型的第二全局版本中;以及
与从多个客户端接收对所述统计模型的所述第一全局版本和所述第二全局版本的进一步更新异步地向多个客户端传输所述第二全局版本。
22.根据权利要求21所述的方法,还包括:在所述各个客户端处,
以所述统计模型的所述第二全局版本替换所述统计模型的所述第一全局版本;
使用所述第二全局版本在与所述用户的第二用户会话期间向相应的客户端的所述用户输出附加推荐;以及
使用所述第二全局版本和附加用户输入来针对所述用户创建所述统计模型的第二个性化版本。
23.根据权利要求21所述的方法,还包括:在所述各个客户端处,
基于所述一个或多个推荐和所述用户输入,使用所述统计模型的所述第一个性化版本来选择一个或多个附加推荐;以及
向所述用户输出所述一个或多个附加推荐。
24.根据权利要求23所述的方法,其中基于所述一个或多个推荐和所述用户输入来选择所述一个或多个附加推荐包括:
使用所述一个或多个推荐和所述用户输入来避免选择先前在所述第一用户会话期间被输出的推荐。
25.根据权利要求21至24中任一项所述的方法,其中基于用户输入来在所述第一用户会话期间实时生成对所述统计模型的所述第一全局版本的更新以为所述用户创建所述统计模型的第一个性化版本包括:
基于所述用户输入的质量来确定用于所述用户输入的一个或多个权重;以及
将所述一个或多个权重和所述用户输入包括在用于从所述第一全局版本创建所述第一个性化版本的训练数据中。
CN201580081396.XA 2015-09-24 2015-11-05 会话中推荐的正则模型适应 Withdrawn CN107735777A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/864,499 US10586167B2 (en) 2015-09-24 2015-09-24 Regularized model adaptation for in-session recommendations
US14/864,499 2015-09-24
PCT/US2015/059337 WO2017052671A1 (en) 2015-09-24 2015-11-05 Regularized model adaptation for in-session recommendations

Publications (1)

Publication Number Publication Date
CN107735777A true CN107735777A (zh) 2018-02-23

Family

ID=58386867

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580081396.XA Withdrawn CN107735777A (zh) 2015-09-24 2015-11-05 会话中推荐的正则模型适应

Country Status (4)

Country Link
US (1) US10586167B2 (zh)
EP (1) EP3353670A4 (zh)
CN (1) CN107735777A (zh)
WO (1) WO2017052671A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684381A (zh) * 2018-12-20 2019-04-26 恒生电子股份有限公司 数据热度统计方法及装置

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105094305B (zh) * 2014-05-22 2018-05-18 华为技术有限公司 识别用户行为的方法、用户设备及行为识别服务器
US10380500B2 (en) 2015-09-24 2019-08-13 Microsoft Technology Licensing, Llc Version control for asynchronous distributed machine learning
US10586169B2 (en) * 2015-10-16 2020-03-10 Microsoft Technology Licensing, Llc Common feature protocol for collaborative machine learning
US10380503B2 (en) * 2016-04-08 2019-08-13 Here Global B.V. Distributed online learning for privacy-preserving personal predictive models
US10657459B2 (en) 2016-05-31 2020-05-19 International Business Machines Corporation Coordinated version control system, method, and recording medium for parameter sensitive applications
US10936969B2 (en) * 2016-09-26 2021-03-02 Shabaz Basheer Patel Method and system for an end-to-end artificial intelligence workflow
US11106996B2 (en) * 2017-08-23 2021-08-31 Sap Se Machine learning based database management
US11704370B2 (en) 2018-04-20 2023-07-18 Microsoft Technology Licensing, Llc Framework for managing features across environments
US11593634B2 (en) * 2018-06-19 2023-02-28 Adobe Inc. Asynchronously training machine learning models across client devices for adaptive intelligence
US11436481B2 (en) * 2018-09-18 2022-09-06 Salesforce.Com, Inc. Systems and methods for named entity recognition
US11989634B2 (en) * 2018-11-30 2024-05-21 Apple Inc. Private federated learning with protection against reconstruction
KR102277006B1 (ko) * 2019-05-27 2021-07-13 에스케이텔레콤 주식회사 콘텐츠 추천 모델 제공 방법과 콘텐츠 추천 방법 및 그 장치들
US11704600B2 (en) * 2019-06-27 2023-07-18 Microsoft Technology Licensing, Llc Multistage feed ranking system with methodology providing scalable multi-objective model approximation
KR20210010284A (ko) 2019-07-18 2021-01-27 삼성전자주식회사 인공지능 모델의 개인화 방법 및 장치
US11972334B2 (en) * 2019-08-13 2024-04-30 Sony Corporation Method and apparatus for generating a combined isolation forest model for detecting anomalies in data
US11640208B2 (en) * 2019-11-21 2023-05-02 Infineon Technologies Ag Gesture feedback in distributed neural network system
US11488622B2 (en) * 2019-12-16 2022-11-01 Cellular South, Inc. Embedded audio sensor system and methods
US11829239B2 (en) 2021-11-17 2023-11-28 Adobe Inc. Managing machine learning model reconstruction
WO2024005313A1 (ko) * 2022-06-30 2024-01-04 삼성전자 주식회사 전자 장치의 학습 모델을 갱신하는 서버 및 그의 동작 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6321221B1 (en) 1998-07-17 2001-11-20 Net Perceptions, Inc. System, method and article of manufacture for increasing the user value of recommendations
US7158986B1 (en) 1999-07-27 2007-01-02 Mailfrontier, Inc. A Wholly Owned Subsidiary Of Sonicwall, Inc. Method and system providing user with personalized recommendations by electronic-mail based upon the determined interests of the user pertain to the theme and concepts of the categorized document
US7734680B1 (en) * 1999-09-30 2010-06-08 Koninklijke Philips Electronics N.V. Method and apparatus for realizing personalized information from multiple information sources
US20040254957A1 (en) 2003-06-13 2004-12-16 Nokia Corporation Method and a system for modeling user preferences
US20060036251A1 (en) * 2004-08-09 2006-02-16 Reiley Mark A Systems and methods for the fixation or fusion of bone
US8214264B2 (en) 2005-05-02 2012-07-03 Cbs Interactive, Inc. System and method for an electronic product advisor
CA2656850A1 (en) 2008-03-03 2009-09-03 Solido Design Automation Inc. Global statistical optimization, characterization, and design
US9158775B1 (en) * 2010-12-18 2015-10-13 Google Inc. Scoring stream items in real time
DE102011007440A1 (de) * 2011-04-14 2012-10-18 Suzlon Energy Gmbh Vorrichtung und Verfahren zum Bestimmen einer Blattposition und zum Beenden einer Sicherheitsfahrt
US9536003B2 (en) * 2012-03-17 2017-01-03 Haizhi Wangju Network Technology (Beijing) Co., Ltd. Method and system for hybrid information query
US8996530B2 (en) * 2012-04-27 2015-03-31 Yahoo! Inc. User modeling for personalized generalized content recommendations
US20140255882A1 (en) 2013-03-05 2014-09-11 Comocomo Ltd Interactive engine to provide personal recommendations for nutrition, to help the general public to live a balanced healthier lifestyle
US9348924B2 (en) * 2013-03-15 2016-05-24 Yahoo! Inc. Almost online large scale collaborative filtering based recommendation system
US20150242760A1 (en) 2014-02-21 2015-08-27 Microsoft Corporation Personalized Machine Learning System

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684381A (zh) * 2018-12-20 2019-04-26 恒生电子股份有限公司 数据热度统计方法及装置

Also Published As

Publication number Publication date
WO2017052671A1 (en) 2017-03-30
EP3353670A1 (en) 2018-08-01
US20170091652A1 (en) 2017-03-30
US10586167B2 (en) 2020-03-10
EP3353670A4 (en) 2019-05-15

Similar Documents

Publication Publication Date Title
CN107735777A (zh) 会话中推荐的正则模型适应
US10380500B2 (en) Version control for asynchronous distributed machine learning
US20220027359A1 (en) Online hyperparameter tuning in distributed machine learning
Guo et al. Streaming session-based recommendation
Ma et al. Off-policy learning in two-stage recommender systems
Vartak et al. A meta-learning perspective on cold-start recommendations for items
Feng et al. Personalized recommendations based on time-weighted overlapping community detection
Wang et al. Hypersorec: Exploiting hyperbolic user and item representations with multiple aspects for social-aware recommendation
Lin et al. A survey on reinforcement learning for recommender systems
Gohari et al. A semantic-enhanced trust based recommender system using ant colony optimization
Chulyadyo et al. A personalized recommender system from probabilistic relational model and users’ preferences
Abduljabbar et al. Nature-inspired optimization algorithms for community detection in complex networks: a review and future trends
Gabrani et al. Artificial intelligence based recommender systems: A survey
Lumbantoruan et al. I-cars: an interactive context-aware recommender system
Baker et al. Machine learning: factorization machines and normalized discounted cumulative gain for tourism recommender system optimisation
Khadangi et al. Biased sampling from facebook multilayer activity network using learning automata
Tu et al. A new service recommendation method for agricultural industries in the fog-based Internet of Things environment using a hybrid meta-heuristic algorithm
Damaskinos et al. Capturing the moment: lightweight similarity computations
He et al. A novel graph-based feature interaction model for click-through rate prediction
Robertazzi et al. Machine learning in networking
Suo et al. Entity Recommendation Via Integrating Multiple Types of Implicit Feedback in Heterogeneous Information Network
Mehra et al. Deep Learning-Based Recommendation System
Liang et al. Hierarchical fuzzy graph attention network for group recommendation
Sabella Green Federated Learning: a data-centric approach in the cloud continuum
Chen et al. Simple and Efficient Metapath Aggregated Network for Recommendation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right

Effective date of registration: 20180322

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: American California

Applicant before: LINKEDIN CORPORATION

TA01 Transfer of patent application right
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20180223

WW01 Invention patent application withdrawn after publication