• 大小: 10.54MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-04
  • 语言: Matlab
  • 标签: 协同过滤  

资源简介

使用matlab实现user-based collaborative filtering,实验数据集为movielens100k。

资源截图

代码片段和文件信息

%利用Adjusted Cosine法计算用户a和b的相似度
function Sim_ab=Similarity_ab(score_matrixij)
%找出用户i和j共同评价电影的标号;
temp=score_matrix(i:)&score_matrix(j:);
P_ab=find(temp);
%用行向量存储用户i和j共同评价的电影
% %end
%% 利用Adjusted Cosine法计算相似度
if isempty(P_ab)
    Sim_ab=0;
else   
    [~temp]=size(P_ab);%用户i和j共同评价电影的数目
    %[~number_movies]=size(score_matrix);
    sum1=0;
    sum2=0;
    sum3=0;

        [~m1]=size(find(score_matrix(i:)~=0));%计算该用户评价的电影个数
        sum_score_a=sum(score_matrix(i:)2);%用户对所有电影的总评分
        aver_score_a=sum_score_a/m1;
        
        [~m2]=size(find(score_matrix(j:)~=0));%计算该用户评价的电影个数
        sum_score_b=sum(score_matrix(j:)2);%用户对所有电影的总评分
        aver_score_b=sum_score_b/m2;
       
    for k=1:temp %注意此处的temp已经不是数组了        
        sum1=sum1+(score_matrix(iP_ab(k))-aver_score_a)*(score_matrix(jP_ab(k))-aver_score_b);
        sum2=sum2+(score_matrix(iP_ab(k))-aver_score_a)^2;
        sum3=sum3+(score_matrix(jP_ab(k))-aver_score_b)^2;
    end
    if sum2==0||sum3==0
        Sim_ab=0;
    else
        Sim_ab=sum1/sqrt(sum2*sum3);
    end
end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        716  2015-09-18 11:19  UserbaseCF\ml-100k\allbut.pl

     文件        643  2015-09-18 11:19  UserbaseCF\ml-100k\mku.sh

     文件       6403  2015-09-18 11:19  UserbaseCF\ml-100k\README

     文件    1979173  2015-09-18 11:19  UserbaseCF\ml-100k\u.data

     文件        202  2015-09-18 11:19  UserbaseCF\ml-100k\u.genre

     文件         36  2015-09-18 11:19  UserbaseCF\ml-100k\u.info

     文件     236344  2015-09-18 11:19  UserbaseCF\ml-100k\u.item

     文件        193  2015-09-18 11:19  UserbaseCF\ml-100k\u.occupation

     文件      22628  2015-09-18 11:19  UserbaseCF\ml-100k\u.user

     文件    1586544  2015-09-18 11:19  UserbaseCF\ml-100k\u1.base

     文件     392629  2015-09-18 11:19  UserbaseCF\ml-100k\u1.test

     文件    1583948  2015-09-18 11:19  UserbaseCF\ml-100k\u2.base

     文件     395225  2015-09-18 11:19  UserbaseCF\ml-100k\u2.test

     文件    1582546  2015-09-18 11:19  UserbaseCF\ml-100k\u3.base

     文件     396627  2015-09-18 11:19  UserbaseCF\ml-100k\u3.test

     文件    1581878  2015-09-18 11:19  UserbaseCF\ml-100k\u4.base

     文件     397295  2015-09-18 11:19  UserbaseCF\ml-100k\u4.test

     文件    1581776  2015-09-18 11:19  UserbaseCF\ml-100k\u5.base

     文件     397397  2015-09-18 11:19  UserbaseCF\ml-100k\u5.test

     文件    1792501  2015-09-18 11:19  UserbaseCF\ml-100k\ua.base

     文件     186672  2015-09-18 11:19  UserbaseCF\ml-100k\ua.test

     文件    1792476  2015-09-18 11:19  UserbaseCF\ml-100k\ub.base

     文件     186697  2015-09-18 11:19  UserbaseCF\ml-100k\ub.test

     文件       1224  2015-10-30 12:54  UserbaseCF\Similarity_ab.m

     文件    5754611  2015-10-30 14:01  UserbaseCF\SimilitudUsers.mat

     文件       2988  2015-10-30 14:02  UserbaseCF\Testread.m

     文件    1586544  2015-09-18 11:19  UserbaseCF\u1.base

     文件     392629  2015-09-18 11:19  UserbaseCF\u1.test

     目录          0  2016-03-14 21:56  UserbaseCF\ml-100k

     目录          0  2016-03-14 21:55  UserbaseCF

............此处省略3个文件信息

评论

共有 条评论