首頁  >  文章  >  科技週邊  >  新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

WBOY
WBOY轉載
2023-10-11 12:57:041098瀏覽

本文經自動駕駛之心公眾號授權轉載,轉載請聯絡來源。

筆者的個人思考

端對端是今年非常火的一個方向,今年的CVPR best paper也頒給了UniAD,但端到端同樣也存在很多問題,例如可解釋性不高、訓練難收斂等等,領域的一些學者開始逐漸把注意力轉到端到端的可解釋性上,今天為大家分享端到端可解釋性的最新工作ADAPT,該方法基於Transformer架構,透過多任務聯合訓練的方式端到端地輸出車輛動作描述及每個決策的推理。筆者對ADAPT的一些思考如下:

  1. 這裡是用視頻的2D 的feature來做的預測, 有可能把2D feature轉化為bev feature之後效果會更好.
  2. 與LLM結合效果可能會更好, 例如Text Generation那部分換成LLM.
  3. 目前這個工作是拿歷史的影片作為輸入, 預測的action及其描述也是歷史的, 如果改成預測將來的action以及action對應的原因的話可能更有意義.
  4. image token化那塊兒得到的  token 有點兒多,可能有很多沒有用的信息,或許可以試試Token-Learner.

出發點是什麼?

端到端自動駕駛在交通產業中具有巨大潛力,而且目前對這方面的研究比較火熱。像CVPR2023的best paper UniAD 做的就是端到端的自動駕駛。但是, 自動決策過程缺乏透明度和可解釋性會阻礙它的發展, 畢竟實車上路,是要安全第一的。早期已經有一些嘗試使用 attention map 圖或 cost volume 來提高模型的可解釋性,但這些方式很難理解。那麼這篇工作的出發點,就是尋求好理解的方式來解釋決策。下圖是幾種方式的對比, 顯然用語言表達更容易理解。

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

ADAPT有什麼優勢?

  1. 能夠端對端地輸出車輛動作描述及每個決策的推理;
  2. 該方法基於transformer的網路結構, 透過multi-task的方式進行聯合訓練;
  3. 在BDD-X(Berkeley DeepDrive eXplanation) 資料集上達到了SOTA的效果;
  4. 為了驗證該系統在真實場景中的有效性, 建立了一套可部署的系統, 這套系統能夠輸入原始的視訊, 即時地輸出動作的描述及推理;

#效果展示

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

看效果還是非常不錯的, 尤其是第三個黑夜的場景, 紅綠燈都注意到了。

目前領域的進展

Video Captioning

影片描述的主要目標是用自然語言描述給定影片的對象及其關係。早期的研究工作透過在固定模板中填充識別的元素來產生具有特定句法結構的句子,這些模板不靈活且缺乏豐富性。

為了產生具有靈活句法結構的自然句子,一些方法採用序列學習的技術。具體而言,這些方法使用視訊編碼器來提取特徵,並使用語言解碼器來學習視覺文字對齊。為了使描述更加豐富,這些方法還利用物件層級的表示來獲取影片中詳細的物件感知互動特徵

雖然現有的架構在一般video captioning 方向取得了有一定的結果,但它不能直接應用於動作表示,因為簡單地將影片描述轉移到自動駕駛動作表示會丟失一些關鍵訊息,例如車輛速度等,而這些對於自動駕駛任務來說至關重要。如何有效地利用這些多模態資訊來產生句子目前仍在探索中。 PaLM-E 在多模態句子這塊兒是個不錯的工作。

端對端自動駕駛

Learning-based 的自動駕駛是一個活躍的研究領域。最近CVPR2023 的best-paper UniAD, 包括後面的 FusionAD, 以及Wayve的基於World model的工作 MILE 等都是這個方向的工作。輸出地形式有出軌跡點的,像UniAD, 也有直接出車輛的action的, 像MILE。

此外,一些方法對車輛、騎自行車者或行人等交通參與者的未來行為進行建模,以預測車輛的路徑點,而另一些方法則直接根據感測器輸入來預測車輛的控制訊號,類似於這個工作中的控制訊號預測子任務

自动驾驶的可解释性

在自动驾驶领域中,大部分可解释性的方法都是基于视觉的,还有一些是基于LiDAR的工作。一些方法利用注意力图来过滤掉不显著的图像区域,使得自动驾驶车辆的行为看起来合理且可解释。然而,注意力图可能会包含一些不太重要的区域。还有一些方法使用激光雷达和高精度地图作为输入,预测其他交通参与者的边界框,并利用成本体来解释决策推理过程。此外,还有一种方法通过分割来构建在线地图,以减少对高清地图的依赖。尽管基于视觉或激光雷达的方法可以提供良好的结果,但缺乏语言解释使得整个系统看起来复杂且难以理解。一项研究首次探索了自动驾驶车辆的文本解释可能性,通过离线提取视频特征来预测控制信号,并进行视频描述的任务

自动驾驶中的Multi-task learning

这个端到端的框架采用多任务学习,用文本生成和预测控制信号这两个任务来联合训练模型。多任务学习在自动驾驶中用的非常多。由于更好的数据利用和共享特征,不同任务的联合训练提高了各个任务的性能,因此这个工作中, 采用的是控制信号预测和文本生成这两个任务的联合训练。

ADAPT方法

以下是网络结构图:

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

整个结构被分成了两个任务:

  1. Driving Caption Generation(DCG): 输入videos, 输出两个句子, 第一句描述自车的action,第二句描述采取这个action的推理, 比如 "The car is accelerating, because the traffic lights turn green."
  2. Control Signal Prediction(CSP) : 输入相同的videos, 输出一串控制信号, 比如速度,方向, 加速度.

