天天看點

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

高德地圖聯合阿裡雲天池平台舉辦的AMAP-TECH算法大賽已經落幕。本次大賽以“基于車載視訊圖像的動态路況分析”為賽題,賽題來源于高德真實的業務場景。路況資訊不僅影響使用者選擇出行路線、出行方式、預估到達的時間,對于交通管理部門和城市規劃部門也有重要的價值。

相關内容

來自15個國家和地區的880支戰隊經過數輪激烈角逐後,五強戰隊殺入決賽。最終,1996年出生的北京郵電大學博士三年級學生朱奕達帶領的“會飛的豬”戰隊奪得冠軍。

我們将把五強戰隊的解題思路和方案分享給大家,本次要分享的是冠軍戰隊的技術方案。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

高德地圖技術委員會主席聰雲為獲獎團隊頒獎

賽題分析

本次大賽的賽題是通過車載攝像頭拍攝的視訊圖像來對道路路況狀态進行判斷。評價名額為權重F1。初賽部分是一個三分類問題,包含擁擠,緩行,暢通三種道路路況。而到了複賽部分新增了封閉的道路路況。

賽題的難點在初賽部分中包括以下幾點,前車遮擋視野内道路情況,進而影響對道路的判斷;對向車道和路邊車輛對行駛車道的影響;資料衆包導緻相機安裝存在角度偏差,進而導緻圖像角度不一緻。

複賽部分賽方進一步提高了難度,首先移除了GPS時間資訊,此外封閉路況的增加使得圖檔中道路資訊更加複雜,對模型的識别能力和魯棒性有了更高的要求。

算法架構

首先,宏觀介紹一下初賽與複賽的方案設計。

初賽:特征工程+LGB

分車道目标檢測

初賽中使用的兩種方案,第一種是基于分車道車輛目标檢測結果進行特征工程後使用LGB模型分類,我們的目标檢測使用的是Faster RCNN模型。

初賽時,确定了資料集之後,我們在資料處理部分做了兩部分的工作,在初賽的是目标檢測部分,針對前方車輛遮擋,對向車道和周邊停車路況的難點,我們提出分車道車輛目标檢測的思路,将道路車輛分成5個類别進行标注,分别是:目前車輛前方行駛車道車輛,同向行駛車道左側車輛,同向行駛車道右側車輛,對向車道行駛車輛,街邊側向停車車輛。通過這樣的标注對目前道路環境的車輛進行細緻區分,後續将通過目标檢測結果提取不同車道的車輛資訊特征。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

我們基于目标檢測模型結果提取了60維特征,其中包含GPS時間特征,key_frame中不同行駛車道車輛數目,面積,距離等特征,不同幀之間的檢測框動态特征比如車輛相似度比對,數目,面積變化等特征。下式為檢測框中心點計算方式:

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

下式為距離計算公式:

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

對于動态特征,我們還分車道人為設計了兩個權重算式:

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

box數量與時間間隔關系:數量增加(變化率為正)分數降低,數量減少(變化率為負)分數增加

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

box大小變化與時間間隔關系:大小增加(變化率為正)分數降低,大小減少(變化率為負)分數增加。

最後,在LGB分類模型中引入Focal Loss損失函數處理樣本不平衡問題,這個方案在初賽A榜中取得了第6名的成績。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

在切換到初賽B榜時,GPS時間特征出現了和A榜特征分布不一緻的問題,這使得很多團隊都翻車了,我們一開始考慮到這個問題時,下圖為我們利用violin對A/B榜的GPS特征與目标檢測框特征的分布對比。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

同時,也訓練了隻利用車輛相關特征的LGB模型,這個模型在B榜上的分數為0.6108。我們可以看到基于目标檢測和特征工程的方案在A/B榜上差距很大。

DenseNet

我們當初在設計解決方案時,考慮到道路情況不止和車輛資訊有關,還和道路及場景相關,考慮到基于分車道目标檢測模型隻對圖像中的車道資訊進行提取,而忽略了圖檔中的其他場景細節。并且目标檢測模型本身存在一些誤差,将目标檢測結果特征再訓練一個LGB模型可能會對誤差進行傳遞,我們将思路轉移到基于端到端分類模型的方案,我們的想法是訓練一個考慮圖檔中全局資訊的序列檢測模型。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

我們的圖檔輸入視窗大小是3,采用基于DenseNet121先對每張圖檔提取全局特征後,将圖檔特征按照時間順序輸入到GRU模型中得到最後的分類結果,在初賽中B榜上我們并沒有使用資料增強的方法,最後取得了第一名的成績0.6614。

複賽

我們團隊的方案亮點在以下幾點:

  • 端到端分類網絡;
  • 滑動視窗+資料擴充;
  • 資料增強;
  • 多模型融合。

資料分析與預處理

