首发于 腾讯技术
推荐系统之矩阵分解模型-原理篇

推荐系统之矩阵分解模型-原理篇

作者:zhongzhao,腾讯 PCG 应用研究员

上一篇我们用一个简单的例子讲述了矩阵分解(Matrix Factorization, MF)是如何做推荐的,但没有深入到算法的细节。如果想编写自己的代码实现MF,那么就需要了解其中的细节了。本文是MF系列的第二篇文章,主要介绍了显式矩阵分解和隐式矩阵分解的数学原理,包括模型思想、目标函数、优化求解的公式推导等,旨在为需要了解算法细节的同学提供参考。

​本系列文章一共有三篇,分别是

第二篇(本文)讲的是MF的数学原理,包括MF模型的目标函数和求解公式的推导等。第三篇将会回归现实,讲述MF算法在图文推荐中的应用实践。

1.显式数据和隐式数据

MF用到的用户行为数据分为显式数据和隐式数据两种。显式数据是指用户对item的显式打分,比如用户对电影、商品的评分,通常有5分制和10分制。隐式数据是指用户对item的浏览、点击、购买、收藏、点赞、评论、分享等数据,其特点是用户没有显式地给item打分,用户对item的感兴趣程度都体现在他对item的浏览、点击、购买、收藏、点赞、评论、分享等行为的强度上。

显式数据的优点是行为的置信度高,因为是用户明确给出的打分,所以真实反映了用户对item的喜欢程度。缺点是这种数据的量太小,因为绝大部分用户都不会去给item评分,这就导致数据非常稀疏,同时这部分评分也仅代表了小部分用户的兴趣,可能会导致数据有偏。隐式数据的优点是容易获取,数据量很大。因为几乎所有用户都会有浏览、点击等行为,所以数据量大,几乎覆盖所有用户,不会导致数据有偏。其缺点是置信度不如显式数据的高,比如浏览不一定代表感兴趣,还要看强度,经常浏览同一类东西才能以较高置信度认为用户感兴趣。

根据所使用的数据是显式数据还是隐式数据,矩阵分解算法又分为两种[4,6]。使用显式数据的矩阵分解算法称为显式矩阵分解算法,使用隐式数据的矩阵分解算法称为隐式矩阵分解算法。由于矩阵分解算法有众多的改进版本和各种变体[4,5,6,7,8,9,10,11],本文不打算一一列举,因此下文将以实践中用得最多的矩阵分解算法为例,介绍其具体的数据原理,这也是spark机器学习库mllib中实现的矩阵分解算法[4,6]。从实际应用的效果来看,隐式矩阵分解的效果一般会更好。

2.显式矩阵分解

在本系列第一篇文章中,我们提到,矩阵分解算法的输入是user对item的评分矩阵(图1等号左边的矩阵),输出是User矩阵和Item矩阵(图1等号右边的矩阵),其中User矩阵的每一行代表一个用户向量,Item矩阵的每一列代表一个item的向量。User对item的预测评分用它们的向量内积来表示,通过最小化预测评分和实际评分的差异来学习User矩阵和Item矩阵。

图1

2.1 目标函数

为了用数学的语言定量表示上述思想,我们先引入一些符号。设r_{ui}表示用户u对物品i的显式评分,当r_{ui}>0时,表示用户u对物品i有评分,当r_{ui}=0时,表示用户u对物品i没有评分,x_u表示用户u的向量,y_i表示物品i的向量,则显式矩阵分解的目标函数为:

\underset{X,Y}{min}\sum_{r_{ui}\neq0}\left(r_{ui}-x_u^Ty_i\right)^2+\lambda\left(\sum_u||x_u||_2^2+\sum_i||y_i||_2^2\right) \\

其中x_uy_i都是k维的列向量,k为隐变量的个数,X=\left[x_1, x_2, \cdots, x_N\right]是所有x_u构成的矩阵,Y=\left[y_1, y_2, \cdots, y_M\right]为所有y_i构成的矩阵,N为用户总数,M为物品总数,\lambda为正则化参数。

在上述公式中,x_u^Ty_i为用户向量与物品向量的内积,表示用

PHP网站源码漯河网站推广方案价格横岗外贸网站建设价格黄冈网站优化排名价格滨州优化哪家好眉山营销网站报价商丘网站优化推广哪家好枣庄外贸网站制作多少钱沈阳企业网站建设推荐连云港seo排名价格厦门模板推广公司晋中网络广告推广多少钱温州至尊标王哪家好安康关键词按天扣费哪家好景德镇外贸网站制作贵阳推广网站哪家好舟山营销网站推荐安庆模板推广公司汕头网络广告推广报价丹竹头如何制作网站哪家好大连阿里店铺运营报价重庆seo排名桐城阿里店铺运营多少钱钦州seo公司南平网站优化推广哪家好塔城SEO按天收费报价丽水网站建设设计报价漯河网站改版公司布吉至尊标王哪家好丹东网站排名优化哪家好抚州营销网站歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化