卷積?神經?網絡?教你從讀懂詞語開始了解計算機視覺識別最火模型

2021-01-07 TechWeb

大數據文摘作品,編譯 | 璐,高寧,樊恆巖,田奧。

簡介

卷積神經網絡聽起來像一個奇怪組合。這個名字涉及了生物學、數學,還有一點計算機科學亂入,但它卻是計算機視覺領域最具影響的創新。在2012年,由於Alex Krizhevsky使用神經網絡贏得了ImageNet挑戰賽的冠軍(這個比賽可被看作計算機視覺領域的奧運會),神經網絡第一次嶄露頭角。神經網絡把分類誤差從26%降低到15%,這在當時是一個令人震驚的進步。

從那以後,大量公司在他們的核心業務中使用深度學習。Facebook把神經網絡用在自動標籤算法上,google把它用於相片搜索,亞馬遜把它用於產品推薦,Pinterest把它用於房屋列表個性化,Instagram把它用於搜索框架。

然而,神經網絡經典且最常用的使用案例仍是圖像處理。就讓我們一起來看看,CNN(卷積神經網絡)是如何在圖像處理任務中實現圖像分類的。

問題描述

圖像分類這項任務旨在把輸入的圖片分入某一特定類別(例如一隻貓或者狗等)或者可能性最大的類別。對我們人類而言,圖像識別的能力是我們從出生起就在學習的一項任務,這項任務對於成年人來說更是不費吹灰之力。無需多想,我們就能迅速而準確地識別出我們所處的環境和我們周圍的物體。大多數時候,當我們看到圖片或者是周圍的世界時,甚至不用刻意觀察,我們就可以立刻描繪出場景的特徵,並給每個物體貼上標籤。這些迅速識別模式、歸納知識以及適應不同圖像與環境的技能一直是機器難以擁有的。

輸入和輸出

當電腦看見一張圖像(把圖像作為輸入),它實際上看到的是一個由像素值組成的數組。基於解析度和圖像的大小,它會看到一個32 x 32 x 3的數組(3指的是RGB的值)。假設我們有一張JPG格式、大小為480 x 480的彩色圖片,那麼它對應的就是一個480 x 480 x 3的數組。數組中的每一個數字都是介於0到255之間的,這些數字代表像素在這一點的強度。儘管這些數字對於人類做圖像分類是毫無意義的,它們卻是電腦唯一能得到的輸入信息。計算機識別圖像的基本思路是,你把這個數組輸入給電腦,它就會輸出一個數字,代表該圖像屬於某一特定分類的概率(例如,80%的概率是貓,15%的概率是狗,5%的概率是鳥)。

計算機的任務

現在我們知道了問題所在,以及輸入和輸出,下面我們就該來思考一下怎麼完成這個過程了。我們希望計算機能夠區分開我們輸入的所有圖像,並且識別出其獨特的特徵,比如哪些特徵是狗特有的,哪些是貓特有的。這個過程也會在我們的大腦中下意識地進行。當我們觀察狗的圖片時,我們會在圖片中尋找可識別的特徵,例如爪子或者4條腿,這樣我們就能將它正確地分類。同樣的,通過尋找例如邊緣和曲線之類的底層特徵,並通過一系列的卷積層建立一個更加抽象的概念,電腦也能進行圖像分類。這是CNN工作原理的概覽。下面讓我們來了解一下它工作的細節。

與生物學的聯繫

首先,講一點背景知識。當你剛聽到卷積神經網絡這一術語時,你可能會想到神經學或者生物學。沒錯,就是這樣!一定程度上,CNN確實從視覺皮層的生物學中汲取了靈感。視覺神經中有一個小分區中的細胞對特定視覺區域很敏感。這個想法是從Hubel和Wiesel在1962年做的一個有趣的實驗中擴展得來的。實驗顯示,大腦中的一些特別的神經細胞只會對特定方向的邊緣做出反應。例如,一些神經元在看到垂直的邊緣時會被激發,而另外一些則會被水平或者斜對角邊緣激發。Hubel和Wiesel發現所有這些神經元都排列在一個圓柱構架中,它們一起工作,產生視覺感知。系統中特定部件完成特定任務的想法(視覺皮層中的神經細胞尋找特定特徵)對機器也適用,它是CNN的基本原理。

