李朋朋,劉紀平,王 勇,羅 安,桑 瑜,閆雪峰
(1. 西南交通大學地球科學與環境工程學院,四川 成都 610031; 2. 中國測繪科學研究院,北京 100830;3. 江蘇海洋大學海洋技術與測繪學院,江蘇 連云港 222005)
近些年,隨著Web2.0、高精度定位、新興媒體及移動互聯網技術的融合發展,人們對基于位置服務數據的需求在急劇增加[1],特別是以POI數據為代表的地理空間數據也越來越備受關注。目前,基于POI數據開展的地理空間研究已成為GIS相關領域的研究熱點,如城市功能區識別[2-3]、城市活力分析[4-5]和用戶行為推薦[6-7]等。然而,這些研究幾乎依賴于幾何準確和語義詳細的POI數據,但這些高質量的數據描述通常分散在不同POI平臺上[8]。因此,匹配融合不同來源的POI數據,已經成為豐富數據完整性、增強數據質量、提高數據鮮活度的一個有效途徑[9]。然而,由于不同POI數據源之間屬性表達的多樣性和復雜性[10],不可避免地導致多源POI數據之間存在地理位置編碼上的差異及定位誤差等問題,從而使得POI數據的匹配融合變得更加困難。
多源POI位置融合是將來自不同數據源中指向相同POI數據的位置進行合并,這也是實現地理空間數據匹配融合的關鍵技術之一。目前,關于這方面研究主要包括以下兩類方法:①基于地理編碼的空間位置預測,即利用地理編碼技術對現有的地理位置數據(如街道地址、郵政編碼、地名等)進行分析和建模,推斷出未知或缺失位置坐標[11-12],從而實現空間位置信息的整合;②基于標準地理數據庫的空間位置融合,即以標準地理數據庫作為參考,對不同數據源的地理位置信息進行匹配、校正和整合,從而消除數據源之間的差異和不一致性[13-14]。綜上所述,不同數據源使用不同的地理編碼系統,導致融合過程中的匹配和轉換困難;同時,缺乏統一的標準數據庫和格式會影響數據融合的效率和一致性。
因此,本文提出一種顧及地址語義和地理空間特征的多源POI位置融合方法?;谏窠浘W絡模型分別提取地址屬性的語義特征和位置屬性的地理空間特征,并基于這些特征信息實現多源POI位置融合。
長短時記憶網絡(long short term memory network, LSTM)[15]是循環神經網絡(recurrent neural network, RNN)的一種變體,其主要目的是解決RNN無法獲取長距離依賴問題,以及在訓練過程中出現的梯度爆炸和梯度消失等問題。如圖1所示,LSTM主要包括3個門控機制。其中,忘記門決定上一時刻的單位狀態中有多少信息會被丟棄;輸入門決定當前時刻的網絡輸入中有多少信息會被添加到單位狀態中;輸出門決定當前時刻的單元狀態中有多少信息可以輸出。具體計算公式為

圖1 LSTM網絡結構
ft=σ(Wf·[ht-1,xt]+bf)
(1)
it=σ(Wi·[ht-1,xt]+bi)
(2)
(3)
(4)
ot=σ(Wo·[ht-1,xt]+bo)
(5)
ht=ot·tanhct
(6)

圖神經網絡(graph neural network, GNN)是對圖中節點(Nodes)、邊(Edges)、全局(Global)的屬性值進行參數優化,并保持圖的結構不變,即保持了圖的對稱性[16],如圖2所示。目前比較流行的圖神經網絡有圖卷積網絡(graph convolution networks, GCN)[17]、圖注意力網絡(graph attention networks, GAN)[18]和GraphSAGE圖神經網絡[19]等。本文將使用圖注意力網絡提取地址屬性的層級語義特征。

圖2 GNN網絡二階鄰接節點特征優化過程
本文方法主要包括:數據預處理、屬性特征提取和特征聚合3部分,如圖3所示。

