上周已经实现了对于用户面部表情的捕捉,并对用户的情绪进行了分析.队友通过情绪分析给出了用户对当前文章的评分.这周则根据以情绪为基础评分的文章评价进行推荐.
1.初始数据
首先我们得到的数据有用户阅读完一篇文章后,对该文章的评价,这个评价是一个综合评价分值,由之前队友的工作完成.所以最终的数据形式应该是一个用户-文章评分的矩阵.因此根据用户-评价矩阵,我决定采用基于用户的协同过滤推荐算法.通过寻找与目标用户具有相似评分的邻居用户,通过查找邻居用户喜欢的项目,推测目标用户也具有相同的喜好。
2.算法思想
基于用户的协同过滤推荐算法基本思想是:根据用户-文章评分矩阵查找当前用户的最近邻居,利用最近邻居的评分来预测当前用户对项目的预测值,将评分最高的N个项目推荐给用户.其算法流程图如下图1所示
为什么采用基于用户的推荐而不是基于内容,因为基于用户的协同过滤推荐算法可以帮助用户发现新的商品,带来惊喜.我们需要的更多是内容的新颖,而对于复杂的在线计算和用户问题,都是可以接受的.
3.具体步骤
基于用户的协同过滤推荐算法实现步骤为:
1).实时统计user对item的打分,从而生成user-item表
2).计算各个user之间的相似度,从而生成user-user的得分表,并进行排序;
3).对每一user的item集合排序;
4).针对预推荐的user,在user-user的得分表中选择与