深度學習在高德POI鮮活度提升中的演進

運營增長 發佈 2020-06-14T10:49:23+00:00

通過引入新的輕量 TCN 時序模型和 Attention 機制,新的模型性能有了進一步提高,但調優過程相對 RNN 更加複雜。

高德地圖擁有著數千萬的 POI ( Point of Interest ) 興趣點,如學校、酒店、加油站、超市等。其中伴隨著眾多 POI 創建的同時,會有大量的 POI 過期,如停業、拆遷、搬遷、更名。這部分 POI 對地圖鮮活度和用戶體驗有著嚴重的負面影響,需要及時有效地識別並處理。

由於實地採集的方式成本高且時效性低,挖掘算法則顯得格外重要。其中基於趨勢大數據的時序模型,能夠覆蓋大部分挖掘產能,對 POI 質量提升有著重要意義。

過期 POI 識別本質上可以抽象為一個數據分布非對稱的二分類問題。項目中以多源趨勢特徵為基礎,並在疊代中引入高維度稀疏的屬性、狀態特徵,構建符合業務需求的混合模型。

本文將對深度學習技術在高德地圖落地的過程中遇到的業務難點,和經過實踐檢驗的可行方案進行系統性的梳理總結。

01

特徵工程

過期挖掘的實質是感知伴隨 POI 過期而發生的變化,進行事後觀測式挖掘,一般都會伴隨著 POI 相關活躍度的下降。因此時序模型的關鍵是構建相關聯的特徵體系。同時在實踐中我們也構造了一些有效的非時序特徵進行輔助校正。

1. 時序特徵

時序特徵方面,建立了 POI 和多種信息的關聯關係,並分別整合為月級的統計值,作為時序模型的輸入;時間序列窗口方面,考慮到一些周期性的規律的影響,需要兩年以上的序列長度來訓練模型。

2. 輔助特徵

輔助特徵方面,首先是將人工核實歷史數據進行有效利用。方式是構造一個時間序列長度的 One-Hot 向量,將最後一次人工核實存在的月份標記為1,其他月份為0。人工核實存在表示該時間結點附近過期機率較低,若人工更新在趨勢下降之後,說明趨勢表征過期的機率不高。

其次,調研發現不同行業類型的POI有著不同的過期機率,如餐飲和生活服務類過期機率較高,而地名或公交站點等類型則相對低很多。因此將行業類型編號構建為一個時間序列長度的等值向量,作為靜態輔助特徵。

第三種輔助特徵是在分析業務中的漏召回問題時總結構造的。發現有相當部分的新誕生 POI,其入庫創建後至今的時長短於序列長度。意味著這部分序列前期存在較多數值為零的偽趨勢,會對尾部的真實下降趨勢造成干擾從而誤判。對此提出了兩種優化思路:

  • 採用可變長度的 RNN 模型,只截取 POI 創建時間之後部分的序列作為輸入。
  • 序列長度不變,添加一維"門"序列特徵,序列在 POI 創建時間之前的部分數值為0,之後為1。如圖所示。

對比採用第二種方案效果更優。考慮到我們只有 POI 的入庫創建時間信息,而不了解門店的具體誕生時間,直接按入庫時間截取序列,會造成門店誕生和 POI 創建時間段內的特徵信息損失;而添加"門"序列則可以在保持信息完備的同時約束高可信區間。最後構建的混合特徵示意圖如下所示。

02

RNN 階段

循環神經網絡 ( RNN,Recurrent Neural Network ) 憑藉強大的表征能力在序列建模問題上有非常突出的表現,業務中採用了其變種模型 LSTM。

1. RNN1.0

以前述的時序特徵和輔助特徵為基礎,我們採用多層 LSTM 搭建了第一版 RNN 過期挖掘模型,結構如圖所示。主要邏輯為,將逐時間點對齊後的特徵輸入到深度 LSTM 中,在網絡最後時刻的輸出後,接入一層 SoftMax 計算過期機率。最後根據結果匹配不同的置信度區段,分別進行自動化處理或人工作業等任務。模型初步驗證了 RNN 在過期趨勢挖掘領域落地的可行性和優勢。

2. RNN2.0

高德地圖基於導航、搜索或點擊等操作頻度對 POI 進行了熱度排名。頭部的熱門 POI 如果過期但未及時發現對用戶體驗的傷害更大。2.0版本模型升級的主要目標便是進一步提升頭部熱門段位的過期 POI 發現能力。

分析發現熱門 POI 的數據分布相比尾部有較大差異性。頭部 POI 的數據量豐富,且數值為0的月份很少;相反尾部 POI 則數據稀疏,且有數值月份量級可能也僅為個位數。對於這種頭部效應特別明顯的狀況,單獨開發了高熱度段特徵的頭部 RNN 模型,實現定製化挖掘。

另一方面,對於單維度特徵缺失的情況,也區分熱度採用了不同的填充方式。頭部 POI 特徵信息豐富,將缺失維度補零讓其保持"靜默"防止干擾;而尾部特徵稀疏,本身已有較多零值,需要插值處理使缺失特徵和整體保持相近趨勢。方法為將其他維度的數據規範化處理後,採用加權的方式得到插值。

2.0版模型對頭部和尾部的召回能力都有提升,對頭部的自動化能力提升尤為明顯。

03

Wide&Deep 階段

RNN 模型能夠充分發掘時序特徵的信息,但特徵豐富度不足成為制約自動化能力進一步提升的瓶頸。因此整合業務中的其他數據,從多源信息融合角度升級模型便成為新階段的工作重點。主要的整合目標包括非時序的靜態信息和狀態信息,以及新開發的時序特徵信息。

