1. 程式人生 > >高德地理位置興趣點現勢性增強演進之路

高德地理位置興趣點現勢性增強演進之路

​1.導讀

人們在高德地圖上會看到很多地理位置興趣點(Point of Interest,縮寫為POI),例如餐廳、超市、景點、酒店、車站、停車場等。對POI資料的評價維度包括現勢性、準確性、完備性和豐富性。其中,現勢性就是地圖所提供的地理空間資訊反映當前最新情況的程度,簡而言之,增強現勢性就是指儘可能快速地發現已停業、搬遷、更名、拆遷的過期冗餘POI資料,並將其處理成下線狀態的過程。

線上的過期冗餘資料會傷害使用者體驗,經過推算,頭部線上資料的一個過期率百分點年度影響使用者體驗3億次。因此,POI過期問題的解決勢在必行,以增強現勢性,減少使用者傷害。

POI過期問題的解決分為發現和處理兩個環節。發現採用挖掘線主導,採集線和輿情線補位的方式。採集的天然優勢是自帶核實資料,劣勢也很明顯,成本高、下發頻率低,因而發現的時效性不高,且採集線發現過期需要經過挖掘線;網際網路輿情時效性高,但覆蓋少且ROI低;作為覆蓋高、時效高、成本低的大資料探勘是絕對主力。

處理環節有人工核實、自動化打標和自動化下線三種手段。人工核實存在缺少核實資料從而導致核實率低的問題,這是因為挖掘所依賴的觀測資料不能提供過期的實錘證據,觀測資料不等於核實資料,且過期的資料更傾向於核實不到,即能發現、難處理,從而伴隨著挖掘的演進,衍生了自動化打標和自動化下線兩種處理手段以及相應的風險控制機制(打標回撈、下線回撈),一方面提高了處理能力,另一方面降低了人工成本。

注:自動化打標是一種與前端搜尋聯動灰度處理高疑似過期資料的方式—打標資料非精搜不展現,精搜伴有話術提示。其背後的核心思路是由傳統圖商的實錘思維向網際網路思維轉變,及時觸達使用者,快上快下。

本篇文章將主要介紹挖掘的演進歷程,作為過期發現的核心手段,挖掘在不同階段分別面臨缺資料、提準難、資料薄三大問題,站在今天回首過去,這個過程可以分為三個階段:

  • 基於自身屬性的POI過期挖掘
  • 基於使用行為的POI過期挖掘
  • 基於人地關係的POI過期挖掘

我們利用策略、機器學習和深度學習等資料探勘技術,從點到面、由粗到精地攻克POI過期挖掘業務,POI現勢性增強的模式已經發生了深刻的變化。

2.資料探勘手段的演進

2.1階段一:基於自身屬性的POI過期挖掘

早期的主要矛盾是缺少挖掘資料,如果同時做資料的POI掛接和基於掛接資料的挖掘策略會導致挖掘鏈路長、專案風險高。因此,在提升新資料的POI聚合能力的同時,以POI自身屬性作為主要的挖掘資料。高德POI團隊在資訊聚合、融合方面有長時而豐富的積累,POI屬性可大致分為三類:基礎資訊、深度/動態資訊和關係資訊。

基礎資訊:表徵實體,包括名稱、座標、地址、行業、電話、時間、來源等。

深度/動態資訊:增加POI資料豐富性,包括:圖片、評分、評論、團購、報價等。

關係資訊:POI間通過語義、時空建立的關聯,包括:親子、引用、共現等。

針對不同的屬性,我們設計不同的策略去挖掘過期POI。根據複雜程度,我們將策略主要分為:基於單POI的挖掘和基於多POI的挖掘。二者的最大區別在於是否使用POI間的關係資訊。下面介紹幾個比較典型的策略:

策略特徵使用表

◎代表關鍵特徵,△表示輔助特徵

評論過期語義挖掘是比較典型的基於單POI的挖掘策略。深度/動態資訊中的評論是獲取使用者對POI反饋的有效途徑之一,其中也包括對過期POI的反饋,我們通過匹配關鍵詞很容易找到這種評論。上、下文的語境會導致關鍵詞的語義發生變化,為此,我們利用TextCNN模型實現語義分類以達到消歧的目的,篩選出真正表達POI過期的評論。如下所示:

“原”關係挖掘使用POI間的引用關係,是一種基於多POI的挖掘策略。我們在含有“原”關鍵字的POI名稱、別名或地址中通過實體抽取技術,得到“原”關係(新舊關係)的兩個POI名稱,通過聚合技術找到舊名稱所對應的過期POI。

