文/樊帆 康兵義
在當(dāng)今社會中,互聯(lián)網(wǎng)已經(jīng)與我們的日常生活和學(xué)習(xí)緊密結(jié)合在一起,我們當(dāng)前處于互聯(lián)網(wǎng)的社會,而現(xiàn)在,我們又將迎接一個全新的時代——AI 的時代。在人工智能時代里,一切都將發(fā)生改變:通信方式,思維形式,甚至倫理道德都將與以往不同。人工智能是一門綜合各種學(xué)科各種專業(yè)且被用于模擬人類思維并自主學(xué)習(xí)的一門新興學(xué)科。隨著人工智能技術(shù)的進一步成熟以及各行各業(yè)對于人工智能產(chǎn)業(yè)投入規(guī)模的日益增長,人工智能與云計算的結(jié)合將不斷加速,全球人工智能產(chǎn)業(yè)規(guī)模在未來10年將進入高速增長期。咨詢公司埃森哲在有關(guān)人工智能進化和分析領(lǐng)域報告中明確指出,預(yù)計到2035年,在人工智能領(lǐng)域深耕的國家的經(jīng)濟規(guī)模將到達一個難以想象的高度。2018年麥肯錫公司的研究報告預(yù)測,到2030年,約70%的公司將采用至少一種形式的人工智能,人工智能新增經(jīng)濟規(guī)模將達到一個新的高度。
在人工智能蓬勃發(fā)展的各個領(lǐng)域中,最受人矚目的莫過于深度學(xué)習(xí),而在深度學(xué)習(xí)的不同分類中,卷積神經(jīng)網(wǎng)絡(luò)則占了主導(dǎo)作用。卷積神經(jīng)網(wǎng)絡(luò)的定義是:具有一定深度表達的,包含卷積、池化等一系列計算的神經(jīng)網(wǎng)絡(luò)。卷積神經(jīng)網(wǎng)絡(luò)仿造生物的視知覺(visual perception)機制構(gòu)建,可以進行監(jiān)督學(xué)習(xí)和非監(jiān)督學(xué)習(xí),其隱含層內(nèi)的卷積核參數(shù)共享和層間連接的稀疏性使得卷積神經(jīng)網(wǎng)絡(luò)能夠以較小的計算量對格點化(grid-like topology)特征,例如像素和音頻進行學(xué)習(xí)、有穩(wěn)定的效果且對數(shù)據(jù)沒有額外的特征工程(feature engineering)要求。
對卷積神經(jīng)網(wǎng)絡(luò)的研究始于二十世紀(jì)80至90年代,時間延遲網(wǎng)絡(luò)和LeNet-5 是最早出現(xiàn)的卷積神經(jīng)網(wǎng)絡(luò)。在二十一世紀(jì)后,隨著深度學(xué)習(xí)理論的提出和數(shù)值計算設(shè)備的改進,卷積神經(jīng)網(wǎng)絡(luò)不斷更迭自身基礎(chǔ)理論并得到了快速發(fā)展,在機器視覺,手寫體識別,自然語言處理NLP 等方向得到了廣泛應(yīng)用。
神經(jīng)網(wǎng)絡(luò)可視化的理論基礎(chǔ)來自于2014年在ECCV 上的經(jīng)典論文:《Visualizing and Understanding Convolutional Networks》,作者首先介紹了CNN 在諸多領(lǐng)域取得的成功,并提出取得更好的成功的三種可能:
(1)更大的訓(xùn)練集;
(2)更加powerful 的GPU;
(3)更好的模型正則化策略( 如Dropout)。
接下來作者提出了上面提到的問題,當(dāng)前仍然不能知道CNN 模型內(nèi)部是如何工作的,也不清楚到底學(xué)到了什么樣的特征,因此提出可以通過使用反卷積神經(jīng)網(wǎng)絡(luò)對網(wǎng)絡(luò)進行可視化。最后通過AlexNet 的模型進行可視化,并根據(jù)可視化結(jié)果對其進行改進,從而得到了更優(yōu)的結(jié)果。文獻中詳細(xì)的論述了CNN 網(wǎng)絡(luò)中每一層所學(xué)習(xí)到的特征,并將其可視化,同時描述了可視化的具體操作。
首先搭建AlexNet 模型進行實施過程前準(zhǔn)備,這是實施所必需的步驟,并研究卷積、池化、下采樣、全連接各層的算法實現(xiàn),并對圖像進行卷積、池化等處理以得到各層的特征圖;將特征圖進行分類并裁剪成固定大小并保存在本地數(shù)據(jù)庫或云數(shù)據(jù)庫中以備后用。
接著通過論文中的Deconvoluted 模型對AlexNet 中每一卷積、池化和全接連層生成一個大小相同且具有相反功能的神經(jīng)網(wǎng)絡(luò)層,在進行反卷積過程中,記錄鄰近層在進行卷積操作時輸出的數(shù)據(jù)位置和大小,并在反卷積層中相同位置填充相同大小的數(shù)據(jù)以進行反卷積、反池化等算法,隨后對反卷積、反池化算法生成的圖像進行微調(diào)以符合實驗要求并還原出原始圖像,此時的圖像與原圖內(nèi)在差異度已經(jīng)很小,可用于后續(xù)操作的顯示。
最終,顯示所有還原的圖像,并根據(jù)原始圖像的類別對還原圖像進行分類并分別顯示于卷積層、池化層、全連接等層。在顯示過程中,可根據(jù)使用習(xí)慣顯示多個層或單一層,以及在顯示微調(diào)過的圖片同時,探究卷積神經(jīng)網(wǎng)絡(luò)中每一個卷積核設(shè)置參數(shù)的調(diào)整對于輸入圖片分類精度的影響,最終實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)的可視化。
卷積神經(jīng)網(wǎng)絡(luò)長期以來是圖像識別領(lǐng)域的核心算法之一,并在學(xué)習(xí)大量數(shù)據(jù)時有穩(wěn)定的表現(xiàn)。對于大規(guī)模圖像分類問題,卷積神經(jīng)網(wǎng)絡(luò)可用于構(gòu)建階層分類器(hierarchical classifier) 或精細(xì)分類識別(fine-grained recognition)來用于提取圖像的判別特征以供其它分類器進行學(xué)習(xí);對于后者,特征提取可以人為地將圖像的不同部份分別輸入卷積神經(jīng)網(wǎng)絡(luò),也可以由卷積神經(jīng)網(wǎng)絡(luò)通過非監(jiān)督學(xué)習(xí)自行提取。
卷積神經(jīng)網(wǎng)絡(luò)可視化的研究,不僅是對于卷積神經(jīng)網(wǎng)絡(luò)內(nèi)部結(jié)構(gòu)的一次探索,更是對未來神經(jīng)網(wǎng)絡(luò)應(yīng)用方向的一次拓展??梢暬膶崿F(xiàn),使得人們對于神經(jīng)網(wǎng)絡(luò)內(nèi)部的結(jié)構(gòu)不再是懵懵懂懂,同時,可視化的實現(xiàn)也使得研究人員對于神經(jīng)網(wǎng)絡(luò)調(diào)整參數(shù)問題有了有力的證據(jù)支撐,在諸如手寫體識別,人臉識別等深度學(xué)習(xí)領(lǐng)域均有較大的作用。綜上所述,神經(jīng)網(wǎng)絡(luò)可視化的實現(xiàn),對于深度學(xué)習(xí)的研究具有較好的輔助作用。