技术领域
[0001] 本
发明涉及
大数据、社交网络研究领域,具体地,设计一种基于地理社区的社交网络中商业点最大化推广方法和系统。
背景技术
[0002] 在诸如微信、QQ、微博、抖音等具有内容分享功能的社交网络中,商业点推广就是利用用户在社交网络中发布的具有
位置信息的分享内容为商业点吸引尽可能多的顾客。具体地,通过激励部分初始推广用户在社交网络中发布该商业点推广信息,以吸引其社交好友光顾该商业点;进一步,通过新光顾的用户进一步发布商业点推广信息以吸引更多的用户光顾该商业点。由于用户更愿意接受来自自己社交好友传播的广告,大量用户会受到口碑效应的影响,被该商业点所吸引进而光顾该商业点,从而达到商业点推广的目的。
[0003] 经过对
现有技术文献的检索发现,商业点推广在近年的广泛研究中被定义为一种具有位置属性的信息影响最大化问题。传统的商业点推广方是通过预估个体用户经初始推广后可为商业点吸引的个体目标用户规模的期望值,然后基于贪心
算法,按照所预估的期望值,选取能够吸引最多用户的特定个数初始推广个体用户。例如,G.Li等在2014年ACM SIGMOD会议上发表的Efficient location-aware influence maximization(高效的具有位置属性的影响最大化)中,假设每一个用户逗留在一个固定的地点,面向一个特定的地理区域,设计选择K(K>1,K为整数)个初始推广用户以最大化影响在区域R中用户间的传播。W.Zhu等在2015年ACM SIGKDD会议上发表的Modeling user mobility for location promotion in location-based social networks(社交网络中位置推广的用户移动性建模)中,提出了一种基于距离的用户移动模型,并通过实验结果验证了该算法在描述用户移动至所推广商业点的概率方面的有效性。X.Wang等人在2016年IEEE ICDE上发表的Distance-aware influence maximization in geo-social network(地理社交网络中基于距离的影响最大化)提出用户线下光顾推广商业点的概率随距离呈衰减,并进而提出了选取K个初始推广个体的贪心算法。然而,在实际的位置推广中,商业点的目标用户往往是地理距离其较近的用户,但在传统面向个体用户的推广方法中,用于个体用户的位置属性稀疏易变,在预估推广规模时无法准确
定位目标用户;此外,个体用户在社交网络中所引起的信息传播有限,在有限的激励预算下激励少量的初始推广用户往往不能实现大规模的商业点推广。
[0004] 与本
申请相关的现有技术是
专利文献CN103745105B,提供一种社交网络中用户属性的预测方法及系统,所述方法包括:统计一段时间内每个时刻对用户影响
力最大的N个好友,其中N为正整数;以及根据每个时刻对用户影响力最大的N个好友在每个时刻的属性来预测将来时刻所述用户的属性。
发明内容
[0005] 针对现有技术中的
缺陷,本发明的目的是提供一种基于地理社区的社交网络中商业点最大化推广方法和系统。
[0006] 根据本发明提供的技术方案,利用地理社区中用户呈现的稳定移动状态确定目标用户,进而构建地理社区间的商业点推广信息传播模型并选取能够最大化推广增益的初始推广社区。
[0007] 根据本发明提供的一种基于地理社区的社交网络中的商业点推广方法,包括:
[0008] 信息采集步骤:采集社交网络中各个用户的历史位置信息,根据历史位置信息挖掘得到用户密集分布的地理社区,确定各个用户与地理社区之间的归属关系;
[0009] 模型建立步骤:基于各个用户的社交关系、地理社区中各个用户的地理分布关系,建立待推广商业点在地理社区中的期望传播模型;
[0010] 投放建议步骤:根据期望传播模型进行运算,得到投放位置建议列表,所述列表中按照期望推广效益大小排列,选择列表中期望推广效益最大的一个投放位置建议中的地理社区作为初始推广社区,将初始推广社区中地理分布关系的密集分布位置作为初始投放位置。
[0011] 优选地,所述信息采集步骤包括:
[0012] 移动模型建立子步骤:对每一个地理社区,建立一个基于隐
马尔可夫模型的用户移动模型,其中每个模型中包含有H1个稳定状态,每个稳定状态具有一个核心位置作为所述地理社区中用户的H2个聚集位置;每个
隐马尔可夫模型具有一个H1×H2转移概率矩阵用于刻画用户在多个聚集地间的移动特征;
[0013] 移动轨迹计算子步骤:根据历史位置信息,将每一个用户的连续N个位置信息设置为一条轨迹:lr={lr,1,lr,2,…,lr,N},并假设轨迹lr对应的用户位于所述N个位置时所处的状态为Dr={sr,1,sr,2,…,sr,N},令集合Nu表示用户u的全部历史位置信息,则用户u具有条移动轨迹;
[0014] 参数确认子步骤:对每个地理社区,确定隐马尔可夫模型的待定参数,分别按如下表达式更新:
[0015]
[0016]
[0017] 其中,πh表示地理社区中用户的稳态分布概率;h表示一个稳定状态;
[0018] R表示总的用户移动轨迹数目;r表示对用户移动轨迹进行遍历时的变量;
[0019] wr为一条轨迹对应的用户当前归属于所述地理社区的概率;
[0020] γ(sr,n=h)表示用户位于位置lr,n时处于稳定状态h的概率;
[0021] αij为由稳定状态i转移至稳定状态j的概率;
[0022] N表示每条用户的移动轨迹中用户位置的数目,n表示移动轨迹中的第n个位置;
[0023] ε(sr,n-1=i,sr,n=j)则表示对于两个连续位置lr,n-1和lr,n用户分别处于稳定状态i和稳定状态j的概率;
[0024] lh表示第h个稳定状态中用户密集分布位置;
[0025] H表示每个地理社区中总的用户稳态分布状态数目,h表示其中一个稳定状态;
[0026] τ表示地理社区中的用户移动偏好;
[0027] ln(||lr,n-lh||2+∈表示更新参数时所产生的中间变量,可由lr,n、lh、∈三个参数直接计算得到;
[0028] 归属关系确认子步骤:基于待定参数,对每个地理社区的隐马尔可夫模型进行
迭代,得到用户归属于各个地理社区的归属关系概率。
[0029] 优选地,对于处于第i个群组中第h个稳定状态si,h的用户,采用基于距离的帕累托分布来刻画所述用户位于位置L的移动概率P(L|si,h),
[0030] 即
[0031] 其中,li,h为稳定状态si,h所对应的核心位置;
[0032] x表示计算移动概率P(L|si,h)时的积分标量;
[0033] τ表示所述地理社区中的用户移动偏好;
[0034] ε表示计算移动概率P(L|si,h)时保证分母不为0的校正参数,是预设值。
[0035] 优选地,对于用户u,其归属于地理社区gi的概率更新为
[0036] 其中, (p(lr|gi)为在当前参数下轨迹lr按地理社区gi的移动模型所计算得到的分布概率;
[0037] 为地理社区的数量;
[0038] p(gi)表示地理社区gi的概率;
[0039] Tu表示用户u的所有移动轨迹构成的集合;
[0040] lr表示第r条用户的移动轨迹。
[0041] 优选地,在所述迭代中,参数p(gi)=∑u∈Vplast(gi|u)/|V|;
[0042] 其中,plast(gi|u)为上轮迭代中更新后的归属概率P(gi|u);
[0043] 在T次迭代结束后得到各个地理社区的隐马尔可夫模型参数[πi,1,πi,2,…,πi,H,A,[li,1,li,2,…,li,H],τ;
[0044] V表示
[0045] A表示
[0046] 为地理社区gi中用户的密集分布位置;
[0047] 对于任意一个用户u,其隶属与地理社区gi的概率记为最后一轮迭代后的概率P(gi|u);若P(gi|u)>0,则记为u∈gi。
[0048] 优选地,所述模型建立步骤包括:
[0049] 光顾概率计算子步骤:基于各个地理社区的隐马尔可夫移动模型,计算各个地理社区中用户达到所推广商业点的期望概率;
[0050] 传播模型建立子步骤:对于用户间社交关系,用E表示全体社交关系构成的集合;对于任意一对有社交关联的用户m和用户n,用概率wmn表示信息传播到m后可由m传播到n的概率;在所构建的期望传播模型中,将每个地理社区建模为一个群组,对于任意一个群组gi,用ρi表示gi中的一个用户可将信息成功传播到另一名gi中的用户的概率;对于任意两个群组gi和gj,用Bij表示gi中的一个用户可将信息成功传播到gj中的一个用户的概率,其中[0051]
[0052] 在上述表达式中,Ngi=∑u∈VP(gi|n),gi-gj表示由属于群组gi但不属于gj的用户构成的集合,gi∩gj h表示由既属于群组gi又属于gj的用户构成的集合;
[0053] ρi表示gi中的一个用户可将信息成功传播到另一名gi中的用户的概率,Ngi表示群组gi中用户的数目,p(gi|n)表示用户属于群组gi的概率。
[0054] 优选地,所述投放建议步骤包括:
[0055] 分布概率计算子步骤:对于任意一个地理社区gi,
[0056] 令 且 所对应的用户所处稳定状态记为 其稳态分布的概率则记为
[0057] 推广增益计算子步骤:若地理社区gi,被选为初始推广社区,则其期望推广增益为[0058]
[0059] 其中,M(gi)表示若地理社区gi,被选为初始推广社区带来的期望推广增益;
[0060] Ngi表示地理社区gi中的用户数目;
[0061] 表示若地理社区gi,被选为初始推广社区,则其所属用户中经初始推广光顾该商业点的期望比率;
[0062] I(gi,gi)表示地理社区gi中的用户可吸引地理社区gj中的用户光顾该商业点的期望比率;Ngj表示地理社区gj中的用户数目;
[0063] 投放选择子步骤:令SK表示已选取的初始推广社区构成的集合,则SK中所有的地理社区在初始推广后可吸引任意一个地理社区v中的用户光顾该商业点的期望比率为[0064] 若新选取一个初始推广社区gi加入SK,则其带来的边缘推广增益为其中
[0065] 令SK={s1},为了最大化推广增益,则选取 为第二个初始推广社区,并且SK更新为SK=SK∪s;
[0066]
[0067] SK中所有社区即为初始推广的地理社区,其每个社区中的位置 即为所求的最大化推广增益的推广信息初始投放位置。
[0068] 根据本发明提供的一种基于地理社区的社交网络中的商业点推广系统,包括:
[0069] 信息采集模
块:采集社交网络中各个用户的历史位置信息,根据历史位置信息挖掘得到用户密集分布的地理社区,确定各个用户与地理社区之间的归属关系;
[0070] 模型建立模块:基于各个用户的社交关系、地理社区中各个用户的地理分布关系,建立待推广商业点在地理社区中的期望传播模型;
[0071] 投放建议模块:根据期望传播模型进行运算,得到投放位置建议列表,所述列表中按照期望推广效益大小排列,选择其中期望推广效益最大的一个投放位置建议中的地理社区作为初始推广社区,将初始推广社区中地理分布关系的密集分布位置作为初始投放位置。
[0072] 与现有技术相比,本发明具有如下的有益效果:
[0073] 1、基于用户在社交网络中所发布的位置信息,从位置大数据中挖掘出用户稳态分布的地理社区,构建基于隐马尔可夫模型的社区中用户稳定的移动模型以解决现有技术中因个体用户的移动模型信息稀疏易变导致的无法有效定位商业点目标用户的问题;
[0074] 2、构建了商业点推广信息在地理社区间的传播模型,从而选取出能够最大化商业点推广增益的初始推广社区。由于社交网络中地理社区的数量要远小于用户的规模,面向社区进行选取较现有技术面向用户直接选取可显著提升运算效率。此外,面向地理社区的推广可在相同的预算下大幅度提升初始推广所吸引的用户数量,较现有技术面向个体用户进行初始推广可显著提升商业点推广规模。
附图说明
[0075] 通过阅读参照以下附图对非限制性
实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0077] 图2是本发明中推广信息在地理位置间传播的示意图;图中g1、g2、g3[0078] 分别代表三个地理社区,s1,1、s1,2、s1,3分别代表地理社区g1的三个稳定状态。
[0079] 如图所示,假定选取g2中稳定状态s2,1所对应的位置 作为商业点推广信息的初始投放位置,而后推广信息在社区用户间传播,三个社区中所吸引的用户将分别按照概率Pg1、Pg2、P3在线下光顾所推广的商业点。
[0080] 图3是本发明在具体实例张红与现有传统商业点推广方法的对比:图中GLP代表本发明所提出方法,Largest代表选择所属用户数最多的社区,Nearest代表选择距离商业点最近的社区,Greedy代表论文Distance-aware influence maximization in geo-social network中所提出的方法,TPH代表论文Location-basedinfluence maximization in social networks所提出的方法,EBA代表论文Efficient location-aware influence maximization中所提出的方法,从图中可看出本发明中所提出方法在期望传播规模上显著优于传统商业点推广方法。
具体实施方式
[0081] 下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
[0082] 本发明通过选取初始推广的地理社区,实现在商业点在社交网络用户间的最大化推广。传统的商业点推广方法是通过预估个体用户经初始推广后可为商业点吸引的个体目标用户规模的期望值,然后基于贪心算法,按照所预估的期望值,选取能够吸引最多用户的特定个数初始推广个体用户。然而,在实际的位置推广中,商业点的目标用户往往是地理距离其较近的用户,但在传统面向个体用户的推广方法中,用于个体用户的位置属性稀疏易变,在预估推广规模时无法准确定位目标用户;而从社交网络海量的个体用户中选取初始推广的用户又同时面临着计算复杂度过高的问题;此外,个体用户在社交网络中所引起的信息传播有限,在有限的激励预算下激励少量的初始推广用户往往不能实现大规模的商业点推广。
[0083] 在本发明中,采用以下技术克服上述三点困难:首先,本发明基于用户在社交网络中发布的历史位置信息所构成的位置大数据,采用期望值最大化算法,构建基于地理位置的隐马尔科夫移动模型,从而使得可基于地理社区中用户稳定的移动模型精准定位目标用户。二是,由于地理社区的数量远小于用户的规模,从挖掘出的地理社区中选取初始推广的地理社区可显著提升运算效率。三是,面向地理社区的推广可在相同的预算下大幅度提升初始推广所吸引的用户数量,较现有技术面向个体用户进行初始推广可显著提升商业点推广规模。
[0084] 根据本发明提供的一种基于地理社区的社交网络中的商业点推广方法,包括:
[0085] 信息采集步骤:采集社交网络中各个用户的历史位置信息,根据历史位置信息挖掘得到用户密集分布的地理社区,确定各个用户与地理社区之间的归属关系;
[0086] 模型建立步骤:基于各个用户的社交关系、地理社区中各个用户的地理分布关系,建立待推广商业点在地理社区中的期望传播模型;
[0087] 投放建议步骤:根据期望传播模型进行运算,得到投放位置建议列表,所述列表中按照期望推广效益大小排列,选择列表中期望推广效益最大的一个投放位置建议中的地理社区作为初始推广社区,将初始推广社区中地理分布关系的密集分布位置作为初始投放位置。
[0088] 具体地,所述信息采集步骤包括:
[0089] 移动模型建立子步骤:对每一个地理社区,建立一个基于隐马尔可夫模型的用户移动模型,其中每个模型中包含有H1个稳定状态,每个稳定状态具有一个核心位置作为所述地理社区中用户的H2个聚集位置;每个隐马尔可夫模型具有一个H1×H2转移概率矩阵用于刻画用户在多个聚集地间的移动特征;
[0090] 移动轨迹计算子步骤:根据历史位置信息,将每一个用户的连续N个位置信息设置为一条轨迹:lr={lr,1,lr,2,…,lr,N},并假设轨迹lr对应的用户位于所述N个位置时所处的状态为Dr={sr,1,sr,2,…,sr,N},令集合Nu表示用户u的全部历史位置信息,则用户u具有条移动轨迹;
[0091] 参数确认子步骤:对每个地理社区,确定隐马尔可夫模型的待定参数,分别按如下表达式更新:
[0092]
[0093]
[0094] 其中,πh表示地理社区中用户的稳态分布概率;h表示一个稳定状态;
[0095] R表示总的用户移动轨迹数目;r表示对用户移动轨迹进行遍历时的变量;
[0096] wr为一条轨迹对应的用户当前归属于所述地理社区的概率;
[0097] γ(sr,n=h)表示用户位于位置lr,n时处于稳定状态h的概率;
[0098] αij为由稳定状态i转移至稳定状态j的概率;
[0099] N表示每条用户的移动轨迹中用户位置的数目,n表示移动轨迹中的第n个位置;
[0100] ε(sr,n-1=i,sr,n=j)则表示对于两个连续位置lr,n-1和lr,n用户分别处于稳定状态i和稳定状态j的概率;
[0101] lh表示第h个稳定状态中用户密集分布位置;
[0102] H表示每个地理社区中总的用户稳态分布状态数目,h表示其中一个稳定状态;
[0103] τ表示地理社区中的用户移动偏好;
[0104] ln(||lr,n-lh||2+∈表示更新参数时所产生的中间变量,可由lr,n、lh、∈三个参数直接计算得到;
[0105] 归属关系确认子步骤:基于待定参数,对每个地理社区的隐马尔可夫模型进行迭代,得到用户归属于各个地理社区的归属关系概率。
[0106] 具体地,对于处于第i个群组中第h个稳定状态si,h的用户,采用基于距离的帕累托分布来刻画所述用户位于位置L的移动概率P(L|si,h),
[0107] 即
[0108] 其中,li,h为稳定状态si,h所对应的核心位置;
[0109] x表示计算移动概率P(L|si,h)时的积分标量;
[0110] τ表示所述地理社区中的用户移动偏好;
[0111] ε表示计算移动概率P(L|si,h)时保证分母不为0的校正参数,是预设值。
[0112] 具体地,对于用户u,其归属于地理社区gi的概率更新为
[0113] 其中, (p(lr|gi)为在当前参数下轨迹lr按地理社区gi的移动模型所计算得到的分布概率;
[0114] 为地理社区的数量;
[0115] p(gi)表示地理社区gi的概率;
[0116] Tu表示用户u的所有移动轨迹构成的集合;
[0117] lr表示第r条用户的移动轨迹。
[0118] 具体地,在所述迭代中,参数p(gi)=∑u∈Vplast(gi|u)/|V|;
[0119] 其中,plast(gi|u)为上轮迭代中更新后的归属概率P(gi|u);
[0120] 在T次迭代结束后得到各个地理社区的隐马尔可夫模型参数[πi,1,πi,2,…,πi,H,A,[li,1,li,2,…,li,H],τ;
[0121] V表示
[0122] A表示
[0123] 为地理社区gi中用户的密集分布位置;
[0124] 对于任意一个用户u,其隶属与地理社区gi的概率记为最后一轮迭代后的概率P(gi|u);若P(gi|u)>0,则记为u∈gi。
[0125] 具体地,所述模型建立步骤包括:
[0126] 光顾概率计算子步骤:基于各个地理社区的隐马尔可夫移动模型,计算各个地理社区中用户达到所推广商业点的期望概率;
[0127] 传播模型建立子步骤:对于用户间社交关系,用E表示全体社交关系构成的集合;对于任意一对有社交关联的用户m和用户n,用概率wmn表示信息传播到m后可由m传播到n的概率;在所构建的期望传播模型中,将每个地理社区建模为一个群组,对于任意一个群组gi,用ρi表示gi中的一个用户可将信息成功传播到另一名gi中的用户的概率;对于任意两个群组gi和gj,用Bij表示gi中的一个用户可将信息成功传播到gj中的一个用户的概率,其中[0128]
[0129] 在上述表达式中, gi-gj表示由属于群组gi但不属于gj的用户构成的集合,gi∩gj h表示由既属于群组gi又属于gj的用户构成的集合;
[0130] ρi表示gi中的一个用户可将信息成功传播到另一名gi中的用户的概率,Ngi表示群组gi中用户的数目,p(gi|n)表示用户属于群组gi的概率。
[0131] 具体地,所述投放建议步骤包括:
[0132] 分布概率计算子步骤:对于任意一个地理社区gi,
[0133] 令 且 所对应的用户所处稳定状态记为 其稳态分布的概率则记为
[0134] 推广增益计算子步骤:若地理社区gi,被选为初始推广社区,则其期望推广增益为[0135]
[0136] 其中,M(gi)表示若地理社区gi,被选为初始推广社区带来的期望推广增益;
[0137] Ngi表示地理社区gi中的用户数目;
[0138] 表示若地理社区gi,被选为初始推广社区,则其所属用户中经初始推广光顾该商业点的期望比率;
[0139] I(gi,gi)表示地理社区gi中的用户可吸引地理社区gj中的用户光顾该商业点的期望比率;Ngj表示地理社区gj中的用户数目;
[0140] 投放选择子步骤:令SK表示已选取的初始推广社区构成的集合,则SK中所有的地理社区在初始推广后可吸引任意一个地理社区v中的用户光顾该商业点的期望比率为[0141] 若新选取一个初始推广社区gi加入SK,则其带来的边缘推广增益为其中
[0142] 令SK={s1},为了最大化推广增益,则选取 为第二个初始推广社区,并且SK更新为SK=SK∪s;
[0143]
[0144] SK中所有社区即为初始推广的地理社区,其每个社区中的位置 即为所求的最大化推广增益的推广信息初始投放位置。
[0145] 根据本发明提供的一种基于地理社区的社交网络中的商业点推广系统,包括:
[0146] 信息采集模块:采集社交网络中各个用户的历史位置信息,根据历史位置信息挖掘得到用户密集分布的地理社区,确定各个用户与地理社区之间的归属关系;
[0147] 模型建立模块:基于各个用户的社交关系、地理社区中各个用户的地理分布关系,建立待推广商业点在地理社区中的期望传播模型;
[0148] 投放建议模块:根据期望传播模型进行运算,得到投放位置建议列表,所述列表中按照期望推广效益大小排列,选择其中期望推广效益最大的一个投放位置建议中的地理社区作为初始推广社区,将初始推广社区中地理分布关系的密集分布位置作为初始投放位置。
[0149] 在具体实施过程中,如图1所示,在实施例中,本发明选取了一个名为Gowalla的社交网络数据集,包括196591名用户,共计950327条社交关联,6442890条历史位置信息。所选取的商业点推广位置位于北纬38.039度,西经122.379度。下面将具体阐述实施方法:
[0150] 本发明是通过以下技术方案实现的。一种基于地理社区的社交网络中商业点最大化推广方法,包括如下步骤:
[0151] 步骤A:基于输入的用户在社交网络中所发布的历史位置信息,运用
期望最大化算法挖掘出用户密集分布的地理社区,并基于贝叶斯分类器确定用户与地理社区间的归属关系;
[0152] 步骤B:基于输入的用户间的社交关系、地理社区中用户的地理分布和所推广商业点的位置,建立推广商业点的信息在地理社区中的传播模型;
[0153] 步骤C:运用贪心算法,选取能够带来最大期望推广效益的一组地理社区作为初始推广社区,并将该一组地理社区中的用户的密集分布位置作为以最大化商业点推广为目标的推广信息初始投放位置。
[0154] 所述步骤A包括如下内容:
[0155] 步骤A.a:建立对于每一个地理社区,建立一个基于隐马尔可夫模型的用户移动模型:其中每个模型中包含有H个稳定状态,每个状态具有一个核心位置以刻画该地理社区中用户的H个聚集位置,优选地,在本实例中H=3;每个隐马尔可夫模型具有一个H×H转移概率矩阵用于刻画用户在多个聚集地间的移动特征;对于处于第i个群组中第h个稳定状态si,h的用户,采用基于距离的帕累托分布(Pareto distribution)来刻画其位于位置L的概率,即 其中li,h为状态si,h所对应的核心位置。对于每一个地理社区,其待定参数则包括:(1)给定任意一个用户,处于H个稳定状态的概率[πi,1,πi,2,…,πi,H],即该隐马尔可夫过程的稳态分布;(2)用户在H个稳定状态间的H×H维转移概率矩阵A;(3)H个稳定状态所分别对应的核心位置
(4)位置概率分布函数中的参数τ。在本发明中,将通过步骤A.a至A.a,基于输入的用户在社交网络中所发布的历史位置信息学习各个地理社区对应隐马尔科可夫模型中的上述各个参数。
[0156] 步骤A.b:对于输入的用户在社交网络中所发布的历史位置信息,将每一个用户的连续N个位置信息设置为一条轨迹:lr={lr,1,lr,2,…,lr,N},优选地,在本实例中N=5,并假设用户位于该N个位置时所处的状态为Dr={sr,1,sr,2,…,sr,N}令集合Nu表示用户u的全部历史位置信息,则用户u具有 条移动轨迹。基于所有的用户移动轨迹(共计R条),本发明采用期望最大化算法来迭代学习各个隐马尔可夫模型中的待定参数。在每一次迭代中各个参数的更新方法如步骤A.c中所述。
[0157] 步骤A.c:对于每个地理社区中的待定参数,分别按如下表达式更新[0158]
[0159]
[0160] 其中wr为该条轨迹对应的用户当前归属于该地理社区的概率,αij为由状态i转移至状态j的概率,参数γ(sr,n=h)表示用户位于位置lr,n时处于状态h的概率,而ε(sr,n-1=i,sr,n=j)则表示对于两个连续位置lr,n-1和lr,n用户分别处于状态i和状态j的概率。对于每一个地理社区,都按上述四个表达式更新其模型参数。
[0161] 其中
[0162]
[0163]
[0164]
[0165]
[0166]
[0167] πh表示:地理社区中用户的稳态分布概率,R表示:总的用户移动轨迹数目,r表示:对用户移动轨迹进行遍历时的变量,N表示:每条用户移动轨迹中用户位置的数目,n表示:
轨迹中的第n个位置,lh表示:第h个状态中用户密集分布位置,H表示:每个地理社区中总的用户稳态分布状态数目,h表示:对用户稳态分布状态进行遍历时的变量,ln(||lr,n-lh||2+∈表示:更新参数时所产生的中间变量,可由lr,n、lh、∈三个参数直接计算得到。
[0168] 步骤A.d:重复步骤A.c共计T次,优选地,在本实例中T=100。基于第T次迭代后各个地理社区模型的参数,更新用户归属于各个地理社区的概率,具体为:对于用户u,其归属于地理社区gi的概率更新为 其中为在当前的参数下轨迹lr按地理社区gi的移动模型所计
算得到的分布概率, 为地理社区的数量。优选地,在本实例中
[0169] )。其中
[0170] 为gi当前的参数下计算得到)
[0171] 进一步,将轨迹对应于各个地理社区的概率wr更新为其对应用户归属于各个地理社区的概率。Tu表示:用户u的所有移动轨迹构成的集合,lr表示:第r条用户移动轨迹。
[0172] 步骤A.e:重复步骤A.d共计T次。在每次迭代中,参数p(gi)=∑u∈Vplast(gi|u)/|V|,其中plast(gi|u)即为上轮迭代中更新后的归属概率P(gi|u)。在T次迭代结束后得到各个地理社区的隐马尔可夫模型参数[πi,1,πi,2,…,πi,H],A, τ,其中即为地理社区gi中用户的密集分布位置。对于任意一个用户u,其隶属与地理社区gi的概率为记为最后一轮迭代后的概率P(gi|u);若P(gi|u)>0,则记为u∈gi。
[0173] 所述步骤B包括如下内容:
[0174] 步骤B.a:基于各个地理社区的隐马尔可夫移动模型,计算各个地理社区中用户达到所推广商业点的期望概率。具体为:对于任意一个地理社区gi,用户位于各个聚集地的概率分别为[πi,1,πi,2,…,πi,H],令L表示所推广的商业点所处的地理位置,则地理社区gi中用户光顾L的概率计算为 其中表示:所推广位置L距离核心位置
的距离, 表示:所推广位置L距离核心位置 的距离。
[0175] 步骤B.b:基于输入的用户间社交关系、用户与各个地理社区的归属关系以及各个地理社区中用户达到所推广商业点的概率,建立推广商业点的信息在地理社区中的传播模型。对于输入的用户间社交关系,用E表示全体社交关系构成的集合;对于任意一对有社交关联的用户m和n,用概率wmn表示信息传播到m后可由m传播到n的概率。在所构建的地理社区间信息传播模型中,将每个地理社区建模为一个群组,对于任意一个群组gi,用ρi表示gi中的一个用户可将信息成功传播到另一名gi中的用户的概率;对于任意两个群组gi和gj,用Bij表示gi中的一个用户可将信息成功传播到gj中的一个用户的概率,其中
[0176]
[0177] 在上述表达式中 gi-gj表示由属于群组gi但不属于gj的用户构成的集合,gi∩gj表示由既属于群组gi又属于gj的用户构成的集合。ρi表示:表示gi中的一个用户可将信息成功传播到另一名gi中的用户的概率,Ngi表示:群组gi中用户的数目,m表示:
任意一个用户m,wmn表示:信息传播到m后可由m传播到n的概率,p(gi|n)表示:用户n属于群组gi的概率。
[0178] 所述步骤C包括如下内容:
[0179] 步骤C.a:对于任意一个社区gi,令 且所对应的用户所处稳定状态记为 其稳态分布的概率则记为
[0180] 步骤C.b:对于任意一个地理社区gi,若其被选为初始推广的地理社区,则位置被选为相应的商业点初始推广位置,其所属用户中经初始推广光顾该商业点的期望比率记为 其中p为初始推广可吸引用户光顾该商业点的概率。而后,该比率的初始光顾用户在社交网络中发布的位置签到记录(如微信朋友圈、微博、抖音视频、QQ状态等)可吸引另一个地理社区gj中的用户光顾该商业点的期望比率为 基于此,
若地理社区gi,被选为初始推广社区,则其期望推广增益为:
[0181]
[0182] M(gi)表示:若地理社区gi,被选为初始推广社区,其带来的期望推广增益,Ngi表示:群组gi中的用户数目, 表示:若地理社区gi,被选为初始推广社区,则其所属用户中经初始推广光顾该商业点的期望比率,I表示:一个社区中的用户可吸引另一个地理社区中的用户光顾该商业点的期望比率,gi表示:群组gi,gj表示:群组gj,Ngj表示:群组gj中的用户数目。
[0183] 因此,为了最大化推广增益,则选择具有最大期望推广增益M(gi)的社区为初始推广社区,即第一个所选取的初始推广社区为
[0184] 步骤C.c:步骤C.b给出了本发明中选取单个初始推广社区的选取方法,而步骤C.c则进一步给出选取第2~K(K>1,K为整数)个社区的选取方法。优选地,在本实例中,分别取K=5,10,25,50(不同K取值下的结果见附图3)。令SK表示已选取的初始推广社区构成的集合,则SK中所有的地理社区在初始推广后可吸引任意一个地理社区v中的用户光顾该商业点的期望比率为 若新选取一个初始推广社区gi加入SK,则其带来的边缘推广增益为
[0185]
[0186] 其中 I(gi|Sk,gj)=I(SK∪gi,gj)-I(SK,gj)。令SK={s1},为了最大化推广增益,则选取 为第二个初始推广社区,并
且SK更新为SK=SK∪s。
[0187] 步骤C.d:
[0188] 步骤C.e:重复步骤C.d共(K-3)次后,SK中所有社区即为初始推广的地理社区,其每个社区中的位置 即为所求的最大化推广增益的推广信息初始投放位置。
[0189] 如图2所示,该图是本发明中推广信息在地理位置间传播的示意图;图中g1、g2、g3分别代表三个地理社区,s1,1、s1,2、s1,3分别代表地理社区g1的三个稳定状态。如图所示,假定选取g2中稳定状态s2,1所对应的位置 作为商业点推广信息的初始投放位置,而后推广信息在社区用户间传播,三个社区中所吸引的用户将分别按照概率Pg1、Pg2、P3在线下光顾所推广的商业点。
[0190] 图3是本发明在具体实例中与现有传统商业点推广方法的对比:图中GLP代表本发明所提出方法,Largest代表选择所属用户数最多的社区,Nearest代表选择距离商业点最近的社区,Greedy代表论文Distance-aware influence maximization in geo-social network中所提出的方法,TPH代表论文Location-based influence maximization in social networks所提出的方法,EBA代表论文Efficient location-aware influence maximization中所提出的方法,从图中可看出本发明中所提出方法在期望传播规模上显著优于传统商业点推广方法。
[0191] 本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以
逻辑门、
开关、专用集成
电路、可编程逻辑
控制器以及嵌入式
微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种
硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的
软件程序又可以是硬件部件内的结构。以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在
权利要求的范围内做出各种变化或
修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。