午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

強(qiáng)化學(xué)習(xí)到深度強(qiáng)化學(xué)習(xí)

 ZZvvh2vjnmrpl4 2019-06-03

今天,你AI了沒?

0.來源說明

來源 | CSDN

作者  |  謝宜廷

開講前,先給大家看個(gè)深度強(qiáng)化學(xué)習(xí)的例子,下面是深度學(xué)習(xí)cnn和強(qiáng)化學(xué)習(xí)結(jié)合玩吃豆人的游戲。

看圖像我們會(huì)發(fā)現(xiàn)吃豆人會(huì),吃掉一閃一閃的豆子來消滅怪物,仔細(xì)觀察會(huì)發(fā)現(xiàn),經(jīng)過訓(xùn)練的吃豆人,甚至?xí)T谀硞€(gè)角落來躲避怪物,這是一個(gè)非常有趣的現(xiàn)象,后面會(huì)附有個(gè)人深度強(qiáng)化學(xué)習(xí)項(xiàng)目地址。下面我們開始正式介紹強(qiáng)化學(xué)習(xí)。

強(qiáng)化學(xué)習(xí)的原理和解釋

強(qiáng)化學(xué)習(xí)任務(wù)通常使用馬爾可夫決策過程(Markov Decision Process,簡稱MDP)來描述,具體而言:機(jī)器處在一個(gè)環(huán)境中,每個(gè)狀態(tài)為機(jī)器對當(dāng)前環(huán)境的感知;機(jī)器只能通過動(dòng)作來影響環(huán)境,當(dāng)機(jī)器執(zhí)行一個(gè)動(dòng)作后,會(huì)使得環(huán)境按某種概率轉(zhuǎn)移到另一個(gè)狀態(tài);同時(shí),環(huán)境會(huì)根據(jù)潛在的獎(jiǎng)賞函數(shù)反饋給機(jī)器一個(gè)獎(jiǎng)賞。綜合而言,強(qiáng)化學(xué)習(xí)主要包含四個(gè)要素:狀態(tài)、動(dòng)作、轉(zhuǎn)移概率以及獎(jiǎng)賞函數(shù)。

根據(jù)上圖,agent(智能體)在進(jìn)行某個(gè)任務(wù)時(shí),首先與environment進(jìn)行交互,產(chǎn)生新的狀態(tài)state,同時(shí)環(huán)境給出獎(jiǎng)勵(lì)reward,如此循環(huán)下去,agent和environment不斷交互產(chǎn)生更多新的數(shù)據(jù)。強(qiáng)化學(xué)習(xí)算法就是通過一系列動(dòng)作策略與環(huán)境交互,產(chǎn)生新的數(shù)據(jù),再利用新的數(shù)據(jù)去修改自身的動(dòng)作策略,經(jīng)過數(shù)次迭代后,agent就會(huì)學(xué)習(xí)到完成任務(wù)所需要的動(dòng)作策略。

強(qiáng)化學(xué)習(xí)和機(jī)器學(xué)習(xí)

強(qiáng)化學(xué)習(xí)是機(jī)器學(xué)習(xí)的分支之一,但是又區(qū)別于其他機(jī)器學(xué)習(xí),主要體現(xiàn)在:

  • 無特定數(shù)據(jù),只有獎(jiǎng)勵(lì)信號(hào)

  • 獎(jiǎng)勵(lì)信號(hào)不一定實(shí)時(shí)

  • 主要研究時(shí)間序列的數(shù)據(jù),而不是獨(dú)立同分布的數(shù)據(jù)

  • 當(dāng)前行為影響后續(xù)數(shù)據(jù)

從1.1基本原理我們可以看的強(qiáng)化學(xué)習(xí)和其他機(jī)器學(xué)習(xí)算法監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)的差別。監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)都需要靜態(tài)的數(shù)據(jù),不需要與環(huán)境交互,數(shù)據(jù)輸入到相關(guān)函數(shù)訓(xùn)練就行。而且對于有監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)來說,有監(jiān)督學(xué)習(xí)強(qiáng)調(diào)通過學(xué)習(xí)有標(biāo)簽的數(shù)據(jù),預(yù)測新數(shù)據(jù)的標(biāo)簽,無監(jiān)督學(xué)習(xí)更多是挖掘數(shù)據(jù)中隱含的規(guī)律。

