项目简介
本项目借助C++和Python语言,运用多种推荐算法(SVD、SVD++、ItemCF和UserCF)对用户行为数据展开分析与预测,以提供个性化推荐服务。此项目由Fasheng Miao、Wenbin Xu和Yuxuan Li共同完成,在课程中取得了94分的优异成绩。
项目的主要特性和功能
- 多种推荐算法实现
- SVD(奇异值分解):利用矩阵分解技术预测用户对物品的评分。
- SVD++:在SVD基础上增加用户隐式反馈信息,提升预测精度。
- ItemCF(基于物品的协同过滤):依据物品间的相似度进行推荐。
- UserCF(基于用户的协同过滤):根据用户间的相似度进行推荐。
- 数据分析与预处理
- 读取并处理用户评分数据,计算用户和物品的统计信息。
- 生成包含物品评分次数的长尾数据文件,用于后续分析。
- 模型训练与预测
- 用训练数据训练推荐模型,通过测试数据进行预测。
- 计算预测结果的RMSE(均方根误差),评估模型性能。
- 图形化展示
- 运用Python的matplotlib库绘制数据分析结果和模型性能图表。
安装使用步骤
- 环境准备
- 确保系统安装了C++编译器(如GCC或MSVC)和Python 3.x。
- 安装Python依赖库:
pip install matplotlib
。
- 编译C++代码
- 进入项目源代码目录,使用C++编译器编译所有C++源文件。示例命令:
bash g++ -o main main.cpp SVD.cpp DataAnalyser.cpp -std=c++11
- 进入项目源代码目录,使用C++编译器编译所有C++源文件。示例命令:
- 运行程序
- 执行编译后的可执行文件,程序会自动读取训练和测试数据,进行模型训练和预测,并将结果输出到指定文件。
- 运行Python脚本
drawPic.py
,生成并查看数据分析和模型性能图表。
- 查看结果
- 打开生成的文本文件(如
result.txt
)查看预测结果。 - 查看生成的图表,分析数据分布和模型性能。
- 打开生成的文本文件(如
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】