結構

回到細節上來,CNN所需做的是,拿到圖像,輸入一系列卷積、非線性、池化(下採樣)和完全連接的層中,最終得到一個輸出。就像我們之前說的,輸出可以是能最好描述圖的分類的一個單一結果或者一組分類的概率。現在,最難的部分即是理解每一層的工作原理。首先讓我們來看看最重要的部分。

第一層(數學部分)

CNN的第一層通常是卷積層。首先,你需要記住卷基層的輸入是什麼。如上所述,輸入是一個32 x 32 x 3的像素值數組。現在,解釋卷積層的最好的方法就是想像一個手電筒正從圖像的左上角照過。我們假設這個手電筒的光覆蓋了一個5 x 5的區域。然後,我們想像這個手電筒的光照過輸入圖像的所有區域。在機器學習的術語中,這個手電筒叫做過濾器(有時也被稱作神經元或者內核),手電筒照過的區域稱作感受域。現在這個過濾器也是一個數組(其中的數字被稱為權重或者參數)。一個非常重要的注意事項是過濾器的深度要和輸入的深度相同(這保證可以進行數學運算),所以這個過濾器的大小是5 x 5 x 3。現在我們以濾器的第一個位置為例,即圖像左上角。隨著過濾器在輸入圖像上滑動,或者進行卷積運算,過濾器中的值會和圖像上的原始值相乘(又稱作計算點積)。將這些乘積相加(從數學角度講,一共會有75個乘積),你就得到了一個數字。記住,這個數字只是過濾器在圖像左上角時得到的結果。現在,我們在輸入內容的每一個位置重複這一過程。(下一步是把過濾器向右移動一個單位,然後再右移一個單位,以此類推)。輸入內容上的每一個特有位置都會產生一個值。過濾器滑過所有位置後,你會發現你得到了一個28 x 28 x 1的數組,我們把它稱作激活映射或特徵映射。你得到一個28 x 28數組的原因是,5 x 5的過濾器在32 x 32的輸入圖像上有784個不同的位置。這784個數字映射成了一個28 x 28的數組。

(小註:包含上圖在內的本文的一些圖片,來自一本Michael Nielsen寫的《神經網絡和深度學習》,強烈推薦。)

假設現在我們用兩個而非一個5 x 5 x 3的過濾器,那麼我們的輸出就變成了28 x 28 x 2的數組。通過使用更多的過濾器,我們能更好的保存空間維度。數學上講,這就是卷積層上發生的事。

第一層(任務概況)

讓我們從更高層次來看卷積實際在做什麼吧。每一個過濾器都可以看做為一個特徵標識器。這裡的特徵是指直線、簡單的顏色以及曲線之類的東西,這些都是圖片所共有的最簡單特徵。我們的第一個過濾器是一個7 x 7 x 3的曲線檢測器。(為了簡化這個問題,在這裡我們先忽略過濾器有3個單位深度這一事實,只考慮過濾器和圖片的最上層切片。)曲線檢測器有一定的像素結構,在該結構中,沿著曲線形狀的區域將具有更高的數值。

圖片標題:左- 過濾器的像素化表現;右-可視化的曲線檢測過濾器

現在讓我們將這個數學問題可視化。當我們對左上角的輸入使用這個過濾器時,這個區域的像素值和過濾器將進行乘法運算。以下圖為例,我們將過濾器放在左上角。

圖片標題:左-原始圖;右-可視化過濾器在圖片上的位置

記住,我們要做的是將過濾器的值與圖片的原始像素值進行乘法運算。

圖片內容:可視化的接受域 的像素值 * 過濾器的像素值

相乘和相加 = (50*30)+(50*30)+(50*30)+(20*30) +(50*30)=6600. (一個很大的數字!)

一般來說,如果輸入圖片的形狀與過濾器所表現的曲線相類似,那麼我們的乘積的和會是一個很大的數值。現在,我們嘗試移動過濾器,看看會發生什麼。

