基于社交网络领袖人物进行App推荐的方法与流程

文档序号:11621183阅读:252来源:国知局
基于社交网络领袖人物进行App推荐的方法与流程

本发明属通信技术领域,尤其是涉及一种基于社交网络领袖人物进行app推荐的方法。



背景技术:

社交网络是指个体相互作用而形成的关系系统,它侧重于不同用户之前的交互和连接。从社交网络的角度来看,每个移动用户都有自己的通信圈。根据用户之间的短信和通话记录,一个通信网络便形成了。从数学的角度,社交网络仅仅是一个普通的网络,每个移动用户都是这个网络中的一个节点。

随着4g-lte网络的发展,智能手机用户增长迅速,越来越多的用户通过使用各种app来娱乐、购物、办公。面对海量app,如何根据用户的需求推荐app、从而促进用户的app流量消费成为运营商的面临的重要研究课题。



技术实现要素:

本发明要解决的问题是提供一种从通信圈去分析个体的行为并鉴别出通信圈中的领袖人物,基于社交网络领袖人物进行app推荐的方法。

为解决上述技术方案,本发明采用的技术方案是:该基于社交网络领袖人物进行app推荐的方法,包括以下步骤:

步骤1:在通信网络中,分析用户通过相互之间的关联联系构成的社交网络,并从中识别出有效社交网络,所述有效社交网络通过若干个节点和相邻节点之间的连线体现出来;

步骤2:优化所述步骤1中识别出的有效社交网络,去掉低关联用户;

步骤3:从所述步骤2中鉴别出节点重要度高的节点作为领袖人物;

步骤4:利用领袖人物进行基于用户的协同过滤进行推荐app。

社交网络中的领袖人物通常都会影响其他人的意见和决定,可以从通信圈去分析个体的行为并鉴别出通信圈中的领袖人物,进而利用社交网络中的领袖人物进行app推荐;由于用户群体的庞大,通常构建的通信网络会很多,因此,在分析这个网络之前,有必要识别出大网络中的有效网络,本申请的步骤1即是要求分析用户通过相互之间的关联联系构成的社交网络,并从中识别出有效社交网络;在步骤2中,去掉低关联用户,这样,构建出的网络每个节点联系的都很紧密,而且不同圈子之间的关系也变得稀疏;

在复杂网络中,一个节点的度为网络中该节点与其他节点的连接数。网络通常是有向网络,网络中节点间的连线都是一个节点指向另外一个节点。在本专利申请中,每个节点有两种度:节点入度,即有多少节点指向该节点;节点出度,即该节点指向多少节点。若一个节点的入度很高,且连接该节点的节点重要度很高,则意味着这个节点相比网络中其他节点有较高的影响力,在步骤3中,本申请的技术方案要求鉴别出节点重要度高的节点作为领袖人物。

在领袖人物之间采用基于用户的协同过滤进行推荐app,将社交网络中的领袖人物作为营销切入点,极大程度的削减了推荐用户量,但利用领袖人物的影响力保证了推荐的有效性和传播性,上述技术方案不仅可以减少投入成本,也可以保证app推荐的有效性。

优选的,在所述步骤1中,采用雪球抽样的方法提取整个通信网络用户连接的子图,用于构造网络和增加网络中的节点数。

在统计学中,雪球抽样是一种非随机采样技术,它可以用来构造网络和增加网络中的节点数;由于用户群体的庞大这一特点,通常构建的通信网络会很多,采用雪球抽样的方法在本申请的技术方案中显得尤为快捷有效。

优选的,在所述步骤2中,运用内外比指数优化网络,识别出有效社交网络,去掉低关联用户。

对网络中的任何一个节点计算该节点的入度(多少节点指向该节点)与出度(该节点指向多少其他节点),得到出入度差,删掉最小出入度差的节点。删掉这样的节点后,重新计算每个节点的出入度。接着利用内外比指数来衡量网络的质量。内外比指数为节点的入度与出度差与节点的入度出度和的比。这个指数的取值范围为-1到1,如果是1,则说明该节点只有入度,如果为-1,则说明该节点只有出度。当内外比指数达到最大时,停止删除节点,即去掉低关联用户。