同地址策略則利用地址門牌衝突關係來挖掘。其邏輯是:相同的門牌號(包括室內水牌)上通常只有唯一的經營實體,若地址上存在兩個或多個實體且不是聚集實體(商場、園區等),則應當存在過期POI。我們採用圖論對問題建模,取門牌相同的POI集合,將POI視為節點,POI間關係(親子、兄弟、共現、參考引用等)為邊。利用最大連通分解演算法將集合劃分為K個連通子圖,每個子圖看作是一個實體或聚合實體。若K=2,則將更新時間較早的子圖作為疑似過期集合輸出。

同電話策略是為數不多能與具體過期現象對應的策略。取有相同電話的POI的集合,與同地址策略類似,通過名稱語義計算、空間計算、共現關係、親子關係等,剔除掉聚集實體、連鎖店、疑似重複資料等噪音,並根據名稱相似性和距離關係,分辨出更名和搬遷現象。電話實際上代表著POI背後真正的人,通過人的行為變化可以判斷一個POI過期與否,甚至可以推斷出該POI具體的過期現象。 

伴隨著POI聚合多種新資料來源的能力的日漸成熟,新的挖掘資料已具備。我們的重心也逐步轉移至基於使用POI行為的挖掘。

2.2階段二:基於使用行為的POI過期挖掘

步入階段二,缺少挖掘資料已不再是解題的主要矛盾,人工核實率低、處理能力不足的問題凸顯,從而迫切需要建立自動化打標/下線能力(提準)。過期挖掘的實質是感知伴隨POI過期而發生的變化,進行事後觀測式挖掘,比如,過期一般都會伴隨著POI活躍度(運單量等)的下降。

前文已提到,挖掘所依賴的觀測資料不能提供過期的實錘證據(比如,運單消失並不是過期實錘);且過期強相關因子種類偏少、天然引入上游誤差以及真實世界存在貝葉斯誤差;外加隨著解題推進,線上POI資料現勢性增強、過期率下降,在觀測資料固定的前提下,過期挖掘的產量及精確率均隨過期率的下降而自然下降,上述這些都會導致精確率難提高,因此,提準難成為該階段的主要矛盾。

特徵層面我們通過去噪、精細化加以應對,受篇幅所限,本文暫不做展開介紹。而演算法層面則是通過技術升級來應對。路線圖:從規則到模型;從淺層模型到深度模型;從單源決策到多源資訊融合;從決策層多源資訊融合到特徵層多源資訊融合。

根據是否需要參考歷史情況,我們將基於使用行為的POI過期挖掘劃分為時序異常和事件異常兩類。

2.2.1時序異常

POI的存活狀態可以通過關聯的使用行為量活躍度間接反映出來,從使用行為量的趨勢角度嘗試迭代解題。

趨勢模型的主要思想是,統計某個時間視窗關聯的使用行為量活躍度來衡量POI的存活狀態,並通過分析活躍度相對於歷史情況的衰減程度來判斷POI是否過期,其基本假設是時序趨勢下降與POI過期正相關。以已知活躍度資訊的逐月統計量時間序列為特徵,我們完成了RF->RNN->模型融合->Wide&Deep四個迭代階段的研發。

鑑於RF在分類決策問題中表現出的精度高、不易過擬合、對資料集適應能力強、落地高效以及對於規則思維的天然吻合度,可成為驗證解題方案可行性的首選。方案是將每種特徵的每個時間節點值作為一個輸入維度來構建模型。RF憑藉高準確和高產出落地投產,驗證了行為量趨勢應用於過期挖掘的重要意義。

之後,針對RF存在的一些不足來做進一步的技術升級。首先,模型無法學到連續時間節點之間的趨勢關聯性,時序資訊未得到充分利用;其次,對於不同種類特徵缺失、長短序列融合等問題需要建立定製化模型來解決,多模型增加了維護負擔。因此,要選擇時序領域優勢明顯的RNN模型進行迭代升級。

通過構建多層LSTM深度網路實現了趨勢關聯資訊的深度挖掘,同時針對不同熱度分段的資料分佈差異性,採取各自最優的缺失特徵填充方式,避免了多模型式的解題方案,便於業務維護。RNN模型使發現能力,特別是自動化能力得到較大提升。

雖然RNN相對於RF提升了對於時序特徵的學習能力,但資訊不足依然限制了模型的自動化能力。我們進一步開發了能夠實現多源資訊融合決策的融合模型。思想是將RF、RNN、拆遷區域等現有各基線模型、策略以及白名單作為子分類器納入統一框架內考慮,在此基礎上構建貝葉斯網路,做決策層的多源資訊融合。相較於特徵層的多源資訊融合,它落地快且效果明確,為過期業務提供了穩定的高準確自動化下線產出,自動化能力大幅提升。

第四個階段是從多源資訊融合的角度進一步優化。一方面,決策層融合相比特徵層融合存在更多的資訊損失;另一方面,一些模型/策略只在部分品類的POI上滿足業務投產的準確率標準,導致不達標品類的產出結果未得到充分利用。因此,從實現特徵層多源資訊融合的角度出發,借鑑Wide&Deep思想搭建新業務模型。

