論文閱讀_Cross-Modal Contrastive Learning of Representations for Navigation using Lightweight, Low-Cost Millimeter Wave Radar for Adverse Environmental Conditions_RA-L2021

Z.H. Shen
馬鈴薯獵人的狂想曲
11 min readMay 2, 2022
  • Deep reinforcement learning(RL) 是透過 Agent 從錯誤中學習,已成功的應用至許多不同的任務上。
  • 在無人車的預防碰撞任務上,利用 Deep RL 從不同的資料,如 Colored images、Depth images、LiDAR point clouds,而不使用傳統的 Map–localize–plan approaches,然而這些方法依賴於相機或光達,在不利的環境下,如煙霧環境,會陰能見度降低,導致性能下降。
  • 因 mmWave 具有輕量化及便宜的兩個優點,作者提出使用單個 mmWave radar 來使用於 Learning-based autonomous navigation,但 mmWave radar signal 經常是 Noisy 和 Sparse,所以提出 Cross-modal contrastive learning for representation(CM-CLR) method,在訓練階段使 mmWave radar data 和 LiDAR data 的一致性最大化。
  • 藉由現實世界中的機器人使用下面兩個方法進行 Evaluate:
  1. 使用兩個不同的網路,一為 RL 的策略,另一為使用 Cross-modal generative reconstruction。
  2. 僅使用 RL 的策略,而不使用 Cross-modal generative reconstruction,並以此為 Baseline。
  • 作者提出的 end-to-end deep RL policy with contrastive learning 成功地引導機器人走出充滿迷霧的迷宮環境,與 Generative reconstruction methods 相比,取得更好的性能,因為它產生出 Noisy artifact walls or obstacles。

Contributions

  1. 展示 CM-CLR 如何被用來使得 mmWave data 和 LiDAR data 一致性最大化。這是將 Contrastive loss 引入到網路中,並制定一種訓練方法,以便使得 Forward propagation 期間實現 mmWave 和 LiDAR 表示的一致性,LiDAR 數據包括走廊、開放區域和停車場,所有 LiDAR 數據僅用於訓練。
  2. 證明了具有跨模態表示的 Deep RL,可以用於導航。從對比學習中獲得的表面特徵,被整合到一個 End-to-end 的 Deep RL 網路層中,證明在煙霧繚繞的迷宮環境中,僅靠 mmWave data input 就能夠實現導航。
  3. 在真實世界中,煙霧瀰漫的環境進行評估,評估了 End-to-end 對比學習方法和深度生成模型,生成類似 LiDAR 的數據,作為基於 RL 的深度控制策略網路的輸入。使用條件生成對抗網路(cGAN) 和 (Variational Auto-Encoder)VAEs,其中 mmWave data input 被用來重建密集的 LiDAR 測距數據。表明了通過作者所提出的方法實現導航可以更好的避開障礙物,並可對車輛被困住的情況作出反應。

Deep reinforcement learning 中的 Cross-modal contrastive learning

A. Pre-processing

mmWave 和 LiDAR 的投射皆為 FOV 240 度的 2D 平面,解析度為 1 度。

  • mmWave 收資料的頻率為 15 Hz,為了增加 Feature,累積 5 frame 為一個 frame,使頻率降為 10 Hz。
  • 為了移除 mmWave outlier data 加上 Filter,只保留在 1.2m 內有三個 point 的毫米波點雲資料。
  • 加上 Filter 後,可能會造能 Missing value,所以利用最大 5m 內的 Data 去 Padding,來確保 mmWave data 有足夠的 Input。

B. Contrastive Learning

  • 因在導航任務上,mmWave 資料相對於 LiDAR 過於 Noisy 和 Sparse,所以引入 Contrastive learning,藉由 Tuning of a trainable encoder with contrastive loss,來使得 mmWave 資料與 LiDAR 資料有最大的一致性,直觀的說,這樣就可直接從 mmWave 來學習導航任務上的控制策略。
  • 因僅用真實世界的資料做訓練,會缺乏錯誤案例(撞牆),導致 Agent 與障礙物的碰撞機率很高,在 Contrastive learning 中,Agemt 可以透過不同形式的 Data augmentation 和 Contrastive loss,學習到高維輸入的表示式。

