信息推荐模型训练方法、信息推荐方法、装置及设备与流程

文档序号:24190413发布日期:2021-03-09 14:56阅读:71来源:国知局
信息推荐模型训练方法、信息推荐方法、装置及设备与流程

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.第三方面,本申请实施例还提供了一种信息推荐模型训练装置,所述装置包括:获取模块、生成模块、训练模块;
31.所述获取模块,用于获取信息推荐模型所应用领域的多级标签树,所述多级标签树每一级中包括所述应用领域的至少一种标签特征,在所述多级标签树的相邻两级中,后一级的一个标签特征唯一归属于前一级的一个标签特征;
32.所述生成模块,用于根据所述多级标签树中最后一级的标签特征,生成嵌入矩阵;根据所述多级标签树中各级标签特征之间的归属关系,生成所述嵌入矩阵对应的索引记录表,所述索引记录表中包括至少一个索引值,所述索引值用于表示所述多级标签树中除所述最后一级外的每一级的标签特征对应的所述最后一级的标签特征在所述嵌入矩阵中的个数和位置;
33.所述训练模块,用于根据所述嵌入矩阵以及所述索引记录表,训练得到所述信息推荐模型。
34.可选地,所述训练模块,还用于:
35.将所述索引记录表中的各索引值和所述嵌入矩阵输入至初始推荐模型,由所述初始推荐模型根据各所述索引值,在所述嵌入矩阵中检索行,得到各所述索引值对应的嵌入向量,并将各所述索引值对应的嵌入向量按行拼接,得到拼接后的嵌入向量;
36.使用所述拼接后的嵌入向量,训练得到所述信息推荐模型。
37.可选地,所述训练模块,还用于:
38.将所述拼接后的嵌入向量作为初始推荐模型的全连接层的输入,由所述初始推荐模型在所述全连接层以及分类层进行处理并输出处理结果;
39.根据所述处理结果迭代修正所述初始推荐模型,并在所述初始推荐模型满足预设条件时,将满足预设条件的初始推荐模型作为所述信息推荐模型。
40.可选地,所述生成模块,还用于:
41.对所述多级标签树中最后一级的多个标签特征进行去重处理;
42.按所述多级标签树中的第一级标签特征,对所述最后一级的多个标签特征分类排序;
43.根据所述最后一级的多个标签特征的个数,生成所述嵌入矩阵;其中,所述嵌入矩阵的行数为所述最后一级多个标签特征的个数加一,所述嵌入矩阵的列数是预先设定的嵌入向量维度。
44.可选地,所述生成模块,还用于:
45.根据所述多级标签树中当前层级的一个标签特征对应的所有下一层级的标签特征的个数和位置,确定所述当前层级的标签特征在所述嵌入矩阵中对应的索引记录表的索引值。
46.可选地,所述训练模块,还用于:
47.使用聚合函数对所述嵌入矩阵中多个检索行对应的嵌入向量进行运算,得到各所述索引值对应的嵌入向量。
48.第四方面,本申请实施例还提供了一种信息推荐方法装置,所述装置包括:获取模块、输入模块以及输出模块;
49.所述获取模块,用于获取待推荐信息的多个特征;
50.所述输入模块,用于将所述待推荐信息的多个特征输入预先训练得到的信息推荐模型,得到推荐信息,所述信息推荐模型基于嵌入矩阵以及嵌入矩阵对应的索引记录表训练得到,所述嵌入矩阵根据所述信息推荐模型所应用领域的多级标签树的最后一级标签特征生成,所述索引记录表用于表示所述多级标签树中除所述最后一级外的每一级的标签特征对应的所述最后一级的标签特征在所述嵌入矩阵中的个数和位置;
51.所述输出模块,用于输出所述推荐信息。
52.第五方面,本申请实施例还提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如第一方面或第二方面提供的所述方法的步骤。
53.第六方面,本申请实施例还提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如以执行如第一方面或第二方面提供的所述方法的步骤。
54.本申请的有益效果是:
55.本申请实施例提供一种信息推荐模型训练方法、信息推荐方法、装置及设备,该方法包括:获取信息推荐模型所应用领域的多级标签树,多级标签树每一级中包括应用领域的至少一种标签特征,在多级标签树的相邻两级中,后一级的一个标签特征唯一归属于前一级的一个标签特征;根据多级标签树中最后一级的标签特征,生成嵌入矩阵;根据多级标签树中各级标签特征之间的归属关系,生成嵌入矩阵对应的索引记录表,索引记录表中包括至少一个索引值,索引值用于表示多级标签树中除最后一级外的每一级的标签特征对应的最后一级的标签特征在嵌入矩阵中的个数和位置;根据嵌入矩阵以及索引记录表,训练得到信息推荐模型。在本方案中,根据多级标签树中最后一级的标签特征和各级标签特征之间的归属关系,分别生成嵌入矩阵和该嵌入矩阵对应的索引记录表,并使用嵌入矩阵以及索引记录表,训练得到信息推荐模型,这样能够确保信息推荐模型快速且准确的学习到多级标签特征间的关联性和一致性。
附图说明
56.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
57.图1为本申请实施例提供的一种电子设备的结构示意图;
58.图2为本申请实施例提供的一种信息推荐模型训练方法的流程示意图;
59.图3为本申请实施例提供的一种信息推荐模型训练方法中的多级标签树的结构示意图;
60.图4为本申请实施例提供的另一种信息推荐模型训练方法的流程示意图;
61.图5为本申请实施例提供的又一种信息推荐模型训练方法的流程示意图;
62.图6为本申请实施例提供的另一种信息推荐模型训练方法的流程示意图;
63.图7为本申请实施例提供的一种信息推荐方法的流程示意图;
64.图8为本申请实施例提供的一种信息推荐模型训练装置的结构示意图;
65.图9为本申请实施例提供的一种信息推荐装置的结构示意图。
具体实施方式
66.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
67.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
68.为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
69.另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
70.需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
71.在对本申请所提供的技术方案展开具体说明之前,先对本申请所涉及的相关背景进行简单说明:
72.目前,在信息推荐领域,是对提取到的标签特征构建级别分层的多级标签树,并针对多级标签树中的每一级标签特征分别构建一个嵌入矩阵。比如,针对第一级标签特征构建第一嵌入矩阵,第二级标签特征构建第二嵌入矩阵,并使用构建的第一嵌入矩阵和第二嵌入矩阵训练得到个性化推荐模型。但这种针对不同层级标签特征构建多个不同的嵌入矩阵,是将层级间的标签特征分开考虑,导致构建的多个嵌入矩阵存在彼此独立和割裂的问题,进而使得个性化推荐模型无法学习到多级标签特征间的关联性和一致性。
73.本申请所提供的技术方案的核心在于:针对所有层级的标签特征只构建一个嵌入矩阵,且这个嵌入矩阵是根据多级标签树的最后一级标签确定,而前面层级的标签特征对应的嵌入向量是由所定义的这个嵌入矩阵得到,这样是对多级标签树中的相邻两级间的标签特征进行了关联操作,进而使得个性化推荐模型更直接的学到多级标签树的相邻两级标签特征的关联性,同时,保证个性化推荐模型能够有效地学习到各级标签特征的一致性。
74.图1为本申请实施例提供的一种电子设备的结构示意图;该电子设备如可以是计算机或者服务器等处理设备,以用于实现本申请的信息推荐模型训练方法。如图1所示,电子设备包括:处理器101、存储器102。
75.处理器101、存储器102之间直接或间接地电性连接,以实现数据的传输或交互。例如,可通过一条或多条通信总线或信号线实现电性连接。
76.其中,处理器101可以是一种集成电路芯片,具有信号的处理能力。上述的处理器101可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
77.存储器102可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),
电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。
78.可以理解,图1所述的结构仅为示意,电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
79.存储器102用于存储程序,处理器101调用存储器102存储的程序,以执行下面实施例提供的信息推荐模型训练方法。
80.图2为本申请实施例提供的一种信息推荐模型训练方法的流程示意图,可选地,该方法的执行主体可以是服务器、计算机等设备,具有数据处理功能。如图2所示,该方法包括:
81.s201、获取信息推荐模型所应用领域的多级标签树。
82.其中,多级标签树每一级中包括应用领域的至少一种标签特征,在多级标签树的相邻两级中,后一级的一个标签特征唯一归属于前一级的一个标签特征。
83.通常,多级标签树是根据应用领域中每个数据携带的标签特征按父类和子类进行多级分类得到。
84.如下通过举例对多级标签树的结构进行简单介绍。
85.图3为本申请实施例提供的一种信息推荐模型训练方法中的多级标签树的结构示意图;如图3所示,以视频推荐应用领域为例进行介绍,在该多级标签树中包括三个层级的标签特征,分别是:第一级标签特征、第二级标签特征和第三级标签特征。
86.其中,第一级标签特征包括:体育类、综艺类、电视剧、曲艺类、音乐类、影视类、游戏类、纪录片类、少儿类、其它类等。
87.为了便于说明,以第一级标签特征中的“影视类”标签特征为例,对第二级标签特征进行介绍。第一级标签特征“影视类”标签特征对应的第二级标签特征包括:故事类型、题材类型、价值观、时空场景、市场反映、基本属性和角色类型等7个标签特征。
88.又以第二级标签特征中的“市场反映”为例,对第三级标签特征进行介绍。第二级标签特征“市场反映”对应的第三级标签特征包括:票房超十亿、网站评分、国外奖项和华语奖项等4个标签特征。
89.此外,还可以看到在上述多级标签树中相邻两级中,后一级的一个标签特征唯一归属于前一级的一个标签特征,比如,第三级标签特征“票房超十亿”是唯一归属于第二级标签特征中的“市场反映”。也可以理解为,多级标签树中相邻两级是父类与子类的关系。
90.可选地,还可以从图3中看到,上述多级标签树中得到每一级标签特征分类的总个数,比如,第一级标签特征分类的总个数是10,可以根据多个第一级标签特征,对每个视频文件的标签特征进行分类,得到多级标签树。
91.s202、根据多级标签树中最后一级的标签特征,生成嵌入矩阵。
92.在本申请中,对于多级标签树中的多级分类标签特征,不是根据所有标签特征去定义一个较大的嵌入矩阵,也不是根据每一级标签特征个数去定义多个嵌入矩阵或一个多维嵌入矩阵,而是根据多级标签树中最后一级的标签特征的个数,只构建一个嵌入矩阵a。
93.其中,嵌入矩阵a是一个m行e列的矩阵,即a
m
×
e
,m是嵌入矩阵a中的行数,m可以是大于最后一级标签特征的个数,比如,m可以是最后一级的标签特征个数的两倍;e是嵌入矩阵a中的列数,即嵌入向量的维度,可以是预设的128列的嵌入维度。
94.s203、根据多级标签树中各级标签特征之间的归属关系,生成嵌入矩阵对应的索引记录表。
95.其中,索引记录表中包括至少一个索引值,索引值用于表示多级标签树中除最后一级外的每一级的标签特征对应的最后一级的标签特征在嵌入矩阵中的个数和位置。
96.例如,在生成嵌入矩阵a的同时,并根据多级标签树中各级标签特征之间的归属关系,记录每个前一级标签特征对应的后一级标签特征的个数和位置,以生成嵌入矩阵a对应的索引记录表。
97.例如,以多级标签树中的第二级标签特征“故事类型”为例,若嵌入矩阵a共2000行,其中,“故事类型”对应包含的第三级标签特征的个数为86,则嵌入矩阵a前86行均是“故事类型”的嵌入向量,也可以用嵌入矩阵a中的前86行表示“故事类型”的嵌入向量。
98.又比如,若第一级标签特征“体育类”对应包含的第二级标签特征的个数为21,“综艺类”对应包含的第二级标签特征的个数为15,则嵌入矩阵a的前0-20行表示“体育类”对应的第二级标签特征的嵌入向量的位置,嵌入矩阵a的21-35行代表“综艺类”对应的第二级标签特征的嵌入向量的位置,以此类推。
99.s204、根据嵌入矩阵以及索引记录表,训练得到信息推荐模型。
100.以视频个性化推荐为例,通常,在视频个性化推荐应用领域中,需要训练得到信息推荐模型。
101.其中,在信息推荐模型训练时,首先,需要提取待推荐的任务的多个特征,比如,用户画像特征、视频特征、行为序列特征、上下文特征。
102.其中,视频特征包括:导演、演员、方言、视频标题、子标题、内容简介、封面、出品方、发布和更新时间、完结与否、分辨率、时长、评分、集数、播放卫视、方言、受众、年代、以及视频的多级分类标签特征等等包括但不限于以上这些。
103.上述视频特征又可以分为:离散特征、层级结构特征。比如,导演、演员、方言等可以按离散特征处理,直接定义相应的嵌入矩阵。但对于视频的多级分类标签特征则可以按本申请提供的方法生成嵌入矩阵。
104.例如,信息推荐模型可以选择深度学习网络模型(deep neural networks,简称youtubednn),该youtubednn模型比较简单。
105.例如,在初始时,上述生成的嵌入矩阵中的嵌入向量是随机初始化的,将其他属性(如离散特征)的嵌入矩阵、上述生成的嵌入矩阵以及索引记录表输入至youtubednn模型中,然后,通过多次训练,更新嵌入矩阵的参数,训练得到信息推荐模型,这样确保信息推荐模型快速且准确的学习到多级标签特征间的关联性和一致性。
106.最后,可以用嵌入矩阵a中训练得到的嵌入向量来表示每一级的标签特征。
107.此外,在对信息推荐模型进行训练时,只需维护一个嵌入矩阵即可,具有维护成本低、计算精度高等优势,使得信息推荐模型容易训练且较快达到收敛。即使在各级标签特征的数据量不大的情况下,也是能很好的学到多级标签特征间的关联性和一致性,有效地解决了小样本数据量情况下的模型特征难以学习,难以训练的问题。
108.当然,若加大各级标签特征的训练数据量时,得到信息推荐模型效果会更好。
109.综上所述,本申请实施例提供一种信息推荐模型训练方法,包括:获取信息推荐模型所应用领域的多级标签树,多级标签树每一级中包括应用领域的至少一种标签特征,在
多级标签树的相邻两级中,后一级的一个标签特征唯一归属于前一级的一个标签特征;根据多级标签树中最后一级的标签特征,生成嵌入矩阵;根据多级标签树中各级标签特征之间的归属关系,生成嵌入矩阵对应的索引记录表,索引记录表中包括至少一个索引值,索引值用于表示多级标签树中除最后一级外的每一级的标签特征对应的最后一级的标签特征在嵌入矩阵中的个数和位置;根据嵌入矩阵以及索引记录表,训练得到信息推荐模型。在本方案中,根据多级标签树中最后一级的标签特征和各级标签特征之间的归属关系,分别生成嵌入矩阵和该嵌入矩阵对应的索引记录表,并使用嵌入矩阵以及索引记录表,训练得到信息推荐模型,这样确保信息推荐模型快速且准确的学习到多级标签特征间的关联性和一致性。
110.图4为本申请实施例提供的另一种信息推荐模型训练方法的流程示意图,如图4所示,上述步骤s204:根据嵌入矩阵以及所述索引记录表,训练得到信息推荐模型,包括:
111.s401、将索引记录表中的各索引值和嵌入矩阵输入至初始推荐模型,由初始推荐模型根据各索引值,在嵌入矩阵中检索行,得到各索引值对应的嵌入向量,并将各索引值对应的嵌入向量按行拼接,得到拼接后的嵌入向量。
112.其中,初始推荐模型可以是深度学习网络模型,比如,将索引记录表中的各索引值和嵌入矩阵输入至初始推荐模型中,通过对初始推荐模型的多次迭代训练,得到信息推荐模型。
113.例如,以第二级标签特征中的“故事类型”标签特征为例,“故事类型”标签特征在嵌入矩阵对应的索引值为86,其中,索引值86可以表征嵌入矩阵a前86行均为“故事类型”对应的嵌入向量,还可以表征“故事类型”对应的嵌入向量的个数为86个。
114.因此,可以根据“故事类型”标签特征的索引值在嵌入矩阵中检索每一行,得到“故事类型”标签特征对应的多个嵌入向量,还可以得到“题材类型”标签特征对应的多个嵌入向量,其它的标签特征类似,将得到的多个嵌入向量按行拼接,得到拼接后的嵌入向量。
115.s402、使用拼接后的嵌入向量,训练得到信息推荐模型。
116.例如,将上述拼接后的嵌入向量输入至初始推荐模型中,经过多次迭代训练学习嵌入矩阵和初始推荐模型的参数,最终训练得到信息推荐模型。
117.图5为本申请实施例提供的又一种信息推荐模型训练方法的流程示意图,如图5所示,上述步骤s402:使用拼接后的嵌入向量,训练得到信息推荐模型,包括:
118.s501、将拼接后的嵌入向量作为初始推荐模型的全连接层的输入,由初始推荐模型在全连接层以及分类层进行处理并输出处理结果。
119.其中,推荐模型包括:输入层、嵌入层、拼接层、全连接层、分类层和输出层。其中,分类层可以是采用二分类的激活函数(如softmax),比如实现对点击或没点击的分类处理。
120.例如,可以将其他属性(如离散特征)的嵌入矩阵、上述索引记录表中的各索引值和嵌入矩阵输入至初始推荐模型的输入层,由初始推荐模型的嵌入层根据各索引值,在嵌入矩阵中检索行,得到各索引值对应的嵌入向量,并利用初始推荐模型中的拼接层将各索引值对应的嵌入向量按行拼接,得到拼接后的嵌入向量。
121.然后,再将上述拼接后的嵌入向量输入至初始推荐模型的全连接层和分类层中,对初始推荐模型进行多次迭代训练,输出对嵌入矩阵和初始推荐模型的参数训练的结果。
122.s502、根据处理结果迭代修正初始推荐模型,并在初始推荐模型满足预设条件时,
将满足预设条件的初始推荐模型作为信息推荐模型。
123.其中,预设条件可以是:相比于上一次得到的初始推荐模型,本次得到的初始推荐模型对待推荐信息分类的准确率提升幅度小于0.001%,说明经过多次训练得到的初始推荐模型的准确率已经无法得到明显的提升。
124.例如,在经过第3次迭代修正之后,将各级标签特征输入到初始推荐模型中,并计算得到准确率是96.0846%,相比于第2次迭代得到的初始推荐模型的准确率96.084%,本次迭代训练后的准确率提升了0.0006%,满足预设条件小于0.001%,说明此时得到的初始推荐模型的准确率已经无法得到明显提升,则可以将第3次迭代得到的初始推荐模型作为信息推荐模型。
125.当训练得到的初始推荐模型收敛后,可以使用训练学习到的嵌入矩阵去做下游任务,比如画像、模型在线预测等等。
126.图6为本申请实施例提供的另一种信息推荐模型训练方法的流程示意图,如图6所示,上述步骤s202:根据多级标签树中最后一级的标签特征,生成嵌入矩阵,包括:
127.s601、对多级标签树中最后一级的多个标签特征进行去重处理。
128.其中,多级标签树中每一级标签特征是根据视频推荐应用领域中样本的语义确定的,多级标签特征既然可以定义多级标签树中标签特征的层级关系,一定程度上包括:语义涵盖。
129.因此,可以根据标签特征的语义,对最后一级的标签特征进行去重处理,剔除重复的标签特征。
130.s602、按多级标签树中的第一级标签特征,对最后一级的多个标签特征分类排序。
131.例如,将最后一级的多个标签特征按第一级标签特征进行分类排序,如体育类、综艺类、电视剧、曲艺类、音乐类、影视类、游戏类、纪录片类、少儿类、其它类的顺序进行分类排序,使得能够与上述得到的索引记录表中的各索引值表征的每一级的标签特征对应的最后一级的标签特征在嵌入矩阵中的个数和位置的一致性。
132.s603、根据最后一级的多个标签特征的个数,生成嵌入矩阵。
133.其中,嵌入矩阵的行数为最后一级多个标签特征的个数加一,嵌入矩阵的列数是预先设定的嵌入向量维度。
134.例如,上述得到的最后一级的多个标签特征的个数为1000,则可以将嵌入矩阵a的行数设置为1001,嵌入矩阵的列数表示是具体物品定义的嵌入维度,如可以是预先设定的128的嵌入维度,即嵌入矩阵a可以表示为a
1001
×
128
,可以用嵌入矩阵a中的嵌入向量来表示每一级的标签特征。
135.可选地,根据多级标签树中各级标签特征之间的归属关系,生成嵌入矩阵对应的索引记录表,包括:
136.根据多级标签树中当前层级的一个标签特征对应的所有下一层级的标签特征的个数和位置,确定当前层级的标签特征在嵌入矩阵中对应的索引记录表的索引值。
137.其中,上述生成的索引记录表中包括多个索引值,其中,每个索引值表示多级标签树中某一层级的一个标签特征对应的所有下一层级的标签特征的个数和位置,以便于通过索引值在嵌入矩阵中检索到某一层级的一个标签特征对应的嵌入向量。
138.例如,以第二级标签特征“故事类型”为例,“故事类型”对应包含的第三级标签特
征的个数为86,且“故事类型”在多个第二级标签特征中排为第一,则可以确定多个第三级标签特征中的前86个标签特征是“故事类型”对应的所有的第三级标签特征。
139.可选地,根据各索引值,在嵌入矩阵中检索行,得到各索引值对应的嵌入向量,包括:
140.使用聚合函数对嵌入矩阵中多个检索行对应的嵌入向量进行运算,得到各索引值对应的嵌入向量。
141.例如,若y表示当前层的标签特征,x表示当前层某个标签特征所有下一层标签特征的个数和位置,则可以由下述公式(1)递推计算得到前面层级的标签特征的嵌入向量:
[0142][0143]
其中,表示当前层标签特征所包含的下一层标签特征的第k个嵌入向量;w
k
表示行嵌入向量的权重,可以根据业务调整自行定义,也可以由信息推荐模型训练学习得到;表示当前层标签特征的嵌入向量,i到j表示该当前层标签特征对应的下一层标签特征的范围个数,idx一级标签索引。
[0144]
比如,若多级标签树中总共二级标签特征,第一级标签特征排序是电影、综艺、少儿等等,其中,电影的二级标签特征包含10个,则嵌入矩阵a的前10行即10
×
e,使用聚合函数对嵌入矩阵中前10行的嵌入向量进行运算,比如,取这10行嵌入向量的算术和、均值,或最大值作为第一级标签特征电影的嵌入向量。
[0145]
还可以利用循环神经网络(recurrent neural network,简称rnn)循环神经网络对上述嵌入矩阵中前10行嵌入向量进行聚合,将得到的维度为1
×
e作为第一级标签特征电影的嵌入向量。
[0146]
如下具体介绍利用上述训练得到的信息推荐模型,实现向用户推荐信息的过程。
[0147]
图7为本申请实施例提供的一种信息推荐方法的流程示意图,如图7所示,该方法包括:
[0148]
s701、获取待推荐信息的多个特征。
[0149]
例如,待推荐信息是向用户推荐可能感兴趣的视频,则待推荐信息的多个特征可以是用户特征、视频特征、用户行为序列特征、上下文特征。
[0150]
其中,用户特征包括:用户的标识、性别、年龄、活跃度总观看时长等、完播次数、播放来源偏好统计等。
[0151]
视频特征包括:视频标题、子标题、内容简介、封面、媒资来源、出品方、发布和更新时间、完结与否、分辨率、时长、评分、集数、播放卫视、方言、受众、年代、演员、导演、以及视频的多级标签特征等。比如,上述视频的多级标签特征可以是待推荐视频的第一级标签特征、第二级标签特征和第三级标签特征等。
[0152]
用户行为序列特征包括:近15天的用户观看历史、收藏历史,例如,收藏视频、取消收藏、手动搜索、语音搜索、观看行为、点击行为、发生日期和时间等行为特征。
[0153]
上下文特征包括:请求的环境、请求时间、页面类型、发生所在产品路径、网络延时等。
[0154]
s702、将待推荐信息的多个特征输入预先训练得到的信息推荐模型,得到推荐信
息。
[0155]
其中,信息推荐模型是基于嵌入矩阵以及嵌入矩阵对应的索引记录表训练得到,嵌入矩阵根据信息推荐模型所应用领域的多级标签树的最后一级标签特征生成,索引记录表用于表示多级标签树中除最后一级外的每一级的标签特征对应的最后一级的标签特征在嵌入矩阵中的个数和位置。
[0156]
其中,上述待推荐信息的多个特征中除“视频的多级标签特征”是层级结构特征之外,其余的特征均属于离散特征。
[0157]
对于离散特征,可以直接定义相应的嵌入矩阵进行编码。但对于视频的多级分类标签特征,则可以根据上述训练的嵌入矩阵和以及索引记录表得到视频的每一级标签特征对应的嵌入向量,然后将离散特征的编码、以及每一级标签特征对应的嵌入向量输入预先训练得到的信息推荐模型的拼接层、全连接层和分类层,输出向用户推送的多个视频的点击概率。
[0158]
s703、输出推荐信息。
[0159]
例如,以预测点击通过率(click-through-rate,简称ctr)任务为例,将上述得到的待推荐的多个视频的点击概率按由大到小进行排序,以向用户推荐可能感兴趣的视频资源,即输出的推荐信息是用户对推送的视频资源点击或不点击的概率。
[0160]
下述对用以执行本申请所提供的信息推荐模型训练方法、信息推荐方法对应的装置及存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。
[0161]
图8为本申请实施例提供的一种信息推荐模型训练装置的结构示意图;如图8所示,该装置包括:获取模块801、生成模块802以及训练模块803;
[0162]
获取模块801,用于获取信息推荐模型所应用领域的多级标签树,多级标签树每一级中包括应用领域的至少一种标签特征,在多级标签树的相邻两级中,后一级的一个标签特征唯一归属于前一级的一个标签特征;
[0163]
生成模块802,用于根据多级标签树中最后一级的标签特征,生成嵌入矩阵;根据多级标签树中各级标签特征之间的归属关系,生成嵌入矩阵对应的索引记录表,索引记录表中包括至少一个索引值,索引值用于表示多级标签树中除最后一级外的每一级的标签特征对应的最后一级的标签特征在嵌入矩阵中的个数和位置;
[0164]
训练模块803,用于根据嵌入矩阵以及索引记录表,训练得到信息推荐模型。
[0165]
可选地,训练模块803,还用于:
[0166]
将索引记录表中的各索引值和嵌入矩阵输入至初始推荐模型,由初始推荐模型根据各索引值,在嵌入矩阵中检索行,得到各索引值对应的嵌入向量,并将各索引值对应的嵌入向量按行拼接,得到拼接后的嵌入向量;
[0167]
使用拼接后的嵌入向量,训练得到信息推荐模型。
[0168]
可选地,训练模块803,还用于:
[0169]
将拼接后的嵌入向量作为初始推荐模型的全连接层的输入,由初始推荐模型在全连接层以及分类层进行处理并输出处理结果;
[0170]
根据处理结果迭代修正初始推荐模型,并在初始推荐模型满足预设条件时,将满足预设条件的初始推荐模型作为信息推荐模型。
[0171]
可选地,生成模块802,还用于:
[0172]
对多级标签树中最后一级的多个标签特征进行去重处理;
[0173]
按多级标签树中的第一级标签特征,对最后一级的多个标签特征分类排序;
[0174]
根据最后一级的多个标签特征的个数,生成嵌入矩阵;其中,嵌入矩阵的行数为最后一级多个标签特征的个数加一,嵌入矩阵的列数是预先设定的嵌入向量维度。
[0175]
可选地,生成模块802,还用于:
[0176]
根据多级标签树中当前层级的一个标签特征对应的所有下一层级的标签特征的个数和位置,确定当前层级的标签特征在嵌入矩阵中对应的索引记录表的索引值。
[0177]
可选地,训练模块803,还用于:
[0178]
使用聚合函数对嵌入矩阵中多个检索行对应的嵌入向量进行运算,得到各索引值对应的嵌入向量。
[0179]
图9为本申请实施例提供的一种信息推荐装置的结构示意图;如图9所示,该装置包括:获取模块901、输入模块902以及输出模块903;
[0180]
获取模块901,用于获取待推荐信息的多个特征;
[0181]
输入模块902,用于将待推荐信息的多个特征输入预先训练得到的信息推荐模型,得到推荐信息,信息推荐模型基于嵌入矩阵以及嵌入矩阵对应的索引记录表训练得到,嵌入矩阵根据信息推荐模型所应用领域的多级标签树的最后一级标签特征生成,索引记录表用于表示多级标签树中除最后一级外的每一级的标签特征对应的最后一级的标签特征在嵌入矩阵中的个数和位置;
[0182]
输出模块903,用于输出推荐信息。
[0183]
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
[0184]
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,简称asic),或,一个或多个微处理器(digital singnal processor,简称dsp),或,一个或者多个现场可编程门阵列(field programmable gate array,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,简称cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。
[0185]
可选地,本发明还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。
[0186]
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0187]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目
的。
[0188]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0189]
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文:read-only memory,简称:rom)、随机存取存储器(英文:random access memory,简称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1