丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號(hào)安全和更好的產(chǎn)品體驗(yàn),強(qiáng)烈建議使用更快更安全的瀏覽器
此為臨時(shí)鏈接,僅用于文章預(yù)覽,將在時(shí)失效
人工智能學(xué)術(shù) 正文
發(fā)私信給張大倩
發(fā)送

0

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

本文作者: 張大倩 編輯:幸麗娟 2020-02-22 14:56
導(dǎo)語(yǔ):深度學(xué)習(xí)的黑盒問(wèn)題一直以來(lái)都是機(jī)器學(xué)習(xí)領(lǐng)域的一大難題,而直接導(dǎo)致這一難題的便是神經(jīng)網(wǎng)絡(luò)中除輸入層和輸出層以外的隱藏層。隱藏層不直接接受外界的信號(hào),也不直接向外界

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

深度學(xué)習(xí)的黑盒問(wèn)題一直以來(lái)都是機(jī)器學(xué)習(xí)領(lǐng)域的一大難題,而直接導(dǎo)致這一難題的便是神經(jīng)網(wǎng)絡(luò)中除輸入層和輸出層以外的隱藏層。

隱藏層不直接接受外界的信號(hào),也不直接向外界發(fā)送信號(hào),因而如何認(rèn)識(shí)隱藏層內(nèi)部的工作原理和運(yùn)行機(jī)制,也成為深度學(xué)習(xí)研究中的一大挑戰(zhàn)。

可視化隱藏層是其中的一個(gè)解決方法,那如何做到呢?

對(duì)此,來(lái)自西蒙弗雷澤大學(xué)的幾位學(xué)生Pallavi Bharadwaj、Inderpartap Cheema、Najeeb Qazi 以及 Mrinal Gosain 合作寫(xiě)作了一篇文章,不僅指出了了解神經(jīng)網(wǎng)絡(luò)隱藏層的重要性,還詳盡地介紹了如何可視化神經(jīng)網(wǎng)絡(luò)以及隱藏層的過(guò)程。

一:神經(jīng)網(wǎng)絡(luò)僅僅變得更智能

大腦皮層中神經(jīng)元之間的連接,啟發(fā)了模仿這些復(fù)雜連接的算法的開(kāi)發(fā)。簡(jiǎn)而言之,可以將神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方法理解為類(lèi)似于新生兒通過(guò)一段時(shí)間的觀察和聆聽(tīng)來(lái)學(xué)習(xí)辨認(rèn)父母的方式。一旦神經(jīng)網(wǎng)絡(luò)接收到相當(dāng)大的所需數(shù)據(jù)集后,該網(wǎng)絡(luò)就會(huì)使用其精確的知識(shí)“權(quán)重”來(lái)證明或識(shí)別未知數(shù)據(jù)樣本上的模式。

讓我們來(lái)思考一下關(guān)于面部識(shí)別的任務(wù),網(wǎng)絡(luò)開(kāi)始分析來(lái)自輸入層圖像的各個(gè)像素。在輸入層之后,“隱藏層”反復(fù)學(xué)習(xí)識(shí)別幾何形狀和特征,這些幾何形狀和特征由眼睛、嘴唇、疤痕等特定的特征構(gòu)成。在最終的輸出層中,它根據(jù)計(jì)算出的概率信息對(duì)人臉進(jìn)行了充分的猜測(cè),并識(shí)別該面孔到底是誰(shuí)。

顯然,這些隱藏層在最終將輸入分解為有價(jià)值的信息方面,起著至關(guān)重要的作用。從輸入到輸出的過(guò)程中每一層處理的信息越來(lái)越復(fù)雜,而且通常而言,隱藏層,顧名思義,這個(gè)名詞籠罩著神秘的色彩,但是它們是這樣嗎?

二:神經(jīng)網(wǎng)絡(luò)坦克城市傳奇

AI 領(lǐng)域流傳了一個(gè)關(guān)于神經(jīng)網(wǎng)絡(luò)的故事,以檢測(cè)坦克為目標(biāo)來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò),結(jié)果神經(jīng)網(wǎng)絡(luò)卻學(xué)會(huì)了檢測(cè)一天的時(shí)間。

這個(gè)故事的來(lái)源是這樣的:

美國(guó)陸軍希望使用神經(jīng)網(wǎng)絡(luò)來(lái)自動(dòng)檢測(cè)偽裝的敵方坦克。 研究人員用兩組數(shù)據(jù)來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò),一組是50張?zhí)箍藗窝b在樹(shù)林中的照片,另一組是50張沒(méi)有坦克的樹(shù)林照片。 然后,研究人員又拍攝了另外一組100張的照片,并進(jìn)行了測(cè)試。