圖3 多源POI位置融合框架
2.1.1 地址要素切分
中文分詞是中文文本處理的基礎工作,分詞的準確性將直接影響后續任務的表現。POI地址屬性是描述POI位置信息的一個重要屬性,它通常由多個不同且具有空間拓撲約束的地址要素或附加詞組成。這些地址要素可以描述某一個區域范圍或某一特定地理實體,附加詞可以描述一個方位、距離或拓撲關系等。因此,對于地址屬性的切分只需將其切分成多個地址要素和附加詞即可。本文采用文獻[20]提出的基于Bi-GRU的中文地址要素切分方法進行分詞,部分地址要素切分實例見表1。

表1 POI地址要素切分實例
2.1.2 地址要素詞向量表達
文本數據作為一種標記性語言,無法直接作為模型的輸入進行計算分析。因此,需要通過詞嵌入的方式將文本轉換成特征向量作為模型的輸入。詞嵌入通過訓練給定的語料庫來生成一個詞嵌入向量矩陣M∈PD×d(D表示語料庫中詞的個數,d表示詞嵌入向量維度),語料庫中每一個詞都能夠根據其對應的索引在詞嵌入向量矩陣M找到相應的向量表示Vc∈d。本文將基于地址要素語料庫,使用Word2Vec的連續詞袋模型(continuous bag-of-words model, CBOW)來訓練生成地址要素的詞嵌入向量矩陣M。
將地址屬性語義特征提取分為文本語義特征提取和層級語義特征提取。
2.2.1 基于TextRCNN的地址文本語義特征提取
TextRCNN是2015年提出的文本分類網絡模型[21]。該模型既能夠捕獲句子序列中的長距離依賴關系,也能夠提取句子序列中的局部特征。本文基于該模型進行了改進,如圖4所示。首先,在給定一個地址要素表達序列S=(a1,a2, …,an)(an表示地址要素,n表示該地址中地址要素的個數),利用詞嵌入向量矩陣M生成對應的詞嵌入向量矩陣E=[e1e2…en],并將其作為雙向長短時記憶網絡(Bi-LSTM)的輸入;然后,通過Bi-LSTM提取上下文特征矩陣H,并將其與詞嵌入向量矩陣E進行殘差連接生成向量矩陣K;最后,對向量矩陣K進行最大池化和全連接層操作,輸出地址屬性的文本語義特征向量xs。具體計算公式為

圖4 POI地址屬性文本語義特征提取
hr(ai)=fLSTM(hr(ai-1),cr(ai-1),ei)
(7)
hl(ai)=fLSTM(hl(ai+1),cl(ai+1),ei)
(8)
h(ai)=Wh(hr(ai)+hl(ai))+bh
(9)
k(ai)=Wk(h(ai)+ei)+bk
(10)
(11)
式中,hr(ai)和hl(ai)為地址要素ai在向右和向左方向上的LSTM隱藏層輸出;fLSTM為LSTM計算公式;cr(ai-1)為地址要素ai-1在向右方向上的LSTM單位狀態;h(ai) 為地址要素ai的Bi-LSTM隱藏層輸出;k(ai) 為地址要素ai的殘差連接輸出;xs為地址屬性的文本語義特征向量;W和b為需要進行訓練的權重和偏置項。
2.2.2 基于圖注意力網絡的地址層級語義特征提取
地址要素之間往往存在著一定的空間拓撲約束,如行政區劃之間有包含、相鄰等關系,行政區劃與道路之間有包含、相交或相鄰等關系,道路與標志物之間有包含、相鄰等關系。雖然不同地址要素之間的空間拓撲關系復雜多樣,但是大多數地址要素在地址表達中都是一種層級嵌套的包含關系。因此,本文主要考慮地址要素的層級嵌套關系,并基于圖注意力網絡提取地址層級語義特征。將地址要素語料庫中所有的地址要素作為GAN網絡節點,并根據地址要素在每條地址表達中的先后順序構建GAN網絡的邊。同時,使用詞嵌入向量矩陣M對每個節點特征進行初始化。GAN網絡結構的構建如圖5所示。