圖片內容:過濾器在圖片上的位置 接受域的像素值*過濾器的像素值

相乘和加和 = 0

這個值相比上一個要低很多!這是因為圖片中沒有任何部分與曲線檢測過濾器對應。記住,這個卷積層的輸出是一個激活映射。在這個只有一個過濾器(並且這個過濾器是曲線檢測器)的卷積的案例中,激活映射會顯示出圖片中那些與過濾器的曲線相類似的區域。該示例中,28 x 28 x 1的激活映射的左上角的值將為6600。這個很高的值意味著輸入中包含著某種類型的曲線激活了過濾器。激活映射的右上角的值是0,因為所輸入的值並沒有激活過濾器。(或者更簡單的說,圖片的右上角沒有這樣一個曲線)。這僅僅是一個過濾器,一個可以檢測出向右外側的曲線的過濾器。我們可以擁有更多的過濾器,如向左的曲線或者直線。過濾器越多,激活映射的深度越深,我們從輸入中取得的信息也就越多。

免責聲明:在本節中的所描述的簡化版的過濾器,是為了說明一個卷積中所涉及到的數學問題。在下圖中,你可以看到一個已經訓練好的神經網絡中,第一個卷積層中過濾器可視化的一些示例。但它們主要的想法還是一致的。第一個卷積層中的過濾器對於輸入的圖片進行卷積,當過濾器所代表的某個具體特徵在輸入中被發現時,過濾器就會被「激活」(或者得到很高的值)。

(提醒:上面的圖片來自於史丹福大學Andrej Karpathy 和Justin Johnson任教的 CS 231N 課程,如果想要更深入地了解CNN,這門課是你的不二選擇。)

更深入地了解神經網絡

在傳統的卷積神經網絡架構中,各個卷積層中穿插了其他的一些層。我強烈鼓勵大家去了解這些層的具體功能和效果,但簡單來說,這些層提供了非線性和保留維度的功能,從而提升神經網絡的魯棒性,並能防止過度擬合。一個經典的CNN架構如下:

輸入-> 卷積->激活-> 卷積->激活->池化->激活-> 卷積->激活->池化->全連接

神經網絡的最後一層是很重要的一個層,我們稍後會進行具體介紹。讓我們先回顧一下到目前為止我們所學的內容。第一個卷積層上的過濾器是用來發現特徵的,通過這些過濾器可以發現低層次的特徵,例如邊和曲線。然而,為了預測圖片類型,我們需要讓神經網絡識別出高層次的特徵,例如手、爪子或耳朵。讓我們思考一下,神經網絡中第一個卷積層的輸出是什麼?應該是一個28 x 28 x 3的體量。(假設我們使用的是3個5 x 5 x 3的過濾器)。

當我們進入另一個卷積層的時候,第一個卷積層的輸出就成為了第二個卷積層的輸入。接下來的步驟很難被可視化。在第一層中,輸入是原始的圖片。然而,當我們進入第二個卷積層的時候,第一層的計算結果,激活映射就成為了第二層的輸入,每個輸入都描述了某些低層次特徵在原始圖片中出現的位置。現在當你使用一組過濾器(讓它通過第二個卷積層)時,輸入中被激活的部分就代表了高層次特徵。

這些特徵可能是半圓形(由一條曲線和一條直線組成)或者方形(由幾根直線組合而成)。當你使用更深層的神經網絡和更多的卷積層時,你將得到更複雜特徵的激活映射。訓練完神經網絡後,你會得到一些過濾器,當圖片中是手寫字母時它們會被激活,或者當識別到粉色時被激活等等。如果你想進一步了解卷積網絡中過濾器的可視化,你可以參考Matt Zeiler 和 Rob Fergus一篇很優秀的研究報告。你也可以在YouTube上看到Jason Yosinski做的一個很精彩的可視化展現視頻。還有一個有意思的事情是,當你使用更深層的神經網絡,過濾器所覆蓋的接受域會逐漸變大,這意味著過濾器考慮了原始輸入中更大範圍的信息(換句話說,這些過濾器對於更大範圍的像素空間反應更敏感)。

