2. 哈尔滨师范大学 数学科学学院,黑龙江 哈尔滨 150025
2. Mathematics Science College, Harbin Normal University, Harbin 150025, China
随着电子商务应用发展,互联网资源数量增长迅速. 如何根据用户偏好,从海量互联网资源中找到用户需求的资源并推荐给用户,已成为推荐系统迫切需要解决的问题[1]. 推荐算法虽然不断被改进,但仍然存在着一些缺陷. 其中“冷启动”和“可解析性”是当前推荐系统的两大难题. 如对于新加入用户,系统缺少历史数据难于学习该用户的喜好,因而不能准确推荐相应物品给该用户;类似地,对于新加入物品,同样存在冷启动问题;而“可解释性”问题是指目前一些推荐算法的推荐结果可解释性差,导致很难了解用户喜欢该商品的真实原因.
对亚马逊在线商城的调查发现[2]:超过80%的商品仅有少数评分信息(数据稀疏),但超过70%的商品存在至少30字以上的评论信息. 其实,评论信息往往能够提供商品信息和用户喜好,可用于弥补评分信息的不足. 挖掘并有效应用潜在评论信息,是缓解冷启动和可解释性问题的关键.
1 相关工作推荐系统可分为两类:基于内容的推荐系统[3]和协同过滤推荐系统[4]. 前者通过匹配用户喜欢和商品特征来推荐商品,商品特征可通过商品属性表述,而用户偏好可通过分析用户的历史行为得到;协同过滤通过分析用户物品的共现模式来推荐,通常依赖于评分信息. 目前已有大量关于协同过滤的研究,包括基于邻域方法[5]、模型方法[6]和大数据背景下的协同过滤[7];近年来,一些研究集中在对推荐商品的排序上[8],另一些研究利用社交网络信息[9-10]和边缘信息[11]探讨提高推荐的效果.
冷启动指用户评分记录少,推荐系统无法准确地为用户提供推荐信息. 当前处理冷启动问题主要有两个方法,一是利用用户注册信息[12],二是利用物品的内容属性[13]. 两个方法都将耗费大量人力,需要制定标签,但仍不能取得较好的效果.
对于可解释性问题[14],除展示推荐结果外,推荐系统往往需要给出推荐理由,说明推荐原因. 为此,学术界和产业界都进行了许多研究,例如亚马逊电子商务网站给出了“购买了该产品的用户也购买了……”[15]等简单推荐理由;社交网站的推荐系统则有形如“你的好友也查看了该内容”等描述[16];然而,过于简单的推荐理由描述很难为用户提供个性化解释,这减少了用户对推荐结果的信任. 文献[17]将评论信息和评分信息结合研究推荐系统,探讨社交媒体的推荐问题;文献[18]通过从评论信息中提取社交情感,并与评分信息结合来研究推荐问题,在推荐中引入了情感分析,相比仅用评分信息的推荐,其准确性更好.
采用融合评论信息和评分信息的HFT模型[19],可以仅用少数用户评论即可获得用户偏好信息,较好地缓解了冷启动问题;另外,由于HFT模型将主题模型和矩阵分解模型结合,并按维度进行了对齐和解释,因而,使解释结果也具有较强的可靠性.
本文的主要工作是通过引入自由向量,改进了HFT模型,实现部分评分信息与评论信息的维度不对齐,以此进一步提高模型的准确度.
2 结合评分和评论信息的推荐模型McAuley和Leskovec提出的HFT模型通过关联潜在评分维度和潜在评论主题提升了推荐系统的准确度. 当维度大于10时,HFT模型误差会增长,但与传统的潜在因子模型相比,HFT模型的准确度仍有显著提高.
本文通过引入变量(本文中称之为自由向量)来改进HFT模型,使其在维度大于10时,进一步提升模型的准确度.
2.1 潜在因子模型标准潜在因子协同过滤模型[20]计算公式如(1)式所示,式(2)为约束条件.
| ${\rm{rec}}(u,i) = \alpha + \mathit{\boldsymbol{\beta }}_u + \mathit{\boldsymbol{\beta }}_i + \mathit{\boldsymbol{r}}_u \cdot \mathit{\boldsymbol{r}}_i .$ | (1) |
| ${\rm{argmin}}\sum\limits_{\mathit{\boldsymbol{r}}_{u,i} } {({\rm{rec}}(u,i) - \mathit{\boldsymbol{r}}_{u,i} ){}^2} + \lambda \varOmega (\varTheta ).$ | (2) |
其中,rec(u, i)表示用户u对物品i的评分;α是全局偏置参数,表示训练数据的总体评分情况,对于预定数据集,a是一个常数;βu和βi为用户和物品的偏置参数,用户偏置参数独立于物品特征,表示某一特定用户的打分习惯. 例如,批判性用户一般评分比较苛刻,倾向于打低分;而乐观型用户则打分比较开明,总体评分偏高;物品偏置参数独立于用户兴趣,表示某一特定物品得到的评分情况. 以电影评分为例,好片获得的评分总体偏高,而差片获得的评分则偏低;ru和ri分别为K维的用户和物品向量,ri是描述物品i的属性向量;而ru是描述用户u的偏好属性向量;ru与ri的点积代表了用户u对物品i的具体评分,当ru与ri夹角越小,代表用户u对物品i的喜欢程度越高;模型将根据用户和物品的数量,单独为每一个用户和物品建立不同的向量;式(2)是约束条件,它根据已知评分矩阵计算用户潜在因子向量和物品潜在因子向量,其中ru,i表示用户u对记录i的实际评分, 优化函数为最小化带正则的均方误差; 其中Ω(Θ)是正则项,用来惩罚复杂模型,比如常用L2正则, L2范数是指向量各元素的平方和之开平方根,L2范数可以防止过拟合,提升模型泛化能力;λ为权重因子;Θ代表所有目标函数中需要优化的参数.
2.2 潜在狄利克雷分布LDA(Latent Dirichlet Allocation)[21]被用来挖掘在评论文本中的潜在主题,其中主题是一个在词上的分布,对于不同主题,词分布不同. 文档集的目标函数为以下似然函数:
| $l(\tau {\rm{|}}\theta ,\phi ,z) = \prod\limits_{d \in \tau } {\prod\limits_{j = l}^{{N_d}} {{\mathit{\boldsymbol{\theta }}_{{Z_{d,j}}}}} } {\mathit{\boldsymbol{\varphi}}_{{Z_{d,j}},{\omega _{d,j}}}}.$ | (3) |
其中,LDA通过关联每一篇文档d为一个K维主题分布,即式子中的参数
最后训练出来的LDA模型包括每一个主题的词分布
基于潜在因子模型和潜在狄利克雷分布及其模型融合,本文将自由向量引入HFT模型,进一步改进了HFT模型.
主题模型是在文档上进行的操作,首先定义模型的文档概念.
定义1 物品i的所有评论定义为该物品的文档.
定义文档后,对于每一个物品i,通过学习可以得到一个关于物品i的主题分布
算法要求同时学习到评分参数ri和主题向量
在HFT模型中,转换函数如下[19]:
| ${\mathit{\boldsymbol{\theta }}_{i,k}} = \frac{{{\rm{exp}}(\kappa {{\mathit{\boldsymbol{r}}}_{i,k}})}}{{\sum_{K'} {{\rm{exp}}(\kappa {{\mathit{\boldsymbol{r}}}_{i,k}})} }}.$ | (4) |
其中,转换函数为单调函数,这使得主题向量保持了随机向量的特点,同时使得物品属性ri,k和θi,k具有一致趋势,式(4)中κ为转换函数的重要因子,k为向量的某一维度.
改进的HFT模型(Improved-Hidden Factors and Topics, 简称I-HFT)融合了评分信息和评论信息,自由向量的应用使模型能学习到更丰富的内容. 例如,评论中用户会涉及商品属性,以及购买商品的原因、商品价格,以及商品功能、性能等. 主题模型将把商品的内容编码到主题向量中,并且使物品属性向量具有和主题向量同样趋势的值. 假如主题向量第一维度的值比第二维度的值高,则算法学习到的物品属性向量维度也和主题向量具有一样的趋势之值. HFT模型的目标函数如下:
| $f = \sum\limits_{{\mathit{\boldsymbol{r}}_{u,i}} \in \tau } {{{\left( {{\rm{rec}}\left( {u,i} \right) - {\mathit{\boldsymbol{r}}_{u,i}}} \right)}^{\rm{2}}} - \mu l} \left( {\tau {\rm{|}}{\mathit{\boldsymbol{\theta}}} ,{\mathit{\boldsymbol{\varphi}}} ,Z} \right).$ | (5) |
其中,rec(u, i)与公式(1)一致;HFT模型的一个不足是当维数大于10时,模型的准确度有所降低;而I-HFT模型能够在一定程度上缓解HFT模型高维准确度变低的情况.
HFT模型的维度设置限于10,这是由于HFT模型的物品属性向量受限于主题向量变化(由于转化函数的存在). 推荐系统中有许多因素影响用户对商品的评分,但由于HFT模型的主题向量只能从评论信息中通过学习得到,而可供HFT模型学习的因素仅限于少数几部分,学习到的因素仅限于有评论信息的几个部分. 因此主题模型只能学习到有评论的商品属性信息.
本文引入自由向量,它是对原HFT模型的一个扩充,在原有模型基础上,增加了用户自由向量vu与物品自由向量vi,给出了改进的HFT模型I-HFT,如式(6)所示.
| ${\rm{rec}}\left( {u,i} \right){\rm{ }} = \alpha + {{\mathit{\boldsymbol{\beta}}} _u} + {\rm{ }}{{\mathit{\boldsymbol{r}}}_u} \cdot {{\mathit{\boldsymbol{r}}}_i} + {\rm{ }}c{\rm{ }}{{\mathit{\boldsymbol{v}}}_u} \cdot {{\mathit{\boldsymbol{v}}}_i}.$ | (6) |
其中,c为权重因子,用来平衡新增部分νu·νi和原HFT模型的关系;向量vu和vi的维度与向量ru和ri的维度无关.
相比原HFT模型,增加了用户对物品的部分辅助信息,由于本文的模型提供了更多的有效信息,因而有更好的准确性与可解析性,尤其是在冷启动(信息比较缺乏)情况下,本模型能够提供更多的信息.
图1为本文提出的I-HFT模型的结构图,模型在矩阵分解部分引入了自由向量,自由向量和主题向量没有联系,并且自由向量可以学习到主题向量学习时遗漏的一些副主题,因而,I-HFT模型通过增加自由向量可提高模型的准确度.
|
图 1 I-HFT模型 Figure 1 I-HFT model |
I-HFT模型的目标函数如式(5)所示,模型的训练目标是同时优化所有参数,包括矩阵分解参数和LDA参数. 矩阵分解可通过梯度下降进行参数学习,LDA使用Gibbs采样进行学习. 参数学习过程是两个方法来回反复迭代,其步骤如下:
(1) 随机初始化所有参数,保证模型的参数不能全部初始化为零;
(2) 将模型中的超参数设为定值;
(3) 使用梯度下降算法优化矩阵分解参数,再保持矩阵分解参数不变;
(4) 对LDA进行Gibbs采样;
(5) 当达到预设迭代次数或训练误差变化小于预设值时,停机;否则,转(3)执行.
完成上述参数训练后,在一组预设超参数下,模型可求得最优解. 但为了提高模型的准确度,需要调整超参数的设置值,本文使用grid search方法来确定超参数值,并使用交叉验证方法,最后得到准确度高的超参数以及该超参数的取值. 参数学习过程如图2所示.
|
图 2 参数学习流程图 Figure 2 The flow chart of parameter learning procedure |
为验证本文方法的有效性,对4个模型进行了比较实验,包括仅有偏置项的全局偏置推荐系统、潜在因子模型、HFT模型以及I-HFT模型.
3.1 实验数据与评价指标、流程实验数据来自Mcauley Julian教授所采集的亚马逊数据集[23],数据中有大约3 500万评论信息. 同时收集到的商品数据被分为26个类别(书籍类、电影类等).
3.2 评价指标使用均方误差(MSE)作为实验结果的衡量指标. 其定义为各测量值误差平方和的平均值的平方根. 计算公式如式(7)所示:
| $\sigma = \sqrt {\frac{{\varepsilon _{\rm{1}}^{\rm{2}} + \varepsilon _{{\rm{21}}}^{\rm{2}} + \cdots + \varepsilon _\nu ^{\rm{2}}}}{\nu }} = \sqrt {\frac{{\sum {\varepsilon _\iota ^{\rm{2}}} }}{\nu }} .$ | (7) |
首先将数据集划分为训练集、验证集和测试集. 随机选取80%的数据作为训练集,验证集取10%的数据,测试集取剩余10%的数据.
评价流程如下:
(1) 随机初始化模型参数,保证模型的参数不能全部初始化为零;
(2) 应用随机梯度下降优化算法分解参数;
(3) 使用网格搜索法重设超参数;
(4) 计算MSE;
(5) 当满足终止条件时,以最小MSE值作为输出;否则,转(2)执行.
3.4 实验结果先定义基准模型,再来比较模型的准确度,通过交叉验证得出维度设置为15时,效果最佳.
只用全局偏置项:对应于式(1)中的α项,这个模型不需要任何训练过程,只需求出全局平均评分,然后就用全局平均评分来预测.
潜在因子模型:该模型为式(1)所定义的模型,也是近年来非常流行的模型.
HFT模型是一个融合评论信息和评分信息的模型.
本文提出的I-HFT模型.
实验选取了其中两个类别的数据(音乐和游戏商品类目),其中音乐类目包括64 706条评论信息和836 006条评分信息;而游戏类目包括231 780条评论信息和1 324 753条评分信息. 模型均使用交叉验证进行了模型选择,调到最优模型. 评价指标使用均方误差(MSE),误差越大则准确度越低.
表1为各模型的误差比较,从表1可以看出在两个数据集上,本文提出的I-HFT模型均比HFT模型误差低,准确度则比后者高.
| 表 1 模型误差比较 Table 1 The comparison of model error |
HFT模型存在均方误差与维数成正比的关系,当维数大时,均方误差增大. 本文提出的I-HFT模型有效地缓解了随着维度上升HFT均方误差变大的问题.
第二个实验,测试了3个模型(潜在因子模型、HFT模型以及I-HFT模型). 使用数字音乐数据集,设置了10、20和50三种维度. I-HFT模型的自由向量通过交叉验证在10、20和50维度下,最优的维数设置分别6、8和24. 自由向量维数越大,表明自由向量作为对评论信息的补充越重要. 实验结果如表2所示.
| 表 2 不同维度下不同模型误差比较表 Table 2 The error comparison between different model and different dimension |
表2为不同维度下,各模型在实验中使用的评价指标为均方误差.由表2可知在每一个维度下,I-HFT模型的均方误差(MSE)都比HFT模型更低,而准确度都比HFT模型高.
相比于传统的潜在因子模型,I-HFT模型有较低的均方误差,也即模型有高的准确率. 并且I-HFT模型能够有效缓解HFT模型在维度上升时误差变大的问题.
虽然评分信息对于提高推荐系统的准确率很重要,而融合了评论信息的HFT模型比仅使用评分信息的经典潜在因子模型准确度更高. 但是现有模型尚未使用所有评论信息,因而,本文引入自由向量来捕获现有模型尚未使用的评论信息,由此获得了比HFT模型更高的准确度.
4 结束语本文通过引入自由向量,提出了I-HFT模型,使得与HFT模型相比,准确度得到了进一步提升;并且I-HFT模型保持了HFT模型原有的对冷启动和可解释性问题有效处理的优点. 本文是探讨融合评分信息和评论信息的推荐系统的一个阶段性研究成果,为以后进一步研究推荐系统提供帮助. 未来将继续研究在评论信息匮乏的情况下,如何应用自由向量提高推荐系统的精度.
| [1] |
杜汉昌, 丁磊, 冯永晋. 面向零售业的大数据商业智能系统研究[J].
广东工业大学学报, 2014, 31(4): 41-45.
DU H C, DING L, FENG Y J. Research on business intelligence system with the big data for retail industry[J]. Journal of Guangdong University of Technology, 2014, 31(4): 41-45. |
| [2] | LINDEN G, SMITH B, YORK J. Amazon. com Recommendations: Item-to-Item Collaborative Filtering[J]. IEEE Internet Computing, 2003, 7(1): 76-80. DOI: 10.1109/MIC.2003.1167344. |
| [3] | PAZZANI M J, BILLSUS D. Content-based recommendation systems[M]. Berlin: Springer-Verlag, 2007. |
| [4] |
滕少华, 麦嘉俊, 张巍, 等. 一种基于混合相似度的用户多兴趣推荐算法[J].
江西师范大学学报, 2016, 40(5): 481-486.
TENG S H, MAI J J, ZHANG W, et al. User multi-faced interests recommendation algorithm based on hybrid similarity[J]. Journal of Jiangxi Normal University (Natural Science), 2016, 40(5): 481-486. |
| [5] |
李聪, 梁昌勇, 马丽. 基于领域最近邻的协同过滤推荐算法[J].
计算机研究与发展, 2008, 45(9): 1532-1538.
LI C, LIANG C Y, MA L. A collaborative filtering recommendation algorithm based on domain nearest neighbor[J]. Journal of Computer Research and Development, 2008, 45(9): 1532-1538. |
| [6] | AGGARWAL C C. Model-based collaborative filtering[M]. AGGARWAL C C. Recommender System. Berlin: Springer, 2016. |
| [7] |
汪岭, 傅秀芬, 王晓牡. 基于大数据集的混合动态协同过滤算法研究[J].
广东工业大学学报, 2014, 31(3): 44-48.
WANG L, FU X F, WANG X M. Hybrid dynamic collaborative filtering algorithm based on big data sets[J]. Journal of Guangdong University of Technology, 2014, 31(3): 44-48. |
| [8] | SHI Y, LARSON M, HANJALIC A. Reranking collaborative filtering with multiple self-contained modalities[C]//European Conference on Advances in Information Retrieval.[S.I.]: Springer-Verlag, 2011: 699-703 |
| [9] |
张巍, 金国跃, 滕璐瑶, 等. E-CARGO模型在线社会网络研究团队机制[J].
小型微型计算机系统, 2015, 36(12): 2662-2666.
ZHANG W, JIN G Y, TENG L Y, et al. Information recommendation of online social network based on E-CARGO model[J]. Journal of Chinese Computer Systems, 2015, 36(12): 2662-2666. DOI: 10.3969/j.issn.1000-1220.2015.12.008. |
| [10] | MA H, ZHOU D, LIU C, et al. Recommender systems with social regularization[C]//Fourth International Conference on Web Search and Web Data Mining, WSDM 2011, Hong Kong, China:[S.l.]: February. 2011:287-296. |
| [11] | GUNASEKAR S. A survey on using side information in recommendation systems[J]. Nutrition Research & Practice, 2012, 9(1): 11-6. |
| [12] | LU J, WU D, MAO M, et al. Recommender system application developments[J]. Decision Support Systems, 2015, 74(C): 12-32. |
| [13] | HWANG R H, HSUEH Y L, CHEN Y T. An effective taxi recommender system based on a spatio-temporal factor analysis model[J]. Information Sciences, 2015, 314(C): 28-40. |
| [14] | WALTER F E, BATTISON S, SCHWEItZER F. A model of a trust-based recommendation system on a social network[J]. Autonomous Agents and Multi-Agent Systems, 2008, 16(1): 57-74. DOI: 10.1007/s10458-007-9021-x. |
| [15] | CAO Y, LI Y. An intelligent fuzzy-based recommendation system for consumer electronic products[J]. Expert Systems with Applications, 2007, 33(1): 230-240. DOI: 10.1016/j.eswa.2006.04.012. |
| [16] | BERNARDI L, KAMPS J, KISELEVA J, et al. The continuous cold start problem in e-commerce recommender systems[J]. Computer Science, 2015, 92(2): 28002-28007(6). |
| [17] | MA T, ZHOU J, TANG M, et al. Social network and tag sources based augmenting collaborative recommender system[J]. Ieice Transactions on Information & Systems, 2015, 98(4): 902-910. |
| [18] | LEI X, QIAN X, ZHAO G. Rating prediction based on social sentiment from textual reviews[J]. IEEE Transactions on Multimedia, 2016, 18(9): 1-1. DOI: 10.1109/TMM.2016.2598382. |
| [19] | MCAULEY J, LESKOVEC J. Hidden factors and hidden topics: understanding rating dimensions with review text[C]//ACM Conference on Recommender Systems. Hong Kong: ACM, 2013. 165-172. |
| [20] | KOREN Y, BELL R, VOLINSKY C. Matrix factorization techniques for recommender systems[J]. IEEE, Computer Journal, 2009, 42(8): 30-37. DOI: 10.1109/MC.2009.263. |
| [21] | BLEI D M, NG A Y, JORDAN M I. Latent dirichlet allocation[J]. Journal of Machine Learning Research, 2003, 3(1): 993-1022. |
| [22] | ALAN E G. Gibbs sampling[J]. Journal of the American Statistical Association, 2000, 95(452): 1300-1304. DOI: 10.1080/01621459.2000.10474335. |
| [23] | MCAULEY J. Amazon product data[EB/OL].[2017-01-01]. http://jmcauley.ucsd.edu/data/amazon/links.html |
2017, Vol. 34