圖5 GAN網絡結構實例
在基于GAN網絡提取地址層級語義特征中,定義輸入GAN的一組圖節點為N=(n1,n2, …,nm);對應的圖節點特征記為
F=(f1,f2,…,fn),fi∈d,其中m為圖中節點個數,d為節點特征;對應的輸出為一組圖節點特征F′=(f′1,f′2,…,f′2),f′i∈d′,其中圖中節點個數m和輸入圖節點個數相同,但節點特征進行了更新。
在節點特征fi的更新過程中采用了注意力機制,首先,將節點特征fi和其一階鄰接節點特征fj進行拼接,并通過一個單層前饋神經網絡將拼接特征映射為一個實數。該實數表示節點nj對于節點ni的重要程度,即注意力系數。然后,對于節點ni的其余一階鄰接節點及自身節點進行相同操作,以獲取所有一階鄰接節點及自身節點對于節點ni的注意力系數。最后,對所有的注意力系數進行歸一化操作,并將歸一化結果與其對應的一階鄰接節點及自身節點的輸入特征進行加權求和,以此來更新節點ni的特征。具體計算公式為
(12)
(13)
式中,aij為節點nj對于節點ni歸一化后的注意力系數;αT∈2d′×1為單層前饋神經網絡權重的轉置;W∈d×d′為節點特征的線性變化權重,該權重在所有圖節點中共享;LeakyReLU和σ為激活函數;‖為節點特征拼接;Ni為節點ni的一階鄰接節點以及自身節點的集合。
為了能夠學習到更加豐富的地址層級語義特征,采用了多頭注意力機制。即使用多個注意力機制進行上式相同的操作,然后將得到的多個更新節點特征進行拼接,得到新的節點特征,公式為
(14)

位置屬性就是一組空間特征,但屬于低維特征,地理空間特征表征有限。因此,需要對位置屬性進行增維操作,生成高維特征以獲得足夠的地理空間表達能力。多層感知機(multilayer perceptron, MLP)作為一種常見特征增強方法[22],它由多個神經元層組成,其中每層神經元的輸出將通過全連接的方式作為下一層神經元的輸入,并生成新的特征表達。MLP包含一個輸入層、一個或多個隱藏層和一個輸出層,其中隱藏層的每一個神經元都是通過非線性激活函數將其輸入轉換為特征輸出,這種轉換可以獲取高維特征,從而增強輸入信息的特征表達能力。本文構建的MLP網絡結構如圖6所示。

圖6 多層感知機
x1=f1(W1x+b1)
(15)
x2=f1(W2x1+b2)
(16)
y=f2(W3x2+b3)
(17)
式中,x∈2為經緯度坐標;W和b為需要進行訓練的權重和偏置項;f1和f2分別為隱藏層和輸出層的激活函數。
自注意力機制是一種用于處理序列數據的機制,它通過計算輸入序列中每一個元素與其他元素之間的相關關系,實現對不同元素的加權聚合[23]。本文使用自注意力機制對地址語義特征和地理空間特征進行聚合,實現多源POI位置融合任務。如圖7所示,注意力機制計算主要包括3部分:注意力權重、加權求和、線性變換。計算之前,需要將地址語義特征和地理空間特征進行合并,構建序列矩陣X。在注意力權重計算時,需要對輸入序列矩陣X分別使用線性映射矩陣WQ、WK和WV分別映射成Q、K和V,然后通過Q和KT的點乘計算注意力權重M,該權重通過歸一化操作后將作為加權求和的輸入;加權求和是對注意力權重M與V進行點乘計算,生成特征聚合矩陣H。最后,通過線性變換將特征聚合矩陣H映射到一個低維空間來預測多源POI合并位置點,從而實現多源POI數據的位置融合任務。具體計算公式為

