第一次接触是在朴素贝叶斯分类里,是为了防止中间的概率为0,那么最终的概率就为0,分子加1,分母加k。
我想的是改进杰卡德系数,改进的初衷来源于这样一个想法,想用杰卡德系数来衡量项目属性相似性,不过假设有200个属性,如果a和b共同有2个,而且只有两个,c、d共同有20个而且只有20个,那么他们的杰卡德相似度最终都是1,但是这样不尽合理,为什么不是全部不合理?因为可能某个属性很重要,若这个相似那么就非常相似,比如判断男人和女人,如果胸部很大,基本就是女人了。那么不合理的地方表现在哪?这些属性可能区分度不是很大,比如电影类型(爱情 、动作、喜剧),这些属性并不是互斥的,解决方法
方法一:k=4,(2+1)/(2+4)=0.5,(20+1)/(20+4)=0.84,这样的话2个共同的那个感觉感觉太大;k=2,(2+1)/(2+2)=0.75,(20+1)/(20+2)=0.954,可以看出k值的选择很重要。
方法二:总的来说是加上惩罚系数,
(1)乘法
杰卡德相似度*ItemCF相似度或者乘一个关于共同评分数目的增函数;
(2)减法
相似度减去关于共同评分数目的减函数。