Deep Reinforcement Learning的第一次接觸
最近深感隨著歲數的增加,記憶力銳減的特別快,因此昨天(2018/3/24)第一次參加科技部 AI 創新研究中心專案計畫推動辦公室的活動-”DEEP REINFORCEMENT LEARNING SYM…
最近深感隨著歲數的增加,記憶力銳減的特別快,因此昨天(2018/3/24)第一次參加科技部 AI 創新研究中心專案計畫推動辦公室的活動-”DEEP REINFORCEMENT LEARNING SYMPOSIUM”,覺得收穫良多,迫不及待與大家分享。
今天的講者有三個,都從不同的角度出發來看Deep Reinforcement Learning。
- 孫民教授,傳達Deep Reinforcement Learning(DRL)的由來、發展架構、從小例子出發來講授,讓我這DRL的門外漢,一開始聽不會太吃力。
- 吳毅成,本身熱愛棋藝,六子棋也是他發明的(我今天才第一次聽過六子棋這門這玩意,有興趣的人自己google囉~),同時具有棋藝底子和技術底子的人,看Alpha GO的發展真的不太一樣,整場聽下來,出現棋盤的機率比DRL出現的次數來的多,但是也看得出來Domain目前仍然有其重要性。
- 林彥辰,是第三位講者,但是也是今天讓我收穫最多的人,他從實務研究的角度出發,點出DRL目前的缺點,透過三個重點的講述方式,讓我回到家裡,仍然記得~~~
因此,今天的分享不以回憶錄的方式呈現,而是就我所聽到並吸收到的三件事情與大家分享。
1.何謂 Reinforcement Learning(RL)?
目前機器學習,可以分為三類Supervised Learning(監督式學習),Unsupervised Learning(非監督式學習),Reinforcement Learning(增強式學習),目前大家都寄望Reinforcement Learning(增強式學習),能為人工智慧帶來質變與新的希望。
監督式學習 : 如果你現在要辨識貓和狗,你必須要有很多貓和狗的照片(x),並有人去標示哪一張是貓哪一張是狗(y),這個方法最令人討厭的地方,就是需要很大量的標示資料庫,才能發揮作用,建立好模型後每一張照片進來就可以分辨出這張照片是貓和狗。
非監督式學習 :你不需要有貓和狗的標記資料(Y),只需要有狗和貓的照片(X),但是因為資料的限制,所以你就只能把一堆照片中,把照片分成兩群,分得夠好的話,一群大部分是貓,一群大部分是狗, 必須自己揣摩可能答案,但是無法輸入一張一張的照片,然後告訴你這張照片是貓還是狗,因為你沒有告訴她,你的資料哪些是貓,哪些是狗。
增強式學習(強化學習): 是一種類人類/動物學習的方式,就像小孩一樣,如果用手摸插頭被電到一次,受到了負回饋,以後就不會再做,如果孩子用手摸插頭這次沒有被電到,好像不是跟爸爸媽媽耳提面命的一樣,有種挑戰成功的感覺(正回饋),下次就還會再去嘗試(這種學習法..對於人的成長學習過程中很重要)。因此,增強式學習就是這種概念,透過設計reward函數,描述行動和環境互動後的獎罰關係來學習,決定下一步該怎麼做,因此透過這樣的設計,讓原本的機器學習有了監督式學習與非監督學習沒有的”創造力”。

AlphaGO在棋盤大勝後,大家都對AI有著無限的崇景與想像,想說擬人化的演算法,可以跟人一樣有創造力了。然而,真的有那麼神嗎?當大家都好的時候,更要存疑~~~
2.Reinforcement Learning(RL)沒有缺點嗎?
不難發現,目前的RL都應用在電玩、棋譜,有制式化固定式的輸贏判定模式,也就是有固定的reward function,在打磚塊的遊戲中,的確發現,RL這種演算法,可以找出一種,一般人要玩超多次的打磚塊遊戲才會發現的一種特殊玩法,先打穿一條路後,讓球跑到最上面,就會在上層自動地來會碰撞震盪,分數就會很高。
https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2FQ70ulPJW3Gk%3Ffeature%3Doembed&url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DQ70ulPJW3Gk&image=https%3A%2F%2Fi.ytimg.com%2Fvi%2FQ70ulPJW3Gk%2Fhqdefault.jpg&key=a19fcc184b9711e1b4764040d3dc5c07&type=text%2Fhtml&schema=youtube
然而,現實生活中,應用RL卻沒有那麼容易,如何設計一個好的reward function是一個重要的課題,因為當一台車子在路上跑,如果reward function是設計成所花的時間越短,reward越大,則車子應該會做出闖紅燈的行為。
因此,RL在使用上要注意下面三個關鍵,
1.Sample efficiency:
應用的情境為,可以做大量的常識收集資料或者可以在封閉的場域跑模擬資料
2.Reward function needed:
要去設計一個好的reward function,是RL能不能學到你想要他學習的關鍵,就像下面的船,跑最多圈的人是贏家,但是因為同時想得高分,所以reward function裡設計了要吃很多金幣,因此會發現這艘船,因為多了這個reward function反而跑得圈數少很多,就跟小朋友的學習一樣,找錯的獎勵方式,對小孩以後長大的學習不一定有益處。
3.Safety guarantee:
如果沒有設計出一個好的reward function,當應用的場景可能跟生命有關時,可能會做出傷及生命的決策,因此衍伸出很多倫理的問題,這個議題也是目前大家最關注的,因此,有不少的研究者,都在設計怎樣的RL模型架構能學習到人的倫理的行為,台大林守德教授就有做相關的研究,利用收集人類行為資料,讓機器學到人類的倫理行為,如大部分的人都不會闖紅燈。

講了那麼多RL的壞話,但大家對於AlphaGO的神奇魔力,一定會問一個問題…
3. 目前RL 有最適合應用的情境?
其實,今天的講者都專研於RL的相關研究與應用,吳毅成老師應用RL於各式的棋藝與遊戲、孫民老師應用RL找出不同平台下最適合深度學習的架構與google運用於排程相關的工作,讓google資訊中心的用電量下降,同時,RL也應用到機器手臂上,讓機器手臂可以學習到更細緻的動作。
整天聽下來,RL感覺上是AI的明日之星,但是使用上還需要更多的小心與注意,對商業應用而言,應用的領域較為覆雜,不是一個封閉的場域空間,因此,仍是使用監督式學習與非監督學習較為合適,但不管是使用哪一個演算法,資料才是最重要的核心,從基礎做起,有計畫與謀略的收集資料。
對於RL初次接觸的我,對於整個RL的演進過程,還需要反覆反芻才能理解,細節的部分,就等下次讀懂了再跟大家分享。
在夜深人靜時,終於寫完這篇~~實在太感動了,大家晚安~~