首先,我們先将建構線下訓練集和驗證集,建構合理的驗證集更容易使我們線上下對模型進行完善。賽方給出的資料中包含一些重複采樣的視訊序列(如:id:1540 與 1761),是以我們使用Hash編碼對重複的圖檔進行檢測,過濾掉重複的圖檔序列。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

我們發現大部分重複的序列都是封閉類型的圖檔,而封閉類型本身在F1評價名額中占據很大的權重。如果不對這些重複采樣的視訊序列去重,很容易使得線下存在資料洩露導緻線上線下分數差距很大。我們将去重的資料按照4:1的比例線上下建構交叉訓練的資料集。

資料擴充與增強

賽題方在給出的複賽訓練資料中不同類别的圖像序列存在資料不均衡的問題,緩行隻有100多個序列,而封閉路段有2000多個序列。針對類别數量的差異性,我們對緩行和擁堵類别做了資料擴充。因為我們是對序列模組化,每個序列的原始觀測包含3到5張圖檔,我們按照采樣順序選擇3張圖檔作為之後模型的輸入。這樣的選擇可以帶來的好處:

  1. 我們對齊了模型的輸入,保證了每個樣本都是可用的。
  2. 在缺少了GPS時間資訊後,我們并不知道每兩幀圖檔之間的時間差,從5張圖檔中随機選擇3張能夠最大限度豐富道路随時間變化的情況。
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

直接将原始序列圖檔輸入到模型中,很容易過拟合。為了提高資料的多樣性,在複賽時我們上了資料增強的方法,首先要說明的是因為我們的圖像是從視訊序列采樣得到的,是以在對同一個序列中的圖檔,我們對每一幀圖像都做了相同的資料變化,保證序列圖檔所處的相對環境是一緻的。這樣的話在使用序列模型時,使其輸入更符合實際情況。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
  • 針對相機安裝存在角度偏差的問題,我們使用了平移,尺度加旋轉變換的資料增強方法。
  • 考慮到視訊在采集時包含了一天中的不同時間節點,光照強度和天氣條件也對我們的圖檔造成了較大的影響, 我們加入了對比度,亮度和顔色增強的方法盡可能貼合實際資料。
  • 從賽方給的資料中我們發現圖檔的清晰度和品質在不同序列之間存在差異,為此我們引入了運動模糊,中值濾波,高斯濾波,高斯模糊等方法進行資料增強。
  • 此外圖像中還存在一些脫敏資訊,比如馬賽克或者黑色條,我們也引入了一些cutof操作,減少模型對圖像特定部分的依賴。
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

算法設計:時空特征提取

在複賽中,賽題發生了變化,新增了封閉這個類别後,基于特征的方案中需要根據障礙物标注進一步提高目标檢測模型的魯棒性,而實際障礙物标注資料品質并不高,在當時嘗試模組化後發現效果并不如意。

為了減少誤差的傳遞并考慮圖檔中更多的資訊,我們将優化目标放在了端到端序列檢測模型上,提取了不同frame的特征後,我們使用特征融合子產品挖掘圖檔序列之間的時序特征關系。

在特征融合子產品中我們仍然使用雙向GRU模型挖掘時間序列特征。首先将backbone替換成resnest101和SE_ResNext,在空間特征挖掘中,使用了位置注意力子產品和通道注意力子產品的雙注意力網絡。通道注意力子產品校準序列圖檔中的特征圖通道之間的關系,位置注意力子產品對特征圖中不同position進行關系強度的計算,進而挖掘序列圖檔中的局部關系變化和全局關系變化。

對于端到端序列分類模型,我們采用了之前所說的資料增強和樣本擴充的方法後進行5折交叉驗證的訓練。最後選擇了5個模型進行基于機率的融合。我們的方案最後在B榜上得到了第二名的成績0.7237,比第一名低了萬分之9個點。

模型落地與展望

在實際場景下,不僅僅有圖檔序列資訊,還有道路等級資料,GPS時間,POI點等資訊,我們的模型具備較強的擴充性,可以将這些路網和時間資訊通過embedding等方式處理成相應的特征融合到我們的模型中,更豐富的感覺源豐富了我們的時空資訊特征空間。

除此之外,我們可以不斷優化障礙物和車輛目标檢測模型識别精度,進而制定更多的限制規則進行前處理和後處理的規則限制。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望
高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

在模型落地時,可以通過模型蒸餾、優化加速等方式将模型下放到邊緣節點進行分布式計算。交通路況狀态在局部區域是互相影響的,是以我們還可以根據路網資訊對城市進行栅格化處理,将衆包得到的資料分栅格進行管理,這樣我們可以得到該路段資訊的臨近路況輔助修正模型結果。

高德算法大賽冠軍戰隊經驗分享:端到端分類網絡、多模型融合...賽題分析算法架構模型落地與展望

繼續閱讀