登录
首页 » 算法 » C++ ItemCF

C++ ItemCF

于 2022-03-26 发布 文件大小:11.80 MB
0 184
下载积分: 2 下载次数: 1

代码说明:

UserCF和ItemCF是协同过滤中最为古老的两种算法,在top-N的推荐上被广泛应用。这两个算法之所以重要,是因为他们使用了两个不同的推荐系统基本假设。UserCF认为一个人会喜欢和他有相同爱好的人喜欢的东西,而ItemCF认为一个人会喜欢和他以前喜欢的东西相似的东西。这两个假设都有其合理性。根据我的测试,用UserCF和ItemCF做出的推荐列表中,只有50%是一样的,还有50%完全不同。但是这两个算法确有相似的精度。所以说,这两个算法是很互补的。我一直认为这两个算法是推荐系统的根本,因为无论我们是用矩阵,还是用概率模型,我们都非常的依赖于前面说的两种假设。如果用户的行为不符合那两种假设,推荐系统就没必要存在了。因此我一直希望能够找出这两种算法的本质区别。他们有相似的精度,但是coverage相差很大,ItemCF coverage很大而UserCF很小。我还测试了很多其他指标,不过要从这些表象的指标差异找出这两个算法的本质区别还是非常困难。不过上周我基本发现了这两个算法推荐机理的本质区别。我们做如下假设。每个用户兴趣爱好都是广泛的,他们可能喜欢好几个领域的东西。不过每个用户肯定也有一个主要的领域,对这个领域会比其他领域更加关心。给定一个用户,假设他喜欢3个领域A,B,C,同时A是他喜欢的主要领域。这个时候我们来看UserCF和ItemCF倾向于做出什么推荐。结果如下,如果用UserCF, 它会将A,B,C三个领域中比较热门的东西推荐给用户。而如果用ItemCF,它会基本上只推荐A领域的东西给用户。因为UserCF只推荐热门的,所以UserCF在推荐长尾上能力不足。而ItemCF只推荐A领域给用户,这样他有限的推荐列表中就可能包含了一定数量的不热门item,所以ItemCF推荐长尾的能力比较强。不过ItemCF的推荐对某一个用户而言,显然多样性不足。但是对整个系统而言,因为不同的用户的主要兴趣点不同,所以系统的coverage会很大。显然上面的两种推荐都有其合理性,但都不是最好的选择,因此他们的精度也会有损失。最好的选择是,如果我们给这个用户推荐30个item,我们既不是每个领域挑选10个最热门的给他,也不是推荐30个A领域的给他,而是比如推荐15个A领域的给他,剩下的15个从B,C中选择。认识到这一

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 多重线性回归
    多元线性回归为pacient 在多重线性回归,我们使用多个解释变量 ; 这将使我们在建设中使用的详细信息的优点 模型和,因此,更准确的估计。
    2022-02-24 15:07:14下载
    积分:1
  • 集回归计、检验、方程输出为一体的逐步回归源码分享
    这是我自己编写的一个完整的实现逐步回归算法的模块,只要给定数据文件、检验信度和输出文件,一切中间过程和最后回归结果都清晰可见,最大特点是自动计算出检验信度值,避免了信度查表和手工输入的麻烦,值的拥有!压缩包内含有调用实例,用户使用非常方便。
    2022-08-21 21:24:28下载
    积分:1
  • 粒子群优化的C # APP
    应用背景一类函数优化问题的粒子群优化算法。应用优化。也有窗口形式为基础的粒子群优化算法应用程序将使用后..关键技术一些常见的算法程序,包括基本的粒子群算法,线性变异粒子群算法、压缩因子粒子群算法、粒子群优化算法等,可以促进learningome PSO算法的程序,包括基本的粒子群算法,线性变异粒子群算法、压缩因子粒子群算法、粒子群优化算法等,可以促进学习
    2022-03-24 07:59:49下载
    积分:1
  • 数字签名
    数字签名算法实现: 其加密方案技术来生成签名。它包含 4 的算法。一代大的素数的第一种算法,第二种算法生成的密钥、 第三种算法实现长沙 1 和第四个算法生成的签名。
    2022-04-24 11:31:07下载
    积分:1
  • 一个农夫过河问题的
    一个农夫过河问题的算法-a farmer crossing the algorithm
    2023-08-03 00:30:03下载
    积分:1
  • FFT的源代码,C语音,比其他的FFT代码更加效率高和质量好....
    FFT的源代码,C语音,比其他的FFT代码更加效率高和质量好.-FFT source code, C voice, other than the FFT code more efficient and better quality.
    2022-10-11 21:45:04下载
    积分:1
  • 陀螺仪 加速度计 卡尔曼
    基于卡尔曼滤波的陀螺仪与加速度计数据融合,采用C++编写将其封装成类,可用在角度测量应用。
    2022-03-17 09:59:47下载
    积分:1
  • DFP变尺度,包括一维搜索,黄金分割,采用类封装,包括矩阵类,变尺度类。实现简单明了。...
    DFP变尺度法,包括一维搜索法,黄金分割法,采用类封装,包括矩阵类,变尺度类。实现简单明了。-DFP variable metric method, including the one-dimensional search, golden section method, type of packaging used, including matrix-type, variable-scale category. Simple to achieve.
    2022-06-03 06:57:24下载
    积分:1
  • C-C程序
    个人利用VB编写的C-C算法计算程序,请多多指教!
    2022-07-14 05:08:25下载
    积分:1
  • 对于独立使用FFT和DLL文件
    FFT and dll documents for independent utility
    2023-05-10 12:45:04下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载