蒋庆朝,陈孟婕
(中国水产科学研究院渔业工程研究所,北京 100141)
近年来,随着我国渔业和水运的迅猛发展,渔船的数量也越来越多,对交通繁忙的水道产生了极大的压力,使得许多港口的船舶交通流量猛增,航道变得拥挤,船舶在港等候时间和非作业时间延长,造成水上事故频发,产生了大量的经济损失。因此,为了提高渔港的调度管理和规划设计,必须建立一个船舶流量的预测模型[1]。
渔港船舶交通流量是指在一定时间内通过港口的所有船舶数量。交通流量越大,说明渔港的交通越繁忙。通过流量统计可以掌握渔船具体的进出港动态以及锚泊信息,了解航道的拥堵情况,并且可以根据流量统计信息,对水道的规划设计以及船舶的管理进行优化,合理分配资源[2]。船舶交通流量的预测一般基于统计的方法,可以分为定性和定量两种[3]。其中,定性方法是依靠过往经验人为的对流量进行分析预测,例如经验分析和专家判断。因此,这种方法的预测结果在细节上比较模糊,预测的准确性不高。定量预测方法则是采用数学模型对历史数据进行分析计算而得到具体数值的方法。通常有回归分析法[4]、灰色分析法、神经网络方法[5]以及组合预测模型。回归分析法是一种数理统计方法,建立了因变量和自变量之间的函数关系。自变量的选取会极大地影响预测结果的准确性,因此,需要先对变量的相关性进行分析,排除相关性较低的变量。灰色分析法是从有限的离散数据中找到规律,建立动态模型的方法。它可以通过少量的、离散的数据,建立微分方程模型,对具有成长性的系统进行模糊性的长期预测。神经网络模型能充分逼近复杂的非线性关系,具有较高的容错能力。BP神经网络是常用的预测模型,通过误差因子的反馈调节,逐渐减小误差函数的值,获得预测结果。组合预测模型是将多种定性与定量的方法相结合,综合考虑了难以定量的影响因素来进行预测的方法[6]。
本文选择广义回归神经网络(General Regression Neural Network)算法建立渔船进出港流量的预测模型[7]。针对历史数据不断增多以及GRNN适用于小样本数据的特点,提出了一种基于聚类算法的改进模型,使改进后的GRNN模型也能适用于数据量较大的样本。并且在模型中引入环境变量因素进行分析,提高预测结果的准确性。
径向基网络是使用径向基函数作为激活函数的神经网络模型,它是一种三层前馈神经网络。径向基作为神经元的隐含基,构成了隐含空间的主要元素。在隐含层中可以改变输入的向量,实现向量从低维到高维的映射,处理在低维度空间中难以解决的问题,从而整体上实现了非线性映射。而广义回归神经网络则是建立在非参数回归的基础上,径向基网络的一种模型,由一个径向基网络和一个线性网络组成[8]。并且以样本数据作为后验条件,通过非参数估计方法计算概率密度函数,获得网络的最大概率输出。相较于径向基神经网络,广义回归网络模型的训练过程不需要迭代,不仅收敛速度更快,逼近非线性连续函数的精度更高,预测效果更好,而且具有全局逼近的性质[9]。
GRNN在结构上与径向基网络比较相似。它由四层构成,分别是输入层、模式层、求和层和输出层,其结构如图1所示。
图1 广义回归神经网络结构
在GRNN的结构中,输入层的节点是简单的分布单元,直接把输入的变量传递到模式层,节点的数量等于输入向量X={x1,x2,x3…xn}的维度。模式层的节点数量等于样本的数量,每一个节点都对应一个样本,节点i对应的传递函数为:
Xi是第i个节点对应的学习样本,X是网络输入变量,节点i的传递函数表示的是学习样本与输入变量X之间欧氏距离平方的指数平方。求和层中有两种类型的节点,每个节点都与模式层所有的点相连接:一类是模式层所有节点输出的算术和,与模式层节点的连接权值为1,这种节点的数量为1;另一类节点是模式层所有节点的加权和,使用输出样本Y的值作为连接权值,节点的数量与输出样本Y的维度相同。输出层节点数量与输出样本Y的维度相同,每一个节点计算的是求和层中两种节点相除的商,对应输出结果中相应的元素,最终获得网络期望的输出值[10]。
广义回归神经网络的原理是参数最大似然估计,利用密度函数来预测输出[11]。假设x,y是两个随机变量,他们的联合概率密度函数为f(x,y),若是已知x的观测值为x0,则y的在x条件下的回归为:
若概率密度函数f(x0,y)已知的情况下,则可以得到x0对应的估计值y,应用Parzen非参数估计,估算密度函数f(x0,y)。
公式(3)中n为数据集的样本数量,σ为光滑因子。用式(3)的f(x0,y)代替f(x,y),并进行化简,可得:
从公式(4)可以看出,对于y的估值,可以认为是所有观测值的加权和。广义回归神经网络不需要训练,并且回归曲线的光滑程度由光滑因子控制。如果光滑因子取值非常大,y的估值接近于所有样本因变量的平均值,如果光滑因子取值趋向于0,估计值就越接近学习样本的值,观测的误差值也就越小。因此,选择一个合适的光滑因子σ就可以确定一个适用广泛的广义神经网络的结构。本文采用模拟退火法寻找最优的光滑因子。它是一种通用的概率算法,寻找全局的最优解,并且在搜索过程中引入随机因素。核心是利用具有概率突跳特性的抽样策略进行随机的搜索,以一定的概率接受比现在解更差的结果,随着反复抽样的过程,算法有可能跳出局部的极值点,在其邻范围继续求解,最终达到全局的最优解。
GRNN具有很强的非线性映射能力和学习速度,并且对于小样本数据有很好的预测效果。但是在实际预测中,样本数据逐年增多,这使得它的计算复杂度和空间复杂度高的缺点也暴露出来。因此,本文提出了一种基于聚类方法的改进广义回归神经网络模型,提高对大量样本的预测效率和准确性。改进算法的核心是在样本数据输入网络前进行聚类,然后从聚类结果里提取新的学习样本。新样本的数据规模相对于原始数据的规模较小,更加适用于GRNN模型的训练[12-13]。
通过对采集的渔船进出港数据的特性进行分析,选择基于密度的聚类算法(DBSCAN)对原始数据进行压缩[14-15]。这种方法的优点是能够在有异常的数据中发现各种形状和大小的簇,并且不需要预先设定簇的数量,因此适合不确定聚类最终数量的集合。DBSCAN的核心思想是寻找被低密度区域分割的高密度区域,只要一个区域中点的密度大于某个阈值,就把它放到相近的簇中,以获得最终的聚类结果。算法中有两个参数,分别是点周围邻近区域的半径eps和邻近区域内至少包含的点的个数MinPts[16]。根据这两个参数,可以把样本中的数据分为三类。半径eps内点的数量超过MinPts数目的点称为核心点;半径内点的数量小于MinPts但是在核心点的邻域内的点称为边界点;噪音点是不属于核心点和边界点的样本。核心点邻域内所有的点都由核心点直接密度可达,而且其具有传递性,称为密度可达,DBSCAN的目的就是找到密度相连对象的最大集合[17]。
改进的GRNN预测模型的流程步骤如下:
Step1对样本进行归一化处理,降低不同数据量纲对预测模型结果的影响。
Step2从样本中任意选择一个数据,如果是核心点,则建立一个新的簇A,A包含核心点以及它邻域内的数据。
Step3对簇A中没有标记的数据点q,如果它是一个核心点且直接密度可达的数据点不在A中,则加入到簇A中,直到A中所有的对象被标记。
Step4重复前两个步骤直到所有对象被标记。然后提取每个簇的中心点作为新的样本。
Step5把新的样本数据输入到GRNN的模式层。
Step6对输入数据进行预测。
改进的GRNN算法除了平滑参数σ,还需要对参数eps和MinPts进行调整,使得获取的样本数量在合适的范围,在减少误差的情况下提高模型的效率。
渔船交通流量影响条件错综复杂,它的大小是经济、政策、运输,甚至渔港本身硬件条件等多方面因素共同作用的结果,不能单一的从某个因素来预测交通流量的变化。并且不同的因素对渔船交通流量的影响方式各异,表现形式复杂,呈现出线性和非线性的相关性。一般船舶交通流量不仅与经济的繁荣程度有着密切的关系,而且还和货运量以及船舶的数量有着直接的联系。因此,以研究的渔港对象,对渔业统计年鉴,港口统计中的数据进行相关性分析,最终选取渔业生产总值、捕捞量、渔船总数、码头泊位拥有量、已在港渔船数量、日期作为预测渔港船舶交通流量的输入变量。
在把变量输入到神经网络之前,需要对各项数据进行归一化处理,避免不同因素的量纲对预测结果产生影响,归一化公式为:
其中x是需要归一化处理的数据,是标准化后神经网络的输入样本,xmax和xmin是这项因素中取极值的数据。
通过改进的神经网络模型获取预测结果之后,需要对算法的性能进行评价。在本文研究中使用3个指标进行评测,分别是平均绝对预测误差(MAPE,预测值与实际交通流量数据的平均绝对偏差值),平均相对预测误差(MRPE)和均方根预测误差(S),计算公式为:
yi是输入样本的实际观测值,是输入样本的预测值,n是输入样本的总数量。
使用改进的广义回归神经网络对渔港船舶流量进行预测,预测结果如图2所示。
图2 基于改进广义回归神经网络渔船流量预测
在实验中,构建了另外2种模型进行预测,并且与改进的广义回归神经网络模型预测结果进行对比分析,其预测结果如图3所示。
图3 回归分析法和BP神经网络渔船流量预测
表1是3种算法各自预测结果的性能指标平均绝对预测误差MAPE、平均相对预测误差MRPE以及均方根预测误差S的对比。
表1 三种预测方法的性能对比
从表1和图2、图3可以看出,回归分析法的准确程度最低,在预测过程中容易出现较大偏差,表现出不稳定性。从3个评价指标来看,BP神经网络的预测精度和算法稳定性都高于回归分析法。而相对于回归分析法和BP神经网络[18-19],本文提出的改进广义回归神经网络模型在预测结果上精度最高,并且因为缩小了样本空间的规模,提高了网络结构的学习速度。
在实验过程中,针对相关研究较少考虑自然环境对船舶流量的影响,在模型中又引入了天气因素对渔船交通流量进行预测分析。预测结果如图4所示。
图4 融合新数据源的模型预测结果
与图2进行对比,可以看出部分时期的预测虽然出现一些偏差,但是三项性能指标都得到提升,整体的预测精度更加准确。通过分析,3和4两天天气较为恶劣,进出渔港避风的船舶数量迅速增加,融合了新的数据源提高了模型预测的准确性和鲁棒性。
本文对渔港船舶进出港交通流量开展了预测研究,分析了影响交通流量的因素,并且针对预测模型广义回归神经网络在大数据样本上应用的不足,提出了一种基于聚类方法的改进模型。通过对比回归分析法和BP神经网络的预测结果,可以看出基于聚类的广义回归神经网络模型预测结果误差较小,预测值精确度较高,在渔港船舶交通流量预测方面有巨大的应用潜力。研究针对的是短期船舶交通流量的预测,下一步会在长期预测领域上展开研究。