OpenAI發布研究需求2.0:七大人工智慧難題等你來破解
譯者|劉志勇
編輯|Emily、Debra
AI 前線導讀:OpenAI 是家 2015 年末成立的公司,其創始人之一就是剛剛成功發射獵鷹重型運載火箭——現役世界上運力最強的火箭(而且其助推器可回收,並開啟了廉價發射新紀元)——的東家 Elon Musk!OpenAI 主要關注的重點是前沿的機器學習技術,就像被 Google 收購了的 DeepMind 那樣,核心目標是 Solve Intelligence,解決智能,服務人類。與 DeepMind 不同之處在於,OpenAI 會將其研究的內容進行開源分享,讓更多的人擁有和使用 AI,以將最大限度地造福全人類的方式發展人工智慧。此前,OpenAI 曾發布研究需求列表,並催生了幾篇有影響力的論文,加快了 OpenAI 自身的增強學習研究。今天,OpenAI 再次發布了研究需求 2.0!AI 前線就為大家帶來這篇文章,並進行簡單的講解。
更多乾貨內容請關注微信公眾號「AI 前線」,(ID:ai-front)
在 OpenAI 的研究過程中,我們發布了新一批 7 個未解決的問題。就像我們最初發布的研究需求 [1],由此催生了幾篇論文,如 Image-to-Markup Generation with Coarse-to-Fine Attention[2]、Parallel Trust Region Policy Optimization with MultipleActors[3]、Generative Latent Attentive Sampler[4]、Learning from the memory of Atari 2600[5] 等。我們希望,這些問題能夠成為歡迎新手們進入這個領域的有趣而有意義的方式,同時也讓從業者磨練他們的技能(這也是在 OpenAI 得到一份工作的一個好方法)。
課前熱身
如果你不確定從哪裡開始的話,以下是一些解決的入門問題。
註:「」為該問題的難度係數
訓練一個 LSTM 來解決 XOR 問題:即給定一個位序列,確定它的奇偶性。LSTM[6] 應該使用序列,一次一個位,然後在序列末尾輸出正確答案。測試以下兩種方法:
將經典的貪吃蛇遊戲的克隆副本作為 Gym[7] 環境,並通過你選擇的強化學習演算法:近段策略優化(Proximal Policy Optimization,PPO)演算法 [8] 來解決它。把智能體進行遊戲的視頻給我們(@openai)發推,你能訓練出能夠贏得比賽的策略嗎?
AI 前線: Gym 是 OpenAI 為測試和開發 RL 演算法而設計的環境 / 任務的模塊集合。它讓用戶不必再創建複雜的環境。Gym 用 Python 編寫,它有很多的環境,比如機器人模擬或 Atari 遊戲。它還提供了一個在線排行榜,供人們比較結果和代碼。簡而言之,Gym 是一款用於研發和比較強化學習演算法的工具包,它支持訓練智能體(agent)做任何事——從行走到玩 Pong 或圍棋之類的遊戲,都在範圍中。
近段策略優化演算法是 OpenAI 發布的一種新型的強化學習演算法,該演算法的實現和調參十分簡單,並且它的性能甚至要超過現階段最優秀的方法。因為該演算法實現非常簡單並且有優秀的性能,PPO 已經成為了 OpenAI 默認使用的強化學習演算法。
研究需求
Slitherin』。實現並解決一個多玩家貪吃蛇遊戲(見 slither.io 的靈感)的克隆副本作為 Gym 的環境。
環境:有一個相當大的場地與多條蛇;吃到隨機出現的水果時,蛇會變長;一條蛇在與另一條蛇、自身或牆壁相撞時會死亡;當所有的蛇死亡時,遊戲就結束了。遊戲一開始有兩條蛇。智能體:使用自己選擇的 RL 演算法 [9][10] 進行自玩來解決環境問題。您需要嘗試各種方法來克服自玩的不穩定性(這就像人們所見 GAN 的不穩定性)。例如,根據過去的政策分配,嘗試訓練現行政策。哪種方法效果最有效?
檢查習得行為:智能體是否學會了追逐食物並避開其他蛇的能力?智能體是否學會攻擊、陷害,或聯合起來對付競爭對手?
分散式 RL 的參數平均。探討參數平均方案對 RL 演算法中樣本複雜度(Sample complexity)[11] 和通信量的影響。雖然最簡單的解決方案是,在每次更新時,平均每個 worker 的梯度,但你可以通過獨立更新 worker,然後不要常常平均參數,以節省通信帶寬 [12]。在 RL 中,這樣做可能還有一個好處:在任何時候我們都會有不同參數的智能體,這可能會讓我們得以進行更好的探索。另一種可能就是使用像 EASGD(Elastic Averaging SGD,彈性平均梯度下降法)[13] 的演算法,它可以在每次更新時,將參數部分地結合在一起。
AI 前線:樣本複雜度,是指學習機器以高概率學習到某個 「成功的」函數所需要的訓練數據的數目。
因為訓練深度神經網路是非常好使的過程,比如用卷積神經網路去訓練一個目標識別任務需要好幾天來訓練。為了縮短這一過程,現在有一種方法是充分利用集群的資源,加快訓練速度。SparkNet 是基於 Spark 的深度神經網路架構,是建立在 Apache Spark 和 Caffe 深度學習庫的基礎之上的。而 Apache Spark 是圍繞速度、易用性和複雜分析構建的大數據處理框架。EASGD,使不同工作機之間不同的 SGD 以一個「彈性力」連接,也就是一個儲存於參數伺服器的中心變數。這允許局部變數比中心變數更大地波動,理論上允許了對參數空間更多的探索。經驗表明,提高的探索能力有助於在尋找新的局部極值中提升(優化器的)表現。
基於生成模型的不同遊戲間的遷移學習。按以下所述操作:
線性注意力的 Transformers。Transformers 模型使用帶 softmax 的「Soft Attention」模型。如果我們可以使用線性注意力(linear attention)(可將其轉換為快速權重 [16] 的 RNN),那麼我們可以使用所得到的的 RL 模型。具體而言,在龐大的環境中使用 Transformers 進行 RL 部署是不切實際的。但運行一個具有快速權重的 RNN 是非常可行的。你的目標是:採取任何余元建模任務;訓練 Transformers,然後找到一種方法,在不增加參數總數的情況下,使用具有不同超參數的線性注意力 Transformers,來獲得每個字元 / 字的相同位元。只有一個警告:這很可能是個無法實現的結果。但是有條或許有用的提示:與使用 softmax 的注意力模型相比,具有線性注意力的 Transformers 可能需要更高維度的 key/value 的向量,這點可以在不顯著增加參數數量的前提下完成。
AI 前線: Soft Attention 模型,由論文 Neural machine translation by jointly learning to align and translate[17] 提出,並將其應用到機器翻譯。此處 soft,意即在求注意力分配概率分布時,對於輸入鋸子中任意一個單詞都給出個概率,這就是概率分布。而 softmax 用於多分類過程中,它將多個神經元的輸出,映射到 (0,1) 區間內,可以看成概率來理解,從而進行多分類。轉換器(transformers)是 Apache Spark 機器學習框架中的管道組件,是包括特徵變換和學習模型的一種抽象。
習得數據增強(Data Augmentation)。您可以使用習得的 VAE[18] 數據來執行「習得數據增強」。首先要對輸入數據上訓練一個 VAE,然後將每個訓練點編碼到一個潛在空間,然後在潛在空間中應用簡單的(例如高斯)擾動,然後解碼回觀察空間。我們可以用這種方法來獲得改進的泛化嗎?這種數據增強的一個潛在好處是,它可以包括許多非線性變換,如視點變化和場景閃電的變化。我們能近似於標籤不變的轉換集嗎?
AI 前線: VAE 即 Variational Autoencode,變分自編碼器。VAE 可用於對先驗數據分布進行建模。它包括兩部分:編碼器和解碼器。編碼器將數據分布的高級特徵映射到數據的低級表徵,低級表徵叫作本徵向量(latent vector)。解碼器吸收數據的低級表徵,然後輸出同樣數據的高級表徵。VAE 是一個使用學好的近似推斷的有向模型,可以純粹地使用基於梯度的方法進行訓練。數據增強(Data Augmentation)是為了在深度學習中避免出現過擬合(Overfitting),通常我們需要輸入充足的數據量.為了得到更加充足的數據,我們通常需要對原有的圖像數據進行幾何變換,改變圖像像素的位置並保證特徵不變。
強化學習中的正則化。實驗研究(和定性解釋)不同正則化方法對所選 RL 演算法的影響。在有監督的深度學習中,正則化對於改進優化 [19] 和防止過擬合具有極其重要的定義,其方法非常成功,如中途退出(Dropout)[20]、批量歸一化(batch normalization)[21] 和 L2 正則化(L2 regularization)[22]。然而,人們並沒有從正則化的強化學習演算法收益,比如策略梯度 [23] 和 Q-learning[24]。順便提一句,在 RL 中,人們通常使用比監督學習更小的模型,因為大型模型的表現更差——可能是因為它們過於適合最近的經驗。要開始的話,可以閱讀這篇論文:Regularization in Reinforcement Learning。[25] 這是一個相關但更古老的理論研究。
AI 前線: Q-learning 是強化學習中的一個很有名的演算法。Q-lerning 的目標是達到目標狀態 (Goal State) 並獲取最高收益,一旦到達目標狀態,最終收益保持不變。
奧林匹克不等式問題(Olympiad Inequality Problems)的自動化解決方案。奧林匹克不等式問題很容易表達,但解決這些問題通常需要巧妙的手法 [26]。建立一個奧林匹克不等式問題的數據集,編寫一個可以解決大部分問題的程序。目前尚不清楚機器學習在這裡是否有用,但您可以使用一個學習策略來減少分支因素。
AI 前線:國際奧林匹克數學競賽(International Mathematical Olympiad,IMO)素有「數學世界盃」之稱,每年舉辦一次,由參賽國輪流主辦。目的是為了發現並鼓勵世界上具有數學天份的青少年,為各國進行科學教育交流創造條件,增進各國師生間的友好關係。它是國際科學奧林匹克歷史最長的賽事,是國際中學生數學大賽,在世界上影響非常之大。
[1]OpenAI:Requests for Research
[2]Image-to-Markup Generation with Coarse-to-Fine Attention
[3]Parallel Trust Region Policy Optimization with MultipleActors
[4]Generative Latent Attentive Sampler
[5]Learning from the memory of Atari 2600
[6]Attention Is All You Need
[7]Github/gym
[8]Proximal Policy Optimization Algorithms
[9]AlphaGo Zero: Learning from scratch
[10]Competitive Self-Play
[11]Sample complexity
[12]SparkNet: Training Deep Networks in Spark
[13]Deep learning with Elastic Averaging SGD
[14]Atari
[15]Attention Is All You Need
[16]Using Fast Weights to Attend to the Recent Past
[17]Neural Machine Translation by Jointly Learning to Align and Translate
[18]Tutorial-What is a variational autoencoder?
[19]FIXING WEIGHT DECAY REGULARIZATION IN ADAM
[20]Dropout
[21]Batch Normalization?—?What the hey?
[22]Differences between L1 and L2 as Loss Function and Regularization
[23]Policy gradient methods
[24]Q-learning
[25]Regularization in Reinforcement Learning
[26]Olympiad Inequalities
如果覺得內容不錯,記得給我們「留言」和「點贊」,給小編鼓勵一下!


TAG:AI漫遊 |