一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

模型训练和内容召回方法、介质、装置和计算设备与流程

2022-05-08 05:28:27 来源:中国专利 TAG:


1.本公开的实施方式涉及人工智能技术领域,更具体地,本公开的实施方式涉及一种模型训练和内容召回方法、介质、装置和计算设备。


背景技术:

2.本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
3.互联网的出现和普及给用户带来了大量的信息,在信息时代,为了满足用户对信息的需求,需要在大量的信息中筛选出对用户有用的信息推荐给用户。
4.推荐系统在为用户推荐内容时,主要涉及到两个阶段,分别是召回和排序。其中,召回阶段主要是针对用户在海量的内容中粗选一批待推荐的内容,而排序阶段则是对这一批待推荐的内容进行排序,从而最终确定为用户推荐的内容。由于最终推荐的内容是在召回阶段粗选的待推荐的内容中确定的,因此召回的准确性对最终的推荐至关重要。
5.目前的召回方案主要基于召回模型完成,召回模型通常采用用户标识和内容标识训练而成。由于不同的用户和不同的内容,对应的用户标识和内容标识均不同,因此通过用户标识和内容标识训练得到的召回模型的泛化性不佳,召回的准确性低。


技术实现要素:

6.本公开提供一种模型训练和内容召回方法、介质、装置和计算设备,以解决召回模型的泛化性不佳导致召回的准确性低的问题。
7.在本公开实施方式的第一方面中,提供了一种模型训练方法,包括:
8.获取多组第一样本和多组第二样本;
9.根据所述第一样本对第一因子分解机模型进行训练,得到训练完成的第一因子分解机模型,所述第一样本中包括样本用户的至少一个用户画像、样本内容的内容标识和对应的样本点击信息,所述样本点击信息用于指示所述样本用户点击了所述样本内容,或者,未点击所述样本内容;
10.根据所述第二样本对第二因子分解机模型进行训练,得到训练完成的第二因子分解机模型,所述第二样本中包括所述样本用户的用户标识、所述样本内容的至少一个内容标签和所述样本点击信息。
11.在本公开实施方式的第二方面中,提供了一种内容召回方法,包括:
12.根据第一因子分解机模型获取目标用户的目标用户画像向量和多个目标内容的目标内容标识向量;
13.根据第二因子分解机模型获取所述目标用户的目标用户标识向量和所述多个目标内容的目标内容标签向量;
14.根据所述目标用户画像向量、所述目标内容标识向量、所述目标用户标识向量和所述目标内容标签向量,在所述多个目标内容中确定召回内容。
15.在本公开实施方式的第三方面中,提供了一种模型训练装置,包括:
16.获取模块,用于获取多组第一样本和多组第二样本;
17.第一训练模块,用于根据所述第一样本对第一因子分解机模型进行训练,得到训练完成的第一因子分解机模型,所述第一样本中包括样本用户的至少一个用户画像、样本内容的内容标识和对应的样本点击信息,所述样本点击信息用于指示所述样本用户点击了所述样本内容,或者,未点击所述样本内容;
18.第二训练模块,用于根据所述第二样本对第二因子分解机模型进行训练,得到训练完成的第二因子分解机模型,所述第二样本中包括所述样本用户的用户标识、所述样本内容的至少一个内容标签和所述样本点击信息。
19.在本公开实施方式的第四方面中,提供了一种内容召回装置,包括:
20.第一处理模块,用于根据第一因子分解机模型获取目标用户的目标用户画像向量和多个目标内容的目标内容标识向量;
21.第二处理模块,用于根据第二因子分解机模型获取所述目标用户的目标用户标识向量和所述多个目标内容的目标内容标签向量;
22.召回模块,用于根据所述目标用户画像向量、所述目标内容标识向量、所述目标用户标识向量和所述目标内容标签向量,在所述多个目标内容中确定召回内容。
23.在本公开实施方式的第五方面中,提供了一种计算设备,包括:至少一个处理器和存储器;
24.所述存储器存储计算机执行指令;
25.所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面任一项所述的模型训练方法,或者,使得所述至少一个处理器执行如第二方面任一项所述的内容召回方法。
26.在本公开实施方式的第六方面中,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面任一项所述的模型训练方法,或者,实现如第二方面任一项所述的内容召回方法。
27.在本公开实施方式的第七方面中,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序;所述计算机程序被执行时实现第一方面任一项所述的模型训练方法,或者,所述计算机程序被执行时实现第二方面任一项所述的内容召回方法。
28.本公开实施例提供的模型训练和内容召回方法、介质、装置和计算设备,首先获取多组第一样本和多组第二样本,然后根据第一样本对第一因子分解机模型进行训练,得到训练完成的第一因子分解机模型,根据第二样本对第二因子分解机模型进行训练,得到训练完成的第二因子分解机模型。训练得到的第一因子分解机模型和第二因子分解机模型可以用于推荐系统中为用户召回内容。由于第一因子分解机模型是通过第一样本训练的,第一样本中包括用户画像和内容标识,第二因子分解机模型是通过第二样本训练的,第二样本中包括用户标识和样本内容,相较于仅通过标识类特征进行模型训练,本公开实施例中的模型由于结合了用户画像和内容标签等标签类特征进行训练,使得训练的模型能够具备更好的泛化性,对新的样本的适应性更佳,从而提高召回内容的准确性。
附图说明
29.通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
30.图1为本公开实施例提供的应用场景示意图;
31.图2为本公开实施例提供的模型训练方法的流程示意图;
32.图3为本公开实施例提供的模型训练过程示意图;
33.图4为本公开实施例提供的内容召回方法的流程示意图;
34.图5为本公开实施例提供的内容召回示意图;
35.图6为本公开实施例提供的内容推荐示意图;
36.图7为本公开实施例提供的存储介质示意图;
37.图8为本公开实施例提供的模型训练装置的结构示意图;
38.图9为本公开实施例提供的内容召回装置的结构示意图;
39.图10为本公开实施例提供的计算设备的结构示意图。
40.在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
41.下面将参考若干示例性实施方式来描述本公开的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本公开,而并非以任何方式限制本公开的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
42.本领域技术人员知道,本公开的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
43.根据本公开的实施方式,提出了一种模型训练和内容召回方法、介质、装置和计算设备。
44.在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
45.首先对本公开涉及的基础概念进行介绍。
46.roc:receiver operating characteristic,受试者工作特征。根据学习器的预测结果进行从大到小的排序,然后按照排序逐个把样本预测结果作为正例进行预测,每次计算出假正例率(false positive rate,fpr)和真正例率(true positive rate,tpr)这两个值,然后分别以这两个值作为横纵坐标作图,即可得到对应的roc曲线。roc曲线的横轴为“假正例率”,又称为“假阳率”,指的是将负样本错误预测为正例的比例;纵轴为“真正例率”,又称为“真阳率”,指的是将正样本正确预测为正例的比例。
47.auc:area under the curve,即roc曲线下方的面积,用于指示学习器的分类能力,auc的值与学习器的分类能力呈正相关,分类能力越好,auc的值越大。
48.因子分解机(factorization machine,fm):是一种基于矩阵分解的机器学习算法,因子分解机通常用来训练分类器,在推荐系统中通常用来做点击率预估模型。因子分解
机对于稀疏的数据具有很好的学习能力。
49.超参数:是指在机器学习中,在开始学习过程之前设置的参数,本公开实施例中主要涉及到因子分解机模型的超参数,与通过在模型训练过程中得到的参数不同,超参数需要在因子分解机模型训练之前来设定,超参数在整个模型训练的过程中保持不变。
50.泛化性:指的是模型经过训练后,应用到新数据并做出准确预测的能力,又称为对新样本的适应能力。
51.下面参考本公开的若干代表性实施方式,详细阐释本公开的原理和精神。
52.发明概述
53.互联网的出现和普及给用户带来了大量的信息,满足了用户在信息时代对信息的需求。但随着互联网的迅速发展,互联网上的信息体量也大幅增长,面对大量的信息,用户想要获取自己需要的信息也变得更加困难,对信息的使用效率反而降低,这就是信息超载(information overload)问题。
54.针对信息超载问题,目前有两种解决方案,一种是通过搜索引擎等信息检索系统进行信息检索,搜索引擎在帮助用户获取网络信息方面发挥了极其重要的作用。但是不同的搜索引擎检索信息时,对于相同的搜索关键字得到的结果是相同的,而信息的传播是多样化的,用户对信息的需求也是多样化的,以搜索引擎为代表的信息检索系统在进行信息搜索时无法满足不同用户的个性化需求。
55.另一种方案是通过个性化推荐系统搜索信息,个性化推荐系统是根据用户的需求、兴趣等等,将用户感兴趣的信息或产品推荐给用户的一种推荐系统。个性化推荐系统通过获取用户的兴趣偏好进行个性化计算,挖掘用户的兴趣点,从而实现精准的个性化推荐。
56.个性化推荐系统能够在满足用户的个性化需求的基础上解决信息过载的问题,从大量的信息中筛选出少量有价值的信息。目前的个性化推荐系统主要分为召回和排序两个阶段,其中,召回阶段主要是针对用户在海量的内容中粗选一批待推荐的内容作为备选内容,而排序阶段则是对召回的待推荐内容进行一定规则的排序,最终根据排序结果选择推荐给用户的内容进行推荐。
57.由于最终推荐给用户的内容是从召回的内容中选择的,召回的准确性对最终的推荐至关重要。目前的推荐系统中的召回方法主要是基于因子分解机的模型实现召回。基于因子分解机的模型可以通过用户id和内容id训练得到。具体的,首先获取训练样本,训练样本中可以包括用户id、内容id以及相应的标注信息,标注信息用于标注该用户id对应的用户是否对该内容id对应的内容感兴趣。通过上述训练样本,可以训练基于因子分解机的模型,训练完成后,就可以根据该模型来筛选各个用户感兴趣的内容。
58.本发明人发现,由于不同的用户的用户标识(用户id)不同,不同的内容的内容标识(内容id)也不同,上述基于因子分解机的模型是通过用户id和内容id训练得到的,模型的泛化性不足,对新的样本的适应能力较差,即模型对于新的用户和新的内容的召回准确率会降低。基于此,本公开实施例提供了一种模型训练及内容召回方法,以解决上述技术问题。
59.在介绍了本公开的基本原理之后,下面具体介绍本公开的各种非限制性实施方式。
60.应用场景总览
61.首先参考图1来介绍本公开实施例的应用场景。
62.图1为本公开实施例提供的应用场景示意图,如图1所示,包括客户端11和服务器12,客户端11和服务器12之间通过有线或无线连接。
63.用户可以通过客户端12查看为该用户推荐的内容,由于需要针对不同的用户实现个性化推荐,因此,需要通过客户端12获取该用户的相关信息,例如包括该用户的用户标识,该用户的用户画像等等。这些用户的相关信息可以由客户端11发送给服务器12。
64.服务器12在接收用户的相关信息后,可以根据多个内容的相关信息以及该用户的相关信息进行个性化推荐,其中,个性化推荐的过程基于个性化推荐系统来完成。
65.个性化推荐系统包括召回和排序两个阶段,本公开实施例中主要涉及的是召回阶段。在召回阶段,服务器12基于预先训练的召回模型在多个内容中确定召回的内容,然后在排序阶段在召回的内容中选择部分内容推荐给客户端12即可。预先训练的召回模型可以由服务器12训练完成,也可以由其他的设备训练完成之后发送给服务器12,本公开实施例对此不作限定。
66.示例性方法
67.下面结合图1的应用场景,参考图2来描述根据本公开示例性实施方式的模型训练方法。需要注意的是,上述应用场景仅是为了便于理解本公开的精神和原理而示出,本公开的实施方式在此方面不受任何限制。相反,本公开的实施方式可以应用于适用的任何场景。
68.在本公开的技术方案中,所涉及的用户行为数据等信息的收集均建立在用户的充分授权的基础上,且对这些信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
69.图2为本公开实施例提供的模型训练方法的流程示意图,如图2所示,该方法可以包括:
70.s21,获取多组第一样本和多组第二样本。
71.本公开实施例的执行主体可以为服务器,也可以为集成了服务器的功能的电子设备。在执行模型训练之前,首先获取多组第一样本和多组第二样本,其中,第一样本用于训练第一因子分解机模型,第二样本用户训练第二因子分解机模型。
72.s22,根据第一样本对第一因子分解机模型进行训练,得到训练完成的第一因子分解机模型,第一样本中包括样本用户的至少一个用户画像、样本内容的内容标识和对应的样本点击信息,样本点击信息用于指示样本用户点击了样本内容,或者,未点击样本内容。
73.用户画像是将用户的具体信息抽象得到的标签,这些标签可以将用户的形象具体化。第一样本中的至少一个用户画像即为根据该样本用户的具体信息抽象得到的至少一个标签。
74.内容标识为用于区分不同内容的标号,内容标识可以是数字、字母、符号以及组合等形式,不同的内容有不同的内容标识,每个内容的内容标识是唯一的。
75.样本点击信息用于指示该用户画像对应的样本用户是否点击了该内容标识对应的样本内容。例如,样本点击信息可以为0或1,其中0表示样本用户未点击过样本内容,1表示样本用户点击过样本内容。
76.第一样本用于训练第一因子分解机模型,其中,用户画像和内容标识用于输入至第一因子分解机模型,第一因子分解机模型对用户画像和内容标识处理,样本点击信息为
标注信息,根据样本点击信息和第一因子分解机模型输出的结果可以对第一因子分解机模型进行训练。通过多组第一样本对第一因子分解机模型训练后,可以得到训练完成的第一因子分解机模型。
77.s23,根据第二样本对第二因子分解机模型进行训练,得到训练完成的第二因子分解机模型,第二样本中包括样本用户的用户标识、样本内容的至少一个内容标签和样本点击信息。
78.用户标识为用于区分不同用户的标号,用户标识可以是数字、字母、符号以及组合等形式,不同的用户有不同的用户标识,每个用户的用户标识是唯一的。
79.内容标签是将对应的内容抽象得到的标签,这些标签可以用于反映对应的内容的相关信息。第二样本中的至少一个内容标签即为根据该样本内容得到的至少一个标签。
80.样本点击信息用于指示该用户标识对应的样本用户是否点击了该内容标签对应的样本内容。例如,样本点击信息可以为0或1,其中0表示样本用户未点击过样本内容,1表示样本用户点击过样本内容。
81.第二样本用于训练第二因子分解机模型,其中,用户标识和内容标签用于输入至第二因子分解机模型,第二因子分解机模型对用户标识和内容标签处理,样本点击信息为标注信息,根据样本点击信息和第二因子分解机模型输出的结果可以对第二因子分解机模型进行训练。通过多组第二样本对第二因子分解机模型训练后,可以得到训练完成的第二因子分解机模型。
82.在训练得到第一因子分解机模型和第二因子分解机模型后,可以根据第一因子分解机模型和第二因子分解机模型构成召回系统,用于为用户召回内容。
83.本公开实施例提供的模型训练方法,首先获取多组第一样本和多组第二样本,然后根据第一样本对第一因子分解机模型进行训练,得到训练完成的第一因子分解机模型,根据第二样本对第二因子分解机模型进行训练,得到训练完成的第二因子分解机模型。训练得到的第一因子分解机模型和第二因子分解机模型可以用于推荐系统中为用户召回内容。由于第一因子分解机模型是通过第一样本训练的,第一样本中包括用户画像和内容标识,第二因子分解机模型是通过第二样本训练的,第二样本中包括用户标识和样本内容,相较于仅通过标识类特征进行模型训练,本公开实施例中的模型由于结合了用户画像和内容标签等标签类特征进行训练,使得训练的模型能够具备更好的泛化性,对新的样本的适应性更佳,从而提高召回内容的准确性。
84.在上述实施例中,对第一因子分解机模型和第二因子分解机模型的训练进行了介绍,下面将结合附图对本公开的方案进行详细介绍。
85.在进行模型训练之前,需要获取训练样本,即多组第一样本和多组第二样本。具体的,首先获取多组初始样本,初始样本中包括样本用户的用户标识、内容标识和样本点击信息。
86.图3为本公开实施例提供的模型训练过程示意图,如图3所示,可以通过获取样本用户的用户行为数据来获取初始样本。用户行为数据为样本用户是否点击查看过样本内容,针对一个样本用户而言,可能浏览过一个或多个样本内容,则该样本用户的用户标识、任意一个样本内容的内容标识以及样本用户对该样本内容的样本点击信息可以构成一组初始样本。如图3所示,可以获取一个或多个样本用户的用户行为数据,然后从用户行为数
据中抽取点击信息,点击信息表示样本用户是否点击了某个样本内容。针对任意一个样本用户的用户行为数据而言,均可以根据用户行为数据获取该样本用户的用户标识、样本内容的内容标识以及对应的点击信息,从而得到初始样本。
87.在得到多组初始样本后,可以获取样本用户的至少一个用户画像和样本内容的至少一个内容标签,用户画像和内容标签的获取均可以通过预训练的模型来实现。
88.对于用户画像而言,可以通过用户画像模型来实现,用户画像模型可以预先进行训练。例如,可以获取用户行为数据和样本用户画像,样本用户画像为用户行为数据的标注信息。将用户行为数据输入至用户画像模型,得到用户画像模型输出的用户画像,然后根据用户画像模型输出的用户画像和样本用户画像之间的差异对用户画像模型的参数进行调整。针对任意一组用户行为数据和样本用户画像,均可以采用上述方式对用户画像模型进行训练,最终得到训练好的用户画像模型。训练好的用户画像模型具备根据用户行为数据输出用户画像的能力。因此,可以将样本用户的用户行为数据输入至训练好的用户画像模型,得到该样本用户的至少一个用户画像。
89.对于内容标签而言,可以通过内容标签模型来实现,内容标签模型可以预先进行训练。例如,可以获取样本内容和样本内容标签,样本内容标签为样本内容的标注信息。将样本内容输入至内容标签模型,得到内容标签模型输出的内容标签,然后根据内容标签模型输出的内容标签和样本内容标签之间的差异对内容标签模型的参数进行调整。针对任意一组样本内容和样本内容标签,均可以采用上述方式对内容标签模型进行训练,最终得到训练好的内容标签模型。训练好的内容标签模型具备根据内容输出内容标签的能力。因此,可以将样本内容输入至训练好的内容标签模型,得到该样本内容的至少一个内容标签。
90.在得到样本用户的至少一个用户画像和样本内容的至少一个内容标签后,可以根据至少一个用户画像、内容标识和样本点击信息,获取第一样本,根据用户标识、至少一个内容标签和样本点击信息,获取第二样本。
91.在获取第一样本后,可以对第一样本进行划分,得到第一训练样本和第一验证样本,第一训练样本和第一验证样本的数量比例可以根据需要设定,本公开实施例对此不作限定。第一训练样本用于训练第一因子分解机模型,而第一验证样本则用于验证训练得到的第一因子分解机模型是否满足要求。
92.第一因子分解机模型和第二因子分解机模型均属于因子分解机模型,两个模型的训练方式类似,但是训练样本不同,在对两个模型的训练过程进行介绍之前,首先对因子分解机模型进行介绍。
93.在机器学习中,普通的线性模型为:
94.y=ω1x1 ω2x2 ... ωnxn,
ꢀꢀꢀ
(1)
95.其中y为模型的输出,xi为输入模型的特征,ωi为模型的参数,即特征xi的权重。线性模型的缺点是没法捕捉到特征之间的相互关系,为了解决这个问题,可以引入多项式回归如下:
[0096][0097]
但是由于每两个特征之间的权重ω
j,i
都需要学习,需要学习的参数的数量是n(n-1)/2,n是特征的数量。n的取值往往比较大,模型特别复杂,而实际的数据通常比较稀疏,会
造成模型难以学习出参数。
[0098]
因此,可以从矩阵分解引出因子分解机,基于矩阵分解思想,将稀疏的矩阵分解为两个低阶矩阵的乘积。本公开实施例中,针对用户类特征和内容类特征,设计如下因子分解机模型:
[0099][0100]
其中y为模型的输出,xi为输入模型的特征,ωi为特征学习到的权重参数,p为每个样本的特征数量。
[0101]
令xu表示用户特征,ωu和表示用户特征学习到的权重参数,xd表示内容特征,ωd和表示内容特征学习到的权重参数,则式(3)可表示为如下的形式:
[0102][0103]
式(4)即为本公开实施例中的因子分解机模型,其中,y为因子分解机模型的输出,为第j个用户特征,pu为用户特征的数量,为第j个内容特征,pd为内容特征的数量,ω0、和均为因子分解机模型的参数。
[0104]
令则式(4)可以表示为如下式(5)的形式:
[0105][0106]
令则式(5)可以进一步表达为式(6):
[0107][0108]
令则根据式(6)可以进一步得到:
[0109][0110]
其中,ω0为因子分解机模型的参数,当因子分解机模型训练完成时,ω0为常数。为用户特征向量,为内容特征向量。
[0111]
从式(1)至式(7)对本公开实施例中的因子分解机模型的结构进行了介绍,下面将基于上述实施例中的因子分解机模型对本公开实施例中的第一因子分解机模型和第二因子分解机模型进行介绍。
[0112]
根据式(4)示意的因子分解机模型的结构可得第一因子分解机模型的结构如下:
[0113][0114]
其中,y1为第一因子分解机模型的输出,ω
01
、和均为第一因子分解机模型的参数。由于第一因子分解机模型是根据第一训练样本训练得到的,第一训练样本中包括样本用户的至少一个用户画像和样本内容的内容标识,因此第一因子分解机模型中的用户特征为用户画像,内容特征为内容标识。针对第一训练样本中的第j组样本而言,为第j个用户画像,p
u1
为用户画像的数量,为第j个内容标识,p
d1
为内容标识的数量。
[0115]
令令则根据式(8)可以进一步得到:
[0116][0117]
在对第一因子分解机模型进行训练时,针对任意一组第一训练样本,可以将对应的用户画像和内容标识输入至第一因子分解机模型,根据式(8)可以得到第一因子分解机模型的输出y1,从而得到第一因子分解机模型输出的用户画像向量和内容标识向量。
[0118]
例如,一种可能的实现方式是,根据y1结合式(9)可以得到用户画像向量和内容标识向量的内积。在得到用户画像向量和内容标识向量的内积后,可以使用sigmoid函数对内积进行映射处理,映射到[0,1]范围内,映射处理后的结果即为第一点击信息,第一点击信息为一个处于[0,1]范围内的数值。
[0119]
然后,根据第一点击信息和样本点击信息对第一因子分解机模型的参数进行调整。样本点击信息用于指示样本用户点击了样本内容,或者未点击样本内容。若样本用户点击了样本内容,则样本点击信息取值为1,若样本用户未点击样本内容,则样本点击信息取值为0。然后,根据第一点击信息和样本点击信息之间的差异,可以对第一因子分解机模型中的参数(例如包括式(8)中的ω
01
、和)进行调整。针对任意一组第一训练样本,均可以根据上述实施方式来对第一因子分解机模型进行训练,最终得到训练完成的第一因子分解机模型。在第一因子分解机模型训练完成后,第一因子分解机模型中的各项参数的取值已确定,因此在向第一因子分解机模型输入用户画像和内容标识后,即可根据第一因子分解机模型的各项参数结合式(8)得到第一因子分解机模型的输出。同时,根
据和可得到对应的用户画像向量和内容标识向量。
[0120]
如图3所示,在根据第一训练样本训练得到第一因子分解机模型后,可以通过第一验证样本验证第一因子分解机模型是否满足要求。一种可能的实现方式是,将第一验证样本中的用户画像和内容标识输入至第一因子分解机模型,得到第一因子分解机模型输出的点击信息。具体的,根据第一验证样本中的用户画像和内容标识,以及训练完成的第一因子分解机模型中的各项参数,结合式(8)即可得到对应的用户画像向量和内容标识向量的内积,然后通过sigmoid函数对内积进行映射处理,得到第一因子分解机模型输出的点击信息。
[0121]
然后,根据第一因子分解机模型输出的点击信息和第一验证样本中对应的样本点击信息,获取第一因子分解机模型的第一roc曲线下方的面积。在得到第一roc曲线下方的面积后,根据第一roc曲线下方的面积可以确定第一验证结果,第一验证结果用于指示训练完成的第一因子分解机模型是否满足要求。
[0122]
如图3所示,若第一验证结果指示训练完成的第一因子分解机模型不满足要求,则可以更新第一因子分解机模型的超参数。更新的超参数例如可以包括第一因子分解机模型的度,例如可以包括第一因子分解机模型的学习率等等。然后,根据更新后的超参数和第一训练样本重新训练第一因子分解机模型,训练的方法如上述实施例中的介绍,此处不再赘述。通过优化第一因子分解机模型的超参数,能够提高第一因子分解机模型学习的性能和效果。若第一验证结果指示训练完成的第一因子分解机模型满足要求,则可以停止训练,得到的第一因子分解机模型可以用于后续根据用户画像和内容标识输出用户画像向量和内容标识向量。
[0123]
根据式(4)示意的因子分解机模型的结构可得第二因子分解机模型的结构如下:
[0124][0125]
其中,y2为第二因子分解机模型的输出,ω
02
、和均为第二因子分解机模型的参数。由于第二因子分解机模型是根据第二训练样本训练得到的,第二训练样本中包括样本用户的用户标识和样本内容的至少一个内容标签,因此第二因子分解机模型中的用户特征为用户标识,内容特征为内容标签。针对第二训练样本中的第j组样本而言,为第j个用户标识,p
u2
为用户标识的数量,为第j个内容标签,p
d2
为内容标签的数量。
[0126]
令令则根据式(10)可以进一步得到:
[0127][0128]
在对第二因子分解机模型进行训练时,针对任意一组第二训练样本,可以将对应的用户标识和内容标签输入至第二因子分解机模型,根据式(10)可以得到第二因子分解机模型的输出y2,从而得到第二因子分解机模型输出的用户标识向量和内容标签向量。
[0129]
例如,一种可能的实现方式是,根据y2结合式(11)可以得到用户标识向量和内容标签向量的内积。在得到用户标识向量和内容标签向量的内积后,可以使用sigmoid函数对内积进行映射处理,映射到[0,1]范围内,映射处理后的结果即为第二点击信息,第二点击信息为一个处于[0,1]范围内的数值。
[0130]
然后,根据第二点击信息和样本点击信息对第二因子分解机模型的参数进行调整。样本点击信息用于指示样本用户点击了样本内容,或者未点击样本内容。若样本用户点击了样本内容,则样本点击信息取值为1,若样本用户未点击样本内容,则样本点击信息取值为0。然后,根据第二点击信息和样本点击信息之间的差异,可以对第二因子分解机模型中的参数(例如包括式(10)中的ω
02
、和)进行调整。针对任意一组第二训练样本,均可以根据上述实施方式来对第二因子分解机模型进行训练,最终得到训练完成的第二因子分解机模型。在第二因子分解机模型训练完成后,第二因子分解机模型中的各项参数的取值已确定,因此在向第二因子分解机模型输入用户标识和内容标签后,即可根据第二因子分解机模型的各项参数结合式(10)得到第二因子分解机模型的输出。同时,根据和可得到对应的用户标识向量和内容标签向量。
[0131]
如图3所示,在根据第二训练样本训练得到第二因子分解机模型后,可以通过第二验证样本验证第二因子分解机模型是否满足要求。一种可能的实现方式是,将第二验证样本中的用户标识和内容标签输入至第二因子分解机模型,得到第二因子分解机模型输出的点击信息。具体的,根据第二验证样本中的用户标识和内容标签,以及训练完成的第二因子分解机模型中的各项参数,结合式(10)即可得到对应的用户标识向量和内容标签向量的内积,然后通过sigmoid函数对内积进行映射处理,得到第二因子分解机模型输出的点击信息。
[0132]
然后,根据第二因子分解机模型输出的点击信息和第二验证样本中对应的样本点击信息,获取第二因子分解机模型的第二roc曲线下方的面积。在得到第二roc曲线下方的面积后,根据第二roc曲线下方的面积可以确定第二验证结果,第二验证结果用于指示训练完成的第二因子分解机模型是否满足要求。
[0133]
如图3所示,若第二验证结果指示训练完成的第二因子分解机模型不满足要求,则可以更新第二因子分解机模型的超参数。更新的超参数例如可以包括第二因子分解机模型的度,例如可以包括第二因子分解机模型的学习率,等等。然后,根据更新后的超参数和第二训练样本重新训练第二因子分解机模型,训练的方法如上述实施例中的介绍,此处不再赘述。通过优化第二因子分解机模型的超参数,能够提高第二因子分解机模型学习的性能和效果。若第二验证结果指示训练完成的第二因子分解机模型满足要求,则可以停止训练,
得到的第二因子分解机模型可以用于后续根据用户标识和内容标签输出用户标识向量和内容标签向量。
[0134]
在上述实施例中,对第一因子分解机模型和第二因子分解机模型进行了介绍,下面将结合附图介绍如何基于第一因子分解机模型和第二因子分解机模型进行内容召回。
[0135]
图4为本公开实施例提供的内容召回方法的流程示意图,如图4所示,该方法可以包括:
[0136]
s41,根据第一因子分解机模型获取目标用户的目标用户画像向量和多个目标内容的目标内容标识向量。
[0137]
图5为本公开实施例提供的内容召回示意图,如图5所示,根据第一因子分解机模型可以获取目标用户画像向量和目标内容标识向量,第一因子分解机模型即为根据图3实施例所介绍的方法训练得到的模型。
[0138]
具体的,在需要针对目标用户推荐内容时,首先获取目标用户的目标用户画像和多个目标内容的目标内容标识,目标用户画像可以通过预先训练的用户画像模型获取。然后,根据目标用户画像和目标用户画像在第一因子分解机模型中对应的参数,得到目标用户画像向量;根据目标内容标识和目标内容标识在第一因子分解机模型中对应的参数,得到目标内容标识向量。
[0139]
s42,根据第二因子分解机模型获取目标用户的目标用户标识向量和多个目标内容的目标内容标签向量。
[0140]
如图5所示,根据第二因子分解机模型可以获取目标用户标识向量和目标内容标签向量,第二因子分解机模型即为根据图3实施例所介绍的方法训练得到的模型。
[0141]
具体的,首先获取目标用户的目标用户标识和多个目标内容的目标内容标签,目标内容标签可以通过预先训练的内容标签模型获取。然后,根据目标用户标识和目标用户标识在第二因子分解机模型中对应的参数,得到目标用户标识向量;根据目标内容标签和目标内容标签在第二因子分解机模型中对应的参数,得到目标内容标签向量。
[0142]
s43,根据目标用户画像向量、目标内容标识向量、目标用户标识向量和目标内容标签向量,在多个目标内容中确定召回内容。
[0143]
如图5所示,在得到目标用户画像向量、目标内容标识向量、目标用户标识向量和目标内容标签向量后,对目标用户画像向量和目标用户标识向量进行拼接处理,可以得到目标用户的目标用户向量;针对多个内容中的任意内容,对目标内容标识向量和目标内容标签向量进行拼接处理,得到内容的目标内容向量。
[0144]
然后,根据目标用户向量和多个内容的目标内容向量,在多个内容中确定召回内容。图6为本公开实施例提供的内容推荐示意图,如图6所示,集合61中包括多个目标内容,即文章1-文章10。针对用户甲,在获取用户甲的目标用户标识和目标用户画像以及各文章的目标内容标签和目标内容标识后,基于第一因子分解机模型和第二因子分解机模型,获取用户甲的目标用户向量和各文章的目标内容向量。
[0145]
然后,对目标用户向量和各文章的目标内容向量进行内积处理,得到各目标内容针对目标用户的内积得分。可以采用faiss对目标内容向量建立索引库,采用目标用户向量通过faiss检索出得分最高的n篇目标内容。例如在图6中,计算文章1-文章10针对用户甲的内积得分,根据内积得分可以对文章1-文章10进行排序,如图6所示,示意了排序结果。若预
先设定的召回内容的数量为3个,则可以将排序结果中靠前的文章1、文章3和文章6作为召回内容,如集合62所示。在召回阶段结束后,可以根据一定的排序方法,对召回内容进行排序,从而确定最终推荐给用户甲的内容。例如在界面63中,将文章1、文章3和文章6中的文章3作为推荐内容推荐给用户甲即可。
[0146]
本公开实施例提供的内容召回方法,首先根据第一因子分解机模型获取目标用户的目标用户画像向量和多个目标内容的目标内容标识向量,然后根据第二因子分解机模型获取目标用户的目标用户标识向量和多个目标内容的目标内容标签向量,根据目标用户画像向量、目标内容标识向量、目标用户标识向量和目标内容标签向量,在多个目标内容中确定召回内容。由于第一因子分解机模型是通过样本用户的用户画像和样本内容的内容标识训练的,第二因子分解机模型是通过样本用户的用户标识和样本内容的内容标签训练的,结合了标识类特征和标签类特征综合进行内容的召回,相比于仅根据标识类特征训练的模型和仅根据标签类特征训练的模型,本公开实施例的模型具有较好的泛化性,从而能够提高召回的准确性,实现更精准的内容推荐。
[0147]
示例性介质
[0148]
在介绍了本公开示例性实施方式的方法之后,接下来,参考图7对本公开示例性实施方式的存储介质进行说明。
[0149]
图7为本公开实施例提供的存储介质示意图,参考图7所示,存储介质70中存储着根据本公开的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此。
[0150]
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0151]
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质。
[0152]
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备。
[0153]
示例性装置
[0154]
在介绍了本公开示例性实施方式的介质之后,接下来,参考图8和图9对本公开示例性实施方式的模型训练装置和内容召回装置进行说明,用于实现上述任一方法实施例中的方法,其实现原理和技术效果类似,在此不再赘述。
[0155]
图8为本公开实施例提供的模型训练装置的结构示意图,如图8所示,包括:
[0156]
获取模块81,用于获取多组第一样本和多组第二样本;
[0157]
第一训练模块82,用于根据所述第一样本对第一因子分解机模型进行训练,得到训练完成的第一因子分解机模型,所述第一样本中包括样本用户的至少一个用户画像、样本内容的内容标识和对应的样本点击信息,所述样本点击信息用于指示所述样本用户点击了所述样本内容,或者,未点击所述样本内容;
[0158]
第二训练模块83,用于根据所述第二样本对第二因子分解机模型进行训练,得到训练完成的第二因子分解机模型,所述第二样本中包括所述样本用户的用户标识、所述样本内容的至少一个内容标签和所述样本点击信息。
[0159]
在一种可能的实施方式中,所述获取模块81具体用于:
[0160]
获取多组初始样本,所述初始样本中包括所述用户标识、所述内容标识和所述样本点击信息;
[0161]
获取所述样本用户的至少一个用户画像和所述样本内容的至少一个内容标签;
[0162]
根据所述至少一个用户画像、所述内容标识和所述样本点击信息,获取所述第一样本;
[0163]
根据所述用户标识、所述至少一个内容标签和所述样本点击信息,获取所述第二样本。
[0164]
在一种可能的实施方式中,所述第一样本包括第一训练样本;所述第一训练模块82具体用于:
[0165]
将所述第一训练样本中的用户画像和内容标识输入所述第一因子分解机模型,得到所述第一因子分解机模型输出的用户画像向量和内容标识向量;
[0166]
根据所述用户画像向量和所述内容标识向量,得到第一点击信息;
[0167]
根据所述第一点击信息和所述样本点击信息对所述第一因子分解机模型的参数进行调整,得到训练完成的第一因子分解机模型。
[0168]
在一种可能的实施方式中,所述第一样本还包括第一验证样本;所述第一训练模块82还用于:
[0169]
将所述第一验证样本中的用户画像和内容标识输入至所述第一因子分解机模型,得到所述第一因子分解机模型输出的点击信息;
[0170]
根据所述第一因子分解机模型输出的点击信息和对应的所述样本点击信息,获取所述第一因子分解机模型的第一受试者工作特征roc曲线下方的面积;
[0171]
根据所述第一roc曲线下方的面积,确定第一验证结果,所述第一验证结果用于指示所述训练完成的第一因子分解机模型是否满足要求。
[0172]
在一种可能的实施方式中,若第一验证结果指示所述训练完成的第一因子分解机模型不满足要求,所述第一训练模块82还用于:
[0173]
更新所述第一因子分解机模型的超参数,并根据更新后的超参数和所述第一训练样本重新训练所述第一因子分解机模型。
[0174]
在一种可能的实施方式中,所述第二样本包括第二训练样本;所述第二训练模块83具体用于:
[0175]
将所述第二训练样本中的用户标识和内容标签输入所述第二因子分解机模型,得
到所述第二因子分解机模型输出的用户标识向量和内容标签向量;
[0176]
根据所述用户标识向量和所述内容标签向量,得到第二点击信息;
[0177]
根据所述第二点击信息和所述样本点击信息对所述第二因子分解机模型的参数进行调整,得到训练完成的第二因子分解机模型。
[0178]
在一种可能的实施方式中,所述第二样本还包括第二验证样本;所述第二训练模块83还用于:
[0179]
将所述第二验证样本中的用户标识和内容标签输入至所述第二因子分解机模型,得到所述第二因子分解机模型输出的点击信息;
[0180]
根据所述第二因子分解机模型输出的点击信息和对应的所述样本点击信息,获取所述第二因子分解机模型的第二roc曲线下方的面积;
[0181]
根据所述第二roc曲线下方的面积,确定第二验证结果,所述第二验证结果用于指示所述训练完成的第二因子分解机模型是否满足要求。
[0182]
在一种可能的实施方式中,若第二验证结果指示所述训练完成的第二因子分解机模型不满足要求,所述第二训练模块83还用于:
[0183]
更新所述第二因子分解机模型的超参数,并根据更新后的超参数和所述第二训练样本重新训练所述第二因子分解机模型。
[0184]
本公开实施例提供的模型训练装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0185]
图9为本公开实施例提供的内容召回装置的结构示意图,如图9所示,包括:
[0186]
第一处理模块91,用于根据第一因子分解机模型获取目标用户的目标用户画像向量和多个目标内容的目标内容标识向量;
[0187]
第二处理模块92,用于根据第二因子分解机模型获取所述目标用户的目标用户标识向量和所述多个目标内容的目标内容标签向量;
[0188]
召回模块93,用于根据所述目标用户画像向量、所述目标内容标识向量、所述目标用户标识向量和所述目标内容标签向量,在所述多个目标内容中确定召回内容。
[0189]
在一种可能的实施方式中,所述召回模块93具体用于:
[0190]
对所述目标用户画像向量和所述目标用户标识向量进行拼接处理,得到所述目标用户的目标用户向量;
[0191]
针对所述多个内容中的任意内容,对所述内容的目标内容标识向量和目标内容标签向量进行拼接处理,得到所述内容的目标内容向量;
[0192]
根据所述目标用户向量和各所述内容的目标内容向量,在所述多个内容中确定所述召回内容。
[0193]
在一种可能的实施方式中,所述召回模块93具体用于:
[0194]
对所述目标用户向量和各所述内容的目标内容向量进行内积处理,得到各所述内容针对所述目标用户的内积得分;
[0195]
根据所述内积得分,在所述多个内容中确定预设数量个目标内容为所述召回内容。
[0196]
在一种可能的实施方式中,所述第一因子分解机模型中包括各用户画像的参数和各内容标识的参数;所述第一处理模块91具体用于:
[0197]
获取所述目标用户的目标用户画像,以及所述目标内容的目标内容标识;
[0198]
根据所述目标用户画像和所述目标用户画像在所述第一因子分解机模型中对应的参数,得到所述目标用户画像向量;
[0199]
根据所述目标内容标识和所述目标内容标识在所述第一因子分解机模型中对应的参数,得到所述目标内容标识向量。
[0200]
在一种可能的实施方式中,所述第二因子分解机模型中包括各用户标识的参数和各内容标签的参数;所述第二处理模块92具体用于:
[0201]
获取所述目标用户的目标用户标识,以及所述目标内容的目标内容标签;
[0202]
根据所述目标用户标识和所述目标用户标识在所述第二因子分解机模型中对应的参数,得到所述目标用户标识向量;
[0203]
根据所述目标内容标签和所述目标内容标签在所述第二因子分解机模型中对应的参数,得到所述目标内容标签向量。
[0204]
本公开实施例提供的内容召回装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0205]
示例性计算设备
[0206]
在介绍了本公开示例性实施方式的方法、介质和装置之后,接下来,参考图10对本公开示例性实施方式的计算设备进行说明。
[0207]
图10显示的计算设备100仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0208]
图10为本公开实施例提供的计算设备的结构示意图,如图10所示,计算设备100以通用计算设备的形式表现。计算设备100的组件可以包括但不限于:上述至少一个处理单元101、上述至少一个存储单元102,连接不同系统组件(包括处理单元101和存储单元102)的总线103。
[0209]
总线103包括数据总线、控制总线和地址总线。
[0210]
存储单元102可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)1021和/或高速缓存存储器1022,可以进一步包括非易失性存储器形式的可读介质,例如只读存储器(rom)1023。
[0211]
存储单元102还可以包括具有一组(至少一个)程序模块1024的程序/实用工具1025,这样的程序模块1024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0212]
计算设备100也可以与一个或多个外部设备104(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(i/o)接口105进行。并且,计算设备100还可以通过网络适配器106与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图10所示,网络适配器106通过总线103与计算设备100的其它模块通信。应当理解,尽管图中未示出,可以结合计算设备100使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0213]
应当注意,尽管在上文详细描述中提及了模型训练装置和内容召回装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本公开
的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
[0214]
此外,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0215]
虽然已经参考若干具体实施方式描述了本公开的精神和原理,但是应该理解,本公开并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本公开旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献