- 构建企业级推荐系统:算法、工程实现与案例分析
- 刘强
- 456字
- 2021-08-06 14:59:59
6.4.2 增加更多的用户信息输入
由于用户一般只对很少的标的物评分,导致评分过少,可能无法给该用户做出较好的推荐,这时可以通过引入更多的信息来缓解评分过少的问题。具体来说,我们可以整合用户隐式反馈(收藏、点赞、分享等)和用户人口统计学信息(年龄、性别、地域、收入等)到矩阵分解模型中。
对于隐式反馈信息,我们用I(u)来表示用户有过隐式反馈的标的物集合。,
是用户对标的物v的隐式反馈的嵌入特征向量(这里为了简单起见,不区分用户的各种隐式反馈,只要用户做了一次隐式反馈,就认为有隐式反馈,即采用布尔代数的方式来处理隐式反馈)。那么对用户所有的隐式反馈I(u),累计的特征贡献为
![](https://epubservercos.yuewen.com/2D1332/20784355001359006/epubprivate/OEBPS/Images/107-i.jpg?sign=1739506938-t9HeYBr5geG5qc8KE7547KoswHSFINZW-0-8cd3be02ffe56631f1c45c321bd6a87c)
我们可以对上式进行如下归一化处理
![](https://epubservercos.yuewen.com/2D1332/20784355001359006/epubprivate/OEBPS/Images/107-2-i.jpg?sign=1739506938-p1wSxypHxqN6NxLDBKvQNVsEzobS1p79-0-7daf54e74dfa6701b6307a44e4730ae2)
对于用户人口统计学信息,假设S(u)是用户的所有人口统计学属性构成的集合,则,是属性a在嵌入特征向量空间的表示。那么用户u所有的人口统计学信息可以综合表示为
![](https://epubservercos.yuewen.com/2D1332/20784355001359006/epubprivate/OEBPS/Images/107-3-i.jpg?sign=1739506938-DIcMfJuEOcyMsaZbV8A8TpRvukbxZfhS-0-85134d6c2ad0c1772f2ee1c27fd1eed1)
最终整合了用户隐式反馈和人口统计学信息后(包括偏差项)的用户预测公式可以表示为:
![](https://epubservercos.yuewen.com/2D1332/20784355001359006/epubprivate/OEBPS/Images/107-4-i.jpg?sign=1739506938-n0E1P3kBCzRbeRoJ8K8qGmfHsMMFmSkA-0-509a98234f0ca44dda104284e0ffd028)
同样,我们可以写出最终的优化目标函数。由于公式太长,这里不写出来了。该模型也可以用SGD和ALS算法来求解。