人工智慧之機器學習篇——強化學習
強化學習
機器學習任務可以劃分為監督學習、無監督學習、和弱監督學習。監督學習面臨的數據樣本有完整的標記,即每一項觀察都有與之對應的決策,機器從這樣的樣本中可以直接學習到從觀察到決策的映射。無監督學習面臨的數據樣本完全沒有標記,機器需要從數據中發現內部的結構信息。弱監督學習的目的,與監督學習一致,然而其獲得的樣本並沒有完整的標記。從標記缺失的形式和處理方式的不同,又可以分為半監督學習、主動學習、多示例學習/多標記學習、和強化學習。半監督學習中,只有少量的樣本具有標記;主動學習中,機器可以詢問真實的標記,但需要考慮詢問的代價;多示例學習中,一個對象表示為一組樣本的包,而標記只在包的層面上,在樣本的層面上卻沒有標記;多標記學習中,一個樣本對應一組標記,因此需要處理巨大的標記組合空間問題;強化學習中,機器需要探索環境來獲得樣本,並且學習的目的是長期的獎賞,因此樣本的標記是延遲的,下面我們詳細介紹。
強化學習研究學習器在與環境的交互過程中,如何學習到一種行為策略,以最大化得到的累積獎賞。與前面我們提到的其它學習問題的不同在於,強化學習處在一個對學習器的行為進行執行和評判的環境中:環境將執行學習器的輸出,發生變化,並且反饋給學習器一個獎賞值;同時學習器的目標並不在於最大化立即獲得的獎賞,而是最大化長期累積的獎賞。例如在俄羅斯方塊遊戲中,學習器所處的環境為遊戲規則,學習器根據當前遊戲的狀態輸出動作,以遊戲得分作為每一次動作的獎賞,學習器需要最大化最終的獎賞總和。強化學習的設定可用下圖來表示。
由於強化學習框架的廣泛適用性,已經被應用在自動控制、調度、金融、網路通訊等領域,在認知、神經科學領域,強化學習也有重要研究價值,例如Frank等人以及Samejima等人在Science上發表了相關論文。強化學習也被機器學習領域著名學者、國際機器學習學會創始主席T. G. Dietterich教授列為機器學習的四大的研究方向之一。
強化學習的目標是最大化累積獎賞,這一點與馬可夫決策過程(MDP)的目標一致,因此強化學習也常常用MDP來建模。一個MDP定義為四元組,其中S表示環境狀態的集合;A為「動作」集合,即學習器的輸出值域;T為轉移函數,定義了環境的根據動作的轉移;R為獎賞函數,定義了動作獲得的獎賞。MDP尋找最優動作策略以最大化累計獎賞。當MDP的四元組全部給出且S和A為有限集合時,求解最優策略的問題即轉變為求解每一個狀態上最優動作這一優化問題,而該優化問題通常可以通過動態規劃來求解:在最終時刻,只需要考慮立即獲得的獎賞,即可得知每個狀態最優動作獲得的獎賞;這一時刻狀態的最優獎賞,隨後用於求解退一時刻狀態的最優動作和最優獎賞。這一關係即著名的Bellman等式。因為MDP四元組全部已知,實際上並不需要與環境交互,也沒有「學習」的味道,動態規劃就可以保證求解最優策略。
強化學習通常要面臨的難題是,對於學習器,MDP四元組並非全部已知,即「無模型」 (model-free)。最常見的情況是轉移函數T未知以及獎賞函數R未知,這時就需要通過在環境中執行動作、觀察環境狀態的改變和環境給出的獎賞值來學出T和R。我們可以把強化學習方法分為基於值函數估計的方法和直接最大化累計獎賞的直接策略搜索方法。
基於值函數估計的方法試圖在與環境交互的過程中估計出每一狀態上每一動作對應的累積獎賞,從而得出最佳策略。這一類方法的代表有時序查分學習方法SARSA和Q-Learning。基於值函數估計的方法由於其目標並不是直接求得策略,而是通過值函數的學習來得到策略,即最終的策略是選擇值函數大的動作,因此在較複雜的任務上會出現「策略退化」的現象,即雖然值函數估計較準確,但得到的策略卻不好。直接最大化累計獎賞的直接策略搜索方法則不依賴於對狀態上累積獎賞的估計,而直接優化策略獲得的累積獎賞。這一類方法的代表有使用策略梯度方法優化參數化策略的REINFORCE方法,以及使用演化演算法等全局優化演算法來搜索策略的NEAT+Q方法等。
強化學習在實際問題上的廣泛使用還面臨諸多挑戰,主要包括特徵表示、搜索空間、泛化能力等方面的問題。
經典強化學習的研究中,狀態和動作空間均為有限集合,每一個狀態和動作被分別處理。然而,一方面許多應用問題具有連續的狀態和動作空間,例如機械臂的控制;另一方面即使對於有限狀態空間,狀態之間也並非沒有聯繫,例如棋盤上走棋有位置關係。因此如何將狀態賦予合適的特質表示將極大的影響強化學習的性能。這一方面的工作包括使用更好的特徵編碼方式等,而近期得益於深度學習技術的發展,特徵可以更有效的從數據中學習,Google DeepMind的研究者在Nature上發表了基於深度學習和Q-Learning的強化學習方法Deep Q-Network,在Atari 2600遊戲機上的多個遊戲取得「人類玩家水平」的成績。一方面可以看到特徵的改進可以提高強化學習的性能,另一方面也觀察到,Deep Q-Network在考驗反應的遊戲上表現良好,而對於需要邏輯知識的遊戲還遠不及人類玩家。
由於強化學習關於累積獎賞的優化目標,涉及多步決策,這使得策略的搜索空間巨大、累積獎賞目標極其複雜,優化非常困難。一方面需要研究更加有效的優化方法,例如使用Cross-Entropy等方法進行優化。另一方面,通過引入模仿學習,可以極大的緩解這一問題。模仿學習中,存在能做到接近最優策略的「教師」,並且由「教師」進行示範,提供一批演示樣本,這些樣本可用於直接指導每一步的動作,因此可以藉助監督學習幫助強化學習。同時模仿學習的另一作用是從演示樣本中學習獎賞函數,稱為逆強化學習,從而可以在應用問題中免去對獎賞函數的定義,例如IJCAI Computers and Thought Award得主斯坦福大學Andrew Ng教授使用逆強化學習進行運動軌跡規劃。
經典的強化學習研究多假設學習器處在穩定環境中,即MDP四元組都是固定不變的,學習器在這樣的環境中進行學習,學習到的策略也只在相同的環境中進行使用和評價。經典的強化學習研究在車床控制、工業機器人等穩定環境中取得了成功的應用。然而隨著強化學習的應用向更多的領域拓展,面對的環境更加複雜,以往的限定條件下的假設不再成立。例如在自動駕駛中,不同配置的車輛駕駛到各種各樣的地形,某一種車輛在某一種地形上學習到的策略可能難以應對。IJCAI Computers and Thought Award得主、AAAI Fellow、美國德克薩斯奧斯丁大學 Peter Stone教授也發文指出限定條件下的強化學習演算法面臨領域過配問題(domain overfitting),限定條件下設計的演算法只能用於特定領域、而難以通用。對此問題,已出現了一些關於強化學習領域遷移的研究。
總之,強化學習的發展是以滿足越來越廣泛的應用需求為方向,強化學習是機器學習領域的重要分支。
※以精確性來提高對機器學習的信任
※機器學習如何從Python 2遷移到Python 3
TAG:機器學習 |