system: [SYSTEM]

user: 3. 模型的建立 被测海浪时间序列是由不同的振荡尺度组成的复杂非线性和非平稳信号。在实现波浪预测时，利用单一模型进行预测多振荡尺度会产生一定的困难。因此，本文在单一模型的基础上选用联合EMD与SVR的混合模型，利用EMD对被测海浪时间序列进行适当的信号预处理来提高SVR模型的预测性能。 3.1. 经验模式分解 经验模式分解法(Empirical mode decomposition， EMD)在1998年由Huang [ 3 ] 提出，理论上可以应用于任何类型的时间序列(信号)的分解。它在处理非平稳非线性数据上，比之前的平稳化方法更具有明显的优势。它作为一种完全的数据驱动方法，一经提出就在不同的工程领域得到了迅速有效的应用，如用在海洋、大气、天体观测资料与地球物理记录分析等方面。时间序列的平稳性，一般指宽平稳，即时间序列的均值和方差为与时间无关的常数，其协方差与时间间隔有关而与时间无关 [ 4 ] 。这种方法的本质是通过数据的特征时间尺度来获得本征波动模式，从而分解数据。这种分解过程可以形象地称之为“筛选”过程。 EMD分解方法是基于以下假设条件： 1) 数据至少有两个极值，一个最大值和一个最小值； 2) 数据的局部时域特性是由极值点间的时间尺度唯一确定； 3) 如果数据没有极值点但有拐点，则可以通过对数据微分一次或多次求得极值，然后再通过积分来获得分解结果。 经验模式分解的基本思想：将一个频率不规则的波化为多个单一频率的波+残波的形式，即原波形 = ∑ I M F s + 余波。它的分解过程 [ 5 ] 如下： · 找出原时间数据序列 X ( t ) 所有的极大值点和极小值点并用三次样条插值函数拟合形成原数据的上包络线 u ( t ) 和下包络线 I ( t ) ，取上包络线和下包络线的均值记作 m ( t ) ，即 m ( t ) = [ I ( t ) + u ( t ) ] / 2 。 · 将原数据序列 X ( t ) 减去该平均包络 m ( t ) ，得到一个新的数据序列 h ( t ) ，即 h ( t ) = X ( t ) − m ( t ) 。 · 验证 h ( t ) 是否满足IMF的条件，若还存在负的局部极大值和正的局部极小值，则执行步骤1)到步骤2)，直到 h ( t ) 是本征模函数为止。 · 经过n个转移过程后，将得到第n个IMF组分 I M F n ( t ) = c ( t ) 和相应的残差，重复整个算法，当残差变为单调函数时，停止迭代。 · 最终得到分解后的时间数据序列方程： X ( t ) = ∑ i = 1 n i m f i ( t ) + r ( t ) 。 3.2. 支持向量回归 3.2.1. 支持向量回归的应用性 支持向量机(Support Vector Machines， SVM) [ 6 ] 是20世纪90年代Vapnik提出的一种新的机器学习方法并被广泛应用于解决高度非线性分类和回归问题。支持向量回归机(Support Vector Regression， SVR) [ 7 ] 是其重要的应用分支。在结构风险最小化的假设下，SVR能最小化经验性风险和学习机器的置信区间，以达到良好的泛化能力。 3.2.2. 支持向量回归的理论基础 根据给定的波高时间序列 { h j ， j = 1 ~ N + m } 可以得到训练数据集 { ( h i ， y i ) ， i = 1 ~ N } ，其中输入数据 h i = ( h i ， ⋯ ， h i + m − 1 ) ， h i ∈ R m 是一个m维向量，输出数据 y i = h i + 1 是基于m维空间上的线性回归函数。 下面给出SVR模型的估计： y ( h ) = W T • ϕ ( h ) + b ，     W ∈ R m (1) 其中W是m维加权向量， Φ ( h ) 是m维向量函数，(·)表示内积运算，b是标量，N为训练样本个数。它的基本思想是一个非线性函数通过使用一组基函数 Φ ( h ) 和权重系数W转换为线性形式。支持向量机方法的目的是将经验风险和整体拟合误差降到最小，W和b通过最小化下列泛函进行估计。 R ( w ) = 1 2 W T W + C ∑ i = 1 N J ′ ( y i ， d i ) (2) 式中 d i 为SVR的实际输出； J ′ ( y i ， d i ) 为e不敏感损失函数，它能够用稀疏数点表现，其定义如下： J ′ ( y i ， d i ) = { | y i − d i | − ε | y i − d i | ≥ ε 0 其 他 (3) 式(3)表明若SVR的输出 y i 与实际输出 d i 的绝对值小于设定的ε时，损失函数值可忽略不计；否则令损失函数的值大于0，其大小为 | y i − d i | 超出ε的部分。从而使回归问题等同于下面的优化问题。 { min J ( w ， e → ) = 1 2 W T W + C 2 ∑ i = 1 N e i 2 s .t     y i = W T ϕ ( h i ) + b + e i ， i = 1 ， 2 ， ⋯ ， N (4) 其中C是正则化常数， e i 是估计误差。为了求解优化问题，引入拉格朗日函数L (Vapnik， 1998)。 L ( w ， b ， e ， a ) = J ( w ， e ) − ∑ i = 1 N a i ( W T ϕ ( h i ) + b + e i − y i ) (5) 在这里 a i 表示拉格朗日乘子。利用拉格朗日函数，方程(4)中的优化问题得到了(6)所示的Karush-Kuhn-Tucker (KKT)条件。Vapnik (1998)给出了线性方程组(6)的详细推导和数学证明。 { ∂ L ∂ α i = 0 → W Φ ( h i ) + b + e i − y i ∂ L ∂ b = 0 → ∑ i = 1 N α i = 0 ∂ L ∂ e i = 0 → α i = C e i ∂ L ∂ W = 0 → W = ∑ i = 1 N α i Φ ( h i ) (6) 线性方程组(6)可以进一步写成 [ Q N + C − 1 e i e i 0 ] [ a N b ] = [ y N 0 ] (7) 其中， y N = ( y 1 ， y 2 ， ⋯ ， y N ) T ， e 1 = ( 1 ， 1 ， ⋯ ， 1 ) ， a N = ( a 1 ， a 2 ， ⋯ ， a N ) T ，I是一个单位矩阵， Q N ， i j = φ T ( h i ) φ ( h j ) = k ( h i ， h j ) ， i ， j = 1 ， 2 ， 3 ， ⋯ ， N ， k ( h i ， h j ) 是一个核函数。 核函数的选择没有一般的指导原则，不同的核函数适用于不同的问题。广泛使用的内核函数包括：线性函数、σ函数、多项式函数和径向基函数(RBF)。其中径向基函数(RBF)不仅易于实现，而且还具有将训练数据非线性地映射到无限维空间的特点。Mahjoobi和Mosabbeb (2009)也证明，带有RBF核的SVR模型在海浪预报中表现良好。因此，本文采用了RBF核函数 [ 8 ] 。 宽度为β的RBF函数表示为 k ( h i ， h j ) = exp ( − ‖ h i − h j ‖ 2 2 / β 2 ) ， β > 0 (8) K ( x ， x i ) = exp ( − γ ‖ x − x i ‖ 2 ) (9) 其中 x i 为输入向量， γ 为RBF核函数的参数。通过求解线性方程组(7)，可以得到SVR模型中b和a的参数，并将回归函数改写为： y ( h ) = ∑ i = 1 N a i k ( h i ， h j ) + b (10) 在SVR模型中，RBF的参数 γ 和SVM模型的惩罚参数C，将对预测结果产生很大的影响 [ 9 ] 。 3.3. 联合EMD与SVR的有效波高短期预测模型建立 在海浪有效波高预测的EMD-SVR模型的实现过程中包括三个步骤。首先，海浪有效波高时间序列由EMD进行平稳化处理，得到一系列的不同频率的平稳分量，即本征模函数(IMF)和残差，它们更能准确地反映海浪的特征信息。根据这些分量的变化规律建立不同的SVR预测模型，最后通过对分量的预测结果进行等权叠加组合，得到最终预测结果 [ 10 ] 。如下图2所示。 图2. EMD-SVR模型建立图 SVR回归算法可实现线性或非线性的函数映射，其训练过程实际就是一个优化计算的过程，故可应用SVR实现组合预测。其基本思想是：将各个IMF的SVR同时刻的预测结果作为输入，将同时刻的相应的实际值作为输出。然后对网络进行足够的学习训练，直到找到最优参数为止 [ 11 ] 。从而使得各个参加组合预测的分量和实际输出值之间建立一种非线性映射关系。对于训练好的网络，当输入端为各个不同IMF的SVR预测值时，其输出即为组合后的最终预测值。 3.4. 统计参数 为了定量比较模型的性能，观察和预测有效波高的值，我们计算了均方根误差(RMSE)、相关系数(R)和一致性指数(IA)进行统计比较。这些统计指标被定义为 R M S E = 1 n ∑ ( x i − y i ) 2 (11) R = ∑ ( x i − x ¯ ) ( y i − y ¯ ) ∑ ( x i − x ¯ ) 2 ∑ ( y i − y ¯ ) 2 (12) I A = 1 − ∑ ( y i − x i ) 2 ∑ ( | y i − x ¯ | + | x i − x ¯ | ) 2 (13) 其中， x i ( y i ) 是观测到的(预测的)参数，n表示目标预测的SWH的总数， x ¯ ( y ¯ ) 是观测(预测)参数的平均值。