APP下载

比例延迟微分方程的极限学习机算法

2024-02-28李佳颖

关键词:学习机权值比例

李佳颖,陈 浩

重庆师范大学 数学科学学院,重庆 401331

1 引 言

延迟微分方程是一类广受关注的微分方程。由于事物运动规律的影响因素不仅包含当前时刻的状态,而且会受到过去某些时刻或时间段的状态影响,因此大部分事物运动规律都存在延迟现象。延迟微分方程中的延迟项,不仅能够展现当前时刻的状态,而且也能展现出过去某些时刻的状态,因此这种特殊形式的微分方程被证明能够更精确地模拟各种客观事物的变化规律。延迟微分方程被广泛应用于生命科学和工程问题的各个领域,如种群动力学、免疫学、流行病模型、神经网络和控制系统[1-5]。

本文将考虑一类特殊形式的延迟微分方程—比例延迟微分方程。其中“比例项”一词由奥肯登和泰勒[6]在1971年首次引入,用于研究电力机车的受电弓如何收集电流,此后比例延迟问题得到了众多学者的关注。比例延迟微分方程被广泛应用于经济、控制、数论、电动力学、非线性动力学系统等不同学科领域。

广义比例延迟微分方程初值问题的一般形式为

c(t)y(t)=f(t),t0

y(k)(t0)=λk,λk∈R(k=0,1,…,n-1)

(1)

其中,a(t)、bk(t)和f(t)是解析函数,pk∈(0,1)(k=0,1,…,n)。

一直以来,许多学者对比例延迟微分方程的数值解法进行分析研究,其中一些方法显示出很大的潜力。例如,Wang等[7]将龙格-库塔方法应用于一类非线性中立型比例延迟微分方程;Yüzba等[8]提出一种基于残差校正技术的勒让德配置方法,利用算子方程的残差函数,构造了一个误差微分方程,并对使用勒让德配置法得到的多比例延迟微分方程数值解进行了修正;Doha等[9]提出一种基于雅可比有理函数和高斯积分公式相结合的谱雅克比有理-高斯配点法,得到了多比例延迟微分方程的半解析解;Cakmak等[10]使用配点法和斐波那契多项式矩阵将比例延迟微分方程问题简化为一个非线性代数系统,然后计算近似解函数的未知系数,进而得到非线性比例延迟微分方程的数值解;Bahgat[11]应用拉普拉斯变换与变分迭代法求解中立型比例延迟微分方程,该算法只需经过几次迭代即可得到高精度的数值解。上述方法都能获得较高精度的数值解,然而这些方法通常需要离散方程,且都包含大量的计算,存在一定缺陷。

近年来,随着人工智能的大力发展,神经网络算法因其可以避免传统数值方法中的一些缺点,逐渐成为求解微分方程数值解的一种替代方法。根据通用近似定理可知,神经网络是一种通用近似器,它们可以被用于近似任何连续微分方程的解。不仅如此,使用神经网络近似微分方程的解不需要对方程进行离散化处理,由此可以避免离散过程中产生的误差。神经网络方法在求解微分方程方面具有以下几个优点:不需要通过离散微分方程来求进行解;所得到的解是连续的,而不是在离散点上的数值解;类似的方法可用于不同类型微分方程的初边值问题,且往往具有较高的精度。

神经网络方法也吸引了许多学者对微分方程数值解的研究。Mall等[12]利用切比雪夫正交多项式构建了切比雪夫神经网络,将切比雪夫多项式作为输入权值,不仅大幅降低了神经网络所需的参数,而且能够获得具有较高精度的数值解;Sun等[13]提出一种基于伯恩斯坦多项式的神经网络模型用于求解微分方程,该方法将伯恩斯坦多项式扩展输入来消除神经网络隐藏层。根据最近的文献,一些作者已经开始使用神经网络方法来研究延迟微分方程。Raja[14]利用人工神经网络、模拟退火、模式搜索、遗传算法、有源集算法的混合技术求解二阶比例延迟微分方程边值问题;Khan等[15]利用前馈神经网络结合列文伯格-马夸尔特算法和贝叶斯正则化通过反向传播算法求解比延迟微分方程;Sabir等[16]将分数阶Meyer小波神经网络与遗传算法全局搜索优化和序列二次规划局部搜索相结合,给出了分数阶比例莱恩-埃姆登模型的数值解。然而以上神经网络算法都有一个常见问题,即都是利用计算成本较高的数值优化算法来逼近解。这些算法大多需要计算梯度,有时还需要计算误差函数的黑森矩阵,不仅需要进行多次迭代来优化调节参数,而且还会导致训练过程中出现大量的运算,非常耗时。这些研究工作的另一个问题是,它们很少或完全没有强调讨论算法的收敛性和收敛速度。Panghal等[17]通过单隐藏层的前馈神经网络和极限学习机算法得到了具有较高精度的延迟微分系统数值解,同时分别利用浅层和多层极限学习机算法验证了使用极限学习机方法训练神经网络时,单隐藏层神经网络的函数逼近效果最好,但未涉及高阶延迟微分方程的求解。

