亚马逊 协同过滤算法 Collaborative filtering
这节课时郭强的三维课。他讲的是MAYA和max 。自己对这个也不怎么的感兴趣。而且这个课感觉属于数字媒体。自己对游戏,动画,这些东西一点都不兴趣,比如大一的时候刚开学的时候,张瑞的数字媒体的导论课。还有就是秀霞的动画课,自己记录一下自己的思想
我在网上看见了这样一个说法,说的是跟着本科生导师做项目。就比如一个人说的,先找一个APP运行一遍,然后再这个基础上修改,各种的粘贴代码。是继续的做这个项目,还是学一点计算机的基础知识了。
开始写算法,亚马逊的协同过滤算法
第一:初次印象,进入一个网站的时候,可以看见你的最近在收缩一些什么东西。
提出问题:网易云音乐的推荐算法。 淘宝商品推荐算法,amazon发明的"喜欢这个商品的人,也喜欢某某"
算法的核心是:多维空间中两个向量夹角的余弦公式
collaborative filtering 分为两大类
1.先找到与你相似的人,看看他们买了什么东西,而你没有买的什么东西,那么就推荐给你。这个第一类方法的实现的核心是,多维空间两个向量夹角的余弦公式
2.第一个是郭强讲的矩阵
由一个简单的例子来引入问题
在第一类的方法中最大的问题就是判断并且量化两人的相似性。
例子:假如网易云音乐现在有3首歌曲,A,B,C
甲收藏了A歌曲,而拉黑了B,C
乙总是循环播放A, 而跳过B.听完C
丙跳过了A,主动播放了B,分享了C
依据上面可以看出,A和B比较相似
把这3首歌曲看成是三维空间的三个维度。 A歌曲是X轴 B歌曲是Y轴 C歌曲是Z轴
对歌曲的喜欢程度即是该维度上的坐标。现在量化喜欢程度(单曲循环=5 分享=4 收藏=3 主动播放=2 听完=1 跳过=-1 拉黑=-5)。那么每个人的口味就是一个向量。甲=(3,-5,-5)
乙=(5,-1,1),丙=(-1,2,4)
a*b=15+5-5=15 |a|=√(x1^2+y1^2+z1^2)=7.68 |b|=5.196
cosθ=a*b/(|a|*|b|) =0.3797
相应的甲和丙 a*b=-33 |c|= 4.582 cosθ=35.18976
第一个θ的值算出来,cos70=0.3420201433 第二个算出来接近是180度。知乎说:0度角,余弦的值是1,表示两个人完全想相同 180度角表示两个人完全的口味不相同
第一类算法的好处就是精准。缺点就是:运算量很大,对于新来的人,听的少,动作的少,也不太好用,那么就发明了第二类方法

