基于LSTM神经网络的潮汐分析

known 发布于 2025-08-25 阅读(249)

摘" 要 :由于风、浪、潮等环境因素的影响,传统的潮位平差和分析方法无法准确捕捉潮汐时间序列数据的复杂特征。为了解决这个问题,文章提出了一种基于长短期记忆(LSTM)神经网络的方法来预测连云港站点的潮位。通过设置不同的参数如LSTM层数、批处理大小、隐藏层节点数、初始学习率和序列长度,构建了LSTM模型,并使用了2022年1月以来连云港验潮站的小时级潮汐数据组成的数据集,进行模型的训练,并评估了该模型在不同网络参数设置下的性能,最后选择最优的模型参数对连云港未来潮汐数据进行了预测,预测结果分析表明该模型可以较好地完成预测任务。

关键词:潮汐数据预测;深度学习;LSTM模型

中图分类号:TP391 文献标识码:A 文章编号:2096-4706(2025)04-0038-05

Tidal Analysis Based on LSTM Neural Network

LING Xinhui1, SHANG Yujie1, LI Xiaoping2

(School of Communication and Artificial Intelligence, School of Integrated Circuits, Nanjing Institute of Technology, Nanjing" 211167, China)

Abstract: Owing to the influence of environmental factors such as wind, wave and tide, traditional methods of tidal range and analysis are incapable of accurately capturing the complex features of tidal time series data. To solve this problem, this paper proposes a method based on the LSTM neural network to predict the tide level at the Lianyungang station. The LSTM model is constructed by setting different parameters, including the number of LSTM layers, the batch size, the number of hidden layer nodes, initial learning rate, and sequence length. A dataset composed of hourly tidal data from the Lianyungang tide gauge station since January 2022 is used to train the model, and the performance of the model under different network parameter settings is evaluated. Finally, the optimal model parameters are selected to predict the future tidal data of Lianyungang. The analysis of the prediction results demonstrates that the model can perform the prediction task quite well.

Keywords: tidal data prediction; Deep Learning; LSTM model

0" 引" 言

潮汐是海洋动力学的重要组成部分,影响海岸侵蚀、海洋运输和其他海洋活动。准确的潮汐预报对于安全航行、海岸工程和环境监测至关重要。传统的潮汐分析和预测方法依赖于数值模型来模拟水体的运动并预测由此产生的潮汐。然而,这些方法因其简单性和无法解释复杂的现实世界现象而受到限制。

近年来,机器学习技术,特别是长短期记忆(LSTM)神经网络,越来越多地应用于潮汐分析和预测。LSTM网络非常适合对数据中复杂的时间关系进行建模,并且可以捕获非线性模式和趋势。它们已成功应用于海洋学的各种任务,包括海平面上升预测、波浪预测和洋流建模。

现有的深度学习模型主要包括反向传播神经网络(BPNN)、递归神经张量网络(RNN)、循环神经网络(RNTN)、卷积神经网络(CNN)等。在众多深度学习模型中,RNN专门用于对时序数据进行建模,能够很好地捕捉时间序列间的非线性关系。然而,一般的RNN存在的长期依赖问题使网络无法对时序数据进行有效学习。另外由于RNN有梯度消失和梯度爆炸的问题,学习能力有限,在实际任务中的效果很难达到预期。为了增强循环神经网络的学习能力,缓解网络的梯度消失等问题,德国学者Sepp Hochreiter和Juergen Schmidhuber提出了循环网络的一种变体,即所谓长短期记忆单元,或称LSTM(Long Short Term Memory, LSTM)神经网络算法。LSTM神经网络主要用于时序预测、时序异常检测等[1-2]。LSTM可以对有价值的信息进行长期记忆,不仅减小循环神经网络的学习难度,并且由于其增加了长时记忆,在一定程度上也缓解了梯度消失的问题。

国内外多位学者[3-7]利用LSTM神经网络算法进行了湖泊河流水域的水位预报研究,验证了采用该方法进行水位时间序列预测的可行性。

1" 主要模型算法

1.1" LSTM神经网络原理

LSTM是一种长短期记忆网络,该神经网络主要由细胞状态、遗忘门、输入门和输出门组成。细胞状态用于长期记忆传递,遗忘门决定哪些信息应被遗忘,输入门决定哪些部分应被更新,输出门决定从细胞状态中提取什么信息。这些部分共同协作,使LSTM能够处理序列数据的长期依赖关系。LSTM网络结构如图1所示。

1.1.1" 记忆单元

LSTM的核心是一个线性的记忆单元(Cell State),它贯穿整个序列链,并在每个时间步长进行更新,这个记忆单元负责存储和传递长期依赖的信息。

1.1.2" 门控机制

LSTM通过三个门来控制记忆单元的更新和输出,这三个门分别是:

1)遗忘门(Forget Gate)。这个门决定了哪些信息应该从记忆单元中被遗忘,它根据当前的输入和上一个隐藏状态,输出一个介于0和1之间的值,这个值决定了记忆单元中每个元素应该被保留的程度。遗忘门的遗忘程度计算式为:

