強化學習中無處不在的貝爾曼最優性方程,背後的數學原理知多少?

2021-01-08 雷鋒網

在星際爭霸(AlphaStar)和圍棋(AlphaGO)遊戲中,強化學習已取得了舉世矚目的成功。 而這些成功背後的核心則是用於求解馬爾可夫決策過程(MDP)的貝爾曼最優性方程(Bellman Optimality Equation)。

可以說,貝爾曼方程在強化學習(RL)中無處不在,了解此方程的數學基礎對於理解 RL 算法的工作原理必不可少。它是由美國應用數學家理察·貝爾曼(Richard Bellman)提出,用於求解求解馬爾可夫決策過程。 

文本對此方程背後的數學基礎的進行了詳盡介紹,通俗易懂而又不失數學上的嚴格性。

好文共賞之,以下譯出原文與大家分享:

在星際爭霸(AlphaStar)和圍棋(AlphaGO)遊戲中,強化學習已取得了舉世矚目的成功。 而這些成功背後的核心則是用於求解馬爾可夫決策過程(Markov decision processes,MDP)的貝爾曼最優性方程。

貝爾曼最優性方程

貝爾曼最優性方程是一個遞歸方程,可由動態規劃(dynamic programming,DP)算法求解,通過求解該方程可以找到最優值函數和最優策略。 

一、本文將涉及到的數學符號二、預備知識

儘管我盡力讓文章易懂,但限於篇幅且要同時確保分析的嚴格性,我還是假定讀者已經了解以下預備知識:

三、理解貝爾曼方程的幾大要點

如果你對 RL 和 MDP 略有研究,想必你一定會遇到過此類說法:「對於每個MDP,總有至少一個策略優於或等於所有其他策略。「

在Sutton和Barto的經典教科書中以及David Silver的系列講座中讀到或聽到這些說法時似乎非常直觀,不證自明。但是,我們必得更深入地研究並以更具體的(當然,你懂得,作者意思是數學上的具體,而非常識上的直觀)方式理解為何這麼說。因此,在本文中,我將在數學上證明以下定理:

對於任何有限的MDP,都存在一個最佳策略π*,滿足其他所有可能的策略π都不會比這個策略更好。

在尋找最佳策略之前,我們需要先了解一下策略的順序。即什麼時候我們認為一項策略(π1)比另一項策略(π2)好?

如果對於狀態空間中的每個狀態,使用π1派生的值函數在此狀態的值都大於或等於使用π2派生的值函數在此狀態的值,則可以說策略π1優於策略π2。數學上,可以這樣寫:

策略間的比較

既然我們已經知道如何比較策略,接下來我們需要證明始終存在一個比所有其他策略都更好的策略。 我們將使用巴拿赫不動點定理證明這一點,方法是證明貝爾曼最優算子是對帶有L-無窮範數度量的實數完備度量空間上的閉映射。 為此,我們首先說說不動點問題以及關於柯西序列的完整度量空間。

上一段聽起來很嚇人,但是一旦我們理解了每個基本術語的含義,它將變得非常容易和直觀。 所以別怕!我們接下來將一個一個地討論上段標粗體的術語。 讓我們克服我們的恐懼,以一種自下而上的方法,學習每個概念:

1. 不動點問題

我相信我們大多數人都熟悉方程求根問題。 我們求使函數f(x) = 0的點x。 在不動點問題中,我們則求解使得f(x) = x的點x。 

顧名思義,點x是一個不動點,就是說即使在其上應用函數f(x),它的值也不會改變。 通過構造另一個函數 g(x) = f(x)-x = 0,不動點問題可以轉化為方程求根的問題。

實際上,方程求根問題也可以轉換回求不動點問題。 但是(在特定情況下)解決不動點問題更容易,這使得不動點問題變得非常有趣和有用(節省了計算開銷)。

要解決不動點問題,隨機選擇一個x的作為起始值,並無限次重複應用f(x)。 如果「函數是收斂的」,那麼你將找到不動點問題的解。

從數學上講,這很簡單,讓我們先介紹一個符號:

記號fn(x)表示在x點上連續應用n次函數

現在,如果函數是收斂的,那麼它必須收斂到某個值,比方說, x*。 下面論證則是要說明這個值 x*確實是不動點問題的解:

