国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于MATLAB的CNN卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和測試

這篇具有很好參考價值的文章主要介紹了基于MATLAB的CNN卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和測試。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

一、理論基礎(chǔ)

二、核心程序

三、測試結(jié)果


一、理論基礎(chǔ)

? ? ? ? 卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)是一類包含卷積計算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)(Feedforward Neural Networks),是深度學(xué)習(deep learning)的代表算法之一。卷積神經(jīng)網(wǎng)絡(luò)具有表征學(xué)習(representation learning)能力,能夠按其階層結(jié)構(gòu)對輸入信息進行平移不變分類(shift-invariant classification),因此也被稱為“平移不變?nèi)斯ど窠?jīng)網(wǎng)絡(luò)(Shift-Invariant Artificial Neural Networks, SIANN)” ?。
? ? ? ?對卷積神經(jīng)網(wǎng)絡(luò)的研究始于二十世紀80至90年代,時間延遲網(wǎng)絡(luò)和LeNet-5是最早出現(xiàn)的卷積神經(jīng)網(wǎng)絡(luò);在二十一世紀后,隨著深度學(xué)習理論的提出和數(shù)值計算設(shè)備的改進,卷積神經(jīng)網(wǎng)絡(luò)得到了快速發(fā)展,并被應(yīng)用于計算機視覺、自然語言處理等領(lǐng)域?。
? ? ? ?卷積神經(jīng)網(wǎng)絡(luò)仿造生物的視知覺(visual perception)機制構(gòu)建,可以進行監(jiān)督學(xué)習和非監(jiān)督學(xué)習,其隱含層內(nèi)的卷積核參數(shù)共享和層間連接的稀疏性使得卷積神經(jīng)網(wǎng)絡(luò)能夠以較小的計算量對格點化(grid-like topology)特征,例如像素和音頻進行學(xué)習、有穩(wěn)定的效果且對數(shù)據(jù)沒有額外的特征工程(feature engineering)要求?。
定義:采用監(jiān)督方式訓(xùn)練的一種面向兩維形狀不變性識別的特定多層感知機?。

? ? ??CNN是在目標識別領(lǐng)域應(yīng)用及其廣泛的一種網(wǎng)絡(luò)模型,其通過卷積運算來實現(xiàn)對圖像特征的提取,避免了傳統(tǒng)人工神經(jīng)網(wǎng)絡(luò)需要單獨設(shè)計特征提取的環(huán)節(jié)。CNN的結(jié)構(gòu)主要包括conv卷積層、pool池化層,Activation激活層以及FC全連接層,其具體如下圖所示:

基于MATLAB的CNN卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和測試

如圖1所示的,當圖像輸入到CNN中時,首先進入卷積層,卷積層是CNN中最

? ? ? ?重要的一個網(wǎng)絡(luò)層。在卷積計算過程中,將輸入的圖像和一系列大小不一的卷積核函數(shù)進行卷積運算得到特征圖。卷積層越多,那么通過卷積可以提取到的圖像特征圖譜的特征則更深入。卷積層的計算結(jié)果和卷積核大小、數(shù)量以及補零數(shù)量等參數(shù)相關(guān)。假設(shè)輸入圖像的維度為120*120,卷積核大小為7*7,卷積步進為1,那么通過卷積層只有,圖像維度將變?yōu)?14*114。

? ? ? ?完成卷積運算之后,數(shù)據(jù)將進入池化層,池化層的功能等同于采樣過程,其基本操作流程如圖2.2所示。

基于MATLAB的CNN卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和測試

? ? ? ?從圖2可知,池化層可以分為兩種類型,均值池化的過程是使用一個2×2大小的滑動窗口,計算四個像素的平均值,得到一個原始圖像維度一半的圖像輸出。最大值池化的過程是使用一個2×2大小的滑動窗口,計算四個像素的最大值,得到一個原始圖像維度一半的圖像輸出。通過池化層之后,圖像的維度將變?yōu)?7*57。

? ? ? ?完成池化層之后,數(shù)據(jù)將進入激活層,激活層的功能主要是解決單感知機對于非線性數(shù)據(jù)的分類效果較差的問題。比較常用的激活層函數(shù)為ReLU。

? ? ? ? ? 經(jīng)過多個卷積層運算之后,數(shù)據(jù)將進入全連接層,其主要功能是將卷積后的圖像數(shù)據(jù)映射到特征空間得到特征圖譜,并將特征圖譜和樣本的分類標記進行關(guān)聯(lián)。通過全連接層之后得到全連接層的標志輸出。最后根據(jù)這些標記向量,轉(zhuǎn)換為分類輸出。

二、核心程序

...........................................................
layers = [ ...
    imageInputLayer([1 2048 1])%%2D-CNN
    
    convolution2dLayer([1,2],4)
    reluLayer
    maxPooling2dLayer([1 2],'Stride',2)
    
    convolution2dLayer([1,2],4)
    reluLayer
    maxPooling2dLayer([1 2],'Stride',2)
  
    fullyConnectedLayer(2)
    softmaxLayer
    classificationLayer];

.....................................................................

net = trainNetwork(Xtrain,ytrain,layers,options);%網(wǎng)絡(luò)訓(xùn)練
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

X10=rand(100,2048);  
X20=20*rand(100,2048); 
Xtest1=[X10;X20];

for ii=1:1:200
     for jj=1:1:2048
         Xtest(1,jj,1,ii)=Xtest1(ii,jj);%%輸入數(shù)據(jù)維度轉(zhuǎn)化
     end
end

y10=zeros(100,1);
y20=ones(100,1);
ytest1=[y10;y20];
ytest=categorical(ytest1);%%函數(shù)包要求標簽類型是categorical


YPred = classify(net,Xtest);%%網(wǎng)絡(luò)測試
YPred1 =double(YPred);%%轉(zhuǎn)化為可顯示的標簽
accuracy = sum(YPred == ytest)/numel(ytest)
up108

三、測試結(jié)果

基于MATLAB的CNN卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和測試文章來源地址http://www.zghlxwxcb.cn/news/detail-428673.html

到了這里,關(guān)于基于MATLAB的CNN卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和測試的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包