機器學習在高德地圖軌跡分類的探索和應用
1.背景
當我們開啟導航,開車駛向目的地的過程中,有時候會碰到這樣的問題:前方明明沒有路,可能在施工封閉,可是導航仍然讓我們往前開車,以至於我們無法順利到達目的地。全國道路千千萬,每天都有巨量的道路變得不可通行,那麼如何動態的識別出哪些道路走不通了呢?
圖中所示即為因封路事件導致的導航路線改變
道路不通往往導致該條道路汽車流量突然降低。監控汽車流量的變化是挖掘封路事件的重要指標。但是,目前業務中遇到的一個重要問題是,針對汽車無法通行的封路事件,行人、腳踏車可能都可以穿行,這些行人、腳踏車等的噪聲流量大大削弱了道路流量變化。
因此,如果能夠對行人、腳踏車、汽車的軌跡進行分類,就可以對道路流量的噪聲進行過濾,僅僅關注汽車流量,流量隨著封路事件的變化將更為顯著,從而便於道路封閉的挖掘。本文主要針對非機動車、機動車分類探索軌跡分類問題。
2.樣本獲取與標籤制定
由於軌跡資料缺少原始真值,我們將使用者導航模式作為軌跡分類的偽標籤。例如當時使用者採用汽車導航,其軌跡對應的標籤即為汽車。由於汽車導航資料遠遠多於非機動車,不同偽標籤樣本比例差異巨大,存在嚴重的樣本不平衡問題。此外,使用者導航模式與使用者實際出行方式可能並不一致。比如有些使用者可以根據汽車導航步行到達目的地。下文介紹的標籤-機率混合貝葉斯模型將分析並試圖解決上述2個問題。
3.特徵分析
可以將軌跡分類相關特徵劃分為5類。分別是:
-
軌跡概況特徵集,包括軌跡耗時、軌跡長度、軌跡開始時間等。
-
速度相關特徵集,包括最大速度、平均速度、速度標準差等。
-
時間相關特徵集,包括道路末端等待紅燈時間,調頭時間,左轉時間等。
-
行為相關特徵集,包括調頭行為,往復活動,左轉減右轉時間等。
-
使用者畫像特徵集,包括使用者職業、有車機率。
下面以軌跡開始時間特徵為例,解釋該特徵的物理意義。其機率密度函式如下所示(drv,汽車;byc,腳踏車;wlk,步行):
早晨(5:00~10:00)汽車軌跡機率較高,可能是早高峰導致。
午時(11:00~13:00)腳踏車軌跡機率較高,可能是由於外賣送餐。
傍晚(17:00~20:00)步行、腳踏車機率均較高,可能是由於下班散步以及外賣送餐。
4.貝葉斯模型的機率分佈視角
選擇基於貝葉斯分類器進行改進的原因如下:
-
貝葉斯分類器屬於生成模型,依賴於條件機率密度函式,具有明確的統計學意義。此外,如前面提到的條件機率圖示,透過觀察不同軌跡、標籤的機率密度函式,能夠逐個分析、說明特徵的有效性。
-
貝葉斯分類器可以表示為:
-
透過增添、刪減、改動特徵的機率密度函式,可以快速完成貝葉斯分類器的迭代改進。並且相較於決策樹,貝葉斯分類器不會對某一個特徵的變動過於敏感。
-
貝葉斯分類器最終輸出為機率值,可以作為置信度。
4.1 標籤-機率混合貝葉斯模型
當前軌跡分類問題為樣本不平衡(Data Unbalanced)標籤不準確(Noisy Label)問題。
Tanaka等人基於卷積神經網路提出了偽標籤損失函式,透過交叉熵損失函式與偽標籤損失函式的迭代最佳化完成了錯誤標籤的修正[2]。受此啟發,貝葉斯模型同樣能夠建立偽標籤損失函式完成樣本清洗。
我們基於貝葉斯分類器的分類結果,提出基於偽標籤極大似然估計的偽標籤損失函式,完成錯誤樣本清洗,再迭代完成貝葉斯分類。該模型的迭代流程如下圖所示。
標籤-機率混合最佳化貝葉斯模型迭代流程。
4.2 聯合機率密度函式計算
由於貝葉斯分類器假設各變數相互獨立,因此不可避免的會對一些場景下的樣本產生錯誤預測。例如,外賣騎手以及快遞員應當被判定為非機動車。這種型別軌跡長度可能較長(超過10公里),最大速度適中(小於50公里每小時)。在假設行駛距離與最大速兩個特徵相互獨立的情況下,容易錯誤地把外賣騎手以及快遞員的行駛軌跡判定為汽車。
腳踏車軌跡行駛距離以及最大速度聯合機率密度函式
汽車軌跡行駛距離以及最大速度聯合機率密度函式
但是,行駛距離與最大速兩個維度的特徵並不相互獨立。上圖構建了針對汽車軌跡這兩個維度的聯合機率密度函式,可以發現,對汽車軌跡而言,行駛距離越長,最大速可能越高,當汽車行駛距離超過10公里時,其最大速度小於50公里每小時的可能性很低。因此,透過構建行駛距離與最大速度兩個維度的聯合機率密度函式,替換兩個獨立機率的相乘,可以幫助解決長距離非機動車軌跡被誤判為汽車的問題。
4.3 基於貝葉斯的軌跡分類實驗結果
評測團隊抽樣約100條資料並人工標記真值。最終模型分類效果如表所示。
5.深度學習模型的影像編碼視角
由於軌跡資料缺少原始真值,我們將使用者導航模式作為軌跡分類的偽標籤。例如當時使用者採用汽車導航,其軌跡對應的標籤即為汽車。本次基於深度學習的探索不考慮標籤噪聲的問題。
5.1 軌跡資訊的兩種觀察方式
深度學習的優勢在於能夠從原始資料中學習到有效資訊,無需人工挖掘特徵。針對軌跡資料的特點,存在兩種觀察軌跡的方式,分別是時間序列與空間分佈。
時間序列:軌跡當中的GPS點資料隨時間推移依次上傳至資料庫中。軌跡資料天然具備時間序列屬性。因此,可以採用TCN或RNN構建模型,學習軌跡中的時間序列資訊,完成軌跡分類。
空間分佈:將軌跡資料繪製在地圖中,則軌跡構成圖片中的一條線。如果能夠將速度、方向、等待時間編碼到線的顏色當中,則能夠採用CNN從軌跡影像中學習到有效資訊[3]。
圖左側大機率為快遞員軌跡,圖右側大機率為汽車軌跡。GPS點的空間分佈能夠為軌跡分類提供有效資訊。因此,我們採用空間分佈模式構建模型,探索基於深度學習的軌跡分類。
軌跡顏色編碼:從GPS點中獲取的主要資訊為速度、方向、等待時長。將這3個維度的資訊進行軌跡顏色編碼有2種方式,分別是RGB編碼與HSV編碼。其中HSV即色相(Hue)、飽和度(Saturation)、亮度(Value)。
由於方向資訊為0~360度的角度值,與HSV色彩空間種的色相H完全一致。因此,本文采用HSV色彩空間對速度、方向、等待時長進行編碼,編碼方式為速度:V,方向:H,時長:S。編碼後將軌跡縮放為256×256的圖片。對地圖軌跡的編碼結果如下圖所示。
5.2 雙流神經網路模型
基於編碼生成的軌跡圖片依然缺失一些重要資訊,包括將軌跡縮放至256×256圖片的縮放因子,以及GPS點所在的位置。可以將軌跡匹配結果中透過國道、省道、城市快速路等不同型別道路的比例構造出特徵集表徵GPS點所在的位置資訊,加入縮放因子構造一個一維靜態特徵向量。
將卷積神經網路學習到的特徵向量以及該一維特徵向量合併,最終透過全連線層完成軌跡分類。最終卷積神經網路選擇ResNet50結構。
5.3 基於深度學習的軌跡分類實驗結果
評測團隊抽樣約100個樣本,人工標記真值。
如上表所示,以人工標記標籤為真值驗證深度學習模型,深度學習模型能夠取得有效的軌跡分類精度,但是最終分類效果弱於提出的貝葉斯模型。可能的原因有如下幾點:
-
ResNet50並不是學習軌跡影像的最優模型。
-
僅採用8月17日的樣本訓練模型,樣本多樣性不足。
-
所選擇的特殊場景樣本分佈與深度學習中的訓練集樣本分佈差異巨大。
6.小結
軌跡分類對於準確及時地挖掘道路封閉事件具有重要意義。本文從給予機率密度分佈的貝葉斯模型視角與基於軌跡點影像編碼的深度學習視角分別探索了軌跡分類可能的技術方案。未來軌跡分類模型還可以從聚焦應用場景,最佳化應用以及擴充上游資料,最佳化特徵兩個方面進行改進。
參考文獻
[1].Frénay B, Verleysen M. Classification in the presence of label noise: a survey[J]. IEEE transactions on neural networks and learning systems, 2013, 25(5): 845-869.
[2].Tanaka D, Ikami D, Yamasaki T, et al. Joint optimization framework for learning with noisy labels[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 5552-5560.
[3].Liu Y, Wang X, You W. Non-intrusive Load Monitoring by Voltage-Current Trajectory Enabled Transfer Learning[J]. IEEE Transactions on Smart Grid, 2018.
招聘
阿里巴巴高德地圖線上引擎和安全運維中心團隊長期招聘機器學習演算法、C++、Java 資深工程師/技術專家/高階專家,職位地點:北京。歡迎投遞簡歷到 gdtech@alibaba-inc.com,郵件主題為:姓名-應聘團隊-應聘方向。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69941357/viewspace-2727414/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 高德地圖首席科學家任小楓:視覺智慧在高德地圖的應用地圖視覺
- 【高德地圖SDK】如何實現軌跡平滑移動?地圖
- vue 高德地圖實現進度條軌跡回放Vue地圖
- web技術分享| 【高德地圖】實現自定義的軌跡回放Web地圖
- 高德地圖和google地圖適配地圖Go
- 機器學習在高德起點抓路中的應用實踐機器學習
- 高德地圖app怎麼使用北斗地圖? 高德地圖設定北斗地圖的教程地圖APP
- 在Vue中使用高德地圖APIVue地圖API
- 文字圖Tranformer在文字分類中的應用ORM文字分類
- swift 類似高德地圖和58同城上下滑動viewSwift地圖View
- 高德PC地圖啟用新域名地圖
- Flutter整合高德定位和地圖功能Flutter地圖
- 機器學習在交通標誌檢測與精細分類中的應用機器學習
- 高德地圖之地圖的屬性地圖
- 高德地圖之地圖的生命週期地圖
- 使用flutter_map計算相應的高德地圖zoom值與地圖的centerFlutter地圖OOM
- 高德地圖導航和路徑規劃地圖
- 高德地圖定位實現地圖
- CocoaPods 操作高德地圖地圖
- 高德地圖警告解決地圖
- 高德在提升定位精度方面的探索和實踐
- 【高德地圖API】如何製作自己的旅遊地圖?地圖API
- 高德地圖的四處進擊地圖
- 自動駕駛中高精地圖的大規模生產:視覺慣導技術在高德的應用自動駕駛地圖視覺
- android ---------高德地圖實現定位和3D地圖顯示Android地圖3D
- 圖資料庫在主機安全的應用探索資料庫
- 機器學習 | 詳解GBDT在分類場景中的應用原理與公式推導機器學習公式
- 百度地圖軌跡(Andriod SDK)地圖
- 圖解機器學習:神經網路和 TensorFlow 的文字分類圖解機器學習神經網路文字分類
- 高德地圖未來行程規劃在哪裡? 高德地圖預設出行時間的技巧教程地圖行程
- 高德地圖開發彙總地圖
- 高德地圖--水波雷達動畫地圖動畫
- 【高德地圖API】從零開始學高德JS API(一)地圖展現——仙劍地圖,麻點圖,街景,室內圖地圖APIJS
- react中使用高德地圖的原生APIReact地圖API
- 對接高德地圖API的總結地圖API
- 高德地圖api標記點和線段重合點選響應問題地圖API
- AI在愛奇藝商業廣告中的應用和探索AI
- 5分鐘學會物流軌跡地圖API嵌入到頁面中,實現物流軌跡視覺化地圖API視覺化