CN106055713A - 基于用户兴趣和社交主题提取的社交网络用户推荐方法 - Google Patents

基于用户兴趣和社交主题提取的社交网络用户推荐方法 Download PDF

Info

Publication number
CN106055713A
CN106055713A CN201610519445.XA CN201610519445A CN106055713A CN 106055713 A CN106055713 A CN 106055713A CN 201610519445 A CN201610519445 A CN 201610519445A CN 106055713 A CN106055713 A CN 106055713A
Authority
CN
China
Prior art keywords
follower
social
followee
interest
community
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
Application number
CN201610519445.XA
Other languages
English (en)
Other versions
CN106055713B (zh
Inventor
许可
郑栩燊
闵华清
蔡毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201610519445.XA priority Critical patent/CN106055713B/zh
Publication of CN106055713A publication Critical patent/CN106055713A/zh
Application granted granted Critical
Publication of CN106055713B publication Critical patent/CN106055713B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于用户兴趣和社交主题提取的社交网络用户推荐方法,包括以下步骤:获取社交网络中用户的“follower‑followee”关系以及“mutual‑following”关系信息;提取用户的社交主题和兴趣主题;在这些主题的基础上分别形成用户的社交社区和兴趣社区;将各个社区分别整理成矩阵形式,使用矩阵分解方法对各个社区矩阵进行分解以计算各用户对在各个社区矩阵的意愿关注分数,取各个用户对在所有社区的意愿关注分数的最大值为最终意愿关注分数,为目标用户排序其与其他用户的最终意愿关注分数,最终选取分数最高的TOP‑N用户为推荐关注用户。具有得到了更准确的社交网络用户推荐结果等优点。

Description

基于用户兴趣和社交主题提取的社交网络用户推荐方法
技术领域
本发明涉及一种社交网络用户推荐技术,特别涉及一种基于用户兴趣和社交主题提取的社交网络用户推荐方法,该推荐方法采用UIS-LDA模型方法对用户的兴趣主题和社交主题进行提取,在已提取的主题基础上分别形成用户的兴趣社区和社交社区,随后,通过矩阵分解算法对每个社区进行矩阵分解,获取各个用户对之间的意愿关注分数,最后,对目标用户的该分数进行排序,获取分数最高的N个意愿关注用户作为推荐用户。该方法旨在社交网络中找寻到具有相似兴趣和社交圈的用户推荐给目标用户,从而提高用户推荐的准确性。
背景技术
随着社交网络的发展,越来越多的用户通过社交网络,如Twitter、新浪微博等进行社交交互和信息获取。然而,迅速膨胀的社交网络用户数量,由此带来的大规模的博文信息,造成了用户信息过载问题,使得他们很难有效地在社交网络中获取所需。用户推荐是解决社交网络中信息过载的有效途径之一。主流的用户推荐方法包括基于内容的推荐,协同过滤方法和主题模型方法。
本质上看,用户在社交网络中关注某个对象可能受各种因素驱动,譬如和朋友,亲人,工作伙伴等建立联系,或者想获得感兴趣的信息,又或者被名人所吸引。我们将这些因素归为两大类:兴趣和社交。前者关注用户的个人兴趣,使得用户更倾向于关注可以从中获取信息或与之兴趣有重叠的人;后者则注重用户现有社交联系的维持和加强,使得用户更倾向于关注其社交圈内的友人。因此,考虑到用户希望关注与之有相似兴趣和相近社交联系的其他用户,在做推荐的时候有必要将兴趣和社交这两种因素有效区分,并全面地考虑进来。
然而,现有的基于内容的推荐方法完全依赖于博文内容,不考虑用户的社交因素;与此同时,现有的协同过滤方法和主题模型方法通常使用“follower-followee”关系描述用户的喜好,而“follower-followee”关系本身可以由用户的社交或兴趣因素建立,因此这些方法并不区分用户在关注另一个人时的社交和兴趣需求,导致推荐的结果不够准确。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提供一种基于用户兴趣和社交主题提取的社交网络用户推荐方法,该推荐方法结合社交网络用户间的“follower-followee”关系以及“mutual-following”关系,提出一种新的主题模型方法,命名为UIS-LDA,用来提取用户的兴趣主题和社交主题。在此基础上,分别形成用户的兴趣社区和社交社区,通过对每个社区进行矩阵分解,最终为目标用户推荐TOP-N具有相似兴趣和相近社交联系的用户。
本发明的目的可以通过下述技术方案实现:基于用户兴趣和社交主题提取的社交网络用户推荐方法,包含如下步骤:
步骤一、将一个社交网络中的目标用户、需要提取的用户兴趣主题个数Kin和需要提取的用户社交主题个数Kso输入UIS-LDA主题模型,通过该模型聚类出Kin个兴趣主题和Kso个社交主题,并输出参数θin,θso,η,其中,θso表示文档在Kso个社交主题上的分布;θin表示文档在Kin个兴趣主题上的分布;η表示文档在贝努力变量o上的分布,o作为选择开关来指示每一篇文档的每一个followee是从一个社交主题中生成当o=0时或者是从一个兴趣主题中生成,当o=1时;表示社交主题在所有followee即被关注者上的分布;表示兴趣主题在所有followee即被关注者上的分布。
步骤二、对于每一个兴趣主题z∈Zin,对应生成一个兴趣社区c∈Cin,该兴趣社区包含的follower即关注者f和followee即被关注者g分别用c.F和c.G表示如下:
c.F={f|f∈F∧Pr'(z|df)≥γ},
c.G={g|g∈G∧Pr'(z|dg)≥ζ},
其中,F是所有follower的集合,G是所有followee的集合,f∈F表示f是集合F中的一个follower,g∈G表示g是集合G中的一个followee,γ,ζ是定义好的阈值,文档df包含某个follower f关注的所有followee,文档dg包含关注某个followee g的所有的follower,Pr'(z|df)≥γ表示文档df条件下属于某个兴趣主题z的发生概率大于等于阈值γ,Pr'(z|dg)≥ζ表示文档dg条件下属于某个兴趣主题z的发生概率大于等于阈值ζ,符号“∧”表示左右两边集合的合取运算,c.F={f|f∈F∧Pr'(z|df)≥γ}表示一个兴趣社区的关注者即follower集合,即c.F由满足f∈F∧Pr'(z|df)≥γ条件的所有follower f组成,c.G={g|g∈G∧Pr'(z|dg)≥ζ}表示一个兴趣社区的被关注者即followee集合,即c.G由满足g∈G∧Pr'(z|dg)条件的所有followee g组成;Zin为Kin个兴趣主题集合;Cin为Kin个兴趣社区集合;这里Pr'(z|df),Pr'(z|dg)分别用如下公式获得:
Pr ′ ( z | d f ) = Pr ( z | d f ) Σ z ′ ∈ Z Pr ( z ′ | d f ) ,
Pr ′ ( z | d g ) = Σ f ∈ d g Pr ′ ( z | d f ) Σ z ′ ∈ Z i n Σ f ∈ d g Pr ′ ( z ′ | d f ) ,
其中,其中,Pr(z|df)表示文档df条件下属于某个兴趣主题z的发生概率,表示对所有z'的Pr(z'|df)取和,这里z'∈Z,Z为所有兴趣主题和社区主题组成的集合。表示将所有属于文档dg的follower f对Pr'(z|df)求和。表示先选定某个z'∈Zin,求和类似依次对各个z'∈Zin进行求和,Zin是兴趣主题的集合;
对于每一个社交主题z∈Zso,对应生成一个社交社区c∈Cso,该社交社区包含的follower f和followee g分别用c.F和c.G表示如下。
c.F={f|f∈F∧Pr'(z|df)≥γ},
c.G={g|g∈G∧Pr'(z|dg)≥ζ},
其中,F是所有follower的集合,G是所有followee的集合,f∈F表示f是集合F中的一个follower,g∈G表示g是集合G中的一个followee,γ,ζ是定义好的阈值,文档df包含某个follower f关注的所有followee,文档dg包含关注某个followee g的所有的follower,Pr'(z|df)≥γ表示文档df条件下属于某个社交主题z的发生概率大于等于阈值γ,Pr'(z|dg)≥ζ表示文档dg条件下属于某个社交主题z的发生概率大于等于阈值ζ,符号“∧”表示左右两边集合的合取运算,c.F={f|f∈F∧Pr'(z|df)≥γ}表示一个社交社区的关注者即follower集合,即c.F由满足f∈F∧Pr'(z|df)≥γ条件的所有follower f组成,c.G={g|g∈G∧Pr'(z|dg)≥ζ}表示一个社交社区的被关注者即followee集合,即c.G由满足g∈G∧Pr'(z|dg)条件的所有followee g组成。Z so为Kso个社交主题集合;Cso为Kso个社交社区集合;Pr'(z|df),Pr'(z|dg)分别用如下公式获得:
Pr ′ ( z | d f ) = Pr ( z | d f ) Σ z ′ ∈ Z Pr ( z ′ | d f ) ,
Pr ′ ( z | d g ) = Σ f ∈ d g Pr ′ ( z | d f ) Σ z ′ ∈ Z s o Σ f ∈ d g Pr ′ ( z ′ | d f ) ,
其中,Pr(z|df)表示文档df条件下属于某个社交主题z的发生概率,表示对所有z'的Pr(z'|df)取和,这里z'∈Z,Z为所有兴趣主题和社区主题组成的集合。表示将所有属于文档dg的follower f对Pr'(z|df)求和。表示先选定某个z'∈Zso,求和类似依次对各个z'∈Zso进行求和,Zso是社交主题的集合。
由此,得到用户的Kin个兴趣社区和Kso个社交社区;
步骤三:对于每一个社区c∈CinUCso,把它整理成一个|c.F|×|c.G|矩阵Mc;Mc中的每一个元素用pfg表示,pfg取值如下:
其中,f∈c.F表示f是集合c.F中的一个follower,g∈c.G表示g是集合c.G中的一个followee.c.F为社区c的关注者即follower集合,c.G为社区c的被关注者即followee集合;
对每一个Mc执行矩阵分解算法,根据下式得到各个矩阵Mc中的follower f意愿关注分数某个followee g的分数,用C_score(f,g,c)表示。
C_score(f,g,c)=xf*yg
这里,“*”号表示左右两边向量的内积,向量xf∈X|c.F|×L,向量yg∈YL×|c.G|。其中X|c.F|×L和YL×|c.G|为Mc矩阵通过矩阵分解方法得到的两个潜在矩阵,L为预先设定好的潜在空间数量,|c.F|为集合c.F的大小,|c.G|为集合c.G的大小。
步骤四:按照如下公式对各个矩阵Mc相应的C_score(f,g,c)值取最大值,得到各个用户对之间的最终意愿关注分数F_score(f,g)。
F _ s c o r e ( f , g ) = M a x i m u m ( C _ s c o r e ( f , g , c ) c ∈ C ) ,
其中,Maximum()为取最大值函数,表示对每一个社区c计算其相应的C_score(f,g,c)值;
步骤五:对于每一个目标用户f,我们排序与之相关的所有的F_score(f,g),选择分数最高的N个followee g进行推荐。
作为优选,所述的UIS-LDA主题模型可以通过以下方法获得:
(1)UIS-LDA主题模型描述:把社交网络中每一个followee即被关注者g看作UIS-LDA主题模型中一个词,每一个follower即关注者f看作模型中一篇文档df,文档中包含这个follower f关注的所有followee,数量为文档库D包含所有文档,|D|为文档个数。预先定义好需要提取的K个用户主题,这些主题被分成Kin个兴趣主题和Kso个社交主题;超参数αso为θso上的狄利克雷先验;超参数αin为θin上的狄利克雷先验;超参数βso上的狄利克雷先验;超参数βin上的狄利克雷先验;超参数∈为η上的贝塔先验;其中,超参数αsoininso和∈为给定值;θinso,和η则是需要通过模型训练获取的变量;
(2)UIS-LDA主题模型训练过程将采用生成的玻利维亚罐模型(Generative PólyaUrn,GPU)以及吉布斯采样方法(Gibbs sampling)来进行变量推断。在GPU模型中,罐子中包含各种颜色的球,当一个球被抓取的时候,将一定数量具有相似颜色的球连同该球一起放回罐子中。类似的,我们把社交网络的一个用户看作一个球,与之有相互关注关系的其他用户看作和它具有相似的颜色。因此,在模型采样过程中,当一个用户在一个社交主题下出现,我们应用GPU模型,增大所有与之相互关注的其他用户在这个社交主题下出现的概率。而当一个用户在一个兴趣主题下出现,只会增大这个用户自己在这个兴趣出题下出现的概率。
本发明的目的也可以通过下述技术方案实现:基于用户兴趣和社交主题提取的社交网络用户推荐方法,包括以下步骤:获取社交网络中用户的“follower-followee”关系以及“mutual-following”关系信息;UIS-MF主题模型方法提取用户的社交主题和兴趣主题;在这些主题的基础上分别形成用户的社交社区和兴趣社区;将各个社区分别整理成矩阵形式,使用矩阵分解方法对各个社区矩阵进行分解以计算各用户对在各个社区矩阵的意愿关注分数,取各个用户对在所有社区的意愿关注分数的最大值为最终意愿关注分数,为目标用户排序其与其他用户的最终意愿关注分数,最终选取分数最高的TOP-N用户为推荐关注用户。
基于用户兴趣和社交主题提取的社交网络用户推荐方法,其提出的UIS-MF主题模型方法的描述和训练过程叙述如下:
(1)UIS-LDA主题模型方法的描述:把社交网络中每一个被关注者(followee)g看作UIS-LDA主题模型中一个词,每一个关注者(follower)f看作模型中一篇文档df,文档中包含这个follower f关注的所有followee,数量为文档库D包含所有文档,|D|为文档个数。预先定义好需要提取的K个用户主题,这些主题被分成Kin个兴趣主题和Kso个社交主题。贝努力变量o作为选择开关来指示每一篇文档的每一个followee是从一个社交主题中生成(当o=0)或者是从一个兴趣主题中生成(当o=1)。θso表示文档在Kso个社交主题上的分布;θin表示文档在Kin个兴趣主题上的分布;η表示文档在o上的分布;表示社交主题在所有followee上的分布;表示兴趣主题在所有followee上的分布;超参数αso为θso上的狄利克雷先验;超参数αin为θin上的狄利克雷先验;超参数βso上的狄利克雷先验;超参数βin上的狄利克雷先验;超参数∈为η上的贝塔先验。其中,超参数αsoininso和∈为给定值;θinso,和η则是需要通过模型训练获取的变量。
(2)UIS-LDA主题模型训练过程采用生成的玻利维亚罐模型(Generative PólyaUrn,GPU)以及吉布斯采样方法(Gibbs sampling)来进行变量推断。在GPU模型中,罐子中包含各种颜色的球,当一个球被抓取的时候,将一定数量具有相似颜色的球连同该球一起放回罐子中。类似的,我们把社交网络的一个用户看作一个球,与之有相互关注关系的其他用户看作和它具有相似的颜色。因此,在模型采样过程中,当一个用户在一个社交主题下出现,我们应用GPU模型,增大所有与之相互关注的其他用户在这个社交主题下出现的概率。而当一个用户在一个兴趣主题下出现,只会增大这个用户自己在这个兴趣出题下出现的概率。
基于用户兴趣和社交主题提取的社交网络用户推荐方法,其兴趣社区的形成方法和社交社区的形成方法叙述如下:
(1)兴趣社区的形成方法:
对于每一个兴趣主题z∈Zin,对应生成一个兴趣社区c∈Cin,该兴趣社区包含的关注者(follower)和被关注者(followee)分别用c.F和c.G表示如下。
c.F={f|f∈F∧Pr'(z|df)≥γ},
c.G={g|g∈G∧Pr'(z|dg)≥ζ},
其中,F是所有follower的集合,G是所有followee的集合,f∈F表示f是集合F中的一个follower,g∈G表示g是集合G中的一个followee,γ,ζ是定义好的阈值,文档df包含某个follower f关注的所有followee,文档dg包含关注某个followee g的所有的follower,Pr'(z|df)≥γ表示文档df条件下属于某个兴趣主题z的发生概率大于等于阈值γ,Pr'(z|dg)≥ζ表示文档dg条件下属于某个兴趣主题z的发生概率大于等于阈值ζ,符号“∧”表示左右两边集合的合取运算,c.F={f|f∈F∧Pr'(z|df)≥γ}表示一个兴趣社区的关注者(follower)集合,即c.F由满足f∈F∧Pr'(z|df)≥γ条件的所有follower f组成,c.G={g|g∈G∧Pr'(z|dg)≥ζ}表示一个兴趣社区的被关注者(followee)集合,即c.G由满足g∈G∧Pr'(z|dg)条件的所有followee g组成。这里,Pr'(z|df),Pr'(z|dg)分别用如下公式获得:
Pr ′ ( z | d f ) = Pr ( z | d f ) Σ z ′ ∈ Z Pr ( z ′ | d f ) ,
Pr ′ ( z | d g ) = Σ f ∈ d g Pr ′ ( z | d f ) Σ z ′ ∈ Z i n Σ f ∈ d g Pr ′ ( z ′ | d f ) ,
其中,Pr(z|df)表示文档df条件下属于某个兴趣主题z的发生概率,表示对所有z'的Pr(z'|df)取和,这里z'∈Z,Z为所有兴趣主题和社区主题组成的集合。表示将所有属于文档dg的follower f对Pr'(z|df)求和。表示先选定某个z'∈Zin,求和类似依次对各个z'∈Zin进行求和,Zin是兴趣主题的集合。
(2)社交社区的形成方法:
对于每一个社交主题z∈Zso,对应生成一个社交社区c∈Cso,该社交社区包含的follower和followee分别用c.F和c.G表示如下。
c.F={f|f∈F∧Pr'(z|df)≥γ},
c.G={g|g∈G∧Pr'(z|dg)≥ζ},
其中,F是所有follower的集合,G是所有followee的集合,f∈F表示f是集合F中的一个follower,g∈G表示g是集合G中的一个followee,γ,ζ是定义好的阈值,文档df包含某个follower f关注的所有followee,文档dg包含关注某个followee g的所有的follower,Pr'(z|df)≥γ表示文档df条件下属于某个社交主题z的发生概率大于等于阈值γ,Pr'(z|dg)≥ζ表示文档dg条件下属于某个社交主题z的发生概率大于等于阈值ζ,符号“∧”表示左右两边集合的合取运算,c.F={f|f∈F∧Pr'(z|df)≥γ}表示一个社交社区的关注者(follower)集合,即c.F由满足f∈F∧Pr'(z|df)≥γ条件的所有follower f组成,c.G={g|g∈G∧Pr'(z|dg)≥ζ}表示一个社交社区的被关注者(followee)集合,即c.G由满足g∈G∧Pr'(z|dg)条件的所有followee g组成。这里Pr'(z|df),Pr'(z|dg)分别用如下公式获得:
Pr ′ ( z | d f ) = Pr ( z | d f ) Σ z ′ ∈ Z Pr ( z ′ | d f ) ,
Pr ′ ( z | d g ) = Σ f ∈ d g Pr ′ ( z | d f ) Σ z ′ ∈ Z s o Σ f ∈ d g Pr ′ ( z ′ | d f ) ,
其中,Pr(z|df)表示文档df条件下属于某个社交主题z的发生概率,表示对所有z'的Pr(z'|df)取和,这里z'∈Z,Z为所有兴趣主题和社区主题组成的集合。表示将所有属于文档dg的follower f对Pr'(z|df)求和。表示先选定某个z'∈Zso,求和类似依次对各个z'∈Zso进行求和,Zso是社交主题的集合。
由此,我们得到用户的Kin个兴趣社区和Kso个社交社区。
基于用户兴趣和社交主题提取的社交网络用户推荐方法,其兴趣矩阵和社交矩阵的整理方法叙述如下:
对于每一个社区c∈CinUCso,把它整理成一个|c.F|×|c.G|矩阵Mc。Mc中的每一个元素用pfg表示,pfg取值如下:
其中,f∈c.F表示f是集合c.F中的一个follower,g∈c.G表示g是集合c.G中的一个followee.c.F为社区c的关注者(follower)集合,c.G为社区c的被关注者(followee)集合。
基于用户兴趣和社交主题提取的社交网络用户推荐方法,对每一个Mc执行IF-MF矩阵分解算法,根据下式得到各个矩阵Mc中的follower f意愿关注分数某个followee g的分数,用C_score(f,g,c)表示。
C_score(f,g,c)=xf*yg
这里,“*”号表示左右两边向量的内积,向量xf∈X|c.F|×L,向量yg∈YL×|c.G|。其中X|c.F|×L和YL×|c.G|为Mc矩阵通过矩阵分解方法得到的两个潜在矩阵,L为预先设定好的潜在空间数量,|c.F|为集合c.F的大小,|c.G|为集合c.G的大小。
按照如下公式对各个矩阵Mc相应的C_score(f,g,c)值取最大值,得到各个用户对之间的最终意愿关注分数F_score(f,g)。
F _ s c o r e ( f , g ) = M a x i m u m ( C _ s c o r e ( f , g , c ) c ∈ C ) ,
其中,Maximum()为取最大值函数,表示对每一个社区c计算其相应的C_score(f,g,c)值。
对于每一个目标用户f,我们排序与之相关的所有的F_score(f,g),选择分数最高的N个用户g进行推荐。
本发明的基于用户兴趣和社交主题提取的社交网络用户推荐方法,也可以包括以下步骤:获取社交网络中用户的“follower-followee”关系以及“mutual-following”关系信息;UIS-MF主题模型方法提取用户的社交主题和兴趣主题;在这些主题的基础上分别形成用户的社交社区和兴趣社区;将各个社区分别整理成矩阵形式,使用矩阵分解方法对各个社区矩阵进行分解以计算各用户对在各个社区矩阵的意愿关注分数,取各个用户对在所有社区的意愿关注分数的最大值为最终意愿关注分数,为目标用户排序其与其他用户的最终意愿关注分数,最终选取分数最高的TOP-N用户为推荐关注用户。
本发明相对于现有技术具有如下的优点及效果:
1、以独创的UIS-LDA主题模型为基础,该模型同时对用户间的“follower-follower”关系和“mutual-following”关系进行建模,用以提取用户两种类型的主题:社交主题和兴趣主题。相比现有技术,在无须增加用户关注关系之外信息的基础上,充分利用“follower-follower”关系和“mutual-following”关系,提取出质量更高的用户主题,从而得到更准确的社交网络用户推荐结果。
2、现有主题模型无法准确地描述用户之间不同强弱的关系,譬如,现有方法同等对待有“mutual-following”关系的用户和无“mutual-following”关系的用户。UIS-LDA模型提出在采样过程中应用GPU方法来加重“mutual-following”用户同时出现在某个社区概率的做法,很好地解决了现有主题模型的这个问题,同时也为类似问题的解决提供参考借鉴。
3、本发明将用户的兴趣主题和社交主题一一生成相应的兴趣社区和社交社区,由于各个社区相互独立,因而可采用并行计算的方法来执行矩阵分解算法,从而降低时间复杂度,获得更高的执行效率。
附图说明
图1是UIS-LDA模型方法盘子(Plate Notation)图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例
如图1所示,一种基于用户兴趣和社交主题提取的社交网络用户推荐方法,包括以下步骤:
步骤一:获取Twitter用户间的“follower-followee”关系,并在这些“follower-followee”关系上进一步获取用户间的“mutual-following”关系。将目标用户,需要提取的用户兴趣主题个数Kin和需要提取的用户社交主题个数Kso输入UIS-LDA主题模型,通过该模型聚类出Kin个兴趣主题和Kso个社交主题,并输出参数θin,θso,η,
步骤二:对于每一个兴趣主题z∈Zin,对应生成一个兴趣社区c∈Cin,该兴趣社区包含的关注者(follower)和被关注者(followee)分别用c.F和c.G表示如下。
c.F={f|f∈F∧Pr'(z|df)≥γ},
c.G={g|g∈G∧Pr'(z|dg)≥ζ},
其中,F是所有follower的集合,G是所有followee的集合,f∈F表示f是集合F中的一个follower,g∈G表示g是集合G中的一个followee,γ,ζ是定义好的阈值,文档df包含某个follower f关注的所有followee,文档dg包含关注某个followee g的所有的follower,Pr'(z|df)≥γ表示文档df条件下属于某个兴趣主题z的发生概率大于等于阈值γ,Pr'(z|dg)≥ζ表示文档dg条件下属于某个兴趣主题z的发生概率大于等于阈值ζ,符号“∧”表示左右两边集合的合取运算,c.F={f|f∈F∧Pr'(z|df)≥γ}表示一个兴趣社区的关注者(follower)集合,即c.F由满足f∈F∧Pr'(z|df)≥γ条件的所有follower f组成,c.G={g|g∈G∧Pr'(z|dg)≥ζ}表示一个兴趣社区的被关注者(followee)集合,即c.G由满足g∈G∧Pr'(z|dg)条件的所有followee g组成。这里,Pr'(z|df),Pr'(z|dg)分别用如下公式获得:
Pr ′ ( z | d f ) = Pr ( z | d f ) Σ z ′ ∈ Z Pr ( z ′ | d f ) ,
Pr ′ ( z | d g ) = Σ f ∈ d g Pr ( z | d f ) Σ z ′ ∈ Z i n Σ f ∈ d g Pr ( z ′ | d f ) ,
其中,Pr(z|df)表示文档df条件下属于某个兴趣主题z的发生概率,表示对所有z'的Pr(z'|df)取和,这里z'∈Z,Z为所有兴趣主题和社区主题组成的集合。表示将所有属于文档dg的follower f对Pr'(z|df)求和。表示先选定某个z'∈Zin,求和类似依次对各个z'∈Zin进行求和,Zin是兴趣主题的集合。
对于每一个社交主题z∈Zso,对应生成一个社交社区c∈Cso,该社交社区包含的follower和followee分别用c.F和c.G表示如下。
c.F={f|f∈F∧Pr'(z|df)≥γ},
c.G={g|g∈G∧Pr'(z|dg)≥ζ},
其中,F是所有follower的集合,G是所有followee的集合,f∈F表示f是集合F中的一个follower,g∈G表示g是集合G中的一个followee,γ,ζ是定义好的阈值,文档df包含某个follower f关注的所有followee,文档dg包含关注某个followee g的所有的follower,Pr'(z|df)≥γ表示文档df条件下属于某个社交主题z的发生概率大于等于阈值γ,Pr'(z|dg)≥ζ表示文档dg条件下属于某个社交主题z的发生概率大于等于阈值ζ,符号“∧”表示左右两边集合的合取运算,c.F={f|f∈F∧Pr'(z|df)≥γ}表示一个社交社区的关注者(follower)集合,即c.F由满足f∈F∧Pr'(z|df)≥γ条件的所有follower f组成,c.G={g|g∈G∧Pr'(z|dg)≥ζ}表示一个社交社区的被关注者(followee)集合,即c.G由满足g∈G∧Pr'(z|dg)条件的所有followee g组成。这里,Pr'(z|df),Pr'(z|dg)分别用如下公式获得:
Pr ′ ( z | d f ) = Pr ( z | d f ) Σ z ′ ∈ Z Pr ( z ′ | d f ) ,
Pr ′ ( z | d g ) = Σ f ∈ d g Pr ( z | d f ) Σ z ′ ∈ Z s o Σ f ∈ d g Pr ′ ( z ′ | d f ) ,
其中,Pr(z|df)表示文档df条件下属于某个社交主题z的发生概率,表示对所有z'的Pr(z'|df)取和,这里z'∈Z,Z为所有兴趣主题和社区主题组成的集合。表示将所有属于文档dg的follower f对Pr'(z|df)求和。表示先选定某个z'∈Zso,求和类似依次对各个z'∈Zso进行求和,Zso是社交主题的集合。
由此,我们得到用户的Kin个兴趣社区和Kso个社交社区。
步骤三:对于每一个社区c∈CinUCso,把它整理成一个|c.F|×|c.G|矩阵Mc。Mc中的每一个元素用pfg表示,pfg取值如下:
其中,f∈c.F表示f是集合c.F中的一个follower,g∈c.G表示g是集合c.G中的一个followee.c.F为社区c的关注者(follower)集合,c.G为社区c的被关注者(followee)集合。
对每一个Mc执行矩阵分解算法,根据下式得到各个矩阵Mc中的follower f意愿关注分数某个followee g的分数,用C_score(f,g,c)表示。
C_score(f,g,c)=xf*yg
这里,“*”号表示左右两边向量的内积,向量xf∈X|c.F|×L,向量yg∈YL×|c.G|。其中X|c.F|×L和YL×|c.G|为Mc矩阵通过矩阵分解方法得到的两个潜在矩阵,L为预先设定好的潜在空间数量,|c.F|为集合c.F的大小,|c.G|为集合c.G的大小。
步骤四:按照如下公式对各个矩阵Mc相应的C_score(f,g,c)值取最大值,得到各个用户对之间的最终意愿关注分数F_score(f,g)。
F _ s c o r e ( f , g ) = M a x i m u m ( C _ s c o r e ( f , g , c ) c ∈ C ) ,
其中,其中,Maximum()为取最大值函数,表示对每一个社区c计算其相应的C_score(f,g,c)值。
步骤五:对于每一个目标用户f,我们排序与之相关的所有的F_score(f,g),选择分数最高的N个followee g进行推荐。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (2)

1.基于用户兴趣和社交主题提取的社交网络用户推荐方法,其特征在于,包含如下步骤:
步骤一、将一个社交网络中的目标用户、需要提取的用户兴趣主题个数Kin和需要提取的用户社交主题个数Kso输入UIS-LDA主题模型,通过该模型聚类出Kin个兴趣主题和Kso个社交主题,并输出参数θin,θso,η,其中,θso表示文档在Kso个社交主题上的分布;θin表示文档在Kin个兴趣主题上的分布;η表示文档在贝努力变量o上的分布,o作为选择开关来指示每一篇文档的每一个followee是从一个社交主题中生成当o=0时或者是从一个兴趣主题中生成,当o=1时;表示社交主题在所有followee即被关注者上的分布;表示兴趣主题在所有followee即被关注者上的分布;
步骤二、对于每一个兴趣主题z∈Zin,对应生成一个兴趣社区c∈Cin,该兴趣社区包含的follower即关注者f和followee即被关注者g分别用c.F和c.G表示如下:
c.F={f|f∈F∧Pr'(z|df)≥γ},
c.G={g|g∈G∧Pr'(z|dg)≥ζ},
其中,F是所有follower的集合,G是所有followee的集合,f∈F表示f是集合F中的一个follower,g∈G表示g是集合G中的一个followee,γ,ζ是定义好的阈值,文档df包含某个follower f关注的所有followee,文档dg包含关注某个followee g的所有的follower,Pr'(z|df)≥γ表示文档df条件下属于某个兴趣主题z的发生概率大于等于阈值γ,Pr'(z|dg)≥ζ表示文档dg条件下属于某个兴趣主题z的发生概率大于等于阈值ζ,符号“∧”表示左右两边集合的合取运算,c.F={f|f∈F∧Pr'(z|df)≥γ}表示一个兴趣社区的关注者即follower集合,即c.F由满足f∈F∧Pr'(z|df)≥γ条件的所有follower f组成,c.G={g|g∈G∧Pr'(z|dg)≥ζ}表示一个兴趣社区的被关注者即followee集合,即c.G由满足g∈G∧Pr'(z|dg)条件的所有followee g组成;Zin为Kin个兴趣主题集合;Cin为Kin个兴趣社区集合;这里Pr'(z|df),Pr'(z|dg)分别用如下公式获得:
Pr ′ ( z | d f ) = Pr ( z | d f ) Σ z ′ ∈ Z Pr ( z ′ | d f ) ,
Pr ′ ( z | d g ) = Σ f ∈ d g Pr ′ ( z | d f ) Σ z ′ ∈ Z i n Σ f ∈ d g Pr ′ ( z ′ | d f ) ,
其中,其中,Pr(z|df)表示文档df条件下属于某个兴趣主题z的发生概率,表示对所有z'的Pr(z'|df)取和,这里z'∈Z,Z为所有兴趣主题和社区主题组成的集合;表示将所有属于文档dg的follower f对Pr'(z|df)求和;表示先选定某个z'∈Zin,求和类似依次对各个z'∈Zin进行求和,Zin是兴趣主题的集合;
对于每一个社交主题z∈Zso,对应生成一个社交社区c∈Cso,该社交社区包含的follower f和followee g分别用c.F和c.G表示如下:
c.F={f|f∈F∧Pr'(z|df)≥γ},
c.G={g|g∈G∧Pr'(z|dg)≥ζ},
其中,F是所有follower的集合,G是所有followee的集合,f∈F表示f是集合F中的一个follower,g∈G表示g是集合G中的一个followee,γ,ζ是定义好的阈值,文档df包含某个follower f关注的所有followee,文档dg包含关注某个followee g的所有的follower,Pr'(z|df)≥γ表示文档df条件下属于某个社交主题z的发生概率大于等于阈值γ,Pr'(z|dg)≥ζ表示文档dg条件下属于某个社交主题z的发生概率大于等于阈值ζ,符号“∧”表示左右两边集合的合取运算,c.F={f|f∈F∧Pr'(z|df)≥γ}表示一个社交社区的关注者即follower集合,即c.F由满足f∈F∧Pr'(z|df)≥γ条件的所有follower f组成,c.G={g|g∈G∧Pr'(z|dg)≥ζ}表示一个社交社区的被关注者即followee集合,即c.G由满足g∈G∧Pr'(z|dg)条件的所有followee g组成;Z so为Kso个社交主题集合;Cso为Kso个社交社区集合;Pr'(z|df),Pr'(z|dg)分别用如下公式获得:
Pr ′ ( z | d f ) = Pr ( z | d f ) Σ z ′ ∈ Z Pr ( z ′ | d f ) ,
Pr ′ ( z | d g ) = Σ f ∈ d g Pr ′ ( z | d f ) Σ z ′ ∈ Z s o Σ f ∈ d g Pr ′ ( z ′ | d f ) ,
其中,Pr(z|df)表示文档df条件下属于某个社交主题z的发生概率,表示对所有z'的Pr(z'|df)取和,这里z'∈Z,Z为所有兴趣主题和社区主题组成的集合;表示将所有属于文档dg的follower f对Pr'(z|df)求和;表示先选定某个z'∈Zso,求和类似依次对各个z'∈Zso进行求和,Zso是社交主题的集合;
由此,得到用户的Kin个兴趣社区和Kso个社交社区;
步骤三、对于每一个社区c∈CinUCso,把它整理成一个|c.F|×|c.G|矩阵Mc;Mc中的每一个元素用pfg表示,pfg取值如下:
其中,f∈c.F表示f是集合c.F中的一个follower,g∈c.G表示g是集合c.G中的一个followee.c.F为社区c的关注者即follower集合,c.G为社区c的被关注者即followee集合;
对每一个Mc执行矩阵分解算法,根据下式得到各个矩阵Mc中的follower f意愿关注分数某个followee g的分数,用C_score(f,g,c)表示:
C_score(f,g,c)=xf*yg
这里,“*”号表示左右两边向量的内积,向量xf∈X|c.F|×L,向量yg∈YL×|c.G|;其中X|c.F|×L和YL×|c.G|为Mc矩阵通过矩阵分解方法得到的两个潜在矩阵,L为预先设定好的潜在空间数量,|c.F|为集合c.F的大小,|c.G|为集合c.G的大小;
步骤四、按照如下公式对各个矩阵Mc相应的C_score(f,g,c)值取最大值,得到各个用户对之间的最终意愿关注分数F_score(f,g);
F _ s c o r e ( f , g ) = M a x i m u m ( C _ s c o r e ( f , g , c ) c ∈ C ) ,
其中,Maximum()为取最大值函数,表示对每一个社区c计算其相应的C_score(f,g,c)值;
步骤五、对于每一个目标用户f,我们排序与之相关的所有的F_score(f,g),选择分数最高的N个followee g进行推荐。
2.根据权利要求1所述基于用户兴趣和社交主题提取的社交网络用户推荐方法,其特征在于,步骤1所述UIS-LDA主题模型通过以下方法获得:
(1)UIS-LDA主题模型描述:把社交网络中每一个followee即被关注者g看作UIS-LDA主题模型中一个词,每一个follower即关注者f看作模型中一篇文档df,文档中包含这个follower f关注的所有followee,数量为文档库D包含所有文档,|D|为文档个数;预先定义好需要提取的K个用户主题,这些主题被分成Kin个兴趣主题和Kso个社交主题;超参数αso为θso上的狄利克雷先验;超参数αin为θin上的狄利克雷先验;超参数βso上的狄利克雷先验;超参数βin上的狄利克雷先验;超参数∈为η上的贝塔先验;其中,超参数αsoininso和∈为给定值;θinso,和η则是需要通过模型训练获取的变量;
(2)UIS-LDA主题模型训练过程将采用生成的玻利维亚罐模型以及吉布斯采样方法来进行变量推断;在GPU模型中,罐子中包含各种颜色的球,当一个球被抓取的时候,将一定数量具有相似颜色的球连同该球一起放回罐子中。
CN201610519445.XA 2016-07-01 2016-07-01 基于用户兴趣和社交主题提取的社交网络用户推荐方法 Active CN106055713B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610519445.XA CN106055713B (zh) 2016-07-01 2016-07-01 基于用户兴趣和社交主题提取的社交网络用户推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610519445.XA CN106055713B (zh) 2016-07-01 2016-07-01 基于用户兴趣和社交主题提取的社交网络用户推荐方法

Publications (2)

Publication Number Publication Date
CN106055713A true CN106055713A (zh) 2016-10-26
CN106055713B CN106055713B (zh) 2019-10-18

Family

ID=57201825

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610519445.XA Active CN106055713B (zh) 2016-07-01 2016-07-01 基于用户兴趣和社交主题提取的社交网络用户推荐方法

Country Status (1)

Country Link
CN (1) CN106055713B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106934056A (zh) * 2017-03-20 2017-07-07 中山大学 一种基于概率图模型的个性化旅游游记推荐方法
CN107133277A (zh) * 2017-04-12 2017-09-05 浙江大学 一种基于动态主题模型和矩阵分解的旅游景点推荐方法
CN107194492A (zh) * 2017-04-13 2017-09-22 南京邮电大学 一种基于位置社交网络的商家推荐的优化方法
CN107391637A (zh) * 2017-07-10 2017-11-24 江苏省现代企业信息化应用支撑软件工程技术研发中心 针对具备地理社交信息的群组推荐方法
CN107944063A (zh) * 2018-01-16 2018-04-20 马上消费金融股份有限公司 一种基于主题模型与用户群组的新闻推荐方法及系统
CN108021645A (zh) * 2017-11-30 2018-05-11 华南理工大学 一种基于择友偏好和矩阵分解的潜在好友推荐方法
CN108629466A (zh) * 2017-03-16 2018-10-09 上海交通大学 跨社区的程序员编程能力兴趣评估系统及方法
CN110705304A (zh) * 2019-08-09 2020-01-17 华南师范大学 一种属性词提取方法
CN112395499A (zh) * 2020-11-03 2021-02-23 腾讯科技(深圳)有限公司 信息推荐方法及装置、电子设备、存储介质
CN112507246A (zh) * 2020-12-13 2021-03-16 天津大学 一种融合全局和局部社会兴趣影响的社会推荐方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130124437A1 (en) * 2011-11-16 2013-05-16 Marco Pennacchiotti Social media user recommendation system and method
CN104268290A (zh) * 2014-10-22 2015-01-07 武汉科技大学 一种基于用户聚类的推荐方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130124437A1 (en) * 2011-11-16 2013-05-16 Marco Pennacchiotti Social media user recommendation system and method
CN104268290A (zh) * 2014-10-22 2015-01-07 武汉科技大学 一种基于用户聚类的推荐方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108629466A (zh) * 2017-03-16 2018-10-09 上海交通大学 跨社区的程序员编程能力兴趣评估系统及方法
CN106934056B (zh) * 2017-03-20 2020-11-06 中山大学 一种基于概率图模型的个性化旅游游记推荐方法
CN106934056A (zh) * 2017-03-20 2017-07-07 中山大学 一种基于概率图模型的个性化旅游游记推荐方法
CN107133277A (zh) * 2017-04-12 2017-09-05 浙江大学 一种基于动态主题模型和矩阵分解的旅游景点推荐方法
CN107133277B (zh) * 2017-04-12 2019-09-06 浙江大学 一种基于动态主题模型和矩阵分解的旅游景点推荐方法
CN107194492A (zh) * 2017-04-13 2017-09-22 南京邮电大学 一种基于位置社交网络的商家推荐的优化方法
CN107391637A (zh) * 2017-07-10 2017-11-24 江苏省现代企业信息化应用支撑软件工程技术研发中心 针对具备地理社交信息的群组推荐方法
CN108021645A (zh) * 2017-11-30 2018-05-11 华南理工大学 一种基于择友偏好和矩阵分解的潜在好友推荐方法
CN107944063A (zh) * 2018-01-16 2018-04-20 马上消费金融股份有限公司 一种基于主题模型与用户群组的新闻推荐方法及系统
CN110705304A (zh) * 2019-08-09 2020-01-17 华南师范大学 一种属性词提取方法
CN110705304B (zh) * 2019-08-09 2020-11-06 华南师范大学 一种属性词提取方法
CN112395499A (zh) * 2020-11-03 2021-02-23 腾讯科技(深圳)有限公司 信息推荐方法及装置、电子设备、存储介质
CN112507246A (zh) * 2020-12-13 2021-03-16 天津大学 一种融合全局和局部社会兴趣影响的社会推荐方法
CN112507246B (zh) * 2020-12-13 2022-09-13 天津大学 一种融合全局和局部社会兴趣影响的社会推荐方法

Also Published As

Publication number Publication date
CN106055713B (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
CN106055713B (zh) 基于用户兴趣和社交主题提取的社交网络用户推荐方法
CN107066476B (zh) 一种基于物品相似度的实时推荐方法
Wang et al. Environmental impact assessment using the evidential reasoning approach
CN109657156A (zh) 一种基于循环生成对抗网络的个性化推荐方法
CN103136337B (zh) 用于复杂网络的分布式知识数据挖掘装置和挖掘方法
CN106959966A (zh) 一种信息推荐方法及系统
CN103886067B (zh) 使用标签隐含主题进行图书推荐的方法
CN110196946A (zh) 一种基于深度学习的个性化推荐方法
Peng et al. Model research on forecast of second-hand house price in Chengdu based on XGboost algorithm
CN109255506A (zh) 一种基于大数据的互联网金融用户贷款逾期预测方法
Chen et al. Combining factorization model and additive forest for collaborative followee recommendation
Das et al. Sense GST: Text mining & sentiment analysis of GST tweets by Naive Bayes algorithm
CN103425763B (zh) 基于sns的用户推荐方法及装置
CN105740430A (zh) 一种融合社会化信息的个性化推荐方法
Zhang et al. A system for tender price evaluation of construction project based on big data
CN104700152A (zh) 一种融合季节销售信息与搜索行为信息的烟草销量预测方法
Gupta et al. PAN-LDA: A latent Dirichlet allocation based novel feature extraction model for COVID-19 data using machine learning
CN110189191A (zh) 一种基于实时模型的金融产品推荐方法及系统
CN109190030A (zh) 融合node2vec和深度神经网络的隐式反馈推荐方法
CN110347897A (zh) 基于事件检测的微博网络情感社区识别方法
CN105843860A (zh) 一种基于并行item-based协同过滤算法的微博关注推荐方法
Rollason et al. Interbasin water transfer in a changing world: A new conceptual model
Itayi et al. Understanding the conceptual frameworks and methods of the food–energy–water nexus at the household level for development-oriented policy support: a systematic review
Sharma et al. Trend analysis in machine learning research using text mining
Lin et al. Automatic content analysis of media framing by text mining techniques

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant