[推荐系统]1.深度学习与推荐系统

Cyanzzy Cyanzzy     2023-03-17     190

关键词:

文章目录

1 推荐系统

1.1 推荐系统的作用和意义

用户角度

推荐系统用于在“信息过载”的情况下,使用户高效获取感兴趣的信息。用户需求层面讲,推荐系统使在用户需求模糊的情况下进行信息的过滤。

公司角度

推荐系统解决产品能够最大限度地吸引用户、留存用户、增加用户黏性、提高用户转化率地问题,从而使公司商业目标连续增长。对于公司而言,需要达到商业目标、增加公司收益。

1.2 推荐系统架构

推荐系统解决的用户痛点:

用户如何在“信息过载”的情况下高效的获取有用的信息

  • 物品信息:商品信息、视频信息、新闻信息
  • 用户信息:与“人”相关的信息,历史行为、人口属性、关系网络等
  • 场景信息(上下文信息):具体推荐场景中,用户的最终的选择受时间、地点、用户的状态等一系列环境影响

1.2.1 推荐系统的逻辑架构

形式化定义推荐系统解决的问题:

对于用户 U U U,在特定场景 C C C下,针对海量信息,构建函数 f ( U , I , C ) f(U,I,C) f(U,I,C),来预测用户对特定候选物品 I I I的喜好程度,再根据喜好程度对所有候选物品进行排序,生成推荐列表的问题

1.2.2 推荐系统的技术架构

实际工程中着重解决的问题

  • 数据和信息相关的问题 “用户信息”、“物品信息”、“场景信息”是什么?如何存储、更新、处理?
  • 推荐系统算法和模型相关的问题 推荐模型如何训练、如何预测、如何达到更优的推荐效果?

”数据和信息“部分发展为推荐系统中融合了数据离线批处理、实时流处理的数据流框架;“算法和模型”细化为推荐系统中集训练、评估、部署、线上推断为一体的模型框架。

推荐系统的数据部分

主要负责“用户信息”、“物品信息”、“场景信息”的信息收集与处理。将负责数据收集与处理的三种平台按照实时性的强弱排序,依次为客户端及服务端实时数据处理、流处理平台准实时数据处理、大数据平台离线数据处理。在实时性由强到弱递减时,三种平台的海量数据处理能力由弱到强。

在得到原始的数据信息后,推荐系统的数据处理系统会将原始数据加工,加工后的数据出口有三个:

  1. 生成推荐模型所需的样本数据,用于训练和评估
  2. 生成推荐模型服务所需的特征,用于推荐系统的线上推断
  3. 生成系统监控、商业智能系统所需的统计型数据

推荐系统的模型部分

模型部分是推荐系统的主体,一般由“召回层”、“排序层”、“补充策略与算法层”构成

  1. 召回层:一般利用高效的召回规则、算法或简单的模型,快速从海量的候选集中召回用户可能感兴趣的物品
  2. 排序层:利用排序模型对初筛的候选集进行精排
  3. 补充策略与算法层:在将推荐列表返回用户之前,为兼顾结果的”多样性“、”流行度“、”新鲜度“等指标,结合一些补充的策略和算法对推荐列表进行调整,最终形成用户可见的推荐列表

模型服务:从推荐模型接收到所有候选物品集,到最后产生推荐列表的过程

在线环境进行模型服务之前,需要模型训练确定模型结构、结构中不同参数权重的具体值,以及模型相关算法和策略中的参数取值。

模型的训练方式根据模型训练环境不同:分为”离线训练“和”在线更新“两部分。

  1. 离线训练:利用全量样本和特征,使模型逼近全局最优点
  2. 在线更新:准实时”消化“新的数据样本,更快反映新的数据变化趋势,满足模型实时性的需求

2 前置知识

2.1 传统推荐模型的演化

  1. 协同过滤算法族 从物品相似度和用户相似度角度出发,协同过滤衍生出物品协同过滤ItemCF和用户协同过滤UserCF,为使协同过滤更好处理稀疏共现矩阵问题、增强模型的泛化能力,从协同过滤衍生除矩阵分解模型MF,并发展除矩阵分解的各分支模型
  2. 逻辑回归模型族 利用和融合更多用户、物品及上下文特征。从LR模型衍生出增强非线性能力的大规模分片线性模型LS-PLM,由LR发展出来的FM 模型,以及与多种不同模型配合使用后的组合模型等
  3. 因子分解机模型族 因子分解机在传统逻辑回归模型的基础上,加入二阶部分,使模型具备进行特征组合的能力。在因子分解机基础上发展的域感知因子分解机FFM通过加入特征域的概念,进一步加强因子分解机特征交叉的能力。
  4. 组合模型 将不同模型组合使用是构建推荐模型的常用方法,组合模型体现出的特征工程模型化思想成为深度学习推荐模型的因子和核心思想之一。

2.2 协同过滤

2.2.1 概述

协同过滤

协调大家的反馈、评价和意见一起对海量的信息进行过滤,从中筛选出目标用户可能感兴趣的信息的推荐的过程。

