強化學習離軌策略:從失敗中獲得成功經驗 - 以追女孩爲例 | 採樣率的數學意義

簡介:我一個朋友小拍,姐妹衆多,穩如老狗。姐妹們常疑惑:小拍同學 會吃會玩會聊天,上知美妝,下知韓綜,中曉穿搭,做事靠譜,爲人頗有原則 ,竟然沒追成過一個女孩?要我說,這其實沒什麼可大驚小怪的,我剛認識小拍那陣子,他還是個鋼鐵小直男呢。 用強化學習的角度看,小拍在這幾年做了很好的離軌策略(off-policy)學習,即從自己和別人「追女生」這個過程中學習經驗,無論結果成敗,都能有效地學到東西。 本文我們就以「追女孩」爲例,討論離軌策略,進而引申出「重要度採樣比」/「採樣率」的數學意義解釋(主要引用臺灣大學李宏毅老師的觀點)。

本文目錄:

  • 離軌策略:從失敗與別人的經驗中學習
  • 重要度採樣比:修正「理解」的偏差

離軌策略:從失敗與別人的經驗中學習

在強化學習中, 我們要學到的/收斂逼近的控制策略,一定是最優的。 以追女生爲例,小拍心裏的目的只有一個:用最好的方式追成功。

很顯然, 我們要學習的策略,一定是一個「能讓我們成功的策略」 ,但問題是:

  • 小拍 自己從未成功過,只有失敗的經驗 ,他可以從中學到什麼嗎?
  • 別人的經驗或是成功的、或是失敗的,但 小拍不可能完全複製下來 ,小拍可以從中學到什麼嗎?

對於強化學習學習來講,上述兩個問題的答案都是 肯定 的。

在 Sutton 的經典書籍中,在 第五章第五節 首次提到 「離軌策略(off-policy)」 這個概念。

雖然第五章才被介紹,但 「離軌策略」 這個概念,卻幾乎是 強化學習實踐 中最爲重要的概念之一,因爲:

  • 強化學習的 數據往往只能通過與環境交互得出 ,這造成了其數據獲取成本過大,且少之又少;
  • 而書中 5.5 節前的簡單直接的迭代式,只能 一邊使用當前控制策略,一邊改進當前控制策略(同軌策略,on-policy) ,這容易造成一些沒有被探索過的方法,永遠都不被嘗試(固步自封),也會 導致我們無法使用之前的、別人的數據

小拍親口爲我們做了類比:

  • 同軌策略: 這次失敗了,這個方法不好,嗯,把這個方法改進一下,下次嘗試!
  • 離軌策略: 我使用的方法,並不一定是我目前認爲最好的方法;或者說,不管我用什麼方法,我都能從中學到東西,並且自我提升,尋找我的最優方法。如果別人有經驗,我也可以從中有所收穫!

或許你已經可以看出, 同軌策略是離軌策略的一種特殊形式 ,在設計算法時, 如果其可以滿足離軌策略要求,其一定可以進行同軌策略的學習。

且在實踐中,我們 很難不使用 離軌策略:

  • 在與環境的交互中,我們儘量不要使用當前的最優策略 (同軌策略學習方式) ,因爲這樣我們會「謹小慎微」,不敢做出有創意的嘗試;
  • 之前的數據要被複用,而之前的數據也是在不同於當前策略的策略下產生的。

重要度採樣比:修正「理解」的偏差

離軌策略 下,我們 不能使用「想當然」的迭代辦法,因爲這會造成數學理論上的偏差 ,最終得到不良的學習效果。在使用不同於當前策略的策略獲取到的數據時,爲了防止「理解」有偏差,我們需要用採樣率公式修正。

如果你更喜歡嚴謹的數學推導,可以查看 Sutton 的《Reinforcement Learning: An Introduction Second Edition》。但是說實話,我今年一月份第一次學習這部分時,不是很懂 off-policy 與重要度採樣比這個概念。

如上,我在 CSDN 找到了我關於這部分的筆記,現在看來, 只是寫到了效果,當時還是沒有寫到「爲什麼」。

後來學習了 李宏毅老師的深度學習課程 ,李老師略帶着講了一些強化學習:李老師連 MDP 這個基礎假設都沒介紹,但是其一些關於強化學習的觀點卻讓我眼前一亮,尤其是 在介紹 PPO 前對採樣率從分佈角度上的介紹。

這裏,我們僅從 數據採樣 角度討論採樣率。

如上,簡單的推導後,我們找到了 p 採樣與 q 採樣的聯繫,且可以通過 E_{x~q} 輕易地得到 E_{x~p} 。而那個分式,不就是我們的採樣率嘛!

下面 從分佈實例 具體解釋一下。

圖源:李宏毅老師課程錄屏

如上,f(x) 的值在數據分佈上用紅線表示。我們可以看出:如果基於 p(x) 對 f(x) 進行採樣,那最後得到的期望值應該是負值,因爲 p(x) 總是傾向於在 f(x) 左側採樣(圖中的藍線,在左側很高)。

但是,我們目前只能基於 q(x) 採樣得到數據,而 q(x) 總是傾向於在 f(x) 右側採樣(圖中的綠線,在右側很高)。這就導致了採樣到的 f(x) 數據都是正的。 如果不加採樣率,我們會錯誤的認爲: p(x) 下采樣的 f(x) 期望是某個正值。

如何消除這種偏差呢? 足夠多的採樣+採樣率公式

圖源:李宏毅老師課程錄屏

如上,當我們進行了足夠多的採樣後: 儘管 q(x) 下很小的概率在左側獲取數據,但一旦我們獲取到,我們將通過採樣率「很好地」對其進行利用。

如上圖中左側的綠點,因爲 q(x) 在左側值很小,而 p(x) 在左側值很大,則根據採樣率公式,我們給左側的數據一個很大的權重,這樣,我們便「修正了」偏差。在 足夠的採樣+採樣率 的加持下,我們可以正確地估計出: p(x) 下采樣的 f(x) 期望是某個負值。

我很重視我文章的正確性,有不同意見,歡迎給我發郵件: [email protected]

後記:這篇文章原本的標題是如何理解強化學習中『離軌策略的採樣率』?讓我們做一個簡單的推導,但後來成文時我靈光乍現: 離軌策略是從非最優中學習最優策略,這不正是從失敗中學習成功經驗嘛! 結合我朋友小拍的個人經歷(有哪件事是我朋友一直在失敗,但卻一直在進步來着?) …因此從強化學習的角度看,追過那麼多女孩,四捨五入小拍也算談過戀愛吧!不多說了兄弟姐妹們,關注公衆號「Piper蛋窩」點個在看再走吧~