CN114443671A - 推荐模型的更新方法、装置、计算机设备和存储介质 - Google Patents
推荐模型的更新方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114443671A CN114443671A CN202011219021.4A CN202011219021A CN114443671A CN 114443671 A CN114443671 A CN 114443671A CN 202011219021 A CN202011219021 A CN 202011219021A CN 114443671 A CN114443671 A CN 114443671A
- Authority
- CN
- China
- Prior art keywords
- model
- sample
- recommendation
- sub
- feature
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Data Mining & Analysis (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及基于人工智能的一种推荐模型的更新方法、装置、计算机设备和存储介质。方法包括:实时获取样本用户数据和样本推荐对象数据;样本推荐对象数据包括与样本媒体对象相关的数据;根据样本用户数据和样本推荐对象数据,生成模型更新样本特征;模型更新样本特征包括至少两个特征维度的子特征;将模型更新样本特征输入推荐模型,以实时更新推荐模型;实时更新后的推荐模型用于实时进行媒体对象的推荐;其中,在实时更新推荐模型的过程中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。采用本方法能够降低推荐模型的内存空间的消耗。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种推荐模型的更新方法、装置、计算机设备和存储介质。
背景技术
随着互联网技术的迅速发展,各种互联网产品日益盛行。人们可以通过各种互联网产品进行浏览文章、观看视频、购物等,从而产生百亿级别数量、千亿级别数量的数据。企业可以通过推荐模型对大量的数据进行学习,再将与用户相关的信息推荐给用户。
在传统技术中,通常是将大量的新产生的数据输入推荐模型中,对推荐模型进行更新。然而,这种推荐模型的更新方法,在更新过程中存在推荐模型的内存空间消耗大的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种在推荐模型更新过程中能够降低内存空间消耗的推荐模型的更新方法、装置、计算机设备和存储介质。
一种推荐模型的更新方法,所述方法包括:
实时获取样本用户数据和样本推荐对象数据;所述样本推荐对象数据包括与所述样本媒体对象相关的数据;
根据所述样本用户数据和所述样本推荐对象数据,生成模型更新样本特征;所述模型更新样本特征包括至少两个特征维度的子特征;
将所述模型更新样本特征输入推荐模型,以实时更新所述推荐模型;实时更新后的所述推荐模型用于实时进行媒体对象的推荐;其中,在实时更新所述推荐模型的过程中,当所述模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数。
在其中一个实施例中,所述实时获取样本用户数据和样本推荐对象数据,包括:
实时采集多个样本用户标识分别相应的样本用户数据,以及多个样本推荐对象标识分别相应的样本推荐对象数据;
将各所述样本用户数据与相应的样本用户标识对应存储至用户特征库,并将各所述样本推荐对象数据与相应的样本推荐对象标识存储至推荐对象特征库;所述用户特征库和所述推荐对象特征库包括于实时特征库;
从所述实时特征库中实时获取样本用户数据和样本推荐对象数据。
在其中一个实施例中,所述将所述模型更新样本特征分发给至少两个训练线程之前,所述方法还包括:
将所述模型更新样本特征写入队列中;
通过读取线程从所述队列中流式读取所述模型更新样本特征;
所述将所述模型更新样本特征分发给至少两个训练线程,包括:
通过所述读取线程将读取的模型更新样本特征分发给至少两个训练线程。
一种推荐模型的更新装置,所述装置包括:
实时获取模块,用于实时获取样本用户数据和样本推荐对象数据;所述样本推荐对象数据包括与所述样本媒体对象相关的数据;
特征生成模块,用于根据所述样本用户数据和所述样本推荐对象数据,生成模型更新样本特征;所述模型更新样本特征包括至少两个特征维度的子特征;
模型更新模块,用于将所述模型更新样本特征输入推荐模型,以实时更新所述推荐模型;实时更新后的所述推荐模型用于实时进行媒体对象的推荐;其中,在实时更新所述推荐模型的过程中,当所述模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
上述推荐模型的更新方法、装置、计算机设备和存储介质,一方面实时获取样本用户数据和样本推荐对象数据来生成模型更新样本特征,将模型更新样本特征输入推荐模型实时更新推荐模型,可以使得推荐模型持续在线更新,能够有效地保证推荐模型的时效性;进而在实时更新后的推荐模型用于实时进行媒体对象的推荐时,可以有效地保证推荐的媒体对象的时效性。另一方面,由于模型更新样本包括至少两个特征维度的子特征,那么在实时更新推荐模型的过程中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,可以局部稀疏化符合模型稀疏化条件的模型参数,这样可以在实时更新推荐模型过程中,持续对模型参数进行稀疏化处理,降低了推荐模型中模型参数的复杂度,进而可以降低推荐模型的内存空间的消耗。
附图说明
图1为一个实施例中推荐模型的更新方法的应用环境图;
图2为一个实施例中推荐模型的更新方法的流程示意图;
图3为一个实施例中实时获取样本用户数据和样本推荐对象数据步骤的流程示意图;
图4为一个实施例中根据样本用户数据和样本推荐对象数据,生成模型更新样本特征步骤的流程示意图;
图5为一个实施例中各候选子特征的出现频次的分布图;
图6为一个实施例中将模型更新样本特征输入推荐模型,以实时更新推荐模型步骤的流程示意图;
图7为一个实施例中当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数步骤的流程示意图;
图8为一个实施例中降低推荐模型复杂度的不同方式的对比图;
图9为一个实施例中当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数步骤的流程示意图;
图10为一个实施例中采用保存时间最新的推荐模型实时进行媒体对象的推荐步骤的流程示意图;
图11为一个实施例中在线流式学习的框架图;
图12为一个实施例中推荐模型的更新装置的结构框图;
图13为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的方案涉及人工智能和机器学习(Machine Learning,ML)等技术。人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、技术及应用系统,使机器具有感知、推理与决策的功能。机器学习涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科,研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
通过人工智能和机器学习可以构建推荐模型,以及包括推荐模型的在线流式学习系统。通过对模型更新样本特征进行基于人工智能和机器学习等技术进行处理,从而能够实时进行媒体对象的推荐,并且对推荐模型进行稀疏化处理,进而可以降低推荐模型的内存空间的消耗。
本申请提供的推荐模型的更新方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。服务器104实时从终端102中获取样本用户数据和样本推荐对象数据;根据样本用户数据和样本推荐对象数据,生成模型更新样本特征;模型更新样本特征包括至少两个特征维度的子特征;将模型更新样本特征输入推荐模型,以实时更新推荐模型;实时更新后的推荐模型用于实时进行媒体对象的推荐;其中,在实时更新推荐模型的过程中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
需要说明的是,在本申请的实施例中,终端102和服务器104均可单独用于执行该推荐模型的更新方法,终端102也可与服务器104协同执行该推荐模型的更新方法。
在一个实施例中,如图2所示,提供了一种推荐模型的更新方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,实时获取样本用户数据和样本推荐对象数据;样本推荐对象数据包括与样本媒体对象相关的数据。
可实施地,样本用户数据指的是样本用户的数据。样本用户数据可以包括用户基础数据。用户基础数据是反映用户基础属性的数据。用户基础数据比如用户标识、性别、年龄、所在位置、兴趣爱好或者学历等。样本用户数据也可以包括用户行为数据。用户行为数据是反映用户行为特征的数据。用户行为数据比如社交行为数据等。社交行为数据比如媒体数据的观看、点赞、评论、转发以及收藏等信息。其中,媒体数据可以是文章、视频、图片等。
样本推荐对象数据指的是作为样本的推荐对象的数据。样本推荐对象指的是推荐至用户终端的对象。在本申请中,推荐对象具体可以是媒体对象,因而,样本推荐对象数据包括与样本媒体对象相关的数据。样本媒体对象指的是用于作为样本的媒体对象。媒体对象是以电子设备为媒介进行传输的数据对象,具体可以是文章、图片、视频、待下载的文件、或广告等。样本媒体对象相关的数据可以是样本媒体对象的标识、样本媒体对象本身的数据以及样本媒体对象与用户之间的互动数据等。其中,样本媒体对象与用户之间的互动数据具体可以是样本媒体对象被观看的次数、样本媒体对象被下载的次数、样本媒体对象被转发的次数、样本媒体对象被收藏的次数、样本媒体对象被点赞的数据、或用户对样本媒体对象的评论信息,等等,不作限定。
具体地,服务器实时从各个用户终端中采集用户数据和推荐对象数据用作样本,得到样本用户数据和样本推荐对象数据。服务器也可实时从数据库中获取用户数据和推荐对象数据用作样本,得到样本用户数据和样本推荐对象数据;该数据库中存储有服务器事先或者当前收集的用户数据和推荐对象数据。
在一种场景中,服务器与各个用户终端通过网络进行通信,服务器可以预先设置样本用户,从而实时获取样本用户所在的用户终端的数据。当样本用户所在的用户终端接收到用户的触发操作,服务器可以实时获取样本用户终端所产生的样本用户数据和样本推荐对象数据。其中,用户的触发操作可以是观看、点赞、收藏、转发、下载、评论等,通过用户的触发操作可以产生相应的数据。
步骤204,根据样本用户数据和样本推荐对象数据,生成模型更新样本特征;模型更新样本特征包括至少两个特征维度的子特征。
模型更新样本特征指的是用于对推荐模型进行更新的样本特征。模型更新样本特征包括至少两个特征维度的子特征。不同特征维度的子特征在不同特征层面反映模型更新样本特征的特性。这里的子特征可以是用户特征维度也可以是推荐对象层面的特征维度。举例说明,在具体的视频推荐场景下,用户层面的特征维度比如是否观看、是否点赞、是否转发、是否下载等,推荐对象层面的特征维度例如观看次数、点赞次数、转发次数、下载次数等。
在一种实施方式中,服务器将样本用户数据和样本推荐对象数据进行拼接,生成模型更新样本特征。拼接的方式并不限定,例如可以在样本用户数据之后拼接样本推荐对象数据,也可以在样本推荐对象数据之后拼接样本用户数据。
在另一种实施方式中,服务器将样本用户数据和样本推荐对象数据进行汇总,得到模型更新样本特征。
服务器还可以采用其他的实施方式根据样本用户数据和样本推荐对象数据,生成模型更新样本特征,并不限定。
步骤206,将模型更新样本特征输入推荐模型,以实时更新推荐模型;实时更新后的推荐模型用于实时进行媒体对象的推荐;其中,在实时更新推荐模型的过程中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。
推荐模型中的推荐系统算法,通常是通过用户和物品的嵌入向量之间的点积操作,来计算用户对物品的“评分”或“偏好”,用户与物品的嵌入向量分别是由用户、物品的特征向量通过线性变换或者非线性变换得到。推荐模型可以是FM(Factorization Machine,因子分解机)模型、Wide&Deep模型、DeepFM模型等。
服务器将模型更新样本特征实时输入推荐模型中,以实时更新推荐模型的模型参数。模型参数可以包括推荐模型的超参数、子特征相应的模型参数。其中,超参数可以包括卷积核的数量、卷积层中的参数、池化层的数量等。子特征相应的模型参数可以包括权重参数、隐向量参数等。子特征相应的模型参数的数量可以包括一个,也可以包括多个。
模型稀疏化条件指的是对模型参数进行稀疏化处理的约束条件,可以根据需要进行设置。例如,模型稀疏化条件可以是对子特征相应的模型参数的参数值进行约束的约束条件,模型稀疏化条件也可以是对子特征相应的模型参数的更新时间进行约束的约束条件。当然,在另外的实施例中,模型稀疏化条件还可以是对模型更新样本特征的数量或者推荐模型内剩余的内存空间的大小进行约束的约束条件等。
稀疏化处理可以是对模型参数置0、去除模型参数、过滤子特征、过滤模型更新样本特征等其中的任意一种方式。局部稀疏化指的是对符合模型稀疏化条件的模型参数的局部参数进行稀疏化处理。
服务器在实时更新推荐模型的过程中,遍历模型更新样本特征中各特征维度的子特征以及各子特征相应的模型参数,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,确定符合模型稀疏化条件的模型参数,对该模型参数进行局部稀疏化。
在一个实施例中,在推荐模型更新的过程中,采用以下计算公式对推荐模型进行训练,以更新推荐模型的模型参数:
其中,x={x1,x2,…,xi,…xj,…xN}为模型更新样本特征,σ是预设的参数,ω0是预设的一维参数,xi表示x的第i个子特征,ωi为xi对应的一维的权重参数,和是k维的隐向量参数,为xi对应的隐向量参数,N表示子特征的个数。假设x是用户A的用户数据与媒体对象1的媒体对象数据生成,则是推荐模型向用户A推荐媒体对象1的概率。一维的权重参数ωi、k维的隐向量参数和均是推荐模型经过训练学习得到的。
由以上公式可知,对于一个子特征,需要为该子特征开辟1+k个浮点型参数空间。那么随着推荐模型的模型更新样本特征的增加,推荐模型的内存空间将会被逐步的消耗完,并且推荐模型的内存消耗较大时,加载内存的时间、推荐模型预测的时间都会大幅度增加。
而在本实施例中,一方面实时获取样本用户数据和样本推荐对象数据来生成模型更新样本特征,能够及时捕获到线上的数据的变化,将模型更新样本特征输入推荐模型实时更新推荐模型,可以使得推荐模型持续在线更新,能够有效地保证推荐模型的时效性;进而在实时更新后的推荐模型用于实时进行媒体对象的推荐时,可以有效地保证推荐的媒体对象的时效性。另一方面,由于模型更新样本包括至少两个特征维度的子特征,那么在实时更新推荐模型的过程中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,可以局部稀疏化符合模型稀疏化条件的模型参数,这样可以在实时更新推荐模型过程中,持续对模型参数进行稀疏化处理,降低了推荐模型中模型参数的复杂度,避免推荐模型在长期运转(long running)下模型参数的快速膨胀,进而可以降低推荐模型的内存空间的消耗。
在一个实施例中,如图3所示,实时获取样本用户数据和样本推荐对象数据,包括:
步骤302,实时采集多个样本用户标识分别相应的样本用户数据,以及多个样本推荐对象标识分别相应的样本推荐对象数据。
样本用户标识指的是样本用户的标识。样本用户标识与样本用户数据一一对应。样本推荐对象标识指的是样本推荐对象的标识。样本推荐对象标识与样本推荐对象数据一一对应。
可以理解,通常场景下,在产生新的样本用户标识或者新的样本推荐对象标识后,服务器便可实时采集这些新的样本用户标识(或样本推荐对象标识)所对应的其他的样本用户数据。其中,样本用户标识也是样本用户数据。对于已经存在的样本用户标识或者样本推荐对象标识后,服务器也可实时采集新增的与这些样本用户标识(或样本推荐对象标识)对应的样本用户数据。
步骤304,将各样本用户数据与相应的样本用户标识对应存储至用户特征库,并将各样本推荐对象数据与相应的样本推荐对象标识存储至推荐对象特征库;用户特征库和推荐对象特征库包括于实时特征库。
实时特征库指的是实时存取的特征库。实时特征库包括用户特征库和推荐对象特征库,即用户特征库和推荐对象特征库也均是实时存取的特征库。
具体地,服务器将各样本用户数据与相应的样本用户标识按照key-value方式对应存储至用户特征库。其中,key是各样本用户标识,value是各样本用户数据;服务器也将各样本推荐对象数据与相应的样本推荐对象标识按照key-value方式存储至推荐对象特征库。其中,key是各样本推荐对象标识,value是各样本推荐对象数据。
步骤306,从实时特征库中实时获取样本用户数据和样本推荐对象数据。
服务器通过key-value操作从实时特征库的用户特征库中实时获取样本用户数据,通过key-value操作从实时特征库的推荐对象特征库中实时获取样本推荐对象数据。
具体地,服务器确定样本用户标识,将样本用户标识与用户特征库中所存储的各个key进行匹配,获取相匹配的key相应的value,value即样本用户数据。服务器确定样本推荐对象标识,将样本推荐对象标识与推荐对象特征库中所存储的各个key进行匹配,获取相匹配的key相应的value,value即样本推荐对象数据。
在一个实施例中,由于样本用户标识也是样本用户数据,样本推荐对象标识,也是样本推荐对象数据,那么服务器通过key-value操作从实时特征库的用户特征库中实时获取的样本用户数据为key+value,服务器通过key-value操作从实时特征库的推荐对象特征库中实时获取的样本推荐对象数据也为key+value。
在本实施例中,服务器实时采集多个样本用户标识分别相应的样本用户数据,以及多个样本推荐对象标识分别相应的样本推荐对象数据;将各样本用户数据与相应的样本用户标识对应存储至用户特征库,并将各样本推荐对象数据与相应的样本推荐对象标识存储至推荐对象特征库;用户特征库和推荐对象特征库包括于实时特征库;可以从实时特征库中实时获取样本用户数据和样本推荐对象数据,以实时生成模型更新样本特征,并实时更新推荐模型。
在一个实施例中,样本用户数据包括至少一个特征维度的候选子特征,样本推荐对象数据包括至少一个特征维度的候选子特征,模型更新样本特征包括至少两个特征维度的目标子特征。如图4所示,根据样本用户数据和样本推荐对象数据,生成模型更新样本特征,包括:
步骤402,分别获取各个候选子特征相应的采样概率;采样概率的参数值表示相应候选子特征在更新推荐模型时被采用的概率。
候选子特征是样本用户数据或者样本推荐对象数据包括的子特征。目标子特征是模型更新样本特征包括的子特征。
可以理解,在根据样本用户数据和样本推荐对象数据生成模型更新样本特征时,样本用户数据和样本推荐对象数据包括的子特征可以被采用也可以不被采用,那么样本用户数据和样本推荐对象数据包括的子特征可以称为候选子特征。当候选子特征样本用户数据和样本推荐对象数据包括的子特征被采用时,该子特征则用于生成模型更新样本特征包括的子特征,也就是目标子特征。
具体地,服务器分别获取各样本用户数据包括的至少一个特征维度的候选子特征的采样概率,以及分别获取各样本推荐对象数据包括的至少一个特征维度的候选子特征的采样概率。例如,候选子特征A的采样概率是80%,表示候选子特征A在更新推荐模型时被采用的概率为80%,候选子特征B的采样概率是25%,表示候选子特征B在更新推荐模型时被采用的概率为25%。采样概率可以用百分比进行表示,也可以用分数进行表示,不限于此。
步骤404,过滤参数值小于概率阈值的采样概率相应的候选子特征。
概率阈值可以根据需要进行设置。例如,概率阈值可以设置为50%,也可以设置为70%。
服务器将各个候选子特征相应的采样概率分别与概率阈值进行比较,确定参数值小于概率阈值的采样概率相应的候选子特征,并过滤该候选子特征,即去除该候选子特征。
例如,样本用户数据包括一个特征维度的候选子特征A,候选子特征A相应的采样概率的参数值为65%,样本推荐对象数据包括两个特征维度的候选子特征,分别为候选子特征B和候选子特征C,候选子特征B相应的采样概率的参数值为89%,候选子特征C相应的采样概率的参数值为46%,概率阈值为60%,则确定参数值小于概率阈值的采样概率相应的候选子特征为C,过滤候选子特征C,即去除候选子特征C。
步骤406,根据过滤候选子特征之后的样本用户数据和样本推荐对象数据,生成模型更新样本特征。
当样本用户数据中包括参数值小于概率阈值的采样概率相应的候选子特征,过滤样本用户数据中的该候选子特征;当样本推荐对象数据中包括参数值小于概率阈值的采样概率相应的候选子特征,过滤样本推荐对象数据中的该候选子特征,根据过滤候选子特征之后的样本用户数据和样本推荐对象数据,生成模型更新样本特征。
在一种实施方式中,服务器将过滤候选子特征之后的样本用户数据和样本推荐对象数据进行拼接,生成模型更新样本特征。拼接的方式并不限定,例如可以在样本用户数据之后拼接样本推荐对象数据,也可以在样本推荐对象数据之后拼接样本用户数据。
在另一种实施方式中,服务器将过滤候选子特征之后的样本用户数据和样本推荐对象进行汇总,得到模型更新样本特征。
在本实施例中,分别获取各个候选子特征相应的采样概率;过滤参数值小于概率阈值的采样概率相应的候选子特征,可以过滤掉更新推荐模型时被采用的概率比较小的候选子特征,从而稀疏化模型更新样本特征,可以在实时更新推荐模型过程中,持续对模型参数进行稀疏化处理,降低了推荐模型中模型参数的复杂度,并且降低了推荐模型的内存空间的消耗。
在一个实施例中,样本用户数据与样本推荐对象数据获取自实时特征库;分别获取各个候选子特征相应的采样概率,包括:分别获取各个候选子特征在实时特征库中相应的出现频次;根据预设概率和各个候选子特征相应的出现频次,计算得到各个候选子特征相应的采样概率。
服务器统计各个候选子特征在实时特征库中相应的出现频次。候选子特征的出现频次越高,表示该候选子特征在更新推荐模型时被采用的概率越大,推荐模型采用该候选子特征进行实时更新得到的模型参数的置信度也更高。
在一种实施方式中,服务器将预设概率乘以各个候选子特征相应的出现频次,计算得到各个候选子特征相应的采样概率。例如,预设概率为0.5%,候选子特征A相应的出现频次为50,候选子特征B相应的出现频次为64,则候选子特征A相应的采样概率为0.5%*50=25%,候选子特征B相应的采样概率为0.5%*64=32%。
在另一种实施方式中,服务器获取各个候选子特征所属的特征库相应的权重因子,根据预设概率、各个候选子特征相应的出现频次和各个候选子特征所属的特征库相应的权重因子,计算得到各个候选子特征相应的采样概率。具体地,服务器将预设概率、各个候选子特征相应的出现频次和各个候选子特征所属的特征库相应的权重因子进行相乘,计算得到各个候选子特征相应的采样概率。例如,预设概率为0.5%,候选子特征A所属的用户特征库相应的权重因子为1.6,候选子特征A相应的出现频次为50,候选子特征B所属的用户特征库相应的权重因子为0.8,候选子特征B相应的出现频次为64,则候选子特征A相应的采样概率为0.5%*50*1.6=40%,候选子特征B相应的采样概率为0.5%*64*0.8=25.6%。
需要说明的是,候选子特征相应的采样概率的计算方式并不限定,可以根据用户需要进行设置。
在本实施例中,分别获取各个候选子特征在实时特征库中相应的出现频次,根据预设概率和各个候选子特征相应的出现频次,可以准确计算得到各个候选子特征相应的采样概率。并且,出现频次低的候选子特征,相应的采样概率低,推荐模型在采用该出现频次低的候选子特征进行训练学习时,更新得到的模型参数的置信度低,因此,过滤参数值小于概率阈值的采样概率相应的候选子特征,根据过滤候选子特征之后的样本用户数据和样本推荐对象数据,可以生成更准确的模型更新样本特征,以更准确地实时更新推荐模型,更新得到的推荐模型可以更准确进行实时推荐。
图5为一个实施例中各候选子特征的出现频次的分布图。例如,在实时特征库中出现频次为1次的候选子特征占所有候选子特征的比例为0.41,在实时特征库中出现频次为2次的候选子特征占所有候选子特征的比例为0.13,在实时特征库中出现频次为5次的候选子特征占所有候选子特征的比例为0.05。从图5可知,各候选子特征的出现频次分布呈长尾分布,出现频次小于等于3的候选子特征占所有候选子特征超过了50%。然而,出现频次低的候选子特征对于更新推荐模型的模型参数的作用很小,可以过滤出现频次低的候选子特征,从而实现了推荐模型的稀疏化处理,持续对模型参数进行稀疏化处理,降低了推荐模型中模型参数的复杂度,并且降低了推荐模型的内存空间的消耗。
在一个实施例中,如图6所示,将模型更新样本特征输入推荐模型,以实时更新推荐模型,包括:
步骤602,将模型更新样本特征分发给至少两个训练线程;至少两个训练线程共享推荐模型。
线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一个进程中可以并发多个线程,每条线程并行执行不同的任务。训练线程是对推荐模型进行训练,从而对推荐模型进行更新的线程。
可以理解的是,至少两个训练线程共享推荐模型,指的是至少两个训练线程中每个训练线程均对同一个推荐模型进行更新。
可选地,服务器可以将模型更新样本特征平均分发给至少两个训练线程,也可以将模型更新样本特征按照各个线程预设的数量分发给至少两个训练线程。
步骤604,在每个训练线程中,根据接收的模型更新样本特征对推荐模型的模型参数进行局部更新;不同的训练线程在同一时刻更新的模型参数不同。
在每个训练线程中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,根据接收的模型更新样本特征局部稀疏化符合模型稀疏化条件的模型参数,即对推荐模型的模型参数进行局部更新。
服务器对每个模型参数设置一个锁功能,可以控制不同的训练线程在同一时刻更新的模型参数不同。例如,在同一时刻,训练线程1可以对模型参数A进行更新,训练线程2可以对模型参数B进行更新,训练线程3可以对模型参数C进行更新,既可以提高对推荐模型进行更新的速率,也可以避免多个训练线程对推荐模型的模型参数进行更新时造成的混乱,提高对推荐模型进行更新的准确性。
可实施地,每个训练线程可以固定地更新某个或者某些模型参数,也可动态地更新不同的模型参数,只要满足不同的训练线程在同一时刻更新的模型参数不同,或者一个模型参数在同一时刻只被一个训练线程更新即可。
步骤606,根据每个训练线程更新后的模型参数得到更新的推荐模型。
当至少两个训练线程对模型参数均更新完成之后,服务器获取各个训练线程更新之后的模型参数,从而生成更新的推荐模型。
在一种实施方式中,当各个训练线程对模型参数的更新时长达到指定时长,停止进行更新,得到各个训练线程更新后的模型参数,从而生成更新的推荐模型。
在另一种实施方式中,当各个训练线程对模型参数的更新次数达到指定次数,停止进行更新,得到各个训练线程更新后的模型参数,从而生成更新的推荐模型。
在本实施例中,将模型更新样本特征分发给至少两个训练线程,通过至少两个训练线程对推荐模型的模型参数进行局部更新,可以提高对推荐模型进行更新的效率。并且,不同的训练线程在同一时刻更新的模型参数不同,可以避免多个训练线程对推荐模型的模型参数进行更新时的混乱,提高对推荐模型进行更新的准确性。
在一个实施例中,将模型更新样本特征分发给至少两个训练线程之前,还包括:将模型更新样本特征写入队列中;通过读取线程从队列中流式读取模型更新样本特征;将模型更新样本特征分发给至少两个训练线程,包括:通过读取线程将读取的模型更新样本特征分发给至少两个训练线程。
队列是一种线性存储结构。服务器获取到模型更新样本特征后,将模型更新样本特征按照获取的先后顺序写入队列中。
读取线程指的是从队列中读取数据的线程。读取线程可以是TrainReader线程。通过TrainReader线程从队列中流式读取模型更新样本特征。
在另一个实施例中,队列还可以包括消息队列和内存队列;服务器将模型更新样本特征写入消息队列中;在程序中,实时从消息队列中获取模型更新样本特征,再将模型更新样本特征写入内存队列中;通过读取线程从内存队列中流式读取模型更新样本特征。
在本实施例中,将模型更新样本特征写入队列中,通过读取线程从队列中流式读取模型更新样本特征,通过读取线程将读取的模型更新样本特征分发给至少两个训练线程,实时地进行流式读取模型更新样本特征,可以提高获取更新样本特征的时效性,从而提高对推荐模型进行更新的时效性。
在一个实施例中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数,包括:当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。
模型稀疏化条件可以根据需要进行设置。例如,模型稀疏化条件可以是子特征相应的权重参数小于权重下限,最后更新时刻与当前时刻的时间间隔大于预设间隔,模型更新样本特征的数据达到指定数量,推荐模型内剩余的内存空间小于指定阈值,等等。
在一种实施方式中,当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,可以将模型参数的参数值置0,实现对模型参数进行稀疏化处理。
在另一种实施方式中,当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,可以过滤该符合模型稀疏化条件的模型参数,实现对模型参数进行稀疏化处理。
在另一种实施方式中,当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,可以确定符合模型稀疏化条件的模型参数所属的子特征,去除该子特征,实现对模型参数进行稀疏化处理。
需要说明的是,当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,对符合模型稀疏化条件的模型参数进行局部稀疏化的具体方式并不限定,可以根据需要进行设置。
在一个实施例中,子特征相应的模型参数包括权重参数和隐向量参数。如图7所示,当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数,包括:
步骤702,当模型更新样本特征中的子特征相应的权重参数的参数值趋近或者达到权重下限时,判定子特征相应的模型参数的参数值符合模型稀疏化条件。
权重参数是表示该子特征的权重的参数。子特征的权重参数的参数值越大,表示该子特征越重要,该子特征对于推荐模型学习如何推荐起到的作用越大。子特征的权重参数的参数值越小,表示该子特征越不重要,该子特征对于推荐模型学习如何推荐起到的作用越小。
子特征相应的权重参数的参数值趋近权重下限,表示权重参数的参数值与权重下限之间的差值在很小的范围内。子特征相应的权重参数的参数值达到权重下限,表示权重参数的参数值与权重下限一致。
权重下限可以根据需要进行设置。权重下限可以设置为一个较小的值,例如0或者0.01等。
当模型更新样本特征中的子特征相应的权重参数的参数值趋近或者达到权重下限时,表示该子特征不重要,可以判定子特征相应的模型参数的参数符合模型稀疏化条件。
步骤704,将子特征相应的隐向量参数的参数值,更新至与子特征相应的权重参数的参数值一致。
当模型更新样本特征中的子特征相应的权重参数的参数值趋近或者达到权重下限时,表示该子特征不重要,则子特征相应的隐向量也不重要,可以将子特征相应的隐向量参数的参数值,更新至与子特征相应的权重参数的参数值一致。
例如,模型更新样本特征中的子特征相应的权重参数的参数值为0,权重下限为0,该子特征相应的权重参数的参数值达到权重下限,则判定该子特征相应的模型参数的参数值符合模型稀疏化条件,将子特征相应的隐向量参数的参数值更新至0,即更新至与子特征相应的权重参数的参数值一致。
又如,模型更新样本特征中的子特征相应的权重参数的参数值为0.0001,权重下限为0,该子特征相应的权重参数的参数值趋近权重下限,则判定该子特征相应的模型参数的参数值符合模型稀疏化条件,将子特征相应的隐向量参数的参数值更新至0.0001,即更新至与子特征相应的权重参数的参数值一致。
在本实施例中,当模型更新样本特征中的子特征相应的权重参数的参数值趋近或者达到权重下限时,判定子特征相应的模型参数的参数值符合模型稀疏化条件,将子特征相应的隐向量参数的参数值,更新至与子特征相应的权重参数的参数值一致,可以在实时更新推荐模型过程中,持续对模型参数进行稀疏化处理,降低了推荐模型中模型参数的复杂度,并且降低了推荐模型的内存空间的消耗。
可实施地,当模型更新样本特征中的子特征相应的权重参数的参数值达到权重下限时,服务器判定子特征相应的模型参数的参数值符合模型稀疏化条件,可将子特征相应的隐向量参数的参数值,更新至与子特征相应的权重参数的参数值一致,即更新为权重下限。当模型更新样本特征中的子特征相应的权重参数的参数值趋近权重下限时,服务器判定子特征相应的模型参数的参数值符合模型稀疏化条件,可将将子特征相应的隐向量参数的参数值,更新至与子特征相应的权重参数的参数值一致,也可将子特征相应的隐向量参数的参数值与子特征相应的权重参数的参数值均更新为权重下限。
图8为一个实施例中降低推荐模型复杂度的不同方式的对比图。在传统技术中,采用SGD(Stochastic gradient descent,随机梯度下降算法)+L1方式能够将特征(f1、f2、f3)大多数的权重参数ω接近0,但是让特征的隐向量参数ν等于0的概率几乎不可能;采用FTRL(Follow-the-regularized-Leader)方式,特征的权重参数ω如果为0,可以删掉,但特征的隐向量参数ν一旦有存在一个子参数不为0,整个隐向量参数ν将无法被删除。因此,采用FTRL方法稀疏化推荐模型时,往往只能稀疏化特征的权重参数ω,而隐藏向量参数ν将很难被删除掉。
而本申请采用的是针对推荐模型的FTRL优化方式,当模型更新样本特征中的子特征相应的权重参数ω的参数值达到0时,表明该子特征不重要,判定子特征相应的模型参数ω的参数值符合模型稀疏化条件;将子特征相应的隐向量参数ν的参数值,更新至与子特征相应的权重参数ω的参数值一致,即将隐向量参数ν的参数值也更新至0,实现了对子特征的模型参数的稀疏化处理,可以降低推荐模型的复杂度,从而降低了推荐模型的内存空间的消耗。
在一个实施例中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数,包括:当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。
模型稀疏化条件可以根据需要进行设置。例如,模型稀疏化条件可以是对模型参数的更新时间进行约束的约束条件。比如,子特征相应的模型参数的更新时刻晚于指定时刻,子特征相应的模型参数的最后更新时刻与当前时刻之间的时间间隔大于预设间隔等等。
服务器在对模型更新样本特征中的子特征相应的模型参数进行更新时,可以记录当前的更新时间,当该更新时间符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数,可以在实时更新推荐模型过程中,持续对模型参数进行稀疏化处理,这样可以降低推荐模型中模型参数的复杂度,进而降低推荐模型对内存空间的消耗。
在一种实施方式中,当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,可以将模型参数的参数值设置为预设数值,比如将模型参数的参数值置0,实现对模型参数进行稀疏化处理。
在另一种实施方式中,当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,可以过滤该符合模型稀疏化条件的模型参数,实现对模型参数进行稀疏化处理。
在另一种实施方式中,当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,可以确定符合模型稀疏化条件的模型参数所属的子特征,去除该子特征,实现对模型参数进行稀疏化处理。
需要说明的是,当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,对符合模型稀疏化条件的模型参数进行局部稀疏化的具体方式并不限定,可以根据需要进行设置。
在一个实施例中,如图9所示,当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数,包括:
步骤902,获取模型更新样本特征中的子特征相应的模型参数的最后更新时刻。
子特征相应的模型参数的最后更新时刻,指的是该子特征相应的模型参数最后一次更新的时刻。
服务器每次对模型更新样本特征中的子特征相应的模型参数进行更新时,会记录当前的更新时刻,并将当前的更新时刻进行存储,也可以将当前的更新时刻替换上一次的更新时刻。
在一种实施方式中,服务器每间隔预设时长遍历各模型更新样本特征中的子特征相应的模型参数,获取模型更新样本特征中的子特征相应的模型参数的最后更新时刻。
在另一种实施方式中,当服务器保存更新完成的推荐模型时,遍历各模型更新样本特征中的子特征相应的模型参数,获取模型更新样本特征中的子特征相应的模型参数的最后更新时刻。
步骤904,当最后更新时刻与当前时刻的时间间隔大于预设间隔时,判定子特征相应的模型参数的更新时间符合模型稀疏化条件。
预设间隔可以根据需要进行设置。例如,预设间隔可以是3分钟,可以是20分钟,24小时等。
服务器获取当前时刻,计算最后更新时刻与当前时刻之间的时间间隔,当时间间隔大于预设间隔时,表示该子特征相应的模型参数的最后更新时刻距离当前时刻较久,该子特征可能已经失效或者过时,则判定该子特征相应的模型参数的更新时间符合模型稀疏化条件。
步骤906,删除子特征相应的模型参数。
服务器确定符合模型稀疏化条件的子特征相应的模型参数,删除该子特征相应的模型参数,即对推荐模型的模型参数进行稀疏化处理,可以降低推荐模型中模型参数的复杂度,并且降低了推荐模型的内存空间的消耗。
在一个实施例中,模型更新样本特征的数量为多个;删除子特征相应的模型参数之后,上述方法还包括:将删除的模型参数相应的子特征确定为淘汰对象;在尚未输入推荐模型的模型更新样本特征中删除淘汰对象。
淘汰对象指的是模型参数的更新时间符合模型稀疏化条件的子特征。
可以理解的是,子特征相应的模型参数的最后更新时刻与当前时刻的时间间隔大于预设间隔,该子特征相应的模型参数可能已经过时,该子特征也可能已经过时,则删除子特征相应的模型参数,并将删除的模型参数相应的子特征确定为淘汰对象,在尚未输入推荐模型的模型更新样本特征中删除淘汰对象,可以对推荐模型的模型参数进行稀疏化处理,降低推荐模型中模型参数的复杂度,并且降低了推荐模型的内存空间的消耗。
服务器对推荐模型进行实时更新,在实时更新的过程中,不断地获取模型更新样本特征,而当判定子特征相应的模型参数的更新时间符合模型稀疏化条件,该子特征可能已经过时,则删除该子特征,避免在下次对推荐模型进行更新时,模型更新样本特征中包括有过时的子特征而导致对推荐模型更新不准确的问题,可以实时对推荐模型进行更新,提高对推荐模型进行更新的时效性,也提高对推荐模型进行更新的准确性。
可以理解的是,在物品推荐场景中,实时性非常高,随时都有新的物品的特征产生,同时也有大量的物品的特征随着时间的推移而不再合适作为推荐模型的训练数据,将该物品的特征作为淘汰对象,淘汰对象在更新推荐模型的过程中被采用的概率很低,可以将淘汰对象删除。
在一个实施例中,在尚未输入推荐模型的模型更新样本特征中删除淘汰对象之后,还包括:删除淘汰对象相应的模型更新样本特征。
可以理解的是,子特征相应的模型参数的最后更新时刻与当前时刻的时间间隔大于预设间隔,该子特征相应的模型参数可能已经过时,该子特征也可能已经过时,该子特征相应的模型更新样本特征、即该子特征所属的模型更新样本特征也可能已经过时,则删除淘汰对象相应的模型更新样本特征,也就是删除了模型更新样本特征中所包括的模型参数,可以对推荐模型的模型参数进行稀疏化处理,降低推荐模型中模型参数的复杂度,并且降低了推荐模型的内存空间的消耗。
在一个实施例中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数,包括:当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数;当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。
在一个实施例中,子特征相应的模型参数包括权重参数和隐向量参数;当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数,包括:当模型更新样本特征中的子特征相应的权重参数的参数值趋近或者达到权重下限时,判定子特征相应的模型参数的参数值符合模型稀疏化条件;将子特征相应的隐向量参数的参数值,更新至与子特征相应的权重参数的参数值一致。
在一个实施例中,当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数,包括:获取模型更新样本特征中的子特征相应的模型参数的最后更新时刻;当最后更新时刻与当前时刻的时间间隔大于预设间隔时,判定子特征相应的模型参数的更新时间符合模型稀疏化条件;删除子特征相应的模型参数。
在一个实施例中,模型更新样本特征的数量为多个;删除子特征相应的模型参数之后,方法还包括:将删除的模型参数相应的子特征确定为淘汰对象;在尚未输入推荐模型的模型更新样本特征中删除淘汰对象。
在一个实施例中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数之后,方法还包括:每当实时更新推荐模型的计时时长达到预设时长时,保存当前时刻更新得到的推荐模型,并重置计时时长后继续实时更新推荐模型;采用保存时间最新的推荐模型实时进行媒体对象的推荐。
预设时长可以根据需要进行设置。例如,预设时长可以为1分钟,也可以为30秒,不限于此。
每当实时更新推荐模型的计时时长达到预设时长时,保存当前时刻更新得到的推荐模型,并重置计时时长,即重新开始对推荐模型的更新进行计时,继续实时更新推荐模型。
服务器采用保存时间最新的推荐模型实时进行媒体对象的推荐,可以通过保存时间最新的推荐模型,更准确进行媒体对象的推荐。
在一个实施例中,在推荐线程中采用保存时间最新的推荐模型实时进行媒体对象的推荐。推荐线程是实时进行媒体对象的推荐的线程。服务器可以预先开辟推荐线程,通过推荐线程获取保存时间最新的推荐模型,采用保存时间最新的推荐模型实时进行媒体对象的推荐。
在传统技术中,对模型进行训练或者更新之后进行应用,在应用过程中无法对模型继续进行训练或者更新。而在本实施例中,通过开辟新的推荐线程,使得推荐模型能够在推荐线程中进行媒体对象的推荐,同时可以对推荐模型不间断的实时更新,提高了推荐模型在应用和训练或者更新之间协同的效率。
在一个实施例中,如图10所示,采用保存时间最新的推荐模型实时进行媒体对象的推荐,包括:
步骤1002,获取与目标用户标识对应的目标用户数据以及与多个候选推荐对象标识分别对应的候选推荐对象数据;候选推荐对象数据包括与候选媒体对象相关的数据。
目标用户标识指的是目标用户的标识。目标用户标识与目标用户数据一一对应。候选推荐对象标识指的是候选推荐对象的标识。候选推荐对象标识与候选推荐对象数据一一对应。
目标用户数据指的是目标用户的数据。目标用户数据如用户标识、用户的属性信息、用户观看的多媒体数据、用户点赞的多媒体数据、用户转发的多媒体数据、用户收藏的多媒体数据等。其中,用户的属性信息可以是用户的年龄、性别、所在位置、兴趣爱好等,多媒体数据可以是文章、视频等。
候选推荐对象数据指的是候选推荐对象的数据。候选推荐对象指的是候选的用于推荐至目标用户终端的对象。推荐对象可以是文章、视频、待下载的文件、广告等。候选推荐对象数据可以是候选推荐对象的标识、候选推荐对象本身的数据以及候选推荐对象与其他用户之间的互动数据等。其中,推荐对象与其他用户之间的互动数据具体可以是候选推荐对象被观看的次数、候选推荐对象被下载的次数、候选推荐对象被转发的次数、候选推荐对象被收藏的次数、候选推荐对象被点赞的数据、其他用户对候选推荐对象的评论信息,等等。
候选媒体对象数据包括与候选媒体对象相关的数据。候选媒体对象指的是候选的可用于推荐至用户终端的媒体对象。候选媒体对象相关的数据可以是候选媒体对象的标识、候选媒体对象本身的数据以及候选媒体对象与其他用户之间的互动数据等。其中,候选媒体对象与其他用户之间的互动数据具体可以是候选媒体对象被观看的次数、候选媒体对象被下载的次数、候选媒体对象被转发的次数、候选媒体对象被收藏的次数、候选媒体对象被点赞的数据、其他用户对候选媒体对象的评论信息,等等。
步骤1004,根据目标用户数据和各候选推荐对象数据,分别生成各候选推荐对象数据相应的模型输入特征。
在一种实施方式中,服务器将目标用户数据和各候选推荐对象数据进行拼接,分别生成各候选推荐对象数据相应的模型输入特征。拼接的方式并不限定,例如可以在目标用户数据之后拼接候选推荐对象数据,也可以在候选推荐对象数据之后拼接目标用户数据。
在另一种实施方式中,服务器将目标用户数据和各候选推荐对象数据进行映射,分别生成各候选推荐对象数据相应的模型输入特征。
步骤1006,将各模型输入特征分别输入保存时间最新的推荐模型,得到各模型输入特征相应的推荐概率。
服务器将各模型输入特征分别输入保存时间最新的推荐模型,通过该推荐模型可以输出各模型输入特征相应的推荐概率。推荐概率指的是模型输入特征被推荐的概率。推荐概率越高,表示模型输入特征被推荐的可能性越大,模型输入特征相应的候选推荐对象推荐至用户终端时,用户与该推荐对象进行交互的可能性越大。其中,用户与推荐对象进行交互,可以是用户点击、浏览、下载、点赞、转发、收藏该推荐对象。
步骤1008,根据各模型输入特征相应的推荐概率,对候选推荐对象标识所对应的候选媒体对象进行排序。
候选推荐对象标识所对应的候选推荐对象可以是文章、视频、待下载文件、广告等。
服务器根据各模型输入特征相应的推荐概率,对模型输入特征相应的候选推荐对象标识所对应的候选媒体对象进行排序。
在一种实施方式中,服务器可以按照模型输入特征相应的推荐概率从大到小的顺序,对模型输入特征相应的候选推荐对象标识所对应的候选媒体对象进行排序。
在另一种实施方式中,服务器可以按照模型输入特征相应的推荐概率从小到大的顺序,对模型输入特征相应的候选推荐对象标识所对应的候选媒体对象进行排序。
在一个实施例中,排序包括召回和精排。召回指的是精度低的粗排序,精排指的是精度高的排序。
步骤1010,将排序后的候选媒体对象推送至目标用户标识对应的终端。
在一种实施方式中,服务器按照排序后的候选媒体对象,将各候选媒体对象推送至目标用户标识对应的终端。例如,服务器按照排序后的各个候选视频,将各候选视频推送至目标用户标识对应的终端。
在另一种实施方式中,服务器按照排序后的候选媒体对象,将推荐概率最高的指定数量的候选媒体对象推送至目标用户标识对应的终端。例如,服务器按照排序后的待下载APP(Application,应用程序),将推荐概率最高的一个待下载APP推送至目标用户标识对应的终端。
在本实施例中,采用保存时间最新的推荐模型可以得到更准确的各模型输入特征相应的推荐概率,从而更准确将各候选媒体对象进行排序,将候选媒体对象更准确推送至目标用户标识对应的终端。
在一个实施例中,上述方法还包括:获取采用保存时间最新的推荐模型进行实时推荐的推荐结果;按照预设的评估指标,基于推荐结果对实时推荐采用的推荐模型进行评估,得到评估结果。
评估指标是衡量推荐模型的性能的目标参数。评估指标可以包括auc、gauc、acc、precision、recall、f1。其中,auc(area under curve)直观地反映了ROC(receiveroperating characteristic,接受者操作特性)曲线表达的分类能力;gauc(group auc)评估个性化评估模型的效果;acc表示准确率;precision表示精确率;recall表示召回率;f1是precision和recall的综合平均,即调和平均数。
服务器采用保存时间最新的推荐模型实时进行媒体对象的推荐,获取对该媒体对象进行响应的数据,将响应的数据汇总生成推荐结果。其中,响应的数据可以是媒体对象的点击次数、观看时长、下载次数、点赞次数、收藏次数等。
服务器按照预设的评估指标,基于推荐结果对实时推荐采用的推荐模型进行评估,得到评估结果。评估结果指的是对实时推荐采用的推荐模型进行评估的结果。通过评估结果可以获取到推荐模型更新的效果。例如,对实时推荐采用的推荐模型A的评估结果为95分,表示该推荐模型A进行实时推荐的效果好,该推荐模型A更新的效果好,对该推荐模型A的模型参数更新准确。又如,对实时推荐采用的推荐模型B的评估结果为60分,表示该推荐模型B进行实时推荐的效果一般,该推荐模型更新的效果一般、对该推荐模型B的模型参数更新的准确性低。
在本实施例中,获取采用保存时间最新的推荐模型进行实时推荐的推荐结果;按照预设的评估指标,基于推荐结果对实时推荐采用的推荐模型进行评估,得到评估结果,可以准确评估出推荐模型进行实时推荐的效果,从而可以在后续对推荐模型进行改进。
如图11所示为一个实施例中在线流式学习的框架图。在线流式学习框架包括数据准备模块、模型更新模块、在线评估模块和在线推荐模块。其中,数据准备模块负责的是模型更新模块和在线评估模块的数据提供。首先,服务器实时采集用户在视频号中点赞、转发、收藏的数据,将其作为数据源,数据源中包括样本用户数据和样本推荐对象数据。服务器通过key-value操作将样本用户数据实时存储在用户特征库中,通过key-value操作将样本推荐对象数据实时存储在推荐对象特征库中。其中,用户特征库和推荐对象特征库包括于实时特征库。
服务器从用户特征库中实时采集多个样本用户标识分别相应的样本用户数据,以及多个样本推荐对象标识分别相应的样本推荐对象数据,根据样本用户数据和样本推荐对象数据,生成模型更新样本特征。服务器将模型更新样本数据写入到消息队列中。具体地,服务器先将模型更新样本数据写入到逻辑层的入队前端服务,再从逻辑层的入队前端服务写入到数据层中的分布式文件系统中。
服务器可从消息队列中获取模型更新样本特征,并将模型更新样本特征压入内存队列中。内存队列中的模型更新样本特征可以提供给模型更新模块和在线评估模块。
模型更新模块是一个支持多线程的训练模块。通过读取线程(TrainReader线程)从内存队列中读取模型更新样本特征,然后分发给多个训练线程,不同的训练线程在同一时刻更新的模型参数不同;根据每个训练线程更新后的模型参数得到更新的推荐模型。其中,推荐模型采用FTRL优化器进行优化,对推荐模型中的模型参数进行稀疏化处理,可以降低推荐模型的复杂度,从而降低推荐模型的内存空间的消耗。
服务器监控实时更新推荐模型的计时时长,当计时时长大于1min时,输出更新完成的推荐模型。在输出更新完成的推荐模型时,可以将该更新完成的推荐模型存储在模型库中,并将该更新完成的推荐模型导入模型队列中。
在线推荐模块可以从模型库中获取保存时间最新的推荐模型,将获取的各候选推荐对象数据相应的模型输入特征输入保存时间最新的推荐模型,得到各模型输入特征相应的推荐概率;其中,候选推荐对象数据包括与候选媒体对象相关的数据;根据各模型输入特征相应的推荐概率,对候选推荐对象标识所对应的候选推荐对象进行召回和精排;将排序后的候选推荐对象推送至目标用户标识对应的终端。
在线评估模块监听模型队列中是否存在待评估的推荐模型,如果存在,则将待评估的推荐模型从模型队列中弹出,并实时的从内存队列中获取评估数据集。评估数据集是该待评估的推荐模型进行实时推荐后获取到的响应数据,通过该评估数据集可以得到推荐结果;按照预设的评估指标,基于推荐结果对实时推荐采用的推荐模型进行评估,得到评估结果。其中,评估指标包括auc、gauc、topkctr、acc、precision、recall、f1。
推荐模型的评估结果实时反馈给监控平台,并实时写入到分布式文件系统的模型评估结果库中。
应该理解的是,虽然图2至图4、图6、图7、图9和图10的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至图4、图6、图7、图9和图10中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图12所示,提供了一种推荐模型的更新装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:实时获取模块1202、特征生成模块1204和模型更新模块1206,其中:
实时获取模块1202,用于实时获取样本用户数据和样本推荐对象数据;样本推荐对象数据包括与样本媒体对象相关的数据。
特征生成模块1204,用于根据样本用户数据和样本推荐对象数据,生成模型更新样本特征;模型更新样本特征包括至少两个特征维度的子特征。
模型更新模块1206,用于将模型更新样本特征输入推荐模型,以实时更新推荐模型;实时更新后的推荐模型用于实时进行媒体对象的推荐;其中,在实时更新推荐模型的过程中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。
上述推荐模型的更新装置,一方面实时获取样本用户数据和样本推荐对象数据来生成模型更新样本特征,能够及时捕获到线上的数据的变化,将模型更新样本特征输入推荐模型实时更新推荐模型,可以使得推荐模型持续在线更新,能够有效地保证推荐模型的时效性;进而在实时更新后的推荐模型用于实时进行媒体对象的推荐时,可以有效地保证推荐的媒体对象的时效性。另一方面,由于模型更新样本包括至少两个特征维度的子特征,那么在实时更新推荐模型的过程中,当模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,可以局部稀疏化符合模型稀疏化条件的模型参数,这样可以在实时更新推荐模型过程中,持续对模型参数进行稀疏化处理,降低了推荐模型中模型参数的复杂度,避免推荐模型在长期运转(long running)下模型参数的快速膨胀,进而可以降低推荐模型的内存空间的消耗。
在一个实施例中,上述实时获取模块1202还用于实时采集多个样本用户标识分别相应的样本用户数据,以及多个样本推荐对象标识分别相应的样本推荐对象数据;将各样本用户数据与相应的样本用户标识对应存储至用户特征库,并将各样本推荐对象数据与相应的样本推荐对象标识存储至推荐对象特征库;用户特征库和推荐对象特征库包括于实时特征库;从实时特征库中实时获取样本用户数据和样本推荐对象数据。
在一个实施例中,样本用户数据包括至少一个特征维度的候选子特征,样本推荐对象数据包括至少一个特征维度的候选子特征,模型更新样本特征包括至少两个特征维度的目标子特征;上述特征生成模块1204还用于分别获取各个候选子特征相应的采样概率;采样概率的参数值表示相应候选子特征在更新推荐模型时被采用的概率;过滤参数值小于概率阈值的采样概率相应的候选子特征;根据过滤候选子特征之后的样本用户数据和样本推荐对象数据,生成模型更新样本特征。
在一个实施例中,样本用户数据与样本推荐对象数据获取自实时特征库;上述特征生成模块1204还用于分别获取各个候选子特征在实时特征库中相应的出现频次;根据预设概率和各个候选子特征相应的出现频次,计算得到各个候选子特征相应的采样概率。
在一个实施例中,上述模型更新模块1206还用于将模型更新样本特征分发给至少两个训练线程;至少两个训练线程共享推荐模型;在每个训练线程中,根据接收的模型更新样本特征对推荐模型的模型参数进行局部更新;不同的训练线程在同一时刻更新的模型参数不同;根据每个训练线程更新后的模型参数得到更新的推荐模型。
在一个实施例中,上述推荐模型的更新装置还包括读取模块,用于将模型更新样本特征写入队列中;通过读取线程从队列中流式读取模型更新样本特征;上述模型更新模块1206还用于通过读取线程将读取的模型更新样本特征分发给至少两个训练线程。
在一个实施例中,上述模型更新模块1206还用于当模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。
在一个实施例中,子特征相应的模型参数包括权重参数和隐向量参数;上述模型更新模块1206还用于当模型更新样本特征中的子特征相应的权重参数的参数值趋近或者达到权重下限时,判定子特征相应的模型参数的参数值符合模型稀疏化条件;将子特征相应的隐向量参数的参数值,更新至与子特征相应的权重参数的参数值一致。
在一个实施例中,上述模型更新模块1206还用于当模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,局部稀疏化符合模型稀疏化条件的模型参数。
在一个实施例中,上述模型更新模块1206还用于获取模型更新样本特征中的子特征相应的模型参数的最后更新时刻;当最后更新时刻与当前时刻的时间间隔大于预设间隔时,判定子特征相应的模型参数的更新时间符合模型稀疏化条件;删除子特征相应的模型参数。
在一个实施例中,模型更新样本特征的数量为多个;上述模型更新模块1206还用于将删除的模型参数相应的子特征确定为淘汰对象;在尚未输入推荐模型的模型更新样本特征中删除淘汰对象。
在一个实施例中,上述推荐模型的更新装置还包括推荐模块,用于每当实时更新推荐模型的计时时长达到预设时长时,保存当前时刻更新得到的推荐模型,并重置计时时长后继续实时更新推荐模型;采用保存时间最新的推荐模型实时进行媒体对象的推荐。
在一个实施例中,上述在线推荐模块还用于获取与目标用户标识对应的目标用户数据以及与多个候选推荐对象标识分别对应的候选推荐对象数据;候选推荐对象数据包括与候选媒体对象相关的数据;根据目标用户数据和各候选推荐对象数据,分别生成各候选推荐对象数据相应的模型输入特征;将各模型输入特征分别输入保存时间最新的推荐模型,得到各模型输入特征相应的推荐概率;根据各模型输入特征相应的推荐概率,对候选推荐对象标识所对应的候选媒体对象进行排序;将排序后的候选媒体对象推送至目标用户标识对应的终端。
在一个实施例中,上述推荐模型的更新装置还包括在线评估模块,用于获取采用保存时间最新的推荐模型进行实时推荐的推荐结果;按照预设的评估指标,基于推荐结果对实时推荐采用的推荐模型进行评估,得到评估结果。
关于推荐模型的更新装置的具体限定可以参见上文中对于推荐模型的更新方法的限定,在此不再赘述。上述推荐模型的更新装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图13所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储模型参数、样本用户数据、样本推荐数据、模型更新样本特征、样本用户标识、样本推荐对象标识等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种推荐模型的更新方法。
本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (15)
1.一种推荐模型的更新方法,其特征在于,所述方法包括:
实时获取样本用户数据和样本推荐对象数据;所述样本推荐对象数据包括与样本媒体对象相关的数据;
根据所述样本用户数据和所述样本推荐对象数据,生成模型更新样本特征;所述模型更新样本特征包括至少两个特征维度的子特征;
将所述模型更新样本特征输入推荐模型,以实时更新所述推荐模型;实时更新后的所述推荐模型用于实时进行媒体对象的推荐;其中,在实时更新所述推荐模型的过程中,当所述模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数。
2.根据权利要求1所述的方法,其特征在于,所述样本用户数据包括至少一个特征维度的候选子特征,所述样本推荐对象数据包括至少一个特征维度的候选子特征,所述模型更新样本特征包括至少两个特征维度的目标子特征;
所述根据所述样本用户数据和所述样本推荐对象数据,生成模型更新样本特征,包括:
分别获取各个所述候选子特征相应的采样概率;所述采样概率的参数值表示相应候选子特征在更新推荐模型时被采用的概率;
过滤参数值小于概率阈值的采样概率相应的候选子特征;
根据过滤候选子特征之后的所述样本用户数据和所述样本推荐对象数据,生成模型更新样本特征。
3.根据权利要求2所述的方法,其特征在于,所述样本用户数据与所述样本推荐对象数据获取自实时特征库;所述分别获取各个所述候选子特征相应的采样概率,包括:
分别获取各个所述候选子特征在所述实时特征库中相应的出现频次;
根据预设概率和各个所述候选子特征相应的出现频次,计算得到各个所述候选子特征相应的采样概率。
4.根据权利要求1所述的方法,其特征在于,所述将所述模型更新样本特征输入推荐模型,以实时更新所述推荐模型,包括:
将所述模型更新样本特征分发给至少两个训练线程;所述至少两个训练线程共享推荐模型;
在每个所述训练线程中,根据接收的所述模型更新样本特征对所述推荐模型的模型参数进行局部更新;不同的训练线程在同一时刻更新的模型参数不同;
根据每个所述训练线程更新后的模型参数得到更新的所述推荐模型。
5.根据权利要求1所述的方法,其特征在于,所述当所述模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数,包括:
当所述模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数。
6.根据权利要求5所述的方法,其特征在于,所述子特征相应的模型参数包括权重参数和隐向量参数;
所述当所述模型更新样本特征中的子特征相应的模型参数的参数值符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数,包括:
当所述模型更新样本特征中的子特征相应的权重参数的参数值趋近或者达到权重下限时,判定所述子特征相应的模型参数的参数值符合模型稀疏化条件;
将所述子特征相应的隐向量参数的参数值,更新至与所述子特征相应的权重参数的参数值一致。
7.根据权利要求1所述的方法,其特征在于,所述当所述模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数,包括:
当所述模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数。
8.根据权利要求7所述的方法,其特征在于,所述当所述模型更新样本特征中的子特征相应的模型参数的更新时间符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数,包括:
获取所述模型更新样本特征中的子特征相应的模型参数的最后更新时刻;
当所述最后更新时刻与当前时刻的时间间隔大于预设间隔时,判定所述子特征相应的模型参数的更新时间符合模型稀疏化条件;
删除所述子特征相应的模型参数。
9.根据权利要求8所述的方法,其特征在于,所述模型更新样本特征的数量为多个;所述删除所述子特征相应的模型参数之后,所述方法还包括:
将删除的所述模型参数相应的子特征确定为淘汰对象;
在尚未输入所述推荐模型的模型更新样本特征中删除所述淘汰对象。
10.根据权利要求1所述的方法,其特征在于,所述当所述模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数之后,所述方法还包括:
每当实时更新所述推荐模型的计时时长达到预设时长时,保存当前时刻更新得到的推荐模型,并重置所述计时时长后继续实时更新所述推荐模型;
采用保存时间最新的推荐模型实时进行媒体对象的推荐。
11.根据权利要求10所述的方法,其特征在于,所述采用保存时间最新的推荐模型实时进行媒体对象的推荐,包括:
获取与目标用户标识对应的目标用户数据以及与多个候选推荐对象标识分别对应的候选推荐对象数据;所述候选推荐对象数据包括与候选媒体对象相关的数据;
根据所述目标用户数据和各所述候选推荐对象数据,分别生成各所述候选推荐对象数据相应的模型输入特征;
将各所述模型输入特征分别输入保存时间最新的推荐模型,得到各所述模型输入特征相应的推荐概率;
根据各所述模型输入特征相应的推荐概率,对所述候选推荐对象标识所对应的候选媒体对象进行排序;
将排序后的候选媒体对象推送至所述目标用户标识对应的终端。
12.根据权利要求10所述的方法,其特征在于,所述方法还包括:
获取采用保存时间最新的推荐模型进行实时推荐的推荐结果;
按照预设的评估指标,基于所述推荐结果对实时推荐采用的推荐模型进行评估,得到评估结果。
13.一种推荐模型的更新装置,其特征在于,所述装置包括:
实时获取模块,用于实时获取样本用户数据和样本推荐对象数据;所述样本推荐对象数据包括与所述样本媒体对象相关的数据;
特征生成模块,用于根据所述样本用户数据和所述样本推荐对象数据,生成模型更新样本特征;所述模型更新样本特征包括至少两个特征维度的子特征;
模型更新模块,用于将所述模型更新样本特征输入推荐模型,以实时更新所述推荐模型;实时更新后的所述推荐模型用于实时进行媒体对象的推荐;其中,在实时更新所述推荐模型的过程中,当所述模型更新样本特征中的子特征相应的模型参数符合模型稀疏化条件时,局部稀疏化符合所述模型稀疏化条件的模型参数。
14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法的步骤。
15.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法的步骤。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011219021.4A CN114443671A (zh) | 2020-11-04 | 2020-11-04 | 推荐模型的更新方法、装置、计算机设备和存储介质 |
PCT/CN2021/123009 WO2022095661A1 (zh) | 2020-11-04 | 2021-10-11 | 推荐模型的更新方法、装置、计算机设备和存储介质 |
US17/948,977 US20230069999A1 (en) | 2020-11-04 | 2022-09-20 | Method and apparatus for updating recommendation model, computer device and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011219021.4A CN114443671A (zh) | 2020-11-04 | 2020-11-04 | 推荐模型的更新方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114443671A true CN114443671A (zh) | 2022-05-06 |
Family
ID=81361940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011219021.4A Pending CN114443671A (zh) | 2020-11-04 | 2020-11-04 | 推荐模型的更新方法、装置、计算机设备和存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230069999A1 (zh) |
CN (1) | CN114443671A (zh) |
WO (1) | WO2022095661A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115062184B (zh) * | 2022-06-29 | 2024-05-28 | 四川长虹电器股份有限公司 | 一种语音召回场景下的影片排序方法 |
CN117194791A (zh) * | 2023-09-18 | 2023-12-08 | 上海鱼尔网络科技有限公司 | 用于推荐算法的采样方法、装置、计算机设备和存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10235403B2 (en) * | 2014-07-08 | 2019-03-19 | Palo Alto Research Center Incorporated | Parallel collective matrix factorization framework for big data |
CN110321422B (zh) * | 2018-03-28 | 2023-04-14 | 腾讯科技(深圳)有限公司 | 在线训练模型的方法、推送方法、装置以及设备 |
CN109635186A (zh) * | 2018-11-16 | 2019-04-16 | 华南理工大学 | 一种基于Lambda架构的实时推荐方法 |
CN110149541B (zh) * | 2019-04-23 | 2021-08-03 | 腾讯科技(深圳)有限公司 | 视频推荐方法、装置、计算机设备及存储介质 |
-
2020
- 2020-11-04 CN CN202011219021.4A patent/CN114443671A/zh active Pending
-
2021
- 2021-10-11 WO PCT/CN2021/123009 patent/WO2022095661A1/zh active Application Filing
-
2022
- 2022-09-20 US US17/948,977 patent/US20230069999A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022095661A1 (zh) | 2022-05-12 |
US20230069999A1 (en) | 2023-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297848B (zh) | 基于联邦学习的推荐模型训练方法、终端及存储介质 | |
TWI702844B (zh) | 用戶特徵的生成方法、裝置、設備及儲存介質 | |
CN109919316B (zh) | 获取网络表示学习向量的方法、装置和设备及存储介质 | |
CN110263265B (zh) | 用户标签生成方法、装置、存储介质和计算机设备 | |
US10152479B1 (en) | Selecting representative media items based on match information | |
US20180268337A1 (en) | User objective assistance technologies | |
CN110543598B (zh) | 信息推荐方法、装置及终端 | |
CN111191092B (zh) | 标签确定方法和标签确定模型训练方法 | |
CN109511015B (zh) | 多媒体资源推荐方法、装置、存储介质及设备 | |
CN111597449B (zh) | 用于搜索的候选词构建方法、装置、电子设备及可读介质 | |
CN110941764A (zh) | 对象推荐方法、装置、计算机设备和存储介质 | |
CN111651671B (zh) | 用户对象推荐方法、装置、计算机设备和存储介质 | |
CN107885796A (zh) | 信息推荐方法及装置、设备 | |
CN111126495B (zh) | 模型训练方法、信息预测方法、装置、存储介质及设备 | |
CN111783810B (zh) | 用于确定用户的属性信息的方法和装置 | |
CN111858969B (zh) | 多媒体数据推荐方法、装置、计算机设备和存储介质 | |
US20230069999A1 (en) | Method and apparatus for updating recommendation model, computer device and storage medium | |
CN111611488A (zh) | 基于人工智能的信息推荐方法、装置、电子设备 | |
CN110175264A (zh) | 视频用户画像的构建方法、服务器及计算机可读存储介质 | |
CN115017400A (zh) | 一种应用app推荐方法及电子设备 | |
CN113836388A (zh) | 信息推荐方法、装置、服务器及存储介质 | |
CN113535939A (zh) | 文本处理方法和装置、电子设备以及计算机可读存储介质 | |
CN116975359A (zh) | 资源处理方法、资源推荐方法、装置和计算机设备 | |
CN114357242A (zh) | 基于召回模型的训练评估方法及装置、设备、存储介质 | |
CN112905892A (zh) | 应用于用户画像挖掘的大数据处理方法及大数据服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40068123 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |