发明内容
本发明的发明目的是提供一种基于门限残差网络的虚拟现实设备集群带宽分配装置,可以随着用户使用情况的不同,实时调整带宽的分配,能够通过自我学习适应不同的带宽使用环境和随着时间而改变的带宽使用环境。
为实现上述发明目的,本发明提供以下的技术方案:一种基于门限残差网络的虚拟现实设备集群带宽分配装置,包括用于输出带宽分配决策的控制系统和用于分配虚拟现实设备集群各节点带宽的执行系统,
其中,所述分配装置还包括用于获取并输出虚拟现实设备集群的带宽信息的检测系统,所述控制系统以所述检测系统检测的带宽信息作为输入和反馈,以所述执行系统执行的行动作为输出,通过门限残差网络对获得的带宽信息进行高低维度转换,通过策略网络作出决策,通过评价网络评价决策,计算网络的损失后更新网络的参数;
所述控制系统通过如下方法作出决策:
步骤1、初始化各网络的参数和强化学习算法的参数;
步骤2、获取虚拟现实设备集群的当前带宽信息并通过所述门限残差网络将所获取的高维度带宽信息转换为低维度特征信息,所述带宽信息包括带宽上限信息、带宽传输速率信息以及带宽产生速率信息;
步骤3、以当前状态st作为输入,通过所述策略网络计算采取并输出当前行动at,获得下一状态st+1和立即奖赏rt,
其中,当前状态st为带宽分配前虚拟现实设备集群的特征信息;
当前行动at为带宽分配时虚拟现实设备集群各节点增加或减少带宽分配;
下一状态st+1为带宽分配后虚拟现实设备集群的特征信息;
立即奖赏rt为带宽分配后虚拟现实设备集群带宽信息的传输速度tv1与产生速度tv2的差值的绝对值的负值,即rt=-|tv1-tv2|;
步骤4、以当前状态st作为输入,通过所述评价网络计算计算强化学习算法评价函数V(st)的值;
步骤5、计算控制系统整个网络模型的总损失,判断当前行动at所属步数是否超过设定步数,如是,则更新所述门限残差网络、所述策略网络以及所述评价网络的参数,如否,则更新所述策略网络以及所述评价网络的参数;
步骤6、判断当前带宽利用率和带宽传输效率是否超过预设值,如是,则停止训练,如否,则返回步骤3继续循环训练。
上述技术方案中,所述控制系统为本地控制系统,在本地完成控制操作。
上述技术方案中,所述控制系统通过所述检测系统向所述执行系统传递分配指令。
上述技术方案中,步骤1中,所述门限残差网络的参数的初始化值为通过监督学习方法提前训练的一个可用参数。
上述技术方案中,步骤2中,采用153层门限残差网络进行带宽信息的高低维度转换,门限残差网络由4类共50个门限残差块组成,每个门限残差块由三层卷积层、一个门限机制以及一次跳跃连接组成,其中三层卷积层的卷积核大小分别为1×1、3×3及1×1,在第一层和最后一层卷积层之后分别进行最大池化和平均池化。
上述技术方案中,步骤3中,所述策略网络由两层隐藏层和一层输出层组成,所述隐藏层包含两层长短期记忆网络层,两层所述长短期记忆网络层的神经元个数分别是256和256,所述输出层的神经元个数为行动空间的维度。
上述技术方案中,步骤4中,所述评价网络由两层隐藏层和一层输出层组成,所述隐藏层包含两层长短期记忆网络层,两层所述长短期记忆网络层的神经元个数分别为256和256,所述输出层包含一个神经元。
上述技术方案中,步骤5中,总损失包括策略网络损失、评价网络损失以及策略的熵损失,采用时间差分误差和策略梯度的方法计算所述策略网络的损失,采用时间差分误差的方法计算所述评价网络的损失,通过如下公式计算总损失:
δt=rt+γV(st+1)-V(st)
其中,t表示第t时间步;
表示期望值,c1和c2是常数,C1取1,对于离散动作空间,c2的取值为0.01。对于连续动作空间,c2的取值为0;
θ表示新策略的策略网络参数,θold表示旧策略网络参数;
πθ(at|st)表示新策略在状态st、选择行动at的概率;
πθold(at|st)表示旧策略在状态st、选择行动at的概率;
是优势值;
γ为奖赏的折扣因子
λ∈[0,1]用来平衡估计器的偏差和方差
T为有限的时间步;
S[πθ](st)表示的是策略πθ在状态st处的熵;
对于离散动作空间,n表示当前状态可采取的行动个数,对于连续动作空间,不计算该项值表示当前状态可采取的行动个数。
上述技术方案中,步骤5中,通过随机梯度下降的方法更新网络的参数,根据如下公式计算需更新的网络的参数:
mt=β1mt-1+(1-β1)gt;
其中,表示需更新的网络的参数;
ε表示一个小的正常数;
η表示学习率;
mt表示关于梯度的一次矩估计,vt表示关于梯度的二次矩估计,初始值都为0;
和分别表示mt和vt的偏差校正计算值;
β1,β2∈[0,1),其值初始化为一个接近于1的值;
gt表示损失函数关于网络参数的梯度,利用链式求导规则计算出损失函数关于网络模型参数的梯度值,即
上述技术方案中,步骤5中,所述预设步数为900万步。
由于上述技术方案运用,本发明与现有技术相比具有以下优点:本发明公开的基于门限残差网络的虚拟现实设备集群带宽分配装置,基于“行动者-评论家”框架,以检测系统检测的带宽信息作为输入和反馈,以执行系统执行的行动作为输出,通过门限残差网络对检测到的带宽信息进行高低维度转换,通过策略网络作出决策,通过评价网络评价决策,计算网络的损失后更新网络的参数,能够有效地控制具有连续动作空间的面向具有多个虚拟现实设备的带宽分配技术,能够在无监督信号的情况下,自主学习更新神经网络的参数,以使有限的带宽达到最优分配,带宽分配装置能够自主适应具有位于不同区域的较多设备以及同一个区域不同时段的环境,适用于具有多个虚拟现实设备并具有不确定性和动态性的集群的有效带宽分配。
具体实施方式
下面结合本发明的原理、附图以及实施例对本发明进一步描述
参见图1至图6,如其中的图例所示,一种基于门限残差网络的虚拟现实设备集群带宽分配装置,包括用于输出带宽分配决策的控制系统10和用于分配虚拟现实设备集群各节点带宽的执行系统20,
其中,上述分配装置还包括用于获取并输出虚拟现实设备集群的带宽信息的检测系统30,控制系统10以检测系统30检测的带宽信息作为输入和反馈,以执行系统20执行的行动作为输出,通过门限残差网络对上述带宽信息进行高低维度转换,通过策略网络作出决策,通过评价网络评价决策,计算网络的损失后更新网络的参数;
控制系统10通过如下方法作出决策:
步骤1、初始化各网络的参数和强化学习算法的参数;
步骤2、获取虚拟现实设备集群的当前带宽信息并通过上述门限残差网络将所获取的高维度带宽信息转换为低维度特征信息,上述带宽信息包括带宽上限信息、带宽传输速率信息以及带宽产生速率信息;
步骤3、以当前状态st作为输入,通过上述策略网络计算采取并输出当前行动at,获得下一状态st+1和立即奖赏rt,
其中,当前状态st为带宽分配前虚拟现实设备集群的特征信息;
当前行动at为带宽分配时虚拟现实设备集群各节点增加或减少带宽分配;
下一状态st+1为带宽分配后虚拟现实设备集群的特征信息;
立即奖赏rt为带宽分配后虚拟现实设备集群带宽信息的传输速度tv1与产生速度tv2的差值的绝对值的负值,即rt=-|tv1-tv2|;
步骤4、以当前状态st作为输入,通过上述评价网络计算计算强化学习算法评价函数V(st)的值;
步骤5、计算控制系统整个网络模型的总损失,判断当前行动at所属步数是否超过900万步,如是,则更新上述门限残差网络、上述策略网络以及上述评价网络的参数,如否,则更新上述策略网络以及上述评价网络的参数;
步骤6、判断当前带带宽利用率和带宽传输效率是否超过预设值,如是,则停止训练,如否,则返回步骤3继续循环训练。
上文中,预设步数假设为900万步。
上文中,由于虚拟现实设备的接入节点数量十分较多,带宽信息比较庞大,采用普通的卷积网络堆叠,会随着网络层数的增加出现严重的梯度消失问题,所以使用残差网络来缓解梯度消失问题,采用深层神经网络来提取数据特征,残差网络中每一层的卷积核大小、通道数和输出大小如图3中所示,有些信息重要,有些信息不重要,通过门限残差网络让重要的信息继续保留,让不重要的信息消失。
上文中,控制系统10的整体框架为强化学习中的行动者-评论家框架,假设在每个时间步t=1,2,L,马尔科夫决策过程的状态为st,控制系统10选择行动at,获取环境反馈的立即奖赏,并使环境迁移到下一个状态st+1,转移概率为p(st,at,st+1)。强化学习系统中智能体的目标是学习到一个策略π,使得智能体获取的累积折扣奖赏最大(0≤γ≤1为折扣因子),该策略即为最优策略。但是在真实环境中,环境的状态转移概率函数p和回报函数R未知。智能体要学习到最优策略,只有立即奖赏rt可用,可以直接采用策略梯度方法优化策略函数和值函数,仿真过程中,在不同的环境下,控制系统10的网络结构相同,算法参数也采用同一套参数。回报函数的折扣因子γ=0.99。在每次实验中,环境的初始状态是一个随机状态,带宽控制系统从随机的初始状态开始学习,若控制系统能够在多轮控制中使得带宽利用率以及带宽信息传输效率超过一定的阈值,则停止学习,否则继续学习,在真实环境中,带宽控制系统的初始状态初始化为当前时刻的带宽使用情况。
一种实施方式中,上述控制系统为本地控制系统,在本地完成控制操作。
一种实施方式中,上述控制系统通过上述检测系统向上述执行系统传递分配指令。
一种实施方式中,步骤1中,上述门限残差网络的参数的初始化值为通过监督学习方法提前训练的一个可用参数。
上文中,由于门限残差网络参数量比较巨大往往通过监督学习方式预先训练好。
一种实施方式中,步骤2中,采用153层门限残差网络进行带宽信息的高低维度转换,门限残差网络由4类共50个门限残差块组成,每个门限残差块由三层卷积层、一个门限机制以及一次跳跃连接组成,其中三层卷积层的卷积核大小分别为1×1、3×3及1×1,在第一层和最后一层卷积层之后分别进行最大池化和平均池化。
上文中,门限残差网络的作用是处理数量众多的节点带宽信息,在3×3卷积核前后接1×1卷积核的目的是减少网络参数数量。在第一层和最后一层卷积层之后分别使用最大池化和平均池化的作用是使抽取到的特征具有平移旋转不变性等泛化能力和降低特征图的大小但不改变特征图的数量,减少数据的维度,进一步减少计算量,门限残差块如图4所示。
一种实施方式中,步骤3中,上述策略网络由两层隐藏层和一层输出层组成,上述隐藏层包含两层长短期记忆网络层,两层上述长短期记忆网络层的神经元个数分别是256和256,上述输出层的神经元个数为行动空间的维度。
一种实施方式中,步骤4中,上述评价网络由两层隐藏层和一层输出层组成,上述隐藏层包含两层长短期记忆网络层,两层上述长短期记忆网络层的神经元个数分别为256和256,上述输出层包含一个神经元。
上述策略网络和评价网络均包含两长短期记忆网络层且均有256和256个长短期记忆单元。长短期记忆网络相比于普通的全连接网络,能够处理序列状态之间在不同时间尺度存在依赖关系的任务,是由于长短期记忆网络中的循环链接允许网络每一层访问先前的状态信息。长短期记忆网络通过输入门、输出门、遗忘门以及记忆单元来控制信息在网络中的流通以达到记忆以前环境信息的目的。长短期记忆网络单元的遗忘门的计算方式为:ft j=σ(Wfxt+Ufht-1+Vfct-1)j,其中j表示第j个LSTM单元,σ表示sigmoid非线性函数,ft j表示t时间步第j个LSTM单元的遗忘门的输出,Wf、Uf、Vf表示的是LSTM单元遗忘门的参数,xt表示t时间步的输入数据,ht-1表示t-1时间步LSTM单元的输出值,ct-1表示在t-1时间步LSTM单元的记忆单元的输出值。输入门的计算方式为:其中表示t时间步第j个LSTM单元的输入门的输出,Wi、Ui、Vi表示LSTM单元输入门的参数。新的记忆上下文计算方式为:其中表示新的记忆上下文,Wc、Uc表示记忆上下文的参数,tanh表示tanh非线性函数。根据输入门的输出遗忘门的输出ft j、记忆上下文以及上一个时间步的记忆单元的内容可以计算更新记忆单元的内容计算公式为:由和可以得到LSTM单元的输出门的计算公式为:LSTM单元最终的输出为计算公式为:策略网络和评价网络如图5和图6所示。
一种实施方式中,步骤5中,总损失包括策略网络损失、评价网络损失以及策略的熵损失,采用时间差分误差和策略梯度的方法计算上述策略网络的损失,采用时间差分误差的方法计算上述评价网络的损失,通过如下公式计算总损失:
δt=rt+γV(st+1)-V(st)
其中,t表示第t时间步;
表示期望值,c1和c2是常数,C1取1,对于离散动作空间,c2的取值为0.01。对于连续动作空间,c2的取值为0;
θ表示新策略的策略网络参数,θold表示旧策略网络参数;
πθ(at|st)表示新策略在状态st、选择行动at的概率;
πθold(at|st)表示旧策略在状态st、选择行动at的概率;
是优势值;
γ为奖赏的折扣因子
λ∈[0,1]用来平衡估计器的偏差和方差
T为有限的时间步;
S[πθ](st)表示的是策略πθ在状态st处的熵;
对于离散动作空间,n表示当前状态可采取的行动个数,对于连续动作空间,不计算该项值表示当前状态可采取的行动个数。
上文中,策略网络损失函数Lπ(θ)的计算方式为:
其中,表示优势值,采用GAE(Generalized Advantage Estimation)方法计算;πθ(at|st)/πθold(at|st)用来衡量新旧策略之间的差异,采用一种自适应区间裁剪方法来计算。该裁剪目的是为了约束新旧策略之间的差异。
自适应区间裁剪计算过程为:首先计算一个裁剪边界[1-ε,1+ε],其中其中|·|表示绝对值,表示优势值,Vtarg(st)表示目标值,α表示小的正常数,用来防止分母为0。裁剪边界ε的值会随着的值和V(st)的值的改变而自动变化。令n=πθ(at|st)/πθold(at|st),自适应裁剪过程如图6所示。n的值最终被裁剪到[1-ε,1+ε]区间范围内。
评价网络的损失函数Lv(θ)的计算方式为:
策略的熵损失计算方式为:计算策略熵损失的目的是增加策略对环境的探索,其中S[πθ](st)表示策略πθ在状态st的熵。
总损失计算方式如下:Loss=-Lπ(θ)+c1Lv(θ)+c2Lentropy(θ)。
一种实施方式中,步骤5中,通过随机梯度下降的方法更新网络的参数,根据如下公式计算需更新的网络的参数:
mt=β1mt-1+(1-β1)gt;
其中,表示需更新的网络的参数;
ε表示一个小的正常数;
η表示学习率;
mt表示关于梯度的一次矩估计,vt表示关于梯度的二次矩估计,初始值都为0;
和分别表示mt和vt的偏差校正计算值;
β1,β2∈[0,1),其值初始化为一个接近于1的值;
gt表示损失函数关于网络参数的梯度,利用链式求导规则计算出损失函数关于网络模型参数的梯度值,即
上文中,采用Adam(Adaptive Moment Estimation)梯度下降方法来更新神经网络的参数,ε表示一个小的正常数,用来防止分母为0情况出现。
采用所述更新方式更新策略网络和评价网络的参数后,策略网络利用更新后的策略在给定环境状态下,选择更加正确的行动,用来产生更高的回报值。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。