CN107506480B - 一种基于评论挖掘与密度聚类的双层图结构推荐方法 - Google Patents

一种基于评论挖掘与密度聚类的双层图结构推荐方法 Download PDF

Info

Publication number
CN107506480B
CN107506480B CN201710820271.5A CN201710820271A CN107506480B CN 107506480 B CN107506480 B CN 107506480B CN 201710820271 A CN201710820271 A CN 201710820271A CN 107506480 B CN107506480 B CN 107506480B
Authority
CN
China
Prior art keywords
clustering
cluster
recommendation
density
users
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
Application number
CN201710820271.5A
Other languages
English (en)
Other versions
CN107506480A (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.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
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 Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN201710820271.5A priority Critical patent/CN107506480B/zh
Publication of CN107506480A publication Critical patent/CN107506480A/zh
Application granted granted Critical
Publication of CN107506480B publication Critical patent/CN107506480B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]

Abstract

一种基于评论挖掘与密度聚类的双层图结构推荐方法,包括以下步骤:1)读取评论数据集,通过特征提取与情感分析,提取物品的特征用于聚类;2)聚类中心快速确定的密度聚类算法,输出最优dc以及最优dc时的聚类结果;3)基于图结构的推荐,输出能量值最高的n个物品作为推荐结果。本发明提供了一种精度较高、运行效率较高、准确率较高、实时性良好的基于评论挖掘与密度聚类的双层图结构推荐方法。

Description

