首先,CNN就是卷积神经网络,它擅长为图像进行分类。CNN专门用来处理图像数据的深度学习模型。它通过模仿人类的视觉进行对图像的特征提取。
就是一个n维矩阵
可以当做是一个函数,这个函数接收多个输入并产生一个输出
层就是具有相同操作的神经元集合,包括相同的超参数
就是用来提取特征的一个东西
卷积核为什么能提取出特征,比如轮廓什么的,如上图能把杯子的轮廓提取出来???
因为,轮廓是相连的,也就是说轮廓邻近的像素值变化具有一定的关联性,通过卷积操作,局部相关的像素信息会被捕捉并整合到输出特征中,这就是为什么能够提取特征。详细的解释如下:https://github.com/cyzroot/cyzhub/blob/main/k_tiqutez
卷积和的权重就是卷积核里面的值,用来提取特征的,但是刚开始卷积核里面的权重都是随机初始化的,所以刚开始,卷积核并没有清楚要提取什么特征,然后在后面的不断训练过程中,然后模型根据,训练结果和真实值的比较得到的损失值,然后反向传播,求导计算每个卷积核权重对损失的贡献,调整这些权重,减少损失,这个过程通常使用随机梯度下降等优化算法。
经过多次训练后,卷积核的权重会逐渐调整为更加有效的值,从而能够提取出更具有辨别力的特征图。
就是我们输入的图片,因为在训练中,我们都是一个批次一个批次的输入,这里我们就只输入一张三通到的图片。这张图片的形状就是(宽 x 高 x 通道数)---->(64 x 64 x 3)
卷积层就是用来提取区分图想的特征,卷积神经元与独特的卷积核及前一层的对应的神经元的输出进行逐元素的点积,然后生成与独特卷积核一样多的中间结果。神经元则是所有中间结果相加并加入学习到的偏置后的输出。
如果你有10特征图,那么你就要有10个卷积核,如果你的输入的图片是单通道的,那么你输入一个单通道的图片先要提取10个特征,那么你就要有10个卷积核,而且你每个卷积核的形状都是单通道的,可以理解为10个二维的矩阵。然后你得到10个特征图,我们可以把这看成是一张10个通道的图片,如果你对这10个特征图进行提取出10个特征,就需要10个10通道的卷积核。
注意:
卷积核的大小是网络架构设计者指定的参数
点积操作的步幅、填充也是超参数
ReLU 激活函数(Rectified Linear Unit)就是一个常用的非线性函数,它的作用是:
- 如果输入是正数,它的输出等于输入(这部分保持线性)。
- 如果输入是负数,它的输出就是零(这引入了非线性,因为负数的输入不会传递给下一层)。
通过这种简单的非线性转换,网络可以在多层之间捕捉到不同层次的复杂特征,比如图像中的边缘、纹理和物体形状。
我还是不太理解??????????
卷积层和激活函数输出之后,通常会通过池化层减少其尺寸。池化层是一种用于减少特征图尺寸的操作,最常用的是最大池化。池化操作的主要目的是减少数据量,从而减少计算成本,同时保持关键信息不丢失。与卷积核的步幅类似,池化窗口的大小也是一个超参数。
在分类之前,我们需要将二维激活图转换为一维向量。这一步骤称为“展开”,并且通过在每个像素上按顺序排列生成一维向量。展开之后,数据将传递到全连接层。
全连接层的输出会通过Softmax激活函数进行转换,生成最终的分类得分。
注:图片来源于CNN Explainer
到此这篇cnn是什么网络(cnn 是什么)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/cjjbc/44122.html