全連接網絡層

既然我們已經可以檢測到這些高層級的特徵,接下來我們就需要一個全連接網絡層作為神經網絡的結束層。該層將之前層(卷積層、激活層或者池化層)的處理結果作為輸入,並輸出一個N維的向量,N是程序所選擇的類別的數量。例如你想做一個數字識別程序,一共有10個數字,那麼N就是10。這個N維向量中每一個數字表示了目標對象屬於該類的概率值。例如,一個數字識別程序的結果向量是[0 .1 .1 .75 0 0 0 0 0 .05],它的意思就是這個圖片有10%的可能性是1, 10%的可能性是2, 75%的可能性是3,以及5%的可能性是9(註:你也可以使用其他方式表示輸出,在這裡我使用了Softmax回歸模型的方法)。全連接網絡層的功能是通過分析前一層的輸出(代表高層次特徵的激活映射)決定哪些特徵值和某一個特定的類別相關性最高。

例如,如果程序預測某張圖像是一條狗,它就會在代表一個爪子或四條腿等高級特徵的激活映射中有較高的值。類似的,如果程序預測某張圖像是一隻鳥,它就會在代表翅膀和喙等高級特徵的激活映射中有很高的值。本質上講,一個全連接層關注與特定類相關性最強、並且有特定權重的高層特徵,以便能在計算權重與前面一層乘積後得到不同類的正確概率。

模型訓練

現在我要說的是我之前故意沒有提到一個話題,它也可能是CNN最重要的部分。閱讀中你可能已經產生了許多疑問:過濾器如何在第一個轉換層知道它要尋找的邊緣和曲線?完全連接層如何知道要查看什麼激活映射?每個層中的過濾器的值要怎麼確定?這些都是通過一個叫「反向傳播」的訓練過程實現的。通過這一訓練,計算機可以正確調整其過濾值(或權重)。

在討論反向傳播之前,讓我們先看一下使神經網絡工作的條件。在我們出生的那一刻,我們的意識是一張白紙。我們不知道貓、狗、鳥是什麼。類似地,在卷積神經網絡被訓練之前,權重或過濾值都是隨機的。過濾器不知道如何查找邊緣和曲線,在更高的層的過濾器不知道尋找爪子和喙。隨著年齡的增長,我們的父母和老師給我們展示了不同的圖片和圖像,並告訴我們相應的標籤。這個讓圖像和標籤一一對應的想法就是CNN訓練的過程。

讓我們回到反向傳播。假設我們有一個訓練集,它有數千張狗、貓和鳥的圖像,並且每一個圖像都有一個正確的標籤。

反向傳播可以分為4個不同的部分:前向傳遞、損失函數、後向傳遞和權值更新。在向前傳遞時,你接受一個訓練圖像(它是一個32×32×3的數組),並通過整個網絡傳遞它。在我們的第一個訓練示例中,由於所有的權重或篩選值都是隨機初始化的,輸出可能類似於[.1 .1 .1 .1 .1 .1 .1 .1 .1 .1],基本上是一個不優先考慮任何數字的輸出。以其當前的權重,這一神經網絡是無法查找那些低級的特徵的,因此也無法對圖像作出合理的分類,這就是反向傳播損失函數的一部分。記住,我們現在使用的是訓練數據,此數據既有圖像又有標籤。比方說,輸入的第一個訓練圖像是3,圖像的真實標籤就是[ 0 0 0 1 0 0 0 0 0 0 ]。損失函數可以有許多不同的定義方式,一個常見的定義是MSE(均方誤差),即½乘(實際值-預測值)的平方。

假設變量L等於那個值。可以想像,第一張訓練圖像的損失將非常高。現在,讓我們直觀地思考這個問題。我們想使得預測標籤(ConvNet輸出)與訓練集的實際標籤儘可能吻合(這意味著我們的網絡預測是正確的)。為了達到這一目標,我們要儘量減少我們的損失。讓我們把這一問題看作是微積分中的一個優化問題——我們想找出哪些權重最直接地導致網絡的損失(或錯誤)。

