中文

快速单类分类与Logit分离原理

机器学习 2018-09-18 v4 机器学习

摘要

我们考虑神经网络训练,其应用场景中存在许多可能的类别,但在测试时,任务是一个二分类任务:判断给定样本是否属于某个特定类别,且每次应用分类器时,感兴趣的类别可能不同。例如,实时图像搜索就是这种情况。我们定义了单Logit分类(SLC)任务:训练网络,使得在测试时,仅基于该类别对应的输出logit,就能以计算高效的方式准确识别样本是否属于给定类别。我们提出一个自然原理,即Logit分离原理,作为选择和设计适用于SLC的损失函数的指导原则。我们证明交叉熵损失函数与该原理不符。相比之下,已有的一些损失函数以及我们提出的新型批量损失函数则与该原理相符。我们总共研究了七种损失函数。实验表明,在几乎所有情况下,与不符合Logit分离原理的损失函数相比,符合该原理的损失函数在SLC任务中至少获得20%的相对准确率提升,有时提升幅度更大。此外,我们证明,与计算所有logit的标准分类相比,快速SLC不会导致二分类准确率下降,并且其加速比随类别数量增加而增长。例如,当类别数为400,000时,我们展示了10倍的加速。用于优化新型批量损失的Tensorflow代码已在https://github.com/cruvadom/Logit Separation上公开。

关键词

引用

@article{arxiv.1705.10246,
  title  = {Fast Single-Class Classification and the Principle of Logit Separation},
  author = {Gil Keren and Sivan Sabato and Björn Schuller},
  journal= {arXiv preprint arXiv:1705.10246},
  year   = {2018}
}

备注

Published as a conference paper in ICDM 2018