基于用户依赖关系的社交网络转发行为预测方法及装置与流程

文档序号:33712757发布日期:2023-04-01 00:36阅读:37来源:国知局
基于用户依赖关系的社交网络转发行为预测方法及装置与流程

1.本发明实施例涉及社交网络应用技术领域,具体涉及一种基于用户依赖关系的社交网络转发行为预测方法及装置。


背景技术:

2.随着互联网和web2.0技术的迅速发展和普及,互联网上出现了大量在线社交网络,它们已经成为人们分享、传播和获取信息的主要平台。媒体可以在平台上发布内容,同时也有大量用户通过点赞、转发等行为加速内容的传播过程。
3.现有技术对内容扩散的研究主要在于理解内容的传播机制,对进行商业推广、社会热点追踪和敏感内容监控等具有重要意义。通过分析内容传播的特征,可以调节内容的传播范围,影响传播的用户群体或者避免内容的快速传播。
4.目前关于内容转发行为的预测大多依赖rnn(recurrent neural network,循环神经网络)模型来提取已经观测到的转发过程的特征,但rnn模型认为序列的下一个数据受其直接前驱节点的影响,间距越长,影响关系越弱,而这种处理方式与内容的传播过程相悖。且现有的模型大多认为内容的传播仅依靠用户之间的影响关系进行,而忽略了内容本身的特征、用户之间的好友关系特征、用户的属性特征等对内容传播的影响。


技术实现要素:

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.根据本发明实施例的提供的基于用户依赖关系的社交网络转发行为预测方法及装置,通过分析用户社交网络中转发文本内容的行为与各类特征的相关性,建立对基于用户社交网络的文本内容传播的预测模型,可以预测文本内容的传播范围,方便对文本内容的传播的进行管控,帮助平台推荐更合适的文本内容,进行更精准的推广、实现对内容的合理管控,也促进文本平台的发展。进一步,本发明使用单独的上下文特征提取方式,提取过往转发用户对当前用户节点的影响,得到即上下文依赖向量。使用自注意力机制以及预设方向掩码,计算得到用户之间的影响力,缓解了长期依赖问题。本发明使用transformer作为序列处理工具,与现有的深度学习模型不同,transformer模块完全摒弃了rnn等顺序模型的结构,采用注意力机制构建模型,序列中任意两个节点都可以直接产生关联,避免了特征的丢失。本发明极大缓解了rnn模型中的长期依赖问题,避免了非相邻节点间无法形成影响关系的问题。同时,本发明通过对转发行为特征分析的结果,针对转发过程的特性确定对应的预测模型,完成对用户转发行为的预测。
47.上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例
的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明实施例的具体实施方式。
附图说明
48.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
49.图1示出了根据本发明一个实施例的基于用户依赖关系的社交网络转发行为预测方法的流程图;
50.图2示出了预测模型的整体架构示意图;
51.图3示出了根据本发明一个实施例的基于用户依赖关系的社交网络转发行为预测装置的结构示意图;
52.图4示出了根据本发明一个实施例的一种计算设备的结构示意图。
具体实施方式
53.下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
54.图1示出了根据本发明一个实施例的基于用户依赖关系的社交网络转发行为预测方法的流程图,如图1所示,该方法包括如下步骤:
55.步骤s101,根据用户社交关系确定用户群体,得到用户群体中各用户的第一嵌入向量。
56.本实施例中采用预测模型,基于用户间依赖关系来预测用户在用户群体中转发文本内容的概率。用户依赖关系包括了如用户社交关系,用户的交友情况等,基于用户社交关系,分析用户社交关系对转发行为的影响。具体的,用户社交关系可以采用如图2中好友关系网络的图数据结构方式,将用户社交关系包含的各个用户,即用户群体,构建用户社交关系网。图数据结构中,每个节点代表单个用户,连边代表用户之间的关系特征。即用户社交关系网中包含多个用户节点,以及,根据连边确定的与用户节点相连的邻居节点。对于用户关系,可以通过如gat(graph attention networks,图神经网络)模型提取用户在好友网络中的关系特征,得到用户的第一嵌入向量。gat为本实施例中预测模型的一部分,其负责提取基于用户社交关系的用户的嵌入向量。使用gat得到用户的第一嵌入向量时,需要先预先收集用户社交关系网络的样本数据,根据样本数据训练gat,最终根据训练后的gat可以得到用户群体中各用户的嵌入向量。样本数据包括基于预设范围内的用户社交关系网络如g(u,e),以及内容集合s,其中,u为用户社交关系网络中的各用户,e为不同用户间的好友关系(即依赖关系),单个内容s∈s,由用户u∈u在时刻t0发出,在预设时间范围如δt
obs
时间范围内,该内容s通过各种线上或线下途径在用户社交关系网络g中传播,传播过程可以记为时序过程c=[(u1,t1),(u2,t2),

(ui,ti)

(uj,tj),...(un,tn)],其中,当i<j时,ti<tj,且t1≥t0,tn<t0+δt
obs
,即获取到在预设时间范围内多个用户在用户社交关系网络中传
播的内容。
[0057]
gat的主要结构由图注意力层构成,图注意力层的输入是一组节点表达向量h=[h1,h2,h3,...,hn],即各个用户节点的向量,输出也是一组节点表达向量h

