計算機視覺的核心——CNN卷積神經網絡

人工智能研究所 發佈 2022-09-25T11:55:29.783225+00:00

——1——CNN卷積神經網絡卷積神經網絡 (CNN) 是一種直接從數據中學習的深度學習網絡架構。CNN 對於在圖像中尋找以及識別對象特別有用。它對於分類非圖像數據(如音頻、時間序列和信號數據)也非常有效。

——1——

CNN卷積神經網絡

卷積神經網絡 (CNN) 是一種直接從數據中學習的深度學習網絡架構。CNN 對於在圖像中尋找以及識別對象特別有用。它對於分類非圖像數據(如音頻、時間序列和信號數據)也非常有效。

神經網絡接受輸入圖像/特徵向量,並通過一系列隱藏層轉換,然後使用非線性激活函數。每個隱藏層也由一組神經元組成,其中每個神經元都前一層中的所有神經元完全連接。神經網絡的最後一層(即「輸出層」)也是全連接的,代表網絡的最終輸出分類。

一般卷積神經網絡有如下結構:

  1. •數據輸入層/ Input layer
  2. •卷積計算層/ CONV layer
  3. •ReLU激勵層 / ReLU layer
  4. •池化層 / Pooling layer
  5. •全連接層 / FC layer

當然卷積層,Relu激勵層與Pooling層可以多次使用

——2——

卷積核或者說特徵檢測器

在CNN卷積神經網絡中,卷積核是一個過濾器,用於從圖像中提取特徵。

公式 = [i-k]+1
i -> 輸入大小,K-> 內核大小

——3——

Stride

Stride是CNN卷積神經網絡過濾器的一個參數,用於修改卷積核圖像或視頻上的移動量。當stride等於1時,卷積核每次只移動一個像素,當stride等於2時,卷積核每次移動2個像素。

公式 =[i-k/s]+1
i -> 輸入大小,K-> 內核大小,S-> stride

——4——

填充 padding

padding指的是當輸入圖像被 CNN 卷積內核處理時添加到圖像以外的其他像素值。例如,如果 CNN卷積神經網絡 中的padding設置為零,則添加的每個像素值都將為零。當我們使用過濾器或內核掃描圖像時,圖像的大小會變小。我們必須避免這種情況,因為我們想保留圖像的原始大小,以提取一些圖形邊緣特徵。因此,我們將在圖像之外添加一些額外的像素。

公式=[i-k+2p/s]+1
i -> 輸入大小,K-> 內核大小,S-> 步幅,p-> 填充

CNN卷積神經網絡的padding與transformer模型的pad mask類似,其操作是在圖片周圍填充0來擴展圖片尺寸,以便經過CNN卷積後,確保圖片尺寸保持不變,而transformer模型的pad mask是為了把所有的輸入句子統一成統一的長度,確保後面的attention矩陣相乘的操作

——5——

Pooling

卷積神經網絡中的池化是一種用於泛化由卷積濾波器提取的特徵信息,並幫助CNN卷積神經網絡識別獨立於圖像位置的特徵技術。當然pooling有最大池化與平均池化操作。

——6——

Flatten

Flattening用於將池化特徵圖中的所有生成的二維數組轉換為一個一維的連續線性向量。將扁平矩陣作為輸入送到全連接層以對圖像進行分類。

——7——

用於構建 CNN 地層

卷積神經網絡與其他神經網絡的區別在於其在圖像、語音或音頻信號輸入方面的卓越性能。它們具有三種主要類型的層,它們是:

  1. 卷積層
  2. 池化層
  3. 全連接(FC)層

卷積層

該層是用於從輸入圖像中提取各種特徵的第一層。在這一層中,我們使用過濾器或內核方法從輸入圖像中提取特徵。

池化層

該層的主要目的是減小卷積特徵圖的大小以降低計算成本。這是通過減少層之間的連接並在每個特徵圖上獨立操作來執行的。根據所使用的方法,有幾種類型的池化操作。我們有最大池和平均池。

全連接層

全連接(FC)層由權重和偏差以及神經元組成,用於連接兩個不同層之間的神經元。這些層通常放置在輸出層之前,形成 CNN 架構的最後幾層。

——8——

Dropout

CNN 的另一個典型特徵是 Dropout 層。Dropout 層是一個掩碼,它使某些神經元進行屏蔽,而其他所有神經元保持不變。

——9——

激活函數

激活函數決定神經元是否應該被激活。這意味著它將決定神經元對網絡的輸入在預測過程中是否重要。有幾種常用的激活函數,例如 ReLU、Softmax、tanH 和 Sigmoid 函數。這些功能中的每一個都有特定的用途。

  1. Sigmoid — 用於 CNN 模型中的二元分類
  2. tanH - tanh 函數與 sigmoid 函數非常相似。唯一的區別是它圍繞原點對稱。在這種情況下,值的範圍是從 -1 到 1。
  3. Softmax - 它用於多項邏輯回歸,通常用作神經網絡的最後一個激活函數,以將網絡的輸出標準化為預測輸出類的概率分布。
  4. RelU - 使用 ReLU 函數優於其他激活函數的主要優點是它不會同時激活所有神經元。
關鍵字: