多阶段算力回收方法及系统
本发明涉及的是一种信息处理领域的技术,具体是一种多阶段算力回收方法及系统。
背景技术:
1、随着算力投入对效果提升的边际效益递减效应越来越显著,然而现有的级联式推荐系统架构将单条流量上的效率优化到极致,即在数百甚至数十毫秒内响应用户的请求并返回结果,它却为多条流量的分配同样的算力资源。因此现有推荐系统在多条用户流量上仍存在效率优化的空间。在某些场景中用户可能在一次会话(session)中向服务器发起多次请求。对于每个请求,在线推荐系统会完整运行级联式推荐模型,包括召回、粗排、精排和重排模型,以生成高质量的推荐。然而,这种公平的算力分配方法忽略请求之间的重复性,即系统为用户多次请求的返回结果可能相同;也忽略不同请求的价值不同,即不同请求投入资源获得的回报比(roi)不同。目前,有一些工作进行智能算力的研究。这些工作提出弹性队列、弹性通道、弹性模型作为手段对算力分配进行调控。具体来说,这些调控手段包括调整推荐模型的候选集合大小、调整召回通道数、调整精排模型的复杂性,实现对不同请求分配不一样的算力资源。然而这些工作仅从调整算力资源分配的角度考虑提高系统资源利用率的问题,并未从回收浪费的资源考虑新的解决方案。
技术实现思路
1、本发明针对现有技术存在的上述不足,提出一种多阶段算力回收方法及系统,对不同阶段推荐模型的输出进行缓存后进行再次利用以实现请求个性化的算力资源分配以及算力资源的回收利用,本发明可达到推荐效果不变,提升推荐系统资源利用率的改进效果。
2、所述的算力资源包括:推荐模型推理时所使用的 cpu、gpu、存储等硬件资源以及系统响应延迟等抽象资源。
3、所述的算力回收是指:通过复用过去的模型输出结果,节约本次模型推理的算力资源消耗,从原理上类似于回收过去所使用的算力资源。
4、本发明是通过以下技术方案实现的:
5、本发明涉及一种多阶段算力回收方法,包括:
6、步骤1、根据级联式推荐系统架构构造算力回收策略,具体包括:
7、1.1对级联式推荐系统架构中每阶段模型的输出结果进行缓存。
8、所述的级联式推荐系统架构包括:召回模型、粗排模型、精排模型和重排模型,前一阶段模型的输出结果是后一阶段模型的输入候选集合。
9、所述的缓存是指:缓存所有模型不同阶段的所有输出结果。
10、优选地,通过缓存所有模型的部分输出结果或缓存所有模型个性化数量的输出结果以缩小计算规模。
11、1.2读取任一阶段缓存并生成候选物品集合后输出至下一阶段模型。
12、当级联式推荐系统架构包含m阶段模型时,设立该m阶段缓存并对应构造m+1种算力回收策略:
13、a.不读取缓存,使用完整的级联式推荐系统架构,此时并未使用任何算力回收策略;
14、b.读取任一阶段推荐模型的缓存,从m种细粒度的算力回收策略中选择对应策略并将缓存作为候选物品集合输入下一阶段推荐模型。
15、不同的算力回收策略具有不同的算力开销。例如在包含召回、粗排、精排的推荐系统中,采用读取召回缓存,并将缓存作为候选物品集合输入粗排模型的算力回收策略时,召回模型被跳过因而没有算力开销,整个系统的算力开销为粗排、精排模型算力开销的总和。
16、1.3采用浮点运算量(flops)、响应延时(rt)或cpu核数预计算不同算力回收策略的算力开销。
17、本发明优选采用响应延时表示算力开销。
18、步骤2、离线学习阶段,构造并训练效果损耗预估模型以对任一请求采用m+1种算力回收策略可能导致推荐效果的损耗量,具体包括:
19、2.1利用采集的数据训练效果损耗预估模型。
20、所述的采集的数据为不同用户请求采用不同算力回收策略的推荐效果,包含描述静态用户信息的用户特征、描述请求冗余性的请求特征。
21、所述的效果损耗预估模型为包含门控循环单元(gru)、多专家混合模型(mmoe)的深度学习模型,其中:gru对用户行为建模,mmoe进行多任务学习。
22、所述的推荐效果包括但不限于:后验点击数、先验点击概率、后验用户停留时长等,本发明采用先验点击概率作为推荐效果的衡量指标。
23、2.2对在线算力回收策略决策问题建模成约束最优化问题,并对约束最优化问题进行对偶问题求解,得出实现推荐效果基本持平前提下提高资源利用率的策略性能评价。
24、所述的约束最优化问题是指:,该模型约束为:,其中:n为推荐请求次数,i表示 n 次请求中的任一次请求序号,j表示 m+1 个不同算力回收策略的编号,策略分配表示算法决策请求i采用算力回收策略j,请求i采用算力回收策略j时的效果损耗为,系统要求推荐系统效果损耗总和不超过阈值b, 为预计算的算力回收策略 j 的算力开销, 为正则项系数;表示对策略分配的正则处理。
25、所述的策略性能评价用于衡量不同算力回收策略的好坏,具体为:为拉格朗日乘子。
26、2.3 收集时间段内的请求日志后,通过二分法对约束最优化问题进行最优拉格朗日乘子求解,得到最优的拉格朗日乘子 结果。
27、步骤3、在线服务阶段,实时处理请求,具体为:将在线到来的用户请求及请求相关信息进行请求过滤以分类为初始请求和重复请求后,对初始请求调用完整推荐链路的同时,将各模型的输出结果进行缓存并结束服务;对重复请求利用2.1得到的效果损耗预估网络与2.2推导的策略性能评价,选取性能评价最高的策略,并在推荐系统链路中实施1.2回收策略构造部分中的对应策略,进行缓存读取及复用。
28、所述的用户请求指用户操作应用软件或浏览网页时,请求新的物品包括但不限于商品、音乐、视频等。
29、所述的请求相关信息指可以用于判断请求重复性的客观信息,包括但不限于距前次请求的时间间隔、前次请求物品曝光率等。
30、所述的请求过滤是指:根据请求属性,通过规则方式或模型方式将请求划分为初始请求或重复请求。
31、所述的请求属性,包括但不限于据前一次请求时间间隔、前一次请求中点击数、前一次请求中曝光数等特征。
32、本发明优选通过规则方式进行请求过滤。
33、所述的完整推荐链路是指:经过召回、粗排、精排等级联式推荐架构中所有模型,最终产生推荐结果的过程。
34、技术效果
35、本发明通过缓存再回收的细粒度算力回收策略、根据约束优化建模推导出的在线最优回收决策算法、效果损耗预估模型以及请求过滤模块,实现对推荐系统资源利用率的显著提升。
1.一种多阶段算力回收方法,其特征在于,包括:
2.根据权利要求1所述的多阶段算力回收方法,其特征是,所述的级联式推荐系统架构包括:召回模型、粗排模型、精排模型和重排模型,前一阶段模型的输出结果是后一阶段模型的输入候选集合;
3.根据权利要求2所述的多阶段算力回收方法,其特征是,当级联式推荐系统架构包含m阶段模型时,设立该m阶段缓存并对应构造m+1种算力回收策略:
4.根据权利要求1所述的多阶段算力回收方法,其特征是,所述的效果损耗预估模型包括:嵌入层、门控循环单元、门控多专家混合单元以及函数激活单元,其中:嵌入层根据输入的用户行为序列、用户信息、请求信息等信息,进行低维嵌入映射处理,得到特征的低维嵌入表示,门控循环单元根据用户行为的低维嵌入序列信息,进行序列建模处理,得到用户行为序列的低维嵌入表示结果,门控多专家混合单元根据行为序列低维嵌入、用户信息低维嵌入和请求信息低维嵌入信息,进行多任务学习处理,得到不同算力回收策略的 logits,函数激活单元根据logits,进行激活函数处理,得到该请求采用不同算力回收策略的推荐效果预估值结果。
5.根据权利要求1所述的多阶段算力回收方法,其特征是,所述的约束最优化问题是指:,该模型约束为:,其中:n为推荐请求次数,i表示 n 次请求中的任一次请求序号,j表示 m+1 个不同算力回收策略的编号,策略分配表示算法决策请求i采用算力回收策略j,请求i采用算力回收策略j时的效果损耗为,系统要求推荐系统效果损耗总和不超过阈值b, 为预计算的算力回收策略 j 的算力开销, 为正则项系数;表示对策略分配的正则处理。
6.根据权利要求1所述的多阶段算力回收方法,其特征是,所述的策略性能评价用于衡量不同算力回收策略的好坏,具体为:为拉格朗日乘子。
7.根据权利要求1所述的多阶段算力回收方法,其特征是,所述的请求过滤是指:根据请求属性,通过规则方式或模型方式将请求划分为初始请求或重复请求;
8.根据权利要求1所述的多阶段算力回收方法,其特征是,所述的完整推荐链路是指:经过召回、粗排、精排等级联式推荐架构中所有模型,最终产生推荐结果的过程。
9.一种实现权利要求1-8中任一所述方法的算力回收框架系统,其特征在于,包括:细粒度算力回收策略模块、在线算力回收决策模块和请求过滤模块,其中:细粒度算力回收策略模块对级联式推荐系统架构进行工程改造,针对构造的每一种算力回收策略作相应的工程链路改造,具体地,指实现多阶段模型结果的缓存和复用;在线算力回收决策模块根据请求、用户特征,实时计算最优算力回收策略;请求过滤模块根据请求特征,筛选出可进行算力回收的请求,减少因效果损耗预估模型引入的额外算力开销。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com