memory_based OCCF

1 介绍&数据预处理

1.1 根据已有的用户对item的评分, 来推荐下一个时间用户可能喜欢的items。

memory_based OCCF

1.2 Pre-processing

只保存用户对item的评分为4 或者 5 的, 将这一类统一设置为1 , 其他所有的评分为1 2 3的或者unobserved全部设置为0

2 相似度计算

因为这是基于记忆力的单行为协同过滤, 所以需要计算用户和用户之间的similarity, 以及item和item之间的similarity,。

2.1 Jaccard相似度

memory_based OCCF>这个很好理解, 两个用户(或item)的并集的size除以两个用户(或item)交集的size

2.2 Cosine 相似度

memory_based OCCF>cosine相似度是将用户对item的评分当作一个向量, 然后求两个向量的夹角来评价两个向量的相似度

3 Prediction Rule

3.1 基于用户

memory_based OCCF

ps:这里我们只对在数据预处理之后被设置为0的进行预测, 被设置为1的已经进行高评分了,这里不进行预测

上式表示的意思是,当想要对用户u , item j进行预测时 , 取对J评分过的所有用户, 在这些用户中选取topk个和用户U最相似的。这么处理的直观意思是如果对item J评分过的用户和用户U相似度很高的话, 那么用户U对item J高评分的概率也很大。

2.3 基于item

memory_based OCCF

3 评价指标

memory_based OCCF

从用户U的 r u i p r e {r_{ui}}^{pre} rui​pre中选择topk个items , 和预测集进行比较(取交集), 这样来判断预测中了几个items
数据集使用ml100 k

上一篇:网易云课堂_C++程序设计入门(下)_第7单元:出入虽同趣,所向各有宜 – 文件输入和输出_第7单元 - 作业2:编程互评


下一篇:Rust-线程:使用消息传递在线程间传送数据