于琛,付玉慧,張逸飛,王超
(大連海事大學 航海學院,遼寧大連116026)
船舶航跡預測方法主要分為基于物理運動模型的方法和基于學習模型的方法。總結國內外學者的研究現狀[1-5],大部分學者選用了單一預測模型,但每種類型的模型并不是在所有情況下都表現良好。為了克服單個模型的局限性,有學者提出組合預測的方法,如以LSTM為主、ARIMA(autoregressive integrated moving average model,ARIMA)為輔的組合短期飛行軌跡預測模型[6]。與單模型對比提升了預測的精確度。有學者提出利用LSTM挖掘飛行軌跡中的非線性關系并結合ARIMA挖掘飛行軌跡中的線性關系的組合預測模型,將時間序列分成線性序列與非線性序列,進一步提高了飛行軌跡預測的精度[7]。ARIMA在處理線性時間序列中取得了優良的效果,但對于非線性序列部分的信息無法進行捕捉。BIGRU神經網絡是LSTM循環神經網絡的變體,能夠很好地學習到非線性序列信息,引入注意力機制對GRU神經網絡進行權重訓練,可以進一步提高預測精度。有學者提出基于BIGRU和自注意力機制的情感分析模型,將注意力機制與BIGRU結合相較于單BIGRU模型預測精度取得了較大的提升[8]。綜合以上分析,提出一種基于ARIMA和注意力機制的神經網絡組合模型。考慮AIS數據中線性因素及非線性因素對船舶軌跡預測的影響。利用ARIMA良好的線性因素學習能力,初步預測出下一時刻船舶軌跡坐標,進而提取出預測殘差,將殘差特征輸入BIGRU神經網絡,結合注意力機制挖掘AIS數據中非線性因素對船舶軌跡的影響。
時間序列模型ARIMA為差分自回歸移動平均模型。分為自回歸模型AR、移動平均模型MA、差分I。
AR(p)描述當前平穩序列的值與歷史值之間的關系,用變量自身的歷史數據對自身進行預測。p為階數,表示采用p個時間點的歷史值來預測當前值。
MA(q)為自回歸模型中誤差項的累加,q為移動平均項數。I(d)為變量的差分,d為差分的階數。通常采用自相關函數(ACF)、偏自相關函數(PACF)來判別ARMA(p,q)模型的系數和階數。
若原始時間序列經過判斷表現為波動,首先要對時間序列進行差分處理,使其趨于平穩,進行的差分次數就取為d值,最后通過AIC準則、BIC準則確定p、q。ARIMA模型如下。
(1)
式中:Φ(B)=1-φ1B-φ2B2-…φpBp為時間序列ARIMA模型的自回歸相關系數多項式;d=(1-B)d為高階差分;Xt為時間序列;Θ(B)=1-θ1B-θ2B2-…-θqBq為時間序列ARIMA模型的移動平均系數多項式。
循環神經網絡(RNN)會受時間序列長度的影響,若輸入的時間序列過長,則RNN不能將之前時間步獲得的信息傳遞給當前時刻的時間步。在反向傳播期間RNN容易發生梯度爆炸和梯度消失。若RNN的梯度值下降到很小,則獲得小梯度的更新層就會停止學習。LSTM神經網絡可解決短時記憶的問題,單元結構見圖1。LSTM具有門控制單元,門控制單元可以通過權重學習調節信息流,避免梯度下降和梯度爆炸問題。

圖1 單個LSTM單元結構
LSTM計算公式為
(2)
LSTM的門控單元包含1個Sigmoid神經網絡層和1個Pointwise乘法操作。Sigmoid網絡層負責描述每個神經元可以通過的信息數量。0代表“任何量禁止通過”,1代表“任何量允許通過”。LSTM門控單元總共分為3步。
第1步,決定從LSTM細胞中丟棄的信息。ft為記憶門(也叫遺忘門),記憶門讀取當前變量xt和前神經元傳遞的信息at-1,由ft決定丟棄的信息。輸出1為“保留”,0為“舍棄”。