(1)

式中,为激活函数,为该层的权重系数,为该层的潮汐数据偏差值,xt为当前时间的输入数据,为上一时间LSTM 层输出的潮汐数据预测值。

2)输入门(Input Gate)。这个门决定了哪些新的信息应该被存储在记忆单元中,它分为两部分,首先是“输入调制”步骤,确定哪些值应该被更新;然后是一个“tanh”层,生成新的候选值,这些值可能会被添加到状态中。输入门处理后的输出计算式为:

(2)

单元状态向量计算式为:

(3)

式中,tanh为输出激活函数,为输入门的权重系数,为神经细胞状态的权重系数,为输入门的偏置,为神经细胞状态的偏置,为修正后创建的单元状态向量,是t时刻经输入门处理后的输出。

3)输出门(Output Gate)。这个门决定了记忆单元中的哪些信息应该被输出到LSTM单元的当前输出,它根据当前的输入和上一个隐藏状态,输出一个决定记忆单元哪些部分将被输出的值。

输出门的输出信息计算式为:

(4)

(5)

式中,W0为输出门的权重系数,b0为输出门的偏置。

1.1.3" 隐藏状态

除了记忆单元外,LSTM还有一个隐藏状态(Hidden State),它用于捕捉短期依赖信息,隐藏状态在每个时间步长都会根据输入、上一个隐藏状态和记忆单元进行更新。

1.2" LSTM模型的评价指标

潮汐的预测效果由实际值和预测值的差来反映。本文在潮汐预测中,采用均方根误差(RMSE)和平均绝对误差(MAE)作为评价指标[8-9],用于描述预测结果的准确性。计算公式如下:

(6)

(7)

上式中,y0、yp分别为预测时间的真实值和预测值,N为潮汐数据的数量。评价指标值低意味着模型预测时误差低,即该模型预测精度高。

2" 潮汐数据预测研究过程

本文按照下列步骤完成了基于LSTM的潮汐预测模型的构建:

1)数据集进行预处理,对缺失的数据用相邻数据平均法进行补充,并将补充后的11天数据集中的前10天数据划分为训练集,最后一天数据划分为测试集,然后对划分后的数据进行归一化处理。

(8)

(9)

式中,yt为时刻t缺失数据,yt-1,yt+1分别为时刻t-1,t+1数据,M为归一化后数据,yt为原始数据,为原始数据平均值,为原始数据的标准差。

2)定义LSTM网络的结构,设置num_layers、batch_size、hidden_size、seq_length和learning_rate常用的值作为LSTM网络的初始参数。

3)训练集训练LSTM网络,得到初始潮汐预测模型。

4)验证训练好的模型,使用测试集测试潮汐预测模型的训练效果。

5)模型超参数寻优,对num_layers、batch_size、hidden_size、seq_length和learning_rate五种超参数分别进行验证选择,选出最优的超参数组合。

6)潮汐预测,利用验证选出的最优超参数组合进行潮汐的预测,将潮汐预测值与实际值进行比较。

通过上述6个步骤可实现LSTM模型超参数寻优设计和潮汐的动态预测,LSTM预测过程如图2所示。

