目录
一、用自己的语言解释一下概念
1.局部感知、权值共享
2.池化(子采样、降采样、汇聚)。会带来那些好处和坏处?
3.全卷积网络
4.低级特征、中级特征、高级特征
5.多通道。N输入、M输出是如何实现的?
6.1×1的卷积核有什么作用?
二、使用cnn进行XO识别
1.导入数据集,并对数据集拆分小批量
2.构建cnn模型
3.训练模型:
编辑
4.读取一张图片进行预测
5.计算模型准确率
编辑
6.查看训练好的模型特征图
7.查看训练好的模型和卷积核
8.重新设计网络结构
增加一个卷积层,卷积层达到三层以上
模型训练结果
去掉池化层,对比“有无池化”的效果
1.局部感知、权值共享
局部感知是指神经元只与前一层的部分神经元相连,构成一个局部连接网络。
作用:降低网络的复杂性;提高计算效率;专注于局部特征
权值共享:卷积核的参数对于同一层的神经元是相同的。(也许可以理解为同一层神经元使用一个卷积核?)
2.池化(子采样、降采样、汇聚)。会带来那些好处和坏处?
池化是卷积神经网络中的一个重要操作,即对卷积层输出的特征图进行约减,选取特定区域内的最大值(最大池化,Max Pooling)或平均值(平均池化,Mean Pooling)等作为该区域的输出。
好处:可以显著减少特征图的尺寸和数量
坏处:可能会导致一些数据的丢失
3.全卷积网络
全卷积神经网络(Fully Convolutional Networks,FCN),只有卷积层和池化层。
4.低级特征、中级特征、高级特征
低级特征:直接从原始数据中提取的特征。如:颜色
中级特征:更高层次的特征。如:形状
高级特征:更抽象和复杂的特征。如:部件(眼睛、嘴巴)
5.多通道。N输入、M输出是如何实现的?
输入张量:具有[N,C,H,W]分别为批量大小、输入通道数、图像的高度和宽度
卷积核:[O,C,K_h,K_w],输出通道数、输入通道数、卷积核的高度和宽度
卷积操作,N输入一般是指输入图像的个数,输出通道数为卷积核个数
6.1×1的卷积核有什么作用?
改变通道数
1.复现参考资料代码,注:该部分主要为对每行代码功能实现的理解
1.导入数据集,并对数据集拆分小批量
2.构建cnn模型
定义卷积层1,输入通道1,输出通道9,卷积核大小为3×3
定义最大池化层,每2×2区域选择最大值作为输出,池化窗口移动步幅为2
定义卷积层2,输入通道为9,(上一个卷积层输出9),输出通道5,卷积核大小为3×3
定义三个全连接层,输入为27×27×5。图像像素为116,第一次卷积后为116-3+1=114,池化后114/2=57,第二次卷积57-3+1=55,池化55/2=27.5,向下取整故为27
3.训练模型:
预测输出,计算损失,计算梯度、更新参数,完成训练
4.读取一张图片进行预测
其中, 这行代码的作用是:从张量中取出第一张图像,并在其形状的最前面增加一个大小为1的新维度,现在是一个四维张量,可以作为一个批量大小为1的输入传递给模型。
5.计算模型准确率
6.查看训练好的模型特征图
保存数据在卷积、激活、池化后的结果,分别进行图像输出
卷积后图像的边界特征更加明星
激活后看到图像更“黑”了,原因:使用relu函数进行激活,如果x小于或等于0,则输出0.当大量像素值被置为0时,图像的整体亮度会下降。
池化后图片的尺寸减少一半
7.查看训练好的模型和卷积核
8.重新设计网络结构
增加一个卷积层,卷积层达到三层以上
增加一个卷积层,输入通道5(卷积2输出通道数5),输出3,卷积核大小3*3
此时图像大小为27-3+1=25,经池化层25/2=12.5,即12
模型训练结果
去掉池化层,对比“有无池化”的效果
去掉池化层,图像的尺寸从12变为110,数据量变大
较小的训练次数内,损失收敛性大大降低。
准确率只有50%,
到此这篇卷积层stride(resnet50有多少个卷积层)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/rfx/75350.html