基于事件的社交网络逐渐成为人们线上获取信息、分享信息,线下进行面对面交流互动的平台,深刻影响并改变了信息的获取方式。本文针对基于事件的社交网络数据管理展开综述,该研究对活动的预测、活动的推荐和活动的计划或安排具有重要的指导意义。本文首先概述了基于事件的社交网络的问题、特征和数据集,并通过对该社交网络结构特征的简要介绍,揭示了线上线下社交网络的信息交互特点;接着以用户和活动为参考对象,从预测、活动计划或安排和推荐这三个角度来阐述基于事件的社交网络数据管理的相关研究工作;最后总结基于事件的社交网络数据管理的问题与展望趋势。 Event-based social networks (EBSNs) have gradually become popular platforms for users to register online virtual world where users acquire information and share experiences, which have brought a profound impact on information acquisition. This article presents a survey of data management technology research for EBSNs. This survey is important for event predication, event recommendation, activities planning and arrangement. We first introduce EBSNS, including problems, features and datasets. Then we reveal the characteristics of information interaction in online-to-offline social networks through a brief overview of structure characteristics in EBSNs. Moreover, we review representative work for the data management of EBSNs from three aspects including prediction, activities planning, arrangement and recommendation. Finally, we summarize the limitations of current data management in EBSNs and prospect the future research directions.
梁媛
北京航空航天大学计算机学院,北京
收稿日期:2018年9月9日;录用日期:2018年9月22日;发布日期:2018年9月29日
基于事件的社交网络逐渐成为人们线上获取信息、分享信息,线下进行面对面交流互动的平台,深刻影响并改变了信息的获取方式。本文针对基于事件的社交网络数据管理展开综述,该研究对活动的预测、活动的推荐和活动的计划或安排具有重要的指导意义。本文首先概述了基于事件的社交网络的问题、特征和数据集,并通过对该社交网络结构特征的简要介绍,揭示了线上线下社交网络的信息交互特点;接着以用户和活动为参考对象,从预测、活动计划或安排和推荐这三个角度来阐述基于事件的社交网络数据管理的相关研究工作;最后总结基于事件的社交网络数据管理的问题与展望趋势。
关键词 :数据管理,基于事件的社交网络,活动预测,活动推荐,活动计划
Copyright © 2018 by author and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/
近年来,随着Web 2.0技术的迅猛发展,各类在线社交媒体(Online Social Medias)如雨后春笋般的不断涌现。特别是随着移动互联网技术的普及,众多社交媒体开始推出一种新型的“基于事件的社交网络服务”(Event-based social networks,EBSNs) [
传统的社交网络,大多用户只是在线上平台上互动,很少在线下见面交流,而基于事件的社交网络与基于位置的社交网络有点类似,基于位置的社交网络 [
基于事件的社交网络服务研究的重要性使得众多研究者们提出各种预测、推荐和活动计划或安排的
图1. 基于事件的社交网络 [
方法 [
本文针对基于事件的社交网络数据管理技术目前已有的研究成果与应用进展进行综述。第2节着重介绍基于事件的社交网络的问题、相关特征以及数据集;第3节主要介绍基于事件的社交网络服务预测问题的方法;第4节从用户参加的活动个数来给活动计划或安排的方法进行分类,并对其详细论述;第5节是针对推荐问题的现状进行分析;第6节给出了本文的总结和发展趋势。
传统的线上社交网络服务 [
基于事件的社交网络如图1所示,它由线上网络和线下网络组成。用户不需要物理实际网络的接触就可以在线上网络进行互相交流、分享经验、共享相片等信息服务,用户同时还可以通过线上网络的评论、参加的活动获知他的“追随者”。此外,用户通过实际物理空间信息的接触可以在特定的时间和特定的地点参加同一个活动 [
本文从预测、推荐以及活动的计划或者安排来论述基于事件的社交网络数据管理,预测是根据活动组织者的影响力、用户参加过的活动记录以及用户对活动的兴趣程度等信息进行预测活动的潜在参与者;推荐是依据线上用户所居住的地理位置到事件召集地点的距离、线上用户对线下活动的兴趣程度以及线上用户之间的友好关系等信息给线上用户推荐相关活动或者推荐路径行程 [
基于事件的社交网络不仅包含许多互相关联的个体,而且还对网络虚拟化的关系现实化,它实现了虚拟的社交关系和真实物理空间活动的信息共享 [
此外,基于事件的社交网络还有其他的特征,如异质的社会关系(Heterogeneous social relationships),地理信息(geographical information)等。异质的社会关系指的是线上线下之间的交互关系 [
基于事件的社交网络主要包括以下几种数据集:1) 来自Meetup的数据。在Meetup上,用户创建一个活动的时候,会涉及到群组的标签、活动的时间、地点以及活动的属性。其他的用户可以在网上表达他们对这个活动的意愿“参加”、“不参加”和“可能参加” [
w i , j o n = ∑ ∀ g k , u i ∈ g k Λ u j ∈ g k 1 | g k | (1)
图2. 基于事件的社交网络的分类
同理,线下社交网络边的权重可以表示为:
w i , j o f f = ∑ ∀ e k , u i ∈ e k Λ u j ∈ e k 1 | e k | (2)
2) 豆瓣数据。该数据集记录了五个信息:活动的地理位置、活动的举办时间、活动的出席者、活动的组织者以及活动的内容 [
3) Gowalla数据集。Gowalla是一个非常有名的基于位置的社交网络服务,它记录了用户在不同时间点上所处的地理位置点 [
总体来讲,相比于其他网络数据集(例如传统的社交网络数据集、基于位置的社会化服务的数据集),基于事件的社交网络数据集有如下几个特点:
1) 网络交互。基于事件的社交网络由线上社交网络和线下社交网络组成,它打通了线上虚拟世界与线下真实物理世界的渠道,将线上虚拟世界的交流转换到现实社会的接触,这使得基于事件的社交网络的用户行为同时具备了虚拟化、生活化、时间动态性以及空间动态性等特征,形成了由线上用户交流、评论、分享等社交行为的网络服务和线下在指定的地理位置、特定的时间段参加同一个活动的社交网络,使得用户在线上网络与线下网络得到很好的交互。
2) 活动的特征。一般来说,活动的地理位置信息、活动举办的时间点以及活动的内容是用户首要关注的事项。一群用户会在指定的地点指定的时间段参加一个特定的活动,这也是区别于基于位置的社交网络的重要信息。在决定是否参加这个活动之前,有些用户会关心活动的组织者,如果一个组织者是用户所熟悉的人,用户就会比较信任这个组织者,于是就会召集自己的朋友也来参加这个活动。
3) 明晰的社会关系。用户在线上社交网络的社会关系从公式(1)得出,用户在线下社交网络的社会关系从公式(2)得出,并且线上的友好关系和线下的好友关系是可以互相转换的 [
4) 群组。多个用户在线上社交网络共同评论一条新闻、讨论同一个活动、分享相片等,这些有着共同行为特征的用户会形成一个群组。一个用户可以加入多个群组,同时一个群组也包含多个用户。
基于事件的社交网络的预测问题是用户在线上社交网络服务平台发布活动之后,社交媒体平台会根据活动的举办时间和地点、组织者和活动的属性等预测活动的潜在参与者。此外,除了预测活动的潜在参与者,也会预测用户参加的活动。用户会参加什么活动,大多是由用户的兴趣爱好、用户到活动的距离以及活动本身的属性等信息决定的 [
基于事件的社交网络的预测指的是依据用户的标签、活动的属性、活动举办的环境以及朋友的社会关系等来推测活动的潜在用户和预计用户即将参加的活动。值得关注的是,很多研究者首先会把用户居住地到召集活动的距离作为预测活动参与者的关键要素 [
此外,活动举办的时间周期也会影响到预测活动的潜在用户,例如一些用户喜欢参加周末早上的活动,而另外有些用户喜欢参加周五晚上的活动,如何做到预测哪些用户参加哪个时间段的活动 [
基于事件的社交网络服务预测问题是依照一定的方法对未来用户参加的活动和活动的潜在参与者进行测算。从实体类型的角度来看,主要包括用户或活动(含特定标签、群组或属性)。从模型角度来看,目前,基于事件的社交网络预测的研究方法以组织者的影响最大化、多特征混合和亲密度最大化方法为主。
基于组织者影响最大化的预测方法主要是看组织者是谁,该组织者对群组的影响力。比如某个活动组织者之前举办过一些活动,然后影响力很好,接着再次举办其它活动的话,那么就会有很多用户基于此组织者的信誉度而报名参加其组织的活动 [
Feng等人 [
图3. 社交关系及用户属性图
O ( ( k ) | V Q | ⋅ t ( n ) ⋅ ∑ i = 1 | Q | { i | Q | } ) 。其中n是社交网络的顶点,即用户的数量;t(n)表示计算一个用户的传播影响力所需要的时间;Q是属性的集合;VQ是用户v的部分属性的候选集合;k是一个给定的整数。后两个算法涉及到划分,即给出一系列的属性Q,一个正整数k,当满足下列三个条件时: ① 对于每一个 i ∈ [ 1 , m ] ,属性集 A i ⊆ Q ,并且非空; ② 对于 i ≠ j ( i , j ∈ [ 1 , m ] ) , A i ∩ A j = Φ ; ③ ∪ i ∈ [ 1 , m ] A i = Q 。则有 P = { A 1 , A 2 , ⋯ , A m } ,给定两个属性集合Q1和Q2,并且 Q 1 ⊆ Q 2 ,假设P’是Q1的一个划分,P’也是Q2的一个划分。回到例图3(a)中,属性集合 { a , b , c , d } ,正整数k = 3,有 p 1 = { { a , b } , { c , d } } 是一个划分; p 2 = { { a , d } , { b , c } } 是一个划分; p 3 = { { a , b , c } , { c , d } } 不是一个划分,因为 { a , b , c } ∩ { c , d } ≠ Φ ; p 4 = { { a , b } , { d } } 不是一个划分,因为元素c不在里面; p 5 = { { a } , { b } , { c } , { d } } 不是一个划分,因为p5的集合个数大于3。
基于多特征混合方法是研究用户和活动相关因素的重要性、将影响因素表示成特征、利用抽取的特征训练模型,最后基于这些重要的相关特征对活动潜在用户进行有效的预测等 [
1) 活动内容
活动内容是决定用户是否会去参加某一个活动的重要因素 [
P ( d ) = ∫ θ ( ∏ i = 1 n ∑ T ( i ) P ( W ( i ) | T ( i ) , β ) P ( T ( i ) | β ) ) P ( θ | α ) d θ (3)
其中, P ( θ | α ) 是在给定的 α 参数依据狄利克雷分布而得到 θ 的概率, P ( W ( i ) | T ( i ) , β ) 是在给定主题T(i),参数是 β 情况下,求得W(i)的概率;用JS距离求两个主题的相似度,JS的距离公式为:
J S ( p , q ) = [ D K L ( p , p + q 2 ) + D K L ( q , p + q 2 ) ] (4)
D K L ( p , q ) = ∑ j = 1 T p j log 2 p j q j (5)
其中,p,q为两个分布。例如有两个活动a1:“drama British Shakespeare classic Macbeth”、a2:“British Shakespeare King Lears”,其中a1是用户参加过的活动,而a2是用户即将要参加的活动,也有可能不参加。首先使用LDA提取得到的活动内容主题数为2,则上述两个活动可以改写为T1:“British Shakespeare”、T2:“drama classic”,明显发现活动a1有50%“成员”在T1,T2这两个主题中,而活动a2有100%“成员”在主题T1,有0%“成员”在主题T2。每个活动用一个向量来表示它们的主题成员 [
2) 时空信息
时空信息指的是举办活动的时间和地理位置信息。比如上班族会倾向于周末的活动,而老年人则会对工作日的活动比较感兴趣。此外,用户对活动举办地点也有一定的青睐性,如果在时间比较短的时间内(10个小时左右)参加活动,他们会选择距离相对来说比较靠近居住地的活动;如果时间稍微长(3~5天)的时间参加活动,他们有可能会选择距离比较远的活动(如郊区的一些活动等)。此外,Liu等人 [
3) 社交关系
用户与用户之间的社交关系也是影响预测问题的关键因素 [
亲密度最大化指的是用户与用户的亲密度或者是用户与活动的亲密度最大,目前,最大化亲密度来预测活动的潜在参与者或者预测用户参加的活动已经有了部分研究。这类方法没有考虑用户居住地与活动之间的时空信息,对预测问题存在一定的局限性。
Shen等人 [
针对Shen等人好友亲密度最大的局限,Li等人 [
图4. 好友关系图
b,c,这三个活动的下限分别为2,1,2;上限分别为4,6,5。从图上可知u1对活动a,b感兴趣,u2对活动a感兴趣,u3对活动b,c感兴趣,u4对活动a,c感兴趣。首先假设u1去参加活动a,从图3的(b)中好友关系可以获知u1有三个朋友,其中有两个朋友对活动a也感兴趣,而活动a的下限为2,上限为4,基于用户与活动的兴趣程度和在同一个活动中用户与用户之间的亲密度最大,因此,预测u1,u2,u3会同时去参加活动a。而目前还有u3没有参加活动,它对活动b,c都感兴趣,但是活动b只需要一个人就可以举办,而活动c则需要2个用户才可以举行,因此在符合约束条件的前提下,并且考虑了用户与活动的亲密度的情况,预测u3会去参加活动b。预测用户会参加什么活动这个问题,因为用户有多种选择,想要找到一个最优的选择是比较困难的,如果用户数目很小,可以通过穷举来预测令用户满意度较高的活动。但是在现实生活中,用户是上万个,甚至上百万的数量级,穷举法或者其他的方法在多项式时间内是不可能得到一个解。由此可知这个问题是一个NP-hard问题。鉴于此问题加了活动上下限容量的限制,把此问题变得不可解,Li等人认为在一个多项式时间内找不到常数近似比,但他们找到的近似比不超过( 1 − 1 / n + ε )。此研究团队针对这个问题提出了静态贪心和动态贪心的求解方法,并且求得算法的时间复杂度为 O ( | L | log ( | L | ) + | E | ) ,空间复杂度为 Ω ( | L | + | E | ) ,其中L是用来执行斐波那契堆(Fibonacci head)的优先队列,E是图上边的条数。
前面阐述了基于事件的社交网络数据管理预测问题的研究工作,不同的预测方法考虑的条件也各不相同,预测的内容也有所不同,现在进行总结和对比。
这种预测方法是通过对组织者的影响力预测活动的潜在用户,利用数学方法对组织者的影响力进行抽象表示,具有一定的严谨性,可以描述预测活动潜在参与者的信息。但是这个方法仅仅考虑了活动组织者对用户的影响,而忽略了用户对活动还有偏好,比如时间和空间上的偏好,因此这种预测方法存在一定的局限性。
基于多特征混合方法的预测是基于影响因素的分析构建并选择特征,因此考虑了众多影响活动参与者的因素,如活动内容、时空信息以及用户的社交关系。这种方法关键在于解释各个特征对活动潜在参与者因素的相关性,该类方法不仅能预测活动的潜在用户,也能从社交关系预测用户参加的活动。
基于亲密度最大化的预测方法仅仅考虑了用户与用户之间的亲密度和用户对活动的偏好程度,忽略了用户到活动的距离这个关键因素,因此这类方法虽能预测用户参加的活动,但是预测活动的潜在用户则不太理想。因为有研究者表明,用户参加活动大部分取决于用户居住地到召集活动地点的距离 [
活动计划是综合考虑用户的兴趣爱好、用户居住地到召集活动地点的距离和用户的社交好友关系等特征,给用户安排令其满意度较大的活动。本节的内容将结合线上线下的社交关系介绍基于事件的社交网络服务的活动计划或安排问题。
首先,给出活动计划的形式化定义。有一张社交网络图G = (U, E, W),其中U表示社交网络图上的用户的集合;E是社交网络图的边的集合;W是社交网络图上边的权重的集合,代表着人与人之间的好友关系。然后再有一些活动V,目的是要找到一个活动计划或者安排 [
活动计划或安排的目标是根据用户以及活动的属性给用户找到一个令所有用户都满意的活动计划或者路径行程。核心思想是根据用户居住地离活动召集地点的距离、用户对活动的兴趣程度和用户的社交关系 [
亲密度指的是用户与用户之间的好友关系和用户与活动的相似度,这种方法的目的是找到一个用户最感兴趣的活动,并且一个活动里面用户与用户之间的友好关系最大。Shuai等人 [
图5. 活动计划的例子
图6. 亲密度方法
此外,Li等人 [
如图6,假设有4个用户u1,u2,u3,u4,两个活动v1,v2,其中活动v1的上限为1,下限为2;活动v2的上限也为1,下限为3。圆圈的数字是用户对活动v1的兴趣程度,用户对活动v2的兴趣程度分别为0.3,0.5,0.3,0.8,Li等人给出了一种既简单又直观的方法,贪心算法。首先,计算每一对<用户,活动>的亲密度,接着选一对<用户,活动>亲密度最大的,其次检索未被安排的用户,再接着计算亲密度,最后找到一个匹配,使得所有用户到活动的兴趣和好友与好友之间的亲密度线性之和最大,则在图6的例子中最后得出的活动计划为 <1, 1>,<2, 1>,<3, 2>,<4, 2>,尖括号第一个数字表示用户,第二个数字表示活动。活动的计划或安排问题是组合优化问题,Li等人针对此问题给出相对应的理论证明 [
最优策略指的是用户想去参加活动时,每次都会选择使自己满意度最大的策略。Armenazoglou等人 [
C o s t ( G , A , α ) = α ⋅ ∑ u ∈ U d ( u , A u ) + ( 1 − α ) ⋅ ∑ ( u , v ) ∈ E ∧ A u ≠ A v w u , v (6)
其中,A是活动,Au表示用户u参加的活动,d(u,Au)表示用户u到他所参加的活动的距离,wu,v表示用户u和用户v分别参加不同的活动的友好关系,α是权衡式(6)的第一项和第二项的系数。该方法的主要思想是:用户在式(6)的两项中对自己的策略进行权衡,这个算法最后终止是算法收敛至纳什均衡,即所有用户都不愿意改变自己的策略。基于这个想法,回到图5(a)中的例子,这个例子有5个用户u1,u2,u3,u4,u5,2个活动v1,v2,图5(b)中的例子是用户到活动的欧式距离,在这种情况下,找到一个最佳的活动安排使得所有用户的满意度最大。首先,把所有用户随机分配到活动中,即用户u1,u2,u3分配到活动v1,把用户u4,u5分配到活动v2,则最后每个用户的策略为u1(0.450, 0.275),u2(0.355, 0.400),u3(0.400, 0.425),u4( 0.400, 0.300),u5(0.050, 0.575),括号的第一个数字代表用户去的第一个活动的满意度,第二个数字代表用户去的第二个活动的满意度,如用户u1去活动v1的满意度为0.450,去活动v2的满意度为0.275,因此活动v2为用户u1的最佳策略,下划线为用户的最优策略。Armenazoglou等人在这个问题上用博弈论来求解,并给出了理论的结果值:最好的纳什均衡与原问题最优解的比(PoS)和最坏的纳什均衡与原问题的最差情况的解的比(PoA),其中PoS = 2;
P o A = 1 + 1 − α α d e g a v g ⋅ w a v g 2 ⋅ c a v g * (7)
w a v g = 1 | E | ∑ e ∈ E w e (8)
c a v g * = 1 | U | ∑ u ∈ U min A u ∈ A d ( u , A u ) (9)
其中degavg是度的平均数,we是边的权重。该算法的时间复杂度为 Θ ( k ⋅ | U | + | E | ) ,其中k表示用户初始选择的策略数。
基于最大–最小的方法综合考虑了影响活动计划的三个因素,用户到活动的距离、用户对活动的兴趣程度和用户的社交关系 [
C o s t ( u , a ) = α ⋅ ( 1 − d ( u , a ) M a x D ¯ ) + ( 1 − α ) ⋅ σ ( u , a ) (10)
M a x D ¯ = M a x D + ε (11)
其中,MaxD是任何一个用户到任何一个活动的理论最大距离,σ(u,a)是用户对活动的兴趣程度, ε 是一个极小的任意正数。Tong等人基于最大–最小方法给出一个有效的活动计划或安排,其本质是混合了空间信息等因素的匹配问题 [
基于活动冲突的方法是考虑一个用户参加多个活动时,这些活动有时间上的冲突情况。假设用户a
u1 | u2 | u3 | u4 | u5 | |
---|---|---|---|---|---|
v1(4) | 0.2 | 0.6 | 0.5 | 0.4 | 0.2 |
v2(3) | 0.8 | 0.3 | 0.8 | 0.6 | 0.1 |
表1. 用户与活动的相似度
同时对活动p1,p2感兴趣,其中活动p1举办的时间段为某天周六上午8:30~10:30,活动p2举办的时间段为同一天周六上午10:00~12:00,在这种情况下,只能给用户a安排一个活动,在这种情况下,该给用户a安排哪个活动?She等人 [
此外,She等人从上述的静态场景扩展到了动态场景,即用户是一个一个抵达,She等人针对动态场景提出了贪心算法,即每来一个用户,基于当前的情况考虑令其满意度最大的活动,一旦被安排,就不能再撤销。该研究团队针对贪心算法在动态场景也给出了理论证明,并且算法的时间复杂度为 O ( | V | log | V | + | V | c u ) ,近似比为:
1 2 ⌈ − log 2 w min ⌉ ( max c u + 2 ) (12)
其中,wmin是用户对活动最小的满意度,在表2的例子中,wmin是0.19,V是活动的集合。同时,She等人 [
活动的计划或安排是随着用户增多,会产生爆炸性组合优化的问题,当用户达到千万的数量级时,是很难在多项式时间内给出一个解。因此,活动的计划或安排是一个NP-hard难问题。大部分研究者都给出了近似算法,并且给出相应的理论证明,但是每个问题的约束条件不一样,每个问题对应的假设条件也有所不同,因此很难说哪个算法比哪个算法更优。下面对上述中的几种方法进行总结和比较。
这类问题仅考虑了用户对活动的兴趣程度和在一个活动中用户与用户之间的好友关系,没有考虑用户到活动的距离。在距离方面的欠缺考虑,可能会导致用户被安排到离用户居住地很远的活动,因此这会使得用户的满意度降低。
这类方法是基于博弈论的方法,将每个用户看成一个参与者,在每次做出选择时,都会选一个使自己满意度最大的策略。此类方法用在活动没有容量的情况下,用户可以达到最好的纳什均衡;而这类方
u1(3) | u2(1) | u3(1) | u4(2) | u5(3) | 冲突信息 | |
---|---|---|---|---|---|---|
v1(5) | 0.93 | 0.43 | 0.84 | 0.64 | 0.65 | v3 |
v2(3) | 0 | 0.35 | 0.19 | 0.21 | 0.4 | 无 |
v3(2) | 0.86 | 0.57 | 0.78 | 0.79 | 0.6 | v1 |
表2. 活动安排表
法没有在活动有容量限制的情况下进行讨论。
这类方法是考虑用户对活动的兴趣程度最大,但是用户到活动的距离最小。此类方法用了启发式的方法来解决,在很多情况下,给用户安排的活动可能并不是用户满意度最大的活动,可能会导致用户体验效果欠佳。
这类方法跟其他方法最大的区别是给用户安排多个活动时,考虑了一个用户同时几个活动,而活动与活动存在时间冲突的情况。一般来说,会给出一个冲突的信息,当两个活动存在冲突时,就选择一个令用户满意度较大的计划。同时,此类方法稍微增加了一些约束,比如用户的花费开销,从家到活动的距离,活动到活动的距离等信息,就可以给用户安排行程路径。
基于事件的社交网络的推荐方法与传统的推荐方法 [
首先,对推荐问题进行形式化定义。假设基于事件的社交网络推荐问题用五元组表示 ,其中 U = { u 1 , u 2 , ⋯ , u | u | } 是用户的集合,对于每一个用户u i,利用 L i u 表示它的地理位置信息,并且每个用户都有对应的标签信息, E = { e 1 , e 2 , ⋯ , e | E | } 表示用户与用户好友关系的集合; V = { v 1 , v 2 , ⋯ , v | v | } 是活动的集合,对于每一个活动v j Î V,利用 L j v 表示它的地理位置信息; T = { t 1 , t 2 , ⋯ , t | T | } 表示标签的集合, G = { g 1 , g 2 , ⋯ , g | G | } 表示群组的集合,每一个群组都有一个相应的地理位置信息和一个标签信息。有三种推荐模式:① 给用户推荐群组,给定一个用户u,根据r(u,g)的排序给该用户推荐一个其偏好程度最大的群组,其中r(u,g)表示用户u对群组g的偏好 [
推荐是指学习过往的历史记录和行为规律,从而给未来的群组、标签和活动推荐用户、群组等。根据推荐基本假设的不同,推荐方法可分为基于用户历史记录的推荐、基于多任务的推荐和基于多特征的推荐。主要使用的模型:贝叶斯潜在因子模型 [
基于用户历史记录的推荐方法依据用户在推荐时间点前的历史纪录信息,根据用户参加过的活动、标签信息、地理位置记录等给用户推荐活动。历史纪录信息对用户未来参加的活动有着很好的指导作用,例如发现用户以往总是参加一些体育类的活动,则社交媒体平台会以很大的概率给他推荐体育类相关的活动。Qiao等人 [
Zhang等人 [
多任务推荐指的是给用户推荐群组、给群组推荐标签和给用户推荐活动,Pham等人 [
如图7,Alice和Bob一起加入“Sports club”群组,然而Carol加入“Singles”群组;“Sports club”群组在体育场举行足球比赛,意味着Alice和Bob将会去体育场参加足球比赛;以此同时,“Singles”群组在“Restaurant”举办“Birthday”和“Hanging out”两个活动,则意味着Carol将有可能去“Restaurant”参加那两个活动。此外,发现前两个人的标签为“Sports”而后一个人的标签为“Dancing”,两个群组都是用“Games”来作为标签表示群组的兴趣爱好,“Singles”群组还用“Dancing”来作为标签。在这么交错复杂的信息中,将产生三个问题。① 用户将加入哪个群组,比较方便其往后参加的活动与兴趣爱好相吻合?② 群组将会选择哪个标签才是最能表达它的信息?③ 把即将到来的活动推荐给哪个用户比较适合?Pham等人 [
图7. 多种推荐任务示例图 [
为顶点近似计算问题(node proximity calculation problem) [
基于多特征是依据多个特征给用户推荐活动或给用户推荐群组。不同于传统的群组推荐 [
现在总结上文介绍的基于用户历史记录的推荐、基于多任务的推荐和基于多特征的推荐,这三种推荐方法都有其各自的特点,现对其进行总结。
这种推荐方法要事先知道用户的历史记录,并且从历史记录统计分析出少部分关键的特征,这类方法主要利用了矩阵分解技术来求解,主要是挖掘用户的历史记录信息,分析出用户的兴趣偏好,这些信息给推荐具有一定的指导作用。随着新用户和新活动的进入,此类方法将面临严重的冷启动问题,若融入多个特征属性,则冷启动问题将得到缓解。基于用户历史记录的推荐方法可以利用在给用户推荐群组,给用户推荐活动这两个推荐任务上面。
这种推荐方法结合用户和活动的五个属性,解决了给用户推荐群组,给群组推荐标签和给用户推荐活动三种推荐任务,这类方法主要利用了基于图的模型的方法,把这三种推荐任务转变为顶点近似计算问题(node proximity calculation problem),并结合异质的网络信息。而对于信息量较少的用户和活动,则这种方法将很难给用户推荐其感兴趣较大的活动,很难给群组推荐适合的标签,可能会给用户推荐其不太满意的活动,影响用户的满意度。但是这种方法能解决三种推荐任务也是其他研究者少有的突破。
这种推荐方法是为了解决基于用户历史记录的推荐方法所带来的冷启动问题,主要用到了分类方法和坐标上升的排序算法来解决。这种方法主要难点是在特征的选择,将选择好的特征用分类算法去分类,这种方法比较直观、简单。但是模型适应性和解释性较弱,依赖于特征的选择和组合。
基于事件的社交网络既能满足社会化活动推荐的基本功能,同时又具备给用户指定活动计划或者路线规划并且预测活动的潜在用户等特点。近年来,基于事件的社交网络的研究和应用取得了一定的进展,但总体来看还是有一些方向值得关注。这一节先对本文进行总结,接着对基于事件的社交网络的研究趋势进行分析。
在基于事件的社交网络中,用户会根据社交媒体平台的信息随时随地获知线下的活动,近年来,社交媒体平台的注册人数逐年上升,因此基于事件的社交网络数据管理技术在学术界和工业界受到了越来越多的关注。本文从预测、活动计划或安排以及推荐对基于事件的社交网络数据管理技术进行了综述,首先从研究的模型把预测问题分为基于组织者影响最大、基于多特征混合和基于亲密度最大的方法:然后依据用户参加的活动个数,对计划或安排问题分为亲密度最大、最优策略、最大–最小和活动冲突的方法;接着从用户历史记录、多任务的推荐方法和多特征的推荐方法来介绍推荐问题。本文使用一个表格总结如表3。
在表3中,CBAS-ND与CBAS是可比较的,因为这两个算法是在同一个问题规模并且约束条件相同的情况下进行的,从上文的介绍中,可以知道CBAS-ND比CBAS的算法性能好,记CBAS-ND算法的时间复杂度为 T CBAS-ND = O ( E + m log | U | + k T + m | U | ρ T ) 。在表3中的路径规划三个算法,它们的约束条件和限制条件都一致,因此他们也是可比较的,但是从文章中可以知道RG算法是没有近似比的,记RG的时间复杂度为 T RG = O ( | V | | U | ( | V | + | U | + | V | | U | ) | S v | ) ,算法在没有近似比的情况下,无从得知该算法的好坏;而DeDP和DeGreedy它们都有1/2的近似比,从时间复杂度来看的话,DeGreedy算法优于DeDp算法,记DeDP的时间复杂度为 T DeDP = O ( | U | ( | V | 2 max u { b u } + | V | | U | ) ) ,DeGreedy的时间复杂度为
问题 | 方法 | 距离 | 相似度 | 友谊网络 | 事件容量限制 | 静态或动态 | 算法 | 时间复杂度 | 参考文献 |
---|---|---|---|---|---|---|---|---|---|
事件预测 | 组织者影响力 | 无 | 静态 | PICS | O ( ( k ) | V Q | ⋅ t ( n ) ⋅ ∑ i = 1 | Q | { i | Q | } ) | [ | |||
多特征 | √ | √ | √ | 无 | 静态 | LDA | [ | ||
亲密度 | √ | 有 上下限 | 静态 | SEO | O ( | L | log ( | L | ) + | E | ) | [ | |||
事件计划或 | 亲密度 | √ | √ | 有 上下限 | 静态 | CBAS | O ( E + m log | U | + k T ) | [ | |
√ | √ | 有 上下限 | 静态 | CBAS-ND | T CBAS-ND | [ | |||
最优策略 | √ | √ | 无 | 静态 | RMDP | Θ ( k ⋅ | U | + | E | ) | [ | ||
最大–最小 | √ | √ | 无 | 静态 | MB | O ( | A | | U | 3 ) | [ | ||
√ | √ | 无 | 静态 | MG | O ( | A | | U | ( | U | + log | U | + δ ) ) | [ | |||
√ | √ | 无 | 静态 | MRG | O ( | A | | U | 3 ) | [ | |||
事件冲突 | √ | √ | 有上限 | 静态 | MCF-GEACC | T MCF-GEACC | [ | ||
√ | √ | 有上限 | 静态 | G-GEACC | T G-GEACCG-GEACC | [ | |||
√ | √ | 有上限 | 动态 | OG-GEACC | O ( | V | log | V | + | V | c u ) | [ | |||
事件规划 | 路径规划 | √ | √ | 有上限 | 静态 | RG | T RG | [ | |
√ | √ | 有上限 | 静态 | DeDP | T DeDP | [ | |||
√ | √ | 有上限 | 静态 | DeGreedy | T DeGreedy | [ | |||
事件推荐 | 历史记录 | √ | √ | 无 | 静态 | 机器学习 | [ | ||
多任务 | √ | √ | 无 | 静态 | HeteRS | O ( t | U | ) , t是算法迭代次数 | [ | ||
多特征 | √ | √ | √ | 无 | 静态 | 机器学习 | [ |
表3. 基于事件的社交网络总结表
T DeGreedy = O ( | V | max v { c v } + | V | | U | ) 。在表3中的算法时间复杂度,其中 | U | 表示用户数, | V | 表示事件数,m是刚开始随机的选择的用户的个数, c u 表示用户可以参加的事件个数, c v 表示事件可以容纳的用户数量, b u 是用户u参加事件需要的开销费用, S v 是事件v用户的集合。本文对MCF-GEACC算法的时间复杂度进行了简化,从原时间复杂度简化为 O ( | U | | V | ( ( Δ max 2 − Δ min 2 ) log ( | U | + | V | ) + max c c ) ) ,并记为 T MCF-GEACC ;同时也对算法G-GEACC的时间复杂度进行了化简,由于 σ ( U ) 与 σ ( V ) 是大于1的数,因此原来的时间复杂度可化为 O ( | V | σ ( V ) + | U | σ ( U ) + | V | | U | ( σ ( V ) + σ ( U ) + log ( | V | + | U | ) ) ) ,并记为 T G-GEACC 。
经过多年的发展,虽然研究者们已经针对预测、活动的计划或安排和推荐进行了一些相关的研究,但是依然存在很多的问题尚未涉足。从本文的论述中,笔者认为基于事件的社交网络数据管理技术有如下的发展趋势:
趋势一:提高用户的满意度
基于事件的社交网络数据管理技术,结合实际意义,一般是要考虑多条件的限制才会使得问题更真实。比如用户到活动举办地点的距离、用户与活动之间的相似度、线上用户之间的友好关系和活动的容量等,但是考虑了多个条件的限制,问题就会变得复杂渐渐地接近无解的状态,所以结合实际应用环境并针对这么多有意义地条件限制的情况下,如何在可接受的时间复杂度和空间复杂度范围内,设置一个较优的算法使得用户的满意度达到前所未有的高度。
趋势二:研究用户和活动的动态性
目前基于事件的社交网络数据管理技术大部分研究都是在用户和活动所有信息已知的情形下提出,基于事件的社交网络的静态数据模型假设过于严格,无法建模现实世界中的基于事件的社交网络数据。因为在现实生活中,由于用户和活动的变化,用户会一个接一个的动态报名参加活动,活动也会一个接一个的动态出现。而目前研究人员提出的基于事件的社交网络数据管理技术研究只有极少部分可以应用在用户与活动双方动态抵达的环境中 [
趋势三:真实结果与理论结果的对照
目前的很多研究都是基于一些算法给用户推荐活动或者安排活动,但是现实生活中用户有没有去参加这些活动,此研究目前还比较缺乏 [
梁 媛. 基于事件的社交网络数据管理技术研究综述A Survey on Data Management of Event-Based Social Networks[J]. 计算机科学与应用, 2018, 08(09): 1459-1481. https://doi.org/10.12677/CSA.2018.89160