3" LSTM模型的创建

LSTM预测模型参数的选取对于预测的准确性至关重要,通过改变不同的参数大小,依据评价指标MAE和RMSE来判断哪种参数下的LSTM模型效果较好。本文利用连云港的潮汐数据作为数据集,对LSTM层数(layers num)、批处理大小(batch size)、隐藏层节点个数(hidden size)、序列长度(seq- length)和初始学习率(learning rate)五种超参数分别进行验证选择,选出最优的超参数组合[10],不同参数下的MAE和RMSE的对比趋势图如图3所示。

3.1" 网络层数选择

在实验中,保持其他LSTM网络超参数不变,仅改变LSTM网络层数进行实验,并对实验结果进行对比。如图3(a)(b)所示的比较结果,从图中可以清晰地看到折线的最低点均落在了4层的LSTM网络层数上,RMSE值和MAE值均在4层的情况下值最小,都达到了最佳性能。由于增加LSTM的层数可以提高模型的复杂性和预测能力,但同时也可能增加过拟合的风险,层数的增加也会导致计算量的增加。综合考虑,不再考虑增加LSTM的层数进行实验,选择4层作为实验的LSTM层数。

3.2" 批处理大小选择

批处理大小(batch size)是指在训练过程中每次更新权重时所使用的样本数量。批处理大小的选择对于LSTM的性能产生了重要影响。如果批处理大小太小,则需要更多的iteration来完成训练,这会增加计算时间和内存消耗。如果批处理大小太大,则可能导致gradients爆炸或抖动,从而降低模型的收敛速度和精度,RMSE和MAE对比如图3(c)所示。综合考虑在不超出GPU的memory限制下,本文采用256批处理大小。

3.3" 隐藏层节点选择

不同隐层节点数下实验结果的RMSE值和MAE值的对比如图3(d)所示,隐藏层节点数选择的通常从少量隐藏节点开始,本文使用2的幂(例如32、64、128等)作为隐藏节点的数量,因为这样可以更有效地计算和内存使用。逐渐增加它们,直到模型的性能趋于稳定或下降。考虑实验所用数据集比较简单和计算机硬件计算能力有限,选择较小的hidden_size进行试验,RMSE和MAE值均在hidden_size为32时值最小,选择32作为实验的隐藏层节点个数。

3.4" 序列长度选择

不同序列长度下实验结果的RMSE值如图3(e)所示,通过实验获得最优化的序列长度,本文采取序列长度为6。

3.5" 学习率选择

一般来说,LSTM模型的学习率应该在0.000 1到0.01之间[11-12]。这个范围内,0.001是一个比较小的学习率,适用于训练低级模型,而0.01是一个比较大的学习率,适用于训练高级。

由实验结果可知,RMSE值和MAE值均在学习率为0.001时达到最小,模型的性能最佳。因此选择0.001作为实验的学习率,不同学习率RMSE值和MAE值的对比如图3(f)所示。

3.6" 参数最终设置

LSTM模型的各项参数为:LSTM网络层数为4层,批处理大小为256批,隐藏节点数为32个,序列长度为6以及学习率为1.001 0左右,此时该模型的整体误差较低,预测较为准确。

4" 模型验证与结果分析

本文使用连云港验潮站中2022年每日不同时刻的10 531组潮位数据进行分析预报,使用优化后的LSTM模型进行预测,观察其预测后的准确程度。原始数据的总计曲线图如图4所示。

然后将利用一年10 531个数据训练好的LSTM模型保存好,用该模型对之后一年的数据进行预测,预测数据与原始对比图如图5所示。

得到的两个模型评价指标如表1所示。

由该表以及预测数据和原始数据的对比图可知,优化后的LSTM模型误差较小,预测结果拟合程度较高。随后抽取一天的预测数据与真实数据进行对比,比较两者之间的误差,误差图如图6所示。

