想揭開深度學(xué)習(xí)隱藏層的神秘面紗?試試Tensor Flow的神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)

鎂客 10年前 (2016-05-25)

谷歌的開源人工智能項(xiàng)目 Tensor Flow 最近創(chuàng)造了一個(gè)神經(jīng)網(wǎng)絡(luò)游樂場(chǎng),其目的是通過讓用戶與隱藏層互動(dòng)和實(shí)驗(yàn)的方式除去這個(gè)隱藏層的神秘面紗。

【編者按】本文作者:Moritz Helmstaedter,由機(jī)器之心編譯,參與:吳攀、盛威、亞洲

引言:為計(jì)算機(jī)構(gòu)建一個(gè)復(fù)雜的神經(jīng)網(wǎng)絡(luò)是人工智能的關(guān)鍵,但人腦的這一活動(dòng)卻被「隱藏層」籠罩在神秘的面紗中。谷歌的開源人工智能項(xiàng)目 Tensor Flow 最近創(chuàng)造了一個(gè)神經(jīng)網(wǎng)絡(luò)游樂場(chǎng),其目的是通過讓用戶與隱藏層互動(dòng)和實(shí)驗(yàn)的方式除去這個(gè)隱藏層的神秘面紗。

想揭開深度學(xué)習(xí)隱藏層的神秘面紗?試試Tensor Flow的神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)

交互式神經(jīng)網(wǎng)絡(luò)「游樂場(chǎng)」可視化提供了理解機(jī)器學(xué)習(xí)的方式的途徑

在《科學(xué)美國人》雜志最近一篇題為「Springtime for AI: TheRise of Deep Learning」(機(jī)器之心已有譯文《深度學(xué)習(xí)崛起帶來人工智能的春天》)的文章中,計(jì)算機(jī)科學(xué)家 Yoshua Bengio 解釋了為什么復(fù)雜神經(jīng)網(wǎng)絡(luò)是人們長久以來一直追求的真正人工智能的關(guān)鍵。要讓計(jì)算機(jī)像人類一樣聰明,就應(yīng)該依照人腦的工作方式給計(jì)算機(jī)編程——這看起來是合乎邏輯的。但是,鑒于我們對(duì)大腦功能的了解太少,這個(gè)任務(wù)看起來就不僅僅是有點(diǎn)困難了。所以深度學(xué)習(xí)到底是如何工作的呢?

Jen Christiansen通過可視化的方法解釋了神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)和功能。

想揭開深度學(xué)習(xí)隱藏層的神秘面紗?試試Tensor Flow的神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)

制圖/Jen Christiansen(漢化/原野)

顯然,為了在整體上解碼圖像,所謂的「隱藏層(hidden layers)」在分解視覺成分(visual component)上發(fā)揮了關(guān)鍵性的作用。而且我們知道這些層是按次序采取行動(dòng)的:從輸入到輸出,每一層所處理的信息越來越復(fù)雜。但除此之外,隱藏層——顧名思義——是被籠罩在神秘的面紗中的。

作為最近的參與的項(xiàng)目 Tensor Flow 的一部分,Daniel Smilkov 和 Shan Carter 創(chuàng)造了一個(gè)神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)(neural network playground,請(qǐng)?jiān)趆ttp://playground.tensorflow.org/ 體驗(yàn)),其目的是通過讓用戶與隱藏層互動(dòng)和實(shí)驗(yàn)的方式除去這個(gè)隱藏層的神秘面紗。

想揭開深度學(xué)習(xí)隱藏層的神秘面紗?試試Tensor Flow的神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)

Daniel Smilkov 和Shan Carter 的隱藏層可視化

最近發(fā)生了很多關(guān)于這個(gè)可視化系統(tǒng)的事情,而我最近非常有幸在 OpenVisConf. 大會(huì)上聽到 Fernanda Viégas 和 Martin Wattenberg 在他們的主題演講中對(duì)此進(jìn)行了一些講解。(Fernanda 和 Martin 屬于 Tensor Flow 背后的團(tuán)隊(duì),而 Tensor Flow 則是一個(gè)為在真實(shí)世界中使用神經(jīng)網(wǎng)絡(luò)的復(fù)雜得多的開源工具。)

這個(gè)神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)并未使用復(fù)雜如面部的數(shù)據(jù),而是使用了分散在一片區(qū)域中的藍(lán)色和橙色的點(diǎn)來「教」機(jī)器學(xué)習(xí)如何尋找和響應(yīng)模式。用戶可以選擇具有不同復(fù)雜度的不同方式的點(diǎn)分布,并且還可以通過增添新的隱藏層來操作該學(xué)習(xí)系統(tǒng)以及每一層中的新神經(jīng)元。然后,每次用戶點(diǎn)擊「play(播放)」按鈕,他就能看到背景顏色的梯度向接近藍(lán)點(diǎn)和橙點(diǎn)的分布方式變化。隨著模式變得越來越復(fù)雜,新增的神經(jīng)元和層可以幫助機(jī)器更成功地完成這一任務(wù)。

想揭開深度學(xué)習(xí)隱藏層的神秘面紗?試試Tensor Flow的神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)

機(jī)器僅使用了一個(gè)帶有兩個(gè)神經(jīng)元的隱藏層就輕松處理了這種直接的點(diǎn)分布

想揭開深度學(xué)習(xí)隱藏層的神秘面紗?試試Tensor Flow的神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)

解碼這種更復(fù)雜的螺旋模式,機(jī)器就更辛苦一點(diǎn)

想揭開深度學(xué)習(xí)隱藏層的神秘面紗?試試Tensor Flow的神經(jīng)網(wǎng)絡(luò)游樂場(chǎng)

動(dòng)圖演示(機(jī)器之心制圖)

除了神經(jīng)元層,機(jī)器還有其它有意義的特征,比如神經(jīng)元之間的連接。這些連接以藍(lán)線或橙線的形式表示:藍(lán)線表示正(positive)——即每一個(gè)神經(jīng)元的輸出與其內(nèi)容相同;橙線表示負(fù)( negative)——即輸出與每一個(gè)神經(jīng)元的值相反。此外,連接線的厚度和不透明度表示的是每一個(gè)神經(jīng)元所作的預(yù)測(cè)的置信度,這就像我們通過一個(gè)學(xué)習(xí)過程取得進(jìn)展時(shí)我們大腦中連接的強(qiáng)化。

有趣的是,隨著我們?cè)跒闄C(jī)器構(gòu)建神經(jīng)元上越做越好,我們可能最終能揭秘關(guān)于我們自己大腦的工作方式的新信息。對(duì)隱藏層的可視化和操作看起來是促進(jìn)這一進(jìn)程的絕佳方式,同時(shí)還能讓深度學(xué)習(xí)的概念接觸到更廣泛的受眾。

最后,記得關(guān)注微信公眾號(hào):鎂客網(wǎng)(im2maker),更多干貨在等你!

鎂客網(wǎng)


科技 | 人文 | 行業(yè)

微信ID:im2maker
長按識(shí)別二維碼關(guān)注

硬科技產(chǎn)業(yè)媒體

關(guān)注技術(shù)驅(qū)動(dòng)創(chuàng)新

分享到