
alphaGo可能已經(jīng)漸漸地淡出了人們的視野。但是他出現(xiàn)是有一定歷史意義。alphaGo 兩次登上自然雜志封面。第二次是因?yàn)?alpha zero 而登上自然雜志, 這次分享以 alphaGo 為基礎(chǔ)進(jìn)行分享,分別是兩個(gè)話題一個(gè)是 神經(jīng)網(wǎng)絡(luò),一個(gè)是今天將的蒙特卡羅搜索樹方法。

我們回顧一下機(jī)器學(xué)習(xí)的歷史,早在 1996 年,深藍(lán)就曾經(jīng)戰(zhàn)勝過(guò)人類國(guó)際象棋冠軍。在沉浸了將近 20 年后才再次在圍棋上戰(zhàn)勝人類。在過(guò)去的 20 年,究竟發(fā)生了什么,為什么 alphaGo 姍姍來(lái)遲呢? 答案是我們?cè)诩夹g(shù)上遇到瓶頸,而這些年隨著一些新技術(shù)和新概念出現(xiàn)的支持,才出現(xiàn)了alphaGo。
國(guó)際象棋和圍棋比起來(lái),
國(guó)際象棋的規(guī)則是由人類創(chuàng)造的,而圍棋規(guī)則設(shè)計(jì)是如此的優(yōu)雅,優(yōu)雅經(jīng)常被用來(lái)形容代碼,這里也被用來(lái)形容圍棋規(guī)則。這說(shuō)明圍棋規(guī)則嚴(yán)謹(jǐn),他不僅屬于人類。
我們通過(guò)一些數(shù)值來(lái)看一看國(guó)際象棋和圍棋的復(fù)雜度對(duì)比國(guó)際象棋棋盤 8 * 8而圍棋棋盤19*19 每一步考慮因數(shù)圍棋是 250 而國(guó)際象棋是 35。 所以圍棋根據(jù)狀態(tài)的選擇就像天上的星星是數(shù)不盡的。
在國(guó)際象棋中我們用到了minmax 規(guī)則,就是將決策樹按層劃分為分別屬于自己和輸入對(duì)手

由于國(guó)際象棋的復(fù)雜度遠(yuǎn)遠(yuǎn)不如圍棋,所以通過(guò)決策樹,就能計(jì)算所有的可能來(lái)做出正確的選擇。
browne Cb 和 Edward powly 在 2012 提出了蒙特卡羅樹搜索方法,為 AI 點(diǎn)亮一盞明燈。
第一次接觸蒙特卡羅這個(gè)概念,是在渲染效果圖時(shí)使用到蒙特卡羅算法來(lái)進(jìn)行渲染。蒙特·卡羅方法(Monte Carlo method),也稱統(tǒng)計(jì)模擬方法,是二十世紀(jì)四十年代中期由于科學(xué)技術(shù)的發(fā)展和電子計(jì)算機(jī)的發(fā)明,而被提出的一種以概率統(tǒng)計(jì)理論為指導(dǎo)的一類非常重要的數(shù)值計(jì)算方法。是指使用隨機(jī)數(shù)(或更常見的偽隨機(jī)數(shù))來(lái)解決很多計(jì)算問(wèn)題的方法。與它對(duì)應(yīng)的是確定性算法。
在正式切入正題前,我想問(wèn)大家一個(gè)問(wèn)題就是什么是 pi 。我們?cè)诟咧谢蚴浅踔芯鸵呀?jīng)學(xué)過(guò)如何計(jì)算pi 。今天我們通過(guò)隨機(jī)模擬方式來(lái)演示一種全新的方式來(lái)算 pi 。我們畫一個(gè)方形,方形中在畫一個(gè)圓形,他們中心重合,并且圓的直徑等于方形的變長(zhǎng)。然后隨機(jī)畫點(diǎn),點(diǎn)在園內(nèi)外的數(shù)量比來(lái)獲取 pi 的值。
蒙特卡洛搜索樹分為四個(gè)階段,如圖 選擇 展開 模擬 和 更新
由于我們這里是根節(jié)點(diǎn),沒(méi)有選擇的余地,所以選擇根節(jié)點(diǎn),然后進(jìn)行展開。
在模擬階段,然后我們以選中的節(jié)點(diǎn),隨機(jī)地進(jìn)行展開其子節(jié)點(diǎn),一層一層地展開樹的直到結(jié)束的得出這次模擬的結(jié)果,可以是真假或者是贏或輸。
然后我們把隨機(jī)模擬得到值(w 我們用 w 表示贏)放回給這個(gè)節(jié)點(diǎn)值為 1/1 第一個(gè) 1 表示贏而第二個(gè) 1 表示進(jìn)行 1 次模擬。
當(dāng)所有子節(jié)點(diǎn),也就是葉節(jié)點(diǎn)都遍歷出之后,我們?cè)谶@一個(gè)級(jí)別選擇一個(gè)節(jié)點(diǎn)作為選擇的節(jié)點(diǎn),以此節(jié)點(diǎn)進(jìn)行更深入的研究。這個(gè)三個(gè)節(jié)點(diǎn)值分別為 1/1 0/1 0/1。
通過(guò)對(duì)比 1/1 0/1 和 0/1 ,我們會(huì)選擇第一個(gè) 1/1 這個(gè)節(jié)點(diǎn),以此節(jié)點(diǎn)為基礎(chǔ),循環(huán) expansion simulation update 這幾個(gè)階段
隨著模擬次數(shù)增加我們的值也也就更接近真實(shí)值,待續(xù)