-
C++ ItemCF
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中选择。认识到这一
- 2022-03-26 08:57:57下载
- 积分:1
-
有理式拟合和pade近似的Matlab实现
应用背景将函数f(x)近似的表达为:
叫作函数的pade近似,Matlab中没有直接提供相关函数,
关键技术但是我们可以根据原理,比较容易的写出Matlab代码:
比如需要将f(x)=exp(-2*x)展开成有理多项式,进行pade近似,根据下面提供的padefcn()函数,我们可以轻松的实现
- 2022-05-31 19:48:06下载
- 积分:1
-
Goertzel基本算法在每次采样后立即进行处理,在每个第N次采样进行一次音调检测。在采用FFT算法时,我们要对成块的采样进行处理,但这并不意味着必须按块来处理...
Goertzel基本算法在每次采样后立即进行处理,在每个第N次采样进行一次音调检测。在采用FFT算法时,我们要对成块的采样进行处理,但这并不意味着必须按块来处理数据。数字处理的时间很短,因此如果每次采样都存在一次中断,那么这些数字处理完全可以在中断服务程序(ISR)内完成。或者,如果系统中存在采样缓存,那么可以持续采样,然后进行批处理。-Goertzel basic algorithms in each sample immediately after processing, in each of the first N sub-samples to conduct a tone detection. In the use of FFT algorithms, we would like to be processed into a block of samples, but this does not mean that must block processing the data. Digital processing time is very short, so if an interrupt for each sample are present, then the digital processing is fully able to interrupt service routine (ISR) to complete. Or, if the system exists in sample buffer, you can continue to sample, and then batch.
- 2022-05-27 11:46:36下载
- 积分:1
-
西电算法导论上机题
算法导论第四次上机题,01背包回溯法
- 2023-02-08 08:50:03下载
- 积分:1
-
C语言版本的矩阵库,目前世界上最流行的三大矩阵运算库之一,这是修正版本,我自己改了几个地方(按照官方要求)...
C语言版本的矩阵库,目前世界上最流行的三大矩阵运算库之一,这是修正版本,我自己改了几个地方(按照官方要求)-C language edition matrix library , now in the world the most popular three greatest matrixeses carries to calculate the one of the library , this is to revises the edition, myself changed a few places( request according to the authorities)
- 2023-07-06 01:05:04下载
- 积分:1
-
C 程序的常规语言语法检查
C 程序的常规语言语法检查-procedures of conventional C language syntax check
- 2022-03-16 01:39:21下载
- 积分:1
-
显示一个日历表
显示一个日历表-Showing a Calendar
- 2022-12-30 05:35:03下载
- 积分:1
-
自动计算养老保险金额,包括每个月上交金额,何时开始,何时结束,退休后应得每月金额...
自动计算养老保险金额,包括每个月上交金额,何时开始,何时结束,退休后应得每月金额-Automatically calculate the amount of pension insurance, including the amount paid every month when he will begin, when the end of each month after retirement should be the amount of
- 2022-03-22 06:32:33下载
- 积分:1
-
高斯―塞德尔迭代法。
高斯―塞德尔迭代法。-Gauss- Seidel iteration.
- 2022-05-22 21:37:54下载
- 积分:1
-
原创的可实现大小写的相互转化
原创的可实现大小写的相互转化-original case is the realization of the mutual conversion
- 2023-08-28 21:45:02下载
- 积分:1