神經(jīng)網(wǎng)絡(luò)是怎樣理解圖片的?谷歌大腦研究員詳解特征可視化
我們總是聽說人工智能在圖像識(shí)別上超越了人類,刷臉也逐漸成了生活中司空見慣的事兒。這些圖像識(shí)別技術(shù)背后,通常是深度神經(jīng)網(wǎng)絡(luò)。
本文引用地址:http://cafeforensic.com/article/201711/371232.htm不過,神經(jīng)網(wǎng)絡(luò)究竟是怎樣認(rèn)識(shí)圖像的?
△特征可視化能夠告訴我們神經(jīng)網(wǎng)絡(luò)在圖片中尋找的是什么
特征可視化這個(gè)強(qiáng)大的工具,就能幫我們理解神經(jīng)網(wǎng)絡(luò)內(nèi)部的世界,知道它們的工作原理。
谷歌研究員Christopher Olah、Alexander Mordvintsev和Ludwig Schubert今天在distill博客上發(fā)文深度探索了特征可視化這個(gè)問題,并順便介紹了一些新trick。
distill.pub是Olah等人今年3月推出的機(jī)器學(xué)習(xí)網(wǎng)站,會(huì)不定期發(fā)表文章,以可視化、可交互的方式來展示機(jī)器學(xué)習(xí)研究成果。
原文地址:https://distill.pub/2017/feature-visualization/。其中包含大量可交互的示例圖片。
下面,量子位對(duì)這篇文章做個(gè)簡(jiǎn)要的介紹:
在2015年谷歌推出的DeepDream基礎(chǔ)上,經(jīng)過AI研究界后來的共同努力,現(xiàn)在,計(jì)算機(jī)視覺模型中每一層所檢測(cè)的東西都可以可視化出來。經(jīng)過在一層層神經(jīng)網(wǎng)絡(luò)中的傳遞,會(huì)逐漸對(duì)圖片進(jìn)行抽象:先探測(cè)邊緣,然后用這些邊緣來檢測(cè)紋理,再用紋理檢測(cè)模式,用模式檢測(cè)物體的部分……
上面是ImageNet訓(xùn)練的GoogLeNet的特征可視化圖,我們可以從中看出它的每一層是如何對(duì)圖片進(jìn)行抽象的。
在神經(jīng)網(wǎng)絡(luò)處理圖像的過程中,單個(gè)的神經(jīng)元是不能理解任何東西的,它們需要協(xié)作。所以,我們也需要理解它們彼此之間如何交互。
通過在神經(jīng)元之間插值,我們可以更好地理解他們是如何彼此交互的。下圖就展示了兩個(gè)神經(jīng)元是如何共同表示圖像的。
Distill原文中的這個(gè)例子,能夠動(dòng)手探索不同神經(jīng)元組合在一起會(huì)得到什么結(jié)果。
當(dāng)然,這篇文章還介紹了一些特征可視化的trick。
在進(jìn)行特征可視化時(shí),得到的結(jié)果通常會(huì)布滿噪點(diǎn)和無意義的高頻圖案。這些高頻圖案似乎和strided convolution或者池化關(guān)系密切。
△反向傳播時(shí),每次strided convolution或池化都會(huì)在梯度幅值上創(chuàng)建棋盤格圖案
我們想更好地理解神經(jīng)網(wǎng)絡(luò)模型是如何工作的,就要避開這些高頻圖案。這時(shí)所用的方法是進(jìn)行預(yù)先規(guī)則化,或者說約束。改變梯度也是一種方法,這種優(yōu)化方法稱為預(yù)處理(preconditioning)。
當(dāng)然,了解神經(jīng)網(wǎng)絡(luò)內(nèi)部的工作原理,也是增強(qiáng)人工智能可解釋性的一種途徑,而特征可視化正是其中一個(gè)很有潛力的研究方向,谷歌的幾位研究員將其視為幫人類理解神經(jīng)網(wǎng)絡(luò)的一個(gè)基礎(chǔ)模塊,可以與其他工具結(jié)合使用。
評(píng)論