免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
10 大深度學(xué)習(xí)架構(gòu):計算機(jī)視覺優(yōu)秀從業(yè)者必備(附代碼實現(xiàn))

選自Analytics Vidhya

作者:FAIZAN SHAIKH 

機(jī)器之心編譯

參與:路雪、李亞洲、黃小天


近日,F(xiàn)aizan Shaikh 在 Analytics Vidhya 發(fā)表了一篇題為《10 Advanced Deep Learning Architectures Data Scientists Should Know!》的文章,總結(jié)了計算機(jī)視覺領(lǐng)域已經(jīng)成效卓著的 10 個深度學(xué)習(xí)架構(gòu),并附上了每篇論文的地址鏈接和代碼實現(xiàn)。機(jī)器之心對該文進(jìn)行了編譯,原文鏈接請見文末。


時刻跟上深度學(xué)習(xí)領(lǐng)域的最新進(jìn)展變的越來越難,幾乎每一天都有創(chuàng)新或新應(yīng)用。但是,大多數(shù)進(jìn)展隱藏在大量發(fā)表的 ArXiv / Springer 研究論文中。


為了時刻了解最新動態(tài),我們創(chuàng)建了一個閱讀小組,在 Analytics Vidhya 內(nèi)部分享學(xué)習(xí)成果。我想和大家分享的是一項關(guān)于研究社區(qū)開發(fā)出的高級架構(gòu)的調(diào)查。


本文包括深度學(xué)習(xí)領(lǐng)域的最新進(jìn)展、keras 庫中的代碼實現(xiàn)以及論文鏈接。為保證文章簡明,我只總結(jié)了計算機(jī)視覺領(lǐng)域的成功架構(gòu)。


什么是高級架構(gòu)?


相比于單一的傳統(tǒng)機(jī)器學(xué)習(xí)算法,深度學(xué)習(xí)算法由多樣化的模型組成;這是由于神經(jīng)網(wǎng)絡(luò)在構(gòu)建一個完整的端到端的模型時所提供的靈活性。


神經(jīng)網(wǎng)絡(luò)有時可比作樂高塊,借助想象力你幾乎可以用它建構(gòu)從簡單到復(fù)雜的任何結(jié)構(gòu)。



我們可以把高級架構(gòu)定義為一個具有良好記錄的成功模型;這主要見于挑戰(zhàn)賽中,比如 ImageNet,其中你的任務(wù)是借助給定的數(shù)據(jù)解決圖像識別等問題。


正如下文所描述的每一個架構(gòu),其中每一個都與常見的模型有細(xì)微不同,在解決問題時這成了一種優(yōu)勢。這些架構(gòu)同樣屬于「深度」模型的范疇,因此有可能比淺層模型表現(xiàn)更好。


計算機(jī)視覺任務(wù)的類型


本文主要聚焦于計算機(jī)視覺,因此很自然地描述了計算機(jī)視覺任務(wù)的分類。顧名思義,計算機(jī)視覺即通過創(chuàng)建人工模型來模擬本由人類執(zhí)行的視覺任務(wù)。其本質(zhì)是人類的感知與觀察是一個過程,它可在人工系統(tǒng)中被理解和實現(xiàn)。


計算機(jī)視覺任務(wù)的主要類型如下:


  • 物體識別/分類:在物體識別中,給出一張原始圖像,你的任務(wù)是識別出該圖像屬于哪個類別。

  • 分類+定位:如果圖像中只有一個物體,你的任務(wù)是找到該物體在圖像中的位置,一個更專業(yè)的稱謂是定位。

  • 物體檢測:在物體檢測中,你的任務(wù)是找到圖像中多個物體的各自位置。這些物體可能屬于同一類別,或者各自不同。

  • 圖像分割:圖像分割是一個稍微復(fù)雜的任務(wù),其目標(biāo)是將每一個像素映射到正確的分類。



深度學(xué)習(xí)架構(gòu)清單


