1. 程式人生 > >2017 Fall CS294 Lecture 4: Policy gradients introduction

2017 Fall CS294 Lecture 4: Policy gradients introduction

看完CS294 Lecture 4,感覺收穫好多,滿滿的都是乾貨啊。太多精華和亮點了,以至於我些筆記都很有壓力,我覺得最好的方法就是對照Lecture 4的PPT一頁一頁地看並理解。

我先前有一篇部落格My Roadmap in Reinforcement Learning ,Karpathy從直覺的角度闡述了Poliy Gradient的思想,如果從嚴格的數學形式來理解證明,可以看CS294的lecture 4。我截取了三張PPT如下,涵蓋了PG的推導,其中的符號含義應該也可以猜到,τ表示的是一條馬爾科夫鏈的trajectory。

這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
policy gradient存在的兩大問題:

  • high variance
  • slow convergence

high variance主要指的是用reward調製之後的用於反傳的gradient存在很大的variance,注意這裡的high variance指的是gradient,而不是別的。舉一個簡單的例子,比如下面會提到的,其中trajectory是一維的(這樣比較好畫圖),如果把reward函式整個加一個constant,理論上最優解應該不變,但是實際中每一次trajectory更新的梯度都會有很大的差別,詳細的解釋參考CS294視訊 (這一講主要探討high variance的解決辦法)

slow convergence

,如果上面的high variance的問題值得是,很難得到很好的反傳梯度的話,那麼slow convergence指的就是,即便得到了很好的梯度,PG還是收斂很慢。(這一個問題下一講再講)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

下面PPT上半部分是PG的high variance 問題。除了圖中用的例子來理解,還有一種理解(來自CS321n)就是片面的使用t=1Tr(st,at)來調製gradient,這樣難以關照到不同action的重要性;PPT的下半部分則是PG的slow convergence問題,被Jan Peters和Stefan Schaal在2008年提出的一個

natural grading解決。

這裡寫圖片描述

Two tricks for high variance:

  • Causality,也就是利用reward的因果性,不再盲目的累加所有的reward,而是讓每一個reward只對當前以及歷史的action的gradient進行調製
  • Baseline,baseline的話一般可以減掉平均就好了,但也可以推匯出optimal baseline,不過效果和直接減掉平均差別不大。

然後就是PG是一個on-policy,而且每個trajectory才能更新一下,換作是NN,每次更新又比較小,那麼這樣一來幾乎就沒有efficiency。對此,可以使用importance sampling(IS)來將PG改寫成off-policy,具體就不解釋了,可以看PPT。。

更新:

PG是一個on-policy演算法的原因是,每次θ更新之後,都要重新generate samples,這和Q-learning不同(可以重複利用以前舊的θ生成的樣本進行訓練)。這裡要謹記的是:on-policy和off-policy的本質區別在於,generate samples的policy和update的policy是不是同一個。比如說,Q-learning,它使用的是ϵ greedy (ϵ0)的policy去generate samples,但是被更新θ的policy卻是 (ϵ=0)的greedy policy,因此是off-policy。

正因為PG是一個on-policy演算法,因此它每次更新θ之後都要重新generate samples,所以它永遠不能跳過下圖的step 1:

這裡寫圖片描述

這樣非常的sample-inefficient。

下面的推導,通過Importance Sampling,使PG成為off-policy,讓它能夠利用舊的θ對應的policy所generate的samples。

這裡寫圖片描述

這裡寫圖片描述

下圖中的θ是舊的policy的引數,而θ則是我們想要更新的,最新的policy的引數,可以看到,通過利用IS,求期望已經與θ policy生成的samples無關了(是在π(θ)對應policy生成的trajectory samples上求的期望)。至此,PG被轉化成了off-policy

這裡寫圖片描述

但是,單純地按照上面推出的式子去算,會有問題,如下。給出的解決辦法下面的這個ppt也列出來了,這裡就不講了,在以後講到natural gradient時會講到。

這裡寫圖片描述

相關推薦

2017 Fall CS294 Lecture 4: Policy gradients introduction

看完CS294 Lecture 4,感覺收穫好多,滿滿的都是乾貨啊。太多精華和亮點了,以至於我些筆記都很有壓力,我覺得最好的方法就是對照Lecture 4的PPT一頁一頁地看並理解。 我先前有一篇部落格My Roadmap in Reinforcement L

2017 Fall CS294 Lecture 8 Advanced Q-learning algorithms

今天接著上一講,繼續講value functions相關的內容 先回顧Q-learning。上一講講到QϕQϕ除了tabular的情形之外,用任何function approximator(比如NN),那麼演算法的收斂性就無法得到保證。但本講主要講,怎麼在

深度強化學習cs294 Lecture5: Policy Gradients Introduction

深度強化學習cs294 Lecture5: Policy Gradients Introduction 1. The policy gradient algorithm 2. What does the policy gradient do?

Deep RL Bootcamp Lecture 4A: Policy Gradients

spec incr any 9.png eal match sim AD tween in policy gradient, "a" is replaced by "u" usua

