推荐系统review

最基本的RS问题就是基于rating的,其他的信息加入使问题变得复杂。

content-based method

content-based method 的想法很简单,就是——用户将买的物品应该与他过去买过的东西相似 。
所以这种想法的核心就在于如何得到物品的特征向量和他们之间相似度。
但是对于cold-start呢?这样的物品挑选出来也许本来就是用户会买的,推荐到底有没有价值呢?
最重要的是这种方法只需要表达物品,更多的难度在于自然语言处理和content的抽取,在评论和标签的系统里,topic-model可以预见是一个很好的而选择。

collaberative filter

model-based

提取出用户和物品的特征向量,将用户对物品的评分简化为一个简单的回归模型,那么问题来了,怎么表示用户和物品呢?
非负矩阵分解成为了一个典型的选项。分解的方式应该是与回归模型相关的,简单的SVD分解对应于线性加权模型是有道理的。

neighbor-based

简单的想法:和我相似的人喜欢的我会喜欢,和我喜欢的相似的我会喜欢。可以分为item-based和user-based。
和上文一样,如何表达用户与物品的特征是真正的核心问题。
但是我想这种情况下特征的选择是与相似度的选择紧密相关的,我们可以换一个说法,特征的选择或许没有成文的规则,只要相似度能反映出真实的问题。

graph-based

这是一种很有意思的想法,其实我个人觉得它们是想放弃显式或者说简单地去表达用户或者物品。把它们均放在一张图,random-walker也许会有一些好的效果,但是问题在于这是一张有向图,而且作为物品的节点是没有出度的。

####How to evaluate the RS
| | Recommend | Unrecommend |
| :——– | ——–:| :–: |
| Used | TP | FN |
| not Used | FP | TN |
PR-curve 是个不错的度量
评价的指标很多,选取一些列在下面
– prediction
– confidence
– novelty
– scability
– robustness

supplement information

不再只从rating中获得信息,而是结合其他信息来综合表达用户与物品,几乎所有方案都选用了时间因素,用户的特征可以看做是时间的函数。
另外,标签,个人信息,评论,社交关系等等为我们提供了关于用户和物品的其他的信息来源,从而组合成了一个个不同领域的推荐系统问题.
其中有根据用户对推荐结果进行反馈信息来补充的

    原文作者:suemi
    原文地址: https://segmentfault.com/a/1190000002405762
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