一种基于评论挖掘与密度聚类的双层图结构推荐方法
技术领域
本发明属于推荐技术领域,涉及一种推荐方法。
背景技术
随着大数据时代的到来,面向消费者可供选择的商品越来越多,他们可能因面临更多的选择而不知所措,这样的现象被称为“信息超载”。如何通过大数据技术,为消费者推荐他们期望的商品逐渐成为了当前研究的热点问题之一。推荐系统是一种解决信息超载的有效方法,它通过收集用户的个性、喜好等信息,向用户反馈合适的推荐结果,目前已经广泛的被用于数字化商业、社会网络、数字图书馆等领域中。常用的推荐算法包括:协同过滤、基于矩阵分解的算法、基于评论挖掘的算法、基于聚类的算法等。
协同过滤因其简单易行,自动化程度高等优点被广泛应用于推荐领域中,它可分为基于用户的协同过滤与基于物品的协同过滤两类。首先根据评分信息建立用户评分矩阵,基于用户的协同过滤挑选出评分相似的用户作为他们的相似用户,并推荐相似用户具有高评分的物品。基于物品的协同过滤主要通过分析用户的行为记录计算物品之间的相似度,推荐与购买过的物品具有高相似度的物品。但是用户评分矩阵往往非常稀疏,算法的效果受数据稀疏性影响较大,而且算法处理大量数据效率较低并且具有严重的冷启动问题。
为了解决传统协同过滤的种种问题,很多有效的方案被提出。其中一项提高推进准确度的思路是寻找用户和项目的更多的特征,而不是单单使用评分一种特征。对于提取隐含特征,应用最广泛的是使用低秩矩阵分解技术。它通过矩阵分解将用户和物品间的高维关联矩阵R分解为两个低维矩阵U和V,使得R≈U×V.我们可以从此寻找出用户与项目的隐含特征并且通过矩阵U×V完成推荐。这种方法具有很强的扩展性并有效提高了推荐准确度。矩阵分解的传统方法有很多种,例如NMF、SVD、PMF等。
还有些工作者尝试从评论中挖掘更多的用户或物品特征。在用户评论中,用户可能发表关于一件物品的多个特征的观点。这里的特征不仅仅是产品固有的物理属性,还可以是用户关注的对象等,所以众多推荐算法应用特征提取与情感分析等技术,从评论中理解并获取用户的偏好,就能给用户做更准确的推荐。在评论挖掘中应用最广泛是应用关联挖掘算法获得用户评论中频繁的名词作为评论特征,使用基于词典的方法确定观点词的极性。但是因为评论中存在比较多的并非特征的频繁名词项,所以这种方法的结果并不准确。
为了提高推荐系统处理大数据的效率与精度,基于聚类的推荐算法应运而生。它通过选择合适的相似度度量方式,将相似度高的用户或物品聚在同一个簇中,以此提高系统效率。对于用于聚类的用户或物品的特征,使用最多的是评分信息,除此之外,还有用户的行为记录、社会关系等信息。聚类方法大多是改进后的K-means算法、k-medoids算法和模糊C均值聚类算法等。这些聚类算法大多只针对一种数据类型且聚类结果被推荐模型限制,所以聚类准确率较低。
发明内容
为了克服已有推荐方法的精度较低,运行效率慢,大多数聚类算法的聚类中心需要人工确定、聚类准确率低、参数依赖性大的不足,本发明提供了一种精度较高、运行效率较高、准确率较高、实时性良好的基于评论挖掘与密度聚类的双层图结构推荐方法。
本发明解决其技术问题所采用的技术方案是:
一种基于评论挖掘与密度聚类的双层图结构推荐方法,包括以下步骤:
1)读取评论数据集,通过特征提取与情感分析,提取物品的特征用于聚类。
1.1首先对评论数据做预处理,预处理包括分词、词性标注和过滤停用词。
1.2首先挑选出现频率大于阈值的名词项作为频繁项,构建部分特征列表,借助Word2Vec工具判断每个频繁项与特征列表中特征的相似度,挑选出相似度大于阈值的频繁项作为新的特征。
1.3挑选出评论中含有特征的句子,借助SentiWordNet情感词典判断每个句子的情感倾向,进而得到每条评论的情感倾向。对于每个物品的每个特征,计算好评的比例,作为该物品该特征下的值,以此将每个物品表示为向量,用于聚类。
2)聚类中心快速确定的密度聚类算法
2.1从原始数据集中获取每个物品的标签信息,通过用户物品间的购买关系,将物品的标签映射为用户的标签,根据用户标签判断两用户间的相似性。
2.1对于任意数据点i,通过公式ρi=Σξ(dij-dc)和式δi=min(dij)(ρj≥ρi)计算出该数据点对象的局部密度ρi和与其他数据点间最小距离δi,其中当dij<dc时,ξ=1,否则ξ=0,其中,dij表示数据点i到j的距离,dc表示临界距离dc,再根据公式γi=ρii计算出数据点的γi,变量γi被用于寻找聚类中心.
2.2根据每个数据点的γ值做出关于γ的密度分布图。计算出γ的样本均值和样本方差,采用矩估计的方法得到数据集有关γ值整体分布的均值μ和方差σ2
2.3做出服从均值为μ,方差为σ2的正态分布曲线,用该曲线拟合γ的概率密度曲线,并根据正态分布的5σ原则划定置信区间。
2.4根据划定的置信区间筛选出落于置信区间外的奇异点,具体来说,设定边界值Wide为μ+5σ,若数据点i的γi>Wide,则认为该数据点为奇异点并定义为聚类中心。
2.5根据求得的聚类中心点,采用将数据点i与密度高于它且离它最近的数据点归于一类的方法,将所有的数据点进行聚类划分,最终得到聚类结果。
2.6当dc被选定并得到聚类结果后,为比较对于不同dc时聚类效果的好坏,我们设计了一个Fitness函数作为评价指标。
Fitness由两部分组成:
Figure GDA0002264020170000041
Figure GDA0002264020170000042
式中m表示簇的个数,Ci和Cj表示第i个和第j个簇的聚类中心,|Cj|表示该簇的数据对象个数。
从以上两个公式可以看出,Fitness1代表了全局的平均簇内距离,Fitness2则代表全局的平均簇间距离。根据聚类效果好坏的最本质定义:簇内距离越小越好,簇间距离越大越好,令
Figure GDA0002264020170000043
对于一个给定的dc,Fitness函数值越大,则说明聚类效果越好。
2.7采用改进爬山算法选取最优dc。设定percent的初始值与迭代半径r,对percent,percent±r三点执行2.7步骤,更新percent的值使得此时Fitness最大,并减少迭代半径,。若迭代半径为0,则跳至2.8。
2.8输出最优dc以及最优dc时的聚类结果。
3)基于图结构的推荐
3.1根据用户和物品的聚类结果,将簇视为结点构建二分图网络,两节点间的连边权重正比于用户簇与物品簇之间的评分记录个数。依据能量流动的思想,我们可以得到所有物品簇在能量流动后获得的资源值并完成面向簇的个性化推荐。
3.2挑选出目标用户簇和能量值最高的n个物品簇中的所有用户和物品,构建二分图网络。其中每个结点表示一个用户或物品,它们间的权重由评分的大小决定。依据能量流动的思想,我们可以得到所有物品在能量流动后获得的资源值并完成面向目标用户的个性化推荐。
3.3采用时间衰减函数
Figure GDA0002264020170000051
使推荐结果更满足用户最近的喜好.具体来说,在3.2面向目标用户的个性化中,节点间连边的权重由评分与衰减函数f(t)的乘积共同定义。其中t为当前时间,
Figure GDA0002264020170000052
为签到记录的时间,T0为临界时间,当间隔时间大于临界时,函数值将快速下降。
3.4输出能量值最高的n个物品作为推荐结果。
近年来,基于图结构的推荐算法引起了广泛关注。它将用户和项目看作结点,行为记录看作连边以此构图,那么就把传统的推荐问题转化为了链路预测问题。对于推荐系统应用最广泛的图结构是二分图网络,它的结点具有两种类型分别代表用户和物品。MD算法是一种重要的基于图结构的能量分配算法,它假设部分节点具有初始能量,依据图结构中结点与结点间的连接关系,判断能量的流向与大小,最终每个结点都将获得部分能量。MD算法可以直接用于推荐系统中并且比起全局排序理论与协同过滤具有更好的推荐精度。
考虑到用户的喜好随时间的变化而变化,所以在推荐系统中需要加入动态修正机制。动态修正机制有多种,类似有基于会话的时态图、隐语义模型和时间衰减函数。基于会话的时态图首先计算用户或物品间的长期与短期相似度,然后使用随机游走算法计算用户和物品间第一次通过的平均时间。这种方法的时间复杂度较高,在大规模数据时表现一般。隐语义模型通过使用不同的基准来为用户或商品建模,因为不同用户拥有不同的打分基准,不同商品的受欢迎程度也不同。时间衰减函数是用来调整用户历史的打分,使得距离当前时间点越远的评分拥有更低的权重,以此来保证推荐结果的实时性。
本发明的有益效果主要表现在:在推荐系统中引入了评论挖掘,可以更好地寻找出物品隐含特征。快速密度聚类能识别出任意形状的类簇,聚类中心可以自动确定并且参数敏感性低。引入聚类操作将传统的基于图的推荐算法转化为双层结构的图结构算法,提高了推荐的准确度和算法的运行效率,引入了动态机制后,推荐结果更符合用户当前的需求。在真实数据集上的实验结果表明,该算法具有良好的适用性和可扩展性。
附图说明
图1是基于评论挖掘与密度聚类的双层图结构推荐方法的框架图。
图2是从评论中提取特征算法流程图。
图3是提取用户特征算法流程图。
图4是DataSet1的数据分布图与ρ和δ分布图,(a)表示DataSet1数据分布图;(b)表示数据对象的ρ和δ分布图。
图5是CCFD算法流程图。
图6是寻找最优dc算法流程图。
图7是基于无权二分图网络的能量流动过程图。
图8是双层图结构推荐算法流程图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图1~图8,一种基于评论挖掘与密度聚类的双层图结构推荐方法,对于评论数据,经过词性标注后,可以获得评论句子中所有单词的词性。词性标注的工具包使用斯坦福大学自然语言处理工具包。如对于评论“I played here once and thought this spotwas cool”,其输出为:
[('I','PRP'),('played','VBD'),('here','RB'),('once','RB'),('and','CC'),('thought','VBD'),('this','DT'),('spot','NN'),('was','VBD'),('cool','JJ')]
在过滤停用词后,提取出现频率大于等于阈值θ的名词项作为频繁项。之后创建部分特征列表。例如对于餐厅评论,部分特征列表如表1所示。
Figure GDA0002264020170000071
表1
事先将罗列的一些特征词归属在不同类中,将这些类作为聚类时使用的特征。之后借助Word2Vec,将每个频繁项与部分特征列表中的特征词进行比较,相似度大于阈值δ的将作为新的特征。该过程的框图参照图2。
在获得特征后,我们提取评论中含有特征的句子。我们注意到句子中表示情感倾向的词大多是形容词、副词、动词、名词,所以我们提取句子中这些词性的词作为情感词,计算它们的情感得分。情感得分通过查阅情感词典SentiWordNet来得到。对于每个单词,我们能得到它在该种词性下的积极得分PosScore与消极得分NegScore,它的最终情感得分计算如下:
Score=PosScore-NegScore (1)
最终得分的取值在[-1,1]之间,大于0时我们认为该词具有积极倾向,反之则具有消极倾向。句子的情感得分为其中情感词最终得分之和。
另外否定词类似于not、never等,它们的存在会使相应的单词词性发生变化,所以需要单独考虑。情感分析的步骤如下:
Step 1:寻找评论中含有特征的句子。
Step 2:对每个句子提取句子中除了特征外的形容词、副词、动词、名词作为情感词。
Step 3:如果句子中含有否定词,则标记否定词之后距离否定词最近的情感词,标记优先级为形容词、副词、动词、名词。若之后没有情感词,则向前寻找情感词。
Step 4:使用SentiWordNet得到每一个情感词的得分,对于被标记的情感词,它的最终得分为SentiWordNet得分的相反数。
Step 5:将句子中的所有情感词的最终得分相加作为句子的得分。
根据评论评价的特征极性,以及这些特征所属的聚类特征,我们可以计算所有特征向量,特征向量的各维表示聚类特征。我们假定评论中句子情感分大于0.02时表示具有正面评价,用1表示,否则用0表示,None表示无评价,若共有n个聚类特征,则评论-特征矩阵如下表2所述:
Figure GDA0002264020170000091
表2
其中
Figure GDA0002264020170000092
表示对聚类特征fi具有积极评价的评论个数。
假设聚类特征共有n个,所有评论共涉及k个商户,则可以为每个商户构建一个n维特征向量。构建各个商户的特征向量步骤如下:
Step 1:根据评论评价商户的不同,将评论分为k份。
Step 2:对于每份评论,构建每条评论的特征向量,以此构建评论-特征矩阵。
Step 3:商户j的特征向量第i维的值
Figure GDA0002264020170000093
定义如下:
Figure GDA0002264020170000094
式中R为评价商户j的所有评论,m为评论个数。
在对用户和物品聚类之前,我们需要提取用户和物品的特征。之前应用评论挖掘的方法获得了物品的特征,对于用户,我们可以将其有访问记录的餐厅的标签映射到用户上,作为他的标签,流程图如图3。
在获取用户和物品的特征之后,我们可以建立用户和物品的距离矩阵。物品间的距离取欧式距离,对于物品
Figure GDA0002264020170000101
Figure GDA0002264020170000102
它们之间的相似度如下:
Figure GDA0002264020170000103
式中
Figure GDA0002264020170000104
不为空。
对于两用户U1与U2,他们间的相似度由不同标签的数量决定:
dist(U1,U2)=num(S1-S2) (4)
式中S1与S2为两用户的标签列表。
对于聚类中心快速确定密度聚类算法(CCFD),有如下定义:
定义1:对于任意数据对象i,其局部密度计算方法为
ρi=∑f(dij-dc) (5)
Figure GDA0002264020170000105
式中,dij表示点i和j之间的距离。
定义2:对于任意对象,其到局部密度比它大的点的最近距离
δi=min(dij) (ρj≥ρi) (7)
对于ρ值最大的点,存在
δi=max(δj) (i≠j) (8)
设计一个横坐标为ρ,纵坐标为δ的二维坐标系,根据每个点的ρ-i和δi做出一张二维的ρ-δ分布图。例如,对于样本数据对象DataSet1,其分布图如图4(a)所示,其相应的ρ-δ图如图4(b)所示。其中,A1、A2、A3是图4(a)中的三个聚类中心,他们在图4(a)的ρ-δ图中表现出了较大的ρ值和δ值;B1、B2、B3是图4(a)中的三个噪声点,其在图4(b)中对应密度ρ较小而距离δ较大的点;对于其他点,称其为边界点,它们均属于某一个类簇,但表现出较小的δ值。
基于以上对ρ-δ图的分析,本文引入变量γ,对于任意一个数据点i,其γ定义为:
γi=ρii (9)
根据γ的概率分布情况,对于该γ的分布进行曲线的拟合,发现其图形的拟合曲线形状类似于一条正态分布曲线。现利用选取置信区间的方式在与拟合曲线相应的正态分布曲线中寻找出奇异点,并将奇异点看作是聚类中心。
对于任意数据点i,现假设其对应的γi均是服从均值为μ,标准差为σ的随机正态分布,记作γi~N(μ,σ2)。首先计算出样本均值
Figure GDA0002264020170000112
和样本方差S,再根据矩估计原理,则可得:
Figure GDA0002264020170000111
求出μ和σ的值后,我们就能得到一条正态分布曲线,现在根据正态分布的5σ原则选取置信区间以找出奇异点。具体方法为:
设置边界值Wide=μ+5σ,将数据集中所有点的γ值与Wide进行比较。对于数据点i,若γi>Wide,则标记i为奇异点。
CCFD算法的具体流程图如图5所示。
Dc确定后,利用CCFD算法自动选取聚类中心,并根据每个点的ρ和δ值,将数据点按照将其与ρ值大于该数据点且与该数据点的δ值最小的数据点归于一类的原则进行划分聚类,从而得到聚类结果。
为了消除对密度半径dc的参数敏感性,我们使用改进爬山算法寻找最佳密度半径dc。为比较对于不同dc时聚类效果的好坏,我们设计了一个Fitness函数作为评价指标。
Fitness由两部分组成:
Figure GDA0002264020170000121
Figure GDA0002264020170000122
式中m表示簇的个数,Ci和Cj表示第i个和第j个簇的聚类中心,|Cj|表示该簇的数据对象个数。
从公式(11)和公式(12)可以看出,Fitness1代表了全局的平均簇内距离,Fitness2则代表全局的平均簇间距离,令
Figure GDA0002264020170000123
对于一个给定的dc,Fitness函数值越大,则说明聚类效果越好。
为了提高爬山算法的效果,我们使用两样本间最大距离的10%作为初始percent,并设置迭代半径使percent向两侧扩展。迭代半径在迭代的过程中将逐渐减小至0。寻找最佳dc的具体步骤如下:
Step1:读取数据集的相似度距离矩阵;
Step2:设置percent的初始值Po和迭代半径r,计算出此时的dc值;
Step3:计算出percent为Po、Po+r和Po-r时各自的Fitness值;
Step4:选取Fitness值最大的percent作为临时的最优percent,记为Ptbest,并使迭代半径减小0.5%(r=r-0.5);
Step5:判断r是否为0,若r≠0,则跳到Step2,用Ptbest代替Po进行计算;若r=0,则停止迭代,此时令全局最优半径Pbest=Ptbest,即得到最优dc
寻找最优dc算法流程图如图6所示。
在聚类完成后,我们可以通过构建二分图完成个性化推荐。推荐过程分为两步骤:基于簇的个性化推荐和基于用户的个性化推荐。
对于二分图网络G(U,B,L),其中U={U1,U2,...,Um}表示用户集合,B={B1,B2,...,Bn}表示物品集合,L表示用户与物品之间的连边集合。根据MD算法,节点间能量流动分为两步:首先从B流向U,再从U流向B。对于无权二分网络,物品节点初始能量分别为x、y、z,则能量流动过程如图7所示。
设f(bi)表示物品节点bi的初始能量,lip是大小为n×m的矩阵,由连边权重定义,k(bi)为分配矩阵lip第i列元素的和。则经过第一步能量流动后,用户节点up的能量大小为:
Figure GDA0002264020170000131
接下来能量从B流向U,最终物品节点bi的能量为:
Figure GDA0002264020170000132
或者写作:
Figure GDA0002264020170000133
式中
Figure GDA0002264020170000134
在第一步基于簇的个性化推荐中,我们以用户簇和物品簇建立二分图网络,它们之间连边的权重由签到记录的数量决定。设P表示一个用户簇结点,I表示一个物品簇结点,lIP和lPI定义如下:
Figure GDA0002264020170000141
式中
Figure GDA0002264020170000142
在创建矩阵后,通过式14-19,我们可以针对任意目标用户簇完成基于簇的个性化推荐。在第二步针对目标用户的个性化推荐中,我们挑选出目标用户簇和资源最高的n个物品簇中的所有用户和物品,构建二分图网络,考虑到用户对物品的评分Score∈[0,5],我们认为篇评分小于3时为负面评分,大于3时为正面评分,因此在第二步推荐中分配矩阵定义如下
Figure GDA0002264020170000143
当用户i对物品p具有负面评分时lip<0,它表示用户对物品不喜欢的程度。我们将分配矩阵分为正矩阵与负矩阵两部分,以此构建正负两幅二分图,最终将正二分图网络与负二分图网络的结果相加得到最终推荐结果。基于双层图结构的推荐算法流程图如图8所示。

Claims (1)

1.一种基于评论挖掘与密度聚类的双层图结构推荐方法,其特征在于,包括以下步骤:
1)读取评论数据集,通过特征提取与情感分析,提取物品的特征用于聚类,过程如下:
1.1首先对评论数据做预处理,预处理包括分词、词性标注和过滤停用词;
1.2首先挑选出现频率大于阈值的名词项作为频繁项,构建部分特征列表,借助Word2Vec工具判断每个频繁项与特征列表中特征的相似度,挑选出相似度大于阈值的频繁项作为新的特征;
1.3挑选出评论中含有特征的句子,借助SentiWordNet情感词典判断每个句子的情感倾向,进而得到每条评论的情感倾向;对于每个物品的每个特征,计算好评的比例,作为该物品该 特征下的值,以此将每个物品表示为向量,用于聚类;
2)聚类中心快速确定的密度聚类算法,过程如下:
2.1从原始数据集中获取每个物品的标签信息,通过用户物品间的购买关系,将物品的标签映射为用户的标签,根据用户标签判断两用户间的相似性;
2.1对于任意数据点i,通过公式ρi=∑ξ(dij-dc)和式δi=min(dij)(ρj≥ρi)计算出该数据点对象的局部密度ρi和与其他数据点间最小距离δi,其中当dij<dc时,ξ=1,否则ξ=0,dij和dc分别表示数据点i到j的距离和临界距离dc,再根据公式γi=ρii计算出数据点的γi,变量γi被用于寻找聚类中心;
2.2根据每个数据点的γ值做出关于γ的密度分布图,计算出γ的样本均值和样本方差,采用矩估计的方法得到数据集有关γ值整体分布的均值μ和方差σ2
2.3做出服从均值为μ,方差为σ2的正态分布曲线,用该曲线拟合γ的概率密度曲线,并根据正态分布的5σ原则划定置信区间;
2.4根据划定的置信区间筛选出落于置信区间外的奇异点,设定边界值Wide为μ+5σ,若数据点i的γi>Wide,则认为该数据点为奇异点并定义为聚类中心;
2.5根据求得的聚类中心点,采用将数据点i与密度高于它且离它最近的数据点归于一类的方法,将所有的数据点进行聚类划分,最终得到聚类结果;
2.6当dc被选定并得到聚类结果后,为比较对于不同dc时聚类效果的好坏,设计了一个Fitness函数作为评价指标:
Fitness由两部分组成:
Figure FDA0002264020160000021
Figure FDA0002264020160000022
式中m表示簇的个数,Ci和Cj表示第i个和第j个簇的聚类中心,|Cj|表示该簇的数据对象个数;
Fitness1代表了全局的平均簇内距离,Fitness2则代表全局的平均簇间距离,根据聚类效果好坏的最本质定义:簇内距离越小越好,簇间距离越大越好,令:
Figure FDA0002264020160000023
对于一个给定的dc,Fitness函数值越大,则说明聚类效果越好;
2.7采用改进爬山算法选取最优dc,设定percent的初始值与迭代半径r,对percent,percent±r三点执行改进爬山算法,更新percent的值使得此时Fitness最大,并减少迭代半径;若迭代半径为0,则跳至2.8;
2.8输出最优dc以及最优dc时的聚类结果;
3)基于图结构的推荐,过程如下:
3.1根据用户和物品的聚类结果,将簇视为结点构建二分图网络,两节点间的连边权重正比于用户簇与物品簇之间的评分记录个数;依据能量流动的思想,得到所有物品簇在能量流动后获得的资源值并完成面向簇的个性化推荐;
3.2挑选出目标用户簇和能量值最高的n个物品簇中的所有用户和物品,构建二分图网络,其中每个结点表示一个用户或物品,它们间的权重由评分的大小决定;依据能量流动的思想,得到所有物品在能量流动后获得的资源值并完成面向目标用户的个性化推荐;
3.3采用时间衰减函数
Figure FDA0002264020160000031
使推荐结果更满足用户最近的喜好,在步骤3.2面向目标用户的个性化中,节点间连边的权重由评分与衰减函数f(t)的乘积共同定义,其中t为当前时间,tip为签到记录的时间,T0为临界时间,当间隔时间大于临界时,函数值将快速下降;
3.4输出能量值最高的n个物品作为推荐结果。
CN201710820271.5A 2017-09-13 2017-09-13 一种基于评论挖掘与密度聚类的双层图结构推荐方法 Active CN107506480B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710820271.5A CN107506480B (zh) 2017-09-13 2017-09-13 一种基于评论挖掘与密度聚类的双层图结构推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710820271.5A CN107506480B (zh) 2017-09-13 2017-09-13 一种基于评论挖掘与密度聚类的双层图结构推荐方法

