cs229 Lecture16 馬爾可夫決策過程

2022-03-31 20:05:57 字數 2087 閱讀 1839

之前講了監督學習和無監督學習,今天主要講「強化學習」。

什麼是強化學習?

強化學習(reinforcement learning,又稱再勵學習,評價學習)是一種重要的機器學習方法,在智慧型控制機械人及分析**等領域有許多應用。但在傳統的機器學習分類中沒有提到過強化學習,而在連線主義學習中,把學習演算法分為三種型別,即非監督學習(unsupervised learning)、監督學習(supervised leaning)和強化學習。

馬爾可夫決策過程是基於馬爾可夫過程理論的隨機動態系統的最優決策過程。馬爾可夫決策過程是序貫決策的主要研究領域。它是馬爾可夫過程與確定性的動態規劃相結合的產物,故又稱馬爾可夫型隨機動態規劃,屬於運籌學中數學規劃的乙個分支。

(以下**:

馬爾科夫決策是乙個五元組,

,用乙個機械人走地圖的例子來說明它們各自的作用

s:狀態集:就是所有可能出現的狀態,在機械人走地圖的例子中就是所有機械人可能出現的位置

a:action,也就是所有可能的行動。機械人走地圖的例子假設機械人只能朝四個方向走,那麼a就是表示四個方向

p:就是機械人在s狀態時採取a行動的概率

γ:叫做discount factor,是乙個0到1之間的數,這個數決定了動作先後對於結果的影響度,在棋盤上的例子來說就是影響了這一步

棋對於最結果的影響有多大可能說起來比較模糊,通過後面的說明可能會講得比較清楚。

r:是乙個reward function,也就是可能是乙個

,也可能是

,對應來說就是地圖上的權值

有了這樣乙個決策過程,那麼機械人在地圖上活動的過程也可以表現為如下的形式:

也就是從初始位置開始,選擇乙個action到達另乙個狀態,直到到達終狀態,因此我們這樣來定義這個過程的價值:

可以看出越早的決定對價值影響越大,其後則依次因為γ而衰減

其實可以看出,給出乙個mdp之後,因為各個元都是定值,所以存在乙個最優的策略(ploicy),策略即是對於每個狀態給出乙個action,最優

策略就是在這樣的策略下從任意乙個初始狀態能夠以最大的價值到達終狀態。策略用π表示。用

表示在策略π下以s為初始狀態所能取得的價值,而通過bellman equation,上式又等於:

注意這是乙個遞迴的過程,在知道s的價值函式之前必去知道所有的s'的價值函式。(價值函式指的是vπ())

而我們定義最優的策略為π*,最優的價值函式為v*,可以發現這兩個東西互為因果,都能互相轉化。

這個過程其實比較簡單,因為我們知道r的值,所以通過不斷更新v,最後v就是converge到v*,再通過v*就可以得到最優策略π*,通

過v*就可以得到最優策略π*其實就是看所有action中哪個action最後的value值最大即可,此處是通過bellman equation,可以通過解bellman equation得到

所有的v的值,這裡有乙個動歸的方法,注意馬爾科夫決策過程中的p其實是指客觀存在的概率,比如機械人轉彎可能沒法精確到乙個方向,而不是指在s狀態

機械人選擇a操作   的概率,剛才沒說清楚

在此說明,也就是說:

是乙個客觀的統計量。

策略迭代法(policy iteration method),動態規劃中求最優策略的基本方法之一。它借助於動態規劃基本方程,交替使用「求值計算」和「策略改進」兩個步驟,求出逐次改進的、最終達到或收斂於最優策略的策略序列。

這次就是通過每次最優化π來使π converge到π*,v到v*。但因為每次都要計算π的value值,所以這種演算法並不常用

cs229 Lecture10 特徵選擇

本節課要點 特徵選擇 vc維 個人還是不太理解。個人的感覺就是為核函式做理論依據,低維線性不可分時,對映到高維就可分,那麼對映到多高呢?我把可分理解為 打散 參考的資料 前面的講解很不錯 模型選擇 選擇過於簡單的模型,可能會導致欠擬合 選擇過於複雜的模型,可能會導致過擬合。那麼問題來了?如何選擇適合...

cs229 Lecture17 離散與維數災難

主要內容 離散化 模型mdp的同化型 model similator 擬合值迭代演算法 q函式 近似政策迭代 筆記 之前我們的狀態都是離散的,如果狀態是連續的,下面將用乙個例子來予以說明,這個例子就是inverted pendulum問題 也就是乙個鐵軌小車上有乙個長桿,要用計算機來讓它保持平衡 其...

cs229 Lecture9 經驗風險最小化

寫在前面 機器學習的目標是從訓練集中得到乙個模型,使之能對測試集進行分類,這裡,訓練集和測試集都是分布d的樣本。而我們會設定乙個訓練誤差來表示測試集的擬合程度 訓練誤差 雖然訓練誤差具有一定的參考價值。但實際上,我們並不關心對訓練集合的 有多麼準確。我們更關心的是對於我們之前沒有見過的乙個全新的測試...