博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
机器学习基础7--推荐系统
阅读量:5341 次
发布时间:2019-06-15

本文共 1143 字,大约阅读时间需要 3 分钟。

近十年以来,推荐系统迅猛发展,比如说亚马逊的商品推荐等.而Netflix的比赛,让推荐系统更广为人知.

在YouTube,每分钟都会有上百个小时的视频汇聚,我们没法把视频一个个的看完,那么哪些视频是我们关心的?这是一个信息过载的例子.

信息量爆炸所带来的影响非常深远,衍生出了一种个性化思想,连接用户和某一项事物.

传统的浏览模式成为历史,我们必须寻找一种新的模式.

推荐系统的例子:

  电影推荐

  商品推荐

  音乐推荐

  用户关系判断(比如微博上的用户之间的关系)

  药物靶相互作用(治疗感冒的药物同时也有治疗头疼的作用)

构建一个推荐系统:

1.根据流行度.  

  类似微博的热榜,会展现在用户面前,但是这样的推荐缺乏个性化.至少我就对哪个明星干了啥没什么兴趣.

2.分类模型

  使用用户的信息,购买历史,商品的信息,以及其他的一些进行,通过一个分类模型,来判断用户是否感兴趣.

  但是这样做同样存在问题,比如说使用的特征可能并不全.

3.买婴儿尿布的人也会买婴儿湿巾

  这种现象称为同现购买

  我们可以画出一个同现矩阵

比如说我们要查看婴儿尿布的次数向量.以下对应的数量和品类:

  [0 ... 4 ... 100 ....]

  DVD 奶嘴 湿巾

对上面的次数进行排序,很明显,湿巾是最多的数量.

那么我们就推荐湿巾?

克服流行商品推荐里过强:

  现在我们不买婴儿尿布了,我们买儿童玩具

  [0(DVD) ... 100W(尿布) ... 湿巾 ...]

  很明显,因为尿布的数量巨大,导致只会推荐尿布(尿布数量巨大不是因为买玩具的同时喜欢买尿布,而是因为尿布的需求量确实大).

同现矩阵规格化:

Jaccard相似度算法:

  同时购买商品i和j的人数 / 购买了商品i或j的人数

也有其他的规格化算法,比如余弦相似度.

但是这个方法也有一定的局限性,比如只会考虑当前的状态,不考虑历史情况.

另外,如果购买了很多商品怎么办?这需要使用权重系数了.

冷启动问题:

  这也是一个问题,就是在没有用户数据的情况下,如何进行相似度计算?

end

课程:机器学习基础:案例研究(华盛顿大学)

视频链接: https://www.coursera.org/learn/ml-foundations/supplement/vAjQL/slides-presented-in-this-module

week5 [Recommender systems,Co-occurrence matrices for collaborative filtering]

 

转载于:https://www.cnblogs.com/redheat/p/9362056.html

你可能感兴趣的文章
360浏览器兼容模式 不能$.post (不是a 连接 onclick的问题!!)
查看>>
spring注入Properties
查看>>
【BZOJ-2295】我爱你啊 暴力
查看>>
【BZOJ-1055】玩具取名 区间DP
查看>>
Bit Twiddling Hacks
查看>>
Windwos中的线程同步
查看>>
LeetCode : Reverse Vowels of a String
查看>>
时间戳与日期的相互转换
查看>>
jmeter(五)创建web测试计划
查看>>
python基本数据类型
查看>>
1305: [CQOI2009]dance跳舞 - BZOJ
查看>>
关于TDD的思考
查看>>
Cocos2d-x学习之windows 7 android环境搭建
查看>>
将html代码中的大写标签转换成小写标签
查看>>
jmeter多线程组间的参数传递
查看>>
零散笔记
查看>>
学 Win32 汇编[22] - 逻辑运算指令: AND、OR、XOR、NOT、TEST
查看>>
MaiN
查看>>
[Python学习] 简单网络爬虫抓取博客文章及思想介绍
查看>>
第四章 解析库的使用 4.2 BeautifulSoup的使用
查看>>