2.2.2 用户相似度计算

将带有标识的有向图转换成共现矩阵,该矩阵中的行向量代表相应用户的用户向量,用户 i i i和用户 j j j的相似度转换为处理用户向量 i i i和用户向量 j j j之间的相似度。

余弦相似度

余弦相似度衡量向量 i i i j j j之间的向量夹角大小,夹角越小,余弦相似度越大,两个用户越相似。
s i m ( i , j ) = c o s ( i , j ) = i ⋅ j ∣ ∣ i ∣ ∣ ⋅ ∣ ∣ j ∣ ∣ sim(i,j)=cos(i,j)=\\fraci \\cdotj||i||\\cdot||j|| sim(i,j)=cos(i,j)=∣∣i∣∣∣∣j∣∣ij
皮尔逊相关系数

皮尔逊系数通过使用用户平均分对各独立评分进行修正,减少用户评分偏置的影响
s i m ( i , j ) = ∑ p ∈ P ( R i , p − R ‾ i ) ( R j , p − R ‾ j ) ∑ p ∈ P ( R i , p − R ‾ i ) 2 ∑ p ∈ P ( R j . p − R ‾ j ) 2 sim(i,j)=\\frac\\sum_p\\in P(R_i,p-\\overlineR_i)(R_j,p-\\overlineR_j)\\sqrt\\sum_p\\in P(R_i,p-\\overlineR_i)^2\\sqrt\\sum_p\\in P(R_j.p-\\overlineR_j)^2 sim(i,j)=pP(Ri,pRi)2 pP(Rj.pRj)2 pP(Ri,pRi)(Rj,pRj)
其中, R i , p R_i,p Ri,p代表用户 i i i对物品 p p p评分 R ‾ i \\overlineR_i Ri代表用户 i i i对所有物品的平均评分 P P P代表所有物品的集合。

2.2.3 最终结果排序

在获得Top n相似用户后,生成的最终推荐结果过程如下。假设”目标用户与其相似用户的喜好相似的“,可以根据相似用户的已有评价对目标用户的偏好进行预测。

常见方式是利用用户相似度和相似用户的评价的加权平均获得目标用户的评价预测。
R u , p = ∑ s ∈ S ( w u , s ⋅ R s , p ) ∑ s ∈ S w u , s R_u,p=\\frac\\sum_s\\in S(w_u,s\\cdotR_s,p)\\sum_s\\in Sw_u,s Ru,p=sSwu,ssS(wu,sRs,p)
其中,权重 w u , s w_u,s wu,s是用户 u u u和用户 s s s的相似度, R s , p R_s,p Rs,p是用户 s s s对物品 p p p的评分。

在获得用户 u u u对不同物品的评价预测后,最终的推荐列表根据预测得分进行排序得到。至此,完成协同过滤的全部过程。