=[h
′1,h
′2,h′3,...,h
′n]。具体到本实施中,输入为用户节点的向量(如用户节点自身的各种特征等),输入为用户群体中各用户节点的嵌入向量。针对某个用户社交关系网中各节点的表示向量,图注意力层通过图的结构特征,获取其邻居节点的表示向量,并计算注意力系数。节点i的邻居节点j对节点i的影响力α
ij
计算公式如下:
[0058][0059]
其中,w
gat
为训练后的参数,为节点i的各个邻居节点的集合,α
ij
为邻居节点j对节点i的影响力强弱。在实际应用中,f表示前馈神经网络。leakyrelu为激活函数。
[0060]
对于gat模型的中间层,为了使自注意力机制的结果更为稳定,可以采用多头注意力机制,即采用多套权重,共同学习注意力机制的系数,避免单个系数因数据集或模型初始化原因波动较大。具体可以采用如下方式:
[0061][0062]hi
=[h
ik
]
[0063]
其中,σ()为激活函数,wk为第k个注意力机制的系数,h
ik
为第k个注意力机制对应的注意力结果,[]为拼接操作,[h
ik
]拼接来自多头注意力结果,如k个的注意力结果作为当前结果。
[0064]
对于gat模型的最后一层,由于直接用于输出,可以采用平均的方式处理多个注意力机制的结果,得到基于用户社交关系网络的用户嵌入向量,此处,仅在最后一层不采用连接各个注意力机制的结果。
[0065]
进一步,考虑到用户社交关系网络的不完备性,图嵌入过程可能引入误差等问题,得到的用户嵌入向量通常与用户的属性存在误差,为了消除该误差,本实施例采用另外一组向量建模用户未被观察到的属性,该向量代表用户与历史行为无关的固有属性,通常与用户社交关系网络也不相关。对于每个用户u∈u,使用预设随机向量vu∈r1×d,增加用户嵌入向量的泛用性。其中,r1×d为1*d维度的实数空间,预设随机向量vu可以实施情况设置,此处不做限定。将由用户社交关系网络嵌入得到的用户嵌入向量与预设随机向量共同决定用户的第一嵌入向量,最终得到用户群体中每个用户的第一嵌入向量eu,用户的第一嵌入向量将用于后续的序列处理等,具体的,eu=[hu,vu],即将用户预设随机向量vu和用户社交关系网络嵌入得到的用户嵌入向量hu进行拼接,得到用户的第一嵌入向量eu,u即表示用户。
[0066]
步骤s102,根据转发过程以及用户的第一嵌入向量,计算得到包含上下文依赖向量的用户的第二嵌入向量;根据用户的第二嵌入向量以及预设方向掩码,基于自注意力机制,按照用户转发文本内容的顺序进行跨层连接及归一化处理,得到转发过程的转发用户序列嵌入。
[0067]
转发过程即文本内容被多个用户进行转发的一系列过程,包括如将文本内容由用户1转发给用户2、用户2转发给用户4
……
的转发过程,转发过程中涉及转发用户间的转发顺序,根据转发过程,可以使用注意力机制来提取其中各用户的依赖关系,在保留用户的第一嵌入向量的基础上,还可通过转发文本内容的方向顺序变化,调整用户的最终嵌入结果。
[0068]
具体的,对于每个用户的第一嵌入向量,采用注意力机制计算转发顺序在先的每个在先转发用户对当前用户(在后转发用户)的影响力,并基于各个影响力进行加权求和,得到当前的转发过程的向量,该向量表征了当前用户转发时,内容的状态,并融合了历史转发过程中各个用户的信息,体现了转发过程中用户之间的相互影响力。具体的,第k个转发用户对第j个转发用户的影响力可以采用如下公式计算:
[0069][0070]
其中,为预测模型参数,可以根据训练过程进行调整,《》表示内积运算,ek为第k个用户的第一嵌入向量,ej为第j个用户的第一嵌入向量,k小于j。e
l
为第l个用户的第一嵌入向量,l的取值范围为1至j-1。在上述公式计算中采用的注意力机制存在方向性,即只有前面转发的用户对后面转发的用户有影响,反之则没有。在物理上,只有先前转发的用户才能对后面转发的用户产生影响,这与自然语言处理模型的处理方式不一致,因为在文本内容中,后面出现的文本内容可能会印证前面的内容。基于注意力机制计算后,可以使用softmax函数对注意力权重进行归一化处理等。
[0071]
对于转发过程中的用户节点,其上下文依赖向量就是在先转发的各用户的第一嵌入向量以及影响力的加权求和,如以下公式所示:
[0072][0073]dj
为第j个用户的上下文依赖向量,其根据在j之前的各个用户的第一嵌入向量和各个用户对第j个用户的影响力加权求和计算得到。
[0074]
由于各个计算结果之间没有依赖性,为提升计算速度,可以对整个转发过程一起计算。具体的,对于一个长度为l的转发过程,构建转发过程矩阵e∈rd×
l
,其中d表示用户嵌入维度,矩阵e中每一行表示位于该位置的用户的第一嵌入向量,为了保证方向性,引入预设方向掩码m∈r
l
×
l
,当i《j时,m
i,j
=0,否则m
i,j
=-∞,即只有前面转发的用户对后面转发的用户有影响,反之则没有,注意力机制的影响力权重矩阵的计算方式如下:
[0075][0076]
其中a∈r
l
×
l
,a
ij
表示第i个用户对j个用户的影响力。在计算中,若i》j,则m
ij
=-∞,即在进行softmax操作之后,该项变为0,从而屏蔽了后转发用户对之前转发用户的影响。使用矩阵a,可使用矩阵运算,加速每个阶段的上下文依赖向量的计算。
[0077]
d=ae
t
[0078]
其中,矩阵d的第i行表示第i个用户的上下文依赖向量,矩阵a包含各个用户之间的影响力,a
ij
表示第i个用户对j个用户的影响力。矩阵e中每一行表示位于该位置的用户的
第一嵌入向量,t为转置运算。矩阵d中第i行对应di。
[0079]
用户的特征包括用户的第一嵌入向量ei和其上下文依赖向量di,但考虑到后续处理需要单个向量,可以使用如连接、相加、相乘等方式融合二者,本实施例中采用门控机制选择二者中的有效信息并融合,根据二者的值计算系数,根据系数按比例融合两个向量,得到用户特征的单个向量。
[0080][0081]
ui=i⊙i+(1-i
)
⊙i[0082]
其中,均为预测模型参数,根据训练过程调整,gi表征了ei和di中ei的重要程度,1-i
表示了ei和di中di的重要程度,通过gi,对用户的第一嵌入向量和上下文依赖向量进行加权平均,融合得到包含上下文依赖向量的用户的第二嵌入向量ui。