本文着重讨论了上述两个方面,针对广义比例延迟微分方程构建单隐藏层前馈神经网络并使用极限学习机算法进行训练。该算法将比例延迟微分方程转化为最小二乘问题,通过摩尔-彭罗斯广义逆直接计算出最优神经网络输出权值。不同于传统基于梯度的网络训练方法,该算法完全避免了耗时的网络训练参数优化过程,计算量大幅降低,整个网络训练过程的速度要快得多。同时讨论了该算法取不同数量的训练点和隐藏层节点时的精度,并在此基础上,计算了数值收敛速度。通过数值实验与已有方法的结果进行比较,证明该方法对处理比例延迟微分方程具有较好的效果,并将该方法推广到双比例延迟微分系统的数值求解。

2 神经网络模型构建

神经网络是一种通过模拟人脑神经系统,进行分布式并行信息处理的数学模型。神经网络系统是由神经元通过连接权值连接在一起构成的,而不同的连接方式构成了不同种类的网络结构。本文使用的是前馈型神经网络,该网络主要由输入层、隐藏层和输出层3部分构成,每一层由许多相互连接的神经元构成,在神经网络中,神经元也称为节点。连接权值代表各节点之间连接的强弱,这些连接权值通常在神经网络的训练过程中会进行不断地更新调整。当输入信号由输入层到达隐藏层后,经过隐藏层的激活函数激活后再将结果传递到输出层的节点,最后得到输出结果。

在本文的研究中,构建了一个单隐藏层前馈神经网络用于求解比例延迟微分方程,该网络包含一个输入节点和一个输出节点,wj表示输入层到隐藏层的权值,vj表示隐藏层到输出层的权值,bj表示隐藏层节点的偏置。本文将使用相同的约定。该网络的示意图如图1所示。

图1 神经网络图

对于任意的输入t,都有输出

其中,m表示隐藏层的节点个数,φ表示激活函数。本文使用的激活函数为sigmoid函数s(x)=1/(1+e-x),因为该函数便于求导且自身无穷可微。

定理1 通用近似定理(Universal Approximation Theorem):设φ(·)是有界、单调递增的连续非常数函数,Id为d维的单位立方体[0,1]d,C(Id)是定义在Id上的连续函数集合,对于任意一个函数y∈C(Id)及ε>0,存在有限和

使得

|N(t)-y(t)|<ε,∀t∈Id

这里m为正整数且vj、wj、bj∈R。

根据通用近似定理可知,只要构造一个单隐藏层前馈神经网络并选取适当的激活函数,便可以通过简单的神经网络架构去拟合任何连续函数的解。

3 用极限学习机(ELM)算法求解比例延迟微分方程

3.1 极限学习机(ELM)算法分析

神经网络学习过程有许多不同的训练算法,最常见的训练算法是反向传播(BP)算法。BP算法分为正向传播和反向传播两个学习过程。正向传播即对每一个输入信号逐层向前计算最终得到一个输出结果。如果该输出值未达到预想的输出值,则计算输出值与期望值的误差,并将该误差从输出层向隐藏层进行反向传播直到输入层。在反向传播的过程中,会根据误差调整各种参数的值,不断重复上述过程,直至误差达到期望值时学习结束。BP算法的本质是梯度下降法,这个过程通常需要经过数次迭代,运算时间较长。

极限学习机(ELM)算法[18]作为一种新的前馈神经网络训练方法,已经成为机器学习训练过程中的替代方案。ELM算法是一种无梯度下降过程训练前馈神经网络的算法。该算法的核心思想是随机生成网络的输入权值和隐藏层偏置,并且在训练过程中这些参数一直保持不变,只优化调节训练点和隐藏层节点的个数,输出权值则通过最小化平方损失函数,将其转化为最小二乘法问题,利用Moore-Penrose广义逆解出输出权值。其中隐藏层节点数的选择是重点,如果数量过少,训练过程中提取到的信息量不足,网络将无法概括和反映数据的内在规律,映射能力不强,出现欠拟合问题;但数量过多,又会使网络结构变得复杂,不仅增加训练时间,而且容易引起过度拟合,影响网络的整体性能。与其他传统的基于梯度下降的前馈神经网络算法相比,ELM算法不仅避免了训练过程中的大量迭代调整,学习速度极快,在选择好合适的激活函数和确定隐藏层节点个数后,算法学习过程中不再需要人为调整参数,所得解是唯一最优解且收敛快速,具有良好的泛化性等优势。

