欢迎来到报告吧! | 帮助中心 分享价值,成长自我!

报告吧

换一换
首页 报告吧 > 资源分类 > PDF文档下载
 

2020-2021推荐系统加速框架研究报告.pdf

  • 资源ID:128233       资源大小:5.25MB        全文页数:26页
  • 资源格式: PDF        下载积分:20金币 【人民币20元】
快捷下载 游客一键下载
会员登录下载
三方登录下载: 微信开放平台登录 QQ登录  
下载资源需要20金币 【人民币20元】
邮箱/手机:
温馨提示:
用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,下载共享资源
 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

2020-2021推荐系统加速框架研究报告.pdf

2020-2021推荐系统加速框架研究报告前言伴随着消费升级和信息过载,推荐系统在互联网中占据愈发重要的地位,好的推荐系统将“高效地、快速地、精准地”为用户提供内容推荐。为实现更高效地利用底层硬件资源、更快速地数据预处理和训练部署模型、更精准地完成内容推荐,建设和使用端到端的推荐系统加速框架势在必行。本白皮书内容共分3章内容,包括推荐系统产业分析、NVIDIA Merlin框架介绍、NVIDIA Merlin框架应用分析及前景展望等。第一章为推荐系统产业分析。该章节介绍新一代消费互联网业务驱动类型及核心算法,分析对比了新一代消费互联网的6种常见的业务驱动类型的内容和其对应的核心算法,得出推荐算法是新一代消费互联网的最重要的核心算法之一的结论,然后介绍了推荐系统的定义及分类,分析了当前推荐系统所面临的技术挑战,并且这些技术挑战恰为推荐系统加速框架的发展机遇。推荐系统的技术需求引出了发展推荐系统加速框架的必然性,介绍了推荐系统加速框架的定义与分类,分析了推荐系统加速框架的发展趋势,并分别分析了全球和中国的推荐系统加速框架的产业现状和发展趋势。第二章为NVIDIA Merlin框架介绍。进行了NVIDIA Merlin框架简介及优势分析,对NVIDIA Merlin框架进行简要介绍并分析了其优势和发展路径。并从NVIDIA Merlin框架结构分析、NVIDIA Merlin框架技术优势分析、NVIDIA Merlin框架仍需发展的方面、NVIDIA Merlin框架产业地位等4个方面综合介绍NVIDIA Merlin框架技术情况。第三章为NVIDIA Merlin框架应用分析及前景展望,介绍现有的NVIDIA Merlin框架应用情况,并对NVIDIA Merlin框架进行前景展望。一、推荐系统产业分析1(一)新一代消费互联网的业务驱动类型及核心算法概述 1(二)推荐系统简介 21、推荐系统定义及分类 22、推荐系统技术发展趋势 53、推荐系统技术面临的挑战 6(三)推荐系统加速框架简介 71、推荐系统加速框架发展背景 72、推荐系统加速框架定义 73、推荐系统加速框架分类比较 84、推荐系统加速框架发展趋势 9(四)推荐系统加速框架产业分析 101、推荐系统加速框架产业竞争格局 102、全球推荐系统加速框架产业发展现状 103、中国推荐系统加速框架产业发展现状 114、推荐系统加速框架产业发展趋势 12二、Merlin框架介绍13(一)Merlin框架简介与优势分析 131、Merlin框架简介 132、Merlin框架优势分析 14(二)Merlin框架技术分析 151、Merlin框架结构分析 152、Merlin技术优势 183、Merlin仍需发展的方面 204、Merlin框架在推荐系统加速框架产业中的地位分析 20目录三、Merlin框架应用分析及前景21(一)Merlin框架应用分析 211、应用分析 212、典型应用场景 21(二)Merlin框架未来发展展望 221、不断完成自身迭代,完善产品功能 222、探索更多合作方式,拓展更多应用场景 223、优化互联网公司已有的推荐系统,不断扩大Merlin的生态体系 22图1 推荐系统分类 3图2 深度学习推荐系统面临的挑战 7图3 推荐系统加速框架发展趋势 9图4 全球推荐系统框架市场规模 10图5 中国推荐系统框架市场规模 11图6 推荐系统加速框架产业发展趋势 12图7 Merlin结构图 13图8 Merlin框架优势分析 14图9 Merlin结构图 15图10 NetFlix的实时推荐系统的架构图 17图11 Merlin技术优势 18图12 RAPIDS 引擎结构 19图13 腾讯应用Merlin框架训练视频平台 21图14 Merlin框架未来发展展望 22表1 新一代消费互联网的业务驱动类型及核心算法 2表2 推荐系统加速框架分类比较 8图目录表目录1(一)新一代消费互联网的业务驱动类型及核心算法概述从2018年开始,腾讯等知名互联网公司纷纷调整组织架构,这标志着消费互联网进入新时代。2019年,天猫“双11”的成交额达到了2684亿元,而天猫的推荐系统实现了首页商品的个性化推荐,其目标是提高转化率和点击率。假设推荐系统整体的转化率提高1%,那么增加的成交额大约就是26.84亿。推荐系统的转化力就是消费互联网的生产力。新一代消费互联网以效率提升为目标,客户需求专业化程度高,决策成本高,不易规模化。新一代消费互联网有六大驱动类型:流量驱动、产品驱动、技术驱动、物联驱动、中台驱动、场景驱动等。流量驱动。 该驱动类型模型一端连接消费者,另一端连接商家。在拥有海量消费者之后,挟“流量”之威,纷纷进入“交易-营销-SAAS服务”的企业级服务降维攻击通道,跨界来抢占传统的营销、公关、广告和SAAS服务(Software-as-a-Service即软件服务)等企业级市场。消费互联网巨头的优势是:拥有交易的巨大势能;面临的挑战是:企业级客户普遍不喜欢一家独大的产业格局。因此,我们也观察到了一种趋势:这些巨头们主动建立生态圈,引入或投资第三方服务,来舒缓客户的戒备心理。流量驱动的例子有阿里钉钉、美团餐饮等。流量驱动的相关核心算法主要包括软件系统、即时通讯IM、新一代通信技术、云计算等。产品(内容)驱动。 该驱动类型在项目的进展中,主要方向从产品的功能设计出发,创新和基于产品的内容的丰富程度、推送的准确度是整个团队的核心和驱动力,技术团队在这个方向下配合,并做出对应的技术创新。产品驱动是所有消费互联网均涉及的重要业务驱动类型,产品驱动的最典型的例子包括搜索引擎、社交网络、新媒体、短视频推荐、电商平台、订阅及广告推荐、云音乐等。产品(内容)驱动的相关核心算法中最重要的就是推荐算法。技术驱动。 该驱动类型以云计算为基础,以大数据为依托,以人工智能为导向,正在把先进科技应用到细分市场中。竞品市场以技术参数和指标为胜,项目团队以技术为驱动。技术驱动的例子有云视频产品、直播带货等。技术驱动的相关核心算法取决于细分竞品市场的具体算法,如编解码算法、视频推荐算法等。物联驱动。 互联网公司、通讯公司、硬件制造商正在运用通信技术和数字技术,把传感器、控制器、人和物等通过新的联网方式,把几十亿的海量设备连接起来。海量物联网数据将极大地补充消费者的原始数据,为其提供更加个性化和贴心的消费服务。物联驱动的例子有智能车载系统、智慧车联网、智能家居等。物联驱动的相关核心算法主要包括云计算、边缘计算、大数据处理及项目特征提取算法等。中台驱动。 该驱动类型负责连接企业各类业务组织,是企业内部最大的服务商。同时,不仅为内部客户服务,还为外部客户服务,在新一代消费互联网中主要指消费型数据中台,该数据中台实现了与业务中台打通。中台驱动的例子有腾讯的数字化助手等。中台驱动的相关核心算法主要包括大数据处理、云计算、人工智能等。场景驱动。 该驱动类型针对其业务合作中的部分企业,推出围绕着企业在某一场景痛点的解决方案,企业采购这些服务后,往往能够明显降低成本或提升经营效率。“成本和效率”可以因果化、可视化的云解决方案服务商,将会迎来爆发式增长。场景驱动的例子有针对性软件服务框架、基于云系统的客户关系管理工具、基于云系统的数字化门店解决方案、基于云系统的消费者行为分析方案等。场景驱动的相关核心算法主要包括云计算、人工智能等。一、推荐系统产业分析2其中推荐算法属于人工智能的一种细分算法,上表中的部分人工智能也包括推荐算法在内。通过比较新一代消费互联网的业务驱动类型及相应的核心算法我们不难看出,推荐算法在消费升级趋势下的互联网的算法中占据举足轻重的地位,是产品(内容)驱动、技术驱动等重要的业务驱动类型的核心算法之一。好的推荐算法为互联网产品带来的销售额、点击量、用户留存等方面的提升十分显著。因此推荐算法是新一代消费互联网中的最重要的核心算法之一。新一代消费互联网的业务驱动类型及核心算法表1类型 典型例子 核心算法流量驱动 阿里钉钉、美团餐饮软件系统、即时通讯IM、新一代通信技术、云计算产品(内容)驱动搜索引擎、社交网络、新媒体、短视频推荐、电商平台、订阅及广告推荐、云音乐推荐算法技术驱动 云视频产品、直播带货 编解码算法、视频推荐算法物联驱动 智能车载系统、智慧车联网、智能家居云计算、边缘计算、大数据处理及项目特征提取算法中台驱动 腾讯的数字化助手 大数据处理、云计算、人工智能场景驱动针对性软件服务框架、基于云系统的客户关系管理工具、基于云系统的数字化门店解决方案、基于云系统的消费者行为分析方案云计算、人工智能数据来源: 赛迪顾问 2020,11(二)推荐系统简介 1、推荐系统定义及分类(1)推荐系统定义推荐系统(Recommender System)是向用户建议有用物品(“物品”指系统向用户推荐内容的总称)的软件工具和技术。它可以通过向用户建议有用的物品,帮助用户决策,如购买什么物品、听什么音乐、在网上浏览什么新闻等。一个推荐系统通常专注于一个特定类型的物品(如CD或新闻),因此它的设计、图形用户界面以及用于生成建议的核心的推荐技术都是为特定类型的物品提供有用和有效的建议而定制的。人们在做日常工作和决策时总是依赖于其他人提供的建议,这样的需求催生了推荐系统。例如,要选择一本书的时候,通常依靠朋友的推荐;当选择观看的影片时,人们倾向于依赖影评;雇主依靠推荐信做招聘的决定。在面对潜在的大量可供选择的物品,而又缺乏足够的个人经验和评估能力时,人们往往可以借助推荐系统更轻松地做出选择。例如,图书推荐系统可以帮助用户挑选一本书来读。推荐包括个性化推荐和非个性化推荐。非个性化推荐: 如书籍和CD等的top10推荐,通常比较简单,虽然在某些情况下是有用和有效的,但它们通常不是推荐系统要研究解决的问题。3个性化推荐: 如亚马逊网站采用个性化推荐系统为每个客户进行推荐,不同的用户或用户组接收的建议是不同的。个性化推荐最简单的形式是推荐系统根据用户的偏好和其他约束条件来预测最合适该用户的产品或服务,并形成一个排好序的物品列表。为此,推荐系统需要收集用户的显式喜好,如为产品打分;或通过解释用户的行为做出推断,例如,推荐系统可能会把访问某个特定商品详情页的行为作为该用户喜爱这个主页上的商品的隐式信号。(2)推荐系统分类根据推荐方法的不同,传统的推荐系统主要包括基于内容(content-based)的推荐系统、基于协同过滤(collaborative filtering)的推荐系统和混合推荐系统。基于内容的推荐系统为用户推荐与他们过去的兴趣类似的物品,这种物品间的相似性是由被比较的物品的特征计算得到的。例如,如果某个用户对一部喜剧电影有了正面的评价,那么系统就能学会从喜剧类型中(为该用户)推荐其他电影。基于协同过滤的推荐系统通过找到与用户有相同品味的用户,然后将相似用户过去喜欢的物品推荐给用户,两用户间的相似偏好通过计算用户历史评分记录相似度得到。考虑到单一推荐方法都存在各自的不足,通过组合不同的推荐算法进行混合推荐,往往能够产生更好的推荐性能,这就是混合推荐系统。推荐系统分类图1数据来源 :赛迪顾问 2020,11近年来,深度学习在图像处理、自然语言理解和语音识别等领域取得了突破性进展,也为推荐系统的研究带来了新的机遇。基于深度学习的推荐系统通常将各类用户和项目相关的数据作为输入,利用深度学习模型学习到用户和项目的隐表示,并基于这种隐表示为用户产生项目推荐。基于深度学习的推荐系统具有以下方面的优势:1)能够直接从内容中提取特征,表征能力强;2)容易对噪声数据进行处理,抗噪能力强;3)可以使用循环神经网络对动态或者序列数据进行建模;4)可以更加准确地学习用户与物品的特征。根据推荐算法的不同,基于深度学习的推荐系统又可分为基于DNN的推荐系统、基于DeepFM的推荐系统、基于矩阵分解和图像特征的推荐系统、基于基于循环网络的推荐系统,简介如下:a.基于DNN的推荐算法深度神经网络(Deep Neural Networks,以下简称DNN)内部的神经网络层可以分为三类:输入层,隐藏层和输出层,一般来说第一层是输入层,最后一层是输出层,而中间的层数都是隐藏层,层与层之间是全连接的,也就是说,第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。4推荐系统和类似的通用搜索排序问题共有的一大挑战为同时具备记忆能力与泛化能力。记忆能力可以解释为学习那些经常同时出现的特征,发掘历史数据中存在的共现性。泛化能力则基于迁移相关性,探索之前几乎没有出现过的新特征组合。基于记忆能力的推荐系统通常偏向学习历史数据的样本,直接与用户己经采取的动作相关;泛化能力相比记忆能力则更趋向于提升推荐内容的多样性。所以自然而然地可以想到,通过联合训练一个线性模型组件和一个深度神经网络组件得到Wide & Deep模型。这样用一个模型就可以同时获得记忆能力和泛化能力。You Tube团队在推荐系统上进行了DNN方面的尝试,目前已经被百度、阿里巴巴、腾讯等各大互联网公司引入推荐系统中。一般来讲整个推荐系统分为召回和排序两个阶段。召回阶段通过i2i /u2i /u2u/ user profile等方式“粗糙”地召回候选物品,召回阶段视频的数量是百万级别;排序阶段对召回后的视频采用更精细的特征计算user-item之间的排序分,作为最终输出推荐结果的依据。b.基于DeepFM的推荐算法Deep FM是一个集成了FM(Factorization Machine)和DNN的神经网络框架,思路和Google的Wide & Deep有相似的地方,都包括wide和deep两部分。区别在于,W&D 模型的wide部分是高维线性模型,Deep FM的wide部分则是FM模型;两者的deep部分是一致的,都是DNN层。W&D模型的输入向量维度很大,因为wide部分的特征包括了手工提取的pair-wise特征组合,大大提高了计算复杂度。和W&D模型相比,Deep FM的wide和deep部分共享相同的输入,可以提高训练效率,不需要额外的特征工程,用FM建模低阶的特征组合,用DNN 建模高阶的特征组合,因此可以同时从 raw feature中学习到高阶和低阶的特征交互。在真实应用市场的数据集上实验验证,Deep FM在CTR预估的计算效率和AUC、Log Loss上超越了现有的模型 (LR、FM、FNN、PNN、W&D)。c.基于矩阵分解和图像特征的推荐算法传统的推荐系统往往会遇到行为数据稀疏、冷启动等问题,比如在Netflix数据库,平均每个用户只参与200个电影的评分,但实际上,数据库里有上万部电影,稀疏的评分数据不利于模型的学习。寻找一些附加信息帮助模型训练是非常有用的手段。研究表明,电影的海报和一些静止帧图片能提供许多有价值的附加信息,因此,可将视觉特征作为附加信息用于提升推荐系统的质量。为此,作者们提出了一种基于矩阵分解和图像特征的推荐算法(Matrix Factorization,缩写为MF)。d.基于循环网络的推荐算法传统的推荐系统,比如基于协同过滤的推荐算法等,都假设用户偏好和电影属性是静态的,但本质上,它们是随着时间的推移而缓慢变化的。例如,一部电影的受欢迎程度可能由外部事件(如获得奥斯卡奖)所改变或者用户的兴趣随年龄的增长而改变。数据科学家提出基于循环神经网络分别对用户和电影的时序性建模,该方法也满足统计分析中的因果关系,根据历史的评分数据预测将来的用户偏好。通过两个循环神经网络分别对用户和电影的时序性建模,用户的隐藏状态依赖于用户在当前时刻对电影的评分和前一时刻用户的状态,电影的隐藏状态依赖于当前时刻其他用户对这部电影的评分以及前一时刻电影的状态。此外,该模型还结合了通过矩阵分解得到的用户和电影的静态属性。5 2、推荐系统技术发展趋势(1)深度学习与传统推荐方法的结合传统的推荐方法,包括基于内容的方法和协同过滤方法,都采用浅层模型进行预测,依赖于人工特征提取,很难有效学习到深层次的用户和项目隐表示。通过利用深度学习模型融合广泛的多源异构数据,包括社会化关系、用户或项目属性、以及用户的评论和标签信息等,能够学习到更加抽象、更加稠密的用户和项目的深层次表示,同时采用深层神经网络结构构建预测模型也能够更好地抓住用户和项目之间交互的非线性结构特征。但同时,传统的推荐方法,具有简单、可解释性强等优势。因此,将深度学习与现有推荐方法结合,能够融合两种方法的优势。(2)基于深度学习的跨领域信息融合的推荐随着数据获取能力的不断提升,用户在不同领域的历史记录或项目在不同领域的信息能够被获取。例如,一个用户可能在多个社交媒体平台上注册账号,融合用户在不同平台上的数据能够进行跨领域信息融合的推荐,帮助克服单一领域信息的不足,从而有效缓解传统推荐系统中的数据稀疏和冷启动问题,同时利用多个领域数据能够更好地发现用户的个性化偏好。针对跨领域推荐问题的研究,当前最主要的研究方法包括基于协同过滤的方法、基于迁移学习的方法和基于张量分解的方法等。但是,这些方法都只针对不同领域中特定类型的信息进行融合,适应性非常有限。当前,利用深度学习技术,通过将各类数据通过嵌入式表示等方法作为统一输入,构建深层预测模型能够有效融合各种不同类型的、跨平台的异构数据进行推荐,已经在Google和微软等互联网公司的实际系统中被应用。未来通过构建深度学习模型来实现跨领域信息融合的推荐,将是学术界和工业界研究的重点方向。(3)注意力机制与基于深度学习的推荐系统的结合基于注意力机制的深度学习是人类视觉中的选择注意力机制与深度神经网络的结合,目前在计算机视觉、自然语言处理等领域取得了巨大成功。当前,注意力机制已经被应用于MLP、RNN、CNN和其它深度学习模型,这里重点介绍基于注意力的RNN和基于注意力的CNN。基于注意力的RNN能够更好地建模序列数据中的长期记忆,基于注意力的CNN能够从输入中识别与问题最具有信息量的部分。将注意力机制应用到在推荐系统中,能够帮助推荐系统抓住项目中最具有信息量的特征,推荐最具有代表性的项目,同时增强模型的可解释性。当前,注意力机制已经在Hashtag推荐、文章推荐、多媒体推荐、引用推荐等问题中得到了应用。不过目前的相关研究较少,未来还待更深入广泛的研究。(4)新的深度学习推荐系统架构推荐系统涉及到不同的推荐对象和推荐场景,如电影推荐、音乐推荐、图像推荐、商品推荐、地理位置推荐等。一方面,针对所有任务构建统一的深度学习推荐模型几乎是不可能的,需要根据不同的推荐场景考虑不同的数据构建新的深度学习框架来产生推荐,包括推荐项目的具体内容信息,推荐系统中涉及的辅助数据(评论、标签、用户画 像信息、用户的社会化关系等),以及推荐的情景信息(时间、位置等)等,因此面对新的推荐场景需要设计新的深度学习推荐系统架构。另一方面,当前的推荐系统需要建模的要素众多,不仅仅包括用户与项目之间的交互数据,还涉及到用户行为的时空序列模式、社会化关系影响、用户偏好的动态演化和项目特征的动态变化等,建模更多的要素能够提升推荐系统的性能。因此,构建能够表达和融合多种要素的、新的深度学习架构也是未来重要发展方向之一。6(5)基于深度学习的推荐系统的可解释性推荐系统除了直接展示推荐结果之外,往往还要展示恰当的推荐理由来告诉用户为什么系统认为这样的推荐是合理的。提升推荐系统的可解释性可以提高用户对推荐结果的接受度,同时也可以提高用户在系统透明度、可信度、可辨性、有效性和满意度等方面的体验。已有的推荐方法使用主题模型学习到的话题及显式的物品特征来加强可解释性。但是,基于深度学习推荐系统采用端到端的模型直接将多源异构数据作为输入预测用户对项目的偏好,模型训练的结果是给出深度神经网络的结构和神经元之间的连接权重,很难对推荐结果直接给出合理的解释。因此需要数据、模型和经济意义等层面上增加研究,提升基于深度学习的推荐系统的可解释性,以将推荐系统应用在更多的场景中。 3、推荐系统技术面临的挑战(1)巨量数据处理带来的挑战庞大的数据集: 商业推荐系统经常在大型数据集上进行训练,通常为TB或更大。在这种规模上,数据ETL和预处理步骤通常比训练DL模型花费更多的时间。复杂的数据预处理和功能工程流水线: 需要对数据集进行预处理并将其转换为适合与DL模型和框架一起使用的形式。功能工程试验从现有功能中创建了许多新功能,并对其有效性进行测试。此外,训练时的数据加载的吞吐量过低可能会成为瓶颈,导致GPU使用率不足。巨大的嵌入表: 嵌入是当今普遍使用的技术,用于处理分类变量,尤其是用户和商品ID。在大型商业平台上,用户和商品库可以轻松达到数亿甚至数十亿的订单,与其他类型的DL层相比需要大量的存储空间。同时与其他DL操作不同,嵌入查找是受内存带宽限制的。CPU通常提供更大的内存池,但与GPU相比,GPU的内存带宽低得多,传统的CPU不能满足巨大的嵌入表的处理需求。(2)模型训练中存在的问题广泛的重复实验: 整个数据ETL,工程训练和评估过程可能必须在许多模型架构上重复多次,这需要大量的计算资源和时间。然而在部署推荐系统后,推荐系统还需要定期进行重新训练以适应新用户、新项目和最新趋势,以便随着时间的推移保持较高的准确性。分布式训练: 按照MLPerf基准,分布式训练在视觉和自然语言领域的DL模型训练中不断创造新记录,但由于大数据的独特组合,分布式训练对于推荐系统仍然是一个相对较新的领域,既需要模型并行性,又需要数据并行性,很难实现高横向扩展效率。(3)推理过程中存在的挑战实时推断: 对于每个查询用户,即使在候选缩减阶段之后,要评分的用户项对应的数量也可能高达数千。这给DL推荐系统推论服务器带来了沉重的负担,该推论系统必须提高吞吐量以同时为许多用户提供服务,但要以低延迟满足在线商务引擎的严格延迟阈值。监视和再训练: 推荐器系统在不断变化的环境中运行,新用户、新物品、热门趋势不断出现。因此,推荐系统需要持续的监控和再训练以确保高效。推理服务器还必须能够同时部署模型的不同版本,并能即时加载/卸载模型以促进A / B测试。7(三)推荐系统加速框架简介 1、推荐系统加速框架发展背景深度学习推荐系统面临的挑战图2数据来源 :赛迪顾问 2020,11深度学习可通过学习一种深层次非线性网络结构,表征用户和项目相关的海量数据,具有强大的从样本中学习数据集本质特征的能力,能够获取用户和项目的深层次特征表示。此外,深度学习通过从多源异构数据中进行自动特征学习,从而将不同数据映射到一个相同的隐空间,能够获得数据的统一表征,在此基础上融合传统推荐方法进行推荐,能够有效利用多源异构数据,缓解传统推荐系统中的数据稀疏和冷启动问题。尽管深度学习推荐模型得到了广泛的应用,但同时也带来了庞大的计算需求。在推荐系统实验阶段,提取-转换-加载(ETL)操作准备并导出数据集进行训练,通常采用表格形式的数据形式,可以达到TB或PB规模。大量的使用用户以及他们产生的各种各样的信息导致推荐系统面临巨量的待处理数据,因此数据预处理和ETL通常比训练模型时间长的多;与此同时,数据类型的多样性导致了预处理过程复杂,大量的数据通过特征工程后生成大量的特征数据,使得加载这些数据进行模型训练成为输入瓶颈;巨量的数据种类还导致了巨大的查找表,使它们无法同时加载到内存中,因此需要频繁读取磁盘内容,这会造成带宽瓶颈;此外,推荐系统的训练还需要同时兼顾模型并行性和数据并行性。为了解决这些问题,我们需要端到端GPU上推荐程序框架用以提供快速功能工程和高培训吞吐量。 2、推荐系统加速框架定义推荐系统加速框架是面向推荐系统的端到端解决方案。由于目前主流的推荐系统以深度学习推荐系统为主,推荐系统加速框架一般为针对深度学习推荐系统的端到端解决方案,能够优化深度学习推荐算法,将加速推荐算法的训练、部署等过程。8推荐系统加速框架分类比较表2数据来源: 赛迪顾问 2020,11分类 典型深度学习框架 特点通用型TensorFlow、PyTorch、Keras支持包括推荐算法在内的多种深度学习算法,未能针对深度学习推荐算法进行优化专用型 NVIDIA Merlin仅支持深度学习推荐算法,面向深度学习推荐算法同时针对硬件系统及软件算法进行了优化,并包含数据预处理、模型训练、推理及交互等完整的推荐系统结构通用型和专用型深度学习推荐系统加速框架的主要区别在于,通用型深度学习框架的设计主要用于支持多种深度学习算法,未能针对深度学习推荐算法进行优化(包括硬件加速、软件和工具精简化等),也没有实现针对推荐系统的完整结构,如TensorFlow、PyTorch等一般仅包含用于深度学习模型训练的工具集,缺少专用于数据预处理和模型部署推理及交互的工具集。而专用型深度学习推荐系统加速框架仅面向于深度学习推荐算法,并针对性进行硬件和软件的优化,如NVIDIA Merlin针对用于深度学习的GPU进行硬件优化的同时还精简了用于推荐算法的工具集。此外,专用型深度学习推荐系统加速框架还具有整体化设计思维,其结构包含数据预处理、模型训练、推理及交互等完整的推荐系统结构,能够实现高速及高吞吐量。典型的通用型深度学习框架简介如下:TensorFlow: 是谷歌基于DistBelief进行研发的第二代人工智能学习系统,该命名“TensorFlow”为张量从数据流图的一端流动到另一端的计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网络中进行分析和处理的系统,用于机器学习和深度神经网络方面的研究,其通用性使其也可广泛用于其他计算领域。TensorFlow具有灵活性、可移植性、产研结合型、自动求微分、多语言支持、硬件加速优化等特性。PyTorch: 是Torch框架的支持Python的版本,Torch框架基于Lua语言开发,该语言在数据科学与人工智能领域的应用已不常见。PyTorch使用动态图模型,更加方便地定制网络结构,特别受到科研人员的欢迎。PyTorch框架可通过调用.cuda()的方法实现GPU加速。Keras: 是一个由Python编写的开源人工神经网络库,可以作为Tensorflow、Microsoft-CNTK和Theano的高阶应用程序接口,进行深度学习模型的设计、调试、评估、应用和可视化。Keras的句法非常简单明晰,强调极简主义,文档丰富、使用简单,可直观了解其指令、函数和每个模块之间的链接方式。推荐系统加速框架服务于部分标准化的深度学习推荐系统,为这些推荐系统提供较多常用模块的接口,旨在提供快速功能工程和高培训吞吐量,以实现深度学习推荐程序模型的快速实验和生产再培训。 3、推荐系统加速框架分类比较根据推荐系统加速框架对推荐系统的专用性,可将推荐系统加速框架分为通用型推荐系统加速框架与专用型推荐系统加速框架,分类比较如下:9推荐系统加速框架发展趋势图3数据来源 :赛迪顾问 2020,11(1)进一步“加速”推荐系统框架不仅要作为框架方便训练与部署推荐算法模型,还要实现更快的训练和部署的速度。深度学习推荐系统数据处理、模型训练通常需要较长的时间,而互联网产品倾向于花费更短的时间以快速把握市场变化,因此加速训练与部署推荐算法将是重要的趋势。实现该加速过程一方面需要较为完整的系统性设计以实现数据的快速利用与流转,需要算法与系统框架的配合;另一方面从底层硬件开始实现软硬件配合加速,使用专用型硬件对深度学习算法实现加速,使加速框架充分利用硬件资源实现加速。(2)由通用型向专用型发展以TensorFlow、Pytorch为代表的深度学习框架适应于各种深度学习算法的数据处理、模型训练,保持良好的通用性的同时也降低了其框架对于某个特定用途、特定需求的深度学习算法的针对性支持,造成算力资源的浪费、算法的冗余、编程过程的复杂等,增加了开发难度,不利于算法的发展与迭代。随着推荐系统在互联网企业的软件生态中占有愈发重要的地位,越来越多的企业在软件生态中引入推荐系统,也有更多的企业需要更快的推荐系统。推荐算法作为深度学习中发展最快、最具价值的算法之一,开发专用于其的框架是重要趋势。专用型推荐系统框架相比通用型能较大幅度加快数据处理、模型训练进程,缩短训练周期、增加迭代次数,提升推荐的准确度。(3)开发难度逐渐降低保证工作效率和准确的同时,形成更多标准化接口和标准化软件包、降低开发难度,始终是软件开发的重要趋势。在算力不够充分的时代,软件开发者往往需要凭借对底层硬件的了解,从计算机科学的角度针对性地对软件进行优化,以节省资源、提升运行效率。但是随着算力的大幅提升,算法的冗余、资源的浪费逐渐让位于开发效率,实现功能、创造价值变得更加重要。对推荐算法而言,采用专用型推荐系统加速框架将为推荐算法提供更多标准化的接口、软件包等,极大地降低开发难度,实现更快的数据处理、模型训练与部署,帮助互联网公司提升用户留存与转换。(4)向全链路框架发展以TensorFlow、Pytorch为代表的深度学习框架在推荐算法中往往主要用于模型训练部分,对于数据 4、推荐系统加速框架发展趋势10预处理和模型部署及与用户交互,尽管有相应的解决方案,但是往往开发复杂度较高,并未能有效进行系统化设计,在数据吞吐、算法复用、运行效率等方面存在很大提升空间。专用型全链路的推荐系统加速框架针对于推荐系统的全流程进行顶层设计与优化,从数据预处理、Embedding到模型训练到模型的部署及用户请求交互,实现全链路的优化,将大幅提升推荐系统的运行效率。(四)推荐系统加速框架产业分析 1、推荐系统加速框架产业竞争格局推荐系统加速框架目前的竞争格局中,以互联网公司自主研发为主,典型案例为阿里巴巴的Personal Content Recommendation、Microsoft的自研推荐系统等。由于对推荐系统需求较大的互联网公司一般体量较大,拥有的开发能力可以满足自主研发推荐系统及推荐系统框架的需求。仍有相当比例的互联网公司采用主流的深度学习框架搭建推荐系统,包括TensorFlow、PyTorch等,使用这些通用型深度学习框架用于优化运行在以CPU为核心的服务器上的推荐系统,也支持优化以GPU为算力核心的服务器。NVIDIA Merlin是专用于推荐系统的深度学习加速框架,并且仅用于优化运行在以GPU为算力核心的服务器上的推荐系统,随着AI对GPU的需求逐渐提升,NVIDIA Merlin的竞争力不断加强。应用NVIDIA Merlin构建推荐系统的案例包括腾讯视频平台等。需要注意的是,自主研发推荐系统及推荐系统框架的互联网公司也有相当比例会采用或借鉴主流的推荐系统框架,并将整个系统按照自身已有的产品标准构建。 2、全球推荐系统加速框架产业发展现状随着推荐算法在互联网产业中的重要性快速提升,全球推荐系统加速框架产业市场规模呈现逐年增长的趋势。2019年全球推荐系统加速框架产业市场规模达2352亿美元,预计到2024年全球推荐系统加速框架产业市场规模将超过1.1万亿美元。全球推荐系统框架市场规模图4数据来源 :赛迪顾问 2020,1111中国推荐系统框架市场规模图5数据来源 :赛迪顾问 2020,11 3、中国推荐系统加速框架产业发展现状中国是互联网市场庞大,互联网用户众多,推荐系统加速框架产业市场规模呈现逐年增长的趋势。2019年中国推荐系统加速框架产业市场规模达2.16万亿人民币,预计到2024年中国推荐系统加速框架产业市场规模将超过7.7万亿人民币。12(1)消费互联网将成为使用推荐系统加速框架的重要细分市场消费互联网一直保持着高于互联网产业总体的增长速度。消费互联网在全球互联网的地位越来越重要,占比将越来越高。而在消费互联网中优化推荐系统,给予用户更为精准的产品推荐是决定互联网产品发展的关键,消费互联网将成为使用推荐系统加速框架的重要细分市场。(2)以GPU为基础算力的推荐系统呈现快速增长趋势推荐系统需要依托服务器处理大量数据,而服务器及大数据中心以CPU算力为主,随着人工智能、云计算的算力需求不断提升,以GPU、ASIC及其他专用型AI芯片为基础算力的服务器及大数据中心不断增多。而GPU凭借其通用型强、对AI加速效果显著的特性,越来越多被搭载在服务器及数据中心中。全球GPU龙头NVIDIA财报显示,基于GPU的大数据中心已经成为其营收最多的主营业务。随着基于GPU服务器及数据中心的增多,以GPU为基础算力的推荐系统呈现快速增长趋势,能够实现对模型训练、推荐准确度等多项指标的显著提升。(3)新一代信息多技术融合,推荐系统加速框架需要适应新变化互联网产业技术不断更新发展。目前,以大数据、智能化、移动互联网、云计算、人工智能为代表的新一代信息通信技术与经济社会各领域全面深度融合,催生了很多新产品、新业务、新模式,在整个产业链中的优势不断放大,未来具有巨大的市场潜力。新一代信息多技术融合,推荐系统加速框架也需要不断升级适应。推荐系统加速框架产业发展趋势图6数据来源 :赛迪顾问 2020,11 4、推荐系统加速框架产业发展趋势13(一)Merlin框架简介与优势分析 1、Merlin框架简介NVIDIA Merlin是NVIDIA推出的基于GPU的用于构建大规模深度学习推荐系统的开放框架,它提供的工具可以使开发者更加自主地构建深度学习推荐系统,从而获得比传统推荐方法更准确的预测以提高用户的点击率。Merlin为用户提供了一个全链路解决方案,用于为推荐系统提供GPU加速的数据提取、模型训练和模型部署。Merlin链路的每个环节经过优化后可支持数百TB的数据,所有数据都可通过易于使用的API访问。它可以利用基于NVIDIA Ampere架构的全NVIDIA A100 GPU,帮助企业构建推荐系统。Merlin结构图图7数据来源 :英伟达官网,赛迪顾问 2020,11Merlin框架结构图如上图所示,各部分功能简介如下。NVTabular是一个特征工程和预处理库,旨在通过GPU加速特征转换和预处理来减少数据准备时间。它提供了一个高维度的抽象,并使用RAPIDS cuDF库加速GPU上的计算,能快速、轻松地处理TB级的推荐系统数据集。Huge CTR是一个深度神经网络训练框架,被设计用于模型并行嵌入表和数据并行神经网络的分布式训练,能够跨多个GPU和节点进行分布式训练,以实现最高性能。Huge CTR涵盖了深度学习推荐模型(DLRM)、广度和深度、深度交叉网络和DeepFM等常见和最新的架构。NVIDIA Triton推理服务器和NVIDIA TensorRT可在GPU上加速产生推理,以实现特征变换和神经网络执行。通过延迟和GPU利用率的正确组合最大化吞吐量,可以充分发挥Triton和TensorRT的优势,使推理在GPU上高效地运行。NVIDIA Merlin通过提供模型和工具简化了深度学习推荐系统的构建和部署,加速了从提取和训练到部署GPU加速推荐系统的整个链路。NVIDIA在2020年5月的GTC Digital大会上发布了专用于推荐系统加速框架Merlin,并针对数据处理二、Merlin框架介绍14流程的每个阶段均提供了工具。这些工具经过调试可支持数百TB的数据,可经由易用的API进行数据资料交互。而在10月举行的GTC秋季大会上,Nvidia宣布Merlin正式进入公开测试阶段,Nvidia创办人暨首席执行官黄仁勋更用“AI for Every Company”来称呼它。 2、Merlin框架优势分析尽管常用的深度学习框架均支持在GPU中训练推荐算法,但目前推荐算法仍多数运行在CPU上,Merlin致力于解决GPU相比CPU加速不够显著的问题。(1)依托GPU算力,性能提升显著Merlin是NVIDIA基于其硬件GPU推出的针对深度学习推荐算法的推荐系统框架,这就决定了其得天独厚的技术优势能够最大限度地发挥GPU的性能。此外,TensorFlow、PyTorch等通用型AI框架在应用于推荐算法训练时存在不够精简、不够高效的问题,而Merlin仅针对推荐系统,主要支持深度学习算法,包括Wide & Deep、DCN、DeepFM、NCF(基于深度学习的协同过滤)等,包含若干只有推荐算法才会有的组件,如支持动态插入、支持大规模模型训练等,在性能

注意事项

本文(2020-2021推荐系统加速框架研究报告.pdf)为本站会员(科研)主动上传,报告吧仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知报告吧(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2022 报告吧 版权所有
经营许可证编号:宁ICP备17002310号 | 增值电信业务经营许可证编号:宁B2-20200018  | 宁公网安备64010602000642号


收起
展开