自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

終極版AlphaGo,DeepMind新算法MuZero作者解讀

新聞 人工智能 算法
為慶祝Muzero論文在Nature上的發(fā)表,我特意寫了這篇文章對MuZero算法進(jìn)行詳細(xì)介紹,希望本人能讓你對該算法有一個直觀的了解。

  本文轉(zhuǎn)自雷鋒網(wǎng),如需轉(zhuǎn)載請至雷鋒網(wǎng)官網(wǎng)申請授權(quán)。

為慶祝Muzero論文在Nature上的發(fā)表,我特意寫了這篇文章對MuZero算法進(jìn)行詳細(xì)介紹,希望本人能讓你對該算法有一個直觀的了解。

MuZero是令人振奮的一大步,該算法擺脫了對游戲規(guī)則或環(huán)境動力學(xué)的知識依賴,可以自行學(xué)習(xí)環(huán)境模型并進(jìn)行規(guī)劃。即使如此,MuZero仍能夠?qū)崿F(xiàn)AlphaZero的全部功能——這顯示出其在許多實(shí)際問題的應(yīng)用可能性!

所有一切不過是統(tǒng)計(jì)

MuZero是一種機(jī)器學(xué)習(xí)算法,因此自然要先了解它是如何使用神經(jīng)網(wǎng)絡(luò)的。簡單來說,該算法使用了AlphaGo和AlphaZero的策略網(wǎng)絡(luò)和值網(wǎng)絡(luò):

終極版AlphaGo,DeepMind新算法MuZero作者解讀

策略和值的直觀含義如下:

  • 策略p(s,a)表示在狀態(tài)s時(shí)所有可能的動作a分布,據(jù)此可以估計(jì)最優(yōu)的動作。類比人類玩家,該策略相當(dāng)于快速瀏覽游戲時(shí)擬采取的可能動作。

  • 值v(s)估計(jì)在當(dāng)前狀態(tài)s下獲勝的可能性,即通過對所有的未來可能性進(jìn)行加權(quán)平均,確定當(dāng)前玩家的獲勝概率。

這兩個網(wǎng)絡(luò)任何一個都非常強(qiáng)大:只根據(jù)策略網(wǎng)絡(luò),能夠輕易預(yù)測每一步的動作,最終得到良好結(jié)果;只依賴值網(wǎng)絡(luò),始終選擇值最高的動作。但是,將這兩個估計(jì)結(jié)合起來可以得到更好的結(jié)果。

取勝之路

與AlphaGo和AlphaZero相似,MuZero也使用蒙特卡洛樹搜索方法(MCTS)匯總神經(jīng)網(wǎng)絡(luò)預(yù)測并選擇適合當(dāng)前環(huán)境的動作。

MCTS是一種迭代的,最佳優(yōu)先的樹搜索過程。最佳優(yōu)先意味著搜索樹的擴(kuò)展依賴于搜索樹的值估計(jì)。與經(jīng)典方法(如廣度優(yōu)先或深度優(yōu)先)相比,最佳優(yōu)先搜索利用啟發(fā)式估計(jì)(如神經(jīng)網(wǎng)絡(luò)),這使其在很大的搜索空間中也可以找到有效的解決方案。

MCTS具有三個主要階段:模擬,擴(kuò)展和反向傳播。通過重復(fù)執(zhí)行這些階段,MCTS根據(jù)節(jié)點(diǎn)可能的動作序列逐步構(gòu)建搜索樹。在該樹中,每個節(jié)點(diǎn)表示未來狀態(tài),而節(jié)點(diǎn)間的邊緣表示從一個狀態(tài)到下一個狀態(tài)的動作。

在深入研究之前,首先對該搜索樹及逆行介紹,包括MuZero做出的神經(jīng)網(wǎng)絡(luò)預(yù)測:

終極版AlphaGo,DeepMind新算法MuZero作者解讀

圓圈表示樹節(jié)點(diǎn),對應(yīng)環(huán)境狀態(tài);線表示從一個狀態(tài)到下一個狀態(tài)的動作;根節(jié)點(diǎn)為當(dāng)前環(huán)境狀態(tài),即圍棋面板狀態(tài)。后續(xù)章節(jié)我們會詳細(xì)介紹預(yù)測和動力學(xué)函數(shù)。

