基于机器学习方法的电影推荐系统
文件列表(压缩包大小 150.25K)
免费
概述
用简单地方式表述一下设计思路,
后端服务recsys_web依赖于系统数据库的推荐表‘recmovie’展示给用户推荐内容
用户对电影打分后(暂时没有对点击动作进行响应),后台应用会向mqlog表插入一条数据(消息)。
新用户注册,系统会插入mqlog中一条新用户注册消息
新电影添加,系统会插入mqlog中一条新电影添加消息
推荐模块recsys_core会拉取用户的打分消息,并且并行的做以下操作:
a.增量的更新训练样本
b.快速(因服务器比较卡,目前设定了延时)对用户行为进行基于内容推荐的召回
c.训练样本更新模型
d.使用FM,LR模型对Item based所召回的数据进行精排
e.处理新用户注册消息,监听到用户注册消息后,对该用户的属性初始化(统计值)。
f.处理新电影添加消息,更新基于内容相似度而生成的相似度矩阵
注:
增量的处理用户comment,即增量处理评分模块
这个模块负责监听来自mqlog的消息,如果消息类型是用户的新的comment,则对消息进行拉取,并相应的把新的comment合并到总的训练样本集合,并保存到一个临时目录 然后更新数据库的config表,把最新的样本集合(csv格式)的路径更新上去
运行截图
消息队列的截图
把csv处理为libsvm数据
这个模块负责把最新的csv文件,异步的处理成libSVM格式的数据,以供libFM和LR模型使用,根据系统的性能确定任务的间隔时间
运行截图
基于内容相似度推荐
当监听到用户有新的comment时,该模块将进行基于内容相似度的推荐,并按照电影评分推荐
运行截图
libFM预测
对已有的基于内容推荐召回的电影进行模型预测打分,呈现时按照打分排序
如下图为打分更新
逻辑回归预测
对样本集中的打分做0,1处理,根据正负样本平衡,> 3分为喜欢 即1, <=3 为0 即不喜欢,这样使用逻辑回归做是否喜欢的点击概率预估,根据概率排序
如果遇到文件不能下载或其他产品问题,请添加管理员微信:ligongku001,并备注:产品反馈