zoukankan      html  css  js  c++  java
  • Paper-[arXiv 1710.03144]Island Loss for Learning Discriminative Features in Facial Expression

    [arXiv 1710.03144]Island Loss for Learning Discriminative Features in Facial Expression

    ABSTRACT

    作者在CenterLoss的基础上,提出了一个新的Loss,在关注类别的类内距离的同时,优化类间距离,使得每个类别拥有更大的margin,从而迫使网络能够学习到更具判别性的特征。

    当前问题

    在环境不可控(光照,姿态,遮挡,人物状态)等条件下,不同表情间的类间距离往往会大于类内距离。同时因为高的类内距离,同一类别的样本分布趋势呈现出了径向(NormFace中提到的softmax的Scale不变性)

    [不同loss情况下类别特征空间分布情况 ]

    本文贡献

    本文主要有一下贡献:

    • 提出了一个新的loss函数,目的是能够得到更具判别性的特征,从而使得类内距离小,类间距离大。

    • 设计了一个机遇IslandLoss的卷积神经网络框架,完成人脸面部表情的识别。

      作者在三个数据库上进行了实验,(CK+,Oulu-CASIA 和MMI),并且在SFEW的数据库上进行了验证。对比与传统的SoftmaxLoss和CenterLoss,新提出的Loss效果更好。

    理论方法

    • (softmax loss):

      [L = -frac{1}{N}sum_{j=1}^{N}{y_ilog{frac{exp(z_{y_i})}{sum_{k=1}^{c}{exp(z_k)}}}} ]

    • (centerLoss),在softmax的基础上,新添加了一种loss:

      [L_c = frac{1}{2}sum_{i=1}^{n}||x_i-c_{yi}|| ]

      其中,(yi)为样本i的类心特征向量。因此整体的Loss为

      [L = L_{softmax} + lambda L_c ]

      反向更新的时候,每个batch内,每个样本仅仅负责更新该类的类心.

    • (IslandLoss) ,在softmax的基础上,优化类间距离:

    [L_{island}=L_c+ lambda_{1} sum_{c_{j} in N}sum_{c_k in N ,c_k eq c_j}{frac{c_k cdot c_j}{||c_k||_2||c_j||_2}+1} ]

    公式看着比较复杂,实际上即每个类心求余弦距离,+1 使得范围为0-2,越接近0表示类别差异越大,从而优化Loss即使得类间距离变大。当类别过多时,loss容易溢出.

    [islandloss 前向公式 ]

    [L = L_{softmax}+ lambda L_{island} ]

    反向更新过程即求导过程,实际简化为x/||x||的求导,需要注意i==j和i!=j.

    [islandloss 反向更新公式 ]

    [islandLoss层次类心的迭代与更新过程 ]

    实验过程

    实验包含预处理,卷积神经网络超参数。

    数据预处理

    根据人脸特征点的位置,以双眼为中心,进行人脸对齐。人脸图像缩放到60*60,同时,图像cropSize为48*48,图像随机旋转-10°~10°,并进行水平flip,从而增加训练样本的数量.

    卷积神经网络结构

    3个卷积层后接Prelu和BN,每一个bn的后面接一个MaxPooling,最终接入两个全连接层,softmax和Islandloss共同驱动最终的loss,采用sgd+momentum batch_size为300,weight_decay设置为0.05,每个全连接后接dropout层。

    [卷积神经网络结构图 ]

    实验结果

    作者做了一个简单的可视化,并统计了不同loss中特征类心的距离.

    [特征可视化 ]

    [不同loss的类别距离 ]

    • CK+: 7表情94.35%

      [ck+数据库上islandloss混淆矩阵 ]

    [ck+数据库上不同算法准确率对比 ]

    • MMI:6表情70.67%

    [MMI数据库上islandloss混淆矩阵 ]

    [MMI数据库上不同算法准确率对比 ]

    • Ouli-CASIA: 6表情77.29%

    [Oulu-CASIA数据库上islandloss混淆矩阵 ]

    [Oulu-CASIA数据库上不同算法准确率对比 ]

    • SFEW: 验证集52.52% 测试集 59.41%

    [SFEW数据库验证集上islandloss混淆矩阵 ]

    [SFEW数据库测试集上islandloss混淆矩阵 ]

    [SFEW数据库不同算法准确率对比 ]

    总结

    emmmmm,作者在centerloss的启发下,提出了softmax,并且以余弦距离衡量类间分布,相比于centerloss和传统的softmaxloss确实有提高,在网络上,bn或许对网络的性能有损失,而且具体的参数 (lambda)也不好把握,小类别可以尝试。

    本文作者: 张峰

    本文链接: http://www.enjoyai.site/2018/01/08/

    版权声明: 本博客所有文章,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!

  • 相关阅读:
    SQL日常维护的语句
    87岁老奶奶用微软自带画图软件绘画 惊艳了世人
    87岁老奶奶用微软自带画图软件绘画 惊艳了世人
    87岁老奶奶用微软自带画图软件绘画 惊艳了世人
    .NET开源项目小功能组件
    .NET开源项目小功能组件
    .NET开源项目小功能组件
    常用 SQL Server 规范集锦
    常用 SQL Server 规范集锦
    常用 SQL Server 规范集锦
  • 原文地址:https://www.cnblogs.com/LaplaceAkuir/p/8243180.html
Copyright © 2011-2022 走看看