Prediction of significant wave height based on CNN-STLSTM-CNN model
-
摘要:
有效波高(significant wave height,SWH)是海洋的重要参数之一,对其的精确预测对渔业发展、海上交通和海洋生态系统具有重要意义。为了提高有效波高的预测精度,本文提出了一种基于卷积神经网络−时空长短时记忆神经网络−卷积神经网络(convolutional neural network-spatiotemporal long short-term memory-convolutional neural network,CNN-STLSTM-CNN)的有效波高预测模型。该模型由编码器(Encoder)、解释器(Translator)和解码器(Decoder)构成。Encoder通过卷积神经网络提取SWH数据的空间特征,Translator通过时空长短时记忆神经网络(spatiotemporal long short-term memory,STLSTM)提取SWH数据的空间特征在时间上的变化特性,Decoder通过卷积神经网络的转置卷积模块重建预测结果。对东海和南海海域的二维有效波高数据进行建模,实验结果表明CNN-STLSTM-CNN模型的均方根误差(root mean squared error,RMSE)、平均绝对误差 (mean absolute error,MAE)、均方根误差均值(mean of root mean squared error,M_RMSE)和平均绝对误差均值(mean of mean absolute error,M_MAE)等指标值均低于已有的方法,验证了CNN-STLSTM-CNN模型的有效性。
-
关键词:
- 有效波高 /
- 卷积神经网络 /
- 时空长短时记忆神经网络 /
- 转置卷积
Abstract:Significant wave height (SWH) is one of the important parameters of the ocean, and its accurate prediction is of great significance to fishery development, maritime traffic and the marine ecosystem. In order to improve the prediction accuracy of significant wave height, this paper proposes a significant wave height prediction model based on convolutional neural network-spatiotemporal long short-term memory-convolutional neural network (CNN-STLSTM-CNN). The model consists of an Encoder, a Translator and a Decoder. The Encoder extracts the spatial features of the SWH data through the convolutional neural network, the Translator extracts the temporal variation characteristics of the spatial features of the SWH data through the spatiotemporal long short-term memory neural network (STLSTM), and the Decoder reconstructs the prediction results through the transposed convolution module of convolutional neural network. Modeling the two-dimensional significant wave height data in the East China Sea and South China Sea, the experimental results show that RMSE, MAE, M_RMSE and M_MAE values of the CNN-STLSTM-CNN model are lower than the existing methods, which verifies the effectiveness of the CNN-STLSTM-CNN model on SWH prediction.
-
海洋活动不仅对人类的生产、生活有着深刻的影响,对沿海生态系统和沿海地形也同样具有重要意义[1]。海洋活动的一个重要特征是海浪,而有效波高(significant wave height,SWH)是海浪的重要要素,对其的精确预测对渔业发展、海上交通和海洋生态系统具有重要意义。
SWH预测主要有两类模型:数值海浪模型和数据驱动模型。目前第三代数值海浪模型WAVE WATCH Ⅲ(WW3)[2]被广泛应用于业务化的海浪预报系统。该数值海浪模型提高了预测精度,但是需要设置大量参数,且计算过程复杂、运行时间长,难以实现浪高的快速精确预测。而数据驱动模型仅对历史数据建模,可以实现快速精确预测。深度学习方法能够学习数据的内在规律和表示层次,拟合复杂的非线性过程,可为浪高预报这类物理机制复杂的非线性问题提供有力支撑。随着深度学习技术的快速发展,已有一些研究将深度学习应用到SWH预测。Fan等[3]使用长短期记忆神经网络(long short-term memory,LSTM)预测多个时刻的SWH,结果证明了LSTM对SWH数据具有较强的建模能力。Pirhooshyaran等[4]将LSTM与编码器−解码器结构结合构建了一个序列到序列网络,并将其用于SWH的预测和重建,结果表明,该序列到序列模型在SWH预测任务上有良好的性能。Pokhrel等[5]将Transformer深度学习模型与第三代数值海浪模型结合,使用Transformer预测SWH观测值与WW3模式所得SWH的一阶差分值,取得了较优的预测性能。上述研究均为基于单点观测数据的SWH预测。而二维SWH具有较强的空间相关性,Zhou等[6]提出基于多层ConvLSTM对东海−南海海域的SWH时空数据建模,并取得较为准确的预报结果。
为了进一步探究相关特征对SWH预测的影响,一些研究将海洋相关特征和大气相关特征引入SWH预测。Pokhrel等[5]结合SWH、平均波周期(mean wave period, MWP)、主导波周期(dominant wave period, DWP)和波方向(wave direction)等特征进行SWH预测。 Han等[7]认为SWH主要受风向(wind direction)、风速(wind speed)和气压(atmospheric pressure)等因素的影响,其中风速和风向是影响浪高的最主要因素。Gao等[8]将SWH、平均波长(mean wave length, MWL)、平均波方向(mean wave direction, MWD)、方向谱宽度(directional spectrum width, DSW)和10 m风的U、V分量作为模型输入,进行SWH、平均波长、平均波方向和方向谱宽度等的预测。
为了充分提取SWH数据的时空特征,提升SWH预测精度,本文提出了由编码器(Encoder)、解释器(Translator)和解码器(Decoder)构成的CNN-STLSTM-CNN预报方法。在Encoder中,卷积神经网络(convolutional neural network,CNN)可以较为充分地提取数据的空间特征,但难以获取时序数据之间的关联信息。在Translator中,采用时空长短时记忆神经网络(spatiotemporal long short-term memory,STLSTM)充分提取空间时序数据的空间特征在时间上的变化特性。在Decoder中,采用CNN的转置卷积还原编码器中卷积层下采样导致的数据空间尺寸的减小,从而重建时序数据。本文将该方法应用于东海和南海海域(3.5°N -35°N, 99.5°E-131°E)二维SWH数据,分别建立输入序列为3 h、预测3 h和输入序列为6 h、预测6 h的CNN-STLSTM-CNN模型。实验结果表明,其预测性能均优于已有的方法,验证了方法的有效性。
1 材料与方法
1.1 数据来源和研究区域
SWH数据为美国国家海洋和大气管理局(National Oceanic Atmospheric Administration,NOAA)提供的WAVE WATCH Ⅲ数值模式的数据集[9],其时间分辨率为1 h,空间分辨率为0.5°×0.5°。
影响浪高的特征有很多,包括10 m风的U分量与V分量、MWD、MWP、平均海平面压力(mean sea level pressure, MSLP)数据等。这些特征来自第五代欧洲中期天气预报中心再分析数据集ERA5中的10 m风的U分量和V分量、MWD、MWP、MSLP数据[10]。ERA5提供大气、海浪和地表参数的每小时估算值。10 m风的U、V分量和MSLP的空间分辨率均为0.25°×0.25°,MWD和MWP的空间分辨率均为0.5°×0.5°。所有特征的时间分辨率都为1 h。
选取东海和南海海域(3.5°N-35°N,99.5°E-131°E)作为研究对象。研究时间为2011年1月1日00:00至2021年12月31日24:00。在特征选择方面,SWH为必选特征,10 m风的U分量与V分量、MWD、MWP、MSLP为可选特征。
1.2 模型构建
1.2.1 模型结构
本文的CNN-STLSTM-CNN预测模型包含Encoder、Translator和Decoder 3个部分,如图1所示。Encoder包含多组由Conv3d、BatchNorm和LeakyReLU层构成的模块;Translator包含多个STLSTM层;Decoder包含多组由Conv3dTranspose、BatchNorm和LeakyReLU层构成的模块。其中,Conv3d为3D卷积,BatchNorm为批归一化,LeakyReLU为激活函数,STLSTM为时空长短时记忆神经网络,Conv3dTranspose为转置卷积。
Encoder在接受输入的二维SWH数据后,通过CNN提取数据的空间特征。
Translator堆叠了多个STLSTM层,提取SWH数据的空间特征在时间上的变化特性。首先,Translator接受Encoder的连续多个时刻输出特征,其次,多个STLSTM神经元构建的STLSTM网络能够在垂直和水平方向传递存储器状态,即时空记忆。该存储器状态在图1b的Translator模块中以红色线方向流动,构成Z字形。即空间信息沿着不同层间传递,随后随着时间向前移动。这样空间信息能够有效流动,实现了标准时间记忆和时空记忆的同时流动。
Decoder接受Translator的输出,经3D转置卷积重建Translator输出的空间特征在时间上的变化特性,并通过批归一化和LeakyReLU激活函数输出预测结果。
另外,本文将Encoder中由Conv3d、BatchNorm和LeakyReLU层构成的第一个模块输出的特征输入Decoder中最后一个由Conv3dTranspose、BatchNorm和LeakyReLU构成的模块,以防特征丢失。
1.2.2 Encoder
Encoder由多个卷积模块构成。CNN是由LeCun等提出的一种深度神经网络[11]。本文所使用的卷积模块包括卷积层、批归一化层[12]和LeakyReLU激活函数[13]。在卷积层中,卷积核以滑动窗口的方式对输入数据进行卷积,提取输入数据的特征。批归一化层对输入的特征进行均值为0,方差为1的归一化。卷积的计算如公式(1)所示。
$$ O=w \times x+b $$ (1) 式中:
$ O $ 表示输出特征图;$ x $ 表示卷积层的输入;$ w $ 表示卷积的权重矩阵;×代表点积;$ b $ 表示变差向量。批归一化的计算如公式(2)所示。
$$ m=\frac{O-E\left[O\right]}{\sqrt{\mathrm{V}\mathrm{a}\mathrm{r}\left[O\right]}}*\gamma +\beta $$ (2) 式中:
$ m $ 表示批归一化的输出;输出特征图$ O $ 为批归一化的输入;$ \gamma $ 是尺度因子;$ \beta $ 是偏移因子,$ \gamma $ 和$ \beta $ 是可学习的参数;在训练过程中,$ E\left[O\right] $ 表示批的均值,$ \mathrm{V}\mathrm{a}\mathrm{r}\left[O\right] $ 表示批的方差,而在测试过程中,$ E\left[O\right] $ 表示训练集所有数据的均值,$ \mathrm{V}\mathrm{a}\mathrm{r}\left[O\right] $ 表示训练集所有数据的方差。LeakyReLU函数如公式(3)所示。$${\rm{LeakyReLU}}\left({m}_{ij}\right)=\left\{ {\begin{array}{*{20}{l}} {m}_{ij},&{m}_{ij}\geqslant 0\\ \alpha {m}_{ij},&{m}_{ij} < 0\end{array}} \right.$$ (3) 式中:批归一化输出
$ {m}_{ij} $ 为激活函数的输入;$ \alpha $ 表示权重因子,取值范围是(0,1)。1.2.3 Translator
Translator由多个STLSTM层连接构成。STLSTM是长短时记忆神经网络(long short-term memory, LSTM)的一种改进[14]。由于LSTM在处理时序数据时忽略了空间相关性,Shi等[15]提出了ConvLSTM模型,关注空间和时间特征。为了解决信息流动的单向传递问题,STLSTM引入时空记忆,使得通过不同层获取的空间信息随着时间向前传递。
STLSTM神经元如图2a所示,STLSTM网络如图2b所示。在STLSTM网络中,
$ {L}_{1} $ 和$ {L}_{2} $ 均为STLSTM神经元,红色箭头表示时空记忆$ M $ 的传播方向。首先$ M $ 按层间传递,然后随时间向前传递。细胞状态C和隐藏状态$ H $ 的传递方式与LSTM相同,在同层之间按照时间向前传递。STLSTM神经元的计算如公式(4)-(13)所示。
$$ {g}_{t}=\mathrm{tanh}\left({W}_{xg}*{X}_{t}+{W}_{hg}*{H}_{t-1}^{l}+{b}_{g}\right) $$ (4) $$ {i}_{t}={\text{σ}}\left({W}_{xi}*{X}_{t}+{W}_{hi}*{H}_{t-1}^{l}+{b}_{i}\right) $$ (5) $$ {f}_{t}={\text{σ}}\left({W}_{xf}*{X}_{t}+{W}_{hf}*{H}_{t-1}^{l}+{b}_{f}\right) $$ (6) $$ {C}_{t}^{l}={f}_{t}\odot {C}_{t-1}^{l}+{i}_{t}\odot {g}_{t} $$ (7) $$ {g}_{t}'=\mathrm{tanh}\left({W}_{xg}'*{X}_{t}+{W}_{mg}*{M}_{t}^{l-1}+{b}_{g}'\right) $$ (8) $$ {i}_{t}'={\text{σ}}\left({W}_{xi}'*{X}_{t}+{W}_{mi}*{M}_{t}^{l-1}+{b}_{i}'\right) $$ (9) $$ {f}_{t}'={\text{σ}}\left({W}_{xf}'*{X}_{t}+{W}_{mf}*{M}_{t}^{l-1}+{b}_{f}'\right) $$ (10) $$ {M}_{t}^{l}={f}_{t}'\odot {M}_{t}^{l-1}+{i}_{t}'\odot {g}_{t}' $$ (11) $$ {o}_{t}=\sigma \left({W}_{xo}*{X}_{t}+{W}_{ho}*{H}_{t-1}^{l}+{W}_{co}*{C}_{t}^{l}+{W}_{mo}*{M}_{t}^{l}+{b}_{o}\right) $$ (12) $$ {H}_{t}^{l}={o}_{t}\odot {\rm{tanh}}\left({W}_{1\times 1}*\left[{C}_{t}^{l},{M}_{t}^{l}\right]\right) $$ (13) 式中:
$ {\text{σ}}\left(\mathrm{ }\right) $ 和$ \mathrm{t}\mathrm{a}\mathrm{n}\mathrm{h}\left(\mathrm{ }\right) $ 分别表示Sigmoid和tanh激活函数;$ {W}_{xg} $ 、$ {W}_{hg} $ 、$ {W}_{xi} $ 、$ {W}_{hi} $ 、$ {W}_{xf} $ 、$ {W}_{hf} $ 、$ {W}_{xg}' $ 、$ {W}_{mg} $ 、$ {W}_{xi}' $ 、$ {W}_{mi} $ 、$ {W}_{xf}' $ 、$ {W}_{mf} $ 、$ {W}_{xo} $ 、$ {W}_{ho} $ 、$ {W}_{co} $ 、$ {W}_{mo} $ 、$ {W}_{1\times 1} $ 表示卷积的权重;$ {X}_{t-1} $ 表示($ t-1 $ )时刻的输入;$ {H}_{t}^{l} $ 表示$ t $ 时刻第$ l $ 层的隐藏状态;$ \widehat{{X}_{t}} $ 为第t时刻的输出;$ {C}_{t-1}^{l} $ 表示($ t-1 $ )时刻第$ l $ 层的细胞状态;$ {C}_{t}^{l} $ 表示$ t $ 时刻第$ l $ 层的细胞状态;$ {M}_{t}^{l-1} $ 表示$ t $ 时刻($ l-1 $ )层的时空记忆;$ {M}_{t}^{l} $ 表示$ t $ 时刻第$ l $ 层的时空记忆;$ {b}_{g} $ 、$ {b}_{i} $ 、$ {b}_{f} $ 、$ {b}_{g}' $ 、$ {b}_{i}' $ 、$ {b}_{f}' $ 、$ {b}_{o} $ 表示偏差。1.2.4 Decoder
Decoder由多个Conv3dTranspose、BatchNorm和LeakyReLU层构成的卷积模块组成。首先经3D转置卷积把STLSTM提取的空间特征在时间上的变化特性重建,随后通过BatchNorm和LeakyReLU激活函数获得预测结果。转置卷积用于还原卷积层下采样导致图像尺寸减小的图片[16]。
1.2.5 评价指标
为了验证模型的有效性,选择均方根误差(root mean squared error,RMSE)、平均绝对误差 (mean absolute error,MAE)、均方根误差均值(mean of root mean squared error,M_RMSE)、平均绝对误差均值(mean of mean absolute error,M_MAE)和绝对误差(absolute error) 5个评价指标进行评价。其中M_RMSE和M_MAE分别给出测试样本空间上的均值来评估预测值和观测值之间的误差和偏离程度。各指标的计算如公式(14)-(18)所示。
$$ RMSE=\sqrt{\frac{1}{T}{\sum }_{t=1}^{T}{\left({h}_{p}\left(i,j\right)-{h}_{o}\left(i,j\right)\right)}^{2}} $$ (14) $$ MAE=\frac{1}{T}{\sum }_{t=1}^{T}\left|{h}_{p}\left(i,j\right)-{h}_{o}\left(i,j\right)\right| $$ (15) $$ \begin{split} &M\_RMSE=\\ &\frac{1}{T}{\sum }_{t=1}^{T}\sqrt{\frac{1}{I\times J}{\sum }_{i=1}^{I}{\sum }_{j=1}^{J}{\left({h}_{p}\left(i,j\right)-{h}_{o}\left(i,j\right)\right)}^{2}} \end{split}$$ (16) $$ M\_MAE=\frac{1}{T}{\sum }_{t=1}^{T}\frac{1}{I\times J}{\sum }_{i=1}^{I}{\sum }_{j=1}^{J}\left|{h}_{p}\left(i,j\right)-{h}_{o}\left(i,j\right)\right| $$ (17) $$ absolute\;error=\left|{h}_{p}\left(i,j\right)-{h}_{o}(i,j)\right| $$ (18) 式中:i,j表示空间格点坐标;T表示测试样例总数;I表示经向总格点数;J表示纬向总格点数;hp(i,j)表示对应空间格点模型预报的SWH值;ho(i,j)表示对应空间格点的SWH观测值。
2 结果与讨论
2.1 实验设置
本文实验的CPU为Intel(R) Xeon(R) Platinum 8255C,GPU为RTX 3090,Ubuntu版本为20.04,Python版本为3.8.10,TensorFlow版本为2.9.0,CUDA版本为11.2。
训练集选取2011年1月1日0时至2018年12月31日23时的SWH,验证集选取2019年1月1日0时至2019年12月31日23时的SWH,测试集选取2020年1月1日0时至2021年12月31日23时的SWH。SWH数据的空间分辨率均为0.5°×0.5°,时间分辨率均为1 h。实验选取Adam优化器[17],其中
$ {\beta }_{1}=0.9 $ ,$ {\beta }_{2}=0.999 $ 。SWH数据应用最大最小归一化方法进行预处理,如公式(19)所示。
$$ {x}_{\mathrm{s}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{e}\mathrm{d}}=\frac{x-\mathrm{min}\left(x\right)}{\mathrm{max}\left(x\right)-\mathrm{min}\left(x\right)} $$ (19) 式中:
$ x $ 为观测样本;$ \mathrm{min}\left(x\right) $ 为样本最小值;$ \mathrm{max}\left(x\right) $ 为样本最大值;$ {x}_{\mathrm{s}\mathrm{c}\mathrm{a}\mathrm{l}\mathrm{e}\mathrm{d}} $ 为归一化后的样本。由于10 m风的U分量与V分量、平均海平面压力的空间分辨率较高,在预处理时,对其进行采样,使其空间分辨率由0.25°×0.25°降为0.5°×0.5°。这里,要求SWH与其他特征要素维度一致。
2.2 最优模型性能分析
本文最优模型结构为:Encoder是两组包含由Conv3d、BatchNorm和LeakyReLU层构成的卷积块,Translator是两层STLSTM,Decoder是两组包含Conv3dTranspose、BatchNorm和LeakyReLU层构成的卷积块。
经过测试,给出最优模型参数设置。Encoder和Decoder中卷积核大小为1
$ \times $ 2$ \times $ 2,过滤器个数为64,Translator的卷积核大小为2$ \times $ 2,过滤器个数为64。本文给出了输入序列为3 h和6 h的模型预测结果(表1和表2)。结果表明,输入序列为3 h和6 h的模型在测试集上的M_RMSE和M_MAE值均较小。表 1 输入序列为3 h的模型在测试集上的误差统计Tab. 1 Error statistics of the model with an input sequence of three hours in the test set预测时刻 M_RMSE/m M_MAE /m 1 0.0284 0.0166 2 0.0386 0.0198 3 0.0512 0.0252 表 2 输入序列为6 h的模型在测试集上的误差统计Tab. 2 Error statistics of the model with an input sequence of six hours in the test set预测时刻 M_RMSE/m M_MAE /m 1 0.0370 0.0234 2 0.0376 0.0243 3 0.0411 0.0253 4 0.0493 0.0298 5 0.0604 0.0367 6 0.0701 0.0415 为了进一步展示本文CNN-STLSTM-CNN模型的预测性能,以输入序列为3 h的模型为例,在东海海域和南海海域分别选择一个观测点进行分析。东海海域选择27°N、 126°E的观测点,记为观测点1;南海海域选择9°N、 113°E的观测点,记为观测点2。表3和表4分别展示了两个观测点测试集上的RMSE和MAE指标值。
表 3 两个观测点测试集上的RMSE值Tab. 3 RMSE values of 2 observation points in the test set位置 RMSE/m 第1 h 第2 h 第3 h 观测点1 0.0440 0.0759 0.1104 观测点2 0.0257 0.0359 0.0468 表 4 两个观测点测试集上的MAE值Tab. 4 MAE values of 2 observation points in the test set位置 MAE/m 第1 h 第2 h 第3 h 观测点1 0.0229 0.0368 0.0536 观测点2 0.0146 0.0190 0.0243 由表中数据可知,在相同时刻,观测点2的RMSE和MAE值都低于观测点1,说明本文模型在南海观测点的预测性能优于东海观测点。图3展示了两个观测点在测试集上2020年1月1日0时至12月31日24时的预测结果。由图3可以看出,在东海和南海海域选择的观测点上,本文模型得到的SWH预测值和观测值相近,仅在浪高极值位置上,不同时刻的预测值和观测值差异较大,如图3(a)所示2020年9月附近的极值点。放大2020年7月15日至7月20日这个时间段的预测值,发现位于东海的观测点1上,未来第1 h的SWH预测值接近观测值,未来第2 h的SWH预测值偏离观测值比未来第1 h要远,未来第3 h的SWH预测值偏离观测值最远,预测性能最差。位于南海的观测点2上,不同时刻的预测值与观测值基本一致,预测精度高。综上所述,无论是南海海域还是东海海域上,本文模型均取得较高的预测精度。
2.3 不同模型预测性能比较
2.3.1 输入序列为3 h的模型性能
为了分析所提出的CNN-STLSTM-CNN模型的预测性能,选取了ConvLSTM[6]、PredRNN[14]、SimVP[18] 3个模型与本文模型比较。选择输入序列为3 h、输出序列为3 h的SWH数据建模分析。不同模型在M_RMSE和M_MAE上的误差指标值如表5和表6所示。
表5和表6展示了ConvLSTM、PredRNN、SimVP和CNN-STLSTM-CNN 4个模型在测试集上未来第1 h、第2 h和第3 h的预测误差。CNN-STLSTM-CNN模型在测试集上各时刻的M_RMSE分别为0.0284 m、0.0386 m和0.0512 m,在所有模型中本文提出的模型的预测误差最低。同理,本文提出的模型在各时刻的M_MAE分别为0.0166 m、0.0198 m和0.0252 m,在所有模型中M_MAE值最小。表明在输入序列3 h、输出序列3 h的模型中,本文提出的模型的预测性能最优。
2.3.2 输入序列为6 h的模型性能
选择输入序列为6 h、输出序列为6 h的SWH数据建模分析。图4展示了ConvLSTM、PredRNN、SimVP和CNN-STLSTM-CNN 4个模型在测试集上未来第1 h至第6 h的M_RMSE和M_MAE上的误差指标值。
CNN-STLSTM-CNN模型在测试集上各时刻的M_RMSE分别为0.0370 m、0.0376 m、0.0411 m、0.0493 m、0.0604 m和0.0701 m,在所有模型中M_RMSE值最低。同理,本文提出的模型在各时刻的M_MAE分别为0.0234 m、0.0243 m、0.0253 m、0.0298 m、0.0367 m和0.0415 m,在所有模型中该误差指标值最低。表明在所有输入序列6 h、输出序列6 h的模型中,本文提出的模型的预测性能最优。
通过4个模型未来3 h和6 h的预测实验对比分析可知,ConvLSTM模型关注时间和空间特征,其具有处理时空序列数据的能力,但其空间信息仅限于按层间传递。而PredRNN模型通过STLSTM引入时空记忆,空间信息首先按层间传递,然后随时间向前传递,解决了信息流动的局限性问题。这里,PredRNN引入STLSTM,模型参数显著增加。整体上,PredRNN模型预测性能优于ConvLSTM模型。SimVP模型由Encoder、Translator和Decoder 3个部分组成。其中Encoder通过多组CNN模块提取空间特征,Translator通过堆叠CNN模块学习时间演化,Decoder通过多组CNN的转置卷积模块集成时空信息预测SWH值。SimVP模型减少了模型参数,预测性能有了进一步提升。本文提出的CNN-STLSTM-CNN模型由Encoder、Translator和Decoder 3个部分组成。首先,在Encoder中通过多组CNN提取空间特征;其次,在Translator中通过堆叠STLSTM层,引入时空记忆,实现了标准时间记忆和时空记忆的同时流动;最终,在Decoder中通过CNN的多组转置卷积重建预测数据。实验结果表明本文提出的模型的SWH预测精度明显高于其他模型,验证了方法的有效性。
2.4 模型复杂度分析
应用访存量(Memory)和浮点运算次数(floating points of operations,FLOPs)两个指标来分别评价本文模型的空间和时间复杂度。Memory是指模型的参数数量,FLOPs表示模型的计算复杂度,其主要包括乘法和加法运算次数。给出输入尺寸为1×64×64的时序图片数据,输入序列分别为3 h和6 h的不同模型的Memory和FLOPs结果列于表7和表8。由表7和表8的数据分析可知:当处理输入尺寸为1×64×64的时序图片数据时,CNN-STLSTM-CNN模型占用存储空间为2.3167 MB,比PredRNN模型占用空间少,比SimVP占用空间多;同时本文提出的模型的计算量比PredRNN模型少,但远多于SimVP模型。因此,本文提出的模型需要计算量较大,复杂度较高。
表 7 输入序列为3 h的模型的Memory和FLOPs统计Tab. 7 Memory and FLOPs statistics of the model with an input sequence of three hours模型 Memory/MB FLOPs /G ConvLSTM 2.8264 20.0588 PredRNN 8.1563 43.7885 SimVP 0.8379 1.5514 CNN-STLSTM-CNN 2.3167 21.1834 表 8 输入序列为6 h的模型的Memory和FLOPs统计Tab. 8 Memory and FLOPs statistics of the model with an input sequence of six hours模型 Memory/MB FLOPs/G ConvLSTM 2.8264 40.1255 PredRNN 8.1563 96.3348 SimVP 0.9697 3.0660 CNN-STLSTM-CNN 2.3167 46.5253 2.5 可视化分析
为了展示CNN-STLSTM-CNN模型的优势,选择输入序列为3 h的本文模型、ConvLSTM、PredRNN和SimVP 4个模型进行可视化分析。在测试集上随机挑选3 h的SWH值,图5是不同模型在东海和南海研究区域2020年3月29日5时至7时的预测值与绝对误差的空间分布。不同空间格点预测值的颜色不同。在预测值图上,蓝色越深表示SWH值越接近于0 m,红色越深表示SWH值越大;在绝对误差值图上,蓝色越深表示绝对误差越小,红色越深表示绝对误差越大。图5a、图5j、图5s为5时至7时的观测值,图5b、图5k、图5t和图5f、图5o、图5x分别为ConvLSTM模型3个时刻的预测值和绝对误差的空间分布,图5c、图5l、图5u和图5g、图5p、图5y分别为PredRNN模型3个时刻的预测值和绝对误差的空间分布,图5d、图5m、图5v和图5h、图5q、图5z分别为SimVP模型3个时刻的预测值和绝对误差的空间分布,图5e、图5n、图5w和图5i、图5r、图5aa分别为本文模型3个时刻的预测值和绝对误差的空间分布。
由图5观测到:随着预测时间的增加,所有模型的绝对误差在增大。ConvLSTM模型在未来第3 h的预测性能均最差,绝对误差值最大达到0.5516 m。PredRNN模型每小时的预测性能比ConvLSTM模型较优,绝对误差空间分布图中每小时的蓝色区域较多,尤其是第3h的绝对误差图没有出现绝对误差大的深红色区域,说明预测误差更小。在SimVP模型每小时的绝对误差空间分布中,蓝色区域比PredRNN模型更多,尤其是第3 h蓝色区域明显增多,说明SimVP模型的预测性能得到进一步提升。放大第3 h的观测值(图5s)、ConvLSTM模型图(图5t)和本文模型图(图5w),发现无论东海海域还是南海海域,本文模型预测的SWH值与观测值最接近,ConvLSTM模型预测效果最差。CNN-STLSTM-CNN模型每小时的绝对误差深蓝色的区域最多,说明绝对误差最小,表明在所有模型中预测性能最优。
图6为4个模型在测试集上RMSE的空间分布的可视化结果。蓝色越深,说明误差越小,红色越深,说明误差越大。由图6观察到:所有模型的RMSE值显示几乎都是蓝色,仅ConvLSTM模型在第3 h的RMSE值有个别浅红色点。与其他模型相比,CNN-STLSTM-CNN模型每小时的RMSE空间分布中的深色区域最多,说明其预测误差最小,表明本文模型的预测性能最优。
2.6 不同特征对模型预测性能的影响
为了分析不同特征对本文模型预测性能的影响,将SWH分别与10 m风的U分量与V分量、MWD、MWP、MSLP 4个特征要素组合建模,输出未来3 h的SWH预测值。
图7展示了加入不同特征的模型的M_RMSE和M_MAE值。在加入10 m风的U、V分量特征后,每小时的M_RMSE和M_MAE值均低于加入MWD、MWP和MSLP特征的模型,10 m风的U、V分量能显著地提升SWH的预测性能。MWD和MWP特征对预测性能有一定的提升,两者的预测误差指标值相近。MWP特征在第1 h的预测优于MWD特征,在第2 h和第3 h的预测比MWD特征差。加入MSLP特征与未加特征的模型每小时的M_RMSE值相近,而在第2 h和第3 h的M_MAE值比未加特征模型更大,说明MSLP特征未有效提升预测性能。选择加入全部特征,所得模型的预测性能和加入10 m风的U、V分量的模型相近,未提升预测精度。
图8是加入不同特征的本文模型在2020年3月29日5时至7时的预测值与绝对误差的空间分布。
图8a、图8l、图8w为观测值,图8b、图8m、图8x和图8g、图8r、图8ac分别为未加特征的预测值与绝对误差的空间分布,图8c、图8n、图8y和图8h、图8s、图8ad分别为加入10 m风U、V分量的预测值与绝对误差的空间分布,图8d、图8o、图8z和图8i、图8t、图8ae分别为加入MWD的预测值与绝对误差的空间分布,图8e、图8p、图8aa和图8j、图8u、图8af分别为加入MWP的预测值与绝对误差的空间分布,图8f、图8q、图8ab和图8k、图8v、图8ag分别为加入MSLP的预测值与绝对误差的空间分布。
由图8观察到:在绝对误差图中,蓝色越深,误差越小;在由蓝色渐变到红色的过程中,误差逐渐增大;红色越深,误差越大。在加入10 m风U、V分量的模型每小时绝对误差空间分布中,深蓝色的区域比其他特征的模型都多,说明预测误差最小,表明每小时的预测值最接近观测值。而在加入MWD的模型每小时绝对误差图中,浅色区域比不加特征的模型多,说明预测误差比未加特征的模型大。在加入MWP的模型绝对误差图中,第1 h深蓝色的区域多于加MWD特征的模型,略少于加10 m风U、V分量的模型,说明预测误差小,第2 h和第3 h的模型与加MWD特征的模型性能相近。加入MSLP特征的模型的绝对误差与加入MWP特征的模型相近。
综上所述,加入10 m风U、V分量特征能显著提升SWH的预测性能。
图9展示了加入不同特征的模型在测试集上每小时RMSE的空间分布。蓝色越深,说明误差越小,红色越深,说明误差越大。在加入10 m风U、V分量的模型每小时分布图上深蓝色的区域最多,说明预测误差小于其他模型。放大第3 h未加特征和加入10 m风U、V分量特征的两个RMSE空间分布图,发现在加入10 m风U、V分量后,在南海海域的低纬度上,深蓝色的区域比未加特征的多,说明预测误差更小。而在东海海域,在加入10 m风U、V分量后,相应蓝色区域颜色深于未加特征的模型,说明预测误差小。上述结果表明本文模型选择加入10 m风U、V分量建模,可以进一步提升模型预测性能。
3 结 论
(1) 本文利用RMSE、MAE、M_RMSE和M_MAE评价指标,给出预测值、预测值与观测值的绝对误差、测试集RMSE的可视化分析,评估本文模型的预测性能, 并将其与其他深度学习模型进行比较。结果表明,本文提出的CNN-STLSTM-CNN模型预测性能优于其他模型,验证了方法的有效性。
(2) 将SWH分别与10 m风U分量、V分量、平均波方向、平均波周期和平均海平面压力等要素结合,评估加入不同特征的模型预测性能,结果表明10 m风U、V分量特征能显著提升模型预测性能。
(3) 在所提及的模型中,CNN-STLSTM-CNN模型的预测性能最优,但其计算量较大,训练时间较长。未来应考虑更加高效的SWH预测模型。
-
表 1 输入序列为3 h的模型在测试集上的误差统计
Tab. 1 Error statistics of the model with an input sequence of three hours in the test set
预测时刻 M_RMSE/m M_MAE /m 1 0.0284 0.0166 2 0.0386 0.0198 3 0.0512 0.0252 表 2 输入序列为6 h的模型在测试集上的误差统计
Tab. 2 Error statistics of the model with an input sequence of six hours in the test set
预测时刻 M_RMSE/m M_MAE /m 1 0.0370 0.0234 2 0.0376 0.0243 3 0.0411 0.0253 4 0.0493 0.0298 5 0.0604 0.0367 6 0.0701 0.0415 表 3 两个观测点测试集上的RMSE值
Tab. 3 RMSE values of 2 observation points in the test set
位置 RMSE/m 第1 h 第2 h 第3 h 观测点1 0.0440 0.0759 0.1104 观测点2 0.0257 0.0359 0.0468 表 4 两个观测点测试集上的MAE值
Tab. 4 MAE values of 2 observation points in the test set
位置 MAE/m 第1 h 第2 h 第3 h 观测点1 0.0229 0.0368 0.0536 观测点2 0.0146 0.0190 0.0243 表 5 不同模型在测试集上的M_RMSE值
Tab. 5 Comparisons of M_RMSE values among different algorithms in the test
表 6 不同模型在测试集上的M_MAE值
Tab. 6 Comparisons of M_MAE values among different algorithms in the test
表 7 输入序列为3 h的模型的Memory和FLOPs统计
Tab. 7 Memory and FLOPs statistics of the model with an input sequence of three hours
模型 Memory/MB FLOPs /G ConvLSTM 2.8264 20.0588 PredRNN 8.1563 43.7885 SimVP 0.8379 1.5514 CNN-STLSTM-CNN 2.3167 21.1834 表 8 输入序列为6 h的模型的Memory和FLOPs统计
Tab. 8 Memory and FLOPs statistics of the model with an input sequence of six hours
模型 Memory/MB FLOPs/G ConvLSTM 2.8264 40.1255 PredRNN 8.1563 96.3348 SimVP 0.9697 3.0660 CNN-STLSTM-CNN 2.3167 46.5253 -
[1] CHEN F D, LIU L L, GUO F. Sea surface height estimation with multi-GNSS and wavelet de-noising[J]. Scientific reports, 2019, 9(1): 15181. doi: 10.1038/s41598-019-51802-9
[2] TOLMAN HL. Distributed-memory concepts in the wave model WAVEWATCH Ⅲ[J]. Parallel Computing, 2002, 28(1): 35-52. doi: 10.1016/S0167-8191(01)00130-2
[3] FAN S T, XIAO N H, DONG S. A novel model to predict significant wave height based on long short-term memory network[J]. Ocean Engineering, 2020, 205: 107298. doi: 10.1016/j.oceaneng.2020.107298
[4] PIRHOOSHYARAN M, SNYDER L V. Forecasting, hindcasting and feature selection of ocean waves via recurrent and sequence-to-sequence networks[J]. Ocean Engineering, 2020, 207: 107424. doi: 10.1016/j.oceaneng.2020.107424
[5] POKHREL P, IOUP E, SIMEONOV J, et al. A transformer-based regression scheme for forecasting significant wave heights in Oceans[J]. IEEE Journal of Oceanic Engineering, 2022, 47(4): 1010-1023. doi: 10.1109/JOE.2022.3173454
[6] ZHOU S Y, XIE W H, LU Y X, et al. ConvLSTM-based wave Forecasts in the South and East China Seas[J]. Frontiers in Marine Science, 2021, 8: 680079. doi: 10.3389/fmars.2021.680079
[7] HAN L, JI Q Y, JIA X Y, et al. Significant wave height prediction in the South China Sea based on the ConvLSTM algorithm[J]. Journal of Marine Science and Engineering, 2022, 10(11): 1683. doi: 10.3390/jmse10111683
[8] GAO Z Y, LIU X, YV F J, et al. Learning wave fields evolution in North West Pacific with deep neural networks[J]. Applied Ocean Research, 2023, 130: 103393. doi: 10.1016/j.apor.2022.103393
[9] CHEUNG K F. Wave Watch Ⅲ (WW3) global wave model distributed by the Pacific Islands Ocean Observing System (PacIOOS)[EB/OL]. (2010-06-20). http://pacioos.org/metadata/ww3_global.html.
[10] HERSBACH H, BELL B, BERRISFORD P, et al. The ERA5 global reanalysis[J]. Quarterly Journal of the Royal Meteorological Society, 2020, 146(730): 1999-2049. doi: 10.1002/qj.3803
[11] 周飞燕, 金林鹏, 董 军. 卷积神经网络研究综述[J]. 计算机学报, 2017, 40(6): 1229-1251. doi: 10.11897/SP.J.1016.2017.01229 [12] IOFFE S, SZEGEDY C. Batch normalization: accelerating deep network training by reducing internal covariate shift[C]//Proceedings of the 32nd International Conference on Machine Learning. Lille: JMLR. org, 2015: 448-456.
[13] MAAS A L, HANNUN A Y, NG A Y, et al. Rectifier nonlinearities improve neural network acoustic models[C]//Proceedings of the 30th International Conference on Machine Learning. Atlanta: JMLR, 2013: 3.
[14] WANG Y B, LONG M S, WANG J M, et al. PredRNN: Recurrent Neural Networks for Predictive Learning using Spatiotemporal LSTMs[C]//Proceedings of the 31st International Conference on Neural Information Processing Systems. Long Beach: Curran Associates Inc. , 2017: 879-888.
[15] SHI X J, CHEN Z R, WANG H, et al. Convolutional LSTM network: A machine learning approach for precipitation nowcasting[C]//Proceedings of the 28th International Conference on Neural Information Processing Systems. Montreal: MIT Press, 2015: 802-810.
[16] DUMOULIN V, VISIN F. A guide to convolution arithmetic for deep learning [J]. arXiv preprint arXiv: 1603.07285, 2016.
[17] KINGMA D P, BA J. Adam: A method for stochastic optimization[C]//Proceedings of the 3rd International Conference on Learning Representation. San Diego: ICLR, 2015: 1-15.
[18] GAO Z Y, TAN C, WU L R, et al. SimVP: Simpler Yet Better Video Prediction[C]//Proceedings of 2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition. New Orleans: IEEE, 2022: 3160-3170.