模型升級主要借鑑了 Wide&Deep 的思想,並做了很多結合業務實際情況的應用創新。首先我們要把已有的 RNN 模型封裝為 Deep 模塊後和 Wide 部分聯合,相當於重新構建了一個混合模型,涉及到模型結構維度的整合。其次,既有 Deep 的時序信息,又有 Wide 部分的實時狀態信息,涉及到數據時間維度的整合。最後是 Wide 部分包含大量的不可量化或比較的類型特徵需要編碼表征處理,涉及到數據屬性維度的整合。

1. Wide & LSTM

特徵編碼:

我們將非時序特徵經過編碼後構建 Wide 模塊。主要包括屬性、狀態,以及細分行業類型三種特徵。

考慮到某些 POI 屬性存在缺失的情況,故編碼中第1位表示特徵是否存在的標誌位,後面則為 One-Hot 編碼後的對應的屬性類型;對於狀態特徵,同樣有一位表示是否特徵缺失的標誌位,而後面的 One-Hot 編碼則表示最新時刻的狀態類型;由於不同行業類型有著不同的背景過期率,我們將細分的行業類型做 One-Hot 編碼後作為第三種特徵。最後將各特徵編碼依次連接,得到一個高維度的稀疏向量。特徵編碼的過程如圖所示。

特徵耦合:

特徵完備之後,將各類特徵耦合及模型訓練便成為關鍵。耦合點選在了 SoftMax 輸出的前一層。對於 Deep 部分的 RNN 結構,參與耦合的便是最後時間節點的隱層;而對於 Wide 部分的高維度稀疏向量,我們通過一層全連接網絡來降維,便得到 Wide 部分的隱層。最後將兩部分的隱層連接,輸出到 SoftMax 來計算過期機率。

模型採用同步輸入 Wide 和 Deep 部分特徵的方式聯合訓練,並調節兩部分的耦合隱層的維度來平衡兩部分的權重。過期挖掘場景的 Wide & LSTM 模型結構如圖所示。

模型經過多次疊代優化後穩定投產,已成為過期挖掘業務中覆蓋行業廣、自動化解題能力突出的綜合性模型。

2. Wide & Dual-LSTM

在做模型升級疊代的同時,基礎特徵的建設工作也在同步進行。在擴充新的趨勢特徵的時候面臨這樣一個問題,新特徵維數較多且時間序列較短,這樣將長時序特徵和短時序特徵逐時間點匹配時會出現很大部分的數值缺失。

由於新特徵缺失部分較多且維度較大,缺失值填充的負面影響會過於嚴重而不適合採用。項目中採用了分而治之的方案,分別建立兩個 RNN 模塊,其中長 RNN 模塊輸入無新特徵的長序列,短 RNN 模塊輸入有新特徵的短序列,最後將雙 RNN 的 Hidden 層和 Wide 部分一起耦合,得到了 Wide & Dual-RNN 模型,結構如圖所示。

雙 RNN 結構能夠很好地將新特徵融入到現有模型並提升判斷準確率,不足的地方是結構較複雜影響計算效率。故後期進行了新階段的研發,採用更靈活的時序模型 TCN 進行疊代。

3. Wide & Attention-TCN

TCN 主要有如下三方面優點使其能勝任時間序列的建模:首先,架構中的卷積存在因果關係,即從未來到過去不會存在信息泄漏。其次,卷積架構可以將任意長度的序列映射到固定長度的序列。另外,它還利用殘差模塊和空洞卷積來構建長期依賴關係。

性能對比上,TCN 可以將時間序列作為向量並行化處理,相比 RNN 的逐時間點順序計算的方式有更快的計算速度。此外,TCN 可以輸入延展成一維的序列,從而避免了特徵需要逐時間點對齊。因此在驗證了 Wide&Deep 的思路有效後,我們嘗試將 Deep 部分的 RNN 結構升級為 TCN。

首先,對於輸入部分的特徵進行了 Flatten 處理,即將每個維度的時間序列依次首尾相連,如圖所示,拼接成為一個長向量後作為輸入。這樣便實現了長特徵和短特徵的有效整合。

其次對於輸出結構,引入序列維度的 Attention 機制進行優化。主要思想是不再只讀取序列最後節點的隱向量的濃縮信息,而是對所有序列節點的隱向量信息加權處理後,得到匯總的隱向量信息,使所有節點的學習結果得到充分利用。

最後將 Attention-TCN 後得到的匯總隱向量和 Wide 部分的隱層進行耦合,得到的 Wide&Attention-TCN 模型結構如圖所示。

通過引入新的輕量 TCN 時序模型和 Attention 機制,新的模型性能有了進一步提高,但調優過程相對 RNN 更加複雜。多輪參數調整與結構優化後,最終落地版本與 Wide & Dual-LSTM 版相比,計算效率和業務擴召能力均有可觀提升。

04

總結與展望

深度學習在過期挖掘場景中的落地,經歷了不斷摸索嘗試、總結問題、優化方案、驗證效果的疊代演進的過程。期間以提升過期發現能力為核心目標,對特徵擴展、特徵構造和模型結構優化的角度都進行了探索,並總結了如上的業務場景落地經驗。其中,豐富可靠的特徵、合適的特徵表征方式和符合場景的模型結構設計是提升業務問題解決能力的關鍵。

當前模型主要是基於信息和趨勢進行宏觀性的規律總結,並判斷具備這類特徵情況下的 POI 過期的機率。而現實生活中 POI 的具體地理環境、自身經營狀況、周邊競爭態勢等個性化因素的影響往往不可忽略。因此,未來規劃將綜合考慮整體規律性特徵和個體差異性,實現精細化挖掘。

作者:懿林 高德技術專家

關鍵字: