基于情感分析的混合用户评分信息推荐方法及其推荐装置
技术领域
本发明涉及数据挖掘、自然语言处理和信息检索领域,尤其涉及一种基于情感分析的混合用户评分信息推荐方法及其推荐装置。
背景技术
目前在推荐方法相关技术中,推荐方法主要包括:基于协同过滤的推荐方法。该方法的效果较好,是目前应用较多的方法之一;它通过计算用户的相似度,对用户进行聚类,拥有相同聚类标签的用户之间的兴趣相近,为向用户推荐所需的商品打下了基础。例如:网球群中的某一用户购买了某个著名品牌的网球拍,对网球群中的其他用户推荐该网球拍。由于协同过滤方法的不俗表现,基于该方法的推荐系统在电子商务领域得到了广泛应用。
协同过滤方法的缺陷在于它的实现需要对用户的评价信息进行分析处理,但实际上由于电子商务网站的评论信息量巨大、商品信息庞大,导致了信息不对称;同时容易出现许多商品的评论信息极少,而热门商品的评论信息又很多的情况,从而导致评价信息不准确,进而影响到推荐结果的准确性。
发明内容
本发明提供了一种基于情感分析的混合用户评分信息推荐方法及其推荐装置,本发明能够有效克服传统推荐方法在计算用户之间的相似度时,往往只考虑两个用户共同评分的所有项目,而忽略了用户情感的相似性,详见下文描述:
一种基于情感分析的混合用户评分信息推荐方法,所述混合用户评分信息推荐方法包括以下步骤:
通过用户共同评分的商品计算相似度,得到用户评分相似度;以及通过文本的情感倾向以及情感相似度来计算情感相似度;
结合情感相似度和用户评分相似度,得到综合相似度;
通过综合相似度获取用户对商品的预测评分。
进一步地,在通过文本的情感倾向以及情感相似度来计算情感相似度的步骤之前,所述混合用户评分信息推荐方法还包括:
通过二阶马尔科夫链对数据文本进行分词处理,获取分词后的训练集;
将所得到的训练集进行分类,获取文本的情感倾向以及情感相似度。
所述将所得到的训练集进行分类,获取文本的情感倾向以及情感相似度的步骤具体为:
对分词后的训练集用朴素贝叶斯分类算法进行分类学习,输出训练集与分类类别之间的映射关系;
根据特征词和主题间的相似性,获取情感词的极性、表达情感的强烈程度,判断文本的情感倾向。
所述通过用户共同评分的商品计算相似度,得到用户评分相似度的步骤具体为:
通过计算用户之间的相似行为得到余弦相似性,再根据余弦相似性提出用户评分相似度。
进一步地,所述混合用户评分信息推荐方法还包括:验证预测评分的准确度。
一种基于情感分析的混合用户评分信息推荐装置,所述混合用户评分信息推荐装置包括:
第一获取模块,用于通过用户共同评分的商品计算相似度,得到用户评分相似度;
第二获取模块,用于通过文本的情感倾向以及情感相似度来计算情感相似度;
第三获取模块,用于结合情感相似度和用户评分相似度,得到综合相似度;
第四获取模块,用于通过综合相似度获取用户对商品的预测评分。
进一步地,所述混合用户评分信息推荐装置还包括:
第五获取模块,用于通过二阶马尔科夫链对数据文本进行分词处理,获取分词后的训练集;
第六获取模块,用于将所得到的训练集进行分类,获取文本的情感倾向以及情感相似度。
其中,所述第六获取模块包括:
输出子模块,用于对分词后的训练集用朴素贝叶斯分类算法进行分类学习,输出训练集与分类类别之间的映射关系;
判断子模块,用于根据特征词和主题间的相似性,获取情感词的极性、表达情感的强烈程度,判断文本的情感倾向。
进一步地,所述第一获取模块包括:
获取子模块,用于通过计算用户之间的相似行为得到余弦相似性,再根据余弦相似性提出用户评分相似度。
进一步地,所述混合用户评分信息推荐装置还包括:
验证模块,用于验证预测评分的准确度。
本发明提供的技术方案的有益效果是:
1、本发明为社交网络中的推荐技术提供了一种新思路,在传统的用户相似度计算中结合用户情感相似度计算,进而为用户在网络中找寻适合自己的商品和服务、商品决策者有针对性的提高网络购物中的服务水平有效地提供了帮助。
2、用户相似性仍然是由用户的评分相似度决定的结论,但是,在增加了用户评论的情感分析后,可以得到更准确的预测评分,从而达到改善传统的协同过滤方法的目的。
3、本方法从寻找相似用户入手,在计算用户相似度过程中加入了情感分析的因素,从而对传统的协同过滤方法进行了改进,最终实验结果表明,本方法比基于用户的协同过滤推荐算法结果更准确。
附图说明
图1为一种基于情感分析的混合用户评分信息推荐方法的流程图;
图2为不同K值时MAE值随α变化图;
图3为S-CF算法和CF算法的比较示意图;
图4为一种基于情感分析的混合用户评分信息推荐装置的结构示意图;
图5为一种基于情感分析的混合用户评分信息推荐装置的另一结构示意图;
图6为第六获取模块的示意图;
图7为第一获取模块的示意图;
图8为一种基于情感分析的混合用户评分信息推荐装置的另一结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面对本发明实施方式作进一步地详细描述。
实施例1
本发明实施例提供了一种基于情感分析的混合用户评分信息推荐方法,参见图1,该推荐方法包括以下步骤:
101:通过二阶马尔科夫链对数据文本进行分词处理,获取分词后的训练集;
其中,步骤101具体为:
根据中文分词的特点,可以将现有的中文文本分词方法分为三类:第一类是基于字符串匹配的分词方法;第二类是基于理解的分词方法;第三类是基于统计的分词方法。本发明使用的是第一种基于字符串匹配的分词方法,本方法结合了二阶马尔科夫链,对数据文档进行分词处理。
102:将所得到的训练集进行分类,获取文本的情感倾向以及情感相似度,而情感倾向分析包括对词语极性、强度和上下文模式的分析[1];
其中,步骤102具体为:
对分词后的训练集用朴素贝叶斯分类算法进行分类学习,输出训练集与分类类别之间的映射关系;然后根据特征词和主题间的相似性,获取情感词的极性、表达情感的强烈程度,判断文本的情感倾向。
103:通过用户共同评分的商品来计算相似度,得到用户评分相似度计算公式;以及通过文本的情感倾向以及情感相似度来计算情感相似度,得到情感相似度的计算公式;
其中,通过用户共同评分的商品来计算相似度,得到用户评分相似度计算公式具体为:
由于基于用户的协同过滤方法比基于内容的推荐方法拥有更高的准确度,而且它比基于知识的推荐方法需要更低的维护和更少的统计,所以本发明使用该方法作为用户相似度计算的基础。通过计算用户之间的相似行为得到余弦相似性算法公式,再根据这个余弦相似性算法公式提出用户评分相似度计算公式。
104:结合情感相似度的计算公式和用户评分相似度计算公式,得到综合相似度的计算公式;
因为用户评分相似度计算公式缺少对用户情感的考虑,会导致取得的结果比较片面,所以使用权重因子α将情感相似度的计算公式和用户评分相似度计算公式进行权值求和,得到新的综合相似度计算公式,并通过实验来计算α取何值时使得准确度最高。
105:通过综合相似度计算公式获取用户对商品的预测评分,并验证预测评分的准确度。
综上所述,本发明实施例通过步骤101至步骤105中的方案为用户在网络中找寻适合自己的商品和服务、商品决策者有针对性的提高网络购物中的服务水平有效地提供了帮助。
实施例2
本发明实施例结合具体的计算公式,对实施例1中的方案进行详细说明,详细下文描述:
201:建立单词生成模型;
在文本情感分析过程中,首先要进行数据文本的分词处理,在此过程中用到了单词生成模型,该单词生成模型如公式(1)所示:
其中,WSeq*为单词生成模型新生成的单词序列;WSeq≡ω1 m=[ω1,ω2,.ωi..ωm]表示含有m个词语的一组序列,其中的“≡”为恒等于;ωi表示第i个单词;c1 n表示含有n个单词的句子;为当c1 n必然出现时,出现WSeq的概率值;当c1 n必然出现时,其中一个WSeq使得达到最大值,此时的WSeq是
例如:假设c1 n=”Tobeornottobe,thatisaquestion”,此时n=10,另外假设WSeq1=”thatis”,WSeq2=”tobe”,WSeq3=”aquestion”,此时m=2;那么 因为WSeq2在c1 n中出现了两次,而WSeq1和WSeq3在c1 n中只出现了一次;很明显WSeq2使得达到最大值,那么此时WSeq*=WSeq2。
单词一元组模型word-trigram(即第i个出现的单词与前面出现过的单词的关系)表示如下:P(ωi|ωi-2,ωi-1),即第i个出现的单词只与第i-1个出现的单词和第i-2个出现的单词有关,这就是二阶马尔科夫链。如果第i个出现的单词只与第i-1个出现的单词有关,那就是一阶马尔科夫链。
具体表示方法如公式(2)所示。
其中,表示含有m个词语的一组序列;为当c1 n必然出现时,出现的概率;为当必然出现时,出现c1 n的概率;为出现的概率;为c1 n出现的概率。
202:根据单词生成模型获取二阶马尔科夫链,通过二阶马尔科夫链对数据文本进行分词处理,获取分词后的训练集;
当P(c1 n|ω1 m)=1并且c1 n与WSeq相等时,仅需要考虑P(ω1 m),那么可以进一步简化二阶马尔可夫链的设定。二阶马尔可夫链的设定如公式(3)所示。
其中,表示当必然出现时,ωi出现的概率;表示当必然出现时,ωi出现的概率。
通过二阶马尔科夫链对数据文本进行分词处理,获取分词后的训练集的步骤为本领域技术人员所公知,本发明实施例对此不做赘述。
203:通过朴素贝叶斯分类算法对分词后的训练集进行分类学习,进而计算出数据文本情感倾向和情感值;
该步骤的具体操作过程参见实施例1,本发明实施例对此不做赘述。
204:获取用户评分相似度计算公式;
本发明实施例对计算用户相似度的算法进行改进,选取推荐算法中经典的基于用户(User-based)的协同过滤算法作为用户相似度计算的基础。该算法的主要思想是认为兴趣爱好相似的用户之间具有相似的评分行为,因此可以通过用户共同评价过的商品的评分来计算用户之间的相似程度。本发明实施例中使用的用户评分相似度计算公式如公式(4)所示。
该公式是改进的余弦相似性算法公式。
其中,simr(i,j)为用户评分相似度的数值;r表示此计算公式是用户评分相似度的标记;U表示用户i和用户j共同评价过的商品的集合,Ru,i和Ru,j分别表示用户i和用户j对共同评分商品u的评分,Ri和分别表示用户i和用户j对所评分项目的评分均值。
205:获取用户情感相似度的计算公式;
根据步骤204中的用户评分相似度计算公式,获知两个用户在其共同评分集上的评分方面的相似度,并没有包含用户的情感信息,因此提出用户情感相似度的计算公式,如公式(5)所示。
其中,simp(i,j)为用户情感相似度的数值;p表示此计算公式是用户情感相似度的标记;Su,i和Su,j分别表示用户i和用户j对共同评分商品u的情感数值;和分别表示用户i和用户j对所评分项目的情感均值。
公式(4)在计算用户相似度时只关注了用户共同评分商品的评分相似度,取得的结果比较片面,而没有考虑到用户评论当中的情感倾向,因此该相似度不足以完整表达用户的相似性。同时单独的用户情感相似度公式也只是考虑了用户共同评论集的情感相似度,也是无法完整表达用户的相似性。所以本发明考虑将两者加权后的综合相似度来度量用户之间的相似度。
206:通过用户评分相似度计算公式和情感相似度计算公式,得出如下综合相似度的计算公式,如公式(6)所示。
sim(i,j)=α·simr(i,j)+(1+α)·simp(i,j)
(6)
公式(6)中simr(i,j)表示用户i和用户j的评分相似度,simp(i,j)表示用户i和用户j情感倾向相似度。
其中,权重因子α的取值范围规定在[0,1]区间上,α的取值通过实验确定取何值最合适、准确度最高。
207:最后商品的预测分数的计算公式如公式(7)所示。
公式(7)中Score(a)表示用户i对产品a的预测评分,K表示与用户i最相似的用户数目,sim(i,j)表示用户i和用户j的综合相似度,Rj,a表示用户j对商品a的评分。
208:通过公式(7)就可以得到用户i对商品的预测评分,再通过与用户i对商品的实际评分进行比较,就可以得出预测评分的准确度,从而衡量本发明提出的推荐方法的准确度。
综上所述,本发明实施例通过步骤201至步骤208中的方案为用户在网络中找寻适合自己的商品和服务、商品决策者有针对性的提高网络购物中的服务水平有效地提供了帮助,具有较高的预测准确度。
实施例3
下面结合具体的试验、评判准则、图2和图3来验证本发明提供的基于情感分析的混合用户评分信息推荐方法的可行性,详见下文描述:
实验分别在最近邻用户的数目K的数值等于10、20、30的情况下,不断地改变公式(6)中的权重因子α的数值,以此使得基于情感分析的产品推荐算法能够得出最佳的预测评分准确度。
同时,本发明使用平均绝对误差(MAE)作为预测评分的评价标准,与平均误差相比,平均绝对误差由于离差被绝对值化,不会出现正负相抵消的情况,因而,平均绝对误差能更好地反映预测值误差的实际情况。MAE的计算公式如公式(8)所示。
公式(8)中,K表示预测项目的个数,pi和qi分别为预测评分和项目的实际评分,MAE的值越小,表示预测结果越好。
在图2中,随着权重因子α从0.1逐渐增大至0.9,算法的预测评分的评测标准MAE值曲线符合先下降后上升的规律,而且从实验结果可以看出当α=0.8时,即综合相似度中用户的评分相似度占80%、情感相似度占20%时获得的预测评分准确度最高。
在图3中,选择目标用户的最近邻用户个数从5到50依次递增,从而观测MAE值的变化得出预测结果的准确度。通过比较基于情感分析的产品推荐算法(S-CF)和传统的协同过滤算法(CF)的准确度可以得知,S-CF在评分准确度上有更好的表现。由图3可知,S-CF算法在准确度上较CF算法更胜一筹。
实施例4
一种基于情感分析的混合用户评分信息推荐装置,参见图4,该混合用户评分信息推荐装置包括:
第一获取模块,用于通过用户共同评分的商品计算相似度,得到用户评分相似度;
第二获取模块,用于通过文本的情感倾向以及情感相似度来计算情感相似度;
第三获取模块,用于结合情感相似度和用户评分相似度,得到综合相似度;
第四获取模块,用于通过综合相似度获取用户对商品的预测评分。
进一步地,参见图5,混合用户评分信息推荐装置还包括:
第五获取模块,用于通过二阶马尔科夫链对数据文本进行分词处理,获取分词后的训练集;
第六获取模块,用于将所得到的训练集进行分类,获取文本的情感倾向以及情感相似度。
其中,参见图6,第六获取模块包括:
输出子模块,用于对分词后的训练集用朴素贝叶斯分类算法进行分类学习,输出训练集与分类类别之间的映射关系;
判断子模块,用于根据特征词和主题间的相似性,获取情感词的极性、表达情感的强烈程度,判断文本的情感倾向。
进一步地,参见图7,第一获取模块包括:
获取子模块,用于通过计算用户之间的相似行为得到余弦相似性,再根据余弦相似性提出用户评分相似度。
进一步地,参见图8,混合用户评分信息推荐装置还包括:
验证模块,用于验证预测评分的准确度。
本发明实施例对上述模块、子模块的执行主体不做限制,可以为单片机、PC机等能实现上述功能的器件。
综上所述,本发明实施例通过上述模块、子模块为用户在网络中找寻适合自己的商品和服务、商品决策者有针对性的提高网络购物中的服务水平有效地提供了帮助,具有较高的预测准确度。
参考文献
1.黄萱菁,赵军.中文文本情感倾向性分析[J].中国计算机学会通讯,2008,4(2):41-46.
本领域技术人员可以理解附图只是一个优选实施例的示意图,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。