目录

  • 一、推荐系统的各类算法
    • 1. 传统推荐算法
      • 1)协同过滤算法
      • 2)矩阵分解算法
      • 3)逻辑回归模型LR
      • 4)因子分解机模型FM
      • 5)梯度提升树+逻辑回归组合模型GBDT+LR
    • 2. 深度学习推荐系统
      • 1)嵌入技术在推荐系统的应用
      • 2)基于多层感知机的推荐模型
      • 3)基于卷积神经网络的推荐系统
      • 4)基于循环神经网络的推荐系统
      • 5)注意力机制的推荐系统
      • 6)树模型与推荐系统的结合
    • 3. 图网络推荐系统
      • 1)图卷积网络推荐系统
      • 2)图注意力网络推荐系统
      • 3)图自动编码器推荐系统
      • 4)图生成网络推荐系统
      • 5)图时空网络推荐系统
  • 二、推荐系统的可解释性

一、推荐系统的各类算法

1. 传统推荐算法

1)协同过滤算法
  • 核心思想:综合用户和项目显式反馈信息,构建用户和项目的二元共现矩阵
  • 问题:随着用户和物品的规模增大,共现矩阵会变更稀疏,在计算相似度时准确率会降低,而且泛化能力差(评分高的会多次推荐,而评分信息少的新物品则较少推荐)【二元共现矩阵–>稀疏矩阵】
2)矩阵分解算法
  • 主要思想:分解共现矩阵,使用矩阵分解算法,为用户和项目分别生成一个隐向量,然后把用户向量和项目向量的点积作为用户对项目的预测评分。
  • 矩阵分解的泛化能力更强,缓解数据稀疏问题,空间复杂度更低,只需要存用户和项目向量
  • 隐向量缺乏可解释性,且只利用了用户和项目的评分信息,没有用其他的特征信息
3)逻辑回归模型LR
  • 主要思想:相比起协同过滤和矩阵分解只用到了用户和项目的交互信息,LR能融合用户画像特征、物品属性、上下文信息等多个特征,将各特征转化为数值向量,输入到网络中训练
4)因子分解机模型FM
  • 主要思想:在LR的基础上,加入二阶交叉特征组合,FM为每个特征引入了一个具有低维稠密的隐向量特征,并且用向量特征的内积作为特征交叉的权重。
5)梯度提升树+逻辑回归组合模型GBDT+LR
  • 主要思想:使用梯度提升决策树进行自动化特征工程,提取重要特征和进行特征组合,树的最后一层叶节点生成新的离散特征,作为逻辑回归模型的输入

2. 深度学习推荐系统

1)嵌入技术在推荐系统的应用
  • 嵌入技术:主要处理稀疏矩阵,融合大量信息形成有价值的低维向量,输入到神经网络中训练
2)基于多层感知机的推荐模型
  • 通常原始数据经过嵌入层形成向量后,会输入到多层感知机中,可以进一步提取高阶特征交叉

  • 应用在预测用户对项目的评分、精准排序任务和用户点击率预测的任务,能充分利用用户画像特征、项目属性特征和上下文信息,进行特征提取,而且能缓解数据稀疏、高阶特征组合等问题

3)基于卷积神经网络的推荐系统
  • 卷积神经网络的卷积和池化计算主要学习数据局部特征,可以提取非结构化多媒体数据,对多源异构数据进行表征学习

  • 在推荐系统中,卷积神经网络适用多模态推荐、图片推荐和文本推荐任务

4)基于循环神经网络的推荐系统
  • RNN的最大特点:有记忆性并且能够参数共享,它能获取某一时刻的输入数据和前一时刻的隐层状态,来预测当前时刻的输出

  • 推荐系统结合RNN有记忆性的特点,对用户的历史会话序列建模,学习用户偏好演变过程以及用户上下文相关兴趣,应用于会话推荐任务

5)注意力机制的推荐系统
  • 理解:用户的点击行为是局部活跃,某一时刻点击行为仅仅和过去的部分历史数据有关,而不是所有历史记录

  • 主要想法:将用户的行为基于注意力机制进行加权求和,使模型更关注有益信息,预测下一次点击动作

6)树模型与推荐系统的结合
  • 把树模型用于有效的交叉特征,能提高模型的可解释性

3. 图网络推荐系统

1)图卷积网络推荐系统
2)图注意力网络推荐系统
3)图自动编码器推荐系统
4)图生成网络推荐系统
5)图时空网络推荐系统

二、推荐系统的可解释性

