[0023] 本发明所提供的基于评论情感分析和协同过滤的评分预测方法的具体实施方式主要分3步(如图1所示):
[0024] (1)评论文本预处理阶段,包括评论分句、语句分词、停用词删除、过长语句删除和词干提取;(2)训练阶段,首先进行参数初始化,将所有参数赋予初值,然后训练参数,使用L-BFGS优化损失函数,再通过一系列参数转换计算评论语料的似然重新采样每个语句的方面和情感标签,两者交替进行直至收敛;(3)预测阶段,利用训练获得的评分预测参数为每组用户项目预测评分。
[0025] 为叙述方便,定义相关符号如下:
[0026] N:用户数。
[0027] M:项目数。
[0028] T:评分范围。
[0029] 用户u对项目v的预测评分。
[0030] μ:全局偏置。
[0031] bu:用户u偏置。
[0032] bv:项目v偏置。
[0033] pu:用户u的潜在因子向量。
[0034] qv:项目v的潜在因子向量。
[0035] D:文档数。
[0036] G:语句数。
[0037] W:单词数。
[0038] K:方面数、潜在因子数。
[0039] π:情感多项分布。
[0040] θ:方面多项分布。
[0041] 单词多项分布。
[0042] ψ:方面单词向量。
[0043] βs:的狄利克雷先验参数(对于情感s)。
[0044] wd,i,j:文档d第i个句子的第j个单词。
[0045] ed,i:文档d第i个句子的情感标签。
[0046] zd,i:文档d第i个句子的方面分配。
[0047] (1)评论文本预处理
[0048] 依次对训练集中的每一条评论进行文本预处理(如图2所示),首先,使用Punkt语句分割器将文本分句,再将每个句子分词,然后移除所有停用词和长度超过50的句子,最后使用Porter词干提取算法提取所有单词的词干。
[0049] (2)参数训练
[0050] 对原始数据进行预处理之后,进行参数的训练(如图3所示)。首先初始化所有参数,包括全局偏置μ、用户偏置bu、项目偏置bv、用户潜在因子向量pu、项目潜在因子向量qv、方面单词向量ψ、潜在因子到方面分布转换峰度系数 评分到情感分布的转换平滑系数ω,并随机分配句子的方面和情感标签e,z。
[0051] 然后使用L-BFGS最优化算法最小化损失函数,损失函数定义为:
[0052]
[0053] Θ={μ,bu,bv,pu,qv}为潜在因子模型参数集, 为方面情感统一模型参数集, 为控制转换的峰度系数,ω为控制转换的平滑系数,e和z分别为语句的情感和方面标签。等式右边的 为训练集中所有预测评分与真实评分的均方误差, 为评论语料的对数似然,λ为平衡两个部分的超参数。评论语料的对数似然定义为:
[0054]
[0055] 经过优化后得到新的参数集合Θ,ψ, ω,并通过转换将项目潜在因子向量qv转换为不同情感下的方面分布 其定义为:
[0056]
[0057]
[0058] e∈{+,-},+表示正面情感,-表示负面情感。
[0059] 以及通过转换将项目平均评分 映射为正面情感概率 其定义为:
[0060]
[0061] 负面情感概率计算为
[0062] 以及通过转换将方面单词向量ψ转换为方面单词分布 其定义为:
[0063]
[0064] 在得到方面情感统一模型的参数集 之后,重新采样所有语句的情感标签e和方面标签z。采样的概率由下式计算:
[0065]
[0066] 采样完所有语句的情感标签e和方面标签z之后,再使用L-BFGS算法重新优化损失函数,如此反复直至损失函数值不在下降。
[0067] (3)评分预测
[0068] 得到优化后的参数全局偏置μ、用户偏置bu、项目偏置bv、用户潜在因子向量pu和项目潜在因子向量qv,使用下式预测用户u对项目v的评分:
[0069]
[0070] 本发明可用于电子商务网站的稀疏环境推荐系统中,以产生较为精确的个性化推荐。