亚马逊 协同过滤算法 Collaborative filtering的更多相关文章
- Spark机器学习(11):协同过滤算法
协同过滤(Collaborative Filtering,CF)算法是一种常用的推荐算法,它的思想就是找出相似的用户或产品,向用户推荐相似的物品,或者把物品推荐给相似的用户.怎样评价用户对商品的偏好? ...
- Spark MLlib协同过滤算法
算法说明 协同过滤(Collaborative Filtering,简称CF,WIKI上的定义是:简单来说是利用某个兴趣相投.拥有共同经验之群体的喜好来推荐感兴趣的资讯给使用者,个人透过合作的机制给予 ...
- spark机器学习从0到1协同过滤算法 (九)
一.概念 协同过滤算法主要分为基于用户的协同过滤算法和基于项目的协同过滤算法. 基于用户的协同过滤算法和基于项目的协同过滤算法 1.1.以用户为基础(User-based)的协同过滤 用相似统 ...
- 【RS】Amazon.com recommendations: item-to-item collaborative filtering - 亚马逊推荐:基于物品的协同过滤
[论文标题]Amazon.com recommendations: item-to-item collaborative filtering (2003,Published by the IEEE C ...
- Collaborative Filtering(协同过滤)算法详解
基本思想 基于用户的协同过滤算法是通过用户的历史行为数据发现用户对商品或内容的喜欢(如商品购买,收藏,内容评论或分享),并对这些喜好进行度量和打分.根据不同用户对相同商品或内容的态度和偏好程度计算用户 ...
- 如何解锁亚马逊A9的新算法?
亚马逊每一次变动总能在跨境圈里掀起一场场风波,最近A9算法的更新更是牵动着不少卖家的心. A9算法是亚马逊运行的内核算法,只要消费者在亚马逊上面搜索了商品,那么他就已经开始使用了A9算法,通过分析每一 ...
- 亚马逊 MWS 开发者指南 漏桶算法
流量控制与令牌桶算法|James Pan's Blog https://blog.jamespan.me/2015/10/19/traffic-shaping-with-token-bucket 服 ...
- Slope one—个性化推荐中最简洁的协同过滤算法
Slope One 是一系列应用于 协同过滤的算法的统称.由 Daniel Lemire和Anna Maclachlan于2005年发表的论文中提出. [1]有争议的是,该算法堪称基于项目评价的non ...
- Spark 基于物品的协同过滤算法实现
J由于 Spark MLlib 中协同过滤算法只提供了基于模型的协同过滤算法,在网上也没有找到有很好的实现,所以尝试自己实现基于物品的协同过滤算法(使用余弦相似度距离) 算法介绍 基于物品的协同过滤算 ...
随机推荐
- C++模板类之pair
Pair类型概述 pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同,基本的定义如下: pair<int, string> a; 表示a中有两个类型,第一个元素是int型的 ...
- scanf *的用法
scanf *的用法 char a[LEN]="12:13:14"; char i,j,k,h,l,m; sscanf(a,"%*c%*c:% ...
- SharePoint REST API - 列表和列表项
博客地址:http://blog.csdn.net/FoxDave 本篇主要讲述如何用SharePoint REST操作列表和列表项.阅读本篇时请先了解前面讲述的REST介绍和基本操作. 废话不多 ...
- Linux文件系统命令 lsof
命令名:lsof 功能:查看某个端口被占用情况,在配置服务器端口的时候,为了避免冲突,可以通过这个命令查看将要被使用的端口是否被占用. 用法:加-i 参数 eg: renjg@renjg-HP-Com ...
- 实力封装:Unity打包AssetBundle(番外篇)
前情提要:第二种打包方式. 自定义AssetBundle包扩展名 在之前的教程中,我们已经多次提到过扩展名了,并且也已经说明了如何设置自定义的AssetBundle扩展名.至于为什么还要把它单独拿出来 ...
- 【腾讯开源】前端预处理器语言图形编译工具 Koala使用指南
摘要:Koala是一款预处理器语言图形编译工具,支持Less.Sass.CoffeeScript.Compass框架的即时编译.无需手动输入命令去编译,后台监听文件是否有改变,如有修改会自动进行编译, ...
- L321 How Technology Is Revolutionizing Health Care
How Technology Is Revolutionizing Health Care One of technology’s biggest potential impacts on healt ...
- thinkphp5.1学习笔记
由于新公司使用的框架是thinkphp5.1,有必要进一步学习,看来我要把php框架使用完全了,之前就用过laravel和CI框架了. 现在打算只是一个学习的记录,结构会比较凌乱,基本我估计只能自己看 ...
- springsecurity的remember me
基于持久化的token的方法 实现原理:将生成的 token 存入 cookie 中并发送到客户端浏览器,待到下次用户访问系统时,系统将直接从客户端 cookie 中读取 token 进行认证. 实现 ...
- Cleartext HTTP traffic to ... not permitted
Android下APP出现java.io.IOException: Cleartext HTTP traffic to dict.youdao.com not permitted,百度查了一下是And ...