CNN
本文最后更新于:2 年前
CNN模型的理解
CNN全名为Convolutional Neural Network卷积神经网络.它有以下几个部分组成:
- 卷积层
- 激活函数
- 池化层
- 全连接
卷积层
卷积层是用来识别图像的特征,它是通过卷积核(kernel,filter,neuron)来寻找图像的特征.
图片输入进来的时候,机器会将其的分辨率及其通道转换为数组,如32*32*3,然后根据训练好的多个卷积核如5*5*3(Height,Width,Depth)对其进行特征寻找.需要注意的是kernel的depth需要与输入的depth一致.然后便输出一张激活图(此例卷积步长为1,激活图大小为28*28*n(kernel数量)).激活图(activation map/feature map)之后会作为下一层的输入
激活函数
激活函数(activation function)是用于完成数据的非线性变换,解决线性模型的表达、分类能力不足的问题.根据网上所说,若是在net中全是线性变换,则可以通过矩阵变换将所谓的多层网络转换成一层网络.因此需要通过激活函数使得网络的多层有意义,故需要对数据进行非线性变换
常用的激活函数有:
- ReLU
- Sigmoid
- tanh
根据AlexNet的文章我们可以知道,ReLU相较于传统的激活函数可以提高训练速度,减缓梯度衰减的趋势,同时省去了归一化的开销.
池化层
池化层降低了输入的激活图的维度,对其进行了稀疏处理,减少了数据运算量,也缓解了卷积层对位置的过渡敏感性.池化层也是通过kernel来进行维度处理.
池化通常有两种方式:
- 最大池化
- 平均池化
根据名字可以看出,一个是取kernel里最大的值作为输出的激活图的新位置的值,一个是取平均.一般的池化都是stride==kernel的尺寸
全连接层
如图像分类,我们最后期望的结果是可能是识别类别的总数的概率,即输出一个N维向量,里面的值代表每一个识别类别的概率,然后进行输出.(此例采用的是softmax此激活函数)
针对过拟合问题:
在网络中,我们若是模型参数多,但是样本又少,那么训练出来的模型就会存在过拟合的问题,即在train的时候模型精确率还可以,但是test和inference就惨不忍睹,那就是因为模型中的参数权重等被量身定做了.
对于过拟合问题,可以采用Dropout以使得过拟合问题得到一定解决.
Dropout的主要原理就是根据Bernoulli原理生成概率向量[1,0,…,1],然后与输入序列相乘,之后进行forward propagation,backpropagation,这样就相当于集成算法中的Bagging一样,生成了多个子网络,那么多个子网络的平均表达结果就可以规避掉过度耦合的关系.
Dropout有两种版本:
- Vanilla Dropout
- Inverted Dropout
两者的区别在于放缩的顺序,一个是在inference的时候进行放缩,一个是在train的时候放缩.后者相较于前者的优势在于不必在predict的时候频繁调整结果(要放缩).
Inverted版本需要在输入序列与概率序列相乘后进行放缩,设p为丢弃概率,则需对相乘后的序列乘上 $ \frac{1}{1-p} $ ,而这个放缩后的序列也会体现在反向传播的梯度中.
之所以要进行放缩,是因为此刻我丢弃了p%的数据,那么整体的规模缩小了(1-p)%,则需要放大 $ \frac{1}{1-p} $ 倍.
一些名词解释
- SGD stochastic gradient descent 随机梯度下降:GD的话需要计算所有向量以计算梯度值,随机取的话可以减少计算量,但存在陷入局部最优的可能
- top1 error rate:top1错误率,即分类问题中正确标签不是最佳概率的总数/样本总数
- top5 error rate:top5错误率,即分类问题中正确标签不是前五个较大概率的可能结果的总数/样本总数
以下论文还没看完
Pose-guided Feature Disentangling for Occluded Person Re-identification Based on Transformer
本文名词解释:
- ViT(Vision Transformer 用于抽取小片特征的视觉Transformer)
- PFD(Pose-guided Feature Disentangling 姿态引导的特征分离)
- Re-ID(Re-identification 再识别)
- PFA(Pose-guided Feature Aggregation 姿态引导的特征聚合[含匹配和分配机制])
- PVM(Pose-View Matching 姿态视图匹配 匹配身体的可见部分,把遮挡的部分分离)
- Post-guided Push Loss 特征值,用于强调身体的可见部分
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!