強化學習 基礎知識

2022-07-04 06:06:09 字數 2125 閱讀 3288

在機器學習中,我們比較熟知的是監督式學習,非監督學習,此外還有乙個大類就是強化學習。強化學習是機器學習的乙個重要分支,是多學科多領域交叉的乙個產物,它的本質是解決自動進行決策,並且可以做連續決策。

它主要包含五個元素,agent(智慧型體),environment(環境),state(狀態),action(行動),reward(獎勵),強化學習的目標就是獲得最多的累計獎勵。

強化學習經典圖:

這張圖很好的解釋了智慧型體和環境之間的相互作用。在某個時間步t,智慧型體處於狀態\(s_t\),採取動作\(a_t\)。然後環境會返回乙個新的狀態\(s_\)和乙個獎勵\(r_\)。獎勵處於\(t+1\)時間步是因為它是由環境在\(t+1\)的狀態\(s_\)返回的,因此讓它們兩個保持一致更加合理。

小孩想要走路,但在這之前,他需要先站起來,站起來之後還要保持平衡,接下來還要先邁出一條腿,是左腿還是右腿,邁出一步後還要邁出下一步。

小孩就是agent,他試圖通過採取action(即行走)來操縱environment(行走的表面),並且從乙個狀態state轉變到另乙個狀態state(即他走的每一步),當他完成任務的子任務(即走了幾步)時,孩子得到reward(給巧克力吃),並且當他不能走路時,就不會給巧克力。

如圖所示:

非監督學習不是學習輸入到輸出的對映,而是學習出模式。例如在向使用者推薦新聞文章的任務中,非監督式會找到使用者先前已經閱讀過類似的文章並向他們推薦其一,而強化學習將通過向使用者先推薦少量的新聞,並不斷獲得來自使用者的反饋,最後構建使用者可能會喜歡的文章的「知識圖」。

監督學習就好比你在學習的時候,有乙個導師在旁邊指點,他知道怎麼是對的怎麼是錯的,但在很多實際問題中,有成千上萬種組合方式的情況,不可能有乙個導師知道所有可能的結果。

而這時,強化學習會在沒有任何標籤的情況下,通過先嘗試做出一些行為得到乙個結果,通過這個結果是對還是錯的反饋,調整之前的行為,就這樣不斷的調整,演算法能夠學習到在什麼樣的情況下選擇什麼樣的行為可以得到最好的結果。

state(縮寫s)環境的狀態,t時刻環境的狀態\(s_t\)是它的環境狀態集中某乙個狀態。

action(縮寫a)智慧型體的動作,t時刻個體採取的動作\(a_t\)是它的動作集中某乙個動作。

reward(縮寫r)環境的獎勵,t時刻個體在狀態\(s_t\)採取的動作\(a_t\)對應的獎勵\(r_\)會在t+1時刻得到。

policy(縮寫\(\pi\))個體的策略,它代表個體採取動作的依據,即個體會依據策略\(\pi\)來選擇動作。最常見的策略表達方式是乙個條件概率分布\(\pi(a|s)\), 即在狀態s時採取動作a的概率。即\(\pi(a|s)=p(a_t=a|s_t=s)\).此時概率大的動作被個體選擇的概率較高。

value(縮寫v)個體在策略\(\pi\)和狀態s時,採取行動後的價值,一般用\(v_\pi(s)\)表示。這個價值一般是乙個期望函式。雖然當前動作會給乙個延時獎勵\(r_\),但是光看這個延時獎勵是不行的,因為當前的延時獎勵高,不代表到了\(t+1\),\(t+2\),...時刻的後續獎勵也高。比如下象棋,我們可以某個動作可以吃掉對方的車,這個延時獎勵是很高,但是接著後面我們輸棋了。此時吃車的動作獎勵值高但是價值並不高。因此我們的價值要綜合考慮當前的延時獎勵和後續的延時獎勵。價值函式\(v\pi(s)\)一般可以表示為下式,不同的演算法會有對應的一些價值函式變種,但思路相同。

\[v_\pi(s)=e_(r_+\gamma}+\gamma^2}+...|s_t=s)

\]\(\gamma\)是模型要素,即獎勵衰減因子,在[0,1]之間。如果為0,則是貪婪法,即價值只由當前延時獎勵決定,如果是1,則所有的後續狀態獎勵和當前獎勵一視同仁。大多數時候,我們會取乙個0到1之間的數字,即當前延時獎勵的權重比後續獎勵的權重大。

\(p^a_\)第七個是環境的狀態轉化模型,可以理解為乙個概率狀態機,它可以表示為乙個概率模型,即在狀態\(s\)下採取動作\(a\),轉到下乙個狀態\(s'\)的概率,表示為\(p^a_\)。

\(\epsilon\)是探索率,這個比率主要用在強化學習訓練迭代過程中,由於我們一般會選擇使當前輪迭代價值最大的動作,但是這會導致一些較好的但我們沒有執行過的動作被錯過。因此我們在訓練選擇最優動作時,會有一定的概率\(\epsilon\)不選擇使當前輪迭代價值最大的動作,而選擇其他的動作。

以上8個就是強化學習模型的基本要素了。當然,在不同的強化學習模型中,會考慮一些其他的模型要素,或者不考慮上述要素的某幾個,但是這8個是大多數強化學習模型的基本要素。

強化學習基礎知識

強化學習四要素 狀態 state 動作 action 策略 policy 獎勵 reward 強化學習就是考慮的是智慧型體 agent 與環境 environment 的互動問題 這裡是引用智慧型體處在乙個環境中,每個狀態為智慧型體對當前環境的感知 智慧型體只能通過動作來影響環境,當智慧型體執行乙個...

強化學習 強化學習基礎

為了應對車載網路中通訊環境快速變化的難題,可以使用強化學習進行解決,這裡對強化學習的基礎進行整理。主要的應用場景為車載網路中資源分配問題。本文源自莫煩python 強化學習章節,有需要請查閱原文 20200413補充了一些內容,來自這篇部落格,是李巨集毅的深度強化學習的筆記。強化學習的主要構成有 a...

強化學習基礎

mdps簡單來說就是乙個智慧型體 agent 採取行動 action 從而改變自己的狀態 state 來獲取獎勵 reward 與環境 environment 互動的過程。mdps的策略完全取決於當前狀態,這也是馬爾科夫性質的體現。可以簡單的表示為 m a,ps a,r 回報 return u s0...