圖7 基于自注意力機制的位置融合
Q=(WQX+bQ)
(18)
K=(WKX+bK)
(19)
V=(WVX+bV)
(20)
(21)
H=A?H
(22)
y=f(WyH+by)
(23)
式中,dk為矩陣Key的維度;f為激活函數;? 為矩陣的點乘;W和b為需要進行訓練的權重和偏置項。
在該任務中使用融合位置與參考位置之間的歐氏距離作為模型訓練的目標函數和評價指標,計算公式為
(24)
式中,lonr和latr為參數位置的經緯度;lonf和latf為融合位置的經緯度。
本文試驗環境的主要參數如下:深度學習框架為PyTorch 1.7,開發語言為Python 3.7,CPU為Intel(R) Core (TM) i9-9900K CPU @ 3.60 GHz,內存為 32 GB,GPU 為 NVIDIA GeForce RTX 2080 Ti。
本文試驗數據均來自成都市范圍內的POI數據。其中,用于多源POI位置融合的數據源分別來自百度地圖、騰訊地圖和高德地圖3種數據源;用于參考位置的POI數據源來自當地測繪部門的實測數據。在構建樣本數據集過程中,采用文獻[9]的多源POI數據匹配方法尋找在百度地圖、騰訊地圖和高德地圖中至少有兩種數據源可以匹配到參考數據源中的同名POI數據。將匹配到的同名POI數據作為需要位置融合的POI數據,使用參考數據源作為樣本標簽。共生成樣本數據集37 036條,其中訓練數據集36 036條,驗證數據集500條,測試數據集500條。
一個性能更優的網絡模型,超參數的設置極其重要,給出了網絡模型中超參數的一個初始值和最優值,見表2。其中,Hidden size、Batch size和Dropout rate3種超參數通過試驗選取最優值,主要是因為網絡模型對于這些超參數比較敏感,其余超參數的最優值使用初始值。

表2 網絡模型超參數設置
為了驗證本文方法對于多源POI數據位置融合的精度,將該方法與現有基于機器學習和深度學習的方法進行比較,對比結果見表3(位置融合精度的最大值、平均值和最小值指在測試數據集上取得的值)。

表3 多源POI數據位置融合方法對比試驗結果 m
由表3可以看出,基于機器學習的Fuzzy SVM位置融合方法精度最低,相比之下,基于深度學習的Word2Vec+TextCNN、BERT和RoBERTa位置融合方法的精度都有很大提升。具體而言,基于Word2Vec+TextCNN的位置融合方法是所有深度學習方法中融合精度最優的,其次是基于RoBERTa位置融合方法,最后是基于BERT位置融合方法。本文方法在所有對比方法中取得最優值,分析其原因,主要得益于以下幾點: ①基于TextRCNN網絡可以有效地提取地址屬性的文本語義特征; ②基于GAN網絡可以有效地提取地址屬性的層級語義特征; ③使用自注意力機制聚合了地址屬性的語義特征和位置屬性的地理空間特征,豐富了POI數據的表達特征,從而提高了融合精度。
為了驗證地址文本語義特征和地址層級語義特征對于位置融合精度的影響,進行了消融試驗。第1組消融試驗僅使用了地址的文本語義特征和地理空間特征進行位置融合,沒有使用地址層級語義特征。第2組消融試驗僅使用了地址的層級語義特征和地理空間特征進行位置融合,沒有使用地址文本語義特征,試驗結果見表4。

表4 消融試驗對比結果 m
由表4可以看出,在第1組消融試驗中,相比原始模型,其最大融合精度降低了22.98 m;平均融合精度降低了10.32 m;最小融合精度降低了0.39 m。在第2組消融試驗中,相比原始模型,其最大融合精度降低了18.10 m;平均融合精度降低了5.88 m;最小融合精度降低了1.96 m。因此,可以看到取消TextRCNN和GAN任何一個網絡都會嚴重影響位置融合精度。
針對不同POI數據源之間位置編碼的差異與定位誤差,本文提出了一種顧及地址語義和地理空間特征的多源POI位置融合方法。該方法使用了TextRCNN、GAN和MLP網絡模型提取地址屬性和位置屬性的語義特征和地理空間特征,并基于自注意力機制的聚合特征實現多源POI數據的位置融合。最后,對成都市范圍內的百度地圖、騰訊地圖和高德地圖中的同名POI數據進行位置融合試驗,其平均位置融合精度優于12 m。盡管本文提出的方法取得不錯的融合精度,但還是存在一些局限性。如本文只考慮了地址要素之間的拓撲包含關系,但除此之外還有相鄰、相交、相接等關系。因此,在未來的研究中需要對GAN網絡的圖結構進行優化。