人工智能強化學(xué)習(xí)的原理和目標(biāo)
強化學(xué)習(xí)(RL),又稱再勵學(xué)習(xí)、評價學(xué)習(xí),是一種重要的機器學(xué)習(xí)方法,在智能控制機器人及分析預(yù)測等領(lǐng)域有許多應(yīng)用。
那么什么是強化學(xué)習(xí)?強化學(xué)習(xí)是智能系統(tǒng)從環(huán)境到行為映射的學(xué)習(xí),以使獎勵信號(強化信號)函數(shù)值最大,強化學(xué)習(xí)不同于連接主義學(xué)習(xí)中的監(jiān)督學(xué)習(xí),主要表現(xiàn)在教師信號上,強化學(xué)習(xí)中由環(huán)境提供的強化信號是對產(chǎn)生動作的好壞作一種評價(通常為標(biāo)量信號),而不是告訴強化學(xué)習(xí)系統(tǒng)RLS(reinforcement learning system)如何去產(chǎn)生正確的動作。由于外部環(huán)境提供的信息很少,RLS必須靠自身的經(jīng)歷或能力進行學(xué)習(xí)。通過這種方式,RLS在行動-評價的環(huán)境中獲得知識,改動方案以適應(yīng)環(huán)境。
通俗的講,就是當(dāng)一個小孩學(xué)習(xí)有迷?;蚶Щ髸r,如果老師發(fā)現(xiàn)小孩方法或思路正確,就給他(她)正反饋(獎勵或鼓勵);否則就給他(她)負反饋(教訓(xùn)或懲罰),激勵小孩的潛能,強化他(她)自我學(xué)習(xí)能力,依靠自身的力量來主動學(xué)習(xí)和不斷探索,最終讓他(她)找到正確的方法或思路,以適應(yīng)外部多變的環(huán)境。
強化學(xué)習(xí)有別于傳統(tǒng)的機器學(xué)習(xí),不能立即得到標(biāo)記,而只能得到一個反饋(獎或罰),可以說強化學(xué)習(xí)是一種標(biāo)記延遲的監(jiān)督學(xué)習(xí)。強化學(xué)習(xí)是從動物學(xué)習(xí)、參數(shù)擾動自適應(yīng)控制等理論發(fā)展而來的。
強化學(xué)習(xí)原理:
如果Agent的某個行為策略導(dǎo)致環(huán)境正的獎賞(強化信號),那么Agent以后產(chǎn)生這個行為策略的趨勢加強。Agent的目標(biāo)是在每個離散狀態(tài)發(fā)現(xiàn)最優(yōu)策略以使期望的折扣獎賞和最大。
強化學(xué)習(xí)把學(xué)習(xí)看作試探評價過程,Agent選擇一個動作用于環(huán)境,環(huán)境接受該動作后狀態(tài)發(fā)生變化,同時產(chǎn)生一個強化信號(獎或懲)反饋給Agent,Agent根據(jù)強化信號和環(huán)境當(dāng)前狀態(tài)再選擇下一個動作,選擇的原則是使受到正強化(獎)的概率增大。選擇的動作不僅影響立即強化值,而且影響環(huán)境下一時刻的狀態(tài)及最終的強化值。
若已知R/A梯度信息,則可直接可以使用監(jiān)督學(xué)習(xí)算法。因為強化信號R與Agent產(chǎn)生的動作A沒有明確的函數(shù)形式描述,所以梯度信息R/A無法得到。因此,在強化學(xué)習(xí)系統(tǒng)中,需要某種隨機單元,使用這種隨機單元,Agent在可能動作空間中進行搜索并發(fā)現(xiàn)正確的動作。
強化學(xué)習(xí)模型強化學(xué)習(xí)模型包括下面幾個要素:
1) 規(guī)則(policy):規(guī)則定義了Agent在特定的時間特定的環(huán)境下的行為方式,可以視為是從環(huán)境狀態(tài)到行為的映射,常用 π來表示??梢苑譃閮深悾?/p>
確定性的policy(DeterminisTIc policy): a=π(s)
隨機性的policy(StochasTIc policy): π(a|s)=P[At=a|St=t]
其中,t是時間點,t=0,1,2,3,……
St∈S,S是環(huán)境狀態(tài)的集合,St代表時刻t的狀態(tài),s代表其中某個特定的狀態(tài);
At∈A(St),A(St)是在狀態(tài)St下的acTIons的集合,At代表時刻t的行為,a代表其中某個特定的行為。
2) 獎勵信號(areward signal):Reward是一個標(biāo)量值,是每個TIme step中環(huán)境根據(jù)agent的行為返回給agent的信號,reward定義了在該情景下執(zhí)行該行為的好壞,agent可以根據(jù)reward來調(diào)整自己的policy。常用R來表示。
3) 值函數(shù)(valuefunction):Reward定義的是立即的收益,而value function定義的是長期的收益,它可以看作是累計的reward,常用v來表示。
4) 環(huán)境模型(a modelof the environment):整個Agent和Environment交互的過程可以用下圖來表示:
Agent作為學(xué)習(xí)系統(tǒng),獲取外部環(huán)境Environment的當(dāng)前狀態(tài)信息St,對環(huán)境采取試探行為At,并獲取環(huán)境反饋的對此動作的評價Rt+1和新的環(huán)境狀態(tài)St+1 。如果Agent的某動作At導(dǎo)致環(huán)境Environment的正獎賞(立即報酬),那么Agent以后產(chǎn)生這個動作的趨勢便會加強;反之,Agent產(chǎn)生這個動作的趨勢將減弱。在強化學(xué)習(xí)系統(tǒng)的控制行為與環(huán)境反饋的狀態(tài)及評價的反復(fù)交互作用中,以學(xué)習(xí)的方式不斷修改從狀態(tài)到動作的映射策略,達到優(yōu)化系統(tǒng)性能目的。
強化學(xué)習(xí)設(shè)計考慮:
1)如何表示狀態(tài)空間和動作空間。
2)如何選擇建立信號以及如何通過學(xué)習(xí)來修正不同狀態(tài)-動作對的值。
3)如何根據(jù)這些值來選擇適合的動作。
強化學(xué)習(xí)常見算法:強化學(xué)習(xí)的常見算法包括:1)時間差分學(xué)習(xí)(Temporal difference learning);2)Q學(xué)習(xí)(Q learning);3)學(xué)習(xí)自動(LearningAutomata);4)狀態(tài)-行動-回饋-狀態(tài)-行動(State-Action-Reward-State-Action)等。
強化學(xué)習(xí)目標(biāo):
強化學(xué)習(xí)通過學(xué)習(xí)從環(huán)境狀態(tài)到行為的映射,使得智能體選擇的行為能夠獲得環(huán)境最大的獎賞,使得外部環(huán)境對學(xué)習(xí)系統(tǒng)在某種意義下的評價(或整個系統(tǒng)的運行性能)為最佳。簡單的說,強化學(xué)習(xí)的目標(biāo)是動態(tài)地調(diào)整參數(shù),達到強化信號最大。
強化學(xué)習(xí)應(yīng)用前景:前段時間被刷屏的機器人,大家一定不陌生吧,來自波士頓動力的機器人憑借出色的平衡性給大家留下了深刻的印象。機器人控制領(lǐng)域就使用了大量的強化學(xué)習(xí)技術(shù)。除此之外,游戲、3D圖像處理、棋類(2016年備受矚目的AlphaGo圍棋)、等領(lǐng)域都有應(yīng)用。
機 器 人
游 戲
3D 圖 像 處 理
人 機 大 戰(zhàn)
結(jié)語:強化學(xué)習(xí)是通過對未知環(huán)境一邊探索一邊建立環(huán)境模型以及學(xué)習(xí)得到一個最優(yōu)策略。強化學(xué)習(xí)與其他機器學(xué)習(xí)算法不同的地方在于沒有監(jiān)督者,只有一個Reward信號,而且反饋是延遲的。強化學(xué)習(xí)是人工智能之機器學(xué)習(xí)中一種快速、高效且不可替代的學(xué)習(xí)算法,實際上強化學(xué)習(xí)是一套很通用的解決人工智能問題的框架,值得人們?nèi)パ芯?。另外,深度學(xué)習(xí)[參見人工智能(22)]和強化學(xué)習(xí)相結(jié)合,不僅給強化學(xué)習(xí)帶來端到端優(yōu)化便利,而且使得強化學(xué)習(xí)不再受限于低維空間,極大地拓展了強化學(xué)習(xí)的使用范圍。谷歌DeepMind中深度強化學(xué)習(xí)領(lǐng)頭人David Silver曾經(jīng)說過,深度學(xué)習(xí)(DL)+ 強化學(xué)習(xí)(RL) = 人工智能(AI)。