机器学习(二十五)——强化学习(2)
https://antkillerfarm.github.io/
折扣未來獎勵(Discounted Future Reward)
為了獲得更多的獎勵,我們往往不能只看當前獎勵,更要看將來的獎勵。
給定一個MDP周期,總的獎勵顯然為:
R=r1+r2+?+rnR=r1+r2+?+rn
那么,從當前時間t開始,總的將來的獎勵為:
Rt=rt+rt+1+?+rnRt=rt+rt+1+?+rn
但是Environment往往是隨機的,執行特定的動作不一定得到特定的狀態,因此將來的獎勵所占的權重要依次遞減,因此使用discounted future reward代替:
Rt=rt+γrt+1+γ2rt+2+?+γn?trnRt=rt+γrt+1+γ2rt+2+?+γn?trn
這里γγ是0和1之間的折扣因子——越是未來的獎勵,折扣越多,權重越小。而明顯上式是個迭代過程,因此可以寫作:
Rt=rt+γ(rt+1+γ(rt+2+…))=rt+γRt+1Rt=rt+γ(rt+1+γ(rt+2+…))=rt+γRt+1
即當前時刻的獎勵等于當前時刻的即時獎勵加上下一時刻的獎勵乘上折扣因子γγ。
如果γγ等于0,意味著只看當前獎勵;
如果γγ等于1,意味著環境是確定的,相同的動作總會獲得相同的獎勵(也就是cyclic Markov processes)。
因此實際中γγ往往取類似0.9這樣的值。因此我們的任務變成了找到一個策略,最大化將來的獎勵R。
Policy, Value, Transition Model
增強學習中,比較重要的幾個概念:
Policy就是我們的算法追求的目標,可以看做一個函數,在輸入state的時候,能夠返回此時應該執行的action或者action的概率分布。
π(a∣s)=P[At=a∣St=s]π(a∣s)=P[At=a∣St=s]
Value,價值函數,表示在輸入state,action的時候,能夠返回在state下,執行這個action能得到的Discounted future reward的(期望)值。
Value function一般有兩種。
state-value function:
vπ(s)=Eπ[Gt∣St=s]vπ(s)=Eπ[Gt∣St=s]
action-value function:
qπ(s;a)=Eπ[Gt∣St=s;At=a]qπ(s;a)=Eπ[Gt∣St=s;At=a]
后者由于和state、action都有關系,也被稱作state-action pair value function。
Transition model是說環境本身的結構與特性:當在state執行action的時候,系統會進入的下一個state,也包括可能收到的reward。
很顯然,以上三者互相關聯:
如果能得到一個好的Policy function的話,那算法的目的已經達到了。
如果能得到一個好的Value function的話,那么就可以在這個state下,選取value值高的那個action,自然也是一個較好的策略。
如果能得到一個好的transition model的話,一方面,有可能可以通過這個transition model直接推演出最佳的策略;另一方面,也可以用來指導policy function或者value function 的學習過程。
因此,增強學習的方法,大體可以分為三類:
Value-based RL,值方法。顯式地構造一個model來表示值函數Q,找到最優策略對應的Q函數,自然就找到了最優策略。
Policy-based RL,策略方法。顯式地構造一個model來表示策略函數,然后去尋找能最大化discounted future reward。
Model-based RL,基于環境模型的方法。先得到關于environment transition的model,然后再根據這個model去尋求最佳的策略。
以上三種方法并不是一個嚴格的劃分,很多RL算法同時具有一種以上的特性。
參考
https://mp.weixin.qq.com/s/f6sq8cSaU1cuzt7jhsK8Ig
強化學習(Reinforcement Learning)基礎介紹
https://mp.weixin.qq.com/s/TGN6Zhrea2LPxdkspVTlAw
穆黎森:算法工程師入門——增強學習
https://mp.weixin.qq.com/s/laKJ_jfNR5L1uMML9wkS1A
強化學習(Reinforcement Learning)算法基礎及分類
https://mp.weixin.qq.com/s/Cvk_cePK9iQd8JIKKDDrmQ
強化學習的核心基礎概念及實現
http://mp.weixin.qq.com/s/gHM7qh7UTKzatdg34cgfDQ
強化學習全解
https://mp.weixin.qq.com/s/B6ZpJ0Yw9GBZ9_MyNwjlXQ
構建強化學習系統,你需要先了解這些背景知識
https://mp.weixin.qq.com/s/AKuuIJnESMmck8k210CnWg
易忽略的強化學習知識之基礎知識及MDP(上)
https://mp.weixin.qq.com/s/phuCKNj_a4CPq6w51Md-9A
易忽略的強化學習知識之基礎知識及MDP(下)
https://mp.weixin.qq.com/s/QHAnpGsr1sSaUgOXTJjVjQ
李飛飛高徒帶你一文讀懂RL來龍去脈
https://mp.weixin.qq.com/s/iN8q24ka762LqY74zoVFsg
3萬字剖析強化學習在電商環境下應用
總結
以上是生活随笔為你收集整理的机器学习(二十五)——强化学习(2)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器学习(二十四)——数据不平衡问题,
- 下一篇: 图像处理理论(四)——HOG, Haar