現在,我們要做的是在網絡中進行反向傳遞,它決定了哪些權重造成了最大的損失,並找出調整它們的方法,以減少損失。一旦我們計算出這個導數(dL/dW,W是權重),我們就可以進入最後一步,即權重更新。在這一步,我們對過濾器的權重進行更新,更新的方向即是我們剛才計算出的導數/梯度的反方向。

學習率(Learning Rate)是由程式設計師選擇的參數。高學習率意味著在權重更新中採取更大的步驟,因此,該模型可能只需要較少的時間來收斂到最優的權重集上。然而,學習率過高可能導致跳躍過大而不夠精確,無法收斂至最佳點。

正向傳遞、損失函數、後向傳遞和參數更新過程是一個訓練迭代過程。程序將重複這一過程,為每一組訓練圖像(通常稱為批處理)進行固定次數的迭代。在我們完成最後一個訓練示例中的參數更新後,如果一切正常,網絡就已經得到了足夠的訓練,即網絡的權重得到了正確的調整。

測試

最後,為了檢驗我們的卷積神經網絡是否有效,我們需要一套不同的圖像和標籤(不能在訓練和測試之間重複使用!)。我們用訓練過的卷積神經網絡對圖片標籤作出預測,再比較輸出和這些圖片的真實標籤,以檢驗我們的網絡是否能正常工作。

企業如何利用卷積神經網絡

數據,數據,數據!相比其他競爭對手,那些擁有海量數據的公司有著先天的優勢。你給網絡提供的訓練數據越多,你可以做的訓練迭代越多,你能做的權重更新就越多,而當你投入到生產中時,對網絡的調整就越好。Facebook和Instagram可以使用數十億用戶當前的所有照片,Pinterest可以使用其網站上的500億個引腳的信息,谷歌可以使用搜索數據,亞馬遜可以使用每天產品銷售產生的數以百萬計的數據。而現在,你已經知道了使用這些數據背後的秘密了。

免責聲明

雖然這篇文章是理解卷積神經網絡的一個好的開始,但它並沒有提供一個全面的概述。這篇文章沒有討論的話題包括非線性、池化層以及網絡的超參數,如過濾器尺寸、步長以及邊界處理。此外,這篇文章也沒有討論網絡結構、批量歸一化、梯度消失、dropout、初始化技術、非凸優化偏移量、損失函數的選擇、數據增強、正則化方法、計算考量、修改反向傳播等諸多話題。

原文連結

