學習慄 發自 凹非寺 量子位 出品 | 公衆號 QbitAI
△ 開學了,終於可以名正言順地學習了
今天才9月12日。不過,加州伯克利已經開課3周了。
深度強化學習課程CS 294-112,當然也不例外。
8月22日到現在,從行爲的監督學習,講到了策略梯度和演員-評論家,前六節課的視頻已經放出來了。
教授在這門課的主頁上說,不是網課不是網課,但依然會把課件和視頻都掛在網上,還有直播。
△ 一週兩節課,還好還好
當然,國內的各位同學,如果想守着直播,美國西部的時差可能還是有些深重。
反正油管可以回看。
學習,學習一會兒
要上這門深度強化學習,要先上過CS 189,那是機器學習基礎課。
有了基礎的大家,來看一下CS 294都會涉及哪些內容:
如上圖,課程分爲六大部分:
1. 從監督學習到決策 2. 無模型算法:Q-學習,策略梯度,演員-評論家 3. 模型學習和預測 4. 探索 5. 遷移與多任務學習,元學習 6. 開放式問題,學術報告,其他教授來上課
和去年秋季CS 294的區別,就是把“探索 (Exploration) ”拎出來,單成一個版塊,並且有兩堂課專門用來講這個問題。
在沒有任何已知信息的環境裏面,AI要自己去探索世界,一切知識體系都是在試錯過程中建立的。
△ 蒙特祖瑪的復仇:對強化學習非常不友好,獎勵很複雜
而在探索過程中,更多的未知變爲已知,就有了探索未知和利用已知這兩種選擇。
機器需要取捨,是在已知範圍之內,求取獎勵最大化,還是跳出已知範圍,尋找更大的獎勵。
這是強化學習裏,非常重要又非常複雜的一個問題。
不過,這門課要到後半學期,纔會討論到這個問題。那時候,想必大家的課業已經很緊張,還要分給它不小的精力,會很辛苦吧。
所以,先別想太遠的事,看看最近。
9月7日,同學們剛剛上完的第六課,講的是演員-評論家算法。
強化學習的訓練是一個回合 (Episode) 一個回合進行的。如果只用策略梯度 (Policy Gradient) ,就只能在每回合結束時,更新一次策略。
但有了評論家 (Critic) 之後,演員 (Actor) 每走一步,評論家都會爲它的行爲打分。
這樣一來,每個行爲的概率會發生變化,每一步的策略就會有更新。
這節課只是個Intro,看上去要友好許多。
△ 第七課,即將發射 (放大看圖更開心)
今天 (國內的明天凌晨) ,就又要上課了。第七課的標題是:價值函數和Q-學習。
壓力提示:去年秋季的CS294,是把價值函數和Q-學習分開,用兩節課講完的。
用的什麼教材
雖然,教授也並沒有按着哪本教材來上課,不過還是列了一個書單給大家參考。
第一本,是來自Ian Goodfellow等人的《深度學習》“花書”。
後面,可能就是對強化學習的小夥伴們,更有針對性的教材了:
Sutton & Barto, Reinforcement Learning: An Introduction http://incompleteideas.net/book/the-book-2nd.html Szepesvari, Algorithms for Reinforcement Learning http://www.ualberta.ca/~szepesva/RLBook.html Bertsekas, Dynamic Programming and Optimal Control, Vols I and II http://www.athenasc.com/dpbook.html Puterman, Markov Decision Processes: Discrete Stochastic Dynamic Programming http://www.wiley.com/WileyCDA/WileyTitle/productCd-0471727822.html Powell, Approximate Dynamic Programming http://adp.princeton.edu/
也推薦了網課
在CS 294的資源表裏,教授還列出了一些網課。這樣,同學們可以在課餘時間,繼續補課。
不止是補Hinton和吳恩達老師的課:
Geoff Hinton on Coursera https://www.coursera.org/learn/neural-networks Andrew Ng on Coursera https://www.coursera.org/learn/machine-learning/ David Silver’s course on reinforcement learning http://www0.cs.ucl.ac.uk/staff/D.Silver/web/Teaching.html Nando de Freitas’ course on machine learning https://www.cs.ox.ac.uk/people/nando.defreitas/machinelearning/ Andrej Karpathy’s course on neural networks http://cs231n.github.io/
希望大家,都是不會厭學的好孩子。
教授是誰呢?
CS 294-112課程,是助理教授Sergey Levine在講課。
曾經在谷歌大腦工作過的Levine,主要研究用於機器人操作的強化學習算法。
2016年,MIT科技評論選出了35位35歲以下的創新者,當年29歲的Levine赫然上榜。
2017年春季,CS 294首次開課,Levine是三位講師之一。從那年秋季開始,他已經是這門課唯一的講師了。
課程主頁 (下拉有課件) : http://rail.eecs.berkeley.edu/deeprlcourse/
課堂視頻: https://www.youtube.com/playlist?list=PLkFD6_40KJIxJMR-j5A1mkxK26gh_qg37
課堂直播: https://www.youtube.com/c/CalESG/live
舊版課程 (Fall 2017) : http://rail.eecs.berkeley.edu/deeprlcourse-fa17/index.html
p.s.伯克利的計算機樓,名字是真的清爽。