-learning 推導

 

本文的目的是要讓大家了解Q learning 一行簡單的公式

 

 

是如何由數學一步一步慢慢推導而來,Reinforcement learning (加強式學習)是人工智慧的一個分支,主要是藉由定義各個狀態以及動作和適當的指導(給予獎勵、懲罰),機器人即會循序漸進的從無到有學會執行某項任務的演算法,想要仔細瞭解的強烈建議去買本書來看[1],裏面詳詳細的講解RL的各項分析以及推導,而Qlearning即是RL中的其中一個演算法,是目前最廣為使用的RL演算法。

 

想要快速了解的可以看本文或者是以下影片,小編也是從影片中摘錄一些內容下來講述的,當然也很有可能你看完本文還是不懂RL是什麼,畢竟要把一學期的課經由文字描述到通盤了解還是有點困難的,所以小編只擷取Qlearning的推導過程做敘述,希望能帶給喜歡AI的人一點啟發,了解我們是怎麼經由數學來讓機器人學習。

 

        當然你也可以互相搭配這篇我寫的Q learning matlab程式碼講解幫助大家更了解RL

 

柏克萊大學 computer science 的線上課程:

Lecture 8: Markov Decision Processes (MDPs)

Lecture 9: Markov Decision Process II

Lecture 10: Reinforcement Learning

Lecture 11: Reinforcement Learning II

 

小編為了讓大家對照到課本中的章節,前面都有標示,方便大家從書本中前後對照,全書分成16大章節,小編只擷取一些重要的章節出來做介紹。

為了避免文章太過冗長,小編將各個章節分開來,從第三章描述什麼是 RL開始介紹起,不用具備很高深的數學知識,只要稍微懂級數的推法,就可以從無到有推出

Bellman equation,再來第四章、第六章都是在講如何解決RL這個問題,最後經由TD 推出 Q learning 公式。

 

鏈結如下:

Chap3:Reinforcement Learning Problem

 

Chap4:Dynamic Programming

 

Chap6:Temporal Difference Learning (TD)

 

底下附上Q learning 程式學習影片:

 

下面這個影片展示 將盒子前面的兩根桿子 切割成各種不同的狀態 最後經由RL從無到有學習的過程

可以看到機器人剛開始不知道如何做 但隨著練習次數一次一次的變多 機器人找到一個規律了

藉由這個規律 機器人就可以一直往前直走 是不是很神奇呢?

 

 

下面展示用RL學習機器人走路 好可愛XD

 

複雜的機器人也可以喔 只是狀態切割的不同 以及方法的改進 但基礎知識都是由RL演變而來

機器蛇經由一段時間的學習後 知道爬上桌子的技巧了!!

 

 

RL聖經:An introduction to reinforcement learning:

https://webdocs.cs.ualberta.ca/~sutton/book/the-book.html

 

已經出到第二版了

 

 

第二版 重新發布了用python 寫的原始碼

Reference:

[1] Sutton, R., & Barto, A. G. 1998. Introduction to Reinforcement Learning . MIT Press, Cambridge, MA

 

[2] 柏克萊大學 computer science 線上課程:

Lecture 8: Markov Decision Processes (MDPs)

Lecture 9: Markov Decision Process II

Lecture 10: Reinforcement Learning

Lecture 11: Reinforcement Learning II

 

 

arrow
arrow
    創作者介紹
    創作者 Darwin的AI天地 的頭像
    Darwin的AI天地

    我的小小AI 天地

    Darwin的AI天地 發表在 痞客邦 留言(6) 人氣()