相關焦點

  • 教你從讀懂詞語開始了解計算機視覺識別最火模型 | CNN入門手冊(中)
    教你從讀懂詞語開始了解計算機視覺識別最火模型 | CNN入門手冊(上)》(戳標題直接閱讀),相信大家已經對卷積神經網絡有了初步的了解。這周,我們將更深入地介紹卷積神經網絡(以下簡稱「ConvNets」),解釋上周我們提到卻又沒有細講的一些概念 。聲明:我在這部分介紹的一些主題非常複雜,完全可以單獨列出來寫成一篇文章。
  • ImageNet冠軍帶你入門計算機視覺:卷積神經網絡
    編輯|Vincent,EmilyAI 前線導語: 在第一篇文章《ImageNet 冠軍帶你入門計算機視覺:監督學習與神經網絡的簡單實現》中,我們介紹了神經網絡的基本概念以及 Tensorflow 的基本用法。 本文為系列的第二篇文章,將會介紹卷積神經網絡。
  • 從特徵檢測器到視覺轉換器:卷積神經網絡的時代到此結束了嗎?
    圖源:unsplash近十年來,卷積神經網絡一直在全球計算機視覺研究領域發揮著主導作用。但研究者們正在提出一種新方法,想要利用轉換器的功能賦予圖像更深層的意義。卷積神經網絡(CNN)存在的問題在深入研究視覺轉換器的運行方式之前,釐清卷積神經網絡的缺點和根本缺陷很有必要。首先,卷積神經網絡無法編碼相對空間信息。也就是說,它僅關注於檢測某些特徵,而忽略了相對空間位置。
  • 一文帶你讀懂計算機視覺
    使用許多卷積層的神經網絡就是其中之一。一個卷積層利用圖像的2D結構在神經網絡的下一層中生成有用信息。基於卷積的深度神經網絡在目標識別任務上取得了很好的效果。ILSVR會議一直在ImageNet(http://www.image-net.org/ 一個有許多圖片的數據集,包括貓,狗等物品標籤)上舉辦競賽。越成功的神經網絡使用的層數會越來越多。
  • 薦書丨周志華力薦新書《解析深度學習:卷積神經網絡原理與視覺實踐》
    魏秀參博士在LAMDA 求學數年,對卷積神經網絡及其視覺應用頗有所長,博士未畢業即被曠視科技聘為南京研究院負責人,畢業之際將心得材料轉撰成書請愚致序。師生之誼,盛情難卻。在國內計算機領域,寫書乃吃力不討好之事。
  • 對卷積神經網絡工作原理做一個直觀的解釋
    第二,神經網絡,是指利用一層層神經元構建成一個類似大腦結構的模型,從而自動實現端到端的學習。為什麼要用神經網絡?因為傳統計算機視覺,對圖像的理解非常重要,圖像的特徵有顏色特徵、幾何特徵、邊緣特徵、局部特徵、梯度特徵等等,光學這些就需要大量的時間,然後才能學習計算機視覺的一些方法和模型。
  • 了解CNN這一篇就夠了:卷積神經網絡技術及發展
    在不同類型的神經網絡當中,卷積神經網絡是得到最深入研究的。早期由於缺乏訓練數據和計算能力,要在不產生過擬合的情況下訓練高性能卷積神經網絡是很困難的。標記數據和近來GPU的發展,使得卷積神經網絡研究湧現並取得一流結果。本文中,我們將縱覽卷積神經網絡近來發展,同時介紹卷積神經網絡在視覺識別方面的一些應用。
  • 計算機視覺:從入門到精通,極限剖析圖像識別學習算法
    本次課程將圍繞著計算機視覺中最常見的RCNN圖像識別算法進行極限剖析,從數學理論, 模型框架到實踐實操,讓你在短時間內從理論到實踐,掌握深度學習的基本知識和學習方法。· 目的:掌握神經網絡的基本原理,知其然亦知其所以然(從數學實踐到代碼的熟練和精通); · 手段:科學的方法。
  • 深度學習之卷積神經網絡經典模型
    LeNet-5模型在CNN的應用中,文字識別系統所用的LeNet-5模型是非常經典的模型。LeNet-5模型是1998年,Yann LeCun教授提出的,它是第一個成功大規模應用在手寫數字識別問題的卷積神經網絡,在MNIST數據集中的正確率可以高達99.2%。下面詳細介紹一下LeNet-5模型工作的原理。
  • 再見卷積神經網絡,使用Transformers創建計算機視覺模型
    本文旨在介紹/更新Transformers背後的主要思想,並介紹在計算機視覺應用中使用這些模型的最新進展。讀完這篇文章,你會知道……為什麼Transformers在NLP任務中的表現優於SOTA模型。這些RNN能夠通過被稱為「門」的組件,使用神經網絡來了解信息的元素應該保留,哪些信息應該被刪除,哪些信息應該更新每次處理一個新的令牌這些模型的體系結構使其對爆炸和消失梯度具有魯棒性,這是RNN中的一個常見問題,這使它們能夠跟蹤序列中元素之間相當長的依賴性,儘管順序地處理令牌並依靠將其信息保留在內存中,但是如果依賴關係真的很遠
  • 了解卷積神經網絡的原理與基本結構
    受Hubel和Wiesel對貓視覺皮層電生理研究啟發,有人提出卷積神經網絡(CNN),Yann Lecun 最早將CNN用於手寫數字識別並一直保持了其在該問題的霸主地位。近年來卷積神經網絡在多個方向持續發力,在語音識別、人臉識別、通用物體識別、運動分析、自然語言處理甚至腦電波分析方面均有突破。
  • 詳解卷積神經網絡
    本系列文章涉及到很多深度學習流行的模型,如CNN,RNN/LSTM,Attention等。本文為第6篇。文中所有標藍部分均可閱讀原文獲取詳情連結。接下來介紹一種非常重要的神經網絡——卷積神經網絡。這種神經網絡在計算機視覺領域取得了重大的成功,而且在自然語言處理等其它領域也有很好的應用。
  • 計算機視覺(及卷積神經網絡)簡史
    世界範圍內的計算機方面的科學家在過去的六十年一直嘗試尋找使得機器能夠在視覺數據中提取出含義,計算機視覺的歷史是非常令人著迷的,這個方面是大多數人所不了解的。在這篇文章中,我將會嘗試介紹現代計算機視覺系統是如何通過卷積神經網絡驅動的。我將會從一個二十世紀五十年代出現的,和軟體工程毫不相關的作品開始。
  • 深度 | 從AlexNet到殘差網絡,理解卷積神經網絡的不同架構
    網絡架構設計是一個複雜的過程,需要時間學習,需要更多時間去實驗。但是,首先我們需要全面地了解它:卷積神經網絡為什麼能夠打敗傳統的計算機視覺網絡?圖像分類任務需要把給定圖像分類成一種預定義類別。傳統的圖像分類流程包括兩個模塊:特徵提取和分類。
  • 深度學習元老Yann Lecun詳解卷積神經網絡
    註:卷積神經網絡(Convolutional Neural Network)是一種前饋神經網絡,它的人工神經元可以響應一部分覆蓋範圍內的周圍單元,對於大型圖像處理有出色表現。早在20世紀80年代末,Yann LeCun就作為貝爾實驗室的研究員提出了卷積網絡技術,並展示如何使用它來大幅度提高手寫識別能力。上世紀末本世紀初,當神經網絡失寵時Yann LeCun是少數幾名一直堅持的科學家之一。他於2003年成為紐約大學教授,並從此引領了深度學習的發展,目前任職於Facebook FAIR實驗室。
  • 這5種計算機視覺技術,刷新你的世界觀
    視覺識別任務,如圖像分類,定位和檢測,是計算機視覺的關鍵組成部分。神經網絡和深度學習方法的最新發展極大地提高了這些最先進的視覺識別系統的性能。該課程是一個非凡的資源,它教會了我在頂端計算機視覺研究中使用深度學習架構的細節。在本文中,我想分享我學到的5種主要計算機視覺技術,以及使用每種技術主要的深度學習模型和應用。
  • AI入門:卷積神經網絡
    我們在搭建好神經網絡模型之後,需要做的就是用數據訓練,最終需要確定的是每一個神經元參數w和b,這樣我們就可以確定模型了。如果用普通的全連接,深度比較深時,那需要確認的參數太多了,對於計算機的計算能力,和訓練模型來說都是比較困難一件事。因此,普通神經網絡的問題是:需要確認的參數太多。那CNN是怎麼解決這個問題的呢?請接著往下看。2. CNN是怎麼解決這個問題的?
  • 李理:詳解卷積神經網絡
    本系列文章面向深度學習研發者,希望通過Image Caption Generation,一個有意思的具體任務,深入淺出地介紹深度學習的知識。
  • 【深度】機器學習進化史:從線性模型到神經網絡
    大約在2005年左右,神經網絡又開始捲土重來。神經網絡其實算是上世紀80年代的技術,一些人甚至認為它起源於上世紀60年代,得益於計算機視覺的技術的最新進展,讓(卷積)神經網絡的使用顯得卓有成效。事實上,神經網絡已經開始在其他應用上「大展宏圖」,包括自然語言處理和機器翻譯等領域。但是有一個問題:在所有提及的機器學習分布式模型中,神經網絡可能是最具挑戰性的。
  • 10分鐘看懂全卷積神經網絡( FCN ):語義分割深度模型先驅
    2010年至今,神經網絡模型的崛起和深度學習的發展,主要涉及到幾種模型:當然,經過從技術和原理上考究,我們發現了一個特點,那就是當前最成功的圖像分割深度學習技術都是基於一個共同的先驅:FCN(Fully Convolutional Network,全卷積神經網絡)。