徐文进,孙允超,黄海广
1(青岛科技大学 信息科学技术学院,青岛 266061)
2(温州大学 计算机与人工智能学院,温州 325035)
海洋渔业资源的开发和利用对人类生存和发展具有不可替代的作用,是现代社会主要经济活动的一部分.随着海洋捕捞技术的提高,海洋的战略地位也日益凸显,开发和利用海洋渔业资源已经被世界各国所重视[1].但由于不完善的海洋资源保护与海洋环境管理措施,非法、过度捕捞等现象的产生,使得海洋生态环境遭到了不同程度的破坏,海洋渔业资源锐减[2].在海洋资源衰退的条件下,许多管理者已意识到海洋资源精确管理的重要性.实现渔业资源的精细化预测对于保障渔业资源的可持续发展具有重要的意义.事先了解渔情信息,当局可以制定更好的渔业资源配置策略;同时捕捞者也可以规划捕鱼路线,减少捕鱼的时间成本、经济损失与能源消耗,提高捕鱼产量.
为实现渔情预测,研究者从不同角度提出了许多不同的预测方法.传统的预测方法集中在对海洋环境数据进行分析.众所周知,鱼类对环境因素有一个合适的范围,只有当某个区域满足一定的环境条件时,该区域才会出现鱼群.环境阈值法就是假设鱼群出现在适当的环境条件下,而不会在环境条件不适宜的情况下出现.文献[3]使用环境阈值法分析预测渔场的空间分布.环境阈值法模型构造简单,易于实现,特别适用于海洋遥感反演得到的环境网格数据,因此在渔情预测领域得到了相当广泛的应用.在文献[4]中,作者使用栖息地指数模型来分析鱼类的栖息地,并进行渔情预测.这些研究都考虑到了环境特征,值得肯定.但也存在不足之处,比如这些数据在时间和空间上都不是细粒度的.
此外,随着人工智能的兴起,研究者也开始将机器学习、深度学习等技术应用于鱼情预测.Aoki 等人搭建包含3 层隐层的BP 人工神经网络模型,实现对日本远东拟沙丁鱼渔获量的预测[5];毛江美等人搭建BP 人工神经网络模型,并调整模型结构及参数,以月份、经度、纬度、SST(海表温度)、SSH(海表盐度)等作为时空变量进行了分析,从而实现对渔场单位捕捞量渔获量(CPUE)值的预测[6].袁红春等人基于人工神经网络模型实现了对西北太平洋鱿鱼的潜在钓鱼区的预测研究[7].神经网络方法并不要求渔业数据满足任何假设,也不需要分析鱼类对于环境条件函数和各环境条件之间的相互关系,因此应用起来较为方便.
同时,船舶自动识别系统(AIS)的广泛应用,为研究者进行渔情分析挖掘提供了一个新视角.装有AIS的渔船可以定期将其静态信息,如国际编码、渔船ID,以及动态信息,如当前位置、航速和航向等自动传送给其他船只以及沿海当局[8].通过AIS 获得的数据提供了描述船只轨迹的时空数据,它可以用作船舶移动行为、整体海上交通以及进行渔情分析挖掘的一致信息源.Guiet 等人通过分析2015-2017年全球的AIS 渔船轨迹,研究得出全球捕捞努力量空间季节性变化的主导因素[9].Guyader 等人基于AIS 数据,提出了一种半自动和通用的方法,分析了布雷斯特湾(法国)的捕捞努力的空间和时间季节性变化,为科学家和地方决策者提供了高分辨率信息[10].不同于基于环境因素的分析方法,利用渔船轨迹数据进行分析,理论上可以对时间和空间进行任意细粒度的划分.在AIS 与深度学习结合进行渔情预测方面,Hong 等人通过将海域进行网格划分,融合海洋环境数据与渔船轨迹数据,利用深度残差网络实现了对未来捕捞努力量的预测[11].
上述基于海洋遥感数据、渔船轨迹数据采用深度学习进行预测的方法大大提高了渔情预测的准确性.但是,大多数尝试都采用单任务预测模型(single task prediction model,STP model).这存在两个重要的问题,(1)从微观角度看,不同捕鱼方式的渔船适应的作业区域可能会不同,比如张网通常设置在具有一定水流速度的区域或鱼类等捕捞对象的洄游通道上,依靠水流的冲击,迫使捕捞对象进入网中,从而达到捕捞目的;围网适合捕捞进行群体活动的鱼类.因此,我们可以将在任何时隙观察到的渔情状况实际分解为一系列隐藏的渔况分布基础的组合,如图1所示.通过划分,可以进一步提高预测的准确度,而且更符合实际情况.(2)从宏观角度看,不同渔具进行捕鱼时,在空间和时间上都紧密相关,相互影响,进行单任务预测无法捕获到不同渔具之间的相互作用.
图1 渔情状况分解分析
因此,与以往研究不同,本文提出一种新型的模型框架——多任务预测模型(multi task prediction model,MTP model),旨在挖掘隐藏在不同渔具捕鱼之间的复杂的相互关系,并同时预测适合不同渔具进行作业的区域以及该区域的渔情状况.本文,我们关注4 种主要的渔具类型:围网、刺网、拖网和张网.
(1)时间间隔、区域划分:为了提取时空特征,需要将原始的时空数据进行转换.本文采取了文献[11]中所使用的方法,并进一步对经纬度精度进行细化.我们将所关注的海域(Latitude:28°N~34°N,Longitude:121°E~128°E)按照经纬度精度为0.083°×0.083°进行均匀划分,形成72×84 个区域.该精度受海洋遥感数据空间精度的限制[12].时间间隔设置为一天,即24 小时,利用历史数据来预测接下来一天的渔情分布状况.
(2)作业轨迹:渔船在进行捕鱼活动时的一系列轨迹点.作业点往往具有一定的特征,如低速、角度变化快等.本文首先需要从完整的渔船轨迹中识别出渔船进行作业的轨迹点,进而求得渔船在每个区域的作业时间.
(3)渔业资源丰度:一个区域内鱼量的多少即该区域的资源丰度.在一个区域内,渔船数量的多少、渔船作业时间的长短都能够反应该区域鱼量的多少.因此,本文中我们用一段时间内渔船在该区域内的总作业时间来表示该区域的资源丰度,以小时为基本单位.资源丰度表示如下:
其中,(m,n)为区域编号,t代表t时间段,为t时间段(m,n)区域的资源丰度,tin为渔船进入该区域作业的时间,tout为渔船离开该区域的时间,tin,tout∈t,vid表示渔船id.
(4)目标:给定历史渔船轨迹数据,通过处理得到每一个区域的渔业资源丰度,并结合海洋遥感数据预测未来的每一个区域的渔业资源丰度.
本节讨论了用于渔船轨迹分析处理和模型搭建的建议方法.
(1)提取捕鱼轨迹与转换数据格式
利用渔船轨迹进行鱼情预测的一种典型的方法是:对所关注的海域进行网格划分,然后统计每一个网格内渔船作业的总时间,用该时间来表示资源的丰富度.这样,原始的时间序列就形成了类似于图片的二维矩阵数据,然后再利用CNN,RNN 等神经网络搭建模型进行预测.在本文中,我们将所关注的海域(Latitude:28°N~34°N ,Longitude:121°E~128°E)均匀划分为(72×84)个栅格,每个栅格的经纬度精度为0.083°×0.083°.该精度受海洋遥感数据精度的限制,由于所获取的海洋温、盐、叶绿素浓度等海洋遥感数据的经纬度精度为0.083°×0.083°[12],为了实现数据的匹配,在此本文将栅格的精度定为0.083°×0.083°.从渔船轨迹中识别出作业轨迹,研究者已经做了很多研究.本文我们采用文献[13]中的方法,这是渔船轨迹识别研究中最新的算法.随后将获得的作业轨迹在该区域进行投影,利用式(1)求得一段时间内每一区域的渔船总作业时间,通过这种方法将序列数据转化为容易被神经网络接收的矩阵形式.获取作业轨迹与转换数据的过程如图2所示.转换后的数据可以直观地描述鱼群位置与资源丰度的时空分布状况,同时能更好的利用神将网络提取时空特征.用x来表示所选取的整个海域,以围网渔船的轨迹数据为例,通过数据处理可以得到:
图2 提取捕鱼轨迹与转换数据格式
(2)搭建多任务模型
①模型内核的选择
我们知道,一个区域的渔况会受到临近区域渔况的影响.比如,当鱼群被捕捞时,那么很有可能导致接下来邻近区域鱼量的减少.另一方面,不同种群之间存在着的捕食追赶现象,也会影响鱼群的空间分布.这些现象都表明了鱼群位置与资源丰度的时空依赖性.文献[14]中,作者提出了卷积神经网络(CNN),该网络在捕获空间结构信息方面已展现出强大的能力,但CNN缺乏捕获数据的时间依赖性方面的能力.另一方面,RNN模型[15]对时间数据有利,并且已经完成了许多尝试[16,17].但RNN 对空间依赖不敏感,且会产生梯度消失和梯度爆炸等问题[18].文献[19]显示通过结合CNN 与RNN,取得了更好的结果.同时LSTM 模型的应用克服了传统RNN 梯度消失和梯度爆炸的问题.考虑到这些改进,我们选择了ConvLSTM 作为核心层搭建我们的框架.ConvLSTM 模型可以同时捕获到时间与空间依赖性,在处理时空序列数据预测方面具有独特的优势[20].
通过这种卷积网络和循环网络结合的结构,可以更好地学习渔情预测的复杂时空特征.类似于LSTM神经网络的过程,ConvLSTM 中的3 个门通过以下等式计算:
其中,Xt为输入,表示当前t时间段之前的鱼况的时空分布状况.Xt=[xt,xt-1,···,xt-k],为四维张量,分别为特征向量的长度(本文设置为5,k=5,即用前5 天的数据预测未来一天的渔情分布状况),划分区域的行和列,以及特征向量的通道数(本文为1).W*表示权重矩阵,b*表示偏置;σ表示Sigmoid 方法;ht,ct,it,ot,ft分别表示隐藏张量,单元输出张量,输入门控张量,输出门控张量和遗忘门控张量;°表示矩阵的Hadamard 乘积(对应位置元素相乘),*表示卷积操作.每一层ConvLSTM的输出为ht和ct,将作为下一层的输入.
②多任务模型
图3 展示了多任务预测模型框架,与单任务预测(STP)模型不同,MTP 模型的学习过程可以划分为3 个层次.在第1 层次中,对每个链接的渔情预测模型分别进行训练,以提取浅层特征.然后,在Merge 层(即第2 层)将第1 层中学习到的特征进行融合,以捕获不同任务的时空特征之间的相互影响.然后将其馈送到第3 层中再对各主线任务分别进行预测训练.在执行多个任务的情况下,多任务学习方法可以保留各个任务自己的特点,同时能捕获装备不同渔具的渔船之间的相互影响关系,这是单任务学习无法做到的.首先,各主线任务经过一层卷积核大小为3×3 的ConvLSTM层完成浅层特征的提取.随后为捕获各任务之间的相互影响,在Merge 层将这些浅层特征进行合并.由于各任务之间的影响程度不同,因此Merge 层的合并方式如下:
随后,将融合后的数据分别送入经过特殊设计的网络层内.该网络层结合了Inception-Net 和 Residual-Net.由于经过格式转换所取得的矩阵数据是非常稀疏的,为了能更好的提取空间特征,提高预测的准确度,需要正确的选择卷积核的大小.因此,受文献[21]的启发,采取Inception-Net 的设计,如图3 “Model block”中的第二、三分支.该模块包含并行不同尺寸的内核,其中较大尺寸的内核5×5 能够提取较远距离的空间依赖性,较小尺寸的内核3×3 提取较近距离的空间依赖性.此外,随着模型深度的增加,其训练结果会出现变差的情况,残差网络可以很好的解决这一问题.因此,本文也引入了残差网络的设计,如图3“Model block”中的第一个分支,将输入直接与经过ConvLSTM 层的两个分支的输出进行拼接,有效的解决了神经网络过拟合,梯度弥散,梯度消失等问题.
图3 多任务模型框架图
③嵌入遥感数据
鱼群都具有特定的生存环境,海洋的温、盐等环境因素会极大地影响鱼群的分布与渔业资源的丰度[4].为此,本文将海洋温度、盐度以及叶绿素浓度这3 种外部因素考虑在内.由于该遥感数据是在经纬度坐标点的数据,但是我们感兴趣的是一个区域的数据,该区域为4 个经纬度坐标点所围成的矩形区域.因此在将外部因素数据送入卷积层进行特征提取之前,我们设置了一层均值池化层(mean-pooling),其窗口大小为2×2,步长为1.通过均值池化层,实现了利用4 个坐标点数据的平均值来表示由这4 个点所围成区域的温、盐以及叶绿素浓度.随后经过两层卷积核大小为3×3的卷积层完成特征的提取.最后将遥感数据与轨迹数据进行合并,并采用tanh 激活层完成最终预测.
为了验证我们模型的有效性,在本节中,我们将通过对真实海洋遥感以及渔船轨迹数据集的详细实验来评估我们的模型.我们首先描述用于实验的数据集,然后列出评估方法.最后,对比单、多任务的实验结果,并进行进一步的讨论.
(1)海洋遥感数据:对于海洋环境数据的获取,我们从哥白尼计划所收集的数据集中获取海洋温度、盐度与叶绿素浓度等数据.这些数据可以在该网站获取:https://marine.copernicus.eu/.其时间精度为每日平均,地理位置精度为0.083°×0.083°.我们获取了2017年-2018年(东经:121°E~128°E,北纬:28°N~34°N)范围内的数据.
(2)AIS 数据:对于渔船轨迹数据,我们选取了北纬28°~34°,东经121°~128°范围内的8 066 只渔船在2017-2018年的轨迹数据.其中围网222 艘,刺网2 410艘,拖网4 339 艘,张网1 095 艘.
本文采用均方根误差(RMSE)和平均绝对误差(MAE)来测量和评估不同方法的性能.相关定义如下:
为评估本文提出的多任务预测方法的有效性,我们与一些基线进行了比较.包括历史平均模型(HA),向量自回归模型(VAR),差分整合移动平均自回归模型(ARIMA),ST-ResNet[11]以及ConvLSTM 模型(单任务).为了公平,本文采用同样的参数设置,包括batch的大小以及学习率.表1 呈现了我们的实验结果.从表中的结果可以看出,HA,VAR 与ARIMA 这些传统的时间序列预测算法的结果误差较大,这是因为这些方法只能提取时间依赖性,而无法获取空间依赖性,因此损失较大.ST-ResNet 作为CNN 在时空序列中的经典应用,能够很好的捕获空间依赖性,同时采用残差网络结构,使得损失进一步降低.但CNN 对时间依赖型的提取能力不足.通过将CNN 与LSTM 结合,ConvLSTM能够同时捕获时间依赖性和空间依赖性性,可以取得较好的预测结果.如表1所示,单任务ConvLSTM的结果要优于其他单任务预测方法的结果损失.为验证本文提出的多任务预测方法的有效性,我们以ConvLSTM为基础模型搭建了多任务模型.多任务模型的预测结果都有了明显的提升.其中围网、刺网、拖网和张网预测结果的RMSE分别提升了20.7%、16.9%、8.3%和23.4%,MAE分别提升了14.4%、16.8%、20.1%和21.4%.其中张网受其他渔船作业方式的影响最为明显.RMSE和MAE表示了预测结果与真实值之间的差距,其值越小越好.根据实验结果,多任务ConvLSTM通过Merge 层将多个任务建立起联系,进而通过ConvLSTM 捕获时空依赖,取得了更加精确的预测结果.图4 为单任务ConvLSTM 与多任务ConvLSTM 预测结果的可视化.图4(a)表示刺网、围网、张网和拖网的真实时空分布,图4(b)表示通过单任务ConvLSTM模型分别得出的预测结果,图4(c)为本文的多任务ConvLSTM 模型预测得出的结果.从图中用红色框标出的部分可以看出,多任务预测的结果明显好于单任务预测的结果.
图4 结果对比
表1 单任务与多任务损失对比结果
本文提出了一种新颖的渔情预测方法,即基于海洋遥感数据与AIS 渔船轨迹数据,利用时空神经网络的实现多任务预测.它由3 个模块组成:(1)任务融合模块,可以提取多项任务之间的相互作用;(2)主线任务单独训练模块,在多任务进行融合之后,再对每一个主线任务进行单独训练预测;(3)整合模块,整合了海洋遥感环境因素数据,进一步提高了预测的准确性.受益于渔况分解表示多任务预测方法的性能优于现有的预测方法.为了测试所提出的方法,已经在浙江海域的海洋遥感数据集和渔船轨迹数据集上进行了实验,结果证明在预测准确性和鲁棒性方面的有效性.这项研究从微观和宏观的角度预测研究提供了新的见识.