現(xiàn)在我們明白了什么是高級架構(gòu),并探討了計算機(jī)視覺的任務(wù)分類,現(xiàn)在讓我們列舉并描述一下最重要的深度學(xué)習(xí)架構(gòu)吧。


1. AlexNet


AlexNet 是首個深度架構(gòu),它由深度學(xué)習(xí)先驅(qū) Geoffrey Hinton 及其同僚共同引入。AlexNet 是一個簡單卻功能強大的網(wǎng)絡(luò)架構(gòu),為深度學(xué)習(xí)的開創(chuàng)性研究鋪平了道路。下圖是論文作者提出架構(gòu)的示圖。



如圖所示,分解后的 AlexNet 像是一個簡單的架構(gòu),卷積層和池化層層疊加,最上層是全連接層。這是一個非常簡單的架構(gòu),其早在 80 年代就已被概念化。但是該模型的突出特征是其執(zhí)行任務(wù)的規(guī)模與使用 GPU 進(jìn)行訓(xùn)練。20 世紀(jì) 80 年代,訓(xùn)練神經(jīng)網(wǎng)絡(luò)使用的是 CPU,而 AlexNet 借助 GPU 將訓(xùn)練提速了 10x。


論文:ImageNet Classification with Deep Convolutional Neural Networks


  • 鏈接:https://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf

  • 代碼實現(xiàn):https://gist.github.com/JBed/c2fb3ce8ed299f197eff


2. VGG Net


VGG 網(wǎng)絡(luò)由牛津可視化圖形組(Visual Graphics Group)開發(fā),因此其名稱為 VGG。該網(wǎng)絡(luò)的特點是金字塔形,與圖像最近的底層比較寬,而頂層很深。



如上圖所示,VGG 包含池化層之后的卷積層,池化層負(fù)責(zé)使層變窄。他們在論文中提出多個此類網(wǎng)絡(luò),不同之處在于架構(gòu)深度的變化。



VGG 的優(yōu)勢:


  • 適合在特定任務(wù)上進(jìn)行基準(zhǔn)測試。

  • VGG 的預(yù)訓(xùn)練網(wǎng)絡(luò)可在互聯(lián)網(wǎng)上免費獲取,因此被廣泛用于各種應(yīng)用。


另一方面,它的主要缺陷在于如果從頭訓(xùn)練,則過程緩慢。即使在性能很好的 GPU 上,也需要一周多的時間才能完成訓(xùn)練。


論文:Very Deep Convolutional Networks for Large-Scale Image Recognition


  • 鏈接:https://arxiv.org/abs/1409.1556

  • 代碼實現(xiàn):https://github.com/fchollet/keras/blob/master/keras/applications/vgg16.py


3. GoogleNet


GoogleNet(或 Inception 網(wǎng)絡(luò))是谷歌研究者設(shè)計的一種架構(gòu)。GoogleNet 是 ImageNet 2014 的冠軍,是當(dāng)時最強大的模型。


該架構(gòu)中,隨著深度增加(它包含 22 層,而 VGG 只有 19 層),研究者還開發(fā)了一種叫作「Inception 模塊」的新型方法。



如上圖所示,它與我們之前看到的序列架構(gòu)發(fā)生了很大改變。單個層中出現(xiàn)了多種「特征抽取器(feature extractor)」。這間接地改善了該網(wǎng)絡(luò)的性能,因為該網(wǎng)絡(luò)在訓(xùn)練過程中有多個選項可以選擇,來解決該任務(wù)。它可以選擇與輸入進(jìn)行卷積,也可以直接將其池化。



最終架構(gòu)包括堆疊在一起的多個 inception 模塊。GoogleNet 的訓(xùn)練過程也有稍許不同,即最上層有自己的輸出層。這一細(xì)微差別幫助模型更快地進(jìn)行卷積,因為模型內(nèi)存在聯(lián)合訓(xùn)練和層本身的并行訓(xùn)練。


GoogleNet 的優(yōu)勢在于:


  • GoogleNet 訓(xùn)練速度比 VGG 快。

  • 預(yù)訓(xùn)練 GoogleNet 的規(guī)模比 VGG 小。VGG 模型大于 500 MB,而 GoogleNet 的大小只有 96MB。