代表向量的逐项相乘,可以采用hadmard函数。
[0083]
转发序列嵌入过程主要使用transformer模块。由于本实施例不是对转发序列进行预测而是预测单个用户是否转发,因此,此处仅使用transformer编码器部分,编码器中的注意力机制可有效提取用户节点之间的关联关系。在transformer的每一层中,输入数据为每个用户包含上下文依赖向量的用户的第二嵌入向量ui,按照各用户转发文本内容的顺序进行排列,得到其中l表示序列长度,d
up
为根据实施情况设置的维度。为了更好体现每个用户的位置特征的影响,在每个位置的一个预设位置编码(可以采用固定位置编码)来添加位置特征,最终结果主要通过自注意力机制完成,具体如下公式所示:
[0084][0085]
其中,sa表示自注意力机制,f
x
表示softmax函数,wq、wk、wv均为预测模型参数,根据训练过程可以调整,m为预设方向掩码。对输出的sa(co)进行跨层连接和归一化处理,如下公式所示:
[0086]
ec=batchnorm(sa(co)+co)
[0087]
其中,batchnorm为归一化函数。此处可以采用如resnet跨层连接结构,避免训练过程中出现的梯度消失问题。为了达到较好的处理效果,可以将上述操作重复多次,得到最终的转发过程的转发用户序列嵌入ec={e
c1
,e
c2
,...,e
cn
}。其中,e
c1
,e
c2
,...,e
cn
即按照n个用户转发文本内容的顺序排列的n个用户的用户序列嵌入。转发用户序列嵌入中包含了用户社交关系、用户转发关系等多种用户依赖关系,用户依赖关系对用户进行社交网络转发具有较大影响。
[0088]
步骤s103,根据文本内容,确定文本内容的转发文本嵌入向量。
[0089]
对文本内容的转发行为特征可概括为多类,如发布源、发布时间、文本内容等。对各类特征的处理,具体包括了对文本内容的特征提取、发布时间的特征提取、热度衰减模式的特征提取等。
[0090]
文本内容的发布时间特征为有限的集合,且不存在网络关系结构,因此其处理方式与文本特征完全不同。结合日常的作息时间安排,选择按照作息时间周期性变化对发布时间进行建模,如按照现行工作方式,选择多个预设维度确定文本内的时间特征,如选择按
照每日、每周和节假日等维度进行时间特征嵌入。
[0091]
日时间特征是指在内容发布时间位于当前当日的时间范围,周时间特征是指发布时间位于当前周的范围,节假日时间特征是指当前是否为节假日。根据以上各时间特征,确定内容的发布时间使用三个one-hot独热编码,如来表示,e
pd
为日时间特征,e
pw
为周时间特征,e
ph
为节假日时间特征。其中,以上各时间特征采用独热编码表示,每个独热编码属于不同预设维度的实数空间,具体预设维度根据实施情况设置,此处不做限定。在得到各时间特征的独热编码后,通过线性层,将独热编码转变为对应的时间嵌入向量,如下所示:
[0092]hpd
=w
pdepd
[0093]hpw
=w
pwepw
[0094]hph
=w
pheph
[0095]
其中,e
pd
,e
pw
,e
ph
分别表示日时间特征、周时间特征和节假日时间特征的独热编码,对应以上三者,分别为各自的时间嵌入向量,为预测模型参数,可以根据训练过程进行调整。d
d,w,h
表示各时间嵌入向量的维度,td,tw,th表示维度,各维度的具体数值根据实施情况设置。根据以上三者的时间嵌入向量共同表征发布时间特征,得到发布时间嵌入向量:
[0096]hpt
=[h
pd
,h
pw
,h
ph
]
[0097]
其中[]表示向量拼接,h
pt
即为发布时间嵌入向量。
[0098]
根据文本内容,可以将用户发布的文本内容通过自然语言处理模型来获取文本内容特征,如通过大规模预训练模型bert来转换,得到对应的到文本内容嵌入向量v
p

