CNN卷积神经网络

CNN卷积神经网络

1、初始化卷积网络结构

cnn.layers = {

%input layer

struct('type', 'i')

%卷积层,卷积6个特征输出,卷积核尺寸为<5,5>,卷积核为{1,6}<5,5>

struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5)

%子抽样层,子抽样比例,此为1/2

struct('type', 's', 'scale', 2)

%卷积层,卷积12个特征输出,卷积核尺寸为<5,5>,卷积核为{6,12}<5,5>

struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5)

%子抽样层,子抽样比例,此为1/2

struct('type', 's', 'scale', 2)

};

2、初始化b=0,k{i}{j}(卷积核参数);感知层ffW、ffb

3、正向计算各层输出a{i}

初始化a{1};

convn(a,k,’valid’)正向卷积计算c层;

以scala=2,降采样s层;

末端以ffv=f(a{n-1},ffW,…)计算输出。

4、反向计算各层db、dk、dffW、dffb

5、修改各层b、k、ffW、ffb

b = b – db;

k = k – dk;

ffW = ffW – dffW;

ffb = ffb - dffb;

发布了39 篇原创文章 · 获赞 9 · 访问量 21万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章