卷积神经网络CNN简要学习

来源:互联网 发布:钻井液计算软件 编辑:程序博客网 时间:2024/06/06 02:34
【1】基本概念
欠拟合:识别不出正确样本
泛化能力:CNN模型的通用性
patch匹配:块匹配
特征(feature)= 卷积核(filter):样本的特征;多个
【2】卷积
卷积:卷积核和样本对应相乘,取平均值放中间,得到新图——特征图(feature map)
      窗口按照步长滑动
特征图中的值越接近于1说明对应位置和feature匹配越完整。
有几个特征就会产生几个feature map
【3】非线性激活层
使用的非线性激活函数是Relu函数
公式:f(x)=max(0,x)
【4】pooling池化层
为什么要池化:feature map太多,用池化来减小数据量。
池化分两种:Max Pooling最大池化、Average Pooling平均池化
最大池化:选取池化窗口中最大的值作为新feature map的值
根据步长滑动池化窗口来更新值


卷积层、Relu层、池化层就是CNN的基本配置,堆叠使用这三层。
【5】全连接层
全连接层的形式和前馈神经网络(feedforward neural network)的形式一样,称为多层感知机(multilayer perceptron,MLP)。
通过【1】【2】【3】【4】得到一个小矩阵(即特征图),全连接层来对该矩阵(特征图)进行维度上的改变,得到每个分类类别对应的概率值。
卷积采用的是根据窗口进行局部连接的方法,然后滑动窗口来进行后续连接,这种思想叫做“参数共享”,参数指filter。局部连接和参数共享是卷积神经网络最重要的两个性质。
全连接层中有一个非常重要的函数-Softmax。是一个分类函数,输出是每个对应类别的概率值。通过概率来进行样本的分类。
【6】神经网络的训练与优化
神经网络训练的就是卷积核们。
其中有BP算法(BackProp反向传播算法)
误差:error=(result-label)2

训练的目标是使error最小,常用的方法:梯度下降法

参考:

https://zhuanlan.zhihu.com/p/27908027

https://zhuanlan.zhihu.com/p/28173972

原创粉丝点击