3.2 比例延迟微分方程的求解

对于任意一个连续函数y(t),t∈[t0,T],使用含有m个隐藏层节点的上述神经网络进行近似,表达式写为

(2)

用N(t)替换式(1)中的y(t),得到:

c(t)N(t)=f(t)

(3)

再将

N(k)(t)=wjkφ(k)(wjt+bj),k=1,2,…,n

代入式(3)得到:

最后对:[t0,T]上的s个点(t1,t2,…,ts)进行训练,进一步得到

c(ti)φ(wjti+bj)}=f(ti)(i=1,2,…,s)

(4)

式(4)表示关于vj的线性方程组。

此外,神经网络还需满足初值条件,即

则将得到s+k个线性方程组,这个线性方程组可以写成矩阵形式

Hv=β

其中,H是系数矩阵,β=[f(t1),…,f(ts),λ1,…,λk]T。

根据ELM算法,首先随机生成输入权值wj和偏置bj,计算出矩阵H、β是已知的,然后通过公式v=H-1β求解输出权值,且v是唯一解,最后将得到的v=[v1,v2,…,vm]T代入式(2)即可得到比例延迟微分方程的近似解。

大多数实际情况中,矩阵H通常既不是方阵又不可逆,求解可能会出现问题,这时可以使用Moore-Penrose广义逆来进行求解。

定义1 若n×m阶矩阵H†是m×n阶矩阵H的广义逆矩阵,则满足

HH†H=H,H†HH†=H†
(HH†)T=HH†,(H†H)T=H†H

由定义1可知,存在H的广义逆H†,使得v=H†β。

算法步骤:

步骤1 生成定义域内的训练点集t=[t1,t2,…,ts]T,随机生成神经网络中输入权值向量w=[w1,w2,…,wm]T以及隐藏层偏置向量b=[b1,b2,…,bm]T,其中m是隐藏层节点的个数。

步骤2 计算系数矩阵:

A(:,j)=wjn[φ(n)(wjt+bj)+a(t)φ(n)(wjpnt+bj)]+

j=1,2,…,m

步骤3 计算初值条件:

Ak(:,j)=wjkφ(k)(wjt0+bj)

步骤6 由v=H†β得到v=[v1,v2,…,vm]T。

步骤7 将v代入N=vTφ(wt+b)得到比例延迟微分方程的近似解。

4 数值实验与仿真分析

在本节中,首先给出3个数值例子与已有方法的数值结果进行比较,说明该方法的适用性、准确性和收敛速度,再将该方法推广到双比例延迟微分系统,验证该方法在双比例延迟微分系统中也能取得较好的效果。

绝对误差定义为e=|N(t)-y(t)|,其中N(t)是方程数值解,y(t)是方程的精确解。均方根误差(FRMSE):

收敛速度(VROC):

其中,s1和s2是实例中使用的训练点个数,Es1表示使用s1个训练点得到的解中误差的均方根值,Es2表示训练s2个训练点得到的解中误差的均方根值。

4.1 一阶比例延迟微分方程

考虑一阶比例延迟微分方程:

该方程的精确解是y(t)=e-t。表1和图2比较了ELM方法(m=8,s=10)与两级一阶龙格-库塔法[19](步长取0.01)和变分迭代法[20](迭代次数取8)的绝对误差。将训练点数量控制在2—32之间,同时选取隐藏层节点数量为5、10、15、20,分别将这些数据代入算法中,获取更多的数据以了解ELM方法在求解比例延迟微分方程中的准确性和收敛速度。表2显示了使用ELM方法求得数值解的均方根误差和收敛速度。

表1 绝对误差比较

表2 一阶比例延迟微分方程数值解的均方根误差和收敛速度

图2 一阶比例延迟微分方程使用龙格-库塔法、变分迭代法和ELM方法解的绝对误差

由表1和图2可以清楚看出:ELM方法得到的数值解精度明显优于两级一阶龙格-库塔法和变分迭代法。表2则显示了ELM方法得到的精度与隐藏层节点和训练点个数相关:当增加隐藏层节点和训练点个数时,均方根值迅速减小,收敛速度也更快。

