直播的数据处理方法、装置和电子设备与流程

allin2022-07-13  134



1.本发明涉及人工智能技术领域,尤其是涉及一种直播的数据处理方法、装置和电子设备。


背景技术:

2.预估点击率推荐目标通常是指,根据用户最近的行为,针对不同的目标确定该目标被用户点击的概率,根据概率为用户推荐目标。相关技术中,通过对用户行为和目标对象进行建模,确定目标对象的点击率,比如,针对用户最近在直播间观看和打赏过的嘉宾(g1/g 2/g3)和一个目标嘉宾(g1),通常注意力机制和预测模型预估目标嘉宾(g1)的直播间被用户点击观看的点击率,进而根据点击率确定是否为用户推荐目标嘉宾或目标嘉宾的直播间。当需要预估的对象中包含有多个目标,比如,包括主播和多个嘉宾的直播间,通常根据直播间的主持人信息或者主播信息,预估该直播间的点击率,该种预估方式会丢失推荐对象中的大量有用信息,比如直播间中其他嘉宾的信息,导致预估的点击率不准确,影响直播间的推荐效果。


技术实现要素:

3.有鉴于此,本发明的目的在于提供一种直播的数据处理方法、装置和电子设备,以提高预估点击率的准确度,提高对象的推荐效果。
4.第一方面,本发明实施例提供了一种直播的数据处理方法,方法包括:获取目标用户在直播间的历史行为序列特征和待推荐对象的对象序列特征;其中,待推荐对象中包括多个目标;对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重;基于权重和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征;基于目标交叉特征,确定待推荐对象的预估点击率。
5.进一步的,历史行为序列特征包括第一序列特征,第一序列特征包括:所述直播间的目标信息;对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重的步骤,包括:对第一序列特征和对象序列特征中每个目标的子序列特征进行相乘运算,计算历史行为序列特征和对象序列特征的第一相乘结果;根据第一相乘结果,第一序列特征和对象序列特征,确定历史行为序列特征的权重。
6.进一步的,对第一序列特征和对象序列特征中每个目标的子序列特征进行相乘运算,计算历史行为序列特征和对象序列特征的第一相乘结果的步骤,包括:对对象序列特征中每个目标的子序列特征进行平均运算,得到对象序列特征的平均序列特征;对第一序列特征和平均序列特征进行相乘运算,得到历史行为序列特征和对象序列特征的第一相乘结果。
7.进一步的,对第一序列特征和对象序列特征中每个目标的子序列特征进行相乘运算,计算历史行为序列特征和对象序列特征的第一相乘结果的步骤,包括:将第一序列特征分别与对象序列特征中每个目标的子序列特征进行相乘运算,得到历史行为序列特征和对
象序列特征的第一相乘结果。
8.进一步的,根据第一相乘结果,第一序列特征和对象序列特征,确定历史行为序列特征的权重的步骤,包括:对第一相乘结果,第一序列特征和对象序列特征进行拼接处理,得到第一拼接结果;将第一拼接结果输入至预先训练完成的第一全连接层,得到历史行为序列特征的权重。
9.进一步的,历史行为序列特征还包括第一序列特征和第二序列特征;第一序列特征包括:直播间的目标信息;第二序列特征包括:目标用户在直播间针对目标的行为信息;基于权重和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征的步骤,包括:将权重分别与第一序列特征和/或第二序列特征进行相乘运算,得到第二相乘结果;根据第二相乘结果和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征。
10.进一步的,根据第二相乘结果和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征的步骤,包括:将第二相乘结果和历史行为序列特征进行拼接处理,得到第二拼接结果;将第二拼接结果输入至预先训练完成的第二全连接层,得到历史行为序列特征与对象序列特征的第一交叉特征;获取与目标用户在直播间的历史行为相关的目标与待推荐对象中每个目标的品类交叉特征;将第一交叉特征和品类交叉特征进行相加运算,得到历史行为序列特征与对象序列特征的目标交叉特征。
11.进一步的,基于目标交叉特征,确定待推荐对象的预估点击率的步骤,包括:将目标交叉特征输入至预先训练完成的激活层,确定待推荐对象的预估点击率。
12.进一步的,获取目标用户在直播间的历史行为序列特征和待推荐对象的对象序列特征的步骤,包括:通过目标数据库获取与目标用户在直播间的指定历史行为相关的第一目标的第一信息,与目标用户针对第一目标的行为信息,以及目标用户的用户信息;获取待推荐对象的第二信息;将第一信息,行为信息和用户信息,进行自然语言处理,得到历史行为序列特征;将第二信息进行自然语言处理,得到对象序列特征。
13.第二方面,本发明实施例提供了一种直播的数据处理装置,装置包括:特征获取模块,用于获取目标用户在直播间的历史行为序列特征和待推荐对象的对象序列特征;其中,待推荐对象中包括多个目标;权重确定模块,用于对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重;特征确定模块,用于基于权重和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征;预估点击率确定模块,用于基于目标交叉特征,确定待推荐对象的预估点击率。
14.第三方面,本发明实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现第一方面任一项的直播的数据处理方法。
15.第四方面,本发明实施例提供了一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现第一方面任一项的直播的数据处理方法。
16.本发明实施例带来了以下有益效果:
17.本发明提供了一种直播的数据处理方法、装置和电子设备,获取目标用户在直播间的的历史行为序列特征和待推荐对象的对象序列特征;其中的待推荐对象中包括多个目
标;对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重;基于权重和历史行为序列特征,确定待推荐对象的预估点击率。该方式中,通过对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,实现了在序列特征对序列特征,即待推荐对象包括多个目标的情况下,确定目标用户点击待推荐对象的预估点击率,充分利用了待推荐对象的所有信息,提高了预估点击率的准确度,提高了对象的推荐效果。
18.本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
19.为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
20.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1为本发明实施例提供的一种数据处理方法的流程图;
22.图2为本发明实施例提供的一种数据处理方法中权重确定方法的流程示意图;
23.图3为本发明实施例提供的另一种数据处理方法中权重确定方法的流程示意图;
24.图4为本发明实施例提供的一种数据处理方法中目标交叉特征确定方法的流程示意图;
25.图5为本发明实施例提供的另一种数据处理方法中目标交叉特征确定方法的流程示意图;
26.图6为本发明实施例提供的另一种数据处理方法中目标交叉特征确定方法的流程示意图;
27.图7为本发明实施例提供的另一种数据处理方法中目标交叉特征确定方法的流程示意图;
28.图8为本发明实施例提供的另一种数据处理方法中特征序列确定方法的流程示意图;
29.图9为本发明实施例提供的一种具体的数据处理方法的流程示意图;
30.图10为本发明实施例提供的一种数据处理装置的结构示意图;
31.图11为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
32.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
33.目前大数据环境下,通过深度学习算法为用户推荐对象的方法已经成为普遍现象,通常采用din(deep interest network,深度兴趣网络)模型预估点击率。该模型中的注意力机制结构可以较好的对用户局部感兴趣的物品或主播等进行建模,比如对用户最近在直播间购买的商品序列与某一个商品建模,从而给用户推荐最有可能点击的售卖该商品的直播间。再如,用户最近观看并打赏的主播或嘉宾序列与某一主播或嘉宾建模。从而给用户推荐最有可能点击的直播间。再如,想要预估包含主播和多个嘉宾的目标直播间的点击率时,通常是通过用户最近观看并打赏的主播或嘉宾序列与目标直播间中的一个主播或者多个嘉宾中的一个嘉宾进行建模,确定目标直播间的预估点击率。
34.上述方式仅可以预估某一直播间的点击率,可以针对序列特征(用户在直播间购买过的商品good1/good2/good3)与一个包含目标商品的直播间的建模(商品good1)。尽可以预估售卖该目标商品good1的直播间的点击率。或者,可以针对序列特征(用户在直播间打赏过的嘉宾id1/id2/id3)与一个包含目标嘉宾(id1)的直播间的建模。尽可以预估包含该目标嘉宾id1的直播间的点击率。
35.针对需要预估的对象中包含有多个目标时,比如,包括多个嘉宾的直播间,售卖多种商品的直播间等,通常根据对象(或直播间)中的一个商品信息或者主持人信息,预估直播间的点击率。比如需要预估的直播间包括多个嘉宾,嘉宾特征为(aid1/aid 3/aid 5),通常根据直播间中名气较大(gid1)或者直播间中的主持人的特征(gid3)作为目标特征,预估直播间的点击率。该种预估方式会丢失推荐对象中的大量有用信息,导致预估的点击率不准确,影响直播间的推荐效果。
36.基于此,本发明实施例提供的一种直播的数据处理方法、装置和电子设备,该技术可以应用于终端设备或者服务器,尤其可以应用于具有对象推荐功能的设备。
37.为便于对本实施例进行理解,首先对本发明实施例所公开的一种数据处理方法进行详细介绍,如图1所示,该方法包括:
38.步骤s102,获取目标用户在直播间的历史行为序列特征和待推荐对象的对象序列特征;其中,待推荐对象中包括多个目标;
39.上述历史行为序列特征通常是根据与目标用户在直播间的历史行为相关的对象信息和行为信息确定的,其中的对象信息可以是在直播间购买的商品信息,也可以是目标用户在直播间中打赏的主播信息或者嘉宾信息;比如,目标用户在前一周的时间内在一个或者多个直播间购买了商品a、商品b、商品c、商品d;观看了商品e、商品f、商品g、商品h的直播讲解;可以根据商品的名称和类别等信息进行特征处理,得到上述历史行为序列特征。当然还可以获取用户在直播间中针对商品的行为信息,比如在直播间中是否将商品加入购物车,在直播间中观看商品讲解的时间,在直播间中购买商品的价格等,可以根据该行为信息进行特征处理,得到上述历史行为序列特征。
40.再如,用户在前一周的时间内在多个直播间观看了嘉宾a、嘉宾b、嘉宾c、嘉宾d的直播;为其中的嘉宾b和嘉宾c送了礼物,在嘉宾d的直播间购买了商品;私聊了嘉宾a,可以分别根据不同行为的嘉宾名称,进行特征处理,得到上述历史行为序列特征。当然还可以获取用户为每个嘉宾的付费金额,私聊嘉宾的次数等,可以根据该行为信息进行特征处理,得到上述历史行为序列特征。另外,上述行为特征序列还可以包括用户的用户信息,比如用户的账号、昵称、账号活跃度等。
41.上述待推荐对象中包括多个目标,其中的待推荐对象通常是指直播间,比如,包括多个嘉宾的直播间,售卖多种商品的直播间;待推荐对象中包括的目标通常是指直播间中包括的嘉宾或者主播,或者售卖的各种商品。上述对象序列特征通常是根据包括的多个目标的名称信息进行特征处理确定的。上述序列特征通常为具有大小的矩阵,比如10*16的矩阵,其中包括有各种信息。通常上述序列特征为embedding向量,每个embedding向量可以表示一个物体,可以是一个词,或是一个商品,或是一个电影等。embedding向量的性质是能使距离相近的向量对应的物体有相近的含义。比如蜘蛛侠的embedding和钢铁侠的embedding之间的距离就会很接近,但蜘蛛侠的embedding和前任攻略embedding的距离就会远一些。
42.具体的,可以在系统的各种数据库中,获取目标用户在各个直播间中的历史行为相关的各种信息,其中包括实时信息还包括离线信息等。根据实际需要从各种信息中获取目标信息,然后将目标信息进行特征处理,得到上述序列特征。
43.步骤s104,对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重;
44.相关技术中,针对包括一个目标的待推荐对象的对象序列特征,通常直接将该对象序列特征与历史行为序列特征中的每个序列特征进行交叉运算,根据运算结果得到历史行为序列特征的权重。但是,当待推荐对象包括多个目标时,需要对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,才可以充分利用待推荐对象中的信息。
45.具体的,由于对象序列特征为多维的矩阵,历史行为序列特征也为多维矩阵,因此可以计算对象序列特征中每个目标的子序列特征的平均值,或者加权平均值,得到的运算结果为一个一维向量,最后将运算结果与历史行为序列特征(即多维矩阵)中的每个向量进行相乘运算。或者,可以将对象序列特征中每个目标的子序列特征(即一维向量)与历史行为序列特征(即多维矩阵)中的每个向量进行相乘运算,该种方式得到交叉运算结果中包括对象序列特征中的所有信息。最后得到的交叉运算结果通过注意力机制中的网络层为历史行为序列特征中每个子序列特征确定权重。其中,历史行为序列特征中每个子序列特征(即每个一维向量)都对应有一个权重。
46.另外,进行交叉运算的历史行为序列特征,可以不是全部的序列特征,比如,可以是包括所有对象信息(商品信息或嘉宾信息)的序列特征,或者是包括所有对象信息(商品信息或嘉宾信息)的序列特征,以及在直播间的部分行为信息的序列特征等。具体可以根据实际需要进行设置。
47.步骤s106,基于权重和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征;
48.具体的,可以将权重与历史行为序列特征中的每个子序列特征进行交叉运算,也可以将权重与历史行为序列特征中的部分子序列特征进行交叉运算,具体可以根据实际需要进行设置。另外,其中的部分子序列特征也可以根据实际需要进行设置。然后将计算得到的交叉结果输入至预测模型中的网络层,可以得到历史行为序列特征与对象序列特征的目标交叉特征。
49.上述目标交叉特征通常用于表征待推荐对象与用户行为的对象之间的距离,其中距离越近则说明待推荐对象被点击的概率越大,距离越远则说明待推荐对象被点击的概率
越小。
50.步骤s108,基于目标交叉特征,确定待推荐对象的预估点击率。
51.具体的,可以将目标交叉特征输入至神经网络的激活函数,输出待推荐对象的预估点击率。其中述目标交叉特征通常用于表征待推荐对象与用户行为的对象之间的距离,具体可以根据其中的距离,计算待推荐对象被点击的概率。
52.本发明实施例提供的一种数据处理方法,获取目标用户在直播间的的历史行为序列特征和待推荐对象的对象序列特征;其中的待推荐对象中包括多个目标;对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重;基于权重和历史行为序列特征,确定待推荐对象的预估点击率。该方式中,通过对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,实现了在序列特征对序列特征,即待推荐对象包括多个目标的情况下,确定目标用户点击待推荐对象的预估点击率,充分利用了待推荐对象的所有信息,提高了预估点击率的准确度,提高了对象的推荐效果。
53.上述历史行为序列特征包括第一序列特征,该第一序列特征包括:直播间的目标信息,其中的目标可以是直播间中包括的嘉宾、主播,还可以是直播间中直播售卖的商品等。其中的目标信息可以是直播间中包括的嘉宾名称、主播名称(或主播的直播间账号名称),还可以是直播间中直播售卖的商品名称等。具体可以是目标用户在直播间中购买的商品的名称,比如,a品牌b型号的笔记本电脑、c品牌d序列的面霜、e品牌f风格的牛仔裤等。还可以是关注、观看、私聊、送过礼物或者买过商品的主播或嘉宾的名字,比如,张三、李四等。还可以是关注、观看、私聊、送过礼物或者买过商品的账号的名称,比如,网易严选、g品牌官方账号等。需要说明的是,可以是目标用户对直播间中的目标进行了上述行为(打赏,观看,购买,私聊,关注等)后,将该目标的名称确定为上述目标信息,并确定为第一序列特征。其中,上述目标信息不会包含目标用户针对直播间中目标的具体行为。
54.下面描述对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重的步骤,一种可能的实施方式:
55.步骤1,对第一序列特征和对象序列特征中每个目标的子序列特征进行相乘运算,计算历史行为序列特征和对象序列特征的第一相乘结果;
56.比如,目标信息为10个主播名字,上述第一序列特征通常为10*16的矩阵,待推荐对象中包括3个主播的名字,上述对象序列特征通常为3*16的矩阵,其中包括3个1*16的向量。
57.上述步骤1,一种可能的实施方式:对对象序列特征中每个目标的子序列特征进行平均运算,得到对象序列特征的平均序列特征;对第一序列特征和平均序列特征进行相乘运算,得到历史行为序列特征和对象序列特征的第一相乘结果。
58.继续上述的例子说明,参见图2所示的权重确定方法的流程示意图,首先计算对象序列特征3*16的矩阵的平均值(对应图2中的average pooling),即计算3个1*16的向量的平均值,得到一个1*16的平均向量,即上述平均序列特征。然后将1*16的平均向量与第一序列特征10*16的矩阵进行相乘运算,即通过图2中multiply函数实现,由于是对应位相乘,所以可以将1*16的平均向量广播为10*16矩阵的相乘结果(就是将1*16复制9份变为10*16),及上述第一相乘结果。该方式中,计算对象序列特征中子序列特征的平均值与第一序列特
征进行运算,能够建立序列对序列的模型,充分利用了对象序列特征中的所有信息,提高了预估点击率的准确度。
59.上述步骤1另一种可能的实施方式:将第一序列特征分别与对象序列特征中每个目标的子序列特征进行相乘运算,得到历史行为序列特征和对象序列特征的第一相乘结果。
60.继续上述的例子说明,参见图3所示的权重确定方法的流程示意图,将第一序列特征10*16的矩阵分别与对象序列特征中每个子序列特征(3*16的矩阵中的每个1*16的向量)进行相乘运算,即通过图2中multiply函数实现,每个子序列特征对应得到一个相乘结果。由于是对应位相乘,所以每个子序列特征的1*16的向量广播为10*16矩阵的相乘结果(就是将1*16复制9份变为10*16),每个子序列特征对应得到一个相乘结果,即上述第一相乘结果。该方式中,分别计算对象序列特征中子序列特征与第一序列特征进行运算,能够建立序列对序列的模型,充分利用了对象序列特征中的所有信息,提高了预估点击率准确度。
61.步骤2,根据第一相乘结果,第一序列特征和对象序列特征,确定历史行为序列特征的权重。
62.一种可能的实施方式:对第一相乘结果,第一序列特征和对象序列特征进行拼接处理,得到第一拼接结果;将第一拼接结果输入至预先训练完成的第一全连接层,得到历史行为序列特征的权重。
63.如图2和图3所示,将multipiy函数计算的结果,即上述第一相乘结果,以及第一序列特征和对象序列特征输入至concat(即拼接层)中,具体的可以在每个矩阵的最后维度进行拼接。比如第一相乘结果为10*16的矩阵,第一序列特征为10*16的矩阵,对象序列特征为3*16的矩阵进行拼接处理得到上述第一拼接结果,其维度为10*48。然后将第一拼接结果输入至预先训练完成的第一全连接层会得到10*1的矩阵,即历史行为序列特征的权重。上述第一全连接层可以包括两层全连接层,全连接层的目的是降维。该方式将第一相乘结果,第一序列特征和对象序列特征进行拼接并进行降维即可得到历史行为序列特征的权重,该权重是充分利用所有对象信息得到的,提高了预估点击率的准确度。
64.上述方式中,通过对历史行为序列特征和对象序列特征中每个目标的子序列特征进行相乘运算,充分利用了待推荐对象的所有信息,提高了预估点击率的准确度,提高了对象的推荐效果。
65.上述历史行为序列特征还包括第一序列特征和第二序列特征;第一序列特征包括:直播间的目标信息;第二序列特征包括:目标用户在直播间针对目标的行为信息;该行为信息可以是指目标用户在直播间中对商品的购买次数、停留时间,加入购物车数量等,比如,购买了商品a两次,观看商品v的讲解6分钟;还可以是指目标用户在直播间中对主播或嘉宾的打赏金额、评论次数、私信次数、连麦时长等行为信息。比如,打赏主播a一元,评论主播a三次,私信主播a四次,连麦嘉宾a七分钟等;还可以是目标用户在直播间对商品的购买金额,比如,a品牌b型号的笔记本电脑5000元,c品牌d系列的面霜200元等。还可以是目标用户在周播间为主播送礼物的金额,比如,张三20、李四30等。
66.下面描述如何确定目标交叉特征,具体包括:将权重分别与第一序列特征和/或第二序列特征进行相乘运算,得到第二相乘结果;根据第二相乘结果和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征。
67.具体的,可以是将权重与第一序列特征进行相乘运算,得到第二相乘结果;或者将权重与第二序列特征进行相乘运算,得到第二相乘结果;或者将权重分别与第一序列特征和第二序列特征进行相乘运算,得到第二相乘结果。
68.一种可能的方式一:权重与第二序列特征进行相乘运算,得到第二相乘结果,根据第二相乘结果和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征。如图4所示的交叉特征确定方法的流程示意图,图中的attention unit即为上述确定权重的部分,在得到行为序列的权重后,可以将权重与第二序列特征进行相乘运算(如图4中的multiply),得到第二相乘结果。最后将第二相乘结果与历史行为序列特征中的第一序列特征输入至concat得到上述目标交叉特征。当然还可以将第二相乘结果与所有历史行为序列特征输入至concat得到上述目标交叉特征,或者将第二相乘结果与历史行为序列特征中的第一序列特征,以及其他部分的序列特征(比如包括用户信息的序列特征)输入至concat得到上述目标交叉特征。当然,如果第二序列特征包括多个,则可以将权重分别与每个第二序列特征进行相乘运算(如图4中的multiply),得到多个第二相乘结果。
69.一种可能的方式二:权重与第一序列特征进行相乘运算,得到第二相乘结果,根据第二相乘结果和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征。如图5所示的交叉特征确定方法的流程示意图,图中的attention unit即为上述确定权重的部分,在得到行为序列的权重后,可以将权重与第一序列特征进行相乘运算(如图4中的multiply),得到第二相乘结果。最后将第二相乘结果与历史行为序列特征中的第二序列特征输入至concat得到上述目标交叉特征;当然还可以将第二相乘结果与所有历史行为序列特征输入至concat得到上述目标交叉特征,或者将第二相乘结果与历史行为序列特征中的第二序列特征,以及其他部分的序列特征(比如包括用户信息的序列特征)输入至concat得到上述目标交叉特征。
70.或者,还可以是如图6所示的交叉特征确定方法的流程示意图,其中是需要将历史行为序列特征中的第一序列特征和第二序列特征以及对象序列特征输入至attention unit得到历史行为序列特征的权重,然后将第一序列特征与权重进行相乘运算,得到交叉特征。
71.一种可能的方式三:权重分别与第一序列特征和第二序列特征进行相乘运算,得到第二相乘结果,根据第二相乘结果和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征。如图7所示的交叉特征确定方法的流程示意图,图中的attention unit即为上述确定权重的部分,在得到行为序列的权重后,可以将权重与第一序列特征进行相乘运算,同时将权重与第二序列特征进行相乘运算(如图4中的multiply),得到两个第二相乘结果。最后将第二相乘结果输入至concat得到上述第一交叉特征;当然还将第二相乘结果与历史行为序列特征中的第二序列特征输入至concat得到上述目标交叉特征;当然还可以将第二相乘结果与所有历史行为序列特征输入至concat得到上述目标交叉特征,或者将第二相乘结果与历史行为序列特征中的第二序列特征,以及其他部分的序列特征(比如包括用户信息的序列特征)输入至concat得到上述目标交叉特征。
72.具体通过上述哪种方式计算上述目标交叉特征,通常需要根据实际的应用场景进行实验确定。
73.其中,根据第二相乘结果和历史行为序列特征,确定历史行为序列特征与对象序
列特征的目标交叉特征,一种可能的实施方式:
74.将第二相乘结果和历史行为序列特征进行拼接处理,得到第二拼接结果;将第二拼接结果输入至预先训练完成的第二全连接层,得到历史行为序列特征与对象序列特征的第一交叉特征;获取与目标用户在直播间的历史行为相关的目标与待推荐对象中每个目标的品类交叉特征;将第一交叉特征和品类交叉特征进行相加运算,得到历史行为序列特征与对象序列特征的目标交叉特征。
75.具体的,如图4所示的目标交叉特征确定方法的流程示意图,其中,将第二相乘结果和历史行为序列特征中的第一序列特征进行拼接处理;当然也可以将第二相乘结果和历史行为序列特征中的第二序列特征进行拼接处理;当然可以将第二相乘结果和历史行为序列特征中的第二序列特征以及包括用户信息的序列特征进行拼接处理,最后得到第二拼接结果。将第二拼接结果输入至预先训练完成的第二全连接层,得到历史行为序列特征与对象序列特征的第一交叉特征;其中,第二全连接层的作用为将第二拼接结果进行降维处理,得到第一交叉特征。
76.举例说明,与目标用户在直播间的历史行为相关的目标为,用户在直播间观看并打赏了嘉宾a,嘉宾b,嘉宾c,嘉宾d,待推荐对象(待推荐直播间)中每个目标包括嘉宾a,嘉宾e和嘉宾n,则嘉宾a与待推荐对象中嘉宾a的品类交叉特征为“1”;嘉宾a与待推荐对象中嘉宾e的品类交叉特征为“0”;嘉宾a与待推荐对象中嘉宾n的品类交叉特征为“0”;嘉宾b与待推荐对象中嘉宾a的品类交叉特征为“0”等。最终针对每个嘉宾会得到一个交叉特征的矩阵。最后将第一交叉特征和上述品类交叉特征进行相加运算(如图4中的add),得到历史行为序列特征与对象序列特征的目标交叉特征。另外,品类交叉特征通常需要先输入lr(logistic regression,逻辑回归)层为品类交叉特征赋予权重。
77.下面描述基于目标交叉特征,确定待推荐对象的预估点击率的步骤,一种可能的实施方式:将目标交叉特征输入至预先训练完成的激活层,确定待推荐对象的预估点击率。
78.上述激活函数可以是sigmoid函数,将目标交叉特征输入至sigmoid函数,可以得到待推荐对象的预估点击率。另外需要说明的是,当需要训练模型中的参数时,在得到待推荐对象的预估点击率后还需要将待推荐对象的预估点击率输入至损失函数中(比如cross entropy loss,交叉熵损失函数),得到待推荐对象的预估点击率与预设的预估点击率的损失值,根据损失值更新模型中的参数,知道损失值达到预设要求,则可以得到训练完成的预测模型。
79.下面描述如何得到序列特征。上述获取目标用户在直播间的历史行为序列特征和待推荐对象的对象序列特征的步骤,具有包括:通过目标数据库获取与目标用户在直播间的指定历史行为相关的第一目标的第一信息,目标用户针对第一目标的行为信息,以及目标用户的用户信息;获取待推荐对象的第二信息;将第一信息,行为信息和用户信息,进行自然语言处理,得到历史行为序列特征;将第二信息进行自然语言处理,得到对象序列特征。
80.具体的,可以从redis数据库中获取实时信息,具体可以获取对推荐对象的第二信息,比如,直播间的直播间信息,嘉宾信息,售卖的商品信息,还可以获取待推荐对象的实时相关信息,比如实时热度等。从hbase数据库中可以获取离线信息,即与目标用户在直播间的指定历史行为相关的第一目标的第一信息,其中第一目标可以是直播间、主播、嘉宾、售
卖的商品等;第一信息可以是直播间名称、主播名称、嘉宾名称、售卖的商品名称等。还获取目标用户针对第一目标的行为信息,比如针对碧嘉宾a的私信行为,针对商品v的购买行为。还获取目标用户的用户信息。
81.以图8为例说明,上述的自然语言处理可以是,针对语言信息,比如商品名称、主播名字等信息,可以先对第一信息、第二信息、行为信息和用户进行hash映射,hash映射的主要目的是将信息映射到从0到n唯一一个值上,n的大小可以指定。具体听过调用函数实现。通过hash映射后可以得到信息的“vec”,比如第一信息的数据为12432,422341,3212241