C. Learning Using LiDAR Data for Navigation in a Virtual Subterranean Environment

  • 首先目標是利用 RL 訓練 Agent 於具有長廊、隧道和洞穴的 Virtual Subterranean Environment 的導航任務上,獎勵 Agent 前進的同時,避免發生碰撞,高角速度會導致獎勵降低,用以避免發生急轉彎,除非前方沒有路可走,模型應用於低水平平面。
  • 使用 Gazebo simulation software 來創造出多樣化的環境,例如有障礙物和懸崖的人工隧道、地鐵站和自然洞穴,並且整合 OpenAI Gym 的環境到 Gazebo 中,設置和規則如下:
  • >>>Observation:模擬三維 LiDAR 輸入的觀測空間中,擷取 -120 到 120 度範圍的資料,解析度為 1 度的點雲資料,共有 241 個數值,藉由比較與前個時間的點雲資料,Agent 也同時提供運動方向(x_p),為二維資料,O 為結合 x_l 和 x_p 為 243 維資料。
  • >>>Action:用線性和角速度的連續空間來表示動作,線性速度空間被標準化為 [0, 1];角速度空間被標準化為 [-1, 1]。
  • >>>Reward:為鼓勵 Agent 不間斷的進行導航任務,有三種獎勵機制,一為 r_action,鼓勵 Agent 直線移動,二為 r_move,鼓勵 Agent 連續移動,三為 r_collision,降低 Agent 與障礙物發生碰撞;Reward value 送至 Agent 前會經過一個 log scale,為 r_agent = sign(r) × log(1 + |r|)。
  • 使用 DDPG(用於處理高維連續動作) 和 RDPG algorithm 來訓練防撞策略,並在 Gazebo 的虛擬環境中收集資料,神經網路結構包括用 Minimum pooling for downsampling the inputs、2 個 FC layer、1 個 Recurrent layer with an LSTM cell 和1 個 FC layer 來產生動作輸出。
  • 訓練使用 Intel i7–8700 CPU + Nvidia RTX2070 GPU 跑了 55 小時,共 4 million 個步驟。

D. Navigation With Policy From Contrastive Learning

  • 為了去計算 Contrastive loss,將原始的 RL network 分為 Feature extraction network (Convolution layer 組成)和 Decision-making network (FC layer+recurrent layer 所組成)
  • 使用 Contrastive learning 的目的是最大限度的提高 mmWave input 和 Ground-truth LiDAR input 的 encoded representations 之間的匹配程度,這樣做的目的是為了讓 mmWave input 在 Decision-making network 中所使用,而 Contrastive learning 中的 Key encoder(以 LiDAR 為 input),q_L(k|x_l)和 Query encoder(以 mmWave為 input),q_mm(q|x_m) 被設計為 Feature extraction network。
  • 在 CURL 中,Bilinear inner product with a momentum key encoder 被用來訓練 Contrastive loss,但因為已經在 Gazebo 模擬過程中已經用 RL 訓練過了,所以使用固定的 key encoder,利用歐式距離來衡量 k 和 q 之間的相似程度。
  • 利用收集過來的資料進行訓練網路,進行 20 個 epochs 的訓練,來防止過度擬合,訓練過後的 mmWave control policy,pi_con 在真實世界中做評估。

GENERATIVE RECONSTRUCTION BASELINES

  • 因為 See Through Smoke 這篇論文有著 Promising results,作者將 mmWave 生成式的重建為 LiDAR-like data 作為關鍵的 Baseline,並運用了兩個 SOTA 的 Supervised deep generative models 作為導航任務中的控制策略互相結合。

A. Conditional Generative Adversarial Network for Range Data

  • 一個 cGAN 包含一個 Generator,G 和 Discriminator,D;在給定的 mmWave data,x_m 和一個隨機向量作為輸入,Generator 會試圖生成更清晰且密集的雷達點數據 y,與 Ground-truth LiDAR 的 x_l 相似,Discriminator 會去試圖判別資料為真實的 LiDAR 資料或是 Generator 所產生出來的 y。
  • 為了使從 mmWave 生成的數據與 LiDAR 更相似,所以調整了 L1 loss。
  • 作者將 Generator 設計成一個 Encoder-Decoder 的結構,Encoder 具有與 Deep RL 網路相同的卷積特徵提取架構,對於 Decoder 使用 3 個 deconvolution layers 和 1 個 FC layer 來調整輸出的維度。
  • 對於 Discriminator 使用 Markovian discriminator technique ,在 pix2pix 中也被稱為 patchGAN,patchGAN 有四層一維卷積來進行特徵提取,輸出是一個 1*14 的 Patch。
  • 作者也測試了一個 Nonpatched discriminator,輸出是一個單一的值來鑑別真實物體或偽造物體,並且發現 Nonpatched discriminator 的結果優於 L1 performance。

B. Variational Autoencoder

  • 除了cGAN,我們還使用類似的網絡結構來訓練VAE[27],它包括一個概率編碼器q(z|m)和一個生成模型p(l|z),其中z是潛變量,從編碼器的輸出中採樣。
  • VAE的目標函數是最小化對數似然的變異下限。在[28]中,目標函數被解釋為對不同數據模式的概率的考慮。
  • 在我們的案例中,目標函數如下。

Evaluate

--

--