Stacked Progressive Auto-Encoders(SPAE) for Face Recognition Across Poses
- 2014CVPR
- 为人脸识别跨姿态设计的堆叠渐进式 Auto Encoder
所做工作
- 堆叠浅层的渐进自动编码器,将大角度姿态矫正划分为多个更小的姿态矫正模型。堆叠多个浅层编码器逐步将非正面人脸转为正脸。
- 最靠近顶端隐藏层的 stacked network 包含更小的姿态变化,它可以为人脸识别提供 pose-rubust 特征。
- 通过堆叠渐进式编码器,迫使网络 layer by layer 的接近最终目标。
Stacked Progressive Auto-Encoders (SPAE)
1.Auto-Encoder (AE)
auto-encoder neural network 由[1]中提出,本文中使用 MSE 作为代价函数,使用梯度下降算法对其进行优化。公式如下:
$$ \left[\mathbf{W}^{*}, \mathbf{b}^{*}, \hat{\mathbf{W}}^{*}, \hat{\mathbf{b}}^{*}\right]=\underset{\mathbf{W}, \mathbf{b}, \hat{\mathbf{w}}, \hat{\mathbf{b}}}{\arg \min } \sum_{i=1}^{N}\left\|\mathbf{x}_{i}-\mathbf{g}\left(\mathbf{f}\left(\mathbf{x}_{i}\right)\right)\right\|_{2}^{2} $$2. Motivation and basic idea of SPAE
跨尺度人脸识别任务,很多工作尝试去建立正脸和非正脸的非线性转换模型。而大多数成功的工作是利用3D人脸模型来表征非线性特征的,但在恢复3D人脸模型时有很多困难。备选方案是直接从2D非正脸图像直接恢复2D正脸图像。深度学习利用其强大的非线性表征能力实现了这个目标,例如AE被认为是可行的非线性回归编码器。增加隐藏层可以增加非线性,即Deep AE。
如图2,如果将正脸和侧脸,直接作为DAE输入,更高的非线性会造成更大的搜索区域。尤其是在训练样本不足的情况,DAE会陷入局部最小值。
另一方面,如果人为的给出“里程碑”的点,这将需要更少的非线性和跟小的搜索区域。从这个意义上讲,SPAE可以更好的避免局部最小值。
上图中每一个“里程碑”都是一个DAE,整体组成SPAE。SPAE逐渐的缩小姿势变换的范围, 从而引入了姿势鲁棒性特征以进一步识别人脸。
结果对比
分别在MultiPIE和FERET数据集上进行试验,结果对比如下。
效果如下:
参考文献
- [1] Y. Bengio. Learning deep architectures for ai. Foundations and trends in Machine Learning, 2(1):1–127, 2009.
$$
本文作者 : HeoLis
原文链接 : https://ishero.net/Stacked%20Progressive%20Auto-Encoders(SPAE)%20for%20Face%20Recognition%20Across%20Poses.html
版权声明 : 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!
学习、记录、分享、获得