资源简介
数据挖掘的上机实验,包括文档和代码,是用c++实现的,用于电影推荐。
本实验通过6040个用户对3952部电影的100多万条评价,利用基于网络结构的链路预测算法,使用二分法模型,将用户和产品看成抽象的节点,把用户对产品的选择关系构建成二部图,以此预测用户潜在喜爱的电影,将排序靠前的电影推荐给该用户,并预测其准确性。
代码片段和文件信息
#include
#include
#include
#include
#include
using namespace std;
double crr[6041][3953];
double crrt[3953][6041];
double drr[3953][3953];
double err[6041][3953];
int arr[6041];
int brr[3953];
//vector user[6041];
int main()
{
int a b c;
double sum x y w;
vector::iterator iter;
memset(arr 0 sizeof(arr));
memset(brr 0 sizeof(brr));
memset(crr 0 sizeof(crr));
memset(crrt 0 sizeof(crrt));
//for(int i = 0; i < 6041; i++){
// user[i].clear();
//}
FILE *fp = fopen(“ratings.txt“ “r“);
while(!feof(fp)) {
fscanf(fp “%d %d %d\n“ &a &b &c);
arr[a]++;
brr[b]++;
crrt[b][a] = 1;
if(c > 3) {
// user[a].push_back(b);
crr[a][b] = 1;
}
}
fclose(fp);
//FILE *fpt = fopen(“w.txt“ “a“);
for(int i = 1; i <= 3952; i++) {
for(int j = 1; j <= 3952; j++) {
sum = 0;
for(int z = 1; z <= 6040; z++) {
/*iter = find(user[z].begin() user[z].end() i);
if(iter != user[i].end())
x = 1;
else
x = 0;
iter = find(user[z].begin() user[z].end() j);
if(iter != user[i].end())
y = 1;
else
y = 0;*/
sum += crr[z][i]*crr[z][j]/arr[z];
}
if(brr[j] == 0)
w = 0;
else
w = sum / brr[j];
drr[i][j] = w*100000;
//cout << w*100000 << endl;
//fprintf(fpt “%.0f “ w*100000);
}
//fprintf(fpt “\n“);
}
//fclose(fpt);
for(int i = 1; i < 6041; i++) {
for( int j = 1; j < 3953; j++) {
err[i][j] = 0;
for(int z = 1; z < 3953; z++) {
err[i][j] += drr[j][z] * crrt[z][i];
}
}
}
FILE *fpt = fopen(“ww.txt“ “a“);
for(int i = 1; i < 6041; i++) {
for(int j = 1; j < 3953; j++) {
fprintf(fpt “%.0f “ err[i][j]);
}
fprintf(fpt “\n“);
}
fclose(fpt);
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-05-04 23:36 数据挖掘第一次上机报告—16030147001—钱宇珊\
文件 2304 2018-05-03 20:59 数据挖掘第一次上机报告—16030147001—钱宇珊\movie.cpp
文件 241 2018-04-14 16:26 数据挖掘第一次上机报告—16030147001—钱宇珊\movie.py
文件 12553665 2018-04-14 16:26 数据挖掘第一次上机报告—16030147001—钱宇珊\ratings.txt
文件 156 2018-05-04 23:38 数据挖掘第一次上机报告—16030147001—钱宇珊\readme.txt
文件 1353 2018-05-04 23:02 数据挖掘第一次上机报告—16030147001—钱宇珊\recommend.cpp
文件 244 2018-05-03 20:29 数据挖掘第一次上机报告—16030147001—钱宇珊\reconmend.py
文件 1346 2018-05-04 23:21 数据挖掘第一次上机报告—16030147001—钱宇珊\verify.cpp
文件 34029595 2018-04-17 22:34 数据挖掘第一次上机报告—16030147001—钱宇珊\w.txt
文件 55704 2018-05-04 23:31 数据挖掘第一次上机报告—16030147001—钱宇珊\数据挖掘第一次.docx
- 上一篇:C++课程设设计 员工信息管理系统
- 下一篇:mfc 任意多边形填充色
相关资源
- 训练SVM分类器 VS2013 C++
- 机器学习-数据挖掘-梯度下降算法C+
- 一个文本分类系统
- 数据挖掘程序课程设计含全部程序代
- 数字图像处理-基于内容的图像分类
- MLP简单分类任务 VS2015
- 图像的K均值分类
- 基于GDAL VC6.0的遥感影像K均值分类程序
- 0-9手写数字识别C++实现
- Apriori和FP-Tree算法图形化实现+两个测
- K均值算法非监督分类
- C++ 水果分类识别matlab代码,有详细的
- KNN分类算法C++实现十次十倍交叉验证
- 自己动手制作人脸分类器+人脸识别标
- 马氏距离分类
- 基于文本内容的垃圾邮件过滤程序
- 机器学习分类算法实现c++语言和c语版
- C++实现支持向量SVM机分类器.zip
- VC++ 读图 分类 变化监测 几何校正
- opencv SVM图像分类工程文件
- 训练SVM分类器
- svm分类算法(附实验报告)
- 数据挖掘聚类分析大作业
- HOG+SVM代码及文档说明
- pytorch训练图像分类模型pth转ONNX并测试
- haar分类器人脸检测MFC实现
- 基于vc++的SVM
- 回归和分类随机森林
- Hu矩计算与图像分类
- BP 算法用于实现分类
评论
共有 条评论