使用强化学习代理管理存储在缓存中的数据制造技术

技术编号:35726744 阅读:18 留言:0更新日期:2022-11-26 18:25
公开了使用强化学习代理来管理存储在缓存中的数据,包括:确定关于缓存的当前状态观测集,其中基于对缓存的历史缓存访问来确定当前状态观测集;将当前状态观测集输入到强化学习代理的行动者网络,以获得由行动者网络输出的动作,其中强化学习代理被配置为管理存储在缓存中的数据;将当前状态观测集和动作输入到强化学习代理的评论家网络,以从评论家网络获得对应于动作的分数;使强化学习代理执行与管理存储在缓存中的数据有关的动作;使用分数来更新行动者网络;以及使用对应于动作的奖励来更新评论家网络。更新评论家网络。更新评论家网络。

【技术实现步骤摘要】
【国外来华专利技术】使用强化学习代理管理存储在缓存中的数据

技术介绍

[0001]分层存储器实现了延迟和存储能力之间的权衡。然而,通过利用程序中的数据局部性和缓存频繁访问的数据项,缓存能够加速计算系统。例如,缓存命中率增加1%可以使得web服务器减少35%的延迟。在缓存大小有限的情况下提高缓存性能需要对未来的数据重用进行良好预测。
[0002]目前,基于固定规则管理缓存中存储的数据。例如,关于何时将数据存储到缓存中以及何时移出已存储在缓存内的数据的固定规则是基于诸如缓存中的数据最近使用的时间(例如LRU)和/或缓存中的数据的使用频率(例如LFU)的衡量指标。然而,这种用于管理存储在缓存中的数据的固定规则对不同的缓存场景和/或由缓存服务的工作负载的潜在变化不够灵活,因此,这种缓存中数据管理的固定规则可能导致不被期望的较高的缓存未命中率。
附图说明
[0003]以下详细说明和附图中公开了本专利技术的各种实施例。
[0004]图1是根据一些实施例的缓存环境中的基于深度确定性策略梯度(Deep Deterministic Policy Gradients,DDPG)的强化学习(Reinforcement Learning,RL)代理的示意图;
[0005]图2是根据一些实施例的一示例性的用于使用强化学习代理来管理存储在缓存中的数据的系统的示意图;
[0006]图3是根据一些实施例的示例性的RL代理的示意图;
[0007]图4是根据一些实施例的使用强化学习代理来管理存储在缓存中的数据的过程的流程图;
[0008]图5是根据一些实施例的示例性的当前历史表的示意图;
[0009]图6是根据一些实施例的示例性的为RL代理的评论家网络确定奖励的过程的流程图;
[0010]图7是示出根据一些实施例的示例性的缓存环境中的RL代理被触发采取动作的过程的流程图;
[0011]图8是根据一些实施例的另一示例性的用于使用强化学习代理来管理存储在缓存中的数据的系统的示意图;
[0012]图9是根据一些实施例的由样本模块(例如图8的样本模块818)生成和存储的样本的示意图;
[0013]图10是根据一些实施例的示例性的用于训练用于管理存储在缓存环境中的数据的RL代理的过程的流程图。
具体实施方式
[0014]本专利技术可以采用多种方式实现,包括作为一种流程、装置、系统、物质的组成、体现
在计算机可读存储介质上的计算机程序产品,和/或处理器,例如,被配置为执行存储在与处理器耦合的存储器上和/或由与处理器耦合的存储器提供的指令的处理器。在本说明书中,这些实现或本专利技术可以采取的任何其他形式被称为技术。通常,在本专利技术的范围内可以改变所公开方法的各个步骤的顺序。除非另有说明,被描述为被配置为执行任务的组件(例如处理器或存储器)可以是被临时配置为在给定时间执行任务的通用组件或被制造为执行该任务的特定组件。如本文所使用的术语“处理器”是指被配置为处理数据(例如计算机程序指令)的一个或多个设备、电路和/或处理核。
[0015]下文提供了本专利技术一个或多个实施例的详细描述以及说明本专利技术原理的附图。结合这些实施例描述了本专利技术,但本专利技术不限于任何实施例。本专利技术的范围仅由权利要求书限制,并且本专利技术包括许多替代、修改和等同。为了充分和全面理解本专利技术,在以下描述中阐述了许多具体细节。提供这些细节是为了示例的目的,并且可以根据权利要求书来实践本专利技术,而不需要这些特定细节中的一些或全部。为了清楚起见,没有详细描述与本专利技术相关的
中已知的技术材料,从而本专利技术不会被不必要地混淆。
[0016]本文描述了使用强化学习代理管理存储在缓存中的数据的实施例。确定关于缓存的当前状态观测集。至少部分地基于对缓存的多个历史访问来确定当前状态观测集。在各种实施例中,缓存是存储数据的组件,从而对数据的后续请求可以从缓存迅速得到服务(例如,与另一存储器相比,从另一存储器中访问数据相对于缓存更慢)。将当前状态观测集输入到强化学习(有时简称为“RL”)代理的行动者神经网络(有时简称为“行动者网络”),以获得行动者网络的动作输出。
[0017]RL代理被配置为管理存储在缓存中的数据。当前状态观测集和动作被输入到RL代理的评论家神经网络(有时称为“评论家网络),以从评论家网络获得与动作对应的分数。使RL代理执行与管理存储在缓存中的数据相关的动作。对应于动作的分数用于更新行动者网络。对应于动作的奖励用于更新评论家网络。
[0018]在一些实施例中,缓存冗余地存储在二级辅助存储器中存储的一些数据。例如,缓存包括固态驱动器(SSD),二级辅助存储器包括硬盘驱动器(HDD)。在另一示例中,缓存包括本地内容服务器(例如,相对于请求者的地理位置),二级辅助存储器包括远程服务器(例如,相对于请求者的地理位置)。然而,由于缓存(例如,存储介质)的物理特性和/或缓存与请求实体(例如,设备)空间上邻近,因此缓存可以更快速地服务对存储在缓存和二级辅助存储器中的数据的请求。然而,由于缓存的存储容量有限,因此并非所有可能被请求的数据都可以存储在缓存中。如将在下文进一步详细描述的,使用基于深度确定性策略梯度的强化学习代理来随时间观察缓存访问的状态将允许DDPG RL代理随时间自适应以创建期望的适应缓存的不同工作负载的数据管理策略。
[0019]图1是根据一些实施例的缓存环境中的DDPG RL代理的示意图。强化学习是一种机器学习,其中代理(例如,软件)基于对环境的观察学习采取动作,以最大化环境作为所采取动作的结果而输出的累积奖励。与监督学习不同,RL不需要标记用于训练的输入和输出。RL在一段时间内进行多个步骤/动作,并将即时动作与中继回报/奖励相关联,以获得最大化复杂目标的策略。在RL的DDPG技术中,使用了行动者