这些都是目标在数据库中的uid,经过hash映射以后会将这些值映射为0到n的唯一一个值,变成32,14,23

(这些值并不是真实值)。举例说明,可以将所有目标uid映射为从0到99的值,先初始化一个100*16的矩阵,遇到一个目标就会去取100*16矩阵中相应位置的行,比如hash(12432)对应32,就去取第32行的数据得到1*16矩阵,就是12432这个uid的embedding。同理10*1的uid序列可以变为10*16的embedding。
82.针对金额等数字信息,比如用户付费是一个连续值,理论上可以覆盖从0到无限大。我们如果要对付费金额做embedding,就需要知道有多少种类型的付费金额,类比到上述方式,知道有100个对象,那么可以创建1个100*16的矩阵表示embedding矩阵。但是如果要给无限多的值做embedding显然是不合理的。所以需要先做分桶,在推荐算法业界里,连续特征一般都会做分桶处理,除非不做embedding。
83.比如用户付费分桶有[0,10),[10,100)..[10000,+∞),如果主播a的付费为1元,我会被分到0桶,如果主播b的付费为20元会被分到1桶等,所以用户的付费序列如果为20,10

分桶后会变为1,0


[0084]
如果分桶后有10个桶,那么可以初始化一个10*16的矩阵,如果对主播a的付费额度落在了1分桶,那么取10*16矩阵中第1行的数据1*16为用户对这个主播付费embedding。同理用户的付费序列如果为10*1,embedding后会变为10*16。
[0085]
上述描述中经常出现embedding取16的情况,并不是说明embedding大小只能是16,也可以取8或者32,具体数值需要根据具体数据做调整。
[0086]
以推荐直播间为例,本实施例提供了一种具体的数据处理方法的流程示意图,其中付费嘉宾aid序列和私聊嘉宾aid序列为上述第一序列特征;语音厅嘉宾序列为上述对象序列特征。私聊嘉宾次数序列和付费嘉宾金额序列为上述第二序列特征,语音厅实时热度,用户个人信息特征,用户活跃度特征以及用户付费特征同样也是上述历史行为序列特征。图中的attention unit可以是上述对第一序列特征和对象序列特征中每个目标的子序列特征进行相乘运算,计算历史行为序列特征和对象序列特征的第一相乘结果;根据第一相乘结果,第一序列特征和对象序列特征,确定历史行为序列特征的权重的过程。另外,通常在计算损失值的时候,会根据用户的观看时长对损失值进行加权。
[0087]
上述方式中,通过对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,实现了在序列特征对序列特征,即待推荐对象包括多个目标的情况下,确定目标用户点击待推荐对象的预估点击率,充分利用了待推荐对象的所有信息,提高了预估点击率的准确度,提高了对象的推荐效果。
[0088]
对应上述方法实施例,本发明实施例提供了一种直播的数据处理装置,如图10所示,该装置包括:
[0089]
特征获取模块11,用于获取目标用户在直播间的历史行为序列特征和待推荐对象的对象序列特征;其中,待推荐对象中包括多个目标;
[0090]
权重确定模块12,用于对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重;
[0091]
特征确定模块13,用于基于权重和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征;
[0092]
预估点击率确定模块14,用于基于目标交叉特征,确定待推荐对象的预估点击率。
[0093]
本发明实施例提供的一种数据处理装置,获取目标用户在直播间的历史行为序列特征和待推荐对象的对象序列特征;其中的待推荐对象中包括多个目标;对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,确定历史行为序列特征的权重;基于权重和历史行为序列特征,确定待推荐对象的预估点击率。该方式中,通过对历史行为序列特征和对象序列特征中每个目标的子序列特征进行交叉运算,实现了在序列特征对序列特征,即待推荐对象包括多个目标的情况下,确定目标用户点击待推荐对象的预估点击率,充分利用了待推荐对象的所有信息,提高了预估点击率的准确度,提高了对象的推荐效果。
[0094]
进一步的,上述历史行为序列特征包括第一序列特征,该第一序列特征包括:直播间的目标信息;上述权重确定模块还用于:对第一序列特征和对象序列特征中每个目标的子序列特征进行相乘运算,计算历史行为序列特征和对象序列特征的第一相乘结果;根据第一相乘结果,第一序列特征和对象序列特征,确定历史行为序列特征的权重。
[0095]
进一步的,上述权重确定模块还用于:对对象序列特征中每个目标的子序列特征进行平均运算,得到对象序列特征的平均序列特征;对第一序列特征和平均序列特征进行相乘运算,得到历史行为序列特征和对象序列特征的第一相乘结果。
[0096]
进一步的,上述权重确定模块还用于:将第一序列特征分别与对象序列特征中每个目标的子序列特征进行相乘运算,得到历史行为序列特征和对象序列特征的第一相乘结果。
[0097]
进一步的,上述权重确定模块还用于:对第一相乘结果,第一序列特征和对象序列特征进行拼接处理,得到第一拼接结果;将第一拼接结果输入至预先训练完成的第一全连接层,得到历史行为序列特征的权重。
[0098]
进一步的,上述历史行为序列特征还包括第一序列特征和第二序列特征;第一序列特征包括:直播间的目标信息;第二序列特征包括:目标用户在直播间针对目标的行为信息;上述特征确定模块还用于:将权重分别与第一序列特征和/或第二序列特征进行相乘运算,得到第二相乘结果;根据第二相乘结果和历史行为序列特征,确定历史行为序列特征与对象序列特征的目标交叉特征。
[0099]
进一步的,上述特征确定模块还用于:将第二相乘结果和历史行为序列特征进行拼接处理,得到第二拼接结果;将第二拼接结果输入至预先训练完成的第二全连接层,得到历史行为序列特征与对象序列特征的第一交叉特征;获取与目标用户在直播间的历史行为相关的目标与待推荐对象中每个目标的品类交叉特征;将第一交叉特征和品类交叉特征进行相加运算,得到历史行为序列特征与对象序列特征的目标交叉特征。
[0100]
进一步的,上述预估点击率确定模块还用于:将目标交叉特征输入至预先训练完
成的激活层,确定待推荐对象的预估点击率。
[0101]
进一步的,上述特征获取模块还用于:通过目标数据库获取与目标用户在直播间的指定历史行为相关的第一目标的第一信息,目标用户针对第一目标的行为信息,以及目标用户的用户信息;获取待推荐对象的第二信息;将第一信息,行为信息和用户信息,进行自然语言处理,得到历史行为序列特征;将第二信息进行自然语言处理,得到对象序列特征。
[0102]
本发明实施例提供的数据处理装置,与上述实施例提供的数据处理方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
[0103]
本实施例还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述数据处理方法。该电子设备可以是服务器,也可以是终端设备。
[0104]
参见图11所示,该电子设备包括处理器100和存储器101,该存储器101存储有能够被处理器100执行的机器可执行指令,该处理器100执行机器可执行指令以实现上述数据处理方法。
[0105]
进一步地,图11所示的电子设备还包括总线102和通信接口103,处理器100、通信接口103和存储器101通过总线102连接。
[0106]
其中,存储器101可能包含高速随机存取存储器(ram,random access memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
[0107]
处理器100可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器100中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器100可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器101,处理器100读取存储器101中的信息,结合其硬件完成前述实施例的方法的步骤。
[0108]
本实施例还提供一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述数据处理方法。
[0109]
本发明实施例所提供的数据处理方法、装置、电子设备以及系统的计算机程序产
品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
[0110]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0111]
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0112]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0113]
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0114]
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
转载请注明原文地址: https://www.8miu.com/read-662.html

最新回复(0)