Publications (2)

Publication Number Publication Date
CN107506480A CN107506480A (zh) 2017-12-22
CN107506480B true CN107506480B (zh) 2020-05-05

Family

ID=60695921

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710820271.5A Active CN107506480B (zh) 2017-09-13 2017-09-13 一种基于评论挖掘与密度聚类的双层图结构推荐方法

Country Status (1)

Country Link
CN (1) CN107506480B (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108304479B (zh) * 2017-12-29 2022-05-03 浙江工业大学 一种基于图结构过滤的快速密度聚类双层网络推荐方法
CN108536674A (zh) * 2018-03-21 2018-09-14 上海蔚界信息科技有限公司 一种基于语义的典型意见聚合方法
CN108595580B (zh) * 2018-04-17 2022-08-09 创新先进技术有限公司 新闻推荐方法、装置、服务器及存储介质
CN108960966B (zh) * 2018-06-07 2022-05-03 重庆邮电大学 一种基于用户偏好的矩阵分解推荐方法
CN108897820B (zh) * 2018-06-21 2022-03-15 电子科技大学 一种denclue算法的并行化方法
CN109214882B (zh) * 2018-07-09 2021-06-25 西北大学 一种商品推荐方法
CN108984775B (zh) * 2018-07-24 2020-05-22 南京新贝金服科技有限公司 一种基于商品评论的舆情监控方法及系统
CN109241202B (zh) * 2018-09-11 2020-10-16 杭州飞弛网络科技有限公司 一种基于聚类的陌生人社交用户匹配方法和系统
CN109360058A (zh) * 2018-10-12 2019-02-19 平安科技(深圳)有限公司 基于信任网络的推送方法、装置、计算机设备及存储介质
US11176460B2 (en) * 2018-11-19 2021-11-16 Fujifilm Business Innovation Corp. Visual analysis framework for understanding missing links in bipartite networks
CN109471978B (zh) * 2018-11-22 2022-01-28 腾讯科技(深圳)有限公司 一种电子资源推荐方法及装置
CN109670922B (zh) * 2018-12-29 2022-02-08 北京工业大学 一种基于混合特征的线上图书价值发现方法
CN109857866B (zh) * 2019-01-14 2021-05-25 中国科学院信息工程研究所 一种面向事件查询建议的关键词抽取方法和事件查询建议生成方法及检索系统
CN111625716B (zh) * 2020-05-12 2023-10-31 聚好看科技股份有限公司 媒资推荐方法、服务器及显示设备
CN112148947B (zh) * 2020-09-28 2024-03-22 微梦创科网络科技(中国)有限公司 一种批量挖掘刷评用户的方法及系统
CN112667876B (zh) * 2020-12-24 2024-04-09 湖北第二师范学院 一种基于PSOTVCF-Kmeans算法的意见领袖群识别方法
JP7250058B2 (ja) * 2021-03-18 2023-03-31 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム
CN114970676B (zh) * 2022-04-25 2023-02-24 西南石油大学 一种基于数据挖掘的裂缝性漏失颗粒基堵漏配方推荐方法
CN116955540B (zh) * 2023-09-19 2024-02-09 昆仑数智科技有限责任公司 一种钻井事故处置方案的推荐方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105069172A (zh) * 2015-09-09 2015-11-18 中国人民大学 兴趣标签生成方法
CN105913296A (zh) * 2016-04-01 2016-08-31 北京理工大学 一种基于图的个性化推荐方法
CN106056136A (zh) * 2016-05-20 2016-10-26 浙江工业大学 一种聚类中心快速确定的数据聚类方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10235403B2 (en) * 2014-07-08 2019-03-19 Palo Alto Research Center Incorporated Parallel collective matrix factorization framework for big data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105069172A (zh) * 2015-09-09 2015-11-18 中国人民大学 兴趣标签生成方法
CN105913296A (zh) * 2016-04-01 2016-08-31 北京理工大学 一种基于图的个性化推荐方法
CN106056136A (zh) * 2016-05-20 2016-10-26 浙江工业大学 一种聚类中心快速确定的数据聚类方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
bipartite network projection and personal recommendation;Tao Zhou等;《APS physics》;20071025;全文 *
基于二分网络的用户聚类电影推荐系统构建;李寒芳等;《网络与信息工程》;20161120(第20期);全文 *

Also Published As

Publication number Publication date
CN107506480A (zh) 2017-12-22

Similar Documents

Publication Publication Date Title
CN107506480B (zh) 一种基于评论挖掘与密度聚类的双层图结构推荐方法
CN110162706B (zh) 一种基于交互数据聚类的个性化推荐方法及系统
CA3007723C (en) Systems and/or methods for automatically classifying and enriching data records imported from big data and/or other sources to help ensure data integrity and consistency
CN108363804B (zh) 基于用户聚类的局部模型加权融合Top-N电影推荐方法
CN107330115B (zh) 一种信息推荐方法及装置
CN109543109B (zh) 一种融合时间窗技术和评分预测模型的推荐算法
CN107357793B (zh) 信息推荐方法和装置
CN104750798B (zh) 一种应用程序的推荐方法和装置
CN112861541B (zh) 一种基于多特征融合的商品评论情感分析方法
CN105005589A (zh) 一种文本分类的方法和装置
CN102902691A (zh) 推荐方法及系统
CN108509421B (zh) 基于随机游走和粗糙决策置信度的文本情感分类方法
CN108304479B (zh) 一种基于图结构过滤的快速密度聚类双层网络推荐方法
CN109471982B (zh) 一种基于用户和服务聚类QoS感知的Web服务推荐方法
Desai Sentiment analysis of Twitter data
CN112632984A (zh) 基于描述文本词频的图模型移动应用分类方法
CN111681084A (zh) 一种基于社交关系影响因素的电商平台推荐方法
Chen et al. Personalized recommendation model: an online comment sentiment based analysis
Mozafari et al. Emotion detection by using similarity techniques
CN112215629B (zh) 基于构造对抗样本的多目标广告生成系统及其方法
CN110110220A (zh) 融合社交网络和用户评价的推荐模型
CN110083766B (zh) 一种基于元路径引导嵌入的查询推荐方法及装置
Park et al. Phrase embedding and clustering for sub-feature extraction from online data
WO2020147259A1 (zh) 一种用户画像方法、装置、可读存储介质及终端设备
CN112417082A (zh) 一种科研成果数据消歧归档存储方法

Legal Events

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