主要算法和相關(guān)分類

根據(jù)上面的原理,其實(shí)我們可以得到,強(qiáng)化學(xué)習(xí)關(guān)鍵要素:agent(智能體),reward(獎(jiǎng)勵(lì)),action(行為),state(狀態(tài)),environment(環(huán)境)。

  • agent:主要涉及到:策略(Policy),價(jià)值函數(shù)(Value Function)和模型(Model)。Policy,可以理解為行動(dòng)指南,讓agent執(zhí)行什么動(dòng)作,在數(shù)學(xué)上可以理解為從狀態(tài)state到動(dòng)作action的映射,可分為確定性策略(Deterministic policy)和隨機(jī)性策略(Stochastic policy),前者是指在某特定狀態(tài)下執(zhí)行某個(gè)特定動(dòng)作,后者是根據(jù)概率來執(zhí)行某個(gè)動(dòng)作。Value Function,對未來總Reward的一個(gè)預(yù)測。Model,一個(gè)對環(huán)境的認(rèn)知框架,可以預(yù)測采取動(dòng)作后的下一個(gè)狀態(tài)是什么,很多情況下是沒有模型的,agent只能通過與環(huán)境互動(dòng)來提升策略。

  • state:可以細(xì)分為三種,Environment State,Agent State和Information State。Environment State是agent所處環(huán)境包含的信息,簡單理解就是很多特征數(shù)據(jù),也包含了無用的數(shù)據(jù)。Agent State是輸入給agent的信息,也就是特征數(shù)據(jù)。Information State是一個(gè)概念,即當(dāng)前狀態(tài)包含了對未來預(yù)測所需要的有用信息,過去信息對未來預(yù)測不重要,該狀態(tài)就滿足馬爾科夫性(Markov Property)。Environment State,Agent State都可以是Markov Property。

  • environment:可以分為完全可觀測環(huán)境(Fully Observable Environment)和部分可觀測環(huán)境(Partially Observable Environment)。Fully Observable Environment就是agent了解了整個(gè)環(huán)境,顯然是一個(gè)理想情況。Partially Observable Environment是agent了解部分環(huán)境的情況,剩下的需要靠agent去探索。

強(qiáng)化學(xué)習(xí)算法按照agent分類,可以分為下面幾類:

  1. 關(guān)注最優(yōu)策略(Policy based)

  2. 關(guān)注最優(yōu)獎(jiǎng)勵(lì)總和(Value based)

  3. 關(guān)注每一步的最優(yōu)行動(dòng)(Action based)

從不同角度也可以繼續(xù)細(xì)分,具體可以看下圖:

下面我們簡單介紹分析一下Qlearning和Sarsa

(1) Qlearning

(2)Sarsa

從表格我們知道,Qlearning是on-policy,而Saras是off-policy。 對于Saras,當(dāng)agent處于狀態(tài)s時(shí),根據(jù)當(dāng)前Q網(wǎng)絡(luò)以及一定的策略來選取動(dòng)作a,進(jìn)而觀測到下一步狀態(tài)s',并再次根據(jù)當(dāng)前Q網(wǎng)絡(luò)及相同的策略選擇動(dòng)作a',而Qlearning則是,根據(jù)當(dāng)前Q網(wǎng)絡(luò)計(jì)算出下一步采取哪個(gè)動(dòng)作會(huì)得到maxQ值,并用這個(gè)Q值作為當(dāng)前狀態(tài)動(dòng)作對Q值的目標(biāo)。

