CN110858235B - 热启动广义加性混合效应(game)框架 - Google Patents
热启动广义加性混合效应(game)框架 Download PDFInfo
- Publication number
- CN110858235B CN110858235B CN201910772576.2A CN201910772576A CN110858235B CN 110858235 B CN110858235 B CN 110858235B CN 201910772576 A CN201910772576 A CN 201910772576A CN 110858235 B CN110858235 B CN 110858235B
- Authority
- CN
- China
- Prior art keywords
- time
- data
- interval
- training
- retraining
- 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
- 230000000694 effects Effects 0.000 title claims abstract description 116
- 239000000654 additive Substances 0.000 title claims abstract description 11
- 230000000996 additive effect Effects 0.000 title claims abstract description 11
- 238000012549 training Methods 0.000 claims abstract description 90
- 239000000203 mixture Substances 0.000 claims abstract description 8
- 238000000034 method Methods 0.000 claims description 34
- 230000006855 networking Effects 0.000 claims description 34
- 230000006870 function Effects 0.000 description 21
- 230000015654 memory Effects 0.000 description 20
- 238000004891 communication Methods 0.000 description 16
- 230000006399 behavior Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000003993 interaction Effects 0.000 description 12
- 230000008520 organization Effects 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 11
- 230000004044 response Effects 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 8
- 230000008878 coupling Effects 0.000 description 7
- 238000010168 coupling process Methods 0.000 description 7
- 238000005859 coupling reaction Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000001413 cellular effect Effects 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000012417 linear regression Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009118 appropriate response Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 230000036760 body temperature Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000000356 contaminant Substances 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- GVVPGTZRZFNKDS-JXMROGBWSA-N geranyl diphosphate Chemical compound CC(C)=CCC\C(C)=C\CO[P@](O)(=O)OP(O)(O)=O GVVPGTZRZFNKDS-JXMROGBWSA-N 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000005693 optoelectronics Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004266 retinal recognition Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000008080 stochastic effect Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/027—Frames
-
- 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
- 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/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/105—Human resources
- G06Q10/1053—Employment or hiring
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Computational Linguistics (AREA)
- Strategic Management (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Mathematical Optimization (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- Molecular Biology (AREA)
- Physiology (AREA)
- Genetics & Genomics (AREA)
- Biomedical Technology (AREA)
- Primary Health Care (AREA)
Abstract
在示例实施例中,使用热启动训练解决方案来极大地降低当对广义加性混合效应(GAME)模型进行再训练时所需要的计算资源。再训练时间的问题特别适用于GAME模型,这是由于这些模型花费了太多的时间随着数据的增长进行训练。过去,用于在再训练期间降低计算资源的策略是使用较少的训练数据,但这会影响模型质量,尤其是对于依赖于在例如成员或项目等级的精细粒度的子模型的GAME模型而言。本解决方案在不牺牲GAME模型精确度的情况下解决了计算资源问题。
Description
技术领域
本公开一般地涉及当在计算机系统上提供机器学习时遇到的问题。更加具体地,本公开涉及热启动GAME框架。
背景技术
互联网的兴起引起了两个不同但相关的现象:社交网络服务的出现的增加,其中,其对应的成员简档对大量人群是可见的;以及对这些社交网络的使用以执行搜索或者获得信息的增加。在社交网络上提供的常见的搜索或推荐的示例是针对已经发布在社交网络上或者通过社交网络链接至的职位的搜索。
社交网络服务在管理在线职位搜索时遇到的技术问题是:随着经由社交网络服务共享的信息源和容量以前所未有的速度增长,确定如何以最小延迟提供最合适和最相关的信息变得极具挑战性。这包括确定如何推荐例如职位空缺和课程设置,以及确定要在在线馈送中显现哪些馈送项目。
职位搜索和其他结果的个性化也是期望的。例如,当用户针对例如“软件工程师”的查询进行搜索时,取决于与所述用户相关的技能、背景、经验、地点、和其他因素,所述用户将与结果进行交互(例如,通过申请底层工作)的几率可能完全不同。例如,在用户界面领域熟练的人将看到与在硬件领域精通的某人非常不同的一组职位结果。的确,具有相同技能组合和当前职位的人可以具有不同的几率与相同的结果进行交互。
还可以在没有用户执行显式搜索的情况下呈现结果,具体地是以推荐的形式。推荐系统是自动化计算机程序,其在不同的上下文中将项目与用户相匹配。为了大规模地实现准确的推荐,机器学习模型用于从用户反馈数据来估计用户偏好。这样的模型是使用从与对象或结果的过去的用户交互所获得的大量高频数据来构造的。
历史上,用于响应于查询来对候选者进行排名或者执行其他推荐的模型大量利用从查询和职位发布中提取的基于文本和实体的特征来导出全局排名或推荐。这样的模型的一个示例是广义线性模型(GLM)。GLM是允许具有不是正态分布的误差分布模型的回应变量的线性回归的一般化。GLM通过允许线性模型经由链接函数与回应变量相关并且通过允许每个度量的方差的大小是其经预测的值的函数来将线性回归一般化。GLM可以使用以下预测公式:
其中,该公式预测用户i对项目j的回应,xij是特征向量,w是系数向量,是回应的期望,并且g()是链接函数。
然而,在数据是丰富的场景中,在用户或项目级具有更细粒度的模型将潜在地产生更加准确的预测,这是由于可以更好地捕获用户对项目的个人偏好以及项目对用户的具体吸引力。
对广义加性混合效应(GAME)框架的使用在对个性化交互进行建模时提供了强大的能力和可扩展性。尽管GAME框架在对个性化交互进行建模方面非常强大并且可扩展,但其表现受制于不同类型的实体(例如,成员职位、新闻更新等)的输入知识(换句话说,“随机”效应)。对这些实体以及它们之间的交互理解越深,则建模结果就越好。这通常依赖于在训练过程中使用更多数据并且基于更多随机效应进行训练的GAME模型,以实现令人满意的建模表现。然而,从技术的角度来看,增加更多训练数据和更多的随机效应会增加模型训练时间并且使用更多的计算资源。
附图说明
作为示例而非限制,在附图的图中示出了本技术的一些实施例。
图1是示出了根据示例实施例的客户端-服务器系统的框图。
图2是示出了与本公开的一些实施例一致的社交网络服务的功能性组件的框图,所述功能性组件包括在本文中称为搜索引擎的数据处理模块,其在生成和提供搜索查询的搜索结果时使用。
图3是示出了根据示例实施例的更加详细地示出了图2的应用服务器模块的框图。
图4是示出了根据示例实施例的更加详细地示出了图3的职位发布结果排名引擎310的框图。
图5是示出了根据示例实施例的用于训练广义加性混合效应模型的方法的框图。
图6是根据一些示例实施例的包括不同类别中的项目的用户馈送的屏幕捕获。
图7是根据示例实施例的示出了软件架构的框图。
图8示出了根据一些示例实施例的、采用计算机系统形式的机器的图解表示,在该计算机系统内可以执行一组指令以用于使得该机器执行在本文中所讨论的方法中的任何一个或多个。
具体实施方式
概述
本公开描述了个体地提供各种功能的方法、系统、和计算机程序产品等。在以下描述中,出于解释的目的,阐述了许多具体细节以便提供对本公开的不同实施例的各个方面的透彻理解。然而,对于本领域技术人员显而易见的是,可以在没有所有具体细节的情况下实践本公开。
在一个示例实施例中,使用热启动训练解决方案来极大地减少当重新训练GAME模型时训练所需的计算资源。再训练时间的问题特别适用于GAME模型,这是由于随着数据的增长,这些模型花费了长得多的时间进行训练。在过去,用于在再训练期间降低计算资源的策略是使用较少的训练数据,但是这影响模型的质量,尤其是对于依赖于在例如成员或项目等级的精细粒度的子模型的GAME模型而言。本解决方案在不牺牲GAME模型精确度的情况下解决了计算资源问题。
在预测/推荐系统中更好地捕获用户对项目的个人偏好以及项目对用户的具体吸引力的一种方法将是除了全局回归系数之外还在GLM设置中引入ID级回归系数。这样的解决方案被称为广义线性混合模型(GLMix)。然而,对于具有大量id级系数的大型数据集而言,拟合GLMix模型可能在计算上具有挑战性,尤其是随着解决方案的缩放。
GAME模型本质上是由其他模型组成的单个模型,具体地是固定效应模型和至少一个随机效应模型。这些个体的模型的输出被组合以用于最终GAME模型输出。这些模型中的每个模型具有不同的粒度和维度。全局模型可以对用户属性(例如,来自成员简档或活动历史)和项目属性之间的相似度进行建模。关于用户的模型可以对用户属性和活动历史进行建模。关于项目的模型可以对项目属性和活动历史进行建模。
在职位搜索结果排名或推荐的上下文中,这得出以下成分:
·捕获成员如何申请职位的一般行为的全局模型
·具有特定于给定成员的参数(要从数据中学习)的成员特定的模型,其用于捕获偏离所述一般行为的成员的个人行为,以及
·具有特定于给定职位的参数(要从数据中学习)的职位特定的模型,其用于捕获偏离一般行为的职位的独特行为。
较大的GAME模型内的模型中的每个模型(在本文中可以被称为GAME模型的部分)也可以包含偏移量。这些偏移量是在模型通过链接函数或链接层之前被增加至由该模型计算的分数的值。在GAME中,偏移量是来自同一模型中的先前坐标的分数。其被用作更加个性化的模型否定默认模型的方式。
图1是示出了根据示例实施例的客户端-服务器系统100的框图。联网系统102经由网络104(例如,互联网或广域网(WAN))向一个或多个客户端提供服务器侧功能。图1示出了例如在相应的客户端机器110和112上执行的web客户端106(例如,浏览器)和程序化客户端108。
应用程序编程接口(API)服务器114和web服务器116耦合至一个或多个应用服务器118,并且向一个或多个应用服务器118分别提供程序化和web接口。应用服务器118托管一个或多个应用120。应用服务器118进而被示出为耦合至促进对一个或多个数据库126的访问的一个或多个数据库服务器124。尽管在图1中示出了应用120以形成联网系统102的一部分,但应当意识到,在可替代的实施例中,应用120可以形成与联网系统102分离且不同的服务的一部分。
此外,尽管在图1中示出的客户端-服务器系统100采用客户端-服务器架构,但是本公开当然不限于这样的架构,并且可以同样好地在例如分布式或对等架构系统中找到应用。各种应用120也可以被实现为不一定具有网络化能力的独立的软件程序。
Web客户端106经由web服务器116所支持的web接口来访问各种应用120。类似地,程序化客户端108经由API服务器114所提供的程序化接口来访问由应用120提供的各种服务和功能。
图1还将在第三方服务器130上执行的第三方应用128示出为能够经由API服务器114提供的编程接口来对联网系统102进行程序化访问。例如,第三方应用128可以利用从联网系统102获取的信息来支持由第三方托管的网站上的一个或多个特征或功能。例如,第三方网站可以提供由联网系统102的相关应用120所支持的一个或多个功能。
在一些实施例中,在本文中所提及的任何网站可以包括能够在多种设备上渲染的在线内容,所述设备包括但不限于台式个人计算机(PC)、膝上型计算机、和移动设备(例如,平板计算机、智能电话等)。就这一点而言,用户可以采用这些设备中的任何设备来使用本公开的特征。在一些实施例中,用户可以使用移动设备(机器110、112和第三方服务器130中的任何一个可以是移动设备)上的移动app(应用)来访问和浏览在线内容,例如在本文中所公开的在线内容中的任何内容。移动服务器(例如,API服务器114)可以与移动app和应用服务器118进行通信,以便使得本公开的特征在移动设备上可用。
在一些实施例中,联网系统102可以包括社交网络服务的功能性组件。图2是示出了与本公开的一些实施例一致的社交网络系统210的功能性组件的框图,所述功能性组件包括在本文中称为搜索引擎216的数据处理模块,其在生成和提供搜索查询的搜索结果时使用。在一些实施例中,搜索引擎216可以驻留在图1中的应用服务器118上。然而,可以预期的是,其他配置也在本公开的范围内。
如在图2中所示出的,前端可以包括用户接口模块(例如,web服务器116)212,其从各种客户端计算设备接收请求并且将合适的回应传送至进行请求的客户端设备。例如,用户接口模块212可以接收采用超文本传输协议(HTTP)请求或者其他基于网络的API请求的形式的请求。另外,可以提供用户交互检测模块213以检测成员与不同应用120、服务、和所呈现的内容所具有的各种交互。如在图2中所示出的,在检测到特定的交互后,用户交互检测模块213将该交互记录在成员活动和行为数据库222中,包括该交互的类型以及与该交互相关的任何元数据。
应用逻辑层可以包括一个或多个各种应用服务器模块214,其结合用户接口模块212利用从数据层中的各种数据源获取的数据来生成各种用户接口(例如,网页)。在一些实施例中,个体的应用服务器模块214用于实现与由社交网络服务所提供的各种应用120和/或服务相关联的功能。
如在图2中所示出的,数据层可以包括几个数据库126,例如用于存储简档数据的简档数据库218,其包括用户简档数据和各种组织(例如,公司、学校等)的简档数据两者。与一些实施例一致,当一个人最初注册成为社交网络服务的用户时,将提示这个人提供一些个人信息,例如他或她的名字、年龄(例如,生日)、性别、兴趣、联系人信息、家乡、地址、配偶和/或家庭成员的名字、教育背景(例如,学校、专业、入学和/或毕业日期等)、雇佣历史、技能、专业组织等。该信息例如被存储在简档数据库218中。类似地,当组织的代表最初向社交网络服务注册该组织时,可以提示该代表提供关于该组织的某些信息。该信息可以例如被存储在简档数据库218或另一数据库(未示出)中。在一些实施例中,可以处理简档数据(例如,在后台或离线地)以生成各种导出的简档数据。例如,如果成员提供了与该成员在同一组织或不同组织拥有的各种职位以及有多长时间有关的信息,则该信息可用于推断或导出指示成员的整体资历等级或者在特定组织内的资历等级的成员简档属性。在一些实施例中,从一个或多个外部托管的数据源导入数据或者以其他方式访问数据可以丰富成员和组织两者的简档数据。例如,特别是对于组织而言,可以从一个或多个外部数据源导入财务数据,并将其作为组织的简档的一部分。之后将在该文档中更加详细地描述对组织数据的该导入和对数据的丰富。
一旦被注册,用户就可以邀请其他成员,或者被其他成员邀请以经由该社交网络服务进行连接。“连接”可以构成用户的双边协议,以使得双方用户确认连接的建立。类似地,在一些实施例中,用户可以决定“关注”另一用户。与建立连接相比,“关注”另一用户的概念通常的是单边操作,并且至少在一些实施例中不需要由被关注的用户进行确认或批准。当一个用户关注另一用户时,在进行关注的用户可以接收由被关注的用户发布的状态更新(例如,在活动或内容流中)或者其他消息,或者与由正被关注的用户从事的各种活动相关。类似地,当用户关注组织时,该用户变得有资格接收代表该组织发布的消息或状态更新。例如,代表用户正在关注的组织发布的消息或状态更新将出现在该用户个性化的数据馈送中,其一般被称为活动流或内容流。在任何情况下,用户与其他用户或与其他实体和对象建立的各种关联和关系被存储并且被保存在社交图数据库220中的社交图内。
当用户与经由社交网络服务可获得的各种应用120、服务、和内容交互时,可以跟踪该用户的交互和行为(例如,所查看的内容、所选择的链接或按钮、所回应的消息等),并且与该用户的活动和行为相关的信息可以被例如如在图2中所指示的用户活动和行为数据库222记录或存储。接着,可以由搜索引擎216使用该记录的活动信息来确定针对搜索查询的搜索结果。
在一些实施例中,数据库218、220、和222可以被并入到图1中的数据库126中。然而,其他配置也在本公开的范围之内。
尽管未示出,但在一些实施例中,社交网络系统210提供了API模块,经由该API模块,应用120和服务可以访问由社交网络服务所提供或保存的各种数据和服务。例如,使用API,应用能够请求和/或接收一个或多个推荐。这样的应用120可以是基于浏览器的应用120,或者可以是特定于操作系统的。特别地,一些应用120可以在具有移动操作系统的一个或多个移动设备(例如,电话或平板计算设备)上驻留和执行(至少部分地)。此外,尽管在许多情况下,利用API的应用120或服务可以是由操作社交网络服务的实体开发和保存的应用120和服务,但在特殊的布置下,除了数据隐私问题之外没有什么可以阻止该API被提供给公众或某些第三方,由此使得所述导航推荐能够由第三方应用128和服务可用。
尽管搜索引擎216在本文中被认为是在社交网络服务的上下文中使用的,但可以预期的是,其也可以在任何网站或在线服务的上下文中被采用。另外地,尽管本公开的特征在本文中被认为是在网页的上下文中被使用或呈现的,但可以预期的是,任何用户界面视图(例如,移动设备或台式机软件上的用户界面)都在本公开的范围之内。
在示例实施例中,当将用户简档编入索引时,创建并存储前向搜索索引。搜索引擎216促进针对社交网络服务内的内容的索引和搜索,例如针对包含在数据层中的数据或信息的索引和搜索,所述数据或信息例如简档数据(例如,存储在简档数据库218中)、社交图数据(例如,存储在社交图数据库220中)、以及成员活动和行为数据(例如,存储在成员活动和行为数据库222中)。搜索引擎216可以收集、解析、和/或存储索引或其他类似结构中的数据,以促进响应于所接收的针对信息的查询而对信息的识别或获取。这可以包括但不限于前向搜索索引、反向索引、N元文法索引等。
出于该文档的目的,针对GAME建模的热启动解决方案是针对与社交网络服务中的工作推荐相关的模型进行描述的。尽管如此,本领域技术人员将认识到,这些技术可以被应用于社交网络服务中的其他类型的模型,例如馈送推荐、简档推荐、课程建议等。
图3是示出了根据示例实施例的更加详细地示出了图2的应用服务器模块214的框图。尽管在许多实施例中,应用服务器模块214将包含用于在社交网络系统中执行各种不同操作的许多子组件,但在图3中,仅描绘了与本公开相关的那些组件。职位发布查询处理器300包括查询提取组件302,查询提取组件302经由用户界面(没有画出)接收与职位发布搜索相关的用户输入“查询”。值得注意的是,该用户输入可以采用许多形式。在一些实施例中,用户可以例如通过在用户界面屏幕的一个或多个字段中输入一个或多个关键字或术语来显式地描述职位发布搜索查询。在其他示例实施例中,可以基于一个或多个用户动作来推断职位发布查询,所述用户动作例如对一个或多个过滤器的选择、用户进行的其他职位发布搜索、针对其他用户或实体的搜索,等等。
该“查询”可以被发送至职位发布数据库查询制定组件304,该组件制定实际的职位发布数据库查询,该职位发布数据库查询将经由职位发布数据库接口306被发送至职位发布数据库308。接着,响应于该职位发布数据库查询的职位发布结果可以再次经由职位发布数据库接口306被发送至职位发布结果排名引擎310。接着,职位发布结果排名引擎310对职位发布结果进行排名,并且将经排名的职位发布结果发送回用户界面以向用户显示。
图4是示出了根据示例实施例的更加详细地示出了图3的职位发布结果排名引擎310的框图。职位发布结果排名引擎310可以使用机器学习技术来学习职位发布结果排名模型400,该模型接着可以用于对来自职位发布数据库308的实际的职位发布结果进行排名。
职位发布结果排名引擎310可以包括训练组件402以及职位发布结果处理组件404。训练组件402将示样职位发布结果406和示样成员数据407馈送到特征提取器408中,该特征提取器408针对示样职位发布结果406和示样成员数据407提取一个或多个特征410。示样职位发布结果406中的每个可以包括响应于特定查询以及一个或多个标签而产生的职位发布结果,例如职位发布申请可能性分数,其是指示具有对应的示样成员数据407的用户将申请与对应的示样职位结果406相关联的职位的概率。
例如,示样成员数据407可以包括特定用户在特定职位发布结果中的职位搜索历史和所产生的兴趣表达(例如,点击职位发布结果或者对对应职位的申请)。在一些示例实施例中,示样成员数据407还可以包括与特定用户的查询结果的个性化相关的其他数据,例如,成员的用户简档或其他用户活动的历史。
机器学习算法412使用所提取的特征410和一个或多个标签来产生职位发布结果排名模型400。在职位发布结果处理组件404中,从特定查询所得出的候选职位发布结果414与成员数据415一起被馈送至特征提取器416。特征提取器416从候选职位发布结果414和成员数据415中提取一个或多个特征418。这些特性418接着被馈送至职位发布结果排名模型400,该模型为特定查询的每个候选职位发布结果而输出职位发布申请可能性分数。
接着,针对每个候选职位发布结果的该职位发布申请可能性分数被传递至职位发布结果分类器420,该分类器420可以基于其相应的职位发布申请可能性分数来将候选职位发布结果414分类。
应当注意的是,职位发布结果排名模型400可以经由另外的训练和/或用户反馈而定期被更新。用户反馈可以是来自执行搜索的成员的反馈,或者是来自与职位发布相对应的公司的反馈。所述反馈可以包括与职位发布结果排名模型400在预测成员对所呈现的职位发布结果的兴趣方面有多成功相关的指示。
机器学习算法412可以从许多不同的潜在的有监督或无监督机器学习算法412中选择。有监督学习算法的示例包括:人工神经网络、贝叶斯网络、基于实例的学习、支持向量机、随机森林、线性分类器、二次分类器、k近邻、决策树、和隐马尔可夫模型。无监督学习算法的示例包括:期望最大化算法、向量量化、和信息瓶颈方法。在示例实施例中,使用了一个多类逻辑回归模型。
当然,上述技术可以被扩展到除排名模型之外的其他类型的模型,例如职位发布结果排名模型400。例如,系统可以使用所述预测向用户推荐一个或多个职位发布信息而无需用户明确地请求职位搜索,而不是使用预测以响应于查询来对结果进行排名。此外,所述技术还可以被扩展到针对除职位发布或职位结果之外的项目(例如,馈送对象)的其他类型的预测。
不同于将所提取的特征410直接传递至机器学习算法412,在示例实施例中,所述特征首先被传递通过再训练组件413。再训练组件413执行用于确定是否会进行再训练、何时将进行再训练、以及将如何进行再训练的自动化过程。
具体地,再训练组件413将完整训练策略与子集训练策略进行组合。可以基于时间将所述训练数据划分到区间中。当首先对模型进行训练时,可以使用第一区间的训练数据来训练初始GAME模型。然而,针对随后的区间,先前训练过的模型将被加载和卷入到训练过程中。
下面的伪代码描述了在示例实施例中能够由再训练组件413使用的算法。
1.基于时间将数据划分到K个区间中
2.针对第一区间:
3.训练GAME模型:固定效应+M个随机效应
4.将GAME模型索引至时间0
5.针对每个随后的区间时间i:
6.加载先前的GAME模型时间i-1:固定效应+M个随机效应
7.对于j->0:N次外循环直到收敛为止:
8.使用时间i数据对固定效应进行再训练:
9.使用来自时间i-1的固定效应系数,但在来自时间i的数据上收敛
10.针对每个数据点更新固定效应偏移量
11.针对每个随机效应(RE):
12.在时间i数据上并行地训练每个RE实例:
13.如果数据点的数量<阈值:
14.则针对该实例不进行训练:使用Time i-1模型
15.否则:
16.再训练时间i数据(最小化ΣL(x,β)+λ*||β-b||2)
17.针对每个数据点更新随机效应偏移量
具体地,基础GAME模型是使用来自第一时间接口T1的数据来训练的。该模型成为初始模型M1。随后,训练过程是通过使用模型Mi-1作为基础进行训练来热启动的,其中,i是当前时间区间。因此,例如,假设其中第一时间区间包括来自成员1和成员3的训练数据,第二时间区间包括来自成员2的训练数据,第三时间区间包括来自成员3的训练数据的简单的训练数据示例。首先,使用来自第一时间区间(成员1和成员3)的数据来训练基础模型。该GAME基础模型将由一个固定效应模型和两个随机效应模型(一个针对成员1,而一个针对成员3)组成。
针对每个随后的区间,都加载先前的GAME模型。先前的GAME模型的固定效应部分使用针对该区间的新数据(例如,在第二次区间中,这将是来自成员2的训练数据)被再训练。然而,在该再训练期间,使用来自先前时间区间的固定效应系数,但在来自当前时间区间的数据上收敛。当随后版本的GAME模型与紧接着之前版本的GAME模型相差小于第二阈值时,发生收敛。在该收敛之后,可以针对来自该时间区间的训练数据中的每个数据点来更新固定效应偏移量。
训练数据中的每个随机效应都可以考虑在有可能训练或再训练GAME模型中对应的随机效应部分是使用。具体地,可以使用阈值来确定是否应该进行再训练。具体地,如果在某一特定时间区间内存在太少的数据点来显著地改变GAME模型的随机效应部分,则再训练组件413将不进行再训练,而只是使用来自先前版本的GAME模型中的对应的随机效应部分。应当注意的是,对该阈值的使用是可选的,这在于有可能将阈值设置为零数据点,这将引起再训练组件413总是确定进行再训练,至少是用于阈值确定。
在对此的可选的扩展中,即使再训练组件413决定再训练GAME模型的随机效应部分,但该再训练是以偏向新模型而不是旧模型的方式完成的。这样做的好处是,可假定具有起初被接受的足够的质量的现有的模型接着可以被假定为对用户或实体的行为/首选项的准确表示。通过偏向新模型而不是旧模型,新模型对异常数据可快速恢复。在这里,接着,可以通过最小化ΣL(x,β)+λ*||β-b||2来进行训练,其中,b是现有模型的系数。
具体地,x是与一个或多个特征相关联的特征向量,所述特征向量是从与时间i相关联的区间中的训练数据中提取的,β是从当前版本的GAME模型中习得的系数向量,L是损失函数,b是从一个版本的GAME模型(其是使用来自与时间i-1相关联的区间的数据训练的)中习得的系数向量,并且λ是一个规则化权重。总体目标是将和最小化(因为该函数是针对相关的训练数据中的每个数据点来评估的),如通过修改β的值确定的。
一旦针对时间区间对GAME模型的随机效应部分进行(或不进行)再训练,则可以针对每个数据点来更新随机效应偏移量。
相对于涉及在每次再训练期间训练完整模型的完整训练策略以及在训练模型时仅使用新数据的子集训练策略,上述方法提供了几个技术优点。具体地,与完整训练策略相比,上述方法将训练资源降低到1/K,其中K是数据被划分到其中的时间区间的数量。存在与先前捕获的数量相同的随机效应,并且随机效应阈值允许开发人员在新近度与稳定性之间进行权衡。例如,小的随机效应阈值将新近的数据优先化,而大的阈值将稳定的数据优先化。
另外地,与子集训练策略相比,所有随机效应都是在不使用任何资源的情况下被捕获的。
在一些实施例中,阈值可以被动态地设置和/或个性化。例如,某些成员或成员群组可以被分配一个阈值,而其他成员或成员群组可以被分配不同的阈值。
图5是根据一个示例实施例的用于训练广义加性混合效应模型的方法500的框图。在操作502处,从社交网络服务中的数据获得的训练数据基于如数据中时间戳所指示的时间被划分到多个区间中。每个区间都与针对每个区间连续地增加的不同的值i相关联。在操作504处,从多个区间中的第一区间的训练数据中导出第一组特征。在操作506处,第一组特征被馈送到GAME模型中。GAME模型具有固定效应部分以及一个或多个随机效应部分。
接着,针对每个随后的时间区间开始循环。在操作506处,使用固定效应系数对固定效应部分进行再训练,但在包含在与时间i相关联的区间中的训练数据上进行收敛,其中,所述固定效应系数来自使用与时间i-1相关联的区间的数据训练的一个版本的固定效应部分。接着,针对包含在与时间i相关联的区间中的训练数据中的一个或多个随机效应中的每个来开始循环。在508处,确定与时间i相关联的区间中的训练数据中的随机效应相对应的数据点的数量是否超过第一阈值。如果没有,则在操作510处,对使用来自与时间i-1相关联的区间的数据来训练的来自GAME模型的一个版本的随机效应部分进行再使用。如果超过,则在操作512处,使用来自与时间i相关联的区间的训练数据对随机效应部分进行训练或再训练。如前所述,该训练或再训练可以通过最小化ΣL(x,β)+λ*||β-b||2来执行。
在操作514处,确定在与时间i相关联的区间中的训练数据中是否存在任何更多的随机效应。如果存在,则方法500循环回到操作508,以用于与时间i相关联的区间中的训练数据中的接下来的随机效应。如果不存在,则在操作516处,确定是否存在任何另外的区间要检查。如果不存在,则方法500结束。如果存在,则在操作518处,确定是否发生收敛。这可以包括比较来自当前版本的GAME模型的输出与紧接着先前版本的GAME模型的输出之间的差异,以查看是否存在用于继续训练的足够大的差异(例如,差异是否超过第二阈值)。如果超过,则方法500循环回506以用于接下来的区间。如果不超过,则方法500结束。应当注意的是,在示例实施例中,随机效应训练/再训练/再使用操作中的每个都是并行地计算的,而不是顺序地计算的。
在示例实施例中,使用经训练的GAME模型来进行对潜在的馈送项目的图形用户界面(GUI)呈现有用的预测。例如,GUI的查看者将对一个或多个馈送项目感兴趣的可能性将用于确定要显示哪些馈送项目以及如何在GUI中显示它们。
图6是根据一些示例实施例的包括不同类别中的项目的用户馈送600的屏幕捕获。在图6的示例实施例中,用户馈送600包括不同的类别,例如职位建议602、用户发布606、和赞助的项目608,并且其他实施例可以包括另外的类别。
在一个示例实施例中,用户馈送600提供了与用户的职位兴趣相匹配的职位建议602(例如,职位发布603和604)。
用户发布606包括由社交网络服务的用户发布的项目607,例如用户的连接,以对社交网络服务进行评论或者包括感兴趣的文章或网页。
赞助的项目608是由社交网络服务的赞助商放置的项目609,所述赞助商付费以在用户馈送上发布这些项目,并且可能包括赞助商想要推广的广告或到网页的链接。
尽管所述类别在用户馈送600内被示出为是分开的,但是可以将来自不同类别的项目混合在一起,并且不仅仅被呈现为块。因此,用户馈送600可以包括来自这些类别中的每个类别的大量项目,并且社交网络服务基于期望的实用程序来决定这些项目被呈现给用户的顺序。这可以部分地基于由GAME模型针对该用户输出的预测。
图7是示出了可以被安装在上述设备中的任何一个或多个设备上的软件架构702的框图700。图7仅仅是软件架构的非限制性示例,并且应当理解的是,可以实现许多其他架构以促进在本文中所描述的功能。在各种实施例中,软件架构702是由诸如图8的机器800之类的硬件实现的,机器800包括处理器810、存储器830、和输入/输出(I/O)组件850。在该示例架构中,软件架构702可以被概念化为层的堆栈,其中每一层可以提供特定功能。例如,软件架构702包括诸如操作系统704、库706、框架708、和应用710之类的层。在操作上,与一些实施例一致,应用710通过软件栈来调取API调用712,并且响应于API调用712而接收消息714。
在各种实现中,操作系统704管理硬件资源并且提供公共服务。操作系统704包括例如内核720、服务722、以及驱动程序724。与一些实施例一致,内核720充当硬件与其他软件层之间的抽象层。例如,内核720提供存储器管理、处理器管理(例如,调度)、组件管理、网络、以及安全设置等。服务722可以为其他软件层提供其他公共服务。根据一些实施例,驱动程序724负责对底层硬件进行控制和接合。例如,驱动程序724可以包括显示器驱动程序、相机驱动程序、或/>低能量驱动程序、闪速存储器驱动程序、串行通信驱动程序(例如,通用串行总线(USB)驱动程序)、/>驱动程序、音频驱动程序、功率管理驱动程序等。
在一些实施例中,库706提供由应用710使用的低级公共基础结构。库706可以包括系统库730(例如,C标准库),其可以提供诸如存储器分配功能、字符串操控功能、数学功能等之类的功能。另外,库706可以包括API库732,诸如媒体库(例如,用于支持各种媒体格式的呈现和操控的库,所述各种媒体格式例如运动图像专家组-4(MPEG4)、高级视频编码(H.264或AVC)、运动图像专家组层-3(MP3)、高级音频编码(AAC)、自适应多速率(AMR)音频编解码器、联合图像专家组(JPEG或JPG)、或者便携式网络图形(PNG))、图形库(例如,用于在显示器上的图形上下文中以二维(2D)和三维(3D)渲染的OpenGL框架)、数据库库(例如,用于提供各种关系数据库功能的SQLite)、web库(例如,用于提供网络浏览功能的WebKit),等等。库706还可以包括宽泛的多种其他库734,以向应用710提供许多其他API。
根据一些实施例,框架708提供能够由应用710使用的高级公共基础结构。例如,框架708提供各种GUI功能、高级资源管理、高级位置服务等。框架708可以提供能够由应用710使用的广泛的其他API,其中的一些API可以是专用于特定操作系统704或平台的。
在示例实施例中,应用710包括家庭应用750、联系人应用752、浏览器应用754、书阅读器应用756、位置应用758、媒体应用760、消息传送应用762、游戏应用764、以及诸如第三方应用766之类的其他应用的宽泛组合。根据一些实施例,应用710是执行在程序中所定义的功能的程序。可以采用各种编程语言来创建以多种方式构建的应用710中的一个或多个,所述语言例如面向对象的编程语言(例如,Objective-C、Java、或C++)或过程性编程语言(例如,C或汇编语言)。在具体的示例中,第三方应用766(例如,由与特定平台的供应商不同的实体使用ANDROIDTM或IOSTM软件开发工具包(SDK)开发的应用)可以是在诸如IOSTM、ANDROIDTM、电话、或另一移动操作系统之类的移动操作系统上运行的移动软件。在该示例中,第三方应用766可以调取由操作系统704所提供的API调用712,以促进在本文中所描述的功能。
图8示出了根据示例实施例的、采用计算机系统的形式的机器800的图解表示,在该机器800中可以执行一组指令以使得该机器执行在本文中所讨论的方法中的任何一个或多个方法。具体地,图8示出了采用计算机系统的示例形式的机器800的图解表示,在其内可以执行用于使得机器800执行在本文中所讨论的方法中的任何一个或多个方法的指令816(例如,软件、程序、应用、小应用程序、app、或其他可执行代码)。例如,指令816可以使得机器800执行图5的方法500。另外地或可替代地,指令816可以实现图1-5等。指令816将通用的、非编程的机器800转换成被编程为实行以所描述的方式描述和示出的功能的特定机器800。在可替代的实施例中,机器800操作成独立的设备或者可以耦合(例如,联网)至其他机器。在联网的部署中,机器800可以在服务器-客户端网络环境中以服务器机器或客户端机器的身份操作,或者在对等(或分布式)网络环境中作为对等机器。机器800可以包括但不限于服务器计算机、客户端计算机、PC、平板计算机、膝上型计算机、上网本、机顶盒(STB)、便携式数字助理(PDA)、娱乐媒体系统、蜂窝电话、智能电话、移动设备、可穿戴设备(例如,智能手表)、智能家庭设备(例如,智能电器)、其他智能设备、网络电器、网络路由器、网络交换器、网桥、或者能够按顺序或以者其他方式执行指令816(其指定要由机器800所采取的动作)的任何机器。此外,尽管仅示出了单个机器800,但是术语“机器”也应当包括单独地或共同地执行指令816以实行在本文中所讨论的方法中的任何一个或多个方法的一系列机器800。
机器800可以包括处理器810、存储器830、以及I/O组件850,它们可以被配置为例如经由总线802彼此进行通信。在示例实施例中,处理器810(例如,中央处理单元(CPU)、精减指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、ASIC、射频集成电路(RFIC)、另一处理器、或其任何合适的组合)可以包括例如可以执行指令816的处理器812和处理器814。术语“处理器”旨在包括多核处理器,其可以包括能够同时地执行指令的两个或更多个独立的处理器(有时被称为“核心”)。尽管图8示出了多个处理器810,但机器800可以包括具有单个核心的单个处理器、具有多个核心的单个处理器(例如,多核处理器)、具有单个核心的多个处理器、具有多个核心的多个处理器、或其任何组合。
存储器830可以包括主存储器832、静态存储器834、以及存储单元836,它们全都例如经由总线802由处理器810可访问。主存储器832、静态存储器834、以及存储单元836存储指令816,其实施在本文中所描述的方法或功能中的任何一个或多个。在由机器800对其执行期间,指令816还可以完全或部分地驻留在主存储器832内、静态存储器834内、存储单元836内、处理器810中的至少一个内(例如,处理器的高速缓存存储器内)、或者其任何合适的组合内。
I/O组件850可以包括用于接收输入、提供输出、产生输出、发送信息、交换信息、捕获度量等的宽泛的多种组件。在特定机器800中包括的具体I/O组件850将取决于机器800的类型。例如,诸如移动电话之类的便携式机器将很可能包括触摸输入设备或其他这样的输入机制,但无终端服务器将很可能不包含这样的触摸输入设备。但将理解的是,I/O组件850可以包括在图8中没有示出的许多其他组件。为了简化以下的讨论,仅根据功能将I/O组件850分组,并且所述分组不进行限制。在各种示例实施例中,I/O组件850可以包括输出组件852和输入组件854。输出组件852可以包括视觉组件(例如,诸如等离子显示面板(PDP)之类的显示器、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪、或阴极射线管(CRT))、声学组件(例如,扬声器)、触觉组件(例如,振动电动机、电阻机制)、其他信号生成器等。输入组件854可以包括字母数字输入组件(例如,键盘、被配置为接收字母数字输入的触摸屏、光电键盘、或其他字母数字输入组件)、基于指点的输入组件(例如,鼠标、触摸板、轨迹球、游戏操纵杆、运动传感器、或另一指点仪器)、触觉输入组件(例如,物理按钮、提供触摸或触摸手势的位置和/或力的触摸屏、或者其他触觉输入组件)、音频输入组件(例如,麦克风)等。
在另外的示例实施例中,I/O组件850还可以包括生物计量组件856、运动组件858、环境组件860、或位置组件862,此外还有大量其他组件。例如,生物计量组件856可以包括用于检测表达(例如,手表达、脸表达、语音表达、身体姿势、或眼睛跟踪)、测量生物信号(例如,血压、心率、身体温度、出汗、或脑波)、识别人(例如,语音识别、视网膜识别、脸部识别、指纹识别、或基于脑电图的识别)等的组件。运动组件858可以包括加速度传感器组件(例如,加速度计)、重力传感器组件、旋转传感器组件(例如,陀螺仪)等。环境组件860可以包括例如照度传感器组件(例如,光度计)、温度传感器组件(例如,检测环境温度的一个或多个温度计)、湿度传感器组件、压力传感器组件(例如,气压计)、声学传感器组件(例如,检测背景噪声的一个或多个麦克风)、接近度传感器组件(例如,检测附近对象的红外线传感器)、气体传感器(例如,为了安全性而检测危险气体浓度或用于测量大气中的污染物的气体检测传感器),或者可以提供与周围物理环境对应的指示、测量、或信号的其他组件。位置组件862可以包括地点传感器组件(例如,GPS接收器组件)、高度传感器组件(例如,高度计或检测从其可以导出高度的气压的气压计)、方向传感器组件(例如,磁强计)等。
可以使用宽泛的多种技术来实现通信。I/O组件850可以包括可操作以分别经由耦合882和耦合872将机器800耦合至网络880或设备870的通信组件864。例如,通信组件864可以包括用于与网络8120接合的网络接口组件或另一合适的设备。在另外的示例中,通信组件864可以包括有线通信组件、无线通信组件、蜂窝通信组件、近场通信(NFC)组件、组件(例如,/>低能量)、/>组件、以及用于经由其他模态来提供通信的其他通信组件。设备870可以是另一机器或者宽泛的多种外围设备(例如,经由USB耦合的外围设备)中的任何一个。
此外,通信组件864可以检测标识符或者包括可用于检测标识符的组件。例如,通信组件864可以包括射频身份(RFID)标签阅读器组件、NFC智能标签检测组件、光学阅读器组件(例如,用于检测诸如通用产品码(UPC)条形码之类的一维条形码,诸如快速响应(QR)码、Aztec码、数据矩阵、Dataglyph、MaxiCode、PDF417、超级码、UCC-RSS-2D条形码、以及其他光学码之类的多维条形码的光学传感器)、或声学检测组件(例如,用于识别被标记的音频信号的麦克风)。另外,可以经由通信组件864来得出多种信息,例如经由互联网协议(IP)地理位置的地点、经由信号三角测量的地点、经由检测可以指示特定地点的NFC信标信号的地点等。
可执行指令和机器存储介质
各种存储器(即,830、832、834、和/或处理器810的存储器)和/或存储单元836可以存储实施在本文中描述的方法或功能中的任何一个或多个或者由其使用的一组或多组指令和数据结构(例如,软件)。这些指令(例如,指令816)当由处理器810执行时,使得各种操作实现所公开的实施例。
如在本文中所使用的,术语“机器存储介质”、“设备存储介质”、“计算机存储介质”指的是相同的事物并且在本公开中能够可互换地使用。所述术语指的是存储可执行指令816和/或数据的单个或多个存储设备和/或介质(例如,集中式或分布式数据库、和/或相关联的高速缓存和服务器)。因此,所述术语应当包括但不限于固态存储器、以及光学和磁性介质,包括处理器810内部或外部的存储器。机器存储介质、计算机存储介质和/或设备存储介质的具体示例包括非易失性存储器,其作为示例而包括半导体存储设备,例如可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、现场可编程门阵列(FPGA)、以及闪速存储器设备;诸如内部硬盘和可移动盘之类的磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。术语“机器存储介质”、“计算机存储介质”、和“设备存储介质”具体地将载波、调制数据信号、以及其他这样的介质排除在外,上述中的至少一些被涵盖在下文讨论的术语“信号介质”之下。
传输介质
在各种示例实施例中,网络880的一个或多个部分可以是自组织网络、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、互联网、互联网的一部分、PSTN的一部分、普通老旧式电话服务(POTS)网络、蜂窝电话网络、无线网络、网络、另一类型的网络、或者两个或更多这样的网络的组合。例如,网络880或网络880的一部分可以包括无线或蜂窝网络,而耦合882可以是码分多址(CDMA)连接、全球移动通信(GSM)连接系统、或另一类型的蜂窝或无线耦合。在该示例中,耦合882可以实现多种类型的数据传输技术中的任何一种,例如单载波无线电传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线电服务(GPRS)技术、用于GSM演进的增强型数据速率(EDGE)技术、包含3G的第三代合作伙伴项目(3GPP)、第四代无线(4G)网络、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波接入互操作(WiMAX)、长期演进(LTE)标准、由各种标准设置组织定义的其他技术、其他远距离协议、或其他数据传输技术。
可以经由网络接口设备(例如,在通信组件864中包括的网络接口组件)使用传输介质并利用多种公知传输协议(例如,HTTP)中的任何一个来在网络880上发送或接收指令816。类似地,可以经由至设备870的耦合872(例如,对等耦合)来使用传输介质发送或接收指令816。术语“传输介质”和“信号介质”指的是相同的事物并且在本公开中能够可互换地使用。术语“传输介质”和“信号介质”应当包括能够存储、编码、或运送用于由机器800执行的指令816的任何无形介质,并且包括数字或模拟通信信号或促成这样的软件的通信的其他无形介质。因此,术语“传输介质”和“信号介质”应当包括任何形式的调制的数据信号、载波等。术语“调制的数据信号”指的是使其特征中的一个或多个特征以将信息编码到信号中的方式设置或改变的信号。
计算机可读介质
术语“机器可读介质”、“计算机可读介质”和“设备可读介质”指的是相同的事物并且在本公开中能够可互换地使用。所述术语被定义成包括机器存储介质和传输介质两者。因此,所述术语包括存储设备/介质和载波/调制的数据信号两者。
Claims (20)
1.一种用于在社交网络服务中训练广义加性混合效应模型的系统,包括:
具有存储在其上的指令的计算机可读介质,所述指令当由处理器执行时,使得所述系统进行以下操作:
访问社交网络服务中的数据,并且基于在所述社交网络服务中的所述数据中的时间戳中指示的时间,将从所述数据中获得的训练数据划分到多个区间中,每个区间与针对每个区间连续地增加的不同的值i相关联;
从所述多个区间中的第一区间的训练数据中导出第一组特征;
将所述第一组特征馈送到广义加性混合效应GAME模型中,所述GAME模型产生一个经训练的固定效应部分以及一个或多个经训练的随机效应部分;
针对每个随后的时间区间:
使用来自一个版本的固定效应部分的固定效应系数对所述固定效应部分进行再训练,但在包含在与时间i相关联的区间中的训练数据上进行收敛,其中,所述一个版本的固定效应部分是使用来自与时间i-1相关联的区间的数据训练的;
针对包含在与时间i相关联的所述区间中的所述训练数据中的一个或多个随机效应中的每个随机效应:
如果与关联于时间i的所述区间中的所述训练数据中的所述随机效应相对应的数据点的数量不超过第一阈值,则对来自所述GAME模型的一个版本的随机效应部分进行再使用,所述一个版本的随机效应部分是使用来自与时间i-1相关联的所述区间的数据来训练的。
2.根据权利要求1所述的系统,其中,所述指令还使得所述系统针对每个随后的时间区间来进行以下操作:
针对包含在与时间i相关联的所述区间中的所述训练数据中的一个或多个随机效应中的每个随机效应:
如果与关联于时间i的所述区间中的所述训练数据中的所述随机效应相对应的数据点的数量超过第一阈值,则使用来自与时间i相关联的所述区间的训练数据来对所述随机效应部分进行训练或再训练。
3.根据权利要求2所述的系统,其中,所述训练或再训练包括最小化ΣL(x,β)+λ*||β-b||2,其中,x是与从与时间i相关联的所述区间中的所述训练数据中提取的一个或多个特征相关联的特征向量,β是从当前版本的GAME模型中习得的系数向量,L是损失函数,λ是规则化权重,其中b是现有模型的系数。
4.根据权利要求1所述的系统,其中,所述再训练被重复直到收敛为止,其中,当随后版本的GAME模型与紧接着之前版本的GAME模型的差小于第二阈值时,发生收敛。
5.根据权利要求1所述的系统,其中,所述再训练还包括更新所述固定效应部分的固定效应偏移量。
6.根据权利要求2所述的系统,其中,所述训练或再训练还包括更新所述随机效应部分的随机效应偏移量。
7.根据权利要求1所述的系统,其中,所述第一阈值是基于要由所述GAME模型输出的预测与其相关联的第一用户的属性而动态地设置的。
8.一种用于在社交网络服务中训练广义加性混合效应模型的计算机化的方法,包括:
访问社交网络服务中的数据,并且基于在所述社交网络服务中的所述数据中的时间戳中指示的时间,将从所述数据中获得的训练数据划分到多个区间中,每个区间与针对每个区间连续地增加的不同的值i相关联;
从所述多个区间中的第一区间的训练数据中导出第一组特征;
将所述第一组特征馈送到广义加性混合效应GAME模型中,所述GAME模型产生一个经训练的固定效应部分以及一个或多个经训练的随机效应部分;
针对每个随后的时间区间:
使用来自一个版本的固定效应部分的固定效应系数对所述固定效应部分进行再训练,但在包含在与时间i相关联的区间中的训练数据上进行收敛,其中,所述一个版本的固定效应部分是使用来自与时间i-1相关联的区间的数据训练的;
针对包含在与时间i相关联的所述区间中的所述训练数据中的一个或多个随机效应中的每个随机效应:
如果与关联于时间i的所述区间中的所述训练数据中的所述随机效应相对应的数据点的数量不超过第一阈值,则对来自所述GAME模型的一个版本的随机效应部分进行再使用,所述一个版本的随机效应部分是使用来自与时间i-1相关联的所述区间的数据来训练的。
9.根据权利要求8所述的方法,还包括:
针对包含在与时间i相关联的所述区间中的所述训练数据中的一个或多个随机效应中的每个随机效应:
如果与关联于时间i的所述区间中的所述训练数据中的所述随机效应相对应的数据点的数量超过第一阈值,则使用来自与时间i相关联的所述区间的训练数据来对所述随机效应部分进行训练或再训练。
10.根据权利要求9所述的方法,其中,所述训练或再训练包括最小化ΣL(x,β)+λ*||β-b||2,其中,x是与从与时间i相关联的所述区间中的所述训练数据中提取的一个或多个特征相关联的特征向量,β是从当前版本的GAME模型中习得的系数向量,L是损失函数,λ是规则化权重,其中b是现有模型的系数。
11.根据权利要求8所述的方法,其中,所述再训练被重复直到收敛为止,其中,当随后版本的GAME模型与紧接着之前版本的GAME模型的差小于第二阈值时,发生收敛。
12.根据权利要求8所述的方法,其中,所述再训练还包括更新所述固定效应部分的固定效应偏移量。
13.根据权利要求9所述的方法,其中,所述训练或再训练还包括更新所述随机效应部分的随机效应偏移量。
14.根据权利要求8所述的方法,其中,所述第一阈值是基于要由所述GAME模型输出的预测与其相关联的第一用户的属性而动态地设置的。
15.一种包括指令的非暂时性机器可读存储介质,所述指令当由一个或多个机器实现时,使得所述一个或多个机器执行包括以下项的操作:
访问社交网络服务中的数据,并且基于在所述社交网络服务中的所述数据中的时间戳中指示的时间,将从所述数据中获得的训练数据划分到多个区间中,每个区间与针对每个区间连续地增加的不同的值i相关联;
从所述多个区间中的第一区间的训练数据中导出第一组特征;
将所述第一组特征馈送到广义加性混合效应GAME模型中,所述GAME模型产生一个经训练的固定效应部分以及一个或多个经训练的随机效应部分;
针对每个随后的时间区间:
使用来自一个版本的固定效应部分的固定效应系数对所述固定效应部分进行再训练,但在包含在与时间i相关联的区间中的训练数据上进行收敛,其中,所述一个版本的固定效应部分是使用来自与时间i-1相关联的区间的数据训练的;
针对包含在与时间i相关联的所述区间中的所述训练数据中的一个或多个随机效应中的每个随机效应:
如果与关联于时间i的所述区间中的所述训练数据中的所述随机效应相对应的数据点的数量不超过第一阈值,则对来自所述GAME模型的一个版本的随机效应部分进行再使用,所述一个版本的随机效应部分是使用来自与时间i-1相关联的所述区间的数据来训练的。
16.根据权利要求15所述的非暂时性机器可读存储介质,还包括:
针对包含在与时间i相关联的所述区间中的所述训练数据中的一个或多个随机效应中的每个随机效应:
如果与关联于时间i的所述区间中的所述训练数据中的所述随机效应相对应的数据点的数量超过第一阈值,则使用来自与时间i相关联的所述区间的训练数据来对所述随机效应部分进行训练或再训练。
17.根据权利要求16所述的非暂时性机器可读存储介质,其中,所述训练或再训练包括最小化ΣL(x,β)+λ*||β-b||2,其中,x是与从与时间i相关联的所述区间中的所述训练数据中提取的一个或多个特征相关联的特征向量,β是从当前版本的GAME模型中习得的系数向量,L是损失函数,λ是规则化权重,其中b是现有模型的系数。
18.根据权利要求15所述的非暂时性机器可读存储介质,其中,所述再训练被重复直到收敛为止,其中,当随后版本的GAME模型与紧接着之前版本的GAME模型的差小于第二阈值时,发生收敛。
19.根据权利要求15所述的非暂时性机器可读存储介质,其中,所述再训练还包括更新所述固定效应部分的固定效应偏移量。
20.根据权利要求16所述的非暂时性机器可读存储介质,其中,所述训练或再训练还包括更新所述随机效应部分的随机效应偏移量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/109,411 | 2018-08-22 | ||
US16/109,411 US11106982B2 (en) | 2018-08-22 | 2018-08-22 | Warm start generalized additive mixed-effect (game) framework |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110858235A CN110858235A (zh) | 2020-03-03 |
CN110858235B true CN110858235B (zh) | 2023-10-31 |
Family
ID=69587246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910772576.2A Active CN110858235B (zh) | 2018-08-22 | 2019-08-21 | 热启动广义加性混合效应(game)框架 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11106982B2 (zh) |
CN (1) | CN110858235B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150018060A1 (en) * | 2013-07-11 | 2015-01-15 | International Business Machines Corporation | System and method for decision making in strategic environments |
CN104956359A (zh) * | 2012-12-21 | 2015-09-30 | 内部销售公司 | 实例加权学习机器学习模型 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9461876B2 (en) * | 2012-08-29 | 2016-10-04 | Loci | System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction |
US20140164476A1 (en) * | 2012-12-06 | 2014-06-12 | At&T Intellectual Property I, Lp | Apparatus and method for providing a virtual assistant |
US9141823B2 (en) * | 2013-03-15 | 2015-09-22 | Veridicom, Sa De Cv | Abstraction layer for default encryption with orthogonal encryption logic session object; and automated authentication, with a method for online litigation |
WO2015127065A1 (en) * | 2014-02-19 | 2015-08-27 | Hrl Laboratories, Llc | Disease prediction system using open source data |
US10262154B1 (en) * | 2017-06-09 | 2019-04-16 | Microsoft Technology Licensing, Llc | Computerized matrix factorization and completion to infer median/mean confidential values |
-
2018
- 2018-08-22 US US16/109,411 patent/US11106982B2/en active Active
-
2019
- 2019-08-21 CN CN201910772576.2A patent/CN110858235B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104956359A (zh) * | 2012-12-21 | 2015-09-30 | 内部销售公司 | 实例加权学习机器学习模型 |
US20150018060A1 (en) * | 2013-07-11 | 2015-01-15 | International Business Machines Corporation | System and method for decision making in strategic environments |
Also Published As
Publication number | Publication date |
---|---|
US11106982B2 (en) | 2021-08-31 |
US20200065678A1 (en) | 2020-02-27 |
CN110858235A (zh) | 2020-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109740045B (zh) | 针对搜索结果的因素化模型和基于搜索结果的通信 | |
US11250340B2 (en) | Feature contributors and influencers in machine learned predictive models | |
US11144830B2 (en) | Entity linking via disambiguation using machine learning techniques | |
US11074521B2 (en) | Career path recommendation engine | |
US11055668B2 (en) | Machine-learning-based application for improving digital content delivery | |
US11163845B2 (en) | Position debiasing using inverse propensity weight in machine-learned model | |
US20180285824A1 (en) | Search based on interactions of social connections with companies offering jobs | |
US10949480B2 (en) | Personalized per-member model in feed | |
CN110956253A (zh) | 针对头衔标准化的与语言无关的机器学习模型 | |
US20190197422A1 (en) | Generalized additive machine-learned models for computerized predictions | |
EP3561735A1 (en) | Integrating deep learning into generalized additive mixed-effect (game) frameworks | |
US11151661B2 (en) | Feed actor optimization | |
US11334612B2 (en) | Multilevel representation learning for computer content quality | |
US20180285822A1 (en) | Ranking job offerings based on connection mesh strength | |
US11514115B2 (en) | Feed optimization | |
CN110895579B (zh) | 具有树交互特征的实体级搜索模型 | |
US20200104421A1 (en) | Job search ranking and filtering using word embedding | |
CN110955840B (zh) | 通知和推送的联合优化 | |
US11194877B2 (en) | Personalized model threshold | |
US11263563B1 (en) | Cohort-based generalized linear mixed effect model | |
US20230077840A1 (en) | Machine learning model for specialty knowledge base | |
US11461421B2 (en) | Techniques for suggesting skills | |
CN110858235B (zh) | 热启动广义加性混合效应(game)框架 | |
US11397924B1 (en) | Debugging tool for recommendation systems | |
US11790037B1 (en) | Down-sampling of negative signals used in training machine-learned model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |