- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
卷积神经网络(CNN)代码实现(MNIST)解析
共7层:依次为输入层、C1层、S2层、C3层、S4层、C5层、输出层,C代表卷积层(特征提取),S代表降采样层或池化层(Pooling),输出层为全连接层。
1. 各层权值、偏置(阈值)初始化:
各层权值、偏置个数计算如下:
(1)、输入层:预处理后的32*32图像数据,无权值和偏置;
(2)、C1层:卷积窗大小5*5,输出特征图数量6,卷积窗种类1*6=6,输出特征图大小28*28,因此可训练参数(权值+偏置):(5*5*1)*6+6=150+6;
(3)、S2层:卷积窗大小2*2,输出下采样图数量6,卷积窗种类6,输出下采样图大小14*14,因此可训练参数(权值+偏置):1*6+6=6+6;
(4)、C3层:卷积窗大小5*5,输出特征图数量16,卷积窗种类6*16=96,输出特征图大小10*10,因此可训练参数(权值+偏置):(5*5*6)*16+16=2400+16;
(5)、S4层:卷积窗大小2*2,输出下采样图数量16,卷积窗种类16,输出下采样图大小5*5,因此可训练参数(权值+偏置):1*16+16=16+16;
(6)、C5层:卷积窗大小5*5,输出特征图数量120,卷积窗种类16*120=1920,输出特征图大小1*1,因此可训练参数(权值+偏置):(5*5*16)*120+120=48000+120;
(7)、输出层:卷积窗大小1*1,输出特征图数量10,卷积窗种类120*10=1200,输出特征图大小1*1,因此可训练参数(权值+偏置):(1*120)*10+10=1200+10.
代码段如下:
[cpp] view plain copy
#define num_map_input_CNN 1 //输入层map个数
#define num_map_C1_CNN 6 //C1层map个数
#define num_map_S2_CNN 6 //S2层map个数
#define num_map_C3_CNN 16 //C3层map个数
#define num_map_S4_CNN 16 //S4层map个数
#define num_map_C5_CNN 120 //C5层map个数
#define num_map_output_CNN 10 //输出层map个数
#define len_weight_C1_CNN 150 //C1层权值数,(5*5*1)*6=150
#define len_bias_C1_CNN 6 //C1层阈值数,6
#define len_weight_S2_CNN 6 //S2层权值数,1*6=6
#define len_bias_S2_CNN 6 //S2层阈值数,6
#define len_weight_C3_CNN 2400 //C3层权值数,(5*5*6)*16=2400
#define len_bias_C3_CNN 16 //C3层阈值数,16
#define len_weight_S4_CNN 16 //S4层权值数,1*16=16
#define len_bias_S4_CNN 16 //S4层阈值数,16
#define len_weight_C5_CNN 48000 //C5层权值数,(5*5*16)*120=48000
#define len_bias_C5_CNN 120 //C5层阈值数,120
#define len_weight_output_CNN 1200 //输出层权值数,(1*120)*10=1200
#define len_bias_output_CNN 10 //输出层阈值数,10
#define num_neuron_input_CNN 1024 //输入层神经元数,(32*32)*1=1024
#define num_neuron_C1_CNN 4704 //C1层神经元数,(28*28)*6=4704
#define num_neuron_S2_CNN 1176 //S2层神经元数,(14*14)*6=1176
#define num_neuron_C3_CNN
您可能关注的文档
- 河北 大健康 新医疗 产业发展的规划.docx
- 2016届中西医结合医师考试各科重点总结-针灸学(必背).docx
- 教育心理学 第四章 心理发展的基本理论与其现实价值1.doc
- 氨糖骨胶原片1浅谈.doc
- 护士心得体会 12节集合.doc
- 天津中医药大学针刺大赛针灸腧穴定位答案与范围.docx
- 浅论神经系统解剖记忆口诀.doc
- 小儿腹泻病诊治剖析.docx
- 培养健康受众心理汇编.doc
- 解剖学词汇英汉对照摘要.docx
- 讲稿:深入理解“五个注重”把握进一步深化改革统筹部署以钉钉子精神抓好落实.pdf
- 副市长在2025年全市医疗工作会议上的讲话.docx
- 2025年市县处级以上党委(党组)理论学习中心组专题学习计划.docx
- 市民族宗教事务局党组书记、局长2024年度民主生活会个人对照检视发言材料.docx
- 烟草局党组书记2024年度抓基层党建工作述职报告.docx
- (汇编)学习2025年全国教育工作会议精神心得体会发言心得感悟.pdf
- 汇编学习领会在二十届中纪委四次全会上的重要讲话精神心得体会.pdf
- 在2025年镇安全生产、消防安全和生态环境保护第一次全体会议上的讲话提纲.docx
- 书记干部座谈会上的讲话+纪委全会上的讲话.pdf
- 党课:从毛泽东诗词中感悟共产党人初心使命.docx
文档评论(0)