优选的,在所述步骤3中,通过网页排名pagerank算法挖掘出社交网络中节点重要度高的领袖人物。

一个节点的重要度由其相连的节点的重要性所决定,若与一个节点连接的节点很重要,则该节点的重要程度也会很高,采用网页排名pagerank算法是优选的方案。

优选的,所述步骤4中,基于用户的协同过滤算法包括两个步骤:(1)找到和目标用户喜好相似的用户集合;(2)找到这个用户集合中用户喜欢的,且目标用户没有安装过的app推荐给目标用户。

相对于现有技术,本发明的技术方案通过两层雪球抽样算法挖掘出每个用户的社交网络,再通过pagerank算法挖掘出每个社交网络中具有强影响力的领袖人物,从而在领袖人物之间采用协同过滤算法进行app推荐,将朋友圈中的领袖人物作为营销切入点,极大程度的削减了推荐用户量,利用领袖人物的影响力保证了推荐的有效性和传播性,不仅可以减少投入成本,也可以保证app推荐的有效性。

附图说明

下面结合附图和本发明的实施方式进一步详细说明:

图1是本发明基于社交网络领袖人物进行app推荐的方法的流程示意图;

图2是通信网络圈结构示意图;

图3是针对一个用户的两层雪球抽样的示意图;

图4是节点关系示意图;

图5是节点联系示意图;

图6是社交网络中节点连接示意图;

图7是邻接矩阵的示意图;

图8是节点的重要度计算示意图;

图9是利用pagerank算法迭代后的通话记录示意图;

图10用户行为记录示意图。

具体实施方式

本发明的基于社交网络领袖人物进行app推荐的方法,包括以下步骤:

步骤1:在通信网络中,分析用户通过相互之间的关联联系构成的社交网络,并从中识别出有效社交网络,所述有效社交网络通过若干个节点和相邻节点之间的连线体现出来;

采用雪球抽样的方法提取整个通信网络用户连接的子图,用于构造网络和增加网络中的节点数;

社交网络中个体行为不仅由个体特征决定,也会受到周围朋友的影响。因此,当我们分析用户的个体行为时,需要考虑朋友圈效应,在通信网络中,用户通过相互间的通话和短信记录构建关系链接,这种人与人之间的关系链接可以从图2中看出,每个节点代表一个用户;

在统计学中,雪球抽样是一种非随机采样技术,它可以用来构造网络和增加网络中的节点数。对种子用户进行两层雪球抽样,得到种子用户联系人的联系人。图3是两层雪球抽样的样例图;

步骤2:优化所述步骤1中识别出的有效社交网络,去掉低关联用户;

识别出有效网络后,再运用内外比指数优化网络,去掉低关联用户。这样,构建出的网络每个节点联系的都很紧密,而且不同圈子之间的关系也变得稀疏;

步骤3:从所述步骤2中鉴别出节点重要度高的节点作为领袖人物,运用内外比指数优化网络,识别出有效社交网络,去掉低关联用户;通过网页排名pagerank算法挖掘出社交网络中节点重要度高的领袖人物;

在复杂网络中,一个节点的度为网络中该节点与其他节点的连接数,网络通常是有向网络,网络中节点间的连线都是一个节点指向另外一个节点,在本发明实施例中,每个节点有两种度:节点入度,即有多少节点指向该节点;节点出度,即该节点指向多少节点。

pagerank算法是由larrypage和sergeybrin发明的,它被谷歌搜索用来评估网站的排名,是衡量网页重要性的一种方法;在该算法中,一个节点的重要程度由其相连的节点的重要性所决定。在图4中,其中节点表示用户,而边表示通话、短信等记录。可以看出跟其他节点有多连接的节点,该节点的重要程度就有多重要。若与一个节点连接的节点很重要,则该节点的重要程度也会很高;图5是节点联系示意图,用来表示节点的重要性,节点的重要性为:得到有效的社交网络后,利用pagerank算法,可以得到每个节点的重要值,该值越大代表节点的重要度越高。图5算是pagerank算法计算节点重要值的一个说明,某个节点的重要值由指向该节点的节点重要值的和。

