蔣慶朝,陳孟婕
(中國水產科學研究院漁業工程研究所,北京 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神經網絡的預測結果,可以看出基于聚類的廣義回歸神經網絡模型預測結果誤差較小,預測值精確度較高,在漁港船舶交通流量預測方面有巨大的應用潛力。研究針對的是短期船舶交通流量的預測,下一步會在長期預測領域上展開研究。