评论家方法,它包括两个模型:
[0020]评论家模型:评论家模型通过基于给定的状态观测集的输入动作输出分数Q(a)来衡量RL代理采取的动作的好坏。评论家模型是基于价值的模型。
[0021]行动者模型:行动者模型为状态观测集选择一个动作。行动者模型还基于从评论家模型接收的分数Q(a)更新其策略参数(例如,神经网络权重),并将应用已更新的策略参数来选择后续的状态观测集的后续动作。行动者模型是基于策略的模型。
[0022]在各种实施例中,RL代理包括行动者模型和评论家模型,每个模型都可以通过相应的(例如,神经)网络实现。在各种实施例中,RL代理被配置为管理缓存中存储的数据。例如,管理缓存中存储的数据包括缓存中的数据替换策略。具体地,缓存中的数据替换策略包括确定何时移出已存储在缓存存储器中的哪些数据(例如,与特定的数据项ID相关联和/或与存储在缓存存储器中的特定地址的数据项相关联)的策略,以预期存储新数据以替换有限容量的缓存存储器上已被移出的数据。
[0023]参考图1,系统100包括缓存环境102和RL代理104。缓存环境102包括缓存存储器,缓存存储器被配置为存储期望请求者快速和/或频繁访问的数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种系统,包括:一个或多个处理器;和一个或多个存储器,其耦合到所述一个或多个处理器,并被配置为向所述一个或多个处理器提供指令,所述一个或多个处理器被配置为:确定关于缓存的当前状态观测集,其中所述当前状态观测集至少部分地基于对所述缓存的多个历史缓存访问来确定;将所述当前状态观测集输入到强化学习代理的行动者网络中,以获得由所述行动者网络输出的动作,其中所述强化学习代理被配置为管理存储在所述缓存中的数据;将所述当前状态观测集和所述动作输入到所述强化学习代理的评论家网络中,以从所述评论家网络获得对应于所述动作的分数;使所述强化学习代理执行与管理存储在所述缓存中的数据有关的动作;使用对应于所述动作的分数来更新所述行动者网络;和使用对应于所述动作的奖励来更新所述评论家网络。2.根据权利要求1所述的系统,其中,所述当前状态观测集包括与状态定义集合中的相应状态定义对应的值,其中,状态定义包括落在所述缓存的最近缓存访问的滑动窗口内的缓存访问相关联的属性。3.根据权利要求1所述的系统,其中,响应于与所述缓存有关的触发事件的发生来确定所述当前状态观测集。4.根据权利要求1所述的系统,其中,由所述行动者网络输出的所述动作包括输出何时将数据项从所述缓存中移出的指令。5.根据权利要求1所述的系统,其中,由所述行动者网络输出的所述动作包括输出从所述缓存中移出指定数据项的指令。6.根据权利要求1所述的系统,其中,由所述行动者网络输出的所述动作包括输出将新添加的数据项存储到所述缓存中的一位置的指令。7.根据权利要求1所述的系统,其中,所述使用对应于所述动作的分数来更新所述行动者网络包括至少部分地基于所述分数在所述行动者网络中执行反向传播。8.根据权利要求1所述的系统,其中,对应于所述动作的所述奖励包括在与所述缓存执行的动作相关联的缓存命中的情况下的第一奖励值,或者在与所述缓存执行的动作相关联的缓存未命中的情况下的第二奖励值,其中所述第一奖励值不同于所述第二奖励值。9.根据权利要求1所述的系统,其中,所述一个或多个处理器还被配置为:确定关于所述缓存的下一状态观测集;生成包括所述当前状态观测集、所述下一状态观测集、所述动作和所述奖励的样本;和将所述样本存储在被配置为存储多个样本的存储器中。10.根据权利要求9所述的系统,其中,所述一个或多个处理器还被配置为:从所述多个样本中选择样本的子集;和使用所述样本的子集训练强化学习代理。11.根据权利要求1所述的系统,其中,所述强化学习代理包括基于深度确定性策略梯度的强化学习代理。12.一种方法,包括:
确定关...

【专利技术属性】
技术研发人员:李浩然李鹏程
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1