整體思路是,將眾多不可量化或比較的屬性特徵和狀態資訊特徵進行編碼表徵,再經過一層全連線層降維後作為Wide部分;將RNN模型作為Deep部分,最後將兩部分耦合。模型經過多輪迭代優化可穩定投產,自動化能力得到進一步提升,已成為過期挖掘業務中覆蓋行業廣、自動化解題能力突出的綜合性模型。

綜合以上,人機解題比大幅下降,解決了人工核實率低、處理能力不足的問題,並且大幅降低了成本。

2.2.2事件異常

現有的時序異常模型主要依賴於使用行為量的趨勢特徵做判斷,存在挖掘資料覆蓋上的天花板,以加油站、ATM、公共廁所等為例,這些型別的POI因自身屬性的原因導致無挖掘資料,趨勢模型無能為力。因而提出基於日誌(Session)的異常事件模型,統計陌生群體到達過期POI後需求不滿足引發的異常事件,補位時序異常模型的挖掘盲區,即無需參考歷史情況,僅利用日誌抽取POI關聯的異常行為事件,累積近期異常事件衡量POI的存活狀態是否正常。

日誌挖掘難點

海量的日誌行為。直接使用不僅消耗資源大,且有大量的冗餘資料造成干擾。如何在海量行為中抽取與過期相關的特徵是一個艱難的工程。

行為隨機性大。例如,很多情景裡快到終點前會提前結束導航從而無法判斷是否到達目的地;有些情景是規劃去一個目的地但從末端軌跡可以判斷實際去的地點天差地別。

解題框架

針對上述問題,主要通過實地評測的過期POI case分析來構建具體的異常事件場景,例如到達後試圖報錯、到達後快速發起二次同質化導航等,以上統計量作為特徵輸入,由此可聚焦相關日誌片段並降低隨機行為噪音。整體解題框架如上圖所示,從不同的Session源解析與POI相關的事件,按照時間順序組合成場景1、場景2、場景…,加入外部屬性如型別、城市等,以目的地POIID按照時間視窗歸併生成相應的統計特徵,輸入LR模型,輸出POI的過期得分。目前採用LR,優點是簡單粗暴壓住噪聲。

挖掘效果

Session異常事件模型有效補充其他手段未能覆蓋的解題集合,專攻汽車服務、生活服務、娛樂場所、金融保險服務等品類POI,是過期挖掘不可或缺的組成部分,且未來仍有較大的泛化提召回空間。

2.3階段三:基於人地關係的POI過期挖掘

2.3.1 人地關係建設

趨勢特徵豐富(厚)的過期POI,容易被趨勢模型挖出。而當趨勢特徵(使用行為)稀少(薄)時,模型發現能力較差。所以該階段需要解決資料薄的問題,通過對關鍵群體(>2)線索的捕捉,降低對資料厚度的依賴。洞察POI的關鍵群體的行為,有可能找到發現甚至解釋POI過期的特徵。

因此,第一步我們需要建設人地關係,找出所謂的關鍵群體,稱之為內部群體,是指:對POI有依賴的群體,這種人地關係,我們稱之為內部關係,其它均為外部關係。

第二步基於內部群體的時空運動模式的變化發現過期POI,補位趨勢特徵稀疏時的召回問題,侷限性:內部群體基本不變的POI更名等場景不可解。第一步人地關係建設基本完成,大體分為資料層、行為層和模型層三層,分別介紹如下:

在資料層,收集可能與POI相關的資料來源,打通各個資料孤島,將不同型別的資料關聯到高德POI上。

在行為層,將行為特徵表達在視窗為X天的二維矩陣上,如圖所示。矩陣表示能夠更加清楚地反映行為的週期性規律。不同行為序列可以看作是不同通道的矩陣,很好地適配行為資料的非同步性,同時保持可擴充套件性(每多一種行為,可增加一個通道表示)。

在模型層,面向多通道的矩陣特徵,採用深度卷積網路完成分類任務,其基本結構如下:

該結構一定程度地緩解由於資料不完備導致的特徵稀疏,有效地學習行為的時間規律,取得符合預期的結果,驗證了模型的可用性。在模型層,通過補充的召回策略,幫助將內部關係對POI的覆蓋度進一步提升,完成從0->1的建設。

總結

過期挖掘已經成為增強POI現勢性的絕對主力手段。這條以大資料探勘為主導的路線還遠遠沒有達到終局,未來的演進方向至少有以下幾個:內部群體時空轉移本質化通盤解題,降低對資料厚度的依賴;面向過期現象的定向挖掘能力提升;POI生命力畫像構建;生態探索,從逆向解題向逆向+正向解題滲透。我們將致力於為提供給使用者更美好的出行服務體驗而努力。