其中, DCG和CSP两个任务是共享 Video Encoder, 只是采用不同的prediction heads来产生不同的最终输出。

对于 DCG 任务, 是用 vision-language transformer encoder产生两个自然语言的句子。

针对CSP任务,使用运动转换编码器来预测控制信号的序列

Video Encoder

这里采用的是 Video Swin Transformer 将输入的video frames 转为 video feature tokens。

输入  桢 image, shape 为 , 出来的feature的size 是 , 这里的  是channel的维度.

Prediction Heads

Text Generation Head

上面这个feature  , 经过token化得到  个 维度为  的video token, 然后经过一个MLP 调整维度与 text tokens的embedding对齐, 之后将 text tokens和 video tokens 一起喂给 vision-language transformer encoder, 产生动作描述和推理。

Control Signal Prediction Head

和输入的 桢video 对应着的 有 控制信号 , CSP head的输出是 , 这里每一个控制信号不一定是一维的, 可以是多维的, 比如同时包括速度,加速度,方向等。这里的做法是 把video features token化了之后, 经过motion transformer 产生一串输出信号, loss 函数是MSE,

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

需要注意的是,在这里并没有包含第一帧,因为第一帧提供的动态信息太少了

Joint Training

在这个框架中, 因为共享的video encoder, 因此其实是假设CSP和DCG这两个任务在 video representation的层面上是对齐的。出发点是动作描述和控制信号都是车辆细粒度动作的不同表达形式,动作推理解释主要关注影响车辆动作的驾驶环境。

采用联合训练的方式进行训练

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

需要注意的是, 虽然是联合训练地,但是推理的时候,却可以独立执行, CSP任务很好理解, 根据流程图直接输入视频,输出控制信号即可, 对于DCG任务, 直接输入视频, 输出描述和推理, Text 的产生是基于自回归的方式一个单词一个单词的产生, 从[CLS]开始, 结束于 [SEP]或者是达到了长度阈值。

實驗設計與比較

資料集

#使用的資料集是 BDD-X, 這個資料集包含了7000段成對的視訊和控制訊號。每段影片大約40s, 影像的大小是 , 頻率是 FPS, 每個video都有1到5種車輛的行為,例如加速,右轉,並線。所有這些行為都有文字註釋,包括動作敘述(例如,「汽車停下來」)和推理(例如,「因為交通燈是紅色的」)。總共大約有 29000 個行為註釋對。

具體實作細節

  1. video swin transformer 在Kinetics-600 上面預訓練過
  2. vision-language transformer 和motion transformer是隨機初始化的
  3. 沒有固定video swin 的參數, 所以整個是端到端訓練的
  4. 輸入的視頻楨大小經過resize和crop, 最終輸入網絡的是224x224
  5. #對於描述和推理,用的是WordPiece embeddings [75] 而不是整個words,  (e.g., ”stops” is cut to ”stop” and ”#s”), 每個句子的最大長度是15
  6. 訓練的時候對於masked language modeling 會隨機mask掉50%的tokens, 每個mask的token 有80%的機率會成為【MASK】這個token, 有10%的機率會隨機選擇一個word, 剩下的10%的機率保持不變。
  7. 用的是AdamW 的優化器, 並且在前10%的訓練steps中, 有warm-up的機制
  8. 用4個V100的GPU大約要訓練13個小時

合併訓練的影響

這裡比較了三個實驗說明了聯合訓練的有效性.

#Single

#指的是把CSP任務移掉,只保留著DCG的任務, 相當於只訓captioning 模型.

Single

儘管CSP的任務仍然不存在,但在輸入DCG模組時,除了視訊標記之外,還需要輸入控制訊號標記

效果對比如下

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

#相比只有DCG任務,ADAPT的Reasoning效果明顯更好。雖然有控制訊號輸入時效果有提升,但仍不如加入CSP任務的效果好。加入CSP任務後,對影片的表示和理解能力更強

另外下面這個表格也說明了聯合訓練對於CSP的效果也是有提升的.

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

這裡  可以理解為精確度, 這樣會把預測的控制訊號做一個截斷,公式如下

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

不同型別控制訊號的影響

在實驗中,使用的基礎訊號有速度和航向。然而,實驗發現,當只使用其中任何一個訊號時,效果都不如同時使用兩個訊號的效果好,具體數據如下表所示:

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

##這表明速度和方向這兩個訊號可以幫助網路更好地學習動作描述和推理

動作描述與推理之間的交互

與一般描述任務相比,駕駛描述任務產生是兩個句子,即動作描述和推理。透過下表可以發現:

    第1,3行說明使用cross attention效果要更好一些, 這也好理解, 基於描述來做推理有利於模型的訓練;
  1. 第2,3行說明交換推理和描述的順序也會掉點, 這說明了推理是依賴於描述的;
  2. 後面三行對比來看, 只輸出描述和只輸出推理都不如二者都輸出的時候效果好;

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

#Sampling Rates 的影響##這個結果是可以猜到的, 使用的幀越多,結果越好,但是對應的速度也會變慢, 如下表所示

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索

新標題:ADAPT:端到端自動駕駛可解釋性的初步探索需要重寫的內容是:原文連結:https://mp.weixin.qq.com/s/MSTyr4ksh0TOqTdQ2WnSeQ

以上是新標題:ADAPT:端到端自動駕駛可解釋性的初步探索的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除