CN113256024A - 一种融合群体行为的用户行为预测方法 - Google Patents
一种融合群体行为的用户行为预测方法 Download PDFInfo
- Publication number
- CN113256024A CN113256024A CN202110669769.2A CN202110669769A CN113256024A CN 113256024 A CN113256024 A CN 113256024A CN 202110669769 A CN202110669769 A CN 202110669769A CN 113256024 A CN113256024 A CN 113256024A
- Authority
- CN
- China
- Prior art keywords
- user
- behavior
- group
- embedding
- behaviors
- 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
- 230000006399 behavior Effects 0.000 title claims abstract description 179
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000013528 artificial neural network Methods 0.000 claims abstract description 15
- 230000000306 recurrent effect Effects 0.000 claims abstract description 12
- 230000007246 mechanism Effects 0.000 claims abstract description 10
- 230000009471 action Effects 0.000 claims description 84
- 239000011159 matrix material Substances 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 11
- 238000010606 normalization Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 claims description 3
- 238000002372 labelling Methods 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 2
- 238000001514 detection method Methods 0.000 abstract description 2
- 230000000694 effects Effects 0.000 description 11
- 101100481876 Danio rerio pbk gene Proteins 0.000 description 8
- 101100481878 Mus musculus Pbk gene Proteins 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000011160 research Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 102000002274 Matrix Metalloproteinases Human genes 0.000 description 2
- 108010000684 Matrix Metalloproteinases Proteins 0.000 description 2
- 244000097202 Rathbunia alamosensis Species 0.000 description 2
- 235000009776 Rathbunia alamosensis Nutrition 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000009193 crawling Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- General Business, Economics & Management (AREA)
- Biomedical Technology (AREA)
- Tourism & Hospitality (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Primary Health Care (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种融合群体行为的用户行为预测方法。本发明以社交网络中用户历史行为和用户关系图为基础,首先使用经典社区检测算法发现社交关系图中的群体为下一步操作提供基础;对用户的历史记录进行离散化并且使用用户行为嵌入代表用户嵌入;然后基于注意力机制使每个群体内用户的用户嵌入得到每个群体的表示;最后将每个用户的用户嵌入和用户所在群体的群体嵌入表示进行结合得到新的用户嵌入。紧接着将用户嵌入序列输入GRU循环神经网络中进行用户行为预测。在三个真实数据集上的大量实验结果,验证了本发明算法在HR和MAP指标上相比仅考虑用户历史行为和考虑用户邻居行为的用户行为预测算法有很大提高。
Description
技术领域
本发明涉及用户行为预测领域,特别是涉及一种融合群体行为的用户行为预测方法。
背景技术
科学技术的不断下放带来了智能设备的广泛普及,随着电脑与智能手机使用成本的降低,社交网络与生活世界的交互壁垒被打破,活跃用户数量激增。以新浪微博、微信、QQ等为首的应用深入到了每个人的生活,社交网络正逐渐影响着社会公众的生活方式。移动社交网络在全球范围内展现了其强大的魅力和远大的前景,也为相关研究提供了海量的关联用户行为样本。
但是,如何合理高效地进行信息筛选成为了用户的难题。社交网络的最大特征之一是以用户为中心,而用户是兼任多种社会角色的行动复杂体,其建立社交关系并非纯粹依赖相似性,还可能依据亲友关系、工作关系、兴趣爱好等,甚至存在着各种随意添加的社交关系。这就使社交关系的建立具有偶然性。一方面,社交平台提供的数据量日趋庞大,用户每天可以接收到的信息纷乱复杂,难以从中合理高效地挑选对自己有用的信息;另一方面,社交关系建立的偶然性使内容供应者难以通过挖掘用户的社会关系预测用户的下一步动作,对用户做出个性化推荐,包括定向投放广告、进行精准的新闻推荐、视频推荐等,达到千人千面的效果,实现效益最大化。
用户行为预测算法正是解决上述问题的有力武器。现有的用户行为预测算法多从用户兴趣、用户的历史行为、受社交关系影响的角度出发。但是,现有的大部分用户行为预测算法没有考虑到用户所处群体的群体行为对用户行为的影响。事实上,处于社交环境中的用户经常会受到邻居用户和所在群体的影响,或者说会受到与用户直接相连的显性社交关系和不直接相连的隐性社交关系的影响。同时,随着循环神经网络的发展和在用户预测领域的应用,预测用户行为时有关动作之间的依赖性也逐渐被纳入考量范围。
发明内容
本发明的目的是提供一种融合群体行为的用户行为预测方法,以解决上述现有技术存在的问题。
为实现上述目的,本发明提供了如下方案:
本发明提供一种融合群体行为的用户行为预测方法,包括以下步骤:
S1.采集用户行为数据和用户关系网络数据并进行预处理,获得处理后的用户行为数据和用户关系图;
S2.对所述用户关系图进行群体划分,获得最优群体划分结果,将每个用户的整个行为周期离散成若干个时间段,在每个所述时间段内,基于行为嵌入矩阵计算用户嵌入;
S3.基于所述用户嵌入、所述最优群体划分结果和注意力机制,获得群体行为表示,将所述群体行为表示融入所述用户嵌入中,获得新的用户嵌入,基于GRU循环神经网络结构构建用户行为预测模型,基于所述用户行为预测模型和所述新的用户嵌入预测用户行为。
进一步地,所述S1中的预处理方法为:
对所述用户行为数据:针对不同主题的社交网络对用户采取的所有行为进行标签化,获得处理后的用户行为数据;
对所述用户关系网络数据:将度小于3的用户过滤,获得所述用户关系图,所述用户关系图中的每一行代表两个用户之间存在连边。
进一步地,所述S2中对所述用户关系图进行群体划分的方法为:基于Fast_Newman算法、Girvan-Newman算法和Louvain算法分别进行划分,获得若干个群体划分结果。
进一步地,在若干个所述群体划分结果中,基于模块度和群体数量选择最优群体划分结果,具体为:
在若干个所述群体划分结果中,选择拥有最大模块度的一个或若干个群体划分结果,作为第一群体划分结果;收集模块度与所述最大模块度的差值的绝对值在融合群体行为的用户行为预测方法以内的群体划分结果,作为第二群体划分结果;在所述第一群体划分结果和第二群体划分结果中选择所述群体数量最少的群体划分结果作为所述最优群体划分结果。
进一步地,所述S2中,对每个用户的整个行为周期进行离散的方法为:对将所述整个行为周期划分为等长的时间段。
进一步地,所述S2中的行为嵌入矩阵为:在一个所述时间段内,选取K个行为用向量进行表示得到的矩阵,作为行为嵌入矩阵;如果用户在当前时间段内执行的动作少于K个,则使用前一个时间段的动作来填充所述当前时间段,其中K为预设参数,基于每个时间段内用户的行为数量来确定。
进一步地,所述S2中,基于行为嵌入矩阵计算用户嵌入的方法具体为:采用对数双线性模型计算所述行为序列获得所述用户嵌入,具体计算公式Uv,t为:
进一步地,所述S3中,基于用户行为预测模型进行预测的方法为:在每个所述时间段内,基于所述新的用户嵌入,获得新的用户嵌入序列;在一个所述时间段内,将所述新的用户嵌入序列和所述行为序列连接,获得输入序列,对所述输入序列进行处理后输入所述用户行为预测模型进行预测。
进一步地,对所述输入序列进行处理的方法为:采用应用层归一化技术对所述输入序列进行处理,归一化均值和方差,层归一化公式LayerNorm(x)为:
其中LayerNorm(x)为对输入向量x进行层归一化,μ和σ是x的均值和方差,α和β是学习的参数即比例因子和偏差,ε是为保证数值稳定性,给分母赋的值,数值为1e-5,⊙为哈达码积,即对应位置的元素相乘。
本发明公开了以下技术效果:
1.通过用户动作的向量化表示和LBL模型使用户可以用特定时间段内的自身行为来进行表示,这使得在后续进行用户行为预测时更有益,因为用户表示来自于动作嵌入矩阵;
2.使用注意力机制来聚合群体内用户的行为以此表示群体行为。这一过程中考虑到不同用户在群体中的影响力不同,在进行群体行为表示时给不同用户以不同的权重;
3.实现了基于GRU循环神经网络的行为预测模型,将社交网络用户活动预测的二分类问题扩展到一个连续领域,提高了用户行为预测的准确率,同时说明用户确会受到所在群体的行为的影响。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本实施例中的一种融合群体行为的用户行为预测方法总体流程图;
图2为本实施例中的基于动作嵌入的用户行为表示流程图;
图3为本实施例中的预测模型的结构示意图;
图4为本实施例中的Digg数据集上模型HR、MAP指标的比较示意图;
图5为本实施例中的Gowalla数据集上模型HR、MAP指标的比较示意图;
图6为本实施例中的Weibo数据集上模型HR、MAP指标的比较示意图。
具体实施方式
现详细说明本发明的多种示例性实施方式,该详细说明不应认为是对本发明的限制,而应理解为是对本发明的某些方面、特性和实施方案的更详细的描述。
应理解本发明中所述的术语仅仅是为描述特别的实施方式,并非用于限制本发明。另外,对于本发明中的数值范围,应理解为还具体公开了该范围的上限和下限之间的每个中间值。在任何陈述值或陈述范围内的中间值以及任何其他陈述值或在所述范围内的中间值之间的每个较小的范围也包括在本发明内。这些较小范围的上限和下限可独立地包括或排除在范围内。
在不背离本发明的范围或精神的情况下,可对本发明说明书的具体实施方式做多种改进和变化,这对本领域技术人员而言是显而易见的。由本发明的说明书得到的其他实施方式对技术人员而言是显而易见的。本申请说明书和实施例仅是示例性的。
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例1
针对目前用户行为预测算法中考虑用户所处群体对用户行为影响的研究较少这一问题,本发明提出了一种融合群体行为的用户行为预测算法,以研究用户所处群体的行为会对用户的下一步行为产生什么样的影响。本发明采用多种社区划分方法对用户关系图进行群体划分,通过用户动作的向量化表示和LBL模型使用户可以用特定时间段内的自身行为来进行表示,这使得在后续进行用户行为预测时更有益,因为用户表示来自于动作嵌入矩阵。本发明通过引入注意力机制来聚合群体内个体用户的行为,以此客观有效地表示群体行为。由于这一过程中需要考虑到不同用户在群体中的影响力不同,为此在进行群体行为表示时要给不同用户以不同的权重。最后,实现了基于GRU循环神经网络的行为预测模型,将社交网络用户行为预测的二分类问题扩展到一个连续领域,提高了用户行为预测的准确率,同时说明用户确会受到所在群体的行为的影响。通过在Digg、Gowalla、Weibo三个真实社交网络数据集上的实验证明了本发明算法的有效性。算法的流程如图1所示。
数据收集和预处理:
1)获得包含关系网络数据、用户行为数据的数据集作为原始数据集,包括大学公开的数据集和通过网络爬虫抓取web网页中的内容获取的数据集。本发明获得了Digg、Gowalla、Weibo三个真实社交网络上的用户和用户行为数据。
2)对原始数据进行预处理。为了避免噪音,将度小于3的节点及其关系进行过滤,得到一个新的用户关系图。用户关系图中的每一行代表这两个节点之间存在连边。节点表示社交网络中的用户,边表示用户之间存在关注关系或是好友关系。针对不同主题的社交网络对用户可以采取的所有行为进行标签化。例如在一个基于位置的社交网络中,用户可以通过在某一个地点签到,分享他们的位置信息。将用户签到的每个位置标签化为一个用户行为,得到一个包含用户行为标签和对应时间戳的用户行为文件。
用户行为文件每一行的意义如下:
用户1:动作1:时间戳1动作2:时间戳2动作3:时间戳3……
群体划分方法:
首先要对用户关系图进行群体划分。目前针对群体行为的研究中多使用社区划分或者边聚类的方法对群体进行划分。本发明使用Fast_Newman、GN(Girvan-Newman)、Louvain三种算法对用户关系图进行群体划分,综合考虑划分结果的模块度和群体数量选择划分结果,在模块度相差不大时选择群体数量较少的。将最后选取的划分结果存储在0-1矩阵中,Ga为划分的群体数,Gij表示用户i是否属于群体j,若Gij=1则表示用户i属于群体j,若Gij=0则不属于。
Fast_Newman算法:
在Newman提出模块度的概念后,在划分社区的过程中,只要优化模块度Q就好了,为了减少时间复杂度,Newman提出一种贪婪策略:
(1)首先将网络中每个节点自定义成一个社区;
(2)计算出两两社区结合时Q的值,找到Q增加最大的或者减少最少的合并方式进行社区合并;
(3)直到所有社区合并成一个大社区时停止,找出合并过程中最大的Q时的社区划分结果。
当两个社区合并时,模块度的增量为:
ΔQ=eji+eij-2ai*ai=2(eij-2ai*aj) (1)
GN(Girvan-Newman)算法:
GN算法是一种简单而经典的社区发现算法,其流程如下:
首先计算本次迭代中所有边的边介数,并删除本次迭代中边介数最大的边,所述边介数体现的是某一条边在图中的重要程度,也就是网络中通过这条边的最短路径的数目。
然后不断迭代删除每次迭代中边介数最大的边,直到删除所有边。当删除所有的边时,所有的节点各为一个社区。
在该过程中,社区的数量会不断地增加,利用模块度这一指标去衡量每一次不同社区数量的划分效果。在每次社区数量发生变化时计算模块度,取模块度最大时的社区数量为最优社区发现结果。
Louvain算法:
Louvain算法是一种基于多层次优化模块度的算法,它的优点是快速、准确。
Louvain算法的运作流程大体可分为两个步骤:
其一,在考虑邻居节点的情况下,将社交网络中的各个点合并到社区之中,逐一运算,并对得出的ΔQ进行分类对比,发现最大值。这一步骤应当进行多次运算,直至全部的节点趋于稳定。
其二,对前述步骤的数据结果进行处理,把小型社区视为超节点并入网络社区,进行阶段性结构重制。此时,新的节点权重即为两点间初始权重数值的相加。以此方法多次重复,数轮后就能使数值不再变动。
群体划分结果:
表1
对于Digg数据集Fast-Newman算法和Lovain算法的划分结果中模块度明显好于Girvan-Newman算法,Digg的数据集较小,可以尽可能选择模块度较好的划分结果,最后选择使用Lovain进行划分的群体划分结果;对于Gowalla数据集,三种算法的模块度相差很小,这时主要考虑群体数量,选择群体数量最少的;对于Weibo数据集,Fast-Newman算法和Lovain算法的划分结果中模块度明显好于Girvan-Newman算法,Fast-Newman算法的群体划分结果模块度比Lovain算法高,但是Weibo数据集的数据量较大,如果一味选择模块度高的划分结果会带来巨大的计算量但带来的效果提升并不明显,因此选择使用Lovain算法的划分结果。
用户表示方法:
基于动作嵌入的用户表示方法:
基于动作嵌入的用户行为表示主要分为三个步骤,分别是用向量表示每个动作、将用户采取动作时的时间戳进行离散化和通过利用离散化后每个时间段内的用户的行为来表示用户,如图2所示。
(1)动作的向量表示:首先,需要一种手段来表示用户采取的行为。受到最近在表示学习中的一些相关工作取得成功的启发,本发明采用固定长度的向量表示每个动作。所有动作A的嵌入可以存储在矩阵中。其中Da为动作嵌入的大小。
(2)离散化用户采取动作的时间:要将群体的历史行为集成到本发明的模型中,就需要一种方法来汇总群体中每个用户的行为。但是,由于社交网络通常包含大量具有许多活动的用户,因此如果对用户的行为不加简化那么花费在此计算上的开销将会变得非常巨大。为了应对这个问题,本发明将整个用户行为周期划分为固定的时间范围。例如,如果整个时间段L跨越多年,则将其除以几个月,或者如果跨越数月,则可以选择除以合适的天数。将整个时间段L划分为T个固定时间段。本发明将用户之全部历史记录描述为其中现在,如果将用户操作除以时间跨度,则它变为这里代表大于等于的离散时间跨度,即
(3)通过利用离散化后每个时间段内的用户的行为来表示用户:在用离散时间段标记每个用户的行为之后,可以使用行为嵌入矩阵X计算每个时间段的用户嵌入。本发明建议在这种情况下,随着用户偏好的不断变化,应针对每个时间段计算用户嵌入。现在假设用户嵌入矩阵为为了计算对于任何属于V的用户v在时间段t内的用户嵌入Uv,t,使用他在时间段t上采取的动作来代表他在这一时间段上的用户嵌入。但是,根据事实情况,在一段时间内,用户可以执行许多动作,甚至多次执行重复的动作,对于活跃用户而言尤其如此。显然,重复次数过多的动作对本发明的模型不会带来更多的信息收益。因此,我们选取在一个时间段t内的K个最近的动作构成的动作序列,即其中nt是时间段t内的动作数量。另一方面,如果用户在一个时间段内执行的动作少于K个,本发明使用前一个时间段的动作来填充它。在这里K是需要手动设置的参数,可以根据每个时间段内用户的行为数量来确定。给定这个动作序列,可以采用任何序列模型来计算用户嵌入。但是,复杂的模型将需要更多的计算能力。因此,本发明使用对数双线性模型(LBL)来完成此任务。LBL是一种前馈神经网络模型,其具有的隐藏层可以用于提取用户操作的线性关系。现在给定用户v在时间段t的K个最近动作,可以使用以下公式计算用户嵌入Uv,t:
利用动作嵌入来计算用户嵌入有几个好处:由于用户的嵌入将用于预测用户自身或其他用户的下一个动作,因此以这种方式计算用户嵌入更为有益,因为它直接来自于动作嵌入矩阵X。静态用户特征(例如,配置文件信息)在这里也具有相当的价值,因为这与用户的下一个操作偏好有一些关联。但是,此类信息可能并不总是可以得到的。
融合群体行为的用户表示方法:
在得到了群体划分结果和每个时间段内基于动作嵌入的用户行为表示后需要对群体行为进行表示,使用群体的行为嵌入来表示群体。最近注意力机制相关的应用越来越多,也被引入到社交网络中给不同的用户以不同的权重或在群组推荐中被使用来表示群组偏好。利用注意力机制来计算群体中用户行动的汇总表示,以此来表示群体。现在给定在时间段t上的所有用户的用户嵌入群体划分结果G,那么任一群体g(g∈G)的群体行为Gg,t表示计算如下:
其中av∈R|c|是注意力机制中的权重,Uv,t是时间段t上用户v的嵌入。使用注意力机制可以计算出不同用户的行为在当前群体中的影响力从而使得得到的群体行为嵌入中包含这一信息,从而可以更好的用于后续用户行为的预测。
下面我们在用户的表示中融合入群体的群体行为表示:
这里采用逐元素相加的方法来计算得到新的用户表示,Gg,t是用户v所在的群体在时间段t的群体表示。
用户行为的预测:
接下来介绍如何使用得到的用户嵌入通过GRU循环神经网络进行用户行为的预测。
对连接的输入序列应用层归一化技术,以此来归一化跨特征的输入,即零均值和单位方差,以帮助提高稳定性并加快训练过程。假设输入向量为x,则层归一化定义为:
其中LayerNorm(x)为对输入向量x进行层归一化,μ和σ是x的均值和方差;α和β是学习的参数,即比例因子和偏差;ε:为保证数值稳定性,即分母不能趋近或取0,故给分母加上的值,默认为1e-5;⊙为哈达码积,即对应位置的元素相乘。
对于神经网络层的选择,有多种方案,LSTM和GRU都是循环神经网络中使用较多的结构,因为GRU可以用更少的参数同时得到和LSTM相近的结果,本发明采用GRU网络,如图3所示,GRU网络结构中相关的操作如下:
yj=f(Wohhj) (7e)
通过上述GRU网络层b之相关操作之后,获得最终的隐藏状态输出hj,出于将其转化为下一个动作分数之目标,将hj通过一个全连接层,即分数此处ba∈R|A|,使用softmax层来计算每个动作a∈A被采用的概率:
最终目标函数的形式为:
其中θ是模型中所有参数的集合。
在模型训练过程中主要涉及的模型参数有:Epoch、Latent_dim、TopK、Batch_size、Gact_Size、Optimizer、T、K。其中Epoch全量数据的迭代次数,Batch_Size是在批量数据的训练中的每一份训练集的大小,Gact_Size是GRU层的神经元数,Optimizer是模型使用的最优化算法,包括学习率learning-rate;Latent_dim是每一个动作的向量的长度,TopK是推荐列表的长度,影响HR、MAP的计算;T是划分时间段的数量;K是模型中处理用户历史记录的补足窗口大小。表2为实验的主要参数设置。
表2
模型评估:
模型的评估,可以选取几种常用的性能度量标准。使用最后一个时间段的数据作为测试集,来测试模型的性能,以HR@k和MAP@k为评价指标。
HR指标:HR常用来衡量召回率,HR指标的定义为:
分子是排名最高的k个动作中包含用户实际采取的下一个动作的用户数,分母的是测试集中用户数,其对每一个用户预测一次,因此准确而言分母应为预测次数,可得HR的计算公式:
其中i:第i次预测;R(i):第i次预测中,预测的动作列表;T(i):第i次预测中,用户真实采取的动作列表;K:TopK预测中预测列表的长度;N:总预测次数。
大多数场景下,对每一个用户进行一次TopK预测,因此n常为测试集中的用户,N常为测试集中的用户数量。
MAP(Mean Average Precision)本是在信息检索领域用以衡量搜索引擎的排序性能的评价指标,对于把本发明的用户行为预测模型,可以将预测动作列表视为一个排序列表。例如对于【命中,命中,未命中,未命中,未命中】和【未命中,未命中,未命中,命中,命中】这两个top-5的预测动作列表,显然他们的precision都是2/5,但是显然第一个预测动作列表的性能要高于第二个预测动作列表,因为其在第1、2位就已命中。
MAP可以由它的三个部分来理解:P,AP,MAP
P:precision
正确率只是考虑了返回结果中相关动作的个数,没有考虑动作之间的序。对一个搜索引擎或用户行为预测算法而言返回的结果必然是有序的,而且越相关的动作排的越靠前越好,于是有了AP的概念。
AP:average precision
对一个有序的列表,计算AP的时候要先求出每个位置上的precision,然后对所有的位置的precision再做平均。如果该位置的动作是不相关的则该位置precision=0.
M是预测动作列表中命中的动作总数,p(k)是预测动作列表中的第k个位置处的精度,m(k)表示在第k个位置之前,列表中所有命中的动作数量。
MAP:Mean Average Precision
那么对于MAP,即为所有用户u的AP再取均值(mean)。
HR@k和MAP@k指标都是越大说明模型效果越好,同时两个评价指标的数值随着K值的增加而提高,因为如果考虑更多的候选动作,则更有可能包含真实目标动作。而且,MAP@k的值相比HR@k较低,因为它还考虑了用户采取的动作在预测动作列表中的位置。
实验结果与分析:
数据集:
本发明在来自不同社交网络的三个真实数据集上评估模型的性能。表3中显示了这三个数据集的统计信息。这三个数据集的具体描述如下:
Gowalla是一个基于位置的社交网络,其中包括签到信息和用户之间的社交网络,用户可以通过在某一个地点签到,分享他们的位置信息。收集到该网站上537名用户在一段时间之内的签到信息和他们的好友关系,用户签到的每个位置在研究中均视为一项行为,因此模型研究目的是预测用户的下一个位置。
Digg是一个流行的新闻网站。在Digg中用户可以在自己上传提交新闻和订阅新闻。该网站中有三类文章:在主页上发布的文章、等待投票的文章和所有文章,他们按不同的类别分别保存。用户可以阅读网站中的所有文章并进行投票。当一篇文章得到足够的赞成票时,它将显示在主页上。如果文章得不到足够的赞成票或者有一定数量的用户投了反对票,那么这篇文章将被保留在“所有文章”一类中,并在设定的天数后被系统删除。用户对自己喜欢的新闻进行投票,这就是一种行为。用户也可以在这里建立社交网络中的好友关系。本发明收集到240位用户和他们对3415条新闻的投票情况已经用户之间的好友关系。本发明的目的是预测用户的下一个投票新闻。
微博(weibo)即新浪微博,是新浪推出的为大众提供娱乐休闲生活服务的社交媒体平台。用户可以通过网页或者手机应用发布微博,同时可以上传图片和视频或者进行视频直播,从而实现信息的即时交流和共享。本发明收集到了微博上2803名用户的注册信息、好友关系以及他们在一周之内对微博话题排行榜上十一个话题的评论情况,将话题种类及评论情况映射成3925个不同的动作。研究目的是预测这些用户接下来将会参与何种动作。
表3
数据集 | 用户数 | 行为种类 | 边数 |
Digg | 240 | 3415 | 2486 |
Gowalla | 537 | 4091 | 16053 |
2803 | 512 | 32171 |
实验设计:
本发明将提出的模型与针对相关的行为预测问题提出的最新方法进行了比较。为了进行全面评估,本发明将其与可以模拟顺序输入的方法进行比较,最终选择的对比算法有以下两种:
Caser:这是最近提出的基于CNN的顺序推荐方法。它将每个用户过去有过交互的商品看成一个序列,来预测用户未来可能有交互行为的商品的前N个的排序,其主要思想是将在时间和空间上最近的项目序列形成一个“图像”,并且使用卷积滤波器学习序列作为图像的局部特征。该模型采用卷积神经网络(CNN)学习序列特征,采用隐因子模型(LFM)学习用户特征。
NActSeer:这是使用用户动作来表示用户的基于图神经网络的用户行为预测模型。首先,根据用户的社交好友信息,提取社交网络中的信息传播捕获机制;然后根据用户的历史行为记录,创建用户的动作嵌入向量,以计算用户的聚合动作信息嵌入;最后将这些聚合的动作信息与用户本身的动作嵌入进行连接,馈入循环神经网络LSTM中,以创建用户行为预测模型。
实验结果与分析:
本发明的主要研究工作是融合群体行为的用户行为预测,主要的思想是将用户所在的群体的群体行为表示融合到用户表示中,然后使用GRU神经网络进行用户下一动作的预测;本节主要从实验的角度,将本发明模型同其他的模型进行对比,在HR、MAP指标上进行对比,衡量模型在TopK=5-20上的推荐效果。
TopK=10时,将Caser、NActSeer和本发明模型在推荐指标HR、MAP上进行比较,如表4所示:
表4
通过本发明模型Gact与Caser、NActSeer模型的对比,可以看出,在TopK=10时,Weibo、Gowalla数据集上,本发明Gact模型在HR和MAP上都得到了明显提升,Gact能够做到更准确的预测、更好的推荐效果;在Digg数据集中,Gact模型在HR、MAP上并没有得到明显的提升;下面分别给出了在三个数据集上,TopK=5,10,15,20,Gact与Caser、NActSeer模型在HR、MAP指标上的对比。
Digg数据集上的模型对比如图4所示,Gowalla数据集上的模型对比如图5所示,Weibo数据集上的模型对比如图6所示。
从这些图片中进行观察,可以得出如下的结论:
(1)Digg数据集在本发明提出的Gact模型上的表现并没有特别突出,在HR@K指标上和NActSeer模型相差不大,但这两种算法都好于Caser模型;在MAP@K指标上结果也是类似的,但Gact模型和NActSeer模型较Caser模型的提升更大。Gowalla数据集在本发明提出的Gact模型上两个指标都好于NActSeer模型和Caser模型,同时NActSeer模型和Caser模型在两个指标上的结果相近。Weibo数据集在本发明提出的Gact模型上两个指标也都好于NActSeer模型和Caser模型,但在MAP@K指标上NActSeer模型和Caser模型更接近,Gact模型在MAP@K上的优势更明显。
(2)Gact模型在Gowalla数据集上的效果较其他两个模型优势更明显,因为在Gowalla数据集上可以得到更好的群体划分结果。Caser可以对输入的序列进行顺序建模,但它遭受网络信息聚合问题的困扰。因此,它的性能也会受到损害,并没有本发明的模型的性能好。NActSeer可以聚合直接相连的若干阶邻居的信息,但没有考虑到不与用户直接相连的隐社交关系对用户行为的影响。
(3)在Gact模型中Digg数据集的HR@K值在06-0.65之间,随K值增加HR@K的增长幅度不大;MAP@K值在0.56-0.58之间,随K值变化不大。Gowall数据集的HR@K值在0.3-0.7之间且随着K值得增加而增加;MAP@K值在0.15-0.21之间,随K值增加而增加。Weibo数据集上HR@K值在0.48-0.65之间,随K值增加而增加;MAP@K值在0.35-0.40之间但和K值变化关系不大。
社交网络的迅速发展,给用户带来了海量的信息,但同时也带来了显著的信息过载问题,从而推动了用户行为预测成为了研究热点。为了在进行用户行为预测时考虑到用户所处的群体的行为和用户自身历史行为对用户下一步行为的影响,本发明提出了融合群体行的基于循环神经网络的用户行为预测算法。该算法以社交网络中用户历史行为和用户关系图为基础,首先使用经典社区检测算法发现社交关系图中的群体为下一步操作提供基础;接着从表示学习的相关理论出发,对用户的历史记录进行离散化并且使用用户动作嵌入代表用户嵌入。然后基于注意力机制使用每个群体内用户的用户嵌入得到每个群体的表示。最后将每个用户的用户嵌入和用户所在群体的群体嵌入表示进行结合得到新的用户嵌入。紧接着将用户嵌入序列输入GRU循环神经网络中进行用户行为预测。在三个真实数据集上的大量实验结果,验证了本发明算法在HR和MAP指标上相比仅考虑用户历史行为和考虑用户邻居行为的用户行为预测算法有不少提高。
在本发明的描述中,需要理解的是,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
以上所述的实施例仅是对本发明的优选方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
Claims (10)
1.一种融合群体行为的用户行为预测方法,其特征在于:包括以下步骤:
S1.采集用户行为数据和用户关系网络数据并进行预处理,获得处理后的用户行为数据和用户关系图;
S2.对所述用户关系图进行群体划分,获得最优群体划分结果,将每个用户的整个行为周期离散成若干个时间段,在每个所述时间段内,基于行为嵌入矩阵计算用户嵌入;
S3.基于所述用户嵌入、所述最优群体划分结果和注意力机制,获得群体行为表示,将所述群体行为表示融入所述用户嵌入中,获得新的用户嵌入,基于GRU循环神经网络结构构建用户行为预测模型,基于所述用户行为预测模型和所述新的用户嵌入预测用户行为。
2.根据权利要求1所述的融合群体行为的用户行为预测方法,其特征在于:所述S1中的预处理方法为:
对所述用户行为数据:针对不同主题的社交网络对用户采取的所有行为进行标签化,获得处理后的用户行为数据;
对所述用户关系网络数据:将度小于3的用户过滤,获得所述用户关系图,所述用户关系图中的每一行代表两个用户之间存在连边。
3.根据权利要求1所述的融合群体行为的用户行为预测方法,其特征在于:所述S2中对所述用户关系图进行群体划分的方法为:基于Fast_Newman算法、Girvan-Newman算法和Louvain算法分别进行划分,获得若干个群体划分结果。
4.根据权利要求3所述的融合群体行为的用户行为预测方法,其特征在于:在若干个所述群体划分结果中,基于模块度和群体数量选择最优群体划分结果,具体为:
在若干个所述群体划分结果中,选择拥有最大模块度的一个或若干个群体划分结果,作为第一群体划分结果;收集模块度与所述最大模块度的差值的绝对值在融合群体行为的用户行为预测方法以内的群体划分结果,作为第二群体划分结果;在所述第一群体划分结果和第二群体划分结果中选择所述群体数量最少的群体划分结果作为所述最优群体划分结果。
5.根据权利要求1所述的融合群体行为的用户行为预测方法,其特征在于:所述S2中,对每个用户的整个行为周期进行离散的方法为:对将所述整个行为周期划分为等长的时间段。
6.根据权利要求1所述的融合群体行为的用户行为预测方法,其特征在于:所述S2中的行为嵌入矩阵为:在一个所述时间段内,选取K个行为用向量进行表示得到的矩阵,作为行为嵌入矩阵;如果用户在当前时间段内执行的动作少于K个,则使用前一个时间段的动作来填充所述当前时间段,其中K为预设参数,基于每个时间段内用户的行为数量来确定。
9.根据权利要求6或8所述的融合群体行为的用户行为预测方法,其特征在于:所述S3中,基于用户行为预测模型进行预测的方法为:在每个所述时间段内,基于所述新的用户嵌入,获得新的用户嵌入序列;在一个所述时间段内,将所述新的用户嵌入序列和所述行为序列连接,获得输入序列,对所述输入序列进行处理后输入所述用户行为预测模型进行预测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110669769.2A CN113256024B (zh) | 2021-06-17 | 2021-06-17 | 一种融合群体行为的用户行为预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110669769.2A CN113256024B (zh) | 2021-06-17 | 2021-06-17 | 一种融合群体行为的用户行为预测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113256024A true CN113256024A (zh) | 2021-08-13 |
CN113256024B CN113256024B (zh) | 2022-08-05 |
Family
ID=77188337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110669769.2A Active CN113256024B (zh) | 2021-06-17 | 2021-06-17 | 一种融合群体行为的用户行为预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113256024B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114048395A (zh) * | 2021-11-05 | 2022-02-15 | 中国科学院信息工程研究所 | 基于时间感知与关键信息抽取的用户转发预测方法和系统 |
CN114048395B (zh) * | 2021-11-05 | 2024-07-05 | 中国科学院信息工程研究所 | 基于时间感知与关键信息抽取的用户转发预测方法和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130173485A1 (en) * | 2011-12-29 | 2013-07-04 | Telefonica, S.A. | Computer-implemented method to characterise social influence and predict behaviour of a user |
CN110502704A (zh) * | 2019-08-12 | 2019-11-26 | 山东师范大学 | 一种基于注意力机制的群组推荐方法及系统 |
CN110570044A (zh) * | 2019-09-16 | 2019-12-13 | 重庆大学 | 基于循环神经网络和注意力机制的下一个地点预测方法 |
WO2020013577A1 (en) * | 2018-07-13 | 2020-01-16 | Samsung Electronics Co., Ltd. | Electronic device and method for predicting user actions on ubiquitous devices |
CN112418525A (zh) * | 2020-11-24 | 2021-02-26 | 重庆邮电大学 | 社交话题群体行为的预测方法、装置及计算机存储介质 |
CN112950325A (zh) * | 2021-03-16 | 2021-06-11 | 山西大学 | 一种社交行为融合的自注意力序列推荐方法 |
-
2021
- 2021-06-17 CN CN202110669769.2A patent/CN113256024B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130173485A1 (en) * | 2011-12-29 | 2013-07-04 | Telefonica, S.A. | Computer-implemented method to characterise social influence and predict behaviour of a user |
WO2020013577A1 (en) * | 2018-07-13 | 2020-01-16 | Samsung Electronics Co., Ltd. | Electronic device and method for predicting user actions on ubiquitous devices |
CN110502704A (zh) * | 2019-08-12 | 2019-11-26 | 山东师范大学 | 一种基于注意力机制的群组推荐方法及系统 |
CN110570044A (zh) * | 2019-09-16 | 2019-12-13 | 重庆大学 | 基于循环神经网络和注意力机制的下一个地点预测方法 |
CN112418525A (zh) * | 2020-11-24 | 2021-02-26 | 重庆邮电大学 | 社交话题群体行为的预测方法、装置及计算机存储介质 |
CN112950325A (zh) * | 2021-03-16 | 2021-06-11 | 山西大学 | 一种社交行为融合的自注意力序列推荐方法 |
Non-Patent Citations (2)
Title |
---|
JOSÉ EDMOND MEKU FOTSO 等: ""ALGORITHMS FOR THE DEVELOPMENT OF DEEP LEARNING MODELS FOR CLASSIFICATION AND PREDICTION OF BEHAVIOUR IN MOOCS"", 《LWMOOCS VII – LEARNING WITH MOOCS 2020》 * |
王瑞琛: ""基于行为和视频评论的移动用户画像"", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114048395A (zh) * | 2021-11-05 | 2022-02-15 | 中国科学院信息工程研究所 | 基于时间感知与关键信息抽取的用户转发预测方法和系统 |
CN114048395B (zh) * | 2021-11-05 | 2024-07-05 | 中国科学院信息工程研究所 | 基于时间感知与关键信息抽取的用户转发预测方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113256024B (zh) | 2022-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Parvin et al. | TCFACO: Trust-aware collaborative filtering method based on ant colony optimization | |
CN110717098B (zh) | 基于元路径的上下文感知用户建模方法、序列推荐方法 | |
CN109062962B (zh) | 一种融合天气信息的门控循环神经网络兴趣点推荐方法 | |
CN111241421B (zh) | 基于社交上下文信息的用户转发行为预测方法 | |
Lu et al. | GLR: A graph-based latent representation model for successive POI recommendation | |
CN113268669B (zh) | 基于联合神经网络的面向关系挖掘的兴趣点推荐方法 | |
CN111241425B (zh) | 一种基于层次注意力机制的poi推荐方法 | |
Lyu et al. | Weighted multi-information constrained matrix factorization for personalized travel location recommendation based on geo-tagged photos | |
CN111429161B (zh) | 特征提取方法、特征提取装置、存储介质及电子设备 | |
CN115408618B (zh) | 一种基于社交关系融合位置动态流行度和地理特征的兴趣点推荐方法 | |
Yu et al. | Graph neural network based model for multi-behavior session-based recommendation | |
CN115885297A (zh) | 可区分用户-项目协同聚类 | |
Yigit et al. | Extended topology based recommendation system for unidirectional social networks | |
CN112055038B (zh) | 生成点击率预估模型的方法及预测点击概率的方法 | |
Sang et al. | High-order attentive graph neural network for session-based recommendation | |
Nazari et al. | Scalable and data-independent multi-agent recommender system using social networks analysis | |
Shilin | User Model‐Based Personalized Recommendation Algorithm for News Media Education Resources | |
CN110727867A (zh) | 一种基于模糊机制的语义实体推荐方法 | |
CN113256024B (zh) | 一种融合群体行为的用户行为预测方法 | |
CN112559905B (zh) | 一种基于双模式注意力机制和社交相似度的会话推荐方法 | |
CN115618079A (zh) | 会话推荐方法、装置、电子设备及存储介质 | |
Venugopal et al. | A proficient web recommender system using hybrid possiblistic fuzzy clustering and Bayesian model approach | |
Liu | POI recommendation model using multi-head attention in location-based social network big data | |
Kumar et al. | Session-based recommendations with sequential context using attention-driven LSTM | |
Utama et al. | Scientific Articles Recommendation System Based On User’s Relatedness Using Item-Based Collaborative Filtering Method |
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 |