最后確定輸出,通過ot(輸出門)決定細胞的輸出信息,通過ht將信息和通過tanh處理過的細胞狀態相乘后輸出。
GRU是在LSTM基礎上的1種變體,將遺忘門和輸入門組合成更新門,見圖2。

圖2 單個GRU單元結構
與LSTM相比,GRU的結構在簡化的同時也保留了長短期記憶網絡的能力,這使得GRU的運算效率顯著提高。
GRU計算公式為
(3)
式中:ft為更新門,其作用等同于LSTM中的記憶門和輸出門,決定細胞狀態所存放的新信息以及更新舊的細胞狀態;
Γt為重置門,其與LSTM中的ot作用相同,決定細胞的被輸出信息。
注意力機制已經成為了深度學習重要的思想之一,它通常適用于雙向循環神經網絡,以往的時間序列神經網絡只能順序學習,即對于同一時間步的所有的特征向量等權重學習,結合注意力機制的神經網絡在學習過程中計算注意力權重(a set of attention weights),注意力權重(α(t,t′))代表預測(t)特征向量時(t′)時間步的權重大小。α(t,t′)計算公式如下。
(4)
e(t,t′)由小型神經網絡訓練獲得,見圖3。

圖3 e(t,t′)神經網絡
注意力權重通過與(t′)時間步特征向量激活值(αt′)進行加權平均計算得到編碼向量C。
(5)


圖4 基于ARIMA-BIGRU神經網絡殘差優化組合預測流程
1)對船舶航跡數據序列進行平穩性檢驗,確定差分次數d,之后采用AIC(akaike information criterion)準則給模型定階,以此模型對船舶航跡進行預測,得到船舶航跡的初步預測結果。
2)將ARIMA得到的預測值與船舶航跡真實值Xt比較,計算得出其預測誤差et。

GRU的時間步長即連續n個時刻的船舶航跡數據輸入。時間步長過小,神經網絡不能很好的學習到輸入數據前后的關聯性;隨著時間步的增大,預測誤差呈現下降趨勢;當時間步長過長時,輸入數據的前后關聯性減小,造成網絡的預測誤差增加。通過保證其他參數不變,更改不同時間步對比預測結果誤差,經實驗驗證在時間步n等于3時預測誤差最小。
以t-3~t-1時刻的船舶類型、航向、航速、經度、緯度15個參數作為輸入。以t時刻的經度、緯度作為輸出。
對于目標船舶,在t時刻的航行狀態特征為
Wt=(Var1t、Var2t、Var3t、Var4t、Var5t)
(6)
式中:Var1t、Var2t、Var3t、Var4t、Var5t分別表示t時刻的船舶類型、航向、航速、經度、緯度。
預測當前船舶位置則可以表示為
Et=f(Wt-3、Wt-2、Wt-1)
(7)
式中:Et=(Var4t、Var5t);f為所訓練的模型。
此模型主要由2層BIGRU神經網絡層以及1層Dense層組成。其中:α(t,t′)為注意力權重;C為激活值(αt′)與注意力權重α(t,t′)平均加權后的編碼向量;St為第t個解碼層的隱藏狀態,St負責存放第t個預測值yt以及編碼向量C的狀態,其與(t^')時間步的特征向量的激活值(αt′)通過小型神經網絡計算出下一時刻的注意力權重(α(t,t′))。模型結構見圖5。

圖5 基于注意力機制的BIGRU神經網絡模型結構
為了評價所提出的組合預測方法的合理性和有效性,擬采用與單一預測模型對比均方誤差(Mean square error, MSE)、平均絕對誤差(mean absolute error, MAE)、均方根誤差(root mean square error, RMSE)以及航跡真實值來進行對比分析論證此組合預測方法的有效性。
實驗數據采用卡里蒙群島2019年6月3—22日的47 326條AIS數據。考慮到輸入的數據是多種類型船舶的AIS數據集,不同類型船舶AIS數據中蘊含的航行規律不同,所以將船舶類型作為參數輸入時,神經網絡能夠區分船舶類型特征來分類挖掘規律,相較于直接輸入大量AIS數據效果要好。主要選取船型(shiptype)、航向(course)、航速(speed)、經度(lon)、緯度(lat)5個特征值。
原始的AIS數據存在大量的特征數據,需要進行數據預處理,首先將船舶類型(ship type)轉換成由1開始的數字型標簽,將經緯度轉換成以秒(t)為單位的浮點數。若數據缺失,則采用以下方法進行修復。
1)將數據依據特征值等量的分為不同組,若某一特征值組內在這一組所有值的平均值3倍以上,則判斷為異常點。
2)使用三次樣條插值法進行異常點剔除,以保證數據時間間隔相同,選取當前點x前后2點,提取x時間ti、ti+1船舶經緯度為(xi,yi)、(xi+1,yi+1),t時刻的船舶經緯度可以用式(8)計算。
(8)
式中:hi=xi-xi-1;Mi為插值函數X(t)在節點ti處的二階導數。
3)使用三次樣條插值法對修復后的數據進行插值,獲得時間間隔為10 s的數據。
最后將船型、航向、航速,以及ARIMA輸出的經度殘差(lon-res)、緯度殘差(lat-res)以時間為索引,以(t-3)~(t-1)時刻的15個值作為特征值輸入,t時刻的經度殘差和緯度殘差作為預測標簽參照,處理完畢后將數據做離差標準化(min-max normalization)歸一化處理。
1)模型參數初始化。通過網格搜索法進行參數尋優,確定模型擬采用3層神經網絡結構,其中前兩層為循環BIGRU神經網絡層,第三層為Dense層。每層的神經單元個數分別為50、128、2。訓練次數為60次,mini-batch數目為128。梯度下降方式采用adam下降方法。
2)模型訓練。將所有數據分成訓練集和測試集,其中訓練集數據為4/5,測試集測試數據為1/5。BIGRU網絡的輸入為時間序列,輸入參數x1~x15為:Wt-3、Wt-2、Wt-1。
3)模型預測。將測試集輸入到訓練集訓練好的模型中進行預測,同時要對預測數據進行反歸一化處理,使得預測得到的數據是真實的經緯度數據。
測試集在訓練集訓練后的神經網絡模型上依據經度、緯度2個特征計算出MSE、MAE、RMSE,實驗結果見圖6~8。