神經(jīng)網(wǎng)絡(luò)將剩余的所有照片都進(jìn)行了正確的分類(lèi)。并且分類(lèi)結(jié)果得到成功確認(rèn)! 研究人員將他們的檢測(cè)方式移交給了五角大樓,五角大樓很快將其退還了,他們抱怨在該神經(jīng)網(wǎng)絡(luò)上的測(cè)試完全失敗。

事實(shí)證明,在用于訓(xùn)練的數(shù)據(jù)集中,偽裝坦克的照片是在陰天拍攝的,而平原森林的圖像是在晴天拍攝的。 神經(jīng)網(wǎng)絡(luò)只不過(guò)是學(xué)會(huì)了區(qū)分多云和晴天,而不是學(xué)會(huì)識(shí)別偽裝的坦克。

無(wú)論故事是否真實(shí),它都突出了深度學(xué)習(xí)中的“數(shù)據(jù)偏向”這一重要問(wèn)題,但同時(shí)也讓一些人認(rèn)識(shí)到,他們只有在得到最終輸出的結(jié)果后才能知道神經(jīng)網(wǎng)絡(luò)正在學(xué)習(xí)什么。即使結(jié)果對(duì)于給定的數(shù)據(jù)而言是正確的,但是更重要的是知道網(wǎng)絡(luò)是如何給出這些結(jié)果的,這就是為什么我們必須要了解隱藏層的工作原理。

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

三:隱藏層內(nèi)層到底是怎樣的?

我們回到網(wǎng)絡(luò)的基本構(gòu)建模塊——神經(jīng)元。 神經(jīng)元的各層構(gòu)成了復(fù)雜、性能最佳的神經(jīng)網(wǎng)絡(luò)。 但問(wèn)題是,每個(gè)神經(jīng)元學(xué)到了什么?是否可以捕獲在任意特定的時(shí)間上的網(wǎng)絡(luò)圖像并查看每個(gè)神經(jīng)元的行為? 俗話說(shuō)“一圖勝千言”,現(xiàn)階段所需要的就是可視化。

在最近的項(xiàng)目中,Tensorflow.js的合著者之一Daniel Smilkov和谷歌大腦團(tuán)隊(duì)的Shan Carter共同創(chuàng)建了一個(gè)神經(jīng)網(wǎng)絡(luò)訓(xùn)練場(chǎng)(  Playground),旨在通過(guò)讓用戶(hù)與其進(jìn)行交互和實(shí)驗(yàn)來(lái)可視化隱藏層。

       深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始                                            The Tensorflow Playground 

有趣的是,我們?cè)诮o機(jī)器學(xué)習(xí)建立更好的模型過(guò)程中,得到了關(guān)于大腦運(yùn)作方式的新信息。 處理和可視化隱藏層是開(kāi)始此過(guò)程的好方法,同時(shí)也讓更多的人能夠理解深度學(xué)習(xí)這一概念。

當(dāng)你對(duì)Tensorflow Playground的感受從玩的很開(kāi)心轉(zhuǎn)換到厭煩時(shí),你就可以加入我們,來(lái)學(xué)習(xí)如何親自構(gòu)建可視化。

四:深入深度學(xué)習(xí)

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

讓我們先來(lái)了解下 Keras可視化工具包(Keras-vis),這是一個(gè)用于可視化和調(diào)試訓(xùn)練過(guò)的神經(jīng)網(wǎng)絡(luò)的高級(jí)開(kāi)發(fā)庫(kù)。

我們使用在ImageNet 數(shù)據(jù)集的子集上經(jīng)過(guò)訓(xùn)練的VGG16網(wǎng)絡(luò)的預(yù)訓(xùn)練權(quán)重,ImageNet 數(shù)據(jù)集由120萬(wàn)張手工標(biāo)注的圖像組成,屬于1/1000的預(yù)定義類(lèi)。

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

這讓我們可以深入地了解使用的層的類(lèi)型、過(guò)濾器大小、可訓(xùn)練的參數(shù)等。請(qǐng)注意,由于池化層不可訓(xùn)練,因此該層有0個(gè)參數(shù)。 最大池化層通過(guò)選擇窗口中的最大值來(lái)減小輸入的大小,并且此過(guò)程不涉及任何權(quán)重更新。

