推荐系统学习

news/2024/5/19 23:20:27 标签: 学习, 推荐算法, 算法

推荐系统

  • 系统职能:头条/抖音/快手,都是以推荐系统作为流量的分发的主要手段;

  • 职业发展:大数据处理/流式计算/数据挖掘/机器学习/高并发服务等领域。

  • 更具用户的离十信息和行为,向用户推荐他感兴趣的内容

    • 基于行为的协同过滤

      基于行为的协同过滤.png

    • 基于内容相似推荐

      基于内容的相似推荐.png

推荐系统 - 包括那些环节

挑战:怎么从海量的内容中,挑选出用户感兴趣的条目,并且满足系统的50ms~300ms的低延迟要求

图片环节1

找回路径

推荐系统中常见的名词:i2i/u2i/u2i2i/u2u2i/u2tag2i,这些叫做推荐的召回路径。
U2I:来源于用户的直接行为,比如播放/点击/购买等
I2I:内容相似,协同过滤关联规则挖掘等
U2I2I:基于item的协同过滤货先到先用户的行为列表,然后查找I2I做扩展
U2U2I:基于用户的协同过滤,用户画像相似然后推荐,用户聚类推荐
U2Tag2I:先算出用户的tag偏好,然后匹配item列表

Netflix 经典的推荐系统架构

图:推荐架构1
挑战:架构既能处理海量数据,又能及时响应用户交互
在线层:
特点:快速响应,使用最新的数据输入,比如200ms
缺点:不能使用复杂的算法,只能读取少量数据
离线层:
特点:大部分数据包括模型训练都在这一层
优点:可以采用复杂的算法,扫描海量的数据
缺点:不能对最新的情景和新数据做响应,比如天粒度
近线层:
特点:离线和在线的折中,一般将结果存入高速缓存
优点:能使用几乎最新的数据计算,延迟10秒~1分钟级别;允许更复杂的算法处理,加载查询耕更多数据
组合使用的例子:
1,天粒度:离线层做矩阵分解,得到用户向量和物品向量做数据存储到Mysql
2,10秒钟:近线层根据用户行为,查询TopN相似的物品列表,存入Cassandra
3,200毫秒:在线层查询的第儿步骤的结果,更新推荐列表

推荐架构2

如何实现一个基于内容的推荐系统(Content-Based Recommendations)

推荐架构3

地位:最早被使用的算法>推荐算法,年代久远,单当今仍然被广泛使用,效果良好
定义:给用户X推荐之前喜欢的物品相似的物品。即,U2I2I/U2Tag2I
优缺点:
优点:不需要其他用户数据
能给具备独特口味的用户推荐
推荐最新的/冷门的物品
容易做推荐结果的解释
缺点:
很难找到能表达物品的标签,有时候需要人工打标签
过于局限于自己的世界,无法挖掘出用户的潜在兴趣
新用户如果没有行为,没法做推荐

协同过滤的推荐系统

使用行为数据,利用集体智慧推荐
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

推荐系统如何实现多路找回融合排序

在这里插入图片描述

如何实现AB测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如何实现内容的相似推荐

在这里插入图片描述

https://ai.tencent.com/ailab/nlp/zh/index.html
https://ai.tencent.com/ailab/nlp/en/embedding.html

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

矩阵分解的协同过滤

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Python 使用Faiss实现向量的近邻搜索

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


http://www.niftyadmin.cn/n/452238.html

相关文章

Contrastive Representation Learning 对比表征学习(三)视觉:图像嵌入(1)

原文翻译自这里 视觉:图像嵌入(Image Embedding) 图像增强 在视觉领域,大多数面向对比表征学习的方案均依赖于通过应用数据增强技术的序列组合来创建样本的噪声形式。而这种增强需要满足保持语义不变的同时极大的改变其视觉外观…

swupdate linux ota故障安全升级方案

一、简介 swupdate是一个基于嵌入式的Linux平台的升级服务框架程序,它提供了分区升级,文件升级,差分升级(补丁应用)功能,并提供了开放接口,方便用户添加自定义升级处理函数。 swupdate提供了故…

新能源充电桩4G无线物联网解决方案|4G路由器ZR2000

日常生活中新能源汽车已随处可见,新能源也逐渐普遍,绿色出行、低碳生活的环保概念也随着科普深入人心,新能源汽车必备的充电桩行业随之崛起,为保证用户体验及运营管理,充电桩需要通过网络实现数据传输、远程监控、位置…

史上最全Hadoop面试题:尼恩大数据面试宝典专题1

说在前面: 《尼恩 大数据 面试宝典》 是 《尼恩Java面试宝典》 姊妹篇。 这里特别说明一下:《尼恩Java面试宝典》41个专题 PDF (请在文末获取)自发布以来, 已经收集了 好几千题, 足足4000多页&#xff0c…

03、非受控组件与受控组件、高阶函数、prop-types、生命周期、hook

总结 一、非受控组件与受控组件 非受控组件 表单项不与state数据相向关联, 需要手动读取表单元素的值 借助于 ref获取真实DOM,在通过value获得输入值,使用原生 DOM 方式来获取表单元素值 非受控组件: 表单项不与 state 数据相向关联, 需要手动读取表…

python数据类型详解

在学习python过程中我们一定会遇到不可变数据类型和可变数据类型。 1、名词解释 以下所有的内容都是基于内存地址来说的。 不可变数据类型: 当该数据类型的对应变量的值发生了改变,那么它对应的内存地址也会发生改变,对于这种数据类型&…

在职读研填充知识库,人大女王金融硕士项目是获取知识的有效途径

在工作中忙忙碌碌,等休息放空时,反而发现没有以前的快乐了。认识的人越来越多,反而觉得越来越孤独。或许这就是成长的代价。身在职场的我们距退休还有好久,这么漫长的时间不获取新知识怎么能行呢,让我们打开探索的窗户…

C++ 教程(18)——引用

C 引用 引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字。一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量。 C 引用 vs 指针 引用很容易与指针混淆,它们之间有三个主要的不同:…