1. 程式人生 > >D-GAN:Autonomous Driving using Generative Adersarial Networks

D-GAN:Autonomous Driving using Generative Adersarial Networks

摘要:

論文提出了一個框架用來直接學習一系列克隆動作資料的策略,論文在探索環境時,獎勵函式 R 是未知的。通常來說,強化學習通過提取獎勵 R 來探索環境來學習策略,論文跳過了這一步驟,直接學習人類的動作行為,進而使得學習到的策略和人的行為無差異。論文將主要的試驗點放在無人駕駛環境中,論文提出,該方法不僅適用於無人駕駛,還適用於其他更加通用的模擬環境。

介紹:

論文主要使用GANs作為基礎演算法,來克隆人的駕駛行為,然後根據人的駕駛行為學習到的策略來進行無人駕駛。論文認為,GANs的框架用於學習和克隆人的駕駛行為非常合適(個人認為不是很合適,因為人的駕駛行為表現出來的只是一部分,博弈過程,思考過程,判斷過程均沒有給出,但這不影響繼續閱讀這篇論文)

背景:

強化學習:

智慧體agent在環境environment中,在狀態選擇一個行為,最大化累計獎勵的R,學習一個最佳策略

Q-Learning:

Q-Learning是一個免模型強化學習演算法,基於貝爾曼方程公式如下:

得到最終的損失函式方程如下:

Q-Learning在每一步都進行更新,但只能用於離散空間的學習過程,對連續空間的強化學習不適用

Policy-Gradient:

Policy-Gradient演算法與Q-Learning(儲存一個價值函式)不同之處在於,使用策略梯度方法,直接搜尋最佳的策略π,公式如下:

Actor-Critic:

Actor-Critic結合了Q-Learning和Policy-Gradient兩種演算法,其中Q-Learning表示critic用於評價策略選擇的是否優秀並打分,Policy-Gradient用於採取行動

GAN:

GANs神經網路用於生成模型,G用於生成一個神經網路,D用於鑑別該神經網路生成的樣本是來自原始資料還是生成模型,G與D在不斷的博弈,直到最後D無法分辨為止,公式演算法如下:

Conditional GANs:

新增一個引數y在生成網路G和鑑別網路D中,cGANs在影象生成問題中表現優異,演算法如下:

論文還提到了其他的GAN相關的演算法,比較重要的是可處理影象生成的cGANs,與可以在鐳射雷達LIDAR中用於無人駕駛的演算法Imitating driver behavior with generative adversarial networks。論文沒有使用R作為模型的評判標準,論文認為在駕駛環境中R是稀疏的,使用獎勵不能很好的學習到優秀的人類駕駛策略。

D-GAN

論文提出D-GAN,一個對抗網路能夠近似逼近真實資料的策略和根據一幀模擬的圖片生成實際動作,論文認為,在遊戲中,有時存在不止一種正確或者實際的動作可以選擇。論文的目標是使用D-GAN來逼近近似人類在玩遊戲時候的駕駛行為。有些文獻認為,鑑別模型更加適合這個任務,論文認為事實上,這將會限制訓練資料解決空間(解決方案的選擇項),但是GAN不會限制動作選項。論文采樣人的駕駛行為:,最終的GAN的演算法如下:

論文給出了鑑別器和生成器的網路架構,論文不同於傳統的GAN結構,輸入是向量,輸出是圖片,論文的輸入是圖片,輸出是向量。

鑑別器discriminator:

生成器generator:

由於資料具有時間序列屬性,論文采用LSTM網路結構,LSTM結構可以記住(處理)在一段時間內的資料。因為在一段時間內,這一幀神經網路要求模型右轉,下一幀要求模型左轉,將可能會造成模型的不穩定。一種解決辦法是多幀輸入是使用一個動作。

論文提出,該模型表現不夠完美,仍然會發生撞樹,撞人,和撞電線杆等等,但是沒有提出是由於訓練量不夠還是模型不夠完善:

結論:

論文使用對抗學習來模仿人的駕駛行為,沒有給定一個獎勵或者目標,而只是基於訓練資料學習人類的駕駛行為,論文沒有通過設定強化學習常用的獎勵R來學習策略,而是直接從探索中提取策略,論文使用GAN直接基於訓練資料來近似逼近一個(人類駕駛)策略。