模擬:從樹的根節(jié)點(diǎn)出發(fā)(圖頂部的淡藍(lán)色圓圈),即環(huán)境或游戲的當(dāng)前位置。在每個節(jié)點(diǎn)(狀態(tài)s),使用評分函數(shù)U(s,a)比較不同的動作a,并選擇最優(yōu)動作。MuZero中使用的評分函數(shù)是將先前的估計(jì)p(s,a)與v(s')的值結(jié)合起來,即

終極版AlphaGo,DeepMind新算法MuZero作者解讀

其中c是比例因子,隨著值估計(jì)準(zhǔn)確性的增加,減少先驗(yàn)的影響。

每選擇一個動作,我們都會增加其相關(guān)的訪問計(jì)數(shù)n(s,a),以用于UCB比例因子c以及之后的動作選擇。

模擬沿著樹向下進(jìn)行,直到尚未擴(kuò)展的葉子。此時(shí),應(yīng)用神經(jīng)網(wǎng)絡(luò)評估節(jié)點(diǎn),并將評估結(jié)果(優(yōu)先級和值估計(jì))存儲在節(jié)點(diǎn)中。

擴(kuò)展:一旦節(jié)點(diǎn)達(dá)到估計(jì)量值后,將其標(biāo)記為“擴(kuò)展”,意味著可以將子級添加到節(jié)點(diǎn),以便進(jìn)行更深入的搜索。在MuZero中,擴(kuò)展閾值為1,即每個節(jié)點(diǎn)在首次評估后都會立即擴(kuò)展。在進(jìn)行更深入的搜索之前,較高的擴(kuò)展閾值可用于收集更可靠的統(tǒng)計(jì)信息。

反向傳播:最后,將神經(jīng)網(wǎng)絡(luò)的值估計(jì)傳播回搜索樹,每個節(jié)點(diǎn)都在其下保存所有值估計(jì)的連續(xù)均值,這使得UCB公式可以隨著時(shí)間的推移做出越來越準(zhǔn)確的決策,從而確保MCTS收斂到最優(yōu)動作。

中間獎勵

細(xì)心的讀者可能已經(jīng)注意到,上圖還包括r的預(yù)測。某一情況(如棋盤游戲)在完全結(jié)束后提供反饋(獲勝/失敗結(jié)果),這樣可以通過值估計(jì)進(jìn)行建模。但在另外一些情況下,會存在頻繁的反饋,即每次從一種狀態(tài)轉(zhuǎn)換到另一種狀態(tài)后,都會得到回報(bào)r。

只需對UCB公式進(jìn)行簡單修改,就可以通過神經(jīng)網(wǎng)絡(luò)預(yù)測直接對獎勵進(jìn)行建模,并將其用于搜索。

終極版AlphaGo,DeepMind新算法MuZero作者解讀

其中,r(s,a)是指在狀態(tài)s時(shí)執(zhí)行動作a后觀察到的獎勵,而折扣因子γ是指對未來獎勵的關(guān)注程度。

由于總體獎勵可以時(shí)任意量級的,因此在將其與先驗(yàn)獎勵組合之前,我們將獎勵/值估計(jì)歸一化為區(qū)間[0,1]:

終極版AlphaGo,DeepMind新算法MuZero作者解讀

其中,q_min和q_max分別是整個搜索樹中觀察到的最小和最大r(s,a)+γ⋅v(s')估計(jì)。

過程生成

重復(fù)執(zhí)行以下過程可實(shí)現(xiàn)上述MCTS:

  • 在當(dāng)前環(huán)境狀態(tài)下進(jìn)行搜索;

  • 根據(jù)搜索的統(tǒng)計(jì)信息π_t選擇一個動作a_(t+1);

  • 根據(jù)該動作更新環(huán)境,得到新的狀態(tài)s_(t+1)和獎勵u(t+1);

  • 重復(fù)上述過程。

終極版AlphaGo,DeepMind新算法MuZero作者解讀

動作的選擇可以是貪心的(選擇訪問次數(shù)最多的動作),也可以是探索性的:通過一定的溫度t控制探索程度,并對與訪問次數(shù)n(s,a)成比例的動作a進(jìn)行采樣:

終極版AlphaGo,DeepMind新算法MuZero作者解讀

當(dāng)t = 0時(shí),等效貪婪采樣;當(dāng)t = inf時(shí),等效均勻采樣。

訓(xùn)練

現(xiàn)在,我們已經(jīng)學(xué)會了運(yùn)行MCTS來選擇動作,并與環(huán)境互動生成過程,接下來就可以訓(xùn)練MuZero模型了。

首先,從數(shù)據(jù)集中采樣一條軌跡和一個位置,然后根據(jù)該軌跡運(yùn)行MuZero模型:

終極版AlphaGo,DeepMind新算法MuZero作者解讀

可以看到,MuZero算法由以下三部分組成:

  • 表示函數(shù)h將一組觀察值(棋盤)映射到神經(jīng)網(wǎng)絡(luò)的隱藏狀態(tài)s;

  • 動態(tài)函數(shù)g根據(jù)動作a_(t + 1)將狀態(tài)s_t映射到下一個狀態(tài)s_(t + 1),同時(shí)估算在此過程的回報(bào)r_t,這樣模型就能夠不斷向前擴(kuò)展;

  • 預(yù)測函數(shù)f根據(jù)狀態(tài)s_t對策略p_t和值v_t進(jìn)行估計(jì),應(yīng)用UCB公式并將其匯入MCTS過程。

根據(jù)軌跡選擇用于網(wǎng)絡(luò)輸入的觀測值和動作。相應(yīng)地,策略、值和獎勵的預(yù)測目標(biāo)是在生成存儲的軌跡。

從下圖可以看到過程生成(B)與訓(xùn)練(C)之間的一致性:

終極版AlphaGo,DeepMind新算法MuZero作者解讀

具體問言,MuZero估計(jì)量的訓(xùn)練損失為:

  • 策略:MCTS訪問統(tǒng)計(jì)信息與預(yù)測函數(shù)的策略logit之間的交叉熵;

  • 值:N個獎勵的折扣和+搜索值/目標(biāo)網(wǎng)絡(luò)估計(jì)值與預(yù)測函數(shù)的值之間的交叉熵或均方誤差;

  • 獎勵:軌跡觀測獎勵與動態(tài)函數(shù)估計(jì)之間的交叉熵。

重分析

在了解了MuZero的核心思想后,接下來我們將介紹重分析技術(shù),這將顯著提高模型對大量數(shù)據(jù)的搜索效率。

在一般訓(xùn)練過程中,通過與環(huán)境的相互作用,我們會生成許多軌跡,并將其存儲在重播緩沖區(qū)用于訓(xùn)練。那么,我們可以從該數(shù)據(jù)中獲得更多信息嗎?

終極版AlphaGo,DeepMind新算法MuZero作者解讀

很難。由于需要與環(huán)境交互,我們無法更改存儲數(shù)據(jù)的狀態(tài)、動作或獎勵。在《黑客帝國》中可能做到,但在現(xiàn)實(shí)世界中則不可能。

幸運(yùn)的是,我們并不需要這樣。只要使用更新的、改進(jìn)標(biāo)簽的現(xiàn)有輸入,就足以繼續(xù)學(xué)習(xí)??紤]到MuZero模型和MCTS,我們做出如下改進(jìn):

終極版AlphaGo,DeepMind新算法MuZero作者解讀

保持軌跡(觀測、動作和獎勵)不變,重新運(yùn)行MCTS,就可以生成新的搜索統(tǒng)計(jì)信息,從而提供策略和值預(yù)測的新目標(biāo)。

我們知道,在與環(huán)境直接交互過程中,使用改進(jìn)網(wǎng)絡(luò)進(jìn)行搜索會獲得更好的統(tǒng)計(jì)信息。與之相似,在已有軌跡上使用改進(jìn)網(wǎng)絡(luò)重新搜索也會獲得更好的統(tǒng)計(jì)信息,從而可以使用相同的軌跡數(shù)據(jù)重復(fù)改進(jìn)。

重分析適用于MuZero訓(xùn)練,一般訓(xùn)練循環(huán)如下:

終極版AlphaGo,DeepMind新算法MuZero作者解讀

設(shè)置兩組異步通信任務(wù):

  • 一個學(xué)習(xí)者接收最新軌跡,將最新軌跡保存在重播緩沖區(qū),并根據(jù)這些軌跡進(jìn)行上述訓(xùn)練;

  • 多個行動者定期從學(xué)習(xí)者那里獲取最新的網(wǎng)絡(luò)檢查點(diǎn),并使用MCTS中的網(wǎng)絡(luò)選擇動作,與環(huán)境進(jìn)行交互生成軌跡。

為實(shí)現(xiàn)重分析,引入兩個新任務(wù):

終極版AlphaGo,DeepMind新算法MuZero作者解讀

  • 重分析緩沖區(qū),用于接收參與者生成的所有軌跡并保留最新軌跡;

  • 多個重分析行動者從重分析緩沖區(qū)采樣存儲的軌跡,使用學(xué)習(xí)者的最新網(wǎng)絡(luò)檢查點(diǎn)重新運(yùn)行MCTS,并將生成的軌跡和更新的統(tǒng)計(jì)信息發(fā)送給學(xué)習(xí)者。

由于學(xué)習(xí)者無法區(qū)分新軌跡和重分析的軌跡,這使得新軌跡與重分析軌跡的比例更改變得簡單。

MuZero命名含義

MuZero的命名基于AlphaZero,其中Zero表示是在沒有模仿人類數(shù)據(jù)的情況下進(jìn)行訓(xùn)練的,Mu取代Alpha表示使用學(xué)習(xí)模型進(jìn)行規(guī)劃。

更研究一些,Mu還有其他豐富的含義:

  • 夢,日語中讀作mu,表示“夢”的意思, 就像MuZero通過學(xué)習(xí)的模型來想象未來狀況一樣;

  • 希臘字母μ(發(fā)音為mu)也可以表示學(xué)習(xí)的模型;

  • 無, 日語發(fā)音為mu,表示“無、沒有”,這強(qiáng)調(diào)從頭學(xué)習(xí)的概念:不僅無需模仿人類數(shù)據(jù),甚至不需提供規(guī)則。

結(jié)語

希望本文對MuZero的介紹對你有所啟發(fā)!

如果想了解更多細(xì)節(jié),可以閱讀原文,還可以查看我在NeurIPS的poster以及在ICAPS上發(fā)表的關(guān)于MuZero的演講。

最后,分享給你一些其他研究人員的文章,博客和GitHub項(xiàng)目:

<ahelp_12" name="help_12"></ahelp_12">

  • A Simple Alpha(Go) Zero Tutorial

  • MuZero General implementation

  • How To Build Your Own MuZero AI Using Python

  1. 為簡單起見,在MuZero中僅使用單個網(wǎng)絡(luò)進(jìn)行預(yù)測。

  2. 根據(jù)Rémi Coulom在2006年發(fā)表的Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search,MCTS為解決圍棋問題提供可能。具體而言,MCTS中的“蒙特卡洛”指在圍棋比賽中的隨機(jī)模擬數(shù),通過計(jì)算每次隨機(jī)移動得獲勝概率從而選擇合適位置。

  3. MuZero中使用的比例因子為∑bn(s,b)√1+n(s,a)⋅(c1+log(∑bn(s,b)+c2+1c2)),其中n(s,a)表示從狀態(tài)s到動作a的訪問次數(shù),常數(shù)c1和c2分別為1.25和19652,它們決定先驗(yàn)對于值估計(jì)得重要性。請注意,當(dāng)c2遠(yuǎn)大于n時(shí),c2的確切值不再重要,對數(shù)項(xiàng)此時(shí)為0。在這種情況下,公式簡化為c1⋅∑bn(s,b)√1+n(s,a)c1。

  4. 就像AlphaGo之前的許多Go程序使用的隨機(jī)卷展,隨機(jī)評估函數(shù)有一定作用。但如果評估函數(shù)是確定性的(如標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò)),那么對同一節(jié)點(diǎn)多次評估沒什么意義。

  5. 在棋盤游戲中,折扣因子γ為1,TD步數(shù)趨于無限,因此,這僅適用于對蒙特卡洛獎勵(游戲獲勝者)的預(yù)測。

  6. 在運(yùn)行MuZero時(shí),無需單獨(dú)對行動者進(jìn)行重分析:由于只有一組行動者,在每次行動之前決定是與環(huán)境交互生成新軌跡還是對存儲軌跡進(jìn)行重分析。

 

 

責(zé)任編輯:張燕妮 來源: 雷鋒網(wǎng)
相關(guān)推薦

2012-10-22 14:58:21

Office 2013

2014-11-11 17:16:54

SSLStrip

2009-12-04 14:16:22

2022-02-01 15:00:17

Windows 11Windows 10微軟

2024-11-14 10:38:43

2017-01-06 12:08:59

AlphaGoMasterDeepMind

2023-06-08 16:27:22

AlphaGoAIC++

2023-06-20 16:13:37

研究模型

2016-03-10 19:53:13

2018-05-14 10:05:08

2024-11-29 14:00:07

2015-12-29 10:03:40

2016-03-15 09:01:00

2020-10-30 13:10:14

Windows 10任務(wù)管理器PC游戲

2024-06-17 13:34:54

2019-07-21 08:32:51

2025-03-03 09:12:00

2017-03-27 16:35:23

2024-12-02 12:24:15

2016-12-27 15:16:49

損失函數(shù)課程
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號