?姓名:熊子豪 ?? 學(xué)號:19011210143
?轉(zhuǎn)載自? https://blog.csdn.net/asialee_bird/article/details/80459163
【嵌牛導(dǎo)讀】 你了解機器學(xué)習(xí)嗎丈莺,你知道CNN卷積神經(jīng)網(wǎng)絡(luò)嗎划煮?CNN卷積神經(jīng)網(wǎng)絡(luò)在人臉檢測、車牌識別等方面有著 ? ? ? ? ? ? ? ? ? ? ? ? 很好的應(yīng)用缔俄。下面給大家科普一下CNN卷積神經(jīng)網(wǎng)絡(luò)弛秋。
【嵌牛鼻子】機器學(xué)習(xí),CNN卷積神經(jīng)網(wǎng)絡(luò)俐载。
【嵌牛提問】 CNN卷積神經(jīng)網(wǎng)絡(luò)和BP神經(jīng)網(wǎng)絡(luò)有什么區(qū)別蟹略,CNN的一般結(jié)構(gòu)是什么?
【嵌牛正文】
一遏佣、BP神經(jīng)網(wǎng)絡(luò)回顧
人工全連接神經(jīng)網(wǎng)絡(luò)
(1)每相鄰兩層之間的每個神經(jīng)元之間都是有邊相連的
(2)當(dāng)輸入層的特征維度變得很高時挖炬,這時全連接網(wǎng)絡(luò)需要訓(xùn)練的參數(shù)就會增大很多,計算速度就會變得很慢
傳統(tǒng)神經(jīng)網(wǎng)絡(luò)存在的問題:
(1)權(quán)值太多状婶,計算量太大
(2)權(quán)值太多茅茂,需要大量樣本進行訓(xùn)練
二捏萍、CNN卷積神經(jīng)網(wǎng)絡(luò)
1、CNN的主要概述
卷積層的神經(jīng)元只與前一層的部分神經(jīng)元節(jié)點相連空闲,即它的神經(jīng)元間的連接是非全連接的令杈,且同一層中某些神經(jīng)元之間的連接的權(quán)重w和偏置b是共享的(即相同的)大量地減少了需要訓(xùn)練參數(shù)的數(shù)量
CNN主要特點:減少權(quán)值,局部連接碴倾,權(quán)值共享
CNN通過感受野和權(quán)值共享減少了神經(jīng)網(wǎng)絡(luò)需要訓(xùn)練的參數(shù)的個數(shù)逗噩。
2、CNN的一般結(jié)構(gòu)
輸入層:用于數(shù)據(jù)的輸入
卷積層:使用卷積核進行特征提取和特征映射
激勵層:由于卷積也是一種線性運算跌榔,因此需要增加非線性映射
池化層:壓縮數(shù)據(jù)和參數(shù)的量异雁,減小過擬合。
全連接層:通常在CNN的尾部進行重新擬合僧须,減少特征信息的損失
輸出層:用于輸出結(jié)果
(1)輸入層
在CNN的輸入層中纲刀,(圖片)數(shù)據(jù)輸入的格式與全連接神經(jīng)網(wǎng)絡(luò)的輸入格式(一維向量)不太一樣。CNN的輸入層的輸入格式保留了圖片本身的結(jié)構(gòu)担平。
對于黑白的 28×28 的圖片示绊,CNN的輸入是一個28×28 的的二維神經(jīng)元;
對于RGB格式的28×28圖片暂论,CNN的輸入則是一個 3×28×28 的三維神經(jīng)元(RGB中的每一個顏色通道都有一個 28×28 的矩陣)面褐,如下圖所示:
(2)卷積層
需要明確的幾個概念:
感受視野( local receptive fields)
? ? 即感受上一層的部分特征。在卷積神經(jīng)網(wǎng)絡(luò)中取胎,隱藏層中的神經(jīng)元的感受視野比較小展哭,只能看到上一次的部分特征,上一層的其他特征可以通過平移感受視野來得到同一層的其他神經(jīng)元闻蛀。
卷積核
? ? 感受視野中的權(quán)重矩陣
共享權(quán)值(shared weights)
步長(stride)
? ? 感受視野對輸入的掃描間隔稱為步長(stride)
邊界擴充(pad)
? ? 當(dāng)步長比較大時(stride>1)匪傍,為了掃描到邊緣的一些特征,感受視野可能會“出界”觉痛,這時需要對邊界擴充(pad)
特征映射圖(feature map)
? ? 通過一個帶有卷積核的感受視野 掃描生成的下一層神經(jīng)元矩陣 稱為一個特征映射圖(feature map)
通過以下圖理解以上概念及卷積計算
(3)激勵層
激勵層主要對卷積層的輸出進行一個非線性映射析恢,因為卷積層的計算還是一種線性計算。使用的激勵函數(shù)一般為ReLu函數(shù)
卷積層和激勵層通常合并在一起稱為“卷積層”秧饮。
(4)池化層
當(dāng)輸入經(jīng)過卷積層時映挂,若感受視野比較小,布長stride比較小盗尸,得到的feature map(特征映射圖)還是比較大柑船,可以通過池化層來對每一個feature map進行降維操作,輸出的深度還是不變的泼各,依然為feature map的個數(shù)鞍时。
池化層也有一個“池化視野(filter)”來對feature map矩陣進行掃描,對“池化視野”中的矩陣值進行計算,一般有兩種計算方式:
? (1)Max pooling:取“池化視野”矩陣中的最大值
? (2)Average pooling:取“池化視野”矩陣中的平均值
(5)全連接層和輸出層
全連接層主要對特征進行重新擬合逆巍,減少特征信息的丟失及塘。
輸出層主要準(zhǔn)備做好最后目標(biāo)結(jié)果的輸出。
(6)中間還可以使用其他的功能層
歸一化層(Batch Normalization):在CNN中對特征的歸一化
切分層:對某些(圖片)數(shù)據(jù)的進行分區(qū)域的單獨學(xué)習(xí)
融合層:對獨立進行特征學(xué)習(xí)的分支進行融合
三锐极、CNN卷積神經(jīng)網(wǎng)絡(luò)的應(yīng)用
1笙僚、目標(biāo)分類
2、目標(biāo)檢測(目標(biāo)定位灵再、人臉檢測肋层、人形檢測、車輛檢測)
? ? (R-CNN翎迁、Fast R-CNN栋猖、Faster R-CNN、YOLO汪榔、SSD蒲拉、YOLO V2、YOLO V3)
3痴腌、目標(biāo)識別(人臉識別雌团、人形識別)? 人臉識別算法演化史? ? (DeepFace、FaceNet衷掷、DeepID)
4、目標(biāo)跟蹤
5柿菩、目標(biāo)分割
6戚嗅、關(guān)鍵點檢測? ? 關(guān)鍵點檢測
CNN卷積神經(jīng)網(wǎng)絡(luò)實現(xiàn)Mnist數(shù)據(jù)集
四、常見的CNN卷積神經(jīng)網(wǎng)絡(luò)
1枢舶、卷積神經(jīng)?絡(luò)(LeNet)
2懦胞、深度卷積神經(jīng)?絡(luò)(AlexNet)
3、使?重復(fù)元素的?絡(luò)(VGG)
4凉泄、?絡(luò)中的?絡(luò)(NiN)
5躏尉、含并?連結(jié)的?絡(luò)(GoogLeNet)
6、殘差?絡(luò)(ResNet)
7后众、稠密連接?絡(luò)(DenseNet)
————————————————
版權(quán)聲明:本文為CSDN博主「Asia-Lee」的原創(chuàng)文章胀糜,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明蒂誉。
原文鏈接:https://blog.csdn.net/asialee_bird/article/details/80459163