论文阅读【用监督对比学习建模域外检测(OOD Detection) 的 鉴别表示】

 论文题目:Modeling Discriminative Representations for Out-of-Domain Detection with Supervised Contrastive Learning

论文链接:

代码链接: https://github.com/parZival27/supervised-contrastive-learning-for-out-of-domain-detection

Abstract

传统的交叉熵损失(cross-entropy loss)只关注一个样本是否被正确分类,而没有明确区分不同类别之间的边界。本篇论文针对这个问题进行了解决,提出了一个有监督的对比学习目标(supervised contrastive learning objective)【SCL】,通过将属于同一类的域内意图集合起来来最小化类内方差,并通过将来自不同类的样本拉开来最大化类间方差。

除此之外,采用对抗性增强机制adversarial augmentation mechanism)来获得潜在空间(latent space)中样本的 pseudo diverse views

总结:主要介绍了论文要解决的问题:提出一个有监督的对比学习的目标与现有的交叉熵损失做对比。

Introduction

从用户查询中检测域外(OOD)或未知意图(unknown intents)是面向任务的对话框系统中的一个重要组成部分.。

与正常的意图检测任务不同,OOD意图检测不知道实际场景中未知意图的确切数量,也几乎不能注释大量的OOD样本。

以往OOD检测方法一般可分为两种类型:Supervised OOD detection (有监督OOD检测)和无监督OOD检测

Supervised OOD detection (有监督的OOD检测)表示在训练数据中有大量的标记OOD样本。
有监督的OOD检测一般是形成一个(N+1)类分类问题,其中第(N+1)类代表看不见的意图。
unsupervised OOD detection (无监督OOD检测表示除了标记的域内数据外,没有标记的OOD样本。
无监督的OOD检测一般是首先通过域内(IND)数据学习意图表示,然后使用检测算法(例如LOF、GAD、MSP),计算OOD样本与IND样本之间的特征相似性。本篇论文就是采用的这样的无监督的OOD检测思路。
作者介绍了一个较大的边际余弦损失(LMCL),LMCL使latent space(潜在空间)中的决策边界最大化,LMCL迫使模型不仅正确分类,而且最大化类间方差,最小化类内方差。受到这个LMCL的影响,作者也是按照这种思路来建模语义表示。
提出监督对比学习 (SCL)模型去学习OOD检测的语义意图表示 SCL的目标是通过将属于同一类的IND意图集合在一起来最小化类内方差,并通过将来自不同类的样本拉远来最大化类间方差。
同时,为增强SCL中数据增强的多样性,采用了一种 对抗攻击机制,通过计算对于输入的 模型不可知的对抗性最坏情况扰动,在 latent space 中获得 pseudo hard positive samples 。此处附上论文原文便于理解。

 

 总体来说,论文的贡献有下面三个方面:

(1)是第一个将监督对比学习应用于OOD检测。

(2)与cross-entropy(CE)损失相比,作者提出的SCL+CE可以最大限度地提高类间方差,最小化类内方差,以学习区别性语义表示

(3)在两个公共数据集上的大量实验和分析证明了作者提出的方法的有效性。

Methodology

 Overall Architecture

(1)首先使用 CE 或者 SCL+CE objectives 在训练阶段训练一个域内意图分类器。

(2)在测试阶段提取了一个测试样本的意图特征,并使用检测算法MSP、LOF或GDA来检测OOD。

Supervised Contrastive Learning

1、 cross-entropy (CE) loss(交叉熵损失)

y_{i} 代表域内样本x_{i} 对应的意图标签。 s_{i} 代表经过LSTM 或者BERT 编码过得意图表示。 N  代表训练样本的数量。\tau 是一个温度系数(temperature factorW_{j} 表示第j个类的权重矩阵。

2、CE的改进版本 large margin cosine loss (LMCL)

m 是 cosine margin(余弦边缘) 。与CE相比,LMCL在negative class上增加了一个 normalized decision margin(标准化的决策边界,使模型明确地区分正类和负类。

 3、a supervised contrastive learning objective (SCL)

目的:最小化类内方差,最大化类间方差。

 N_{y_{i}} 表示一个batch中与y_{i}具有相同标签的示例总数,l 是一个指示器函数(indicator function)。同时,只对域内数据进行SCL。SCL的目标是将属于同一类的IND意图集合在一起,并将来自不同类的样本拉开,这有助于识别决策边界附近的OOD意图。

首先使用SCL对意图分类器进行预训练,然后使用CE或LMCL进行微调。

Adversarial Augmentation

【这一部分没有特别理解】!!!

数据增强对于对比学习有重要意义,可以应用对抗性攻击生成pseudo positive samples(伪正样本),以增加对比学习的the diversity of views(观点多样性)。

 \delta表示最坏情况下的扰动,\theta表示意图分类器的参数,x 表示给定的样本,\epsilon 表示扰动的规范边界。

应用Fast Gradient Value 【快速梯度值(FGV)来近似扰动:

 对g 进行归一化,同时使用一个\epsilon 来保证近似值的合理性。

最后,就可以得到latent space中的的 pseudo augmented  samples(伪增强样本)x_{adv} = x +\delta 。

生成的伪样本被用来在SCL中增加每个锚点(anchor)的positive views。

Experiments

Datasets

CLINC-Full and CLINC-Small

 同时作者还进行了一些了的实验来分析相应的结果,具体可以阅读论文。

Conclusion

通过对域内数据学习区别性语义意图表示,提出了一种新的监督对比学习损失(SCL)。

SCL的目标是通过将属于同一类的意图聚集在一起来最小化类内方差,并通过将来自不同类的样本拉开来最大化类间方差。

思考:将对比学习应用于OOD意图检测的想法很新颖,后续是否可以采用一下别的方法进行改进?【可以联系前面写的两篇博客】

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值