Deep RL Bootcamp Lecture 4B Policy Gradients Revisited

pat https 分享 .com TP 9.png google ive hub https://drive.google.com/file/d/0BxXI_RttTZAhTUpqUFdEZ3BXNFE/view game of Pong is a MD

[CVE-2017-5487] WordPress <=4.7.1 REST API 內容註入漏洞分析與復現

tps 文章 分析 請求 利用 api文檔 each includes 什麽 不是很新的漏洞,記錄下自己的工作任務 漏洞影響: 未授權獲取發布過文章的其他用戶的用戶名、id 觸發前提:wordpress配置REST API 影響版本:<= 4.7 0x01漏洞

機器學習基石筆記-Lecture 4 Learning is possible

odi ima ffd containe 概率 count lin comm learning hoeffding 不等式 說明了在樣本量足夠大時,抽樣估計能夠接近真實值。 類比到ml中,對給定的一個假設空間中的h, 它在整個樣本空間中的表現可以由在部分樣本點上的表現來

HDU 6073 Matching In Multiplication —— 2017 Multi-University Training 4

ble %d cep 左右 兩個 efi ane mes tip Matching In Multiplication Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 524288/524288 K (Java

2017多校第4場 HDU 6078 Wavel Sequence DP

bsp wav hdu pac i++ size 個數 style mem 題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=6078 題意:求兩個序列的公共波形子序列的個數。 解法: 類似於最長公共上升子序列,對於每個i,只考慮

2017年11月4日 vs類和結構的區別&哈希表&隊列集合&棧集合&函數

b- protect htable private turn queue ole 長度 ack 類和結構的區別 類:類是引用類型在堆上分配,類的實例進行賦值只是復制了引用,都指向同一段實際對象分配的內存類有構造和析構函數類可以繼承和被繼承結構:結構是值類型在棧上分配(雖然

條件隨機場介紹(4)—— An Introduction to Conditional Random Fields

all str 都是 random ted 之前 圖模型 回顧 over 4. 推斷 高效的推斷算法對條件隨機場的訓練和序列預測都非常重要。主要有兩個推斷問題:第一,模型訓練之後,為新的輸入\(\mathbf{x}\)確定最可能的標記\(\mathbf{y}^* = \ar

CS3402 Lecture 4

概念 都是 在線 但是 一次 keys 區分 離散 const entity-relationship data model用來表述一個數據庫的邏輯結構 構成一個ER模型的概念有三個:entity sets, relationship sets, attributes. e

vs 2017 配置 openCV 3.4.3

2. 在系統環境變數Path中新增如下環境變數。 3. 開啟 vs2017 新建一個空專案,然後Ctrl+Shift+a新增一個c++檔案。 4. 進入檢視→其他視窗→屬性管理器,開啟Debug|x64,選擇新增新專案屬性表(以便之後不需要重新配置)

Lecture 4:Model Free Prediction -By David Silver

強化學習的精髓是解決無模型的問題。在無模型裡面,我們不知道環境是如何運作的,這對於大部分有趣的問題來說這很不現實,它是直接從經驗中學習,從agent和環境互動中學習。 我們梳理一下強化學習的研究思路。強化學習的互動過程可以用馬爾可夫決策過程來對其進行理解。在已知模型的情

Cs231n課堂內容記錄-Lecture 4&5 最優化&反向傳播

Lecture 4 最優化 課程內容記錄: (上)https://zhuanlan.zhihu.com/p/21360434?refer=intelligentunit (下)https://zhuanlan.zhihu.com/p/21387326?refer=intelligentunit 1.程

Deep Q-learning and Policy Gradients ( towards AGI ).

Ch:13: Deep Reinforcement learning — Deep Q-learning and Policy Gradients ( towards AGI ).One of the most exciting developments in AI is #DeepRL. Today we

深度學習(莫煩 神經網路 lecture 4) TensorFlow (GAN)

TensorFlow (GAN) 目錄 1、GAN 今天我們會來說說現在最流行的一種生成網路, 叫做 GAN, 又稱生成對抗網路, 也是 Generative Adversarial Nets 的簡稱 1.1 常見神經網路形式

SSL2834 2017年11月4日提高組T2 揹包(二分)

2017年11月4日提高組T2 揹包 Description 蛤布斯有n種商品,第i種物品的價格為ai,價值為bi。有m個人來向蛤布斯購買商品,每個人每種物品只能購買一個。第j個人有cj的錢,他會不停選擇一個能買得起的價格最高的商品買走(如果有多個則選擇價值

系統架構設計師教程(第4版) introduction

系統架構設計師教程(第4版) 第1章 計算機組成與體系結構 1 1.1 計算機系統組成 1 1.1.1 計算機硬體的組成 1 1.1.2 計算機系統結構的分類 2 1.1.3 複雜指令集系統與精簡指令集系統 3 1.1.4 匯流排 5 1.2 儲存器系統 5 1.2.1 主儲存器 6 1.2.2 輔助