CN116383458A - 信息推送的方法及装置 - Google Patents
信息推送的方法及装置 Download PDFInfo
- Publication number
- CN116383458A CN116383458A CN202310650591.6A CN202310650591A CN116383458A CN 116383458 A CN116383458 A CN 116383458A CN 202310650591 A CN202310650591 A CN 202310650591A CN 116383458 A CN116383458 A CN 116383458A
- Authority
- CN
- China
- Prior art keywords
- information
- candidate information
- coarse
- piece
- fine
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 230000008569 process Effects 0.000 claims abstract description 37
- 238000012545 processing Methods 0.000 claims abstract description 20
- 239000013598 vector Substances 0.000 claims description 168
- 238000012549 training Methods 0.000 claims description 30
- 238000012163 sequencing technique Methods 0.000 claims description 14
- 230000004927 fusion Effects 0.000 claims description 6
- 238000012935 Averaging Methods 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 4
- 238000013145 classification model Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 3
- 238000011176 pooling Methods 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 238000012417 linear regression Methods 0.000 claims description 2
- 238000001914 filtration Methods 0.000 abstract description 8
- 238000004364 calculation method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000012512 characterization method Methods 0.000 description 6
- 238000000605 extraction Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 241001474374 Blennius Species 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 239000002775 capsule Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000004438 eyesight Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9035—Filtering based on additional data, e.g. user or group profiles
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供一种信息推送的方法及装置,在信息推送的排序过程中将用于粗排的第一子网络和用于精排的第二子网络同时连接在嵌入模块之后,并增加动态选择模块完成第一子网络至第二子网络的连接,从而,在信息推送过程中在一个模型架构下完成信息排序,可以减少模型调用次数,且嵌入模块的嵌入结果可以由第一子网络和第二子网络共用。在信息推送过程中,先由第一子网络对候选信息进行粗排过滤,从而经由动态选择模块选择不固定条数的候选信息作为优选信息进行精排打分,之后,将优选信息的精排打分和其他候选信息的粗排打分结果一起进行融合排序,以按照打分结果进行信息推送。如此,可以提高信息推送的处理效率。
Description
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及信息推送的方法及装置。
背景技术
信息推荐场景中,后台服务端确定要推送的信息的过程可以包括召回、粗排、精排、重排等几个阶段,其中召回和重排通常以规则为主,而粗排和精排可以以机器学习模型为主。粗排的作用往往是在召回的大量待推送信息内容中(如几百个到几千个),采用比较简单的模型,粗筛出用户可能偏好的一部分(如几十到几百个),然后输出给精排模型打分,以按照精排模型的打分结果进行重排。
常规的推荐系统中,粗排和精排需要两次模型调用,具有两次网络调用耗时,且粗排和精排中存在的相同计算逻辑,产生重复计算。
发明内容
本说明书一个或多个实施例描述了一种信息推送的方法及装置,用以解决背景技术提到的一个或多个问题。
根据第一方面,提供一种信息推送的方法,包括:基于从当前用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个特征向量组;通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到各条候选信息分别对应的粗排数据;经由动态选择模块按照所述粗排数据将若干候选信息确定为优选信息,并从各个特征向量组中选择与各条优选信息对应的特征向量;利用第二子网络处理与各条优选信息对应的特征向量,得到描述各条优选信息与所述当前用户的关联性的各个精排分数;结合各条优选信息对应的精排分数和其他候选信息对应的粗排数据,对各条候选信息进行排序,从而将排序结果用于向所述当前用户进行信息推送。
在一个实施例中,所述当前用户的用户信息包括地理位置、学历、职业、搜索记录、浏览记录、点击记录、消费记录、对物品的偏好类目中的至少一项。
在一个实施例中,所述特征数据包括从用户信息中提取的用户特征和从各条候选信息中分别提取的信息特征,单个特征向量组包括嵌入特征向量和深度特征向量;针对单个候选信息,单个嵌入向量包括:当前用户的用户特征、该单个候选信息对应的信息特征,或者将它们通过线性回归、求平均值、叠加、最大池化、拼接、降维中至少一种方式进行融合得到的特征;深度特征为对嵌入特征进一步处理得到的特征。
在一个进一步的实施例中,单条候选信息的信息特征包括:该单条候选信息所描述的具体事物的事物特征和/或对该条候选信息的描述文本进行分词的词汇特征。
在一个实施例中,针对单条优选信息,从相应特征向量组中选择的特征向量为相应优选信息对应的深度特征向量。
在一个实施例中,所述粗排数据包括各条候选信息分别对应的粗排分数,所述经由动态选择模块按照所述粗排数据将若干候选信息确定为优选信息包括:将粗排分数大于预定阈值的候选信息确定为优选信息。
在一个实施例中,所述第一子网络为具有关联性和不具有关联性的二分类模型,所述粗排数据包括各条候选信息与当前用户具有关联性的描述向量,所述描述向量中,与当前用户具有关联性的候选信息对应的维度为非零值,其余位置为0值,以基于非零值维度确定优选信息。
在一个实施例中,所述其他候选信息对应的粗排数据为各条其他候选信息分别对应的粗排分数。
在一个进一步的实施例中,所述结合各条优选信息对应的精排分数和其他候选信息对应的粗排分数,对各条候选信息进行排序包括:按照各个精排分数由大到小的顺序对各条优选信息排序;在最后一条优选信息之后,按照各个粗排分数由大到小的顺序对其他候选信息排序。
在另一个进一步的实施例中,所述结合各条优选信息对应的精排分数和其他候选信息对应的粗排分数,对各条候选信息进行排序包括:比较最小的精排分数和其他候选信息中最大的粗排分数;在最小的精排分数不大于该最大的粗排分数的情况下,将各个粗排分数减去参考值,并将全部候选信息按照粗排分数、精排分数的大小顺序依次排列,所述参考值不小于最小的精排分数与其他候选信息中最大的粗排分数之间的差值。
在另一个进一步的实施例中,所述结合各条优选信息对应的精排分数和其他候选信息对应的粗排分数,对各条候选信息进行排序包括:按照各条优选信息对应的精排分数和其他候选信息对应的粗排分数由大到小的顺序对各条候选信息进行排序。
在一个实施例中,在优选信息条数大于预定条数的情况下,筛除其他候选信息;所述结合各条优选信息对应的精排分数和其他候选信息对应的粗排分数,对各条候选信息进行排序包括:对各条优选信息按照精排分数由大到小的顺序排序。
根据第二方面,提供一种用于信息推送的排序模型的训练方法,所述排序模型包括嵌入模块、第一子网络、第二子网络、动态选择模块和排序模块,其中,所述动态选择模块用于根据第一子网络的粗排结果动态选择过滤出的候选信息的特征向量组,作为所述第二子网络的输入;所述训练方法包括迭代的多个模型更新周期,在单个模型更新周期,所述训练方法包括:利用所述嵌入模块处理从当前样本用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个样本特征向量组;通过第一子网络处理各条候选信息分别对应的各个样本特征向量组,从而得到针对各条候选信息的粗排输出结果;利用所述动态选择模块选择各条候选信息的特征向量;通过第二子网络处理各条候选信息分别对应的特征向量,从而得到针对各条候选信息的精排输出结果;利用基于粗排输出结果与粗排标签的比对得到的第一损失,和基于精排输出结果与精排标签的比对得到的第二损失,至少调整所述嵌入模块、所述第一子网络、所述第二子网络中的待定参数,以更新所述排序模型。
在一个实施例中,所述粗排标签、所述精排标签均为是否具有关联性的二分类标签,所述粗排输出结果为描述相应候选信息与当前样本用户之间关联性的粗排打分,或者是否具有关联性的二分类类别,所述精排输出结果为精排打分。
在一个实施例中,所述利用基于粗排输出结果与粗排标签的比对得到的第一损失,和基于精排输出结果与精排标签的比对得到的第二损失,至少调整所述嵌入模块、所述第一子网络、所述第二子网络中的待定参数包括:利用所述第一损失确定所述第一子网络中的待定参数的第一梯度,用于调整所述第一子网络中的待定参数;利用所述第二损失确定所述第二子网络中的待定参数的第二梯度,用于调整所述第二子网络中的待定参数;利用所述第一损失和所述第二损失的综合损失,确定所述嵌入模块中的待定参数的第三梯度,用于调整所述嵌入模块中的待定参数。
在一个实施例中,所述综合损失为所述第一损失和第二损失的加权和、平均或加和。
根据第三方面,提供一种信息推送的装置,包括:
嵌入单元,配置为基于从当前用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个特征向量组;
粗排单元,配置为通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到各条候选信息分别对应的粗排数据;
选择单元,配置为经由动态选择模块按照所述粗排数据将若干候选信息确定为优选信息,并从各个特征向量组中选择与各条优选信息对应的特征向量;
精排单元,配置为利用第二子网络处理与各条优选信息对应的嵌入向量,得到描述各条优选信息与所述当前用户的关联性的各个精排分数;
融合排序单元,配置为结合各条优选信息对应的精排分数和其他候选信息对应的粗排数据,对各条候选信息进行排序,从而将排序结果用于向所述当前用户进行信息推送。
根据第四方面,提供一种用于信息推送的排序模型的训练装置,所述排序模型包括嵌入模块、第一子网络、第二子网络、动态选择模块和排序模块,其中,所述动态选择模块用于根据第一子网络的粗排结果动态选择过滤出的候选信息的嵌入向量,作为所述第二子网络的输入;
所述训练装置包括:嵌入单元、粗排单元、选择单元、精排单元、更新单元,用于执行迭代的多个模型更新周期,在单个模型更新周期:
所述嵌入单元,配置为利用所述嵌入模块处理从当前样本用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个样本特征向量组;
所述粗排单元,配置为通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到针对各条候选信息的粗排输出结果;
所述选择单元,用于按照选择全部候选信息的选择规则选择各条候选信息的特征向量;
所述精排单元,配置为通过第二子网络处理各条候选信息分别对应的特征向量,从而得到针对各条候选信息的精排输出结果;
所述更新单元,配置为利用基于粗排输出结果与粗排标签的比对得到的第一损失,和基于精排输出结果与精排标签的比对得到的第二损失,至少调整所述嵌入模块、所述第一子网络、所述第二子网络中的待定参数,以更新所述排序模型。
根据第五方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面或第二方面的方法。
根据第六方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面或第二方面的方法。
通过本说明书实施例提供的方法和装置,在排序模型中将用于粗排的第一子网络和用于精排的第二子网络并行连接在嵌入模块之后,并增加动态选择模块完成第一子网络至第二子网络的连接,从而,在信息推送过程中,可以减少网络调用次数,且嵌入模块的嵌入结果可以由第一子网络和第二子网络共用。在信息推送的处理过程中,先由第一子网络对候选信息进行粗排过滤,从而选择部分候选信息作为优选信息进行精排打分,之后,将优选信息的精排打分和其他候选信息的粗排打分结果一起进行融合排序,以按照打分结果进行信息推送。其中,根据粗排过滤得到的优选信息可以是不固定条数的,因此,在第一子网络和第二子网络之间可以设置动态选择模块,用于从各条候选信息分别对应的各个嵌入向量中选择优选信息的嵌入向量,用于精排打分。由于合并了重复的计算过程,减少网络调用次数,从而可以提高信息推送的处理效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出本说明书披露的一个实施例的实施场景示意图;
图2示出根据一个实施例的信息推送的方法流程图;
图3示本说明书技术构思下用于信息推送的排序模型的架构示意图;
图4示出针对图3示出的排序模型架构的模型训练架构示意图;
图5示出根据一个实施例的排序模型的训练方法流程图;
图6示出根据一个实施例的信息推送的装置的示意性框图;
图7示出根据一个实施例的用于信息推送的排序模型的训练装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的技术方案进行描述。
图1为本说明书披露的一个实施例的实施场景示意图。如图1所示,该实施场景中,可以包括终端和服务器。终端上可以安装有各种应用,例如购物类应用、支付类应用、地图类应用、网页类应用,等等。用户可以通过终端进行各种应用操作,例如浏览网页、点击页面上的超链接等,并可以通过在终端的各种操作与相应应用的服务端交互。其中的终端例如可以是个人计算机、智能手机、笔记本电脑、平板电脑等等。
在图1示出的实施场景中,按照用户在信息推送场景中的主体作用及立场的不同,可以将用户分为信息推送方和信息浏览方。信息推送方可以通过终端与服务端交互,向服务端提供推送信息,推送信息可以是用于推送待推送目标的信息,例如可以是待推送目标的描述信息等。待推送目标例如是商品、新闻、资讯等。信息浏览方可以通过服务端浏览各种信息,例如商品信息、新闻信息等。服务端可以从一个或多个信息推送方获取各种待推送信息,并针对每个信息浏览方进行个性化的信息推送。信息推送方可以是第三方,也可以是为终端上的若干应用提供支持的服务方(即图1示出的服务端)。在可选的实现方式中,一些信息浏览用户既可以是信息推送方,也可以是信息浏览方。
可以理解,图1的实施场景仅是一个示例。在实践中,服务端、信息浏览方、信息推送方的数量可以是任意的。服务端也可以预先存储有待推送的信息,此时,该实施场景中作为信息推送方的用户及对应终端可以不存在。
本说明书涉及的信息推送,考虑经由服务端向信息浏览用户推送信息的场景。通常,可以推送的信息有很多,如称为候选信息。而终端对所推送信息显示往往有先后顺序,一般地,排列靠前的信息用户有机会更先获取。如此,就涉及到信息推送场景下的候选信息选择、排序的问题。服务端在向信息浏览用户推送信息时,可以按照用户需求或用户偏好进行个性化推荐,以提高用户体验。为了对用户进行个性化的信息推送,通常可以将候选信息和用户信息进行匹配,确定相关关联分数,并按照关联分数对候选信息排序推送给用户。
在排序之前,可以先进行召回(也叫触发,recall)。通过召回来挖掘出原则上用户任何有可能感兴趣的对象。在单独的召回难以做到照顾所有方面的情况下,还可以进行多路召回。各个召回路径共同决定进入排序的候选。之后,对所召回的信息进行排序。随着信息的爆炸式增长,如果对召回的信息直接精确排序,计算量非常庞大。常规技术中,将粗排作为召回和精排之间的折中产物,对召回信息进行初步筛选,得到一个较小的候选集。通俗地说,粗排可以是先从大的集合中找到一个符合要求的小的集合,然后把这个小的集合中的信息经由精排模型进行更加细致的排序。如此,可以在不影响推荐效果的情况下,减小精排模型的计算压力。
常规技术中,粗排模型和精排模型通常是两个相互独立的模型。召回的信息可以作为候选信息,并经过粗排模型对候选信息进行过滤。在粗排模型过滤过程中,往往需要对用户和候选信息进行特征提取输出相应的表征,再根据表征进行打分或分类。而后,过滤出的候选信息经由独立的精排模型进行精确排序,其间仍然需要对用户和候选信息进行特征提取,输出相应的表征,再进行与用户关联性的打分。
可见,在粗排模型和精排模型相互独立的情况下,需要两次独立的模型调用,产生两个模型调用耗时,并且,各自对用户和候选信息进行特征提取,输出相应的表征,存在大量重复计算。
在数据量日益庞大的实际场景下,信息推送效率可能影响用户体验、服务质量等。例如,一些场景下,要求信息推送的响应时长仅不超过50毫秒。
为了满足这种响应时长的需求,本说明书提供一种粗排、精排一体的实施架构,不仅可以将粗排、精排融合在一个模型中共用对用户和候选信息进行特征提取后输出的相应表征,减少重复计算,而且,考虑到粗排输出结果对应的候选信息条数可能是不确定的,可以动态接收不确定条数的信息进行精排打分。如此,可以减少模型调用耗时以及重复计算,提高信息推送效率。
图2示出了根据本说明书一个实施例的信息推送流程。该流程的执行主体可以是具有一定计算能力的任意计算机、设备、服务器,例如设于图1示出的服务端的计算平台。该执行主体可以从本地获取若干待推送信息,也可以从多个信息推送方的用户获取若干待推送信息。其中,待推送信息可以是新闻、商品、服务等各种信息。为了描述方便,可以将这些待推送信息称为候选信息。
如图2所示,以当前用户(可以是任一个用户)为例,信息推送的流程可以包括:步骤202,基于从当前用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的特征向量组;步骤204,通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到各条候选信息分别对应的粗排数据;步骤206,经由动态选择模块按照粗排数据从各条候选信息中确定若干优选信息,并从各个特征向量组中选择与各条优选信息对应的嵌入向量;步骤208,利用第二子网络处理与各条优选信息对应的特征向量,得到描述各条优选信息与当前用户的关联性的各个精排分数;步骤210,结合各条优选信息对应的精排分数和其他候选信息对应的粗排数据,对各条候选信息进行排序,从而根据排序结果向当前用户进行信息推送。
首先,在步骤202中,基于从当前用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个特征向量组。
可以理解,这里的当前用户可以是任意的终端用户,或者当前应用或平台的任意注册用户。为当前用户进行信息推送往往基于预定条件触发,例如是用户提交表单(如提交搜索等页面表单)、客户端与服务端建立连接(如打开APP)、预定周期到达(如每小时更新一次用户的个性化推荐内容)等等。
其中,当前用户的用户信息可以是用于对用户进行形象刻画的各种信息。用户信息可以包括但不限于:用户的基本信息、用户的历史行为信息等。
用户的基本信息例如是当前用户的地理位置、学历、职业,等等。其中,用户的基本信息可以通过用户在当前应用或平台的注册信息、登记信息等获取,也可以通过其人际关系网络获取。例如,用户的地理位置信息可以包括其注册地理位置信息、当前地理位置信息等中的至少一项。再例如,当前用户的联系人分组包括“大学同学”,那么当前用户至少经历了大学生活学历例如是“专科”或“本科”,在没有其他可能的更高学历信息的情况下,可以将该当前用户的学历信息标识为“大学毕业”、“大学生”等等。
用户的历史行为信息例如是用户在当前应用和/或相关应用的搜索记录、浏览记录、点击记录、消费记录、对物品的偏好类目,等等。其中,相关应用可以是与当前应用(客户端或服务端)具有关联关系的应用,例如当前应用为某支付平台应用,相关应用可以包括某购物平台应用,当前应用是某综合性服务平台,相关应用可以包括该平台上的各种子应用。用户的浏览记录、点击记录、消费记录可以通过用户的历史操作确定,对物品的偏好类目可以通过用户设置的偏好信息获取,也可以通过对用户的搜索记录、浏览记录、点击记录、消费记录等至少一项进行统计确定。
在具体的实施例中,用户信息还可以包括更多内容,在此不再详述。
候选信息可以是预先确定的、用于推送给用户的待推送信息。候选信息例如可以是新闻资讯、商品、优惠券等等。候选信息可以有多条,对每条候选信息而言,可以具有相应的描述信息。一条候选信息的描述信息可以包括一个或多个信息项,例如可以包括但不限于信息类别、属性信息、关键词等等中的至少一项。其中的信息类别可以是预先设定的,可通过人工标注或机器学习方法预先确定,信息类别例如可以描述信息所属的分类,如商品按照适用群体的分类信息,女性用品、儿童用品、老人用品等,或者按照商品用途的分类信息,服装、家具、电器等。属性信息可以是对候选信息中所涉及的目标对象的属性进行描述的信息。例如,候选信息为商品“DHA胶囊”的情况下,属性信息可以包括天然海藻、瓶装、60粒等等。关键词可以是描述信息中最能体现候选信息的相关内容的词汇,其可以独立于属性信息,也可以与属性信息有交叉。例如,商品“DHA胶囊”的关键词可以包括天然海藻、明目等,一个具体的新闻文本的关键词例如可以包括公交车、坠江等等。
在该步骤202中,可以将用户信息和候选信息通过向量进行表征。例如,可以从相应信息中提取相应特征,并将特征通过数值描述,从而形成向量表征,或者从信息中提取相应关键词,利用词向量描述相应关键词,再将关键词的词向量进行拼接或融合从而形成向量表征。其中,生成词向量的方法可以是基于统计学的方法(共现矩阵、SVD分解),也可以是基于不同结构的神经网络的语言模型,例如独热表示(one-hot)、word2vec(wordembeddings)、glove(Global vectors for word representation,词的全局向量)等等常规方式确定。如此,可以基于当前用户的用户信息提取用户特征,从单条候选信息中提取信息特征。
进一步地,可以将用户信息分别和各条候选信息进行特征融合,得到各条候选信息之于当前用户的融合表征,在此可以称之为嵌入。嵌入可以采用多种方式进行,从而构成一个或多个嵌入向量。例如,针对单个候选信息,单个嵌入向量可以仅包含用户特征(部分或全部)的嵌入,也可以仅包含历史信息特征(部分或全部)的嵌入,还可以既包含用户信息,又包含候选信息的嵌入。在一个具体例子中,嵌入向量中可以包含经由用户特征向量和信息特征向量的融合确定的嵌入向量,。向量融合的方法有很多,例如可以是求平均值、叠加、maxpooling(最大池化)、拼接、降维等等中的至少一项。
这样的一个或多个嵌入向量可以形成向量组,例如称为特征向量组。
在可选的实现方式中,还可以对嵌入向量进一步处理,例如通过全连接层或者简单变换,得到深度特征向量等等。深度特征向量的各个维度可以看作各个深度特征。深度特征也可以被加入以上特征向量组。换句话说,深度特征可以和嵌入向量一起构成特征向量组。特征向量组中的嵌入向量或深度向量均可以称为特征向量。
在本说明书的技术构思下,嵌入向量可以既可以用于粗排,又可以用于精排。
接着,根据步骤204,通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到各条候选信息分别对应的粗排数据。
这里,第一子网络可以是粗排网络。一般来说,粗排是为精排过滤潜在高价值信息的过程,精度要求没有精排高,而时延要求高于精排(例如为10ms)。因此,粗排模型会相对比精排简单。通常,第一子网络可以是统计模型、逻辑回归(LR)模型、双塔结构模型之类结构简单且能很好的适配时延要求的模型。第一子网络的设计可以采用常规技术,在此不再赘述。
第一子网络可以处理各条候选信息分别对应的各个特征向量组,得到各条候选信息对应的粗排数据。根据前文的描述可知,粗排输出可以是相应候选信息与当前用户是否具有关联性的二分类结果信息(如输出1表示具有关联性,输出0表示不具有关联性),也可以是各条候选信息分别对应的各个粗排分数。单个粗排分数是对相应候选信息与当前用户的关联性的粗略表征。其中,对于第一子网络而言,在输出二分类结果信息的情况下,在输出层之前可以是对各条候选信息确定的粗排分数,通过输出层设定的预定阈值截断为二分类结果。
然后,通过步骤206,经由动态选择模块按照粗排数据将若干候选信息确定为优选信息,并从各个特征向量组中选择与各条优选信息对应的特征向量。
在第一子网络输出的粗排数据为各条候选信息与当前用户是否具有关联性的二分类粗排结果的情况下,二分类结果对应着具有关联性(如数值1)的候选信息可以被确定为优选信息。
在粗排数据为描述各条候选信息与当前用户具有关联性的概率的粗排分数情况下,粗排分数越大,相应候选信息与当前用户的关联性越强,当前用户越可能对相应候选信息感兴趣。为了通过粗排实现为精排过滤的目的,可以预先设置有预定阈值,在粗排分数大于预定阈值的情况下,将相应候选信息作为精排模型进行精排的目标。
如此,对于不同用户而言,能够参与精排的候选信息数量并不相同。极端情况下,用于精排的候选信息可能极少,例如0条、1条等。为了能够对用户进行正常信息推送,在本说明书技术构思下,一方面,通过动态选择模块,选择经粗排过滤出需要精排的候选信息,例如记为优选信息,另一方面,保留其他候选信息的粗排打分结果。在第一子网络输出二分类结果的情况下,输出层的前一层的概率值可以作为粗排打分结果。如此,可以按照粗排数据将候选信息分为两部分,一部分作为优选信息用于精排打分,另一部分保留粗排模型的打分结果。
对于优选信息,可以经由动态选择模块从各个嵌入向量中选中与各条优选信息对应的特征向量。这里,所选择的特征向量可以为嵌入向量、深度向量或者它们的组合。可以理解,深度向量经由对嵌入向量进行变换或全连接处理得到,包含了嵌入向量的相关特征,亦即包含了用户信息和候选信息的信息,因此,可以仅选择嵌入向量或深度向量进行精排打分以降低计算量,也可以同时选择嵌入向量和深度向量以保留更多的信息进行精排打分。其中,动态选择模块用于从各个特征向量组中选择与各条优选信息对应的部分,这里所谓动态,是指对于不同用户而言,选中不确定条数的候选信息。动态选择模块可以根据相关参数确定哪些信息被选中为优选信息,并获取优选信息的相关特征向量。如此,在根据粗排数据进行信息过滤过程中,可以为动态选择模块的相关参数赋值。例如,将选中的信息的行号等信息标识以向量、数组、集合等形式输出至动态选择模块。
在一个可选的实现方式中,各条候选信息对应的各个特征向量组可以对应一个多维张量,该多维张量的单个行、列或通道对应单条候选信息。在一个实施例中,动态选择模块可以包括一个可变维度的选择向量,该选择向量的维度与候选信息的条数一致,例如都为N。该选择向量各个维度的值为0或1。在第一子网络输出的粗排数据为各条候选信息的二分类结果的情况下,该粗排数据本身可以作为选择向量。在第一子网络输出粗排分数的情况下,粗排打分的粗排分数大于预定阈值,则选择向量相应维度被赋值为1。可选地,可以利用预定阈值对粗排打分结果进行截断,截断结果为,超过预定阈值的维度为1,否则,截断为0,从而得到一个选择向量。根据选择向量,动态选择模块可以确定优选信息,并选择相应维度(如值为1的维度)的特征向量。
进一步地,在步骤208,利用第二子网络处理与各条优选信息对应的特征向量,得到描述各条优选信息与当前用户的关联性的各个精排分数。
可以理解,第二子网络为精排打分网络。由于精排模型具有更高的精确度要求,通常可以采用更加复杂的模型结构,例如采用深度模型,如基于注意力机制的Transformer网络架构、AFN(Adaptive Factorization Networks,自适应因子分解网络)、具有多头注意力机制的InterHAt网络、基于构造特征交互的LorentzFM网络,等等。第二子网络的具体结构可以参考常规的精排模型,在此不再赘述。值得说明的是,在这些精排网络中,提取特征向量的部分可以通过步骤202中经由动态模块选择的的特征向量替代。
第二子网络可以处理各条优选信息分别对应的特征向量,得到各条优选信息分别对应的各个精排分数。单个精排分数是对相应优选信息与当前用户的关联性的更精确的表征。精排分数越高,相应优选信息与当前用户的关联性越高。
然后,经由步骤210,结合各条优选信息对应的精排分数和其他候选信息对应的粗排数据,对各条候选信息进行排序,从而将排序结果用于向所述当前用户进行信息推送。
可以理解,在信息推送场景下,对候选信息的选择和排序是向用户推送信息之前的最终目标,因此,可以根据粗排打分结果和精排打分结果,对各条候选信息进行排序。
其中,优选信息是与用户关联度较高的候选信息,因此,在一些可选的实现方式中,可以优先对优选信息进行排序。
根据一个实施例,可以先对优选信息进行排序,再对其他候选信息进行排序。也就是说,优选信息的排序和其他候选信息的排序相互独立。其中,优选信息的排序可以基于精排分数由高到低的顺序进行,其他候选信息的排序则可以基于粗排分数由高到底的顺序进行。然后,将优选信息排列在更靠前的位置,其他候选信息排列在末个优选信息的后面。
根据另一个实施例,可以比较最小的精排分数和其他候选信息中最大的粗排分数,在最小的精排分数大于该最大的粗排分数的情况下,将全部候选信息按照粗排分数、精排分数的大小顺序依次排列。否则,在最小的精排分数不大于该最大的粗排分数的情况下,将各个粗排分数减去一个参考值,然后将全部候选信息按照粗排分数、精排分数的大小顺序依次排列。其中,参考值可以是预定值,如5,也可以是不小于最小的精排分数与该最大的粗排分数之间的差值的其他值,在此不再赘述。通过减去参考值,可以使得其他候选信息排列在优选信息之后。
在另一些可选的实现方式中,由于精排打分的优选信息本身是精度要求不高的粗排网络粗略筛选确定的,粗排分数大于其他候选信息的粗排分数,考虑到其可能存在筛选错误等情形,可以将优选信息对应的精排分数和其他候选信息对应的粗排分数同等考虑,将优选信息对应的精排分数和其他候选信息对应的粗排分数作为相应候选信息的最终打分,并按照分数由高到低的顺序排列。
根据再一个可选的实现方式,在优选信息数量超过预定条数(如1000条)的情况下,可以仅按照精排分数由高到底的顺序对优选信息进行排序。
根据更多实施例,还可以采用更多排序方法完成各条候选信息的排序,在此不再一一例举。之后,可以按照最终排序结果,向用户推送相关候选信息。
通过以上结合图2描述的实施例,本说明书的技术构思可以通过动态选择模块,基于粗排网络的打分结果,选择输入精排网络的特征向量,从而无需重复特征嵌入的过程,节约计算量。
根据以上技术构思,本说明书对应的排序模型架构如图3所示。该排序模型架构包括嵌入模块、第一子网络(粗排网络)、第二子网络(精排网络)、动态选择模块、排序模块。
其中,嵌入模块可以用于处理从当前样本用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个样本特征向量组。单个训练样本对应的样本特征向量组可以包括嵌入向量、深度向量中的至少一项。其中,嵌入向量是对从用户信息和候选信息中提取的特征进行嵌入得到。在可能的实施例中,还可以对嵌入向量进行进一步变换或者经由全连接层进行处理,从而得到深度向量。深度向量中各个维度可以对应各个深度特征。
在进行全部候选数据批量处理的情况下,可以通过对各条候选信息同时处理,得到对应全部候选信息的特征张量。特征张量的单个行、单个列或单个通道对应单条候选信息。假设候选信息条数为N,特征张量为二维张量,在当嵌入张量是m维向量的情况下,嵌入模块可以对各个候选信息批量进行嵌入处理并输出N×m维的特征张量。
第一子网络用于根据嵌入模块确定的特征向量组,对候选信息进行粗排。第一子网络的输入可以是全部候选信息对应的各个特征向量组,例如上述N×m维的特征张量。对于所输入的特征向量组,第一子网络可以输出针对相应候选信息的粗排打分(例如前文的粗排分数),或者与当前用户具有关联性/不具有关联性的二分类结果等粗排数据。
第二子网络用于根据嵌入模块确定的特征向量组,对候选信息进行精排打分。第二子网络的输入可以是部分候选信息对应的各个特征向量组,例如n条候选信息(n远小于N)的嵌入向量构成的n×m维的嵌入张量。这里的n条候选信息也可以称为优选信息。第二子网络的输出可以是对优选信息的精排打分,如前文的精排分数。
动态选择模块用于根据第一子网络输出的粗排数据,选择实际需要经由第二子网络处理的优选信息的相关特征向量。动态选择模块可以通过粗排分数获取优选信息的相关数据(例如候选信息标识等),并根据相关数据从特征向量组中获取优选信息对应的部分,例如n条候选信息的特征向量构成的n×m维的特征张量,输入第二子网络。
排序模块可以根据优选信息的精排分数和其他候选信息的粗排分数,对各条候选信息进行排序。在信息推送场景下,排序结果可以作为信息推送的依据。通常,优选信息排列靠前,其他候选信息排列靠后。按照排序结果中的顺序向用户推送信息的情况下,排序靠前的候选信息,可以优先推送给用户。
由图3可以看出,本说明书的技术构思下,一方面,通过将用于粗排的第一子网络和用于精排的第二子网络并行连接在嵌入模块之后,将粗排和精排融合在一个排序模型中,从而合并重复计算,减少模型调用,另一方面,增加动态选择模块,可以支持根据第一子网络的输出确定的不确定数量的优选信息,从而为粗排和精排融合在一个排序模型中提供技术支撑。
实践中,粗排和精排的模型训练样本可以相同或不同。例如,在模型训练过程中,对于粗排模型和精排模型而言,训练样本均可以标注有相关(如标签为1)、不相关(如标签为0)的标签。两者的区别在于模型结构。具体而言,粗排模型可以是简单的二分类模型,将候选信息分为与当前用户关联(或称为具有关联性)的候选信息或不关联(或称为不具有关联性)的候选信息。在输出最终关联或不关联的结果之前,可以得到描述关联性的概率,这个概率可以作为相应候选信息的粗排分数。而精排模型要求较精细,通常基于更加复杂的模型结构和更深层次的处理输出相应候选信息与当前用户的精确关联概率,其输出结果通常是该关联概率的概率值。。
有鉴于此,根据一个可能的设计,对于图3示出的排序模型架构,在训练过程中,可以分别确定第一子网络和第二子网络的模型损失,并共同训练至模型收敛。图4示出了模型训练过程中一个模型更新周期的模型更新架构,相对应地,图5示出了一个模型更新周期的模型更新流程。下面结合图4示出的架构,对图5示出的流程进行说明。
如图4所示,在当前模型更新周期,选择当前批次的训练样本,单个训练样本可以对应有单个样本用户,以及若干条候选信息。在当前模型更新周期,当前训练样本可以对应当前样本用户。
在步骤502中,通过嵌入模块处理当前样本用户的用户信息和以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个样本特征向量组。生成样本特征向量组的方法与步骤202的记载类似,在此不再赘述。
接着,一方面,可以在步骤504,通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到针对各条候选信息的粗排输出结果。将该第一子网络的粗排输出结果与粗排标签进行比较,可以确定排序模型的第一损失。
另一方面,可以利用动态选择模块选择各条候选信息的特征向量,并在步骤506,通过第二子网络处理各条候选信息分别对应的特征向量,从而得到第二子网络的精排输出结果。将该第二子网络的精排输出结果与精排标签进行比较,可以确定排序模型的第二损失。其中,这里的特征向量可以是特征向量组中的全部特征向量,例如嵌入向量和深度特征向量。动态选择模块可以在候选信息维度进行选择。在模型训练过程中,为了使用更丰富的样本进行训练,可以将动态选择模块设置为全部选择。
如此,针对单个批次的训练样本,经过一次计算,既可以得到相应的粗排打分及第一损失,又可以得到相应的精排分数和第二损失。
进一步地,步骤508,利用第一损失和第二损失调整排序模型中的待定参数。
根据一个可选的实现方式,可以采用第一损失和第二损失加和、加权和、求平均等方式,确定模型的综合损失。并利用综合损失分别确定第一子网络、第二子网络和嵌入模块中各个待定参数的梯度,从而利用梯度下降法等方法调整各个待定参数。
根据另一个可选的实现方式,可以利用第一损失确定第一子网络中各个待定参数的梯度,利用第二损失确定第二子网络中各个待定参数的梯度,并利用模型的综合损失确定嵌入模块中各个待定参数的梯度,从而利用梯度下降法等调整各个待定参数。其中,这里模型的综合损失同样可以采用第一损失和第二损失加和、加权和等方式确定。
如此,可以在各个模型更新周期迭代调整排序模型中的待定参数,直至模型收敛。这里,模型收敛的判定可以通过损失函数连续趋近于0、待定参数收敛等方式进行,在此不再赘述。
通过图4的模型架构和图5的模型训练方式,可以为图2的信息推送流程提供有效的排序模型,完成信息推送过程中对候选信息的排序。
回顾以上过程,本说明书提供的技术构思,在信息推送场景下,针对候选信息的排序通过一个模型完成粗排和精排。其中,用于粗排的子网络和用于精排的子网络可以共用针对用户信息和候选信息的嵌入结果(特征向量组)。粗排子网络的输出经由动态选择模块从嵌入结果中选择部分候选信息的特征向量输入精排子网络进行处理。然后,结合精排子网络的打分结果和粗排子网络的打分结果对候选信息进行排序,以按照排序结果向用户进行信息推送。该实施架构可以减少模型调用次数,减少冗余计算,从而提高信息推送效率。
根据另一方面的实施例,还提供有相应的信息推送的装置。其中,信息推送的装置可以设于应用的服务方。图6示出了根据一个实施例的信息推送的装置600。如图6所示,该信息推送的装置600可以包括:
嵌入单元601,配置为基于从当前用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个特征向量组;
粗排单元602,配置为通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到各条候选信息分别对应的粗排数据;
选择单元603,配置为经由动态选择模块按照粗排数据从各条候选信息中确定若干优选信息,并从各个特征向量组中选择与各条优选信息对应的特征向量;
精排单元604,配置为利用第二子网络处理与各条优选信息对应的特征向量,得到描述各条优选信息与当前用户的关联性的各个精排分数;
融合排序单元605,配置为结合各条优选信息对应的精排分数和其他候选信息对应的粗排数据,对各条候选信息进行排序,从而根据排序结果向当前用户进行信息推送。
在此基础上,本说明书还提供了一种排序模型架构。该排序模型可以包括嵌入模块、第一子网络、第二子网络、动态选择模块和排序模块,其中,动态选择模块用于根据第一子网络的粗排结果动态选择过滤出的候选信息的特征向量,作为第二子网络的输入。
对于该架构的排序模型,本说明书还提供一种信息推送的排序模型的训练装置。该训练装置可以设于任一具有一定计算能力的计算机、装置、服务器。如图1示出的服务端。
图7示出了根据一个实施例的用于信息推送的排序模型的训练装置700。如图7所示,该信息推送的排序模型的训练装置700可以包括嵌入单元701、粗排单元702、选择单元703、精排单元704、更新单元705。该装置700用于执行迭代的多个模型更新周期。其中,在单个模型更新周期:
嵌入单元701,配置为利用嵌入模块处理从当前样本用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个样本特征向量组;
粗排单元702,配置为通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到针对各条候选信息的粗排输出结果;
选择单元703,用于按照选择全部候选信息的选择规则选择各条候选信息的特征向量;
精排单元704,配置为通过第二子网络处理各条候选信息分别对应的特征向量,从而得到针对各条候选信息的精排输出结果;
更新单元705,配置为利用基于粗排输出结果与粗排标签的比对得到的第一损失,和基于精排输出结果与精排标签的比对得到的第二损失,至少调整嵌入模块、第一子网络、第二子网络中的待定参数,以更新排序模型。
值得说明的是,图6、图7所示的装置600、700分别与图2、图5描述的方法实施例相对应,图2、图5的方法实施例中的相应描述同样适用于装置600、700,在此不再赘述。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当计算机程序在计算机中执行时,令计算机执行结合图2、图5等所描述的任一方执行的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,存储器中存储有可执行代码,处理器执行可执行代码时,实现结合图2、图5等所描述的任一方执行的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本说明书实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上的具体实施方式,对本说明书的技术构思的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本说明书的技术构思的具体实施方式而已,并不用于限定本说明书的技术构思的保护范围,凡在本说明书实施例的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的技术构思的保护范围之内。
Claims (20)
1.一种信息推送的方法,包括:
基于从当前用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个特征向量组;
通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到各条候选信息对应的粗排数据;
经由动态选择模块按照所述粗排数据从各条候选信息中确定若干优选信息,并从各个特征向量组中选择与各条优选信息对应的特征向量;
利用第二子网络处理与各条优选信息对应的特征向量,得到描述各条优选信息与所述当前用户的关联性的各个精排分数;
结合各条优选信息对应的精排分数和其他候选信息对应的粗排数据,对各条候选信息进行排序,从而根据排序结果向所述当前用户进行信息推送。
2.如权利要求1所述的方法,其中,所述当前用户的用户信息包括地理位置、学历、职业、搜索记录、浏览记录、点击记录、消费记录、对物品的偏好类目中的至少一项。
3.如权利要求1所述的方法,其中,所述特征数据包括从用户信息中提取的用户特征和从各条候选信息中分别提取的信息特征,单个特征向量组包括嵌入向量和深度向量;针对单个候选信息,单个嵌入向量包括:当前用户的用户特征、该单个候选信息对应的信息特征,或者将它们通过线性回归、求平均值、叠加、最大池化、拼接、降维中至少一种方式进行融合得到的特征;深度向量为对嵌入向量进一步处理得到的特征向量。
4.如权利要求3所述的方法,其中,单条候选信息的信息特征包括:该单条候选信息所描述的具体事物的事物特征和/或对该条候选信息的描述文本进行分词的词汇特征。
5.如权利要求3所述的方法,其中,针对单条优选信息,从相应特征向量组中选择的特征向量为相应优选信息对应的深度向量。
6.如权利要求1所述的方法,其中,所述粗排数据包括各条候选信息分别对应的粗排分数,所述经由动态选择模块按照所述粗排数据从各条候选信息中确定若干优选信息包括:
将粗排分数大于预定阈值的候选信息确定为优选信息。
7.如权利要求1所述的方法,其中,所述第一子网络为具有关联性和不具有关联性的二分类模型,所述粗排数据包括各条候选信息与当前用户具有关联性的描述向量,所述描述向量中,与当前用户具有关联性的候选信息对应的维度为非零值,其余位置为0值,以基于非零值所在维度确定优选信息。
8.如权利要求1所述的方法,其中,所述其他候选信息对应的粗排数据为各条其他候选信息分别对应的粗排分数。
9.如权利要求8所述的方法,其中,所述结合各条优选信息对应的精排分数和其他候选信息对应的粗排分数,对各条候选信息进行排序包括:
按照各个精排分数由大到小的顺序对各条优选信息排序;
在最后一条优选信息之后,按照各个粗排分数由大到小的顺序对其他候选信息排序。
10.如权利要求8所述的方法,其中,所述结合各条优选信息对应的精排分数和其他候选信息对应的粗排分数,对各条候选信息进行排序包括:
比较最小的精排分数和其他候选信息中最大的粗排分数;
在最小的精排分数不大于该最大的粗排分数的情况下,将各个粗排分数减去参考值,并将全部候选信息按照粗排分数、精排分数的大小顺序依次排列,所述参考值不小于最小的精排分数与其他候选信息中最大的粗排分数之间的差值。
11.如权利要求8所述的方法,其中,所述结合各条优选信息对应的精排分数和其他候选信息对应的粗排分数,对各条候选信息进行排序包括:
按照各条优选信息对应的精排分数和其他候选信息对应的粗排分数由大到小的顺序对各条候选信息进行排序。
12.如权利要求1所述的方法,其中,在优选信息条数大于预定条数的情况下,筛除其他候选信息;所述结合各条优选信息对应的精排分数和其他候选信息对应的粗排分数,对各条候选信息进行排序包括:
对各条优选信息按照精排分数由大到小的顺序排序,并筛除其他候选信息。
13.一种用于信息推送的排序模型的训练方法,所述排序模型包括嵌入模块、第一子网络、第二子网络、动态选择模块和排序模块,其中,所述动态选择模块用于根据第一子网络的粗排结果动态选择过滤出的候选信息的特征向量组,作为所述第二子网络的输入;
所述训练方法包括迭代的多个模型更新周期,在单个模型更新周期,所述训练方法包括:
利用所述嵌入模块处理从当前样本用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个样本特征向量组;
通过第一子网络处理各条候选信息分别对应的各个样本特征向量组,从而得到针对各条候选信息的粗排输出结果;
利用所述动态选择模块选择各条候选信息的特征向量;
通过第二子网络处理各条候选信息分别对应的特征向量,从而得到针对各条候选信息的精排输出结果;
利用基于粗排输出结果与粗排标签的比对得到的第一损失,和基于精排输出结果与精排标签的比对得到的第二损失,至少调整所述嵌入模块、所述第一子网络、所述第二子网络中的待定参数,以更新所述排序模型。
14.如权利要求13所述的方法,其中,所述粗排标签、所述精排标签均为是否具有关联性的二分类标签,所述粗排输出结果为描述相应候选信息与当前样本用户之间关联性的粗排打分,或者是否具有关联性的二分类类别,所述精排输出结果为精排打分。
15.如权利要求13所述的方法,其中,所述利用基于粗排输出结果与粗排标签的比对得到的第一损失,和基于精排输出结果与精排标签的比对得到的第二损失,至少调整所述嵌入模块、所述第一子网络、所述第二子网络中的待定参数包括:
利用所述第一损失确定所述第一子网络中的待定参数的第一梯度,用于调整所述第一子网络中的待定参数;
利用所述第二损失确定所述第二子网络中的待定参数的第二梯度,用于调整所述第二子网络中的待定参数;
利用所述第一损失和所述第二损失的综合损失,确定所述嵌入模块中的待定参数的第三梯度,用于调整所述嵌入模块中的待定参数。
16.如权利要求15所述的方法,其中,所述综合损失为所述第一损失和第二损失的加权和、平均或加和。
17.一种信息推送的装置,包括:
嵌入单元,配置为基于从当前用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个特征向量组;
粗排单元,配置为通过第一子网络处理各条候选信息分别对应的各个特征向量组,从而得到各条候选信息分别对应的粗排数据;
选择单元,配置为经由动态选择模块按照所述粗排数据从各条候选信息中确定若干优选信息,并从各个特征向量组中选择与各条优选信息对应的特征向量;
精排单元,配置为利用第二子网络处理与各条优选信息对应的特征向量,得到描述各条优选信息与所述当前用户的关联性的各个精排分数;
融合排序单元,配置为结合各条优选信息对应的精排分数和其他候选信息对应的粗排数据,对各条候选信息进行排序,从而根据排序结果向所述当前用户进行信息推送。
18.一种用于信息推送的排序模型的训练装置,所述排序模型包括嵌入模块、第一子网络、第二子网络、动态选择模块和排序模块,其中,所述动态选择模块用于根据第一子网络的粗排结果动态选择过滤出的候选信息的嵌入向量,作为所述第二子网络的输入;
所述训练装置包括:嵌入单元、粗排单元、选择单元、精排单元、更新单元,用于执行迭代的多个模型更新周期,在单个模型更新周期:
所述嵌入单元,配置为利用所述嵌入模块处理从当前样本用户的用户信息以及各条候选信息中提取的特征数据,为各条候选信息分别生成相应的各个样本特征向量组;
所述粗排单元,配置为通过第一子网络处理各条候选信息分别对应的各个样本特征向量组,从而得到针对各条候选信息的粗排输出结果;
所述选择单元,用于按照选择全部候选信息的选择规则选择各条候选信息的特征向量;
所述精排单元,配置为通过第二子网络处理各条候选信息分别对应的特征向量,从而得到针对各条候选信息的精排输出结果;
所述更新单元,配置为利用基于粗排输出结果与粗排标签的比对得到的第一损失,和基于精排输出结果与精排标签的比对得到的第二损失,至少调整所述嵌入模块、所述第一子网络、所述第二子网络中的待定参数,以更新所述排序模型。
19.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-16中任一项的所述的方法。
20.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-16中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310650591.6A CN116383458B (zh) | 2023-06-02 | 2023-06-02 | 信息推送的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310650591.6A CN116383458B (zh) | 2023-06-02 | 2023-06-02 | 信息推送的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116383458A true CN116383458A (zh) | 2023-07-04 |
CN116383458B CN116383458B (zh) | 2023-08-11 |
Family
ID=86969720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310650591.6A Active CN116383458B (zh) | 2023-06-02 | 2023-06-02 | 信息推送的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116383458B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116684480A (zh) * | 2023-07-28 | 2023-09-01 | 支付宝(杭州)信息技术有限公司 | 信息推送模型的确定及信息推送的方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110520858A (zh) * | 2017-03-29 | 2019-11-29 | 阿里巴巴集团控股有限公司 | 用于生成推送通知的方法和设备 |
CN112883265A (zh) * | 2021-02-10 | 2021-06-01 | 北京三快在线科技有限公司 | 信息推荐方法、装置、服务器及计算机可读存储介质 |
CN114443986A (zh) * | 2021-12-31 | 2022-05-06 | 北京三快在线科技有限公司 | 排序方法及装置,排序模型训练方法及装置,电子设备 |
WO2023065869A1 (zh) * | 2021-10-20 | 2023-04-27 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关装置 |
CN116069959A (zh) * | 2021-10-29 | 2023-05-05 | 腾讯科技(深圳)有限公司 | 确定展示数据的方法和装置 |
-
2023
- 2023-06-02 CN CN202310650591.6A patent/CN116383458B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110520858A (zh) * | 2017-03-29 | 2019-11-29 | 阿里巴巴集团控股有限公司 | 用于生成推送通知的方法和设备 |
CN112883265A (zh) * | 2021-02-10 | 2021-06-01 | 北京三快在线科技有限公司 | 信息推荐方法、装置、服务器及计算机可读存储介质 |
WO2023065869A1 (zh) * | 2021-10-20 | 2023-04-27 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关装置 |
CN116069959A (zh) * | 2021-10-29 | 2023-05-05 | 腾讯科技(深圳)有限公司 | 确定展示数据的方法和装置 |
CN114443986A (zh) * | 2021-12-31 | 2022-05-06 | 北京三快在线科技有限公司 | 排序方法及装置,排序模型训练方法及装置,电子设备 |
Non-Patent Citations (1)
Title |
---|
王娜;何晓明;刘志强;王文君;李霞;: "一种基于用户播放行为序列的个性化视频推荐策略", 计算机学报, no. 01, pages 125 - 137 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116684480A (zh) * | 2023-07-28 | 2023-09-01 | 支付宝(杭州)信息技术有限公司 | 信息推送模型的确定及信息推送的方法及装置 |
CN116684480B (zh) * | 2023-07-28 | 2023-10-31 | 支付宝(杭州)信息技术有限公司 | 信息推送模型的确定及信息推送的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116383458B (zh) | 2023-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110969516B (zh) | 一种商品推荐方法及装置 | |
CN110263265B (zh) | 用户标签生成方法、装置、存储介质和计算机设备 | |
CN110162701B (zh) | 内容推送方法、装置、计算机设备和存储介质 | |
CN110909182B (zh) | 多媒体资源搜索方法、装置、计算机设备及存储介质 | |
CN110321422A (zh) | 在线训练模型的方法、推送方法、装置以及设备 | |
US9600581B2 (en) | Personalized recommendations on dynamic content | |
CN110175895B (zh) | 一种物品推荐方法及装置 | |
CN111339406B (zh) | 个性化推荐方法、装置、设备及存储介质 | |
CN112036981B (zh) | 一种用于提供目标对比商品的方法、装置、设备及介质 | |
CN116383458B (zh) | 信息推送的方法及装置 | |
CN109410001A (zh) | 一种商品推荐方法、系统、电子设备和存储介质 | |
CN112749330A (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
CN116108267A (zh) | 一种推荐方法及相关设备 | |
CN113627995A (zh) | 商品推荐列表更新方法及其装置、设备、介质、产品 | |
CN115545832A (zh) | 商品搜索推荐方法及其装置、设备、介质 | |
CN113704620B (zh) | 基于人工智能的用户标签更新方法、装置、设备及介质 | |
CN113220974B (zh) | 点击率预测模型训练、搜索召回方法、装置、设备及介质 | |
CN109146606B (zh) | 一种品牌推荐方法、电子设备、存储介质及系统 | |
CN111915414B (zh) | 向目标用户展示目标对象序列的方法和装置 | |
CN116823404A (zh) | 商品组合推荐方法及其装置、设备、介质 | |
CN111815410A (zh) | 基于选择性邻域信息的商品推荐方法 | |
CN108304453B (zh) | 一种视频相关搜索词的确定方法及装置 | |
WO2020046795A1 (en) | System, method, and computer program product for determining compatibility between items in images | |
CN115878874A (zh) | 多模态检索方法、设备和存储介质 | |
CN111445302A (zh) | 商品排序方法、系统及装置 |
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 |