讓我們選擇一任意值 x0並在其上無限次應用函數f(.)以獲得 x*,然後使用它來解決不動點問題,如下圖所示:

求解不動點問題

這背後的直覺很簡單,如果某個函數在某個點收斂,那麼該函數在那個收斂點的值就是收斂點本身。 因此,這個收斂點就是不動點。

也可以通過以下代碼從經驗上觀察到函數收斂到不動點,代碼連結如下:

2. 度量空間

度量空間只是一個在其上定義了度量的集合,度量則是定義了集合中任何兩個元素之間的距離。 例如,歐幾裡德空間是度量空間,其距離定義為歐幾裡德距離。 因此,度量空間 M 可表示為(X, d) ,其中X是集合,d 是某種度量。 一個度量d 必須滿足以下四條性質:

單位性: d(x,x) = 0

非負性: d(x, y) >0

對稱性: d(x,y) = d(y,x)

三角不等式: d(x,z) ≤ d(x,y)+d(y,x)

3. 柯西序列

對於度量空間(X,d),集合X中的元素組成的序列(x1,x2,x3 .... xn)是柯西序列, 如果對於任意正實數ε, 存在一個整數N,使得以下等式成立:

柯西序列

這裡的數學解釋有點小複雜,還不夠直觀(然而實際定義就是這樣的)。 用簡單的話說,度量空間元素組成的序列如果在某個點收斂(它們無限接近於某個點),這個序列就是柯西序列。

4. 完備度量空間

如果由集合X 中元素組成的每個可能的柯西序列都收斂到集合X中的元素,則度量空間(X, d) 是完備的。 也就是說,由集合元素組成的每個柯西序列的極限所對應元素也屬於該集合, 這也是為什麼它被稱為「完備」的原因。

5. 壓縮映像

在度量空間 (X, d) 的元素上定義的函數(算子或映射)是一個壓縮映像(或壓縮子),如果存在某個常數γ∈[0,1),使得對於度量空間中任意兩個元素x1 和x2,滿足以下條件:

壓縮映像

這也就意味著在將元素x1 和 x2上應用了映射 f(.) 之後,它們彼此之間的距離至少在小於1的一個乘數因子γ意義下更接近 。而且,該常數的最小值被稱為Lipschitz常數(這是生成對抗網絡的重要常數)。 另外,如果γ=1,則映射不再是壓縮映射,而是短映射。 直觀上來說,在應用壓縮映射後,元素之間序列值會越來越接近。

6. 巴拿赫不動點定理

此定理是我們證明的靈魂。非正式地講,這個定理是說,對於一個完整的度量空間,將壓縮映射一遍又一遍地應用到集合的元素上,我們最終將得到唯一的一個最優值。我們知道:

形式上,該定理可以表述為:

令(X, d)是一個完備的度量空間,函數f: X->X是一個壓縮映射,則f具有唯一一個不動點 x*∈ X (即,f(x *)=x *) ,使得序列 f(f(f(…f(x))))收斂至x *。

現在,為了數學上證明這一點,我們需要證明x *的唯一性和存在性。

唯一性: 我們將通過反證法證明這一點。我們假設收斂值不是唯一的,並且x1*和x2 *是壓縮映射序列收斂的兩個值,那麼我們會有:

x1 *和x2 *是最優值,壓縮映射已在這兩點收斂,距離不再會變。此外,注意到f是壓縮映射,因此必須具有以下性質:

現在,由於γ∈[0,1),無法同時滿足等式1和2,導出矛盾(因為此處假定兩點距離大於零)。 因此,我們的假設是錯誤的,x *必是唯一的。

存在性 現在我們已經證明x *是唯一的,我們還需要證明x *存在。 令(x1, x2, x3, …. xn)為重複應用壓縮映射所形成的序列。

重複應用壓縮映射所形成的序列的通項

如果我們假設序列(x1, x2, x3, …. xn)是柯西序列,我們知道該序列將收斂到某個點,例如,x *。 而且,由於度量空間是完整的,所以該收斂點x *屬於度量空間(X,d)。 現在,我們只需要證明此序列是柯西序列即可。 我們取序列中xn和xm中兩個元素,使得m >> n,並使得m足夠大,然後通過重複應用度量d的三角形不等式性質來證明此序列是柯西序列, 我們有:

