技术视角下高校图书馆创新实践最新章节程静著

欧几里得距离(又称欧式距离)指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。欧式距离公式如下:

欧几里得距离计算相似度很简单,容易理解。用户u和用户v对物品的评分分别为xi、yi,计算欧式距离用公式带入即可。计算出来的欧几里得距离是一个大于0的数,为了使其更能体现用户之间的相似度,可以把它规约到(0,1]之间,具体做法为:1/(1+d)。只要至少有一个共同评分项,就能用欧几里得距离计算相似度。欧几里得距离计算出来的值越小表示越相似,如果两者之间没有共同评分,那么欧几里得距离也就失去了作用。同时在处理一些受主观影响太大的评分数据时,效果会不太好。因此,当用户评价较少或者相对于平均水平偏离很大的时候,不适合使用基于欧几里得算法揭示出来的真实相似度。

欧几里得距离是解析几何中最常用的一种计算方法,但是计算起来相对比较复杂,需要经过平方、加和,再开方。曼哈顿距离的相似度计算公式比欧式计算公式看起来简单很多,只需要把两个点坐标的x坐标相减取绝对值,y坐标相减取绝对值,再加和即可。曼哈顿距离公式如下:

曼哈顿距离是欧几里得距离的简化,因此当用户偏好数据集中某些特征值很大时,如果用曼哈顿距离计算相似度,这些特征会掩盖其他特征间的邻近关系。

余弦相似度用向量夹角的余弦值作为度量两个个体间差异的大小。余弦相似度是从方向上区分差异,而对绝对值不敏感,更多地用于使用用户对内容评分来区分兴趣的相似度和差异上,同时修正了用户间可能存在的度量标准不统一的问题。

以一个实际的例子来介绍一下其中的计算过程:假设有商品全集I={a,b,c,d,e,f},其中A用户偏好商品{a,b,c},B用户偏好商品{b,d},那么有如图2-5矩阵。

图2-5对数似然相似性度量矩阵图

k11表示用户A和用户B的共同偏好的商品数量,显然只有商品b,因此值为1。

k12表示用户A的特有偏好,即商品{a,c},因此值为2。

k21表示用户B的特有偏好,即商品d,因此值为1。

k22表示用户A、B的共同非偏好,有商品{e,f},值为2。

此外我们还定义以下变量N=k11+k12+k21+k22,即总商品数量。

计算步骤如下:

(1)计算行熵

(2)计算列熵

(3)计算矩阵熵

(4)计算相似度

对数似然相似度处理无打分的偏好数据时,效果较好。

由于华东师范大学图书馆数据存在数据稀疏性问题,系统使用无偏好值的协同过滤推荐算法。针对无偏好值的推荐,最好的相似度量是对数似然相似性度量。ApacheMahout对数似然相似性度量源码如下所示:

系统需要使用ApacheMahout提供的推荐系统工具库,它主要面向开发人员,以API调用的方式提供服务。ApacheMahout能够为开发个性化推荐应用提供基础的、高效的代码库支持,降低应用开发的风险。ytkak8el/ww3h+6GmxGrZzyM6eMQNC3Pr/x8D1aQ+JsQJbJ5uefkE1We5DYoSWqo