圖6 測試集MSE

圖7 測試集MAE

圖8 測試集RMSE
由以圖6~8可知,GRU的誤差精度優于LSTM。單向GRU模型與雙向GRU模型對比MSE、MAE、RMSE分別降低8.024 8×10-4、3.52×10-3、9.999 05×10-3。結合注意力機制后BIGRU三種誤差相較于BIGRU分別都有降低,未結合注意力機制的訓練模型訓練誤差波動較大,BIGRU、BLSTM在結合注意力機制優化后誤差精度和平穩性均優于BIGRU、BLSTM。結合注意力機制的ARIMA-BIGUR模型的預測效果最好、預測精度最高。通過對比誤差指標可知基于ARIMA和注意力機制的BIGRU循環神經網絡組合預測模型,在MSE、MAE、RMSE預測指標上相較于其它5種模型有較大的提升。
用模型對80個航跡點進行預測,結果見圖9、10。

圖9 航跡預測對比

圖10 放大后的航跡預測對比
對比真實的船舶航跡可以發現,未經過注意力機制優化的GRU、BIGRU、BLSTM與真實航跡相比有很大的偏差,經過注意力機制優化的BIGRU、BLSTM預測效果與真實值接近,同時結合ARIMA與注意力機制的BIGRU模型的預測效果與真實航跡十分吻合,說明本文預測方法能夠進一步提升航跡預測精確度。
相較于傳統預測方法,基于ARIMA-BIGRU的組合預測模型具有更高的精確度和平穩性。利用ARIMA進行線性預測可以將航跡數據處理的更加平穩;利用BIGRU結合注意力機制對殘差進行優化,能夠挖掘出非線性因素對航跡造成的影響,從而準確預測出船舶軌跡。未來的研究應考慮模型的在線更新和實時預測,以進一步提高模型的航跡預測能力。