深度学习行人检测应用二
涉及论文
*Luo, P., et al. (2014). Switchable deep network for pedestrian detection. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.”
摘要
提出一种可切换深度网络,Switchable Deep Network(SDN)用于行人检测。SDN可以自动学习多级特征,显著性特征和不同身体部分的混合。行人检测面临一些挑战,如背景杂乱,由姿势、视角不同和一些其他因素造成的行人表现多变性。其中一个主要贡献是提出一种SRBM(Switchable Restricted Boltmann Machine),来给不同级的混乱进行建模。在特征级,自动估计了显著性map来对每个测试样本为了从可区分的区域中区分背景clusters。在身体部分级,可以推断出最合适的全身和部分集合的模型。并且提出了一种高效预训练SDN的方法。本算法在Caltech和ETH数据集上进行了评估。
Contributions
- 提出一种同意的深度模型来联合学习特征,显著性特征,以及可代表全身和部分混合的模型。
- 通过介绍了一种利用RBM的可切换的构建思路来丰富了传统CNN网络。
- 提出了一种类EM算法来预训练可变换层。
核心内容
深度模型概要
SRBM
基本构架
图 1 网络结构图
RBM就是限制玻尔兹曼机。RBM的实现是根据可视层和隐层的联合分布,然后做最大似然法估计。类似于聚类。
SRBM,顾名思义,可切换。不像RBM是无监督,SRBM是同时观察输入和标注的,因为有有监督信息可以提高分类性能。
能量函数:
K代表部分的序号。Θ = {W, b, c, U, d},U是全连接权重,d是偏置矩阵。可切换参数 代表这一部分被激活。输出的特征是各部分隐藏特征的线性组合。 是代表每个可区分行人区域的显著性特征。
图 3 行人和显著性特征
上图(b)中,显著性把行人和背景区分开来,背景出m值为0,行人处为1。
类似于RBM,可见层和隐藏层是条件独立的,当给出其他的参数,条件概率可以写成:
图 4得分系统和最终得分,其中B_p是得到的和结果,
m显著性可以看做是初始输入x和输入 的联系。
预训练算法
图 4 预训练算法
预训练分为两部分,(1)初始化(2)EM。初始化用k-means聚类输入,训练常规RBM,给每部分权重矩阵初始化。EM中,在E-step估计s然后固定,M-step最大化log最大似然log p(x,y|s),以 为参照。
由于从上述公式看出需要学习5个参数,这个计算量比较大,于是可以采用类EM的算法来简化。首先将可切换参数认为是伪观测参量,在这种强狂下,可以通过E-step直接估计他们的值。然后在M-step通过其他四个参数更新他的值。这种策略大约减少了20%的运算量。
EM算法
用于含有隐变量的概率模型参数的极大似然估计,或极大后验概率估计,EM算法每次迭代分为两步,E,求期望,M,求极大。
输入:观测变量数据Y,隐变量数据Z,联合分布P(Y,Z|θ),条件分布P(Z|Y, θ)
输出:模型参数θ
1.选择参数的初值θ^((0)),开始迭代
2.E步:记θ^((i))为第i次迭代参数θ的估计值,联合分布P(Y,Z|θ),条件分布P(Z|Y, θ);
Q(θ,θ^(i) )=E_z [logP(Y,Z│θ)│Y,θ^((i) ) ]
=∑_z▒〖logP(Y,Z│θ)P(Z|Y,θ^((i) ))〗
分布都是当前情况下的分布。
3.M步:求使Q(θ,θ^(i) )极大化的θ,确定第i+1次迭代的参数的估计值θ^(i+1)
Q(θ,θ^(i+1) )=〖argmax〗_θ Q(θ,θ^(i) )
4.重复(2)(3)直到收敛。
SDN
基本构架
图 4 系统整体网络构架
整个网络分三部分,卷积层,可切换层(SRBM)和逻辑斯蒂回归。卷积层得到中低级特征,可切换层得到高级混合模型和身体全身和部分的显著性特征,逻辑斯蒂回归得到预测结果。可扩展。
输入数据六通道,尺寸108*36。前三通道是三个不同尺度的BB(bounding box)resize之后YUV域的Y通道值,后三通道是前三通道用Sober边缘检测的结果,这样设计是处于多尺度和边缘信息的考虑。
得到64通道数据,9*9*6
W滤波器参数矩阵,b偏置项。对结果max pooling得到图中的body,然后送入可切换层,每个切换层采用K部分(本文采用K=10)。在可切换层中,整体与部分并存,body整体分为几个身体的部分,本文采用的是分为三个部分如(d)。最后进行逻辑斯蒂回归预测结果。
预训练和微调
Gabor滤波器初始化卷积层滤波器,因为Gabor滤波器可以捕捉行人的边缘形状。可切换层在之前的算法预训练。
微调可以提高检测效率,采用降低错误熵来进行微调
参数通过随机梯度下降来优化。
随机梯度下降是每次使用一个样本迭代,下降速度比梯度下降速度快很多,但有可能陷入局部极小值。
总结
本文提出了一种可切换深度网络来对背景簇和复杂的行人外观进行建模。本SDN通过加入了以SRBM为典型的可切换层改进了cnn。检测结果达到了高水平。