THE END
1.了解抖音算法机制流程图提升点赞关注和评论.pptxxx年xx月xx日了解抖音算法机制流程图提升点赞关注和评论目录contents抖音算法机制概述抖音算法机制之用户行为分析抖音算法机制之内容推荐算法抖音算法机制之热度算法抖音算法机制之社交关系算法提升抖音点赞关注和评论的方法01抖音算法机制概述VS抖音算法是用于管理和推荐内容的工具,其主要存在意义在于为用户提供个性化、...https://www.renrendoc.com/paper/298478072.html
2.基于Hadoop平台的个性化新闻推荐系统的设计AET其算法流程图如图2所示。 基于物品的协同过滤推荐,当启动基于物品的协同过滤算法引擎后,指定一个用户为其推荐,系统将查询数据库中该用户浏览过的所有新闻,根据新闻中用户表查询浏览过该新闻的相关用户,然后构建协同过滤算法用户的模型。整个过程封装在MyRecommender类的ItemRecommender方法中,而在ItemRecommender中封装了数据...http://www.chinaaet.com/article/3000056950
3.毕业论文基于Apriori算法的课程推荐系统的设计与实现.doc图2.3ADO.NET数据处理流程图 3系统需求分析 3.1总体需求概述本系统是以推荐课程为特色的课程推荐管理系统,除了对课程相关信息的增删查改外,还借助Apriori算法,根据系统中已有的各类信息,进行数据关联后,给出个性化的课程推荐,节省了学生为了选课而四处询问的时间以及精力,更好的帮助学生过滤无效或者有碍信息,帮助学生更...https://max.book118.com/html/2021/0407/8007066043003072.shtm
4.融合项目时序关系的图神经协同过滤推荐方法ying等提出了基于图卷积神经网络推荐模型pinsage,通过采用随机游走和图卷积等方法来捕获到图结构的特征以及节点的特征,以生成节点的嵌入表示,极大地提高了嵌入表示的质量。wang等提出了一种基于图神经协同过滤推荐算法ngcf,通过利用二部图神经网络将用户-项目的历史交互信息进行嵌入编码,并显式的考虑用户-项目之间的高阶...http://mip.xjishu.com/zhuanli/55/202210943278.html
1.使用Java开发推荐系统:协同过滤算法实现协同过滤是一种推荐系统算法,它基于用户行为数据(比如用户的评分、点击、购买等行为)来发现用户之间的相似性和物品之间的相似性,进而进行个性化的推荐。 协同过滤算法分类 协同过滤算法可以分为基于用户的协同过滤和基于物品的协同过滤。基于用户的协同过滤是根据用户对物品的评分来计算用户之间的相似性,从而推荐相似兴趣的...https://www.jianshu.com/p/d62bc356e46d
2.CollaborativeFiltering(协同过滤)算法详解基于用户协同过滤算法的原理图 所以,协同过滤算法主要分为两个步骤: 1、寻找相似的用户集合; 2、寻找集合中用户喜欢的且目标用户没有的进行推荐。 具体实现 一、寻找用户间的相似度 1、Jaccard公式 Jaccard系数主要用于计算符号度量或布尔值度量的个体间的相似度,因为个体的特征属性都是由符号度量或者布尔值标识,因此...https://cloud.tencent.com/developer/article/1085760
3.双单词词频统计算法的流程图资源八数码算法流程图.vsdx 浏览:7 八数码问题算法流程图visio2016的vsdx流程图文件算法学习 银行家算法流程图.edd 浏览:261 银行家算法流程图,对银行家算法通过流程图完美的体现了出来,功能图等都非常详细 基于用户的协同过滤算法UserCF作业流程图.pdf 浏览:98 ...https://download.csdn.net/download/willierstrong/3441551
4.Java基于用户的协同过滤协同过滤算法java协同过滤算法java代码...基于用户的协同过滤推荐算法基本思想是:根据用户-项目评分矩阵查找当前用户的最近邻居,利用最近邻居的评分来预测当前用户对项目的预测值,将评分最高的N个项目推荐给用户,其中的项目可理解为系统处理的商品。其算法流程图如下图1所示。 图1基于用户的协同过滤推荐算法流程 基于用户的协同过滤推荐算法流程为: 1).构建...https://blog.51cto.com/u_16099361/10423282
5.以下关于全功能团队中算法工程师的工作职责描述,属于算法工程师的...网友您好, 请在下方输入框内输入要搜索的题目: 搜题 题目 [多选题] A.算法研究 B.算法需求分析 C.算法编排 D.算法建模 多选题,请选择你认为正确的答案: ABCD 提交 查看参考答案https://www.shangxueba.cn/hangye/F6A6974E.html
6.护理评分系统(精选十篇)为了检验本文提出的算法的有效性,以传统的总体评分数据集作为对照,使用相同的修正余弦相似性算法,计算其MAE,邻居个数从5增加到20,间隔为5,实验结果如图1所示。 图1 算法比较 3.结束语 本文根据传统的协同过滤在酒店推荐系统的局限性,提出了基于多属性评分的协同过滤算法,并通过实验证实在推荐质量上优于传统的协同过...https://www.360wenmi.com/f/cnkey0j511tc.html
7.基于推荐算法的降养老APP开发目前,常用的推荐算法主要分为协同过滤和基于内容的推荐算法两大类,因为本APP的推荐系统更加专注于内容的属性,而不注重不同用户之间的交互,所以推荐系统采用了一种基于内容的推荐算法 [13]。 基于内容的推荐算法Content-based Recommendations (CB)是以用户过去感兴趣的产品为依据,来推荐和他过去喜欢的产品类似的产品,...https://www.hanspub.org/journal/PaperInformation.aspx?paperID=58138