[0099]
考虑在文本发布时,热点话题等内容会影响文本内容的转发,可以结合热度话题内容,对文本转发进行预测。具体的,根据热点话题内容嵌入构建一组热点话题等内容(以下简称热点内容)热点内容嵌入向量vh∈r
50
×d,r的维度为举例说明,具体可以根据实施情况设置。热点内容虽然可以表征当前文本内容的舆论、背景信息,但没有与具体文本内容结合,无法决定具体文本内容的转发情况,且热点内容数量众多,也需要经过筛选,取得其中对当前文本内容存在影响的热点内容,作为当前文本内容的背景信息。为滤除热点内容中与当前文本内容无关的热点内容,可以采用注意力机制筛选各个热点话题的数据,计算与当前处理的文本内容的相似度。具体根据以下公式进行计算:
[0100]vpt
=f
p
(w
pvp
+b
p
)
[0101]vht
=fh(w
hvh
+bh)
[0102][0103]
其中,w
p
,wh,b
p
,bh为预测模型参数,可以根据训练过程调整,v
pt
、v
ht
分别根据各自函数f
p
、fh对文本内容嵌入向量v
p
、热点内容的嵌入向量vh计算得到,nh即热点内容的数量,v
hti
表示v
ht
的第i行,即第i个热点内容的嵌入结果,βi表示第i个热点内容对文本内容的重要程度,βi通过计算文本内容与热点内容的相似度得到。在得到每个热点内容的嵌入向量以及其对文本内容的重要性后,通过加权求和,可得到文本内容的背景特征。
[0104][0105]
其中,v
bg
表示当前文本内容的背景特征向量,为了将文本内的特征与背景特征融合,可以使用门控单元来融合二者。通过背景特征向量和文本内容嵌入向量计算门控机制输出,即利用门控单元输出背景特征向量在最终结果中所占比重。
[0106]hhg
=[v
bg
,v
p
]
[0107]
α=sigmoid(f(w
hghhg
+b
hg
))
[0108]
其中,h
hg
表示门控信息的输入,w
hg
、b
hg
为预测模型参数,f为激活函数,α表示背景特征向量所占权重。根据背景特征权重,将背景特征向量和文本内容嵌入向量加权求和,计算得到包含背景特征向量的文本背景及内容嵌入向量。
[0109]ebg
=α*v
bg
+(1-α)*v
p
[0110]
考虑到文本内容存在热度衰减的现象,即随时间热度降低,自注意力机制无法完全提取热度衰减的相关特征,因此还需要使用时间注意力机制来对文本内容建模,提取热度衰减特征,文本内容的热度可以定义为文本内容的“年龄特征”,其随时间发生衰减。
[0111]
文本内容的年龄特征与发布时间的特征的相类似,但年龄特征没有周期性,也没有特殊值,因此仅需要使用年龄特征嵌入即可,无需考虑周期性和特殊值等,可以通过如下公式获取:
[0112]hdt
=e
dtedt
[0113]
其中,e
dt
∈rd是年龄特征的独热编码,rd是年龄范围的个数,d为维度根据实施情况设置。为预测模型参数,根据训练过程进行调整。是文本年龄嵌入向量。
[0114]
将文本年龄嵌入向量与文本内容的发布时间嵌入向量以及文本背景及内容嵌入向量进行拼接,得到e
age
=[h
dt
,h
pt,bg
],即得到包含文本年龄、发布时间、文本背景特征、文本内容特征的转发文本嵌入向量。
[0115]
用户依赖关系的特征和转发的文本内容的特征在转发行为预测中发挥着重要作用,通过结合二者,可以使内容信息具备更准确的表达能力,从而提升预测的准确性。
[0116]
此处,步骤s101-s102为用户的嵌入向量的相关计算,步骤s103为文本内容的嵌入向量的相关计算,两者的执行顺序可以任一计算在先,此处不限定步骤s101-s102和步骤s103的执行顺序。
[0117]
步骤s104,根据文本内容的转发文本嵌入向量以及转发用户序列嵌入,计算得到转发用户序列嵌入对文本内容的注意力结果,根据注意力结果得到用户转发文本内容的预测概率。
[0118]
利用转发文本嵌入向量,计算对转发用户序列嵌入的影响力,计算得到注意力机制系数为:
[0119]
[0120]
其中,wf∈rd为预测模型参数,可以根据训练过程进行调整,e
age
起到了门控信息作用,对文本年龄、发布时间、文本背景特征、文本内容特征等控制其进入后续处理的特征强度,e
ci
指转发用户序列嵌入中第i个用户的嵌入,为第i个用户的注意力结果。