根据社交网络中节点之间的连接关系,可以得到每个节点如图5的表示方式,图5中所示的i、k、j分别代表不同的节点。

图6所示的是社交网络中节点连接示意图,并由此建立的邻接矩阵,得到邻接矩阵如图7所示,利用方程来更新节点向量,在本实施例中,节点只有3个,对每个节点设置初始权重为:节点有3个,初始权重为1/3;若节点有4个,初始权重为1/4;…以此类推,节点有n个,初始权重为1/n。

图8为节点的重要度计算,经过多次的迭代,节点的重要值趋近于收敛(不变)。重要值越大的节点重要性越高。

在通信网络中,把移动用户看做是节点,把通话记录及短信记录作为连接节点之间的纽带。r语言是一种统计工具,它自带的igraph包可以用来做网络分析及可视化。

利用pagerank算法来计算每个节点的重要性,100次迭代后,我们得到了所有移动用户的重要性,从图9可鉴定出领袖人物。

根据图6、7、8可见,节点的重要度(重要值、pr值)计算如下:会根据有效社交网络中节点的个数赋予一个初始pr,若节点有n个,则初始值为1/n,这样构成一个n行1列的列向量a,值都为1/n。接着根据用户之间的联系关系建立n*n邻接矩阵b,若用户i指向j,则矩阵b(i,j)=1,若用户j指向i,则矩阵b(j,i)=1。对矩阵的每一列进行求和,相应的用对应列中元素除以该列元素的和得到概率矩阵c。概率矩阵c和列向量a相乘得到n行1列的新列向量a(1),不断的用矩阵c和更新后的列向量相乘迭代,知道列向量a(j)不再改变,j由迭代次数决定,若迭代次数100次使得a(j)不再改变,j为100。

步骤4:利用领袖人物进行基于用户的协同过滤进行推荐app;

所述步骤4中,基于用户的协同过滤算法包括两个步骤:(1)找到和目标用户喜好相似的用户集合;(2)找到这个用户集合中用户喜欢的,且目标用户没有安装过的app推荐给目标用户。

步骤(1)的关键就是计算两个用户的喜好相似度。这里,协同过滤算法主要利用app行为的相似度计算喜好的相似度;

给定用户a和用户b,令n(a)表示用户a安装的app应用集合,令n(b)为用户b安装的app应用集合。则可通过如下余弦相似度公式来计算a和b的喜好相似度:

图10是用户行为记录示意图,a对app{a,b,d}有过行为,用户b对app{a,c}有过行为,利用余弦相似度公式计算用户a和用户b的喜好相似度:

得到用户之间的喜好相似度后,基于用户user的协同过滤算法会给用户推荐和他喜好最相似的k个用户喜欢的app;如下的公式度量了基于user的协同过滤算法中用户a对app(i)的喜好程度:

s(a,k):包含和用户a喜好最接近的k个用户;

n(i):对app(i)有过行为的用户集合;

wab:用户a和用户b的喜好相似度;

rbi:用户b对app(i)的喜好(这里都为1);

说明:app(i)是用户b之前安装过的,那么用户a对app(i)喜好程度的计算过程可以分为几个步骤:

①找到与用户a最近的k个用户(通过用户相似度矩阵);

②通过k个用户和n(i)(安装了app(i)的用户集合)的交集得到k个用户中对i感兴趣的若干用户集合b;

③将用户a和集合b中每一个用户b[i]之间的相似度累加的总和即为用户a对于app(i)的喜好程度;

完成以上喜好程度计算后,则可根据每款app的喜好程度将top10的app推荐给用户a,通过领袖人物a的传播,则可将app推荐给更多的用户。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明;凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1