本发明涉及计算机网络路由,尤其涉及一种基于门控循环单元和图神经网络的sdn路由方法。
背景技术:
1、基于图神经网络的sdn拓扑建模,由于其符合计算机网络的拓扑结构,已经成为研究热点。lin采用分布式分层控制平面架构,设计了超级控制器、主控制器和从控制器的三级设计。同时结合强化学习算法,设计了qos感知的自适应路由算法,实现了高效、自适应和qos预置的报文转发。younus将强化学习应用于sdn控制器,以生成路由表,智能地学习路由路径,提高网络的收敛速度和性能。al-jawad在q-learning算法上实现了qos和体验质量(quality of experience,qoe)之间的权衡。
2、然而,在聚合同一边的不同邻居边信息时,通常采用等价的聚合方式,即对所有邻居边使用相同的权重。这限制了模型对空间相关信息的捕捉能力。为了克服这个问题,注意力机制(attention mechanism,am)被引入深度学习模型中。注意力机制允许模型有选择地关注输入数据中与给定任务最相关的部分。它使模型能够为不同的输入部分分配不同的权重,从而学习到对预测最重要的输入部分。这在处理大规模且复杂的输入任务中尤为关键。此外,注意力机制具有高效的并行处理能力。该机制直接适用于归纳学习问题,甚至可以推广到对完全未知的图进行任务处理,这为研究涉及动态添加计算机网络节点等任务提供了基础。
3、最常见的注意力机制是软注意力机制,它涉及在计算的每个步骤中为输入数据计算一组权重。这些权重被用于计算输入数据的加权和,并作为下一步计算的输入。这使得模型可以有选择地处理输入数据的不同部分,根据它们与当前任务的相关性进行加权。另一种类型的注意力机制是硬注意力机制,它在计算的每个步骤中选择输入数据的单个部分,而不是计算加权和。这对于处理结构化的输入数据任务非常有用,因为它可以轻松识别每个步骤中最相关的部分。总的来说,注意力机制已被证明是深度学习中的强大工具,特别是在机器翻译、情感分析和问题回答等自然语言处理任务中,通过允许模型有选择性地关注输入数据的不同部分,注意力机制在任务中显著提高了准确性。因此,可以引入注意力机制来解决链路聚合邻居特征信息时不同邻居信息权重不同的问题。
4、传统的路由方法通常使用rnn作为网络建模的神经网络,rnn具有一个存储单元,通常称为隐藏状态或单元状态,用于存储以前的输入信息。通过反馈循环,rnn的隐藏状态输出可以反馈到网络中,作为下一个时间步的输入。这种反馈循环使得rnn能够处理顺序数据,并根据先前输入的上下文进行预测。但是随着时间的增加,较早的记忆数据经过多轮tanh函数处理,可能导致梯度消失或指数级减小,从而阻止了模型学习的长期依赖关系。为了缓解梯度消失问题,一种方法是使用具有比tanh函数更大梯度的激活函数,例如relu或其变种。然而,如果权重未正确初始化或学习率过高,可能会导致梯度爆炸问题,在训练过程中导致模型发散。
技术实现思路
1、本发明要解决的技术问题是针对上述现有技术的不足,提供一种基于门控循环单元和图神经网络的sdn路由方法。引入图神经网络对网络进行建模;引入注意力机制,实现对不同邻居信息的不同权重聚合;将gru和注意力机制进行结合,提出基于注意力机制的门控循环单元模型,并使用它代替图神经网络中的传统rnn循环单元,解决rnn的梯度消失问题,实现面向软件定义网络的智能路由决策。
2、为解决上述技术问题,本发明所采取的技术方案是:
3、一种基于门控循环单元和图神经网络的sdn路由方法,首先在软件定义网络上进行特征提取之后,实现网络拓扑建模;再将建模之后的网络拓扑链路的特征向量应用于双重深度q网络智能路由决策算法,进行sdn的智能路由决策;
4、其中,使用注意力机制解决链路均等聚合邻居特征信息的问题,将注意力机制引入链路聚合邻居特征信息,以实现对不同邻居信息使用不同权重的聚合。
5、进一步地,所述注意力机制关注每个链路与其邻居之间的关联程度,并使用注意力分数来决定每个邻居链路在当前链路中聚合的特征信息量;首先,对于t时刻的链路li的邻居链路特征信息进行线性变换之后,计算其对链路li的贡献度其次,对于链路li所有邻居链路的特征信息进行归一化,得到权重最后,根据权重对链路li的邻居特征进行加权平均,得到新特征
6、进一步地,注意力机制的详细过程及公式如下:
7、针对输入的链路li的t次循环的特征和其邻居链路的t次循环的特征经过线性变换,如式(1)和式(2)所示;
8、
9、
10、其中,wt为注意力权重,为链路li的t次循环包含注意力权重的特征向量,为其邻居链路的t次循环包含注意力权重的特征向量;
11、因此,邻居链路在t次循环的特征对于链路li的贡献度如式(3)所示;
12、
13、其中,leakyrelu为激活函数,α为激活函数参数;
14、使用激活单元进行非线性转换;将链路li与其邻居链路在t次循环计算出来的相关度使用进行统一的归一化处理,使其更好的在不同链路之间分配权重,如式(4)所示;
15、
16、其中,为经过softmax函数得到的对应链路的t次循环的特征权重;对链路li的邻居特征按权重进行加权平均,并经过一个非线性转换,得到的新特征,如式(5)所示;
17、
18、进一步地,所述将注意力机制引入链路聚合邻居特征信息后,将注意力机制和gru结合,提出基于注意力机制的门控循环单元模型;使用基于注意力机制的门控循环单元模型替代图神经网络中的rnn,从而将注意力机制看作门控图循环神经网络其中的一个门;因而,门控循环单元模型,由3个门组成,注意力门、重置门和更新门。
19、进一步地,所述门控循环单元的设计中,在固定的t时间步中展开rnn,并使用时序反向传播算法计算梯度;链路li聚合来自其相邻链路的信息,gru利用来自每个邻居的信息以及上一个时间步的信息来更新隐藏状态,z和r分别是更新门和重置门,是hardamard按位乘积运算;
20、具体计算公式为式(6)到式(10)所示;
21、
22、其中,为链路li的t-1时刻的特征信息,at-1为链路li的邻居链路矩阵t-1时刻的特征信息,wa为注意力门的权重;
23、
24、其中,wr为重置门权重;at为当前时间步的输入;ur为重置门权重矩阵,用于调整前一个时间步特征信息对重置门的影响;br为重置门的偏置向量;使用sigmoid激活函数运算重置门rt;
25、
26、其中,wz为更新门权重;uz为更新门权重矩阵,用于调整前一个时间步特征信息对更新门的影响;bz为更新门的偏置向量;使用sigmoid激活函数运算更新门zt;
27、
28、其中,wh为链路特征信息的权重矩阵,用于调整当前时间步输入at对候选隐藏状态的影响;uh为权重矩阵,用于调整重置门rt和前一个时间步特征信息对候选隐藏状态的影响;⊙表示点积运算;bh为偏置项,用于调整候选隐藏状态的偏移;经过tanh函数得到候选隐藏状态
29、
30、其中,1-zt为遗忘状态,为对原有的信息选择性遗忘,表示对候选隐藏状态信息选择性记忆。
31、进一步地,使用所述基于注意力机制的门控循环单元模型替代图神经网络中的rnn模型后,在时刻t将链路li的特征信息与其邻居链路矩阵的特征信息相互作用的结果作为双重深度q网络(double deep q-network,ddqn)智能路由决策算法的输入。
32、进一步地,ddqn智能路由决策算法根据输入的网络性能状态在动作集合中根据q值选择合适的路径,并应用到环境中,得到新的网络性能状态;将网络性能状态、路径和奖励值一起存入经验池中,得到样本进行训练,并将训练好的ddqn模型存入知识库中;最后,模型输出智能路由决策的路径,并将网络性能时延作为奖励值训练ddqn智能路由决策算法。
33、采用上述技术方案所产生的有益效果在于:本发明提供的基于门控循环单元和图神经网络的sdn路由方法,包括对现有基于图神经网络的路由方法的两方面的优化,一是使用注意力机制针对链路聚合邻居信息的部分进行优化,二是将图循环神经网络中的rnn替换为gru。使用基于注意力机制的门控图循环神经网络进行网络建模,再将输出网络的图数据结构信息输入到ddqn路由算法中做智能路由决策,输出为路由路径。实现了面向软件定义网络的智能路由决策,在大规模网络和流量增加的情况下,提升了网络的性能。
1.一种基于门控循环单元和图神经网络的sdn路由方法,其特征在于:所述方法首先在软件定义网络上进行特征提取之后,实现网络拓扑建模;再将建模之后的网络拓扑链路的特征向量应用于双重深度q网络智能路由决策算法,进行sdn的智能路由决策;
2.根据权利要求1所述的基于门控循环单元和图神经网络的sdn路由方法,其特征在于:所述注意力机制关注每个链路与其邻居之间的关联程度,并使用注意力分数来决定每个邻居链路在当前链路中聚合的特征信息量;首先,对于t时刻的链路li的邻居链路特征信息进行线性变换之后,计算其对链路li的贡献度其次,对于链路li所有邻居链路的特征信息进行归一化,得到权重最后,根据权重对链路li的邻居特征进行加权平均,得到新特征
3.根据权利要求2所述的基于门控循环单元和图神经网络的sdn路由方法,其特征在于:所述注意力机制的详细过程及公式如下:
4.根据权利要求1所述的基于门控循环单元和图神经网络的sdn路由方法,其特征在于:所述将注意力机制引入链路聚合邻居特征信息后,将注意力机制和gru结合,提出基于注意力机制的门控循环单元模型;使用基于注意力机制的门控循环单元模型替代图神经网络中的rnn,从而将注意力机制看作门控图循环神经网络其中的一个门;因而,门控循环单元模型,由3个门组成,注意力门、重置门和更新门。
5.根据权利要求4所述的基于门控循环单元和图神经网络的sdn路由方法,其特征在于:所述门控循环单元的设计中,在固定的t时间步中展开rnn,并使用时序反向传播算法计算梯度;链路li聚合来自其相邻链路的信息,gru利用来自每个邻居的信息以及上一个时间步的信息来更新隐藏状态,z和r分别是更新门和重置门,是hardamard按位乘积运算;
6.根据权利要求4所述的基于门控循环单元和图神经网络的sdn路由方法,其特征在于:使用所述基于注意力机制的门控循环单元模型替代图神经网络中的rnn模型后,在时刻t将链路li的特征信息与其邻居链路矩阵的特征信息相互作用的结果作为双重深度q网络智能路由决策算法的输入。
7.根据权利要求6所述的基于门控循环单元和图神经网络的sdn路由方法,其特征在于:双重深度q网络智能路由决策算法根据输入的网络性能状态在动作集合中根据q值选择合适的路径,并应用到环境中,得到新的网络性能状态;将网络性能状态、路径和奖励值一起存入经验池中,得到样本进行训练,并将训练好的ddqn模型存入知识库中;最后,模型输出智能路由决策的路径,并将网络性能时延作为奖励值训练ddqn智能路由决策算法。