如果我們要將一個(gè)“圖像分類(lèi)問(wèn)題”的輸出層可視化為一個(gè)圖像,那么我們需要將輸出層的激活函數(shù)轉(zhuǎn)換為線性函數(shù)而不是softmax函數(shù)。了解一種檢索與模型各層關(guān)聯(lián)的配置參數(shù)和權(quán)重的方法,會(huì)派上用場(chǎng)。

       深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

       深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

這為我們提供了一些有價(jià)值的信息,例如每一層使用的激活函數(shù),該層是否可訓(xùn)練,過(guò)濾器大小,使用了哪種類(lèi)型的正則器等等。

1、激活最大化:可視化模型的期望

該實(shí)用程序生成的輸入可最大化特定過(guò)濾器在給定層上的激活值。在這里,我們嘗試分析模型將輸入的圖像分類(lèi)為黑熊的期望。

作為人類(lèi),我們知道熊的共同特征是身軀大,腿長(zhǎng),鼻子長(zhǎng),耳朵小而圓,毛發(fā)蓬亂,五個(gè)不能伸縮的爪子和短尾巴。

這里,神經(jīng)網(wǎng)絡(luò)有多個(gè)層次的決定需要做,最后結(jié)合這一類(lèi)別得出結(jié)論。我們需要知道這是一張動(dòng)物的圖片,這只動(dòng)物是熊,然后再根據(jù)熊的顯著特征將其縮小到熊的種類(lèi)(極地熊/黑色熊/棕色熊等)。

我們知道黑熊生活在森林里,北極熊生活在多雪的地區(qū)。作為人類(lèi),即使圖像以白色為背景,我們?nèi)匀荒苷_地識(shí)別出黑熊的圖像。因此一個(gè)訓(xùn)練有素的網(wǎng)絡(luò)應(yīng)該具備這種跨多層學(xué)習(xí)的能力。

我們不需要網(wǎng)絡(luò)區(qū)分綠色和白色背景,需要的是它們根據(jù)熊的特征來(lái)分辨熊的類(lèi)型。我們都不想重蹈覆轍都市傳奇的故事,不是嗎?

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

                                                        黑熊(左)及北極熊(右)圖像

我們嘗試將模型期望的輸入可視化,并將該輸入分類(lèi)為黑熊。要將一個(gè)圖像分類(lèi)為黑熊,我們需要激活輸出層的第295個(gè)索引,因?yàn)樵撍饕c“黑熊”相對(duì)應(yīng)。所以我們通過(guò)激活輸出層的這個(gè)節(jié)點(diǎn)來(lái)逆向構(gòu)造一個(gè)輸入圖像。

(輸出層的每個(gè)節(jié)點(diǎn)都對(duì)應(yīng)一類(lèi)圖像。如果要查看 ImageNet 數(shù)據(jù)集的所有類(lèi)和索引,可以進(jìn)行以下操作。)

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

                                                黑熊(左)和北極熊(右)的激活最大化圖

從上圖可以看出,在最后一層,模型正在尋找上述提到的熊最重要的特征。 在訓(xùn)練過(guò)程中,模型也逐步學(xué)習(xí)各類(lèi)型特征的微小差異。 現(xiàn)在,我們可以確信網(wǎng)絡(luò)正在學(xué)習(xí)正確的一系列特征,以識(shí)別熊!

六:過(guò)程:分層輸出可視化

您可能想知道每個(gè)隱藏層是如何對(duì)輸出層的最終結(jié)果起作用的。對(duì)模型進(jìn)行微調(diào)以獲得預(yù)期的結(jié)果,這一點(diǎn)尤為重要。那怎么做呢?了解具體每一層最突出的一系列特征,使我們能夠在需要時(shí),使用跳躍連接( Skip Connection)來(lái)略過(guò)這些特性。

讓我們考慮一下前面關(guān)于熊分類(lèi)的例子?,F(xiàn)在試著了解網(wǎng)絡(luò)在整個(gè)分類(lèi)過(guò)程中是如何被引導(dǎo)的。我們嘗試提取網(wǎng)絡(luò)的一組隱藏層(block1_conv1、block2_conv1、block3_conv1、block4_conv1)的輸出,并在每個(gè)層中繪制圖像。

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

                                                        黑熊(左)和北極熊(右)的分層輸出

要注意的是,初始層正在學(xué)習(xí)識(shí)別形狀和邊緣等低級(jí)特征。這些層了解輸入的要點(diǎn)。在隨后的圖層中,網(wǎng)絡(luò)會(huì)嘗試接觸越來(lái)越多的模糊圖案,如腿、耳朵、眼睛、顏色等。這就是為什么我們會(huì)說(shuō),網(wǎng)絡(luò)越深,它學(xué)得越好。