由图分析可知,优化LSTM模型的预测结果和实际潮汐数据误差在一个小的范围内,基本反映了潮汐在一年内随时间变化的规律。而当潮汐出现突变时,预测值可能会出现较大的波动,导致误差增大,误差值较大的时间段主要集中在涨潮和落潮的时候,但整体的误差波动较小,最高的误差不超过40 cm。该潮汐动态预测LSTM模型的预测结果可近似表示出真实潮汐一年内的变化趋势,预测结果值与真实数据值接近。总体效果十分优越,这表明即使在数据集不够庞大的情况下,深度神经网络LSTM模型也能够很好地完成潮位预测任务。

说明优化后的LSTM模型预测效果较好,预测的拟合程度较高,进一步说明该模型精确程度较高,可以较好地完成预测任务。

5" 结" 论

LSTM网络在潮汐分析和预测中有一定的优势,与传统的潮汐分析和预测方法相比,首先,它们可以有效地捕获变量之间的非线性关系,从而能够对复杂的潮汐动力学进行建模。其次,它们可以整合来自不同来源(例如卫星测高、雷达和仪表)的大量数据,以提高预测的准确性。第三,它们可以提供概率预测,这可以帮助量化与潮汐事件相关的不确定性和风险。最后,LSTM网络可以根据历史数据进行训练,使其能够适应不断变化的环境条件并随着时间的推移提高其性能。深层神经网络LSTM的模型在潮位预测中体现出良好的拟合度,在长短期数据中都能够较为精准的完成潮位预测任务,有效地克服了经典调和分析方法短期数据预测结果不准确的问题,可以为潮位的预测提供一种新的方法。LSTM网络在潮汐分析和预测方面的这些优势,使其在实际应用中具备更强的实用性和灵活性。通过不断优化模型结构和参数,LSTM网络可以进一步提升预测精度和稳定性,为潮汐分析提供更可靠的决策支持。此外,随着大数据和人工智能技术的不断发展,LSTM网络在潮汐预测领域的应用前景将更加广阔,有望为海洋工程、航运安全等领域带来更多的创新和突破。

参考文献:

[1] 班文超,沈良朵,陆凡,等.基于神经网络LSTM模型的潮位预测研究 [J].浙江海洋大学学报:自然科学版,2022,41(4):315-321+365.

[2] 郝剑波.基于深度学习的近岸海浪等级分类研究 [D].上海:上海海洋大学,2018.

[3] 谷川,王丽华,万军.基于小波和神经网络的潮汐分析和预测 [C]//第四届长三角论坛——测绘分论坛论.嘉兴:[出版者不详],2007:60-63.

[4] 杨晓坤,唐刚,李大刚.基于LSTM神经网络的潮位预报及分析 [J].港口科技,2022(5):39-44+46.

[5] 李明昌,梁书秀,孙昭晨.人工神经网络在潮汐预测中应用研究 [J].大连理工大学学报,2007(1):101-105.

[6] 周天新.基于BiLSTM-ARIMA混合模型的潮汐预测研究 [D].大连:大连海事大学,2022.

[7] 王鑫,吴际,刘超,等.基于LSTM循环神经网络的故障时间序列预测 [J].北京航空航天大学学报,2018,44(4):772-784.

[8] 刘倩.基于调和分析与神经网络的潮汐分析和预报 [D].青岛:青岛大学,2022.

[9] 周海南.基于深度学习的水位智能预测技术与应用 [D].大连:大连海事大学,2020.

[10] 黄冬梅,王唱,胡安铎,等.基于CNN-BiLSTM的潮汐电站潮位预测 [J].水力发电,2021,47(10):80-84.

[11] 李启华,聂卫国,胡继洋.基于神经网络的港口潮汐预报 [J].航海教育研究,2007(S1):32-34.

[12] 张安然.基于BP神经网络的模块化潮汐预报 [D].大连:大连海事大学,2015.

作者简介:凌鑫辉(2002—),男,汉族,江苏扬州人,本科在读,研究方向:电子信息;尚玉杰(2003—),男,汉族,安徽蚌埠人,本科在读,研究方向:电子信息。

收稿日期:2024-09-13

标签:  潮汐 

免责声明

本文来自网络,不代表本站立场。如有不愿意被转载的情况,请联系我们。

iidomino cuppor