推荐系统学习(一)——了解现有的推荐系统相关推荐

  1. 推荐系统学习笔记召回策略之基于协同过滤召回

    基于协同过滤的召回 1. 概述 2. 基于近邻的协同过滤算法 3. 相似度计算方法 4. 协同过滤算法的进化-矩阵分解 图1. 推荐系统整体架构 推荐系统学习笔记系列链接: 推荐系统学习笔记--特征工 ...

  2. 推荐系统学习笔记——特征工程

    特征工程 一. 概述 二. 特征工程构建原则 三. 常用的特征有哪些 四. 常用的特征的处理方法 五. 特征选择 六. 总结 推荐系统学习笔记系列链接: 推荐系统学习笔记--特征工程 推荐系统学习笔记 ...

  3. 张俊林:从对比学习视角,重新审视推荐系统的召回粗排模型

    分享嘉宾:张俊林博士 新浪微博 编辑整理:王岩 出品平台:DataFunTalk 导读:今天分享的主题是从对比学习的视角,即从一个不同的角度来看看推荐系统里面的召回和粗排模型.对比学习从去年年中开始比 ...

  4. 600页!分享珍藏很久的《推荐系统学习手册》(附下载链接及入门经验)

    这是之前学习推荐系统时的学习资料,非常全面,包含经典模型的解析及代码实现.模型的评估.最新工业界论文解读等等,全网仅此一份!该手册有PDF版本和Markdown版本,总计有600多页! 资料领取方式: ...

  5. Angel:深度学习在腾讯广告推荐系统中的实践

    分享嘉宾:郭跃超 腾讯 应用研究员 编辑整理:康德芬 出品平台:DataFunTalk 导读:Angel是腾讯自研的分布式高性能的机器学习平台,支持机器学习.深度学习.图计算以及联邦学习等场景.Ang ...

  6. 700页!分享珍藏很久的《推荐系统学习手册》(附下载链接及入门经验)

    这是之前学习推荐系统时的学习资料,非常全面,包含经典模型的解析及代码实现.模型的评估.最新工业界论文解读等等,全网仅此一份!该手册有PDF版本和Markdown版本,总计有700多页! 资料领取方式: ...

  7. 对比学习视角:重新审视推荐系统的召回粗排模型

    省时查报告-专业.及时.全面的行研报告库 省时查方案-专业.及时.全面的营销策划方案库 对比学习在快手推荐系统中的应用实践 机器学习在B站推荐系统中的应用实践 小红书推荐系统中台应用实践 微信视频号实 ...

  8. Coggle推荐系统学习任务1:推荐系统基础

    任务1:推荐系统基础 1.推荐系统与常见的结构化问题的区别是什么? 推荐系统是用来解决信息过载的手段. 作为信息消费者,如何从大量信息中找到自己感兴趣的信息是一件非常困难的事情;作为信息生产者, 如何 ...

  9. 【推荐系统学习总结 NCF => NGCF => LightGCN】

    推荐系统学习总结 NCF => NGCF => LightGCN NCF(别名 NeuMF) 背景 动机 创新点 模型框架 损失函数 核心代码实现 NGCF 背景 动机 创新点 模型框架 ...

  10. 【免费学习半个月】强烈推荐你学习这个《机器学习与推荐系统实训强化课》...

    前几天,我给朋友推荐一个课程,跟他说认真学能拿到头条offer,一开始还说我吹牛,看完介绍,结果直接就报名了.就是下面这个 <机器学习与推荐系统实训强化课> 「Machine Learni ...

最新文章

  1. LeetCode简单题之移动零
  2. 柳传志大声对iphone说:这是在中国!
  3. 学习如何使用JavaScript 生成各种好看的头像!
  4. pythonweb开发-如何用Python做Web开发?——Django环境配置
  5. python判断点在直线的哪一侧_判断点在直线的哪一侧
  6. C# Marshal的使用,非托管内存中分配内存注意的问题
  7. OS中atomic的实现解析
  8. Java多线程常用方法 wait 和 notify
  9. 可运行的c语言程序的扩展名为什么?
  10. git pull时冲突的几种解决方式
  11. 95-10-080-启动-replicaManager副本管理器
  12. 李宏毅 -《深度学习人类语言处理》国语版(2020)视频课程及ppt分享
  13. 拓端tecdat|用R语言和python进行社交网络中的社区检测
  14. php limit计算结果,php – 在应用LIMIT之前获取结果数量的最佳方式
  15. iso 9000下载_ISO 9000 | 软件工程
  16. AE动画导出json工具:bodymovin
  17. Python-Pandas基础
  18. 前端必知必会(一):vue3+node实现网站支付功能
  19. 新版iTunes如何设置手机铃声
  20. Shim特性是什么?

热门文章

  1. phpize是什么?
  2. PC-DARTS论文概要
  3. application/json java,java – @Consumes({“application / xml,application / json”})如何编程返回类型...
  4. SpringMVC——SSM框架对数据库进行操作的流程以及搭建SSM框架的步骤
  5. SIGSEGV, SIGABRT, SIGBUS及DEBUG
  6. JAVA 集合包结构图
  7. 2种清除Safari的缓存的方法
  8. 雪花算法的使用(java)
  9. Jmeter功能(二)参数化
  10. python游戏开发的库你知道几个?