網(wǎng)絡(luò)中神秘的隱藏層逐漸捕獲了輸入的最復(fù)雜的特征。

2、顯著圖

圖像中的顯著性是指圖像在視覺(jué)處理環(huán)境中的獨(dú)特特征(像素、分辨率)。它們代表了圖像中最具視覺(jué)吸引力的位置。顯著圖是它們的地形表示法。這種可視化技術(shù)使我們能夠認(rèn)識(shí)到每個(gè)像素在生成輸出過(guò)程中的重要性。 

論文《 Deep Inside Convolutional Networks: Visualising Image Classification Models and Saliency Maps》(《深度卷積網(wǎng)絡(luò):可視化圖像分類(lèi)模型和顯著圖》)最早介紹了這項(xiàng)技術(shù),論文地址:https://arxiv.org/pdf/1312.6034v2.pdf 

顯著圖生成激活類(lèi)的種子輸入熱力圖。讓我們以下面這個(gè)例子來(lái)看看這是什么樣的:    

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

                                                 這是一只可愛(ài)的狗狗,對(duì)吧?

您認(rèn)為上圖中,網(wǎng)絡(luò)應(yīng)該關(guān)注圖像的哪一部分? 當(dāng)然是圖片中右側(cè)的狗。

網(wǎng)絡(luò)將忽略圖像中的其余圖像的像素,將該圖像正確地分類(lèi)為狗的圖片。 現(xiàn)在,我們?nèi)绾沃谰W(wǎng)絡(luò)是否專(zhuān)注于這一部分呢? 這正是顯著圖發(fā)揮重要作用的地方。

顯著圖計(jì)算每個(gè)像素對(duì)結(jié)果的影響。這涉及到計(jì)算輸入圖像上每一個(gè)像素的輸出梯度。正梯度表示像素值的變化會(huì)增加輸出值。 

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

       深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

                        顯著圖-像素的熱力圖

正如我們上面所討論的,這個(gè)模型把焦點(diǎn)放在了圖中狗的臉上。由于梯度的大小等于圖像的大?。ㄔ诿恳粋€(gè)像素計(jì)算出來(lái)的),因此提供了一種只有狗圖像的直覺(jué)。

3、遮擋圖(Occlusion Maps)

顯著圖有助于發(fā)現(xiàn)圖像的獨(dú)特特征,而遮擋圖則有助于找出圖像中對(duì)模型最重要的部分。

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

       深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

遮擋,在英語(yǔ)中的意思是“隱藏或阻擋”某物。 這就是遮擋圖的工作原理。 圖像的某些部分被遮蓋或“遮擋”,與此同時(shí)計(jì)算類(lèi)的概率。 如果概率減少,則圖像的這部分很重要,否則就不重要。

通過(guò)這個(gè)小怪物的圖像可以更好地理解遮擋圖。

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

                                                            小怪物

我們首先加載此圖像,然后繪制它。 下一步是通過(guò)掩蓋圖像的不同部分來(lái)生成概率熱圖。  

  深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

       深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

                    標(biāo)準(zhǔn)化概率的熱圖

現(xiàn)在,使用標(biāo)準(zhǔn)化的概率將遮擋圖轉(zhuǎn)換成灰度掩碼,最后,將其疊加到圖像上。      深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始                                                    遮罩最終圖像(左)和灰度遮罩(右)

這樣我們可以清楚地看到模型進(jìn)行圖像分類(lèi)的側(cè)重點(diǎn)。這為了解錯(cuò)誤分類(lèi)的原因,提供了更深入的說(shuō)明。

via: https://medium.com/sfu-big-data/unveiling-the-hidden-layers-of-neural-networks-6269615fb8a9

雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。

深度學(xué)習(xí)黑盒可視化指南,從隱藏層開(kāi)始

分享:
相關(guān)文章
當(dāng)月熱門(mén)文章
最新文章
請(qǐng)?zhí)顚?xiě)申請(qǐng)人資料
姓名
電話
郵箱
微信號(hào)
作品鏈接
個(gè)人簡(jiǎn)介
為了您的賬戶(hù)安全,請(qǐng)驗(yàn)證郵箱
您的郵箱還未驗(yàn)證,完成可獲20積分喲!
請(qǐng)驗(yàn)證您的郵箱
立即驗(yàn)證
完善賬號(hào)信息
您的賬號(hào)已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說(shuō)