深度強化學習

2021-08-28 18:39:28 字數 2758 閱讀 2830

一、簡介

1、深度強化學習出現的原因

傳統的強化學習中當狀態和動作空間是離散且維數不高時可使用q-table儲存每個狀態動作對的q值。然而比較複雜的、更加接近實際情況的任務則往往有著很大的狀態空間和連續的動作空間,這種情況下使用q-table不現實。同時實現端到端的控制也是要求能處理高維的,如影象、聲音等的資料輸入。而前些年開始興起的深度學習,剛好可以應對高維的輸入,如果能將兩者結合,那麼將使智慧型體同時擁有深度學習的理解能力和強化學習的決策能力。

2、深度強化學習的簡介 

深度學習具有較強的感知能力,但是缺乏一定的決策能力;而強化學習具有決策能力,對感知問題束手無策。因此,深度強化學習(deep reinforcement learning)將深度學習的感知能力和強化學習的決策能力相結合,優勢互補,可以直接從高維原始資料學習控制策略,是一種更接近人類思維方式的人工智慧方法。

深度強化學習通常做法是把q-table的更新問題變成乙個函式擬合問題,相近的狀態得到相近的輸出動作。如下式,通過更新引數 θ 使q函式逼近最優q值 

q(s,a;θ)≈q′(s,a)

二、學習框架

drl是一種端對端(end-to-end)的感知與控制系統,具有很強的通用性.其學習過程可以描述為:

(1)在每個時刻agent與環境互動得到乙個高維度的觀察,並利用dl方法來感知觀察,以得到具體的狀態特徵表示;

(2)基於預期回報來評價各動作的價值函式,並通過某種策略將當前狀態對映為相應的動作;

(3)環境對此動作做出反應,並得到下乙個觀察.通過不斷迴圈以上過程,最終可以得到實現目標的最優策略. 

drl學習框架如圖所示:

三、模型

1、根據深度學習模型的不同,可以將深度強化學習歸納為以下幾種模型:

(1)、基於卷積神經網路的深度強化學習( deep reinforcement learning based on convolutional neural network )

由於卷積神經網路對影象處理擁有天然的優勢,將卷積神經網路與強化學習結合處理影象資料的感知決策任務成了很多學者的研究方向. 深智團隊提出的深度q網路(deep q network, dqn),是將卷積神經網路和q學習結合, 並整合經驗回放技術實現的. 經驗回放通過重複取樣歷史資料增加了資料的使用效率, 同時減少了資料之間的相關性。

深度q網路是深度強化學習領域的開創性工作,它採用時間上相鄰的4幀遊戲畫面作為原始影象輸入,經過深度卷積神經網路和全連線神經網路, 輸出狀態動作q函式, 實現了端到端的學習控制.深度q網路使用帶有引數

其中

(2)、基於遞迴神經網路的深度強化學習(deep reinforcement learning based on recurrent neural network)

深度強化學習面臨的問題往往具有很強的時間依賴性, 而遞迴神經網路適合處理和時間序列相關的問題. 強化學習與遞迴神經網路的結合也是深度強化學習的主要形式. cuccu等提出將神經演化方法應用到基於視覺的強化學習中, 用乙個預壓縮器對遞迴神經網路進行訓練. 採集的影象資料通過遞迴神經網路降維後輸入給強化學習進行決策, 在基於視覺的小車爬山(mountain car)任務中獲得了良好的控制效果。narasimhan等提出一種長短時記憶網路與強化學習結合的深度網路架構來處理文字遊戲. 這種方法能夠將文字資訊對映到向量表示空間從而獲取遊戲狀態的語義資訊。

對於時間序列資訊,深度q網路的處理方法是加入經驗回放機制。但是經驗回放的記憶能力有限,每個決策點需要獲取整個輸入畫面進行感知記憶。將長短時記憶網路與深度q網路結合,提出深度遞迴q網路(deep recurrent q network,drqn),在部分可觀測馬爾科夫決策過程(partiallyobservable markov decision process, pomdp)中表現出了更好的魯棒性,同時在缺失若干幀畫面的情況下也能獲得很好的實驗結果。

2、根據強化學習的決策過程可以分為基於值函式的深度強化學習和基於策略梯度的深度強化學習

(1)、基於值函式的深度強化學習

mnih等人將卷積神經網路與傳統rl中的q學習演算法相結合,提出了深度q網路(deep q-network, dqn)模型.該模型用於處理基於視覺感知的控制任務,是drl領域的開創性工作。

dqn是一種基於值函式逼近的強化學習方法,是在q-learning基礎上改進的,主要的改進有三個:

(1)利用深度卷積神經網路逼近行為值函式,dqn使用的網路結構為三個卷積層和兩個全連線層,輸入是棋盤影象,輸出是動作對應的概率。

(2)利用經驗回放(均勻取樣)訓練強化學習的學習過程,通過對歷史資料的均勻取樣,實現資料的歷史回放,打破採集和學習的資料之間關聯性,保證值函式穩定收斂。

(3)設定單獨目標網路來處理時間差分演算法中的td偏差,即動作值函式中的引數每步更新一次,計算td偏差的引數每隔固定步數更新一次。

(2)、基於策略梯度的深度強化學習

策略梯度是一種常用的策略優化方法,它通過不斷計算策略期望總獎賞關於策略引數的梯度來更新策略引數,最終收斂於最優策略。策略梯度方法是一種直接使用逼近器來近似表示和優化策略,最終得到最優策略的方法,因此在解決drl問題時,可以採用引數為θ的深度神經網路來進行引數化表示策略,並利用策略梯度方法來優化策略.值得注意的是,在求解drl問題時,往往第一選擇是採取基於策略梯度的演算法.原因是它能夠直接優化策略的期望總獎賞,並以端對端的方式直接在策略空間中搜尋最優策略,省去了繁瑣的中間環節。因此與dqn及其改進模型相比,基於策略梯度的drl方法適用範圍更廣,策略優化的效果也更好。

深度強化學習

這是寫給自己看的,大佬請忽略 深度學習和其他機器學習演算法最大的不同在於如何找到特徵,而特徵的抽取過程就是乙個抽象的全過程。以往機器學習演算法的特徵抽取都是對一類問題有解,比如k means等聚類。深度學習抽象模擬了人類神經元傳遞和連線方式,理論上可以解決多種分類問題和 問題,甚至研究未知領域。深度...

深度強化學習

強化學習 reinforcement learning 與深度學習同屬機器學習的範疇,是其中 一 個重要的分支,主要用來解決連續決策的問題。強化不像無監督學習那樣完全沒有學習目標,也不像監督學習那樣有非常明確的目標 如影象分類問題中的label 強化學習的目標是不明確的,模型只會向著能夠得到更多獎勵...

深度強化學習簡介

強化學習 reinforcement learning 是機器學習的乙個重要分支,它是用來解決連續決策的問題。強化學習的應用範圍十分廣泛,幾乎包括了所有需要做一系列決策的問題,例如控制電擊讓它執行特定任務,玩棋牌遊戲 alphago 等。它能應用到有序列輸出的問題中,即針對一系列變化的環境狀態,輸出...