GoogleNet 本身沒有短期劣勢,但是該架構(gòu)的進(jìn)一步改變使模型性能更佳。其中一個變化是 Xception 網(wǎng)絡(luò),它增加了 inception 模塊的發(fā)散極限(我們可以從上圖中看到 GoogleNet 中有 4 個 inception 模塊)?,F(xiàn)在從理論上講,該架構(gòu)是無限的(因此又叫極限 inception?。?。


論文:Rethinking the Inception Architecture for Computer Vision


  • 鏈接:https://arxiv.org/abs/1512.00567

  • 代碼實現(xiàn):https://github.com/fchollet/keras/blob/master/keras/applications/inception_v3.py


4.ResNet


ResNet 是一個妖怪般的架構(gòu),讓我們看到了深度學(xué)習(xí)架構(gòu)能夠有多深。殘差網(wǎng)絡(luò)(ResNet)包含多個后續(xù)殘差模塊,是建立 ResNet 架構(gòu)的基礎(chǔ)。下圖是殘差模塊的表示圖:



簡言之,一個殘差模塊有兩個選擇:完成輸入端的一系列函數(shù),或者跳過此步驟。


類似于 GoogleNet,這些殘差模塊一個接一個地堆疊,組成了完整的端到端網(wǎng)絡(luò)。



ResNet 引入的新技術(shù)有:


  • 使用標(biāo)準(zhǔn)的 SGD,而非適應(yīng)性學(xué)習(xí)技術(shù)。它聯(lián)通一個合理的初始化函數(shù)(保持訓(xùn)練的完整性)做到的這一點。

  • 輸入預(yù)處理的變化,輸入首先被區(qū)分到圖像塊中,然后輸送到網(wǎng)絡(luò)中。


ResNet 主要的優(yōu)勢是數(shù)百,甚至數(shù)千的殘差層都能被用于創(chuàng)造一個新網(wǎng)絡(luò),然后訓(xùn)練。這不同于平常的序列網(wǎng)絡(luò),增加層數(shù)量時表現(xiàn)會下降。


論文:Deep Residual Learning for Image Recognition


  • 鏈接:https://arxiv.org/abs/1512.03385

  • 代碼實現(xiàn):https://github.com/fchollet/keras/blob/master/keras/applications/resnet50.py


5. ResNeXt


ResNeXt 據(jù)說是解決目標(biāo)識別問題的最先進(jìn)技術(shù)。它建立在 inception 和 resnet 的概念上,并帶來改進(jìn)的新架構(gòu)。下圖是對 ResNeXt 模塊中的殘差模塊的總結(jié)。


圖 1. 左:ResNet 塊。右:基數(shù)=32 的 ResNeXt 塊,復(fù)雜度大致相同。層顯示為(# in channels, filter size, # out channels)。


論文:Aggregated Residual Transformations for Deep Neural Networks


  • 鏈接:https://arxiv.org/pdf/1611.05431.pdf

  • 代碼實現(xiàn):https://github.com/titu1994/Keras-ResNeXt


6. RCNN (基于區(qū)域的 CNN)


基于區(qū)域的 CNN 架構(gòu)據(jù)說是所有深度學(xué)習(xí)架構(gòu)中對目標(biāo)檢測問題最有影響力的架構(gòu)。為了解決檢測問題,RCNN 嘗試在圖像中所有物體上畫出邊界框,然后識別圖像中的物體。工作原理如下:



RCNN 結(jié)構(gòu)如下:



論文:Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks


  • 鏈接:https://arxiv.org/abs/1506.01497

  • 代碼實現(xiàn):https://github.com/yhenon/keras-frcnn


7. YOLO (You Only Look once)


YOLO 是當(dāng)前深度學(xué)習(xí)領(lǐng)域解決圖像檢測問題最先進(jìn)的實時系統(tǒng)。如下圖所示,YOLO 首先將圖像劃分為規(guī)定的邊界框,然后對所有邊界框并行運行識別算法,來確定物體所屬的類別。確定類別之后,yolo 繼續(xù)智能地合并這些邊界框,在物體周圍形成最優(yōu)邊界框。


這些步驟全部并行進(jìn)行,因此 YOLO 能夠?qū)崿F(xiàn)實時運行,并且每秒處理多達(dá) 40 張圖像。


盡管相比于 RCNN 它的表現(xiàn)有所降低,但在日常實時的問題中它還是有優(yōu)勢的。下圖是 YOLO 架構(gòu)的示圖:



論文:You Only Look Once: Unified, Real-Time Object Detection


  • 鏈接:https://pjreddie.com/media/files/papers/yolo.pdf

  • 代碼實現(xiàn):https://github.com/allanzelener/YAD2K


8.SqueezeNet


SqueeNet 架構(gòu)是在移動平臺這樣的低寬帶場景中極其強大的一種架構(gòu)。這種架構(gòu)只占用 4.9 MB 的空間,而 Inception 架構(gòu)大小為 100MB。這種巨大的差距由一種名為 Fire Module 的特殊結(jié)構(gòu)引起。下圖是 Fire Module 的表示圖:



SqueezeNet 的完整架構(gòu)如下:



論文:SQUEEZENET: ALEXNET-LEVEL ACCURACY WITH 50X FEWER PARAMETERS AND <0.5mb model="">


  • 鏈接:https://arxiv.org/abs/1602.07360

  • 代碼實現(xiàn):https://github.com/rcmalli/keras-squeezenet


9.SegNet 


SegNet 是一個用于解決圖像分割問題的深度學(xué)習(xí)架構(gòu)。它包含處理層(編碼器)序列,之后是對應(yīng)的解碼器序列,用于分類像素。下圖是 SegNet 解析圖:



SegNet 的一個主要特征是在編碼器網(wǎng)絡(luò)的池化指標(biāo)與解碼器網(wǎng)絡(luò)的池化指標(biāo)連接時,分割圖像保留高頻細(xì)節(jié)。簡言之,直接進(jìn)行信息遷移,而非卷積它們。在處理圖像分割問題時,SgeNet 是最好的模型之一。


論文:SegNet: A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation


  • 鏈接:https://arxiv.org/abs/1511.00561

  • 代碼實現(xiàn):https://github.com/imlab-uiip/keras-segnet


10.GAN


GAN 是神經(jīng)網(wǎng)絡(luò)架構(gòu)中完全不同的類別。GAN 中,一種神經(jīng)網(wǎng)絡(luò)用于生成全新的、訓(xùn)練集中未曾有過的圖像,但卻足夠真實。例如,以下是 GAN 工作原理的解析圖。



論文:Generative Adversarial Networks


  • 鏈接:https://arxiv.org/abs/1406.2661

  • 代碼實現(xiàn):https://github.com/bstriner/keras-adversarial


原文地址:https://www.analyticsvidhya.com/blog/2017/08/10-advanced-deep-learning-architectures-data-scientists/


本文為機(jī)器之心編譯,轉(zhuǎn)載請聯(lián)系本公眾號獲得授權(quán)。

?------------------------------------------------

加入機(jī)器之心(全職記者/實習(xí)生):hr@jiqizhixin.com

投稿或?qū)で髨蟮溃篹ditor@jiqizhixin.com

廣告&商務(wù)合作:bd@jiqizhixin.com

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
數(shù)據(jù)科學(xué)家必須知道的10個深度學(xué)習(xí)架構(gòu)
圖解十大 CNN 架構(gòu)
【重磅】計算機(jī)視覺和CNN 發(fā)展十一座里程碑(附論文下載)
ResNet, AlexNet, VGG, Inception: 理解各種各樣的CNN架構(gòu)
深度學(xué)習(xí)之卷積神經(jīng)網(wǎng)絡(luò)經(jīng)典模型介紹
回顧五個強大的CNN架構(gòu)介紹及Python示例
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服