展開度量d上的三角不等式

現在,由於f是壓縮映射,我們知道:

重複運用壓縮映射不等式

我們可進一步將d(xm, xn)化為如下形式 :

現在,通過選擇一個足夠大的n,我們可以使上式的右邊小於任何正實數 ε 。因此,序列序列(x1, x2, x3, …. xn)是柯西序列,並且存在最優的x *∈X。 這就證明了巴拿赫不動點定理。

四、回到貝爾曼最優性方程

對於值函數V(s),我們定義一個新的算子,即最優貝爾曼算子B,它接受一個值函數並返回一個新的值函數。 具體地,我們將此算子定義如下:

貝爾曼算子

可以很容易地觀察到, B是一個遞歸算子。 因此,對初始值函數重複運用此算子將生成一系列值函數。 如果我們可以證明B確實是某個度量空間(X,d)上的壓縮映射,那麼根據巴拿赫不動點定理,我們可以得出結論,最優貝爾曼算子的重複應用最終將導出唯一的最優值函數函數,通過值函數可以得到最優策略。 因此,我們的工作現在都簡化為證明B是壓縮映射。 首先,讓我們定義度量空間如下:

度量空間(X,d):集合X是值函數的取值空間,定義如下:

註:此圖第一個式子有誤,第二個才是X的定義,表示值函數在所有狀態上的取值,故是實數集的笛卡爾積

對此度量空間,我們使用的L-無窮範數定義如下:

L-無窮範數

根據此度量空間範數的定義,兩個值函數之間的距離等於兩個值函數向量各方向絕對值之差的最大值。 同樣,對於有限獎勵的有限MDP,值函數將始終在實數空間中。 因此,此有限空間是完備的。

定理:貝爾曼算子B是有限空間(X, L-infinity)上的壓縮映射

證明:假設V1和V2是兩個值函數。 則:

B是壓縮映射的證明

在上面的第二步中,我們通過用a代替第二個值函數中的a'來引入不等式。這是因為通過將最優動作a替換為其他動作 a',我們降低了其總價值,從而引入了不等式。

在上面的第四步中,我們通過在狀態空間 s'上取最大值來移除L-無窮範數(回想一下在前面我們關於值函數的L-無窮範數的定義)

在最後一步中,因為概率和始終為1,我們消去了求和號。

最後,在貝爾曼最優性方程中,由於γ∈[0,1)(現在暫時忽略γ= 1的可能性),因此貝爾曼算子是壓縮映射。

現在我們知道:

因此,根據巴拿赫不動點定理,我們得出結論,對每個MDP,存在唯一的最優值函數V *,使用這個值函數,我們可以得到最優策略π *。

因此證明,對於任何有限的MDP,都存在一個最優策略π *,不差於其他所有可能的策略π。

