标签:None 池化层 入门 keras 卷积 十二 特征 神经网络 输入
卷积神经网络
卷积是指将卷积核应用到某个张量的所有点上,通过将 卷积核在输入的张量上滑动而生成经过滤波处理的张量。
介绍的目标识别与分类,就是在前面问题的基础 上进行扩展,实现对于图像等分类和识别。
实现对图像的高准确率识别离不开一种叫做卷积神经网络的深度学习 技术
卷积神经网络主要应用于计算机视觉相关任务,但它能处理的任务并 不局限于图像,其实语音识别也是可以使用卷积神经网络。
CNN由输入和输出层以及多个隐藏层组成,隐藏层可分为卷积层,池化层、RELU层和全连通层。
- 输入层
CNN的输入一般是二维向量,可以有高度,比如,RGB图像
- 卷积层
卷积层是CNN的核心,层的参数由一组可学习的滤波器(filter)或内核(kernels)组成,它们具有小的感受野,延伸到输入容积的整个深度。 在前馈期间,每个滤波器对输入进行卷积,计算滤波器和输入之间的点积,并产生该滤波器的二维激活图(输入一般二维向量,但可能有高度(即RGB))。 简单来说,卷积层是用来对输入层进行卷积,提取更高层次的特征。
卷积层 | 三个参数 |
---|---|
ksize | 卷积核的大小 |
strides | 卷积核移动的跨度 |
padding | 边缘填充 |
对于图像:
使用layers.Conv2D() 具体参数
layers.Conv2D(filters, kernel_size, strides=(1, 1), padding='valid', data_format=None, dilation_rate=(1, 1), activation=None, use_bias=True, kernel_initializer='glorot_uniform', bias_initializer='zeros', kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None, kernel_constraint=None, bias_constraint=None, **kwargs)
- 池化层
池化层又称下采样,它的作用是减小数据处理量同时保留有用信息,通常池化层是每邻域四个像素中的最大值变为一个像素(这就是下一讲要降的max_pooling),为什么可以这么做呢?这是因为卷积已经提取出特征,相邻区域的特征是类似,近乎不变,这是池化只是选出最能表征特征的像素,缩减了数据量,同时保留了特征,何乐而不为呢?池化层的作用可以描述为模糊图像,丢掉了一些不是那么重要的特征.
图形描述:
layers.MaxPooling2D最大池化
layers.MaxPooling2D(pool_size=(2, 2), strides=None, padding='valid', data_format=None, **kwargs)
- RELU层
这个RELU全名将修正线性单元,是神经元的激活函数,对输入值x的作用是max(0,x),当然RELU只是一种选择,还有选Leak-Relu等等,一般都是用Relu!
- 全连通层
这个层就是一个常规的神经网络,它的作用是对经过多次卷积层和多次池化层所得出来的高级特征进行全连接(全连接就是常规神经网络的性质),算出最后的预测值。
将最后的输出与全部特征连接,我们要使用全部的
特征,为最后的分类的做出决策。
- 输出层
输出层就不用介绍了,就是对结果的预测值,一般会加一个softmax层。
整体结构
强烈推荐
标签:None,池化层,入门,keras,卷积,十二,特征,神经网络,输入 来源: https://blog.csdn.net/weixin_44510615/article/details/88960289
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。