CN106168953B - 面向弱关系社交网络的博文推荐方法 - Google Patents
面向弱关系社交网络的博文推荐方法 Download PDFInfo
- Publication number
- CN106168953B CN106168953B CN201610388336.9A CN201610388336A CN106168953B CN 106168953 B CN106168953 B CN 106168953B CN 201610388336 A CN201610388336 A CN 201610388336A CN 106168953 B CN106168953 B CN 106168953B
- Authority
- CN
- China
- Prior art keywords
- user
- blog
- users
- trust
- forwarding
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000001914 filtration Methods 0.000 claims abstract description 15
- 239000011159 matrix material Substances 0.000 claims description 20
- 230000002996 emotional effect Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000008451 emotion Effects 0.000 claims description 7
- 208000002352 blister Diseases 0.000 claims description 5
- 238000007476 Maximum Likelihood Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 239000013598 vector Substances 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 abstract description 15
- 238000012360 testing method Methods 0.000 description 11
- 230000006399 behavior Effects 0.000 description 10
- 238000002474 experimental method Methods 0.000 description 10
- 238000012549 training Methods 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 6
- 101000622430 Homo sapiens Vang-like protein 2 Proteins 0.000 description 5
- 102100023520 Vang-like protein 2 Human genes 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000007935 neutral effect Effects 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 108010006654 Bleomycin Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 229960001561 bleomycin Drugs 0.000 description 1
- OYVAGSVQBOHSSS-UAPAGMARSA-O bleomycin A2 Chemical compound N([C@H](C(=O)N[C@H](C)[C@@H](O)[C@H](C)C(=O)N[C@@H]([C@H](O)C)C(=O)NCCC=1SC=C(N=1)C=1SC=C(N=1)C(=O)NCCC[S+](C)C)[C@@H](O[C@H]1[C@H]([C@@H](O)[C@H](O)[C@H](CO)O1)O[C@@H]1[C@H]([C@@H](OC(N)=O)[C@H](O)[C@@H](CO)O1)O)C=1N=CNC=1)C(=O)C1=NC([C@H](CC(N)=O)NC[C@H](N)C(N)=O)=NC(N)=C1C OYVAGSVQBOHSSS-UAPAGMARSA-O 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000003319 supportive effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Primary Health Care (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- General Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种面向弱关系社交网络的博文推荐方法,该方法包括:利用社交网络中的用户和博文数据,根据活跃度划分出活跃用户群和非活跃用户群,然后分别面向活跃与非活跃的用户群,使用基于转推网络的推荐方法和基于内容标签的推荐方法的输出的用户‑博文的兴趣度,最后通过结果的合并,得出用户‑博文的兴趣度值。本发明使用转发网络这一相对于社交网络更加动态化地捕捉用户之间的关系的方法,并引入了相似度和信任度两个指标去刻画用户之间关系的强弱,改进了传统的基于用户的协同过滤推荐算法。同时,针对非活跃用户,利用基于内容标签的推荐方法,解决了转发网络推荐方法的数据稀疏性和冷启动问题。
Description
技术领域
本发明涉及社交网络的信息推荐领域,具体是指针对于弱关系的社交网络的博文推荐方法。
背景技术
目前在推荐领域使用的方法很多,比如基于内容的推荐算法(Content-basedFiltering)、基于用户的协同过滤算法(User-based Collaborative Filtering)、基于物品的协同过滤算法(Item-based Collaborative Filtering)等等。但是面临了很多挑战,比如:数据稀疏性(Data Sparsity)、冷启动问题(Cold Start)、及时性等问题。现有的推荐算法对于解决数据稀疏性和冷启动存在很大的困难,为解决这些问题,追求推荐算法更高的效率和更优的推荐结果,国内外纷纷都发出高额的奖金去众包,以提高推荐算法的准确率。
发明内容
针对上述现有推荐技术存在的数据稀疏性和冷启动的缺陷,本发明的目的旨在提高算法效率的同时,提高推荐的精准度,能够更加准确可靠地对弱关系网络进行信息推荐。
为了实现上述发明目的,本发明采用的基本技术方案包括如下内容。
一种面向弱关系社交网络的博文推荐方法,所述方法包括:利用社交网络中的用户和博文数据,根据活跃度划分出活跃用户群和非活跃用户群,然后分别面向活跃与非活跃的用户群,使用基于转推网络的推荐方法和基于内容标签的推荐方法的输出的用户-博文的兴趣度,最后通过结果的合并,得出用户-博文的兴趣度值。
所述基于内容标签的信息推荐方法,包括:针对于博文的兴趣类别,情感倾向特征和时间特征三类标签的提取和组合,并且对其用向量化表示;基于博文的向量化标签,构建用户的特征标签,并且进行向量化表示;基于用户和博文的向量化标签,利用内积计算用户和博文的兴趣匹配度。
所述基于转发网络的信息推荐方法,包括:构建用户和博文的矩阵,获取到博文的转推关系,得到用户和用户之间的关系网络;基于用户相似度计算用户对博文的兴趣度,从而预测用户对每条博文的转发概率;基于用户信任度计算用户对博文的兴趣度,从而预测用户对每条博文的转发概率;利用加权混合基于用户相似度和信任度所计算出的兴趣度,从而预测用户对每条博文的转发概率。
基于用户相似度计算用户对博文的兴趣度的方法包括:将博文做为项,通过用户-博文的打分矩阵,计算用户之间的相似度,其计算公式如下:
其中分母中的N(u)是指用户u发布的博文数,N(v)是指用户v发布的博文数,分母是正则项,能够使得最后用户u和用户v的相似度值在0和1之间,是惩罚因子,表示博文i被转发的次数越多,该惩罚因子的值会比原始值小;在获得了用户-博文的打分矩阵和用户之间的相似度后,当给定用户u和博文t后,利用如下公式计算用户u对博文t的兴趣度:
其中,S(u,K)包含与用户u最相似的K个用户集合,N(t)是指转发或发布过博文t的用户集合,用户v就是指上述两个集合的用户交集,rvt是指用户v是否转发或发布过博文t。
基于用户信任度计算用户对博文的兴趣度的方法包括,在获得了用户-博文的打分矩阵和用户之间的信任度后,给定用户u和博文t,利用如下公式计算用户u对博文t的兴趣度:
其中,S(u,K)包含用户u信任度最高的K个用户集合,N(t)是指转发或发布过博文t的用户集合,用户v就是指上述两个集合的用户交集集合。rvt是指用户v是否转发或发布过博文t。
计算用户之间的信任度主要包括:基于用户发布和转发之间的时间间隔分布衡量用户之间的信任度,其中时间间隔利用负指数分布;基于博文转发路径,用户之间的信任度是可以进行传递,并且路径越长,信任度度越低。
本发明引入了负指数分布模拟某一条博文发布时间和转发时间的延迟:
trust值是通过负指数分布计算出来的,其中x的定义:
这里createdAtv(t)-createdAtu(t)指用户u转发博文t时间和用户v发布博文t时间的延迟,createdAtmax(t)-createdAtmin(t)指在转推博文时间间隔中最大的延迟,其中用户u和用户v是相邻的,即用户v直接转发了用户u的博文,对于参数λ,使用最大似然估计计算其值:其中是样本的平均值,用户u发布博文的时间和用户v转发用户u发布博文的时间越近,则用户v对用户u的信任度值越高。
对于间接转发的用户之间,如果用户w转发了用户v转发的博文t,用户v转发了用户u发布的博文t,则用户w对用户v同样具有信任度,其计算如下:
Patht(w,u)={trust1(w,v),trust2(v,u)},该公式指用户w和用户v存在一条转发路径,则信任度为即用户w对用户v的信任度是指在此转发路径上的信任度值的乘积。
因为基于用户相似度计算用户对博文的兴趣度值和基于用户信任度计算用户对博文的兴趣度值各不相同,所以分别对每个用户所预测博文集合的相似度兴趣值和信任度兴趣值做归一化处理,以便除去误差,归一化的公式如下:
得到归一化后的兴趣度,再利用加权公式进行最优兴趣度的计算:
psim_trust(u,t)=α||ptrust *(u,t)||+(1-α)||psim *(u,t)||
其中α是值在0到1之间的参数值。
本发明使用转发网络这一相对于社交网络更加动态化地捕捉用户之间的关系的方法,并引入了相似度和信任度两个指标去刻画用户之间关系的强弱,改进了传统的基于用户的协同过滤推荐算法。同时,针对非活跃用户,利用基于内容标签的推荐方法,解决了转发网络推荐方法的数据稀疏性和冷启动问题。
附图说明
图1是本发明所述推荐方法的流程框图;
图2是本发明所述基于内容标签的博文的兴趣类别特征抽取流程图;
图3是本发明所述基于内容标签的博文的情感倾向特征抽取流程图;
图4是本发明所述基于转推网络的推荐方法数据预处理流程图;
图5是本发明所述基于内容标签的推荐方法数据预处理流程图;
图6是实施例中基于转发网络方法中不同的α参数值所对应MAP值变化。
具体实施方式
下面结合实施例对本发明进一步详细描述。
一种面向弱关系社交网络的博文推荐方法,包括:利用社交网络中的用户和博文数据,根据活跃度划分出活跃用户群和非活跃用户群,然后分别面向活跃与非活跃的用户群,使用基于转推网络的推荐方法和基于内容标签的推荐方法的输出的用户-博文的兴趣度,最后通过结果的合并,得出用户-博文的兴趣度值。
1、一种基于内容标签的信息推荐方法,主要包括以下步骤:
步骤一,利用Twitter的API采集用户和博文的数据,同时过滤掉非中文的博文和用户,以保证对用户兴趣类别的划分和情感的分类。
对得到的非活跃的Twitter博文集进行非中文过滤,过滤流程如图5所示,从而得到中文博文集。中文过滤的规则主要分为以下几个步骤:
a)将博文按字符遍历,逐个判断博文中字符是否为中文字符,计算博文中的中文字符的
长度。
b)将获取到的中文字符博文,利用正则表达式,去除中文字符中的重复词。正则表达式
的写法为:(?s)(.)(?=.*\\1)。这样就获取到了去除重复中文字符的博文长度。
c)计算中文字符所占博文的长度:
d)计算去除重复词的中文字符所占中文字符博文的长度比例:
e)计算博文长度和博文限定最长长度的比例:
f)以上三个公式都是对处理字符的博文长度进行归一化,使其值归一化的值再计算博文的得分值(score):
score=-alogcp-blogcl-clogcnrp(其中:a+b+c=1)
博文的得分计算公式包含a,b,c三个参数,是对这三个特征的权重比例。经过实验得到最优结果时的参数,分别选取0.18,0.61和0.21作为a,b,c的值。设定当score值小于0.65时,确认为非中文博文并进行过滤。
步骤二,特征标签的抽取。特征标签包括兴趣类别标签、情感倾向标签和时序行为标签。其中兴趣类别标签包括社会(A),军事(B),政治(C),经济(D),娱乐生活(E)和其他(F),情感倾向标签包括中立、支持、反对。从博文内容的角度出发,兴趣类别标签应该和情感倾向标签组合生成新标签,那么组合标签就是A+中立、A+支持、A+反对、B+中立、B+支持、B+反对等18个特征标签,它们代表着用户对每一类别博文的情感倾向。
对于兴趣类别特征抽取,使用支持向量机算法,具体流程如图2所示,最终得到tinterest_tag={wA,wB,wC,wD,wE,wF},表示博文的每个兴趣类别权重;
对于情感倾向特征抽取,使用词向量,利用文本分类算法,对博文情感倾向进行分类,具体流程如图3所示,最终得到tsentiment_tag={wpositive,wnegative,wneutral},表示博文的每个情感类别的权重;
则ti={wAwpositive,wAwnegative,wAwneutral,…,wFwpositive,wFwnegative,wFwneutral}就是通过以上两特征的表示,计算出博文i的组合标签,该组合标签一共有18组,每种标签计算出的值可以理解成博文对于每个兴趣情感类别的权重值。权重值最大的就是博文所属的兴趣情感类别。
针对于用户的兴趣情感特征,则可以通过统计用户发布博文的兴趣情感类别得出的。则用户的兴趣情感特征标签表示为:
每种特征值表示用户对于该特征的博文占他发布所有博文的百分比。
时序行为特征主要根据Twitter用户所在时区,将时间序列分为4类:Morning(6-12点),Afternoon(12-18点),Evening(18-24点)和Night(0-6点)进行分类,所以共有4种时序行为特征标签。对于博文有4种时序类型,博文的特征表示为:ttime_tag={w1,w2,w3,w4},然后针对用户的时序行为,需要对每个用户发布博文的数据进行统计,则用户的每个时序特征值就是发帖百分比,即该即该用户未来在这个时间段在线的概率:
综上,将用户和博文用标签向量化表示为:
u=(w1,w2,..,w22)(用户多标签向量化表示)
t=(w1,w2,..,w22)(推文多标签向量化表示)
其中1~18维是兴趣情感组合标签,19~22维是时序行为标签,ci指第i维标签的特征值。
综上,就获取了用户和博文的特征标签。
步骤三,基于多标签的兴趣匹配度计算。将用户和博文用标签向量化的方式表示后,用户u对博文t的兴趣度计算使用最简单实用的内积计算,计算公式如下:
p(u,t)=u·t
这里,u是用户的标签向量化表示,t是博文的标签向量化表示。两向量的内积就是用户对该博文的兴趣匹配度。
2、一种基于转发网络的推荐方法。其特征主要是构建用户和博文的矩阵,利用博文转发的动态网络,提出了用户相似度和信任度的概念,改进了传统协同过滤的方法。
1)数据预处理。
基于转发网络的推荐方法数据预处理流程如图4所示。
步骤一,活跃度过滤。首先该方法需要构建用户-博文的转推矩阵,但对于转推行为频率较低的用户和被转推频率较低的博文,会使得转推矩阵更加稀疏,并且大幅度降低算法效率,同时很大程度上会影响算法的结果。所以针对该方法,需要采用如下规则对用户和博文数据进行活跃度的过滤:
a)用户在该月必须转发至少10条博文,以保证用户的相对活跃度;
b)为了获取到博文的转推信息,所以该月的博文一定被转发过。
综上,该预处理是不断迭代的过程,直到数据集中的数据都满足以上的两个条件。
步骤二,博文的哈希处理。获取到活跃度过滤后的转推博文集和用户集后,需要获取每条博文的转推用户集。为提高算法效率,本专利对转推博文做哈希处理。这里的哈希处理使用了Appleby Austin提出的Murmurhash算法,具体有以下几步:
a)因为在Twitter中,博文的转发往往会追加很多格式的内容,造成了相同的博文内容不一致,所以需要用正则表达式去除一些元素,包括“RT”、“rt”、“@”、标签符号;
b)去除博文中转发用户的用户名;
c)使用非加密的hash算法Murmurhash算法作为哈希函数,输入为剩余的有效字符,输出是提取出的hash签名。
步骤三,抽取转推关系。最后需要获取到博文的转推关系,从而得到用户和用户之间的关系网络,以便计算用户之间的相似度和信任度。因为博文的来源各异,包括Twitter的手机端,网页端和其他第三方应用,导致博文内容的结构各异。经过对各种转推博文进行分析和实验,得出有以下几种情况:
a)RT@sb:content常规情况;
b)(RT@sb:){n}content eg:RT@sb:RT@sb:RT@sb:content;
c)(RT@sb:content){n}eg:RT@sb:content RT@sb:content;
d)content.(RT@sb:content){n}eg:content RT@sb:content RT@sb:content。
以上4中情况的content中可能会包含@sb的标识。在总结过博文的结构后,定义了正则表达式抽取出了转发用户的关系,正则表达式为“(?<=(rt|RT)\\s@).*?(?=[(:|\\s)])”,功能是抽取出转发的用户,从而构建转发用户的关系。抽取结果样本如图6(a)和图6(b)。
2)基于用户相似度的推荐方法。
步骤一,将博文做为项,通过用户-博文的打分矩阵,计算用户之间的相似度。这个打分矩阵只包含0和1。如果博文被转发则为1,没有转发为0。用户相似度的计算是信息推荐的重要步骤,其计算公式如下:
其中分母中的N(u)是指用户u发布的博文数,N(v)是指用户v发布的博文数,分母是正则项,能够使得最后用户u和用户v的相似度值在0和1之间。是惩罚因子,表示博文i被转发的次数越多,该惩罚因子的值会比原始值小。这也就意味着如果博文i非常热门,那么该博文不足以直接反应用户之间相似程度。相反,如果博文转发次数很少比较冷门,那么这条博文就比热门博文更能反应转发这条博文的用户之间的相似度。
步骤二,在获得了用户-博文的打分矩阵和用户之间的相似度后,当给定用户u和博文t后,就可以利用如下公式计算用户u对博文t的兴趣度:
其中,S(u,K)包含与用户u最相似的K个用户集合,N(t)是指转发或发布过博文t的用户集合,那么用户v就是指上述两个集合的用户交集。rvt是指用户v是否转发或发布过博文t(1为转发或发布过,0为未转发或发布过)。
3)基于用户信任度的推荐方法。
相似度刻画了用户之间的无向边属性,与此同时,我们引入了信任度去刻画用户之间有向边的属性。信任度特征是指当用户v转发了用户u发布或转发的博文,那么就认为用户v对用户u有一定的信任度。
步骤一,计算用户间的信任度。从直观上来看,如果用户u发布了博文t,用户v转发了博文t,那么这就意味着用户v比较喜欢博文t并且愿意去和他的粉丝分享,或者说用户v重视对用户u的网络关系。无论从哪方面看,用户v对用户u都是有一定的信任度。并且用户v越快时间转帖,说明用户v和用户u的时序行为很接近,会更大可能地关注用户u发布的博文。所以基于这个原因,本章引入了负指数分布去模拟某一条博文发布时间和转发时间的延迟:
trust值是通过负指数分布计算出来的,其中x的定义如下所示:
这里createdAtv(t)-createdAtu(t)指用户u转发博文时间和用户v发布博文时间的延迟。createdAtmax(t)-createdAtmin(t)指在转推博文时间间隔中最大的延迟。这里有一个前提,用户u和用户v必须是相邻的,即用户v直接转发了用户u的博文,后续将具体分类讨论。
对于参数λ,使用最大似然估计计算其值:
这里,是样本的平均值。同时,上述针对相邻(直接转发关系)的用户,对于间接转发的用户之间,同样可以计算信任度的值,这里做出一个假设:即信任度的值是可以传递,意味着如果用户w转发了用户v转发的博文t,用户v转发了用户u发布的博文t,则用户w对用户v同样具有信任度,其计算如下:
Patht(w,u)={trust1(w,v),trust2(v,u)}
上述公式指用户w和用户v存在一条转发路径,则信任度的计算如下:
通过公式说明用户w对用户v的信任度是指在此转发路径上的信任度值的乘积。
以上是针对一条博文计算用户间的信任度值。最后将所有转发博文的所计算出的信任度值求和,从而得到用户w和用户u之间的信任度:
由此计算出了用户之间的信任度,构建了用户之间的信任度矩阵和有向边网络。
步骤二,基于用户信任度计算用户对博文的兴趣度,类似于基于用户相似度计算兴趣度的方式。在获得了用户-博文的打分矩阵和用户之间的信任度后,给定用户u和博文t,就可利用如下公式计算用户u对博文t的兴趣度:
其中,S(u,K)包含用户u信任度最高的K个用户集合,N(t)是指转发或发布过博文t的用户集合,用户v就是指上述两个集合的用户交集集合。rvt是指用户v是否转发或发布过博文t(1为转发或发布过,0为未转发或发布过)。
根据以上定义,计算用户u对博文t的兴趣度,重要的是获取到用户v集合。根据用户v集合的要求,必须是用户u对其信任度最高的K个用户集合和发布或转发过博文t的用户集合的交集,那么用户v一定转发或发布了博文t,则rvt的值一定为1。计算兴趣度的公式可以简写成如下形式:
根据计算出的用户对博文的兴趣度值,就可以得到对每个用户的Top-N博文推荐列表。
4)基于用户相似度和信任度的混合推荐方法。
步骤一,因为根据两种方法获取到的用户对博文的兴趣值各不相同,所以分别对每个用户所预测博文集合的相似度兴趣值和信任度兴趣值做归一化处理,以便除去误差。归一化的公式如下:
步骤二,得到归一化后的兴趣度,再利用加权公式进行最优兴趣度的计算:
psim_trust(u,t)=α||ptrust *(u,t)||+(1-α)||psim *(u,t)||
如上公式,其中α是值在0到1之间的参数值,算法不断在测试集上调整优化α,从而达到最优的结果。
本发明前提是针对国内外流行的弱关系社交平台,只是基于内容标签的方法可以根据语言种类的不同,使用对应的分词器,即可应用本发明。
实施例1:
以Twitter平台为例,利用Twitter官方的API,实验选取了一些用户作为种子节点,然后基于种子节点,通过采集用户的好友关系和粉丝关系扩展种子节点库,同时过滤掉好友数量小于15的用户。因为在本发明中这样的用户的信息很少,没有研究的价值。在2014年3月到6月期间采集了平均46636个用户和这些用户在这四个月发布的11803979条的博文。本发明将4个月的数据作为该方法实验的数据集。如表1所示:
表1:数据集描述
时间 | 用户数 | 博文数 |
2014.03 | 40648 | 1795268 |
2014.04 | 61536 | 5191917 |
2014.05 | 49436 | 3392423 |
2014.06 | 34925 | 1424371 |
第二步,训练集和测试集的构建。因为Twitter的官方API不能直接获取到用户的HomeLine(用户关注好友的博文)。所以唯一方式是模拟用户的HomeLine,即模拟用户能看到的博文。在本专利实验的每月数据集中,收集了好友数量超过15的用户,将他们关注的好友博文作为模拟用户能浏览到的博文集。之后将模拟每个用户能浏览到的博文,按时间顺序排序,前3/4的博文放入训练集,后1/4的博文的放入测试集中。如表2和表3所示,展示了两个方法构建的训练集和测试集中的博文数和用户数。
表2:构建基于转发网络的信息推荐方法中训练集和测试集
实验将活跃用户的转推博文放入训练集中,用于构建相似度矩阵和信任度矩阵;从而基于相似度矩阵、信任度矩阵计算用户对测试集中博文的兴趣度。对于转发网络中,对于相似度和信任度的加权参数值变化结果如图6所示。
表3:构建基于内容标签的信息推荐方法中训练集和测试集
实验首先将抽取训练集中博文的兴趣类别特征标签、情感倾向特征标签和时序行为特征标签,然后统计用户的兴趣类别特征、情感倾向特征标签、时序行为特征标签,最后按方法的对用户的特征标签进行向量化表示。
对于测试集中的博文,同样抽取三类特征标签,进行向量化表示。计算测试集中标签向量化表示的用户对测试集中博文的兴趣匹配度。
最后计算推荐结果的MAP值。同时分别只利用兴趣类别标签、情感倾向标签和时序行为标签进行用户和博文向量化表示,计算推荐结果的MAP值,与多标签的结果进行对比。
第三步,评测方法的结果对比,基于转发网络的信息推荐采用的评价标准是平均准确率MAP,其对比结果如下表:
当方法参数α在0.2到0.3之间时,方法取到最优的推荐结果。说明在基于用户相似度和信任度的推荐方法(STBM)中,当相似度的权重大于信任度的权重时,方法的效果最优。于是实验将基于相似度的推荐方法(SBM)、基于信任度的推荐方法(TBM)、以及选取最优参数的基于相似度和信任度的推荐方法(STBM)三个方法的算法结果进行对比,实验结果如表4所示:
表4:三种方法的MAP值对比(%)
时间 | 2014.03 | 2014.04 | 2014.05 | 2014.06 |
SBM | 61.91 | 48.93 | 64.78 | 69.87 |
TBM | 57.46 | 43.41 | 57.42 | 53.99 |
STBM | 62.74 | 50.10 | 65.93 | 70.57 |
基于内容标签的信息推荐采用的评价标准用户覆盖率:统计引入基于内容标签的推荐方法后,推荐用户的覆盖率变化。实验结果如表5所示:
表5:用户覆盖率表(%)
同时比较抽取不同类型内容标签,兴趣类别(ITBM)、情感倾向(STBM)和时序行为(TTBM)特征,与同时基于三种特征标签的方法(CTBM),对推荐结果的MAP值进行比较。对比结果如下表所示:
表6:不同特征标签方法的MAP值对比表(%)
时间 | 2014.03 | 2014.04 | 2014.05 | 2014.06 |
ITBM | 59.11 | 40.08 | 51.33 | 63.65 |
STBM | 31.11 | 24.03 | 35.11 | 55.33 |
TTBM | 45.33 | 41.12 | 41.22 | 52.36 |
CTBM | 61.71 | 51.22 | 66.23 | 68.88 |
本实施例详细说明了针对弱关系网络Twitter的信息推荐方法的实践过程,主要是对训练集和测试集的构造,然后利用基于转发网络和内容推荐方法,分析和比较了本发明对于推荐精准度和推荐覆盖率的提高。
基于上述信息推荐的方法,并不局限于本发明所公开的Twitter平台,还可结合其余社交平台的相应特征改变具体方法的参数,实现相同的技术效果,因此不脱离本发明的发明构思与精神实质的技术方案,应当认为也属于本发明所请求保护的范围,故不重述。
Claims (7)
1.一种面向弱关系社交网络的博文推荐方法,其特征在于,所述方法包括:利用社交网络中的用户和博文数据,根据活跃度划分出活跃用户群和非活跃用户群,然后分别面向活跃与非活跃的用户群,使用基于转推网络的推荐方法和基于内容标签的推荐方法输出用户-博文的兴趣度,最后通过结果的合并,得出用户-博文的兴趣度值;
所述基于内容标签的推荐方法,包括以下步骤:
步骤一,采集用户和博文的数据,同时过滤掉非中文的博文和用户,以保证对用户兴趣类别的划分和情感的分类;
步骤二,特征标签的抽取,特征标签包括兴趣类别标签、情感倾向标签和时序行为标签;
步骤三,基于多标签的兴趣匹配度计算,将用户和博文用标签向量化表示,用户u对博文t的兴趣度p(u,t)使用内积计算,计算公式如下:
p(u,t)=u·t,
其中,u是用户的标签向量化表示,t是博文的标签向量化表示,两向量的内积就是用户对该博文的兴趣匹配度;
所述基于转推网络的推荐方法,包括:构建用户和博文的矩阵,获取到博文的转推关系,得到用户和用户之间的关系网络;基于用户相似度计算用户对博文的兴趣度,从而预测用户对每条博文的转发概率;基于用户信任度计算用户对博文的兴趣度,从而预测用户对每条博文的转发概率;利用加权混合基于用户相似度和信任度所计算出的兴趣度,从而预测用户对每条博文的转发概率。
2.如权利要求1所述的面向弱关系社交网络的博文推荐方法,其特征在于,基于用户相似度计算用户对博文的兴趣度的方法包括:将博文做为项,通过用户-博文的打分矩阵,计算用户之间的相似度,其计算公式如下:
其中分母中的N(u)是指用户u发布的博文数,N(v)是指用户v发布的博文数,分母是正则项,能够使得最后用户u和用户v的相似度值在0和1之间,是惩罚因子,表示博文i被转发的次数越多,该惩罚因子的值会比原始值小;在获得了用户-博文的打分矩阵和用户之间的相似度后,当给定用户u和博文t后,利用如下公式计算用户u对博文t的兴趣度:
其中,S(u,K)包含与用户u最相似的K个用户集合,N(t)是指转发或发布过博文t的用户集合,用户v就是指上述两个集合的用户交集,rvt是指用户v是否转发或发布过博文t。
3.如权利要求1所述的面向弱关系社交网络的博文推荐方法,其特征在于,基于用户信任度计算用户对博文的兴趣度的方法包括,在获得了用户-博文的打分矩阵和用户之间的信任度后,给定用户u和博文t,利用如下公式计算用户u对博文t的兴趣度:
其中,S(u,K)包含用户u信任度最高的K个用户集合,N(t)是指转发或发布过博文t的用户集合,用户v就是指上述两个集合的用户交集集合,rvt是指用户v是否转发或发布过博文t。
4.如权利要求3所述的面向弱关系社交网络的博文推荐方法,其特征在于,计算用户之间的信任度主要包括:基于用户发布和转发之间的时间间隔分布衡量用户之间的信任度,其中时间间隔利用负指数分布;基于博文转发路径,用户之间的信任度是可以进行传递,并且路径越长,信任度度越低。
5.如权利要求4所述的面向弱关系社交网络的博文推荐方法,其特征在于,引入了负指数分布模拟某一条博文发布时间和转发时间的延迟:
trust值是通过负指数分布计算出来的,其中x的定义:
这里createdAtv(t)-createdAtu(t)指用户u转发博文t时间和用户v发布博文t时间的延迟,createdAtmax(t)-createdAtmin(t)指在转推博文时间间隔中最大的延迟,其中用户u和用户v是相邻的,即用户v直接转发了用户u的博文,对于参数λ,使用最大似然估计计算其值:其中是样本的平均值,用户u发布博文的时间和用户v转发用户u发布博文的时间越近,则用户v对用户u的信任度值越高。
6.如权利要求5所述的面向弱关系社交网络的博文推荐方法,其特征在于,对于间接转发的用户之间,如果用户w转发了用户v转发的博文t,用户v转发了用户u发布的博文t,则用户w对用户v同样具有信任度,其计算如下:
Patht(w,u)={trust1(w,v),trust2(v,u)},该公式指用户w和用户v存在一条转发路径,则信任度为即用户w对用户v的信任度是指在此转发路径上的信任度值的乘积。
7.如权利要求2或3所述的面向弱关系社交网络的博文推荐方法,其特征在于,分别对每个用户所预测博文集合的相似度兴趣值和信任度兴趣值做归一化处理,以便除去误差,归一化的公式如下:
得到归一化后的兴趣度,再利用加权公式进行最优兴趣度的计算:
psim_trust(u,t)=α||ptrust *(u,t)||+(1-α)||psim *(u,t)||
其中α是值在0到1之间的参数值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610388336.9A CN106168953B (zh) | 2016-06-02 | 2016-06-02 | 面向弱关系社交网络的博文推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610388336.9A CN106168953B (zh) | 2016-06-02 | 2016-06-02 | 面向弱关系社交网络的博文推荐方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106168953A CN106168953A (zh) | 2016-11-30 |
CN106168953B true CN106168953B (zh) | 2019-12-20 |
Family
ID=57359167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610388336.9A Active CN106168953B (zh) | 2016-06-02 | 2016-06-02 | 面向弱关系社交网络的博文推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106168953B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107220328B (zh) * | 2017-05-23 | 2020-05-19 | 南京大学 | 基于社交网络的弱关系和强关系的视频推荐方法 |
CN107330461B (zh) * | 2017-06-27 | 2020-11-03 | 安徽师范大学 | 基于情感与信任的协同过滤推荐方法 |
CN107240042A (zh) * | 2017-06-28 | 2017-10-10 | 梧州市兴能农业科技有限公司 | 一种高效的社区管理系统 |
JP6979308B2 (ja) * | 2017-08-31 | 2021-12-08 | ヤフー株式会社 | 抽出装置、抽出方法及び抽出プログラム |
CN108108419B (zh) * | 2017-12-15 | 2021-01-26 | 百度在线网络技术(北京)有限公司 | 一种信息推荐方法、装置、设备和介质 |
CN108804517B (zh) * | 2018-04-26 | 2022-05-31 | 北京五八信息技术有限公司 | 冷启动方法、装置、计算设备及计算机可读存储介质 |
CN110297966A (zh) * | 2019-04-24 | 2019-10-01 | 上海易点时空网络有限公司 | 用于社区类应用程序的内容推荐方法及装置 |
CN110781405B (zh) * | 2019-10-12 | 2020-05-29 | 山东师范大学 | 基于联合卷积矩阵分解的文档上下文感知推荐方法及系统 |
CN111159578B (zh) * | 2019-12-31 | 2023-10-13 | 第四范式(北京)技术有限公司 | 一种推荐对象的方法和系统 |
CN111241420B (zh) * | 2020-01-10 | 2020-11-10 | 云境商务智能研究院南京有限公司 | 一种基于社交网络信息扩散感知的推荐方法 |
CN112084420A (zh) * | 2020-08-10 | 2020-12-15 | 五八有限公司 | 一种好友推荐方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103886067A (zh) * | 2014-03-20 | 2014-06-25 | 浙江大学 | 使用标签隐含主题进行图书推荐的方法 |
CN104199874A (zh) * | 2014-08-20 | 2014-12-10 | 哈尔滨工程大学 | 一种基于用户浏览行为的网页推荐方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8037066B2 (en) * | 2008-01-16 | 2011-10-11 | International Business Machines Corporation | System and method for generating tag cloud in user collaboration websites |
-
2016
- 2016-06-02 CN CN201610388336.9A patent/CN106168953B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103886067A (zh) * | 2014-03-20 | 2014-06-25 | 浙江大学 | 使用标签隐含主题进行图书推荐的方法 |
CN104199874A (zh) * | 2014-08-20 | 2014-12-10 | 哈尔滨工程大学 | 一种基于用户浏览行为的网页推荐方法 |
Non-Patent Citations (3)
Title |
---|
"Collaborative Model for Predictingv Retweeting Behaviors on Twitter";Liang Guo.etc.;《APWeb 201 5: Web Technologies and Applications》;20151230;全文 * |
"关联数据驱动的数字图书推荐模型";田野等;《图书情报工作》;20130930;第 57 卷(第 17 期);全文 * |
"基于社会化标注的个性化信息推荐方法研究";赵开慧;《情报科学》;20150630;第 33卷(第 6期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106168953A (zh) | 2016-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106168953B (zh) | 面向弱关系社交网络的博文推荐方法 | |
CN106980692B (zh) | 一种基于微博特定事件的影响力计算方法 | |
Nguyen et al. | Real-time event detection for online behavioral analysis of big social data | |
CN106886518B (zh) | 一种微博账号分类的方法 | |
US10394953B2 (en) | Meme detection in digital chatter analysis | |
CN105005594B (zh) | 异常微博用户识别方法 | |
US11122009B2 (en) | Systems and methods for identifying geographic locations of social media content collected over social networks | |
US20130297694A1 (en) | Systems and methods for interactive presentation and analysis of social media content collection over social networks | |
US20130297581A1 (en) | Systems and methods for customized filtering and analysis of social media content collected over social networks | |
US20150127653A1 (en) | Systems and Methods for Behavioral Segmentation of Users in a Social Data Network | |
CN106940732A (zh) | 一种面向微博的疑似水军发现方法 | |
CN106682686A (zh) | 一种基于手机上网行为的用户性别预测方法 | |
CN103745000A (zh) | 一种中文微博客的热点话题检测方法 | |
CN106779827A (zh) | 一种互联网用户行为采集及分析检测的大数据方法 | |
CN105723402A (zh) | 用于确定社交数据网络中的影响者的系统和方法 | |
JP5754854B2 (ja) | 投稿者のプロフィール情報を分析する投稿者分析装置、プログラム及び方法 | |
CN104077417A (zh) | 社交网络中的人物标签推荐方法和系统 | |
US20140147048A1 (en) | Document quality measurement | |
Almquist et al. | Using radical environmentalist texts to uncover network structure and network features | |
Hachaj et al. | Clustering of trending topics in microblogging posts: A graph-based approach | |
Huang et al. | Information fusion oriented heterogeneous social network for friend recommendation via community detection | |
Shi et al. | Dynamic topic modeling via self-aggregation for short text streams | |
Zou et al. | Collaborative community-specific microblog sentiment analysis via multi-task learning | |
Hou et al. | Research on the behaviour and law of quantity growth of followers based on WeChat official account | |
Mao et al. | Classifying user connections through social media avatars and users social activities: a case study in identifying sellers on social media |
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 |