4.2 二阶比例延迟微分方程

考虑二阶比例延迟微分方程:

上述方程的精确解是y(t)=t2。表3和图3比较了ELM方法(m=6,s=10)与两级一阶龙格-库塔法[19](步长取0.01)和变分迭代法[20](迭代次数取6)的绝对误差。表4显示了将训练点数量控制在2—32之间,同时分别选取隐藏层节点数量为5、10、15,使用ELM方法求得数值解的均方根误差和收敛速度。

表3 二阶比例延迟微分方程的绝对误差比较

表4 二阶比例延迟微分方程数值解的均方根误差和收敛速度

图3 二阶比例延迟微分方程使用龙格-库塔法、变分迭代法和ELM方法解的绝对误差

同4.1节一样,图3显示了ELM方法在精度上明显优于其他两种方法。从表4中也可以看出:ELM方法只需要少量隐藏层节点和训练点即可获得较高的精度,且随着训练点数量和隐藏层节点数量的增加,均方根值迅速降低,这表明ELM方法确实是快速收敛的。

4.3 三阶比例延迟微分方程

考虑三阶比例延迟微分方程:

上述方程的精确解是y(t)=t4。表5和图4比较了ELM方法(m=12,s=20)与两级一阶龙格-库塔法[19](步长取0.01)和变分迭代法[20](迭代次数取6)的绝对误差。表6显示了将训练点数量控制在4—20之间,同时分别选取隐藏层节点数量为8、10、12时,使用ELM方法求得的数值解的均方根误差和收敛速度。

表5 三阶比例延迟微分方程的绝对误差比较

表6 三阶比例延迟微分方程数值解的均方根误差和收敛速度

图4 三阶比例延迟微分方程使用龙格-库塔法、变分迭代法和ELM方法解的绝对误差

由以上实例可知:使用ELM方法得到数值解相比于两级一阶龙格-库塔法和变分迭代方法得到的解准确性更高。ELM方法不仅只需要少量的训练点和隐藏层节点即可获得较高的精度,且随着训练点个数以及隐藏层节点数的增多,能得到更高的精度。同时ELM方法收敛迅速,训练过程中不需要进行迭代优化参数,不仅避免了大量的计算,而且也极大地降低了运算时间。

该方法不仅适用于求解广义比例延迟微分方程,同时适用于求解双比例延迟微分系统。由于双比例延迟微分系统中含有两个因变量,所以在使用神经网络方法求解双比例延迟微分系统时需要对每一个比例延迟微分方程构建一个网络结构,每个网络对应一个因变量。

4.4 双比例延迟微分系统

考虑双比例延迟微分系统:

其精确解为y1(t)=et,y2(t)=e-t。表7和表8展示了训练点数量控制在2—32之间,同时分别选取隐藏层节点数量为8、10、12时,使用ELM方法求得的数值解的均方根误差和收敛速度。

表7 双比例延迟微分系统中y1(t)的数值解均方根误差和收敛速度

表8 双比例延迟微分系统y2(t)的数值解的均方根误差和收敛速度

由表7和表8可以看出:ELM算法在求解双比例延迟微分系统中也取得了不错的效果。

5 结果与讨论

本文使用基于极限学习机算法的前馈神经网络方法求解比例延迟微分方程及双比例延迟微分系统。ELM算法完全消除了迭代算法的优化过程,使得计算复杂度远低于其他传统数值方法。该方法不仅只需要少量的训练点和隐藏层节点即可获得较高的精度,且随着训练点个数以及隐藏层节点数的增多,能得到更高的精度。数值实验结果表明:该方法比以往的一些方法精度更高,收敛速度更快。因此,极限学习机算法是求解比例延迟微分方程和双比例延迟微分系统数值解强有力的数学工具。

由第三节所呈现的图表可以看出:ELM方法在所有情况下的收敛速度都不是一致的。缺乏统一的收敛速度是因为在训练点数量和隐藏层节点数量相同的情况下,由于随机生成的输入权值和隐藏层偏置每一次都不同,所以每次都会得到不同的结果。在进一步的工作中,可以考虑对神经网络参数进行预处理,以便可以在不同问题中获得一致的收敛速度。

猜你喜欢

学习机权值比例
一种融合时间权值和用户行为序列的电影推荐模型
人体比例知多少
CONTENTS
极限学习机综述
基于极限学习机参数迁移的域适应算法
分层极限学习机在滚动轴承故障诊断中的应用
基于权值动量的RBM加速学习算法研究
按事故责任比例赔付
限制支付比例只是治标
一种基于AdaBoost的极限学习机分类方法