基于近邻的协同过滤算法「建议收藏」

基于近邻的协同过滤算法「建议收藏」这节课我们来学习K近邻在推荐系统中的应用,你将完成本课程的第一个实战项目:基于KNN的电影推荐系统!为了使你能够顺利地完成实战内容,我们先了解一下推荐系统中的基础知识。基于近邻用户的协同过滤假定有一个场景:某个周日的下午,你感觉很无聊,然后从电脑上打开了一个视频网站,想看下最近有什么好看的电影。然而你发现网站上的热门电影基本都看过,其他的电影又太多,不知道该看什么。想使用搜索框去查一下,但是又不知道该搜什么关键词,这个时候你的内心很焦灼,总不能挨个去尝试吧,那时间成本也太大了…仔细想想还是有办法的,那

大家好,又见面了,我是你们的朋友全栈君。

这节课我们来学习K近邻在推荐系统中的应用,你将完成本课程的第一个实战项目:基于KNN的电影推荐系统!为了使你能够顺利地完成实战内容,我们先了解一下推荐系统中的基础知识。

基于近邻用户的协同过滤

假定有一个场景:某个周日的下午,你感觉很无聊,然后从电脑上打开了一个视频网站,想看下最近有什么好看的电影。然而你发现网站上的热门电影基本都看过,其他的电影又太多,不知道该看什么。想使用搜索框去查一下,但是又不知道该搜什么关键词,这个时候你的内心很焦灼,总不能挨个去尝试吧,那时间成本也太大了…

仔细想想还是有办法的,那就是问一下你的好朋友,他最近喜欢看什么电影,让他给你推荐几部好看的电影,这样就省去了自己去挑选和尝试的时间了。

这种思想其实就是基于近邻用户的协同过滤算法(简称UserCF):给用户 A 推荐和他有着相似观影兴趣的用户 B 喜欢观看的电影。如图所示:

UserCF
从图中可以看出,用户 A 的好友用户 B 喜欢看电影 2、3、4,恰好电影 3 和电影 4 用户 A 没有看过,所以就可以把电影 3 和电影 4 推荐给用户 A 。

基于近邻用户的协同过滤算法很容易给出的推荐理由是:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147450.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月30日 上午9:36
下一篇 2022年6月30日 上午9:46


相关推荐

  • centos7 top命令_linux chmod命令

    centos7 top命令_linux chmod命令top命令Linuxtop命令用于实时显示process的动态。top参数详解第一行,任务队列信息**系统当前时间:**13:52:56**系统开机后到现在的总运行时间:**up66

    2022年7月28日
    14
  • MySQL乐观锁(MySQL乐观锁)

    悲观锁与乐观锁的区别悲观锁会把整个对象加锁占为已有后才去做操作,Java中的Synchronized属于悲观锁。悲观锁有一个明显的缺点就是:它不管数据存不存在竞争都加锁,随着并发量增加,且如果锁的时间比较长,其性能开销将会变得很大。乐观锁不获取锁直接做操作,然后通过一定检测手段决定是否更新数据,这种方式下,已经没有所谓的锁概念了,每条线程都直接先去执行操作,计算完成后检测是否与其他线程存在共享数据…

    2022年4月16日
    36
  • js给数组添加数据的方式/js 向数组对象中添加属性和属性值[通俗易懂]

    js给数组添加数据的方式/js 向数组对象中添加属性和属性值[通俗易懂]参考:https://www.cnblogs.com/ayaa/p/14732349.htmljs给数组添加数据的方式有以下几种:直接利用数组下标赋值来增加(数组的下标起始值是0)例,先存在一个有3个数据的数组:letarr=[1,2,3];console.log(arr);  此时输出的结果是[1,2,3]letarr=[1,2,3];arr[3]=5;console.log(arr);  此时的输出结果是[1,2,3,5];通过数组名[数组名.le.

    2022年6月11日
    239
  • java 遍历map 方法[通俗易懂]

    遍历方法一( entrySet()遍历):Iteratorit=tempMap.entrySet().iterator();while(it.hasNext()){Map.Entryentry=(Map.Entry)it.next();Objectkey=entry.getKey();Objectvalue=entry.getVal

    2022年4月15日
    62
  • step by step guide tell you how to build a website like apkmirror

    step by step guide tell you how to build a website like apkmirrorTherearemanyfreeapkdownloadwebsitessuchasapkmirror,todayiwilltellyouhowtobuildawebsitelikeapkmirror,theprogramminglanguageiusedisnode.js,thedatabaseiusedismongodb,searchengineusediselasticsearch,thewebframeworki.

    2025年8月14日
    5
  • PreferenceFragment的使用

    PreferenceFragment的使用文章目录 PreferenceFr 简介 PreferenceFr 使用 PreferenceFr 扩展 PreferenceFr 简介在我们写一个项目的时候 基本都有选项设置界面 这类设置界面的原理基本都是本地的一些个性化设置 通过读取本地设置来改变某些差异显示 例如字体大小 主题颜色 WIFI 自动下载等 这些设置一般都会使用 Preference 来保存

    2026年3月26日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号