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

资源简介

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

资源截图

代码片段和文件信息

%利用Adjusted Cosine法计算电影a和b的相似度
%这个算法虽然可以求出相似度矩阵,但是有个问题就是,当共同评价电影a和b的用户
%只有一个的时候,结果只有两种可能,即1或者是-1。这就需要在找邻居时要避免选择
%这些情况的相似度电影。
function Sim_ab=Similarity_ab(score_matrixab)
%找出所有评价所电影a和b的用户集合(标号)
temp=score_matrix(:a)&score_matrix(:b);
P_ab=find(temp);
P_ab=P_ab‘;%用行向量存储所有评价电影a和b的用户
%end
%% 利用Adjusted Cosine法计算相似度
if isempty(P_ab)
    Sim_ab=0;
else
    [~temp]=size(P_ab);%共同评价电影a和b的用户的数目
    %[~number_movies]=size(score_matrix);
    sum1=0;
    sum2=0;
    sum3=0;
    for i=1:temp %注意此处的temp已经不是数组了
        [~m]=size(find(score_matrix(P_ab(i):)~=0));%计算该用户评价的电影个数
        sum_score=sum(score_matrix(P_ab(i):)2);%用户对所有电影的总评分
        aver_score=sum_score/m;
        sum1=sum1+(score_matrix(P_ab(i)a)-aver_score)*(score_matrix(P_ab(i)b)-aver_score);
        sum2=sum2+(score_matrix(P_ab(i)a)-aver_score)^2;
        sum3=sum3+(score_matrix(P_ab(i)b)-aver_score)^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  ItembaseCF__u1\ml-100k\allbut.pl

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

     文件       1202  2015-04-25 20:24  ItembaseCF__u1\Similarity_ab.m

     文件    9392887  2015-10-29 22:41  ItembaseCF__u1\SimilitudItems.mat

     文件       3168  2015-10-29 22:53  ItembaseCF__u1\testRead.m

     文件    1586544  2001-03-09 02:33  ItembaseCF__u1\u1.base

     文件     392629  2001-03-09 02:32  ItembaseCF__u1\u11.test

     目录          0  2016-03-14 21:55  ItembaseCF__u1\ml-100k

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

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

评论

共有 条评论