那麼,問題來了,如何找到這種最優的策略和值函數呢?一種方法就是在隨機初始值函數上重複運用貝爾曼算子以獲得最佳函數。但是,這在計算上非常耗時,此法經常是完全不可行的。因此,我們要使用諸如值和策略迭代之類的迭代方法或諸如Q-Learning或SARSA之類的時間差分方法。有關更多信息,請參閱作者的博客(https://towardsdatascience.com/reinforcement-learning-temporal-difference-sarsa-q-learning-expected-sarsa-on-python-9fecfda7467e)或者github(https://github.com/TimeTraveller-San/RL_from_scratch)。

總結

我們了解了一些基本的數學工具,例如度量空間,完備度量空間,柯西序列,壓縮映射和巴拿赫不動點定理。 基於這些數學工具,我們在數學上證明了用於求解 MDP 的貝爾曼最優方程的唯一性和最優性。

via https://towardsdatascience.com/mathematical-analysis-of-reinforcement-learning-bellman-equation-ac9f0954e19f 雷鋒網(公眾號:雷鋒網)雷鋒網雷鋒網

雷鋒網原創文章,未經授權禁止轉載。詳情見轉載須知。

相關焦點

  • 揭秘深度學習成功的數學原因:從全局最優性到學習表徵不變性
    本文的目的正是要揭示深度學習成功的奧秘。通過圍繞著深度學習的三個核心要素——架構、正則化技術和優化算法,並回顧近期研究,作者為深層網絡的若干屬性,如全局最優性、幾何穩定性、學習表徵不變性,提供了一個數學證明。
  • 一個貝爾曼方程求解推導練習
    貝爾曼方程(Bellman Equation)也被稱作動態規劃方程(Dynamic Programming Equation),由理查·貝爾曼(
  • 高考紀念冊~ 期權背後的點點滴滴,無處不在的數學回憶
    記得在高中的時代裡,我們曾經上知天文,下知地理,我們能背好多詩詞,也能分析運動軌跡。曾經,從不等式到複數,從指數對數到三角函數,從解析幾何到排列組合,我痴迷於那些極富想像的數學原理。或許我們會認為生活中的數學就是加減乘除,或許我們很難想像高中時代的數學會在日常生活中發揮什麼作用,但讓我們吃驚的是,當我們有一天需要進階交易期權時,當我們需要深究期權背後的那些原理和邏輯時,高中數學的影子便會無處不在。
  • 強化學習中的線性代數知識
    線性代數的基本原理如何用於深度強化學習?答案是解決了馬爾可夫決策過程時的迭代更新。強化學習(RL)是一系列用於迭代性學習任務的智能方法。由於計算機科學是一個計算領域,這種學習發生在狀態向量、動作等以及轉移矩陣上。狀態和向量可以採用不同的形式。當我們考慮通過某個線性系統傳遞一個向量變量,並得到一個類似的輸出時,應該想到特徵值。
  • 15張動圖告訴你什麼才是真正的數學,學習數學最正確的姿勢
    光波背後的數學原理  我們用數學來得到光波的簡諧運動,這是振動的最簡潔的形式。然後我們打開燈。  雪花背後的數學原理  沒有兩片完全相同的雪花。它們也是美麗的分形。科赫雪花是最早被描述的分形之一。它展示了無盡的重複,這是數學中最有趣的概念之一。它有無限的周長,但面積有限。
  • 小學數學中關於方程的知識要點
    方程思想在數學思想中佔據著極其重要的地位,方程思想構建得是否完善,運用得是否熟練,將直接影響著未來的數學學習是否順利,成績是否優異,因為方程知識始終由淺入深地貫穿於整個數學學科當中,是解決數學問題,以及與數學有關的生產生活當中實際問題的最佳方法。
  • 偏微分方程 學習筆記
    有一句話叫做「數學是大自然的語言,而偏微分方程則是大自然的語法」,從此足以看出偏微分方程在自然界中的廣泛應用。無論是工程領域,量子領域,還是金融領域等,都有著偏微分方程的影子。偏微分方程理論研究的發展,更是衍生出了一系列新的研究領域,例如金融工程這一學科,開始獨立於傳統的金融學,就得益於偏微分方程應用到了期權定價當中,從而催生出了現代金融理論。
  • 圓周率的涵義你知多少(二):π與量子力學
    圓周率的涵義你知多少?的文章裡,我們就關於圓周率π的涵義的一些最基本而又重要的問題,儘量用最通俗的語言予以了最簡單的解釋。其中普朗克常數 h 是一個物理常數,用以描述量子大小,在量子力學中扮演極為重要的角色。鑑於π在量子力學公式中的廣泛應用,為方便起見,常用下面所示的約化普朗克常數 (h 上加一橫,讀作h吧),以便消除量子力學公式中常出現的π:海森堡不確定性原理不確定性原理量子力學的一個基本原理,由德國物理學家海森堡於1927年提出。
  • 刷臉背後:卷積神經網絡的數學原理
    計算機視覺技術在日常生活中有著非常普遍的應用:發朋友圈之前自動修圖、網上購物時刷臉支付……在這一系列成功的應用背後,卷積神經網絡功不可沒。本文將介紹卷積神經網絡背後的數學原理。
  • 股票市場交易中的強化學習|機器學習|強化學習|深度學習
    但是,在數學金融領域,一個重大謬論是存在一些功能的完美組合,這些功能可以為您「預測」市場。與數據科學和機器學習中的許多方法一樣,這個工具實際上只在數據轉換階段提供幫助。這一事實在許多項目中得到了體現,因為最終您只需要相信您目前擁有的組合已經足夠好,可以讓模型學習。
  • 大學專業早知道:數學與應用數學
    愛因斯坦質能方程成就了核子物理,也為人類指出尋找新能源的方向。這些偉大發現的背後都離不開數學原理。 現代生活中數學更是無處不在,從指紋識別到CT技術,從數據處理到信息安全,從大氣科學到火箭飛行器的設計,從地質勘探到施工建築,形形色色的技術革命的背後,數學都扮演著不可缺少的角色。那麼數學到底是怎樣一個學科,包含了哪些專業,未來就業出路如何呢?
  • 數學第一家族和「伯努利方程」
    約翰·伯努利,他是雅各布·伯努利的弟弟,哥哥的任性給約翰帶來沉重壓力,老尼古拉把光耀門楣的重任壓在約翰肩頭,聰明的約翰為了學習數學,最後以攻讀醫科作幌子去讀大學,和萊布尼茨混得特熟。1738年,於《流體力學》一書中,丹尼爾根據伯努利原理給出了等價的數學表述「伯努利方程」:p,代表流體中某點的壓強ν,代表該流體中某點的流速g,為重力加速度
  • 深度強化學習:阿里巴巴「AI 智能體」認知
    近幾年由於無線端小屏化、用戶時間零散化,為了粘住用戶大多數產品背後都基於算法進行推薦,每個用戶打開的手機淘寶、天貓都是千人千面的結果。但目前各產品中的算法Bot以獨立推薦為主,如何使得多個Bots相互協作,為用戶和賣家帶來更多價值,在日常和雙11中都是一個重要問題,同時在金融、量化等領域也存在類似情況。而星際爭霸為研究這一問題提供了理想的模擬實驗環境。」
  • 中考數學重點方程講解分析,如何學好二元一次方程(組)
    方程(組)與不等式(組)一直是中考數學重點知識板塊之一,主要考查考生的運算能力、邏輯推理能力、運用知識解決實際問題的能力等。學生通過方程(組)與不等式(組)的學習,可以培養觀察、分析、比較、類比等思維能力,從而提高分析問題和解決問題的能力等。因此,與方程(組)與不等式(組)有關的題型一直是中考數學重點考查對象之一,如解決實際問題的應用題型。
  • 吳國平:初一學生學習方程,不要只會算,更要掌握方程思想
    方程是研究數量關係和變化規律的數學模型。同時方程作為模型,可以對一些實際(數學)問題構造方程模型;列出方程並求解。運用方程去解決問題,就是從分析問題的數量關係入手,適當設定未知數,把所研究的數學問題中已知量和未知量之間的數量關係,轉化為方程或方程組的數學模型,從而使問題得到解決的思維方法,這就是方程思想。
  • 數學也浪漫~這些數學公式背後的有趣含義你知道嗎?
    原標題:數學也浪漫~這些數學公式背後的有趣含義你知道嗎? 高中數學 數學有他本身的美,數學的背後,有許多有趣的故事。 音樂家說, 數學是世界上最和諧的音符。
  • 改變人類歷史的17大數學方程
    2、對數函數對數函數是指數函數的逆向,它可以幫助我們解決要以某個數字為底,通過指數爆炸得到一個數,需要多少次方這樣的問題。方程log(ab) = log(a) + log(b)是對數函數中至關重要的一個,它竟然實現了「乘法」和「加法」的相互轉化。
  • 100 個最偉大的數學定理,你知多少?
    數學家並沒有免疫這些影響,在 1999 年 7 月的一個數學會議中,Paul 和 Jack Abad 提出了他們的「一百個最偉大的定理」名單。他們給出的排列是基於一下標準;「定理在文獻中的地位、證明的質量與結果的意外性」。這個排列當然同電影還有書排列的一樣的武斷,但是這裡的定理必定都是很有價值的結果。
  • 小升初數學解不定方程,數學老師:教你三種方法快速求解
    小升初數學課程中,開始對孩子們進行不定方程的考察。當方程的個數比方程中未知數的個數少時,這樣的方程通常稱為不定方程,這樣的方程解是不確定的。如果不加限制的話,它的解有無數個;如果附加一些限制條件,那麼它的解的個數就是有限的了。