簡單來說,Saras是agent處于新狀態(tài)s',就知道要采取行動(dòng)a',并且執(zhí)行了,行動(dòng)的選擇根據(jù)策略,Q值的計(jì)算是根據(jù)動(dòng)作a',而Qlearning是agent處于新狀態(tài)s',只能知道采取哪個(gè)行動(dòng)可以得到maxQ,并沒有采取對應(yīng)行動(dòng),它是根據(jù)當(dāng)前Q和策略來采取行動(dòng)的。在后面我們會(huì)做詳細(xì)分析。

傳統(tǒng)的強(qiáng)化學(xué)習(xí)局限于動(dòng)作空間和樣本空間都很小,且一般是離散的情境下。然而比較復(fù)雜的、更加接近實(shí)際情況的任務(wù)則往往有著很大的狀態(tài)空間和連續(xù)的動(dòng)作空間。當(dāng)輸入數(shù)據(jù)為圖像,聲音時(shí),往往具有很高維度,傳統(tǒng)的強(qiáng)化學(xué)習(xí)很難處理,深度強(qiáng)化學(xué)習(xí)就是把深度學(xué)習(xí)對于的高維輸入與強(qiáng)化學(xué)習(xí)結(jié)合起來。

2013和2015年DeepMind的Deep Q Network(DQN)可謂是將兩者成功結(jié)合的開端,它用一個(gè)深度網(wǎng)絡(luò)代表價(jià)值函數(shù),依據(jù)強(qiáng)化學(xué)習(xí)中的Q-Learning,為深度網(wǎng)絡(luò)提供目標(biāo)值,對網(wǎng)絡(luò)不斷更新直至收斂。2015 DQN nature算法可以看下圖:

DQN用到了兩個(gè)關(guān)鍵技術(shù)涉及到了兩個(gè)關(guān)鍵技術(shù):

1、樣本池(Experience Reply):將采集到的樣本先放入樣本池,然后從樣本池中隨機(jī)選出一條樣本用于對網(wǎng)絡(luò)的訓(xùn)練。這種處理打破了樣本間的關(guān)聯(lián),使樣本間相互獨(dú)立。

2、固定目標(biāo)值網(wǎng)絡(luò)(Fixed Q-target):計(jì)算網(wǎng)絡(luò)目標(biāo)值需用到現(xiàn)有的Q值,現(xiàn)用一個(gè)更新較慢的網(wǎng)絡(luò)專門提供此Q值。這提高了訓(xùn)練的穩(wěn)定性和收斂性。

DQN在Atari games上用原始像素圖片作為狀態(tài)達(dá)到甚至超越人類專家的表現(xiàn)、通過左右互搏(self-play)等方式在圍棋上碾壓人類、大大降低了谷歌能源中心的能耗等等。當(dāng)然DQN也有缺點(diǎn),它是高維輸入,低維輸出的,當(dāng)涉及到一次性輸出連續(xù)動(dòng)作時(shí),即高維度輸出,就束手無策了,DeepMind也在后續(xù)提出了DDPG。

根據(jù)前面知識(shí)可以意識(shí)到強(qiáng)化學(xué)習(xí)本身是非常通用了,智能體可以自己學(xué)習(xí),如果和深度學(xué)習(xí)結(jié)合豈不是萬能?錯(cuò)了,當(dāng)前深度強(qiáng)化學(xué)習(xí)也有許多難點(diǎn):

  1. 樣本利用率低,需要長時(shí)間訓(xùn)練

  2. 很難設(shè)計(jì)獎(jiǎng)勵(lì)函數(shù)

  3. 對環(huán)境過擬合,比如去玩打磚塊很擅長,卻很難去適應(yīng)俄羅斯方塊

  4. 不穩(wěn)定,函數(shù)對參數(shù)很敏感,參數(shù)的變動(dòng),模型會(huì)千差萬別

未來可能方向:

  1. 與遷移學(xué)習(xí)結(jié)合,適應(yīng)不同環(huán)境

  2. 硬件提升

  3. 融合更多的模型學(xué)習(xí),充分利用樣本

  4. 自主設(shè)定獎(jiǎng)勵(lì)函數(shù)

微信群&交流合作

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多