代表向量的逐项相乘,可以采用hadmard函数。针对包含n个用户的转发用户序列嵌入进行计算,得到整体转发用户序列嵌入对转发文本内容的注意力结果,注意力结果为级联嵌入向量:
[0121][0122]
根据以上注意力结果,对于任一时刻ti,级联注意力结果e
cas
,得到用户ui为下一个用户u
i+1
转发文本内容si的预测概率,如下公式所示:
[0123][0124]
其中,mlp(multilayer perceptron,多层感知机),表示用户群体中每个用户为下一个转发用户转发文本内容的概率,用户群体为根据用户社交关系指定的用户群体。
[0125]
可选地,本实施例还包括以下步骤:
[0126]
步骤s105,预测得到用户群体的目标转发概率,并根据目标转发概率和训练集中样本转发概率对预测模型进行优化处理。
[0127]
本实施例在预测用户将文本内容转发给下一个用户的概率时,基于预先收集的样本数据,对预测模型进行训练。根据收集的样本数据中的训练集,可以得到训练集中所有用户群体的样本转发概率,根据样本转发用户的概率可以调整训练过程中预测模型的各个预测模型参数。根据预测用户将文本内容转发给下一个用户的概率,计算整个用户群体的转发概率,如下所示:
[0128][0129]
对预测模型进行优化的目标是使l尽量达到最大值,优化时通过如adam优化器、反向传播算法,以l的结果为参照,对预测模型中各参数进行优化,最终训练得到的预测模型参数即使用预测模型进行预测时的各预测模型参数。
[0130]
预测模型的架构示意图如图2所示,输入信息包括了用户的好友关系网络、文本内容的转发过程、发布内容(即文本内容)和热点内容,预测模型包括了如表示学习、用户依赖、时序依赖、外部依赖与预测不同阶段。在表示学习阶段,对好友关系网络(即用户社交网络)进行图表示学习,如利用gat提取得到用户的第一嵌入向量;对于转发过程,得到转发序列(如包含用户对文本转发顺序组成转发过程矩阵)、转发过程中的时间衰减等进行嵌入等;对于发布内容和热点内容,可以提取文本嵌入(即文本内容嵌入向量)等。在用户依赖阶段,通过注意力机制,转发过程中每个用户的影响力被加权求和,形成上下文依赖向量(即图2中用于用户序列嵌入),并与用户的第一嵌入向量进行融合(即图2中背景信息融合),形成用户的第二嵌入向量。用户的第二嵌入向量作为时序依赖阶段的输入,通过如
transformer编码器的处理,提取序列中的时序依赖特征,得到转发过程的转发用户序列嵌入,其中,包括了增加位置编码,transformer编码器采用如多头注意力,加权求和、归一化、前馈网络等,输出转发用户序列嵌入。在外部依赖与预测阶段,热点内容和发布内容的特征以及时间信息等组成的特征向量,即转发文本嵌入向量,将其对得到的转发用户序列嵌入的影响力进行加权求和,形成如级联嵌入向量,即注意力结果(即图2中外部依赖注意力),根据注意力结果最后通过mlp模型输出每个用户转发文本内容的概率。
[0131]
根据本发明实施例提供的基于用户依赖关系的社交网络转发行为预测方法,通过分析用户社交网络中转发文本内容的行为与各类特征的相关性,建立对基于用户社交网络的文本内容传播的预测模型,可以预测文本内容的传播范围,方便对文本内容的传播的进行管控,帮助平台推荐更合适的文本内容,进行更精准的推广、实现对内容的合理管控,也促进文本平台的发展。进一步,本发明使用单独的上下文特征提取方式,提取过往转发用户对当前用户节点的影响,得到即上下文依赖向量。使用自注意力机制以及预设方向掩码,计算得到用户之间的影响力,缓解了长期依赖问题。本发明使用transformer作为序列处理工具,与现有的深度学习模型不同,transformer模块完全摒弃了rnn等顺序模型的结构,采用注意力机制构建模型,序列中任意两个节点都可以直接产生关联,避免了特征的丢失。本发明极大缓解了rnn模型中的长期依赖问题,避免了非相邻节点间无法形成影响关系的问题。同时,本发明通过对转发行为特征分析的结果,针对转发过程的特性确定对应的预测模型,完成对用户转发行为的预测。
[0132]
图3示出了本发明实施例提供的基于用户依赖关系的社交网络转发行为预测装置的结构示意图。如图3所示,该装置包括:
[0133]
第一用户向量模块310,适于根据用户社交关系确定用户群体,得到用户群体中各用户的第一嵌入向量;
[0134]
第二用户向量模块320,适于根据转发过程以及用户的第一嵌入向量,计算得到包含上下文依赖向量的用户的第二嵌入向量;根据用户的第二嵌入向量以及预设方向掩码,基于自注意力机制,按照用户转发文本内容的顺序进行跨层连接及归一化处理,得到转发过程的转发用户序列嵌入;
[0135]
文本向量模块330,适于根据文本内容,确定文本内容的转发文本嵌入向量;
[0136]
预测模块340,适于根据文本内容的转发文本嵌入向量以及转发用户序列嵌入,计算得到转发用户序列嵌入对文本内容的注意力结果,根据注意力结果得到用户转发文本内容的预测概率。
[0137]
可选地,第一用户向量模块310进一步适于:
[0138]
获取用户社交关系,根据用户社交关系,确定用户群体,构建用户社交关系网;用户社交关系网以图数据结构构建,包含多个用户节点,以及与用户节点相连的邻居节点;
[0139]
针对用户群体,将各个用户节点的向量输入至图神经网络模型,得到用户群体中各用户的第一嵌入向量。
[0140]
可选地,第一用户向量模块310进一步适于:
[0141]
针对用户群体中任一用户节点,将用户节点的向量以及用户节点的邻居节点的向量输入至图神经网络模型,计算各邻居节点对用户节点的影响力,并基于多头注意力机制,根据影响力,将得到的用户节点的多个注意力结果进行拼接;输出多个注意力结果的平均
值作为用户节点的嵌入向量;
[0142]
将预设随机向量与用户节点的嵌入向量拼接,得到用户的第一嵌入向量。
[0143]
可选地,第二用户向量模块320进一步适于:
[0144]
根据转发过程的转发顺序计算在先转发用户对在后转发用户的影响力,根据影响力加权计算得到在后转发用户的上下文依赖向量;
[0145]
将用户的第一嵌入向量以及用户的上下文依赖向量融合,得到包含上下文依赖向量的用户的第二嵌入向量。
[0146]
可选地,文本向量模块330进一步适于:
[0147]
根据文本内容,确定文本内容的发布时间嵌入向量、文本背景及内容嵌入向量,以及文本年龄嵌入向量;
[0148]
将文本内容的发布时间嵌入向量、文本背景及内容嵌入向量,以及文本年龄嵌入向量进行拼接,得到文本内容的转发文本嵌入向量。
[0149]
可选地,文本向量模块330进一步适于:
[0150]
根据文本内容的发布时间,按照多个预设维度确定文本内容的发布时间的时间特征;多个预设维度包括每日、每周和/或节假日维度;时间特征采用独热编码表示;
[0151]
根据多个预设维度的文本内容的发布时间的时间特征,确定多个预设维度的时间嵌入向量;
[0152]
将多个预设维度的时间嵌入向量拼接,得到文本内容的发布时间嵌入向量;
[0153]
根据文本内容,得到对应的文本内容嵌入向量,以及,根据热点内容构建对应的热点内容嵌入向量;
[0154]
基于注意力机制,根据文本内容嵌入向量和热点内容嵌入向量计算热点内容与文本内容的相似度,并根据相似度计算得到文本内容的背景特征向量;
[0155]
计算背景特征向量以及文本内容嵌入向量的权重,根据权重,计算得到文本背景及内容嵌入向量;权重基于门控机制得到;
[0156]
基于时间注意力机制,确定文本内容的年龄特征,根据年龄特征得到文本年龄嵌入向量。
[0157]
可选地,预测模块340进一步适于:
[0158]
根据文本内容的转发文本嵌入向量计算对转发用户序列嵌入的各用户的影响力,并根据影响力及转发用户序列嵌入,得到转发用户序列嵌入对文本内容的注意力结果;
[0159]
根据注意力结果,得到转发顺序中用户向下一用户转发文本内容的预测概率。
[0160]
可选地,预测模块340进一步适于:
[0161]
基于多层感知机计算注意力结果,得到转发顺序中用户向下一用户转发文本内容的预测概率。
[0162]
可选地,装置还包括:
[0163]
优化模块350,适于预测得到用户群体的目标转发概率,并根据目标转发概率和训练集中样本转发概率对预测模型进行优化处理。
[0164]
以上各模块的描述参照方法实施例中对应的描述,在此不再赘述。
[0165]
本发明实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有至少一可执行指令,可执行指令可执行上述任意方法实施例中的基于用户依赖关系的社交网
络转发行为预测方法。
[0166]
图4示出了根据本发明实施例的一种计算设备的结构示意图,本发明实施例的具体实施例并不对计算设备的具体实现做限定。
[0167]
如图4所示,该计算设备可以包括:处理器(processor)402、通信接口(communications interface)404、存储器(memory)406、以及通信总线408。
[0168]
其中:
[0169]
处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
[0170]
通信接口404,用于与其它设备比如客户端或其它服务器等的网元通信。
[0171]
处理器402,用于执行程序410,具体可以执行上述基于用户依赖关系的社交网络转发行为预测方法实施例中的相关步骤。
[0172]
具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
[0173]
处理器402可能是中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
[0174]
存储器406,用于存放程序410。存储器406可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
[0175]
程序410具体可以用于使得处理器402执行上述任意方法实施例中的基于用户依赖关系的社交网络转发行为预测方法。程序410中各步骤的具体实现可以参见上述基于用户依赖关系的社交网络转发行为预测实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
[0176]
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明实施例的内容,并且上面对特定语言所做的描述是为了披露本发明实施例的较佳实施方式。
[0177]
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0178]
类似地,应当理解,为了精简本发明实施例并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
[0179]
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单
元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0180]
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0181]
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0182]
应该注意的是上述实施例对本发明实施例进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1