以上算法是基于用户近似度进行推荐,称为基于用户的协同过滤(UserCF

UserCF存在的缺点

  • 互联网应用场景下,用户数远大于产品数,UserCF需要维护用户相似度矩阵来找出Top n 用户。用户数的增长导致用户相似度矩阵的存储空间以 n 2 n^2 n2的速度增长,存储开销较大
  • 用户的历史数据量往往较为稀疏,购买次数较少的用户,其相似用户的准确度极低

2.2.4 ItemCF

基于物品平均分方式,减少物品评分偏置对结果的影响

s i m ( i , j ) = ∑ p ∈ P ( R i , p − R ‾ p ) ( R j , p − R ‾ p ) ∑ p ∈ P ( R i , p − R ‾ p ) 2 ∑ p ∈ P ( R j . p − R ‾ p ) 2 sim(i,j)=\\frac\\sum_p\\in P(R_i,p-\\overlineR_p)(R_j,p-\\overlineR_p)\\sqrt\\sum_p\\in P(R_i,p-\\overlineR_p)^2\\sqrt\\sum_p\\in P(R_j.p-\\overlineR_p)^2 sim(i,j)=pP(Ri,pRp)2 查看详情

后深度学习时代,推荐系统向何处去?

近年来,深度学习出现并统治了人工智能领域。推荐系统技术迎来了一次重大的革新,推荐系统正式进入了深度学习时代。学术界尝试用深度学习设计推荐算法,工业界也将深度学习广泛应用于实际项目。01推荐系统... 查看详情

keras深度学习实战——推荐系统数据编码(代码片段)

Keras深度学习实战——推荐系统数据编码0.前言1.推荐系统数据编码的必要性2.推荐系统数据编码2.1在推荐系统中对用户和电影进行编码2.2数据集介绍2.3用于推荐系统的编码策略2.4实现推荐系统编码模型相关链接0.前言在《自编码... 查看详情

深度学习推荐系统知识图谱结合推荐系统

https://flashgene.com/archives/91357.html  知识赋能的智能推荐将成为未来推荐的主流。智能推荐表现在多个方面,包括场景化推荐、任务型推荐、跨领域推荐、知识型推荐。1)场景化推荐  比如用户在淘宝上搜“沙滩裤&rdqu... 查看详情

19推荐系统5neuralcf

文章目录1、前言2、从深度学习的视角重新审视矩阵分解模型3、NeuralCF结构3.1、NeuralCF的学习3.2广义矩阵分解(GMF)3.3多层感知器(MLP)3.4GMF与MLP的融合3.4.1预训练4、NeuralCF模型的优势和局限性参考参考1、前言NeuralCF利用深度神经网络... 查看详情

王喆-深度学习推荐系统实战基础架构篇-(task1)dl推荐系统架构

学习心得通过task1的学习在脑海里建立DL背景的推荐系统架构:为了解决【在“信息过载”情况下,用户怎么高效获取感兴趣的信息】的问题,并且构建更好的拟合数据和表达能力的模型,深度学习上场了。其中DL... 查看详情

19推荐系统11fm与深度学习模型的结合

文章目录1、前言2、FNN——用FM的隐向量完成Embedding层初始化代码3.DeepFM——用FM代替Wide部分代码4、NFM——FM的神经网络化尝试参考一个典型的CTR流程如下图所示:如上图,主要包括两大部分:离线部分、在线部分࿰... 查看详情

受限玻尔兹曼机与推荐系统

...并取得比传统机器学习更好的效果提升。另一方面,智能推荐系统,本质上是从一堆看似杂乱无章的原始流水数据中,抽象出用户的兴趣因子,挖掘出用户的偏好,因此把深度学习与推荐系统相结合成为近年来 查看详情

推荐系统遇上深度学习--gbdt+lr融合方案实战

推荐系统遇上深度学习(十)--GBDT+LR融合方案实战0.8012018.05.1916:17:18字数2068阅读22568推荐系统遇上深度学习系列:推荐系统遇上深度学习(一)--FM模型理论和实践:https://www.jianshu.com/p/152ae633fb00推荐系统遇上深度学习(二)--FFM模型理论... 查看详情

收藏|新南威尔士首篇《深度强化学习推荐系统》综述论文!

...c;联系删除转载于:专知摘要鉴于深度强化学习(DRL)在推荐系统研究中的出现,以及近年来取得的丰硕成果,本研究旨在对深度强化学习在推荐系统中的最新发展趋势提供一个及时而全面的概述。我们从在推荐系统中 查看详情

推荐系统推荐系统数据流的经典技术架构+微软阿里微软等10大深度学习ctr模型最全演化图谱

文章目录一、推荐、广告、搜索系统的区别?1.1根本问题区别1.2优化目标的区别1.3模型本身的差异二、推荐系统技术架构2.1数据部分2.2模型部分2.3推荐系统数据流的技术架构图三、深度学习推荐模型的演化趋势3.1前深度学习... 查看详情

深度学习推荐系统领域的15个问题

深度学习推荐系统领域的15个问题转:https://zhuanlan.zhihu.com/p/1231032061.如果领导让自己同时带一个NLP团队和CV团队,而此时对CV却不熟悉,一般如何快速建立这样的多种类型的知识体系呢?和我的经历有一点像,我在职业生涯头五... 查看详情

当推荐系统遇上深度学习

原文:DeepLearningMeetsRecommendationSystemsPublishedbyWann-JiunMaat**January24,2017https://blog.nycdatascience.com/student-works/deep-learning-meets-recommendation-systems/ContributedbyWann-JiunMa.Heisc 查看详情

推荐系统遇上深度学习(代码片段)

推荐系统遇上深度学习(一)--FM模型理论和实践 https://www.jianshu.com/p/152ae633fb001、FM背景在计算广告和推荐系统中,CTR预估(click-throughrate)是非常重要的一个环节,判断一个商品的是否进行推荐需要根据CTR预估的点击率来进行。在... 查看详情

深度解析推荐系统的算法原理

目录一、推荐系统介绍1.1推荐系统的应用1.2推荐系统的目标 查看详情

基于任意深度学习+树状全库搜索的新一代推荐系统

...了阿里技术对基于任意深度学习+树状全库搜索的新一代推荐系统的一些看法。Part0背景随着时代日新月异,推荐技术对各大互联网公司都起着越来越重要的作用,阿里针对大规模候选集上的匹配推荐问题,自主创新提出了一套崭... 查看详情

传统机器学习和前沿深度学习推荐模型演化关系介绍

本文来自王喆老师《深度学习推荐系统》一书,如果有一定的推荐系统基础的话,建议读一读,当然如果只是初学者的话还是建议从基础的开始学起,比如《推荐系统开发实战》。传统机器学习推荐模型演化简单... 查看详情

推荐系统遇上深度学习(九十七)-[阿里]使用用户未点击行为增强序列推荐效果

推荐系统遇上深度学习(九十七)-[阿里]使用用户未点击行为增强序列推荐效果2020.10.3122:01:14在推荐场景中,用户行为序列往往是很重要的一类特征,但过去介绍的模型中,大都只使用了用户有交互行为的序列,如点击序列,下单... 查看详情