魏德宏,禤鍵豪,楊嘉偉,張興福,余 旭
(1. 廣東工業(yè)大學(xué)測繪工程系,廣東 廣州 510006; 2. 同濟(jì)大學(xué)測繪與地理信息學(xué)院,上海 200092;3. 臨沂市自然資源和規(guī)劃局,山東 臨沂 276000)
利用GNSS技術(shù)可快速測量地面點(diǎn)的三維坐標(biāo),但由于其高程為大地高,無法用于實(shí)際生產(chǎn),因此,尋求將GNSS測量大地高轉(zhuǎn)換為正常高的有效方法具有重要的實(shí)用價值。目前常用于GNSS高程轉(zhuǎn)換的方法包括函數(shù)模型擬合法[1]、地球重力場模型法[2]、似大地水準(zhǔn)面模型法[3]、機(jī)器學(xué)習(xí)法[4]等。而在高程異常變化較大的山區(qū),探討利用少量GNSS水準(zhǔn)點(diǎn)實(shí)現(xiàn)較高精度的GNSS高程轉(zhuǎn)換仍然具有非常高的應(yīng)用價值。近年來以深度學(xué)習(xí)為代表的機(jī)器學(xué)習(xí)方法已被廣泛應(yīng)用于各個領(lǐng)域[5],部分學(xué)者探討將機(jī)器學(xué)習(xí)方法用于GNSS高程轉(zhuǎn)換[6]。本文基于GSVS2017項(xiàng)目高精度實(shí)測GNSS水準(zhǔn)數(shù)據(jù)、SGG-UGM-2重力場模型及剩余地形模型等數(shù)據(jù),利用移去-恢復(fù)法,將不同計(jì)算方案的深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)方法用于山區(qū)GNSS高程轉(zhuǎn)換,同時與其他轉(zhuǎn)換方法進(jìn)行對比及相關(guān)精度分析。
選擇深度BP神經(jīng)網(wǎng)絡(luò)、深度ELMAN神經(jīng)網(wǎng)絡(luò)、徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)、廣義回歸神經(jīng)網(wǎng)絡(luò)及支持向量機(jī)回歸等方法,分析其用于山區(qū)GNSS高程轉(zhuǎn)換的精度。BP神經(jīng)網(wǎng)絡(luò)為前饋全局逼近神經(jīng)網(wǎng)絡(luò),由輸入層、隱含層、輸出層組成,可包含一層或以上隱含層,主要特點(diǎn)為誤差反向傳播以調(diào)節(jié)權(quán)值與閾值[7]。ELMAN神經(jīng)網(wǎng)絡(luò)為采用延時算子的反饋型神經(jīng)網(wǎng)絡(luò)[8],結(jié)構(gòu)比BP神經(jīng)網(wǎng)絡(luò)多一個連接層,以記憶隱含層為此刻輸出值,并在下一時刻輸出,使得網(wǎng)絡(luò)具有記憶歷史數(shù)據(jù)的功能。當(dāng)BP和ELMAN神經(jīng)網(wǎng)絡(luò)采用兩層以上隱含層的深度學(xué)習(xí)算法時,可稱為深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)[9]。徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)(RBFNN)為前饋局部逼近神經(jīng)網(wǎng)絡(luò),結(jié)構(gòu)與BP神經(jīng)網(wǎng)絡(luò)相似,以徑向基函數(shù)作為隱含層激勵函數(shù)[10]。廣義回歸神經(jīng)網(wǎng)絡(luò)(GRNN)為一種改進(jìn)的徑向基函數(shù)網(wǎng)絡(luò),結(jié)構(gòu)包含輸入層、模式層、求和層、輸出層[11],適用于非線性問題的研究。支持向量機(jī)回歸(SVR)通過確定的非線性映射將輸入向量映射到高維Hilbert空間中,在此空間進(jìn)行線性回歸[12]。本文基于遺傳算法(GA)選取SVR的最優(yōu)參數(shù)進(jìn)行回歸。
選擇GNSS水準(zhǔn)點(diǎn)的經(jīng)度、緯度、大地高及SGG-UGM-2模型的高程異常作為輸入變量,移去SGG-UGM-2模型[13]與剩余地形模型[14]的高程異常后的剩余高程異常作為目標(biāo)變量,采用基于移去-恢復(fù)[14]的深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)進(jìn)行GNSS高程轉(zhuǎn)換,具體數(shù)據(jù)處理流程如圖1所示。利用GRNN、RBFNN、SVR方法進(jìn)行GNSS高程轉(zhuǎn)換的流程也類似。
圖1 基于移去-恢復(fù)的深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)的高程異常擬合流程
選取NGS GSVS2017工程共200個線狀分布的GNSS水準(zhǔn)點(diǎn)為研究對象。測區(qū)地形為山地,海拔范圍約為1900~3300 m,線路總長約320 km,平均點(diǎn)間距離約為1.6 km,高程異常值變化范圍為-20.135~-16.644 m,地形和高程異常起伏情況如圖2所示。利用所有GNSS水準(zhǔn)點(diǎn)對2190階次的SGG-UGM-2模型進(jìn)行精度評估,結(jié)果顯示,模型在該測區(qū)的精度為17.6 cm。下文采用基于移去-恢復(fù)的深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)及其他擬合方法進(jìn)行高程異常擬合與精度分析。
圖2 GSVS2017項(xiàng)目的GNSS水準(zhǔn)點(diǎn)海拔高度與高程異常起伏
借助Matlab軟件中的相關(guān)函數(shù)或工具包,利用深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)、GRNN、RBFNN和SVR進(jìn)行GNSS高程轉(zhuǎn)換的程序設(shè)計(jì),并進(jìn)行試驗(yàn)與精度分析,其中深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)采用多層隱含層(即深度學(xué)習(xí)算法),且考慮不同隱含層激勵函數(shù)進(jìn)行訓(xùn)練,隱含層最高取6層,循環(huán)取優(yōu);GRNN、RBFNN和SVR的激勵(核)函數(shù)均采用高斯函數(shù)。為消除數(shù)據(jù)量綱等的影響,對輸入數(shù)據(jù)及目標(biāo)數(shù)據(jù)歸一化至[-1,1][15]。本文分3種方案進(jìn)行相關(guān)試驗(yàn),即每50個GNSS水準(zhǔn)點(diǎn)為一組,共4組,每組線路長約80 km(方案1);每100個GNSS水準(zhǔn)點(diǎn)為一組,共2組,每組線路長約160 km(方案2);每200個GNSS水準(zhǔn)點(diǎn)為一組,共1組(方案3)。GNSS水準(zhǔn)點(diǎn)分別按點(diǎn)間距約50、30、15、10、5 km進(jìn)行取點(diǎn)作為訓(xùn)練點(diǎn),剩余點(diǎn)作為檢核點(diǎn)。圖3為各方案GNSS高程轉(zhuǎn)換外符合精度的統(tǒng)計(jì)結(jié)果,其中訓(xùn)練點(diǎn)間距為50 km時由于已知點(diǎn)較少,只考慮方案3,部分方案由于訓(xùn)練點(diǎn)不足無法解算而沒有結(jié)果,BP/ELMAN括號內(nèi)容表示所選用的隱含層激勵函數(shù)。
在深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)中:①當(dāng)訓(xùn)練點(diǎn)間距為50 km時,方案3擬合精度為3.45~6.39 cm,深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))的擬合精度為3.45/3.49 cm。②當(dāng)訓(xùn)練點(diǎn)間距為30 km時,方案1擬合精度為2.38~6.38 cm,方案2擬合精度為2.85~4.49 cm,方案3擬合精度為2.98~4.31 cm,深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))擬合精度分別為2.57/2.38、2.86/2.85、3.17/2.98 cm。③當(dāng)訓(xùn)練點(diǎn)間距為15 km時,方案1擬合精度為1.54~2.50 cm,方案2擬合精度為1.71~2.43 cm,方案3擬合精度為1.97~2.58 cm,深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))分別為1.79/1.80、2.00/2.24和2.16/2.19 cm。④當(dāng)訓(xùn)練點(diǎn)間距為10 km時,方案1擬合精度為0.97~1.37 cm,方案2擬合精度為1.04~1.42 cm,方案3擬合精度為1.27~1.63 cm,深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))分別為1.00/1.04、1.05/1.14和1.28/1.27 cm。⑤當(dāng)訓(xùn)練點(diǎn)間距為5 km時,方案1擬合精度為0.57~0.67 cm,方案2擬合精度為0.64~0.69 cm,方案3擬合精度為0.68~0.82 cm,不同隱含層激勵函數(shù)的深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)的擬合精度基本相同。
此外,當(dāng)訓(xùn)練點(diǎn)間距分別為50、30、15、10、5 km時,GRNN、RBFNN、SVR、二次曲線和曲面擬合中所有方案外符合精度最優(yōu)分別為3.68、4.15、2.74、1.38、0.69 cm,采用深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))較其分別提升6%/5%、38%/43%、35%/34%、28%/25%和16%/17%??梢姴捎蒙疃菳P/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))進(jìn)行GNSS高程轉(zhuǎn)換較GRNN、RBFNN、SVR、二次曲線和曲面擬合方法有較大的優(yōu)勢。
綜上所述,深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))在不同的訓(xùn)練點(diǎn)間距中均能獲得較高精度的結(jié)果,尤其當(dāng)已知GNSS水準(zhǔn)點(diǎn)點(diǎn)間距較大時,優(yōu)勢明顯,在實(shí)際應(yīng)用中可優(yōu)先考慮該方法。
進(jìn)一步分析在訓(xùn)練點(diǎn)間距分別為50、30、15、10、5 km時,深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))兩者中最優(yōu)方法的擬合精度(兩者差別可忽略)。圖4為擬合后的高程異常殘差??梢钥闯?訓(xùn)練點(diǎn)間距越小,檢核點(diǎn)殘差值越小,5種計(jì)算結(jié)果中檢核點(diǎn)殘差最大值分別為10.45、7.70、4.49、2.34、1.36 cm,最小值分別為-7.02、-5.67、-5.44、-3.31、-1.49 cm,平均值分別為0.57、0.41、0.33、0.10、0.01 cm,經(jīng)計(jì)算,5種擬合中檢核點(diǎn)間高差分別有100%、98%、98%、100%、100%符合五等水準(zhǔn)測量要求,有92%、92%、97%、98%、100%符合四等水準(zhǔn)測量要求,有77%、78%、82%、91%、100%符合三等水準(zhǔn)測量要求,有31%、27%、36%、34%、58%滿足二等水準(zhǔn)測量要求。
圖4 高程異常擬合殘差
本文利用GSVS2017項(xiàng)目提供的GNSS水準(zhǔn)數(shù)據(jù),基于移去-恢復(fù)法,分別采用不同隱含層激勵函數(shù)的深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)及其他方法進(jìn)行GNSS高程轉(zhuǎn)換與精度分析,主要結(jié)論如下。
(1)深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))在不同的訓(xùn)練點(diǎn)間距及不同計(jì)算方案中均能取得較高的GNSS高程轉(zhuǎn)換精度,在山區(qū)GNSS高程轉(zhuǎn)換中可優(yōu)先考慮該方法。
(2)采用深度BP/ELMAN神經(jīng)網(wǎng)絡(luò)(ReLU函數(shù))進(jìn)行GNSS高程轉(zhuǎn)換時,所有點(diǎn)間距計(jì)算結(jié)果均可滿足90%以上檢核點(diǎn)間高差,達(dá)四等測量精度,75%以上可達(dá)三等水準(zhǔn)測量精度。訓(xùn)練點(diǎn)間距為5 km時,55%以上高差可達(dá)二等水準(zhǔn)測量精度。