论文阅读:Discovering New Intents with Deep Aligned Clustering(用深度对齐聚类来发现新意图)

论文链接:

代码链接:

Abstract

在对话系统中发现新意图是一项关键的任务,大多数现有的方法在将先验知识从已知的意图转移到新意图上是有限制的。同样,在对分组未标记的意图方面提供高质量的监督信号去学习clustering-friendly的特征也是有困难的。在这篇论文的工作中,提出了一种有效的方法,Deep Aligned Clustering (深度对齐聚类)

发现新的意图是对话系统中的一项关键任务。大多数现有的方法在将先验知识从已知意图转移到新意图方面是有限的。他们在提供高质量的监督信号来学习聚类友好的特征,以分组未标记的意图方面也有困难。在这项工作中,我们提出了一种有效的方法,Deep Aligned Clustering(深度对齐聚类),在有限的已知意图数据的帮助下发现新的意图。

首先,利用一些已标记的已知意图样本作为先验知识,对模型进行预训练。

然后,执行k-means来产生cluster assignments(聚类分配)作为伪标签。

此外,提出了一种alignment strategy(对齐策略)去解决cluster assignments(聚类分配)过程中标签不一致的情况

最后,在the supervision of the aligned pseudo-labels(对齐的伪标签的监督)下学习intent representations(意图表示)。

在新意图数量未知的情况下,我们通过消除low-confifidence intent-wise clusters(低置信度的意图集群)来预测意图类别的数量。

Introduction

(1)作为一个无监督的聚类问题,试图去组合一些弱的监督信号。

                a、分层语义聚类模型,隐式监督。

                b、在聚类过程中,语义解析图作为额外知识去开采新意图。

                c、多种聚类技术去发现相似语义的意图聚类。

                d、在结构化输出的监督下,将问题划分为用户意图种类。

                e、利用自动编码器(autoencoder)提取意图特征,并使用层次聚类方法(hierarchical clustering method)自动标记意图。

       上述的方法没有利用了已知意图的先验知识,并且假定未被标记的样本只能由未被发现的新意图组成。

        介绍作者之前的工作:CDAC+(目标是找到已知的意图和利用有限的标注数据的先验知识去发现新意图),使用了pairwise similarities 作为弱监督信号。

        两个挑战:

(1)利用有限的标记数据,有效地将先验知识从已知的意图转移到新的意图是一个挑战。

(2)构建高质量的监督信号去学习对于未标记意图和新意图聚类的好的表示(representations)是困难的。

        作者提出了一个有效的方法去利用这些已知意图的有线先验知识,同时对表示学习提供好的监督信号。

Related Work

Intent Modeling(意图建模)

在对话系统中建模用户意图方法
(1)联合其他任务丰富意图信息。
(2)利用隐藏的语义信息对意图特征学习去构建监督信号。

Unsupervised Clustering(无监督聚类)

partition-based methods【基于分区方法】
hierarchical methods【层次化方法】
density-based methods【基于密度方法】
feature dimensionality reduction【特征降维】
data transformation method 【数据转移方法】
这些方法不能够捕获意图特征的好的语义。

Deep Clustering (深度聚类)

        【1】联合无监督学习(JULE)【The joint unsupervised learning】将deep feature learning[(深度特征学习)和hierarchical clustering(层级聚类)结合起来,但是计算和内存成本较大。

        【2】深度嵌入聚类(DEC)【Deep Embedded Clustering】通过优化带有辅助目标分布的KL散度来迭代细化聚类中心,对具有重构损失的自动编码器进行训练。

        【3】深度聚类网络(DCN)(【Deep Clustering Network】引入k-means损失作为重构聚类损失的penalty term(惩罚项)。

        【4】深度自适应图聚类(DAC)【Deep Adaptive Image Clustering 】利用成对相似性(pairwise similarities)作为学习目标,并采用自适应算法选择样本进行训练。

但是上述这些聚类方法不能够为表示学习提供特定的监督信号。

        DeepCluster(深度聚类)交替地执行k-means和representation learning(表征学习)。

它将cluster assignments(聚类分配)视为pseudo-labels(伪标签),这是对每个类进行分组的显式监督信号。但是需要在训练之前随机初始化参数。

        为了解决这个问题,提出了一种对齐策略,在不重新初始化的情况下为自监督学习(

self-supervised learning)生成对齐的伪标签(aligned pseudo-labels)。

Semi-supervised Clustering(半监督聚类

    通常会利用一些有标记的数据进行半监督聚类。

经典的约束聚类方法使用成对信息(pairwise information)作为约束条件来指导representation learningclustering

  1. COP-KMeans 使用实例级别的约束 (instance-level constraints),同时修改K-means来满足这种约束。
  2. PCK-means 提出了一个成对约束聚类(pairwise constrained clustering)的框架,并且同学主动学习(active learning)方法来进一步选择信息性的对称约束。
  3. MPCK-means 方法将度量学习(metric-learning)方法纳入了PCK-means,同时将基于度量的方法(metric-based methods)和基于中心(the centroid-based methods )的方法结合到一个统一的框架。                                                                                                                        上述方法因为要枚举pairwise conditions,因此需要很大的计算成本。
  4. KCL  使用深度学习网络来执行perform pairwise constraint clustering(成对约束聚类)。 首先,用一个带标记的辅助数据集来对binary similarity classifification训练一个额外的网络,其次,将pairwise similarity的先验知识转移到目标数据集,并且使用kl-散度来评估pairwise distance。
  5. MCL 元分类似然法(meta classifification likelihood)作为学习成对相似性(pairwise similarities)的标准,但是,该领域的自适应方法有限。
  6. CDAC+是专门为发现新的意图而设计的,它使用有限的标记数据作为学习成对相似性(pairwise similarities)的指南。然而在提供特定的监督信号方面是有限的,并且不能估计新类的数量( the number of novel classes)。
  7. DTC 是在计算机视觉领域发现新类的方法,是改进的前面提到的DEC算法。它通过转移标记数据的知识来估计新类的数量。但是,这种方法中被标记数据的量对性能有影响。

Approach

如上图所示,首先使用BERT提取意图表示。

然后,用有限的标记数据从已知的意图中转移知识。

最后,提出一种对齐策略来提供自监督信号来学习聚类的表示。

Intent Representation(意图表示)

使用BERT模型来提取深度意图表示(deep intent representations

首先将第 i 个输入句子{S}i 输入给BERT,并从最后一个hidden layer中获取其所有token的嵌入

 其中,M是句子的长度,  M+1是因为加了[CLS], H 是hidden size。

之后,利用平均池化(mean-pooling)得到平均句子特征表示(averaged sentence feature representation),公式如下:其中  

                

之后,为了进一步提高特征提取能力,增加了一个dense layer h 来获得意图表示(intent feature representation

其中,D是intent representation 的维度,\sigma是Tanh 激活函数。   是权重矩阵,是相应的bias term(偏差项)。                                                                       

 Transferring Knowledge from Known Intents(从已知意图转移知识)

 为了有效地转移知识,使用有限的标记数据对模型进行预训练(pre-train),并利用前面提到的经过充分训练的意图特征(intent features )来估计the number of clusters(集群的数量

Pre-training

目的:希望结合有限的先验知识,以获得一个良好的表示初始化,来以分组已知和新的意图。

在交叉熵损失(the cross-entropy loss)的监督下学习特征表示。经过预训练后,去掉分类器(classififier),并在后续的无监督聚类(unsupervised clustering)过程中使用网络的其余部分作为特征提取器。

Predict K

总体思路:在实际中,可能并不总是知道新的意图类别的数量。在这种情况下,需要在集群之前确定集群的数量K。因此,论文作者提出了一种简单有效的方法在初始化良好的意图特征来估计 K 。

首先,指定一个大{K}' 作为集群的数量,例如选取两倍,使用预先训练好的模型来提取意图特征。

然后,对提取的特征进行k-means处理。

假设集群是趋向于密集的,同时可信的集群是大于阈值t的。去掉小于t的低置信聚类,然后计算K。

\left | S_{i} \right | 是第i个产生的集群的大小。\delta是指示函数(满足条件时输出1,不满足条件时输出0);阈值t 是期望的聚类平均大小\frac{N}{​{K}'}.

 Deep Aligned Clustering(深度对其聚类)

在从已知的意图转移知识后,提出了一种有效的聚类方法来寻找未标记的已知类unlabeled known classes)和发现新的类(novel classes

首先进行聚类,得到cluster assignments and centroids 聚类分配和质心。

然后,提出一个原始的策略来提供对齐的目标的自监督学习。

Unsupervised Learning by Clustering(通过聚类进行的无监督学习)
能够有效地使用大量的未标记的样本来发现新的类。
首先从预训练的模型中提取所有训练数据的意图特征;
然后使用一个标准的 聚类算法:K-Means,来学习最优的 聚类质心矩阵C(cluster centroid matrix)聚类分配(cluster assignment\left \{y _{i} \right \}_{i=1}^{N} :

N 是训练样本的数量。 \left \| \cdot \right \|_{2}^{2} 表示平方欧几里得距离。对每一个聚类分配,寻找意图表示和这个聚类分配的质心之间的欧几里得距离平方后取最小再进行平均,得到最终的聚类分配( cluster assignment)。
最后,利用前面公式中的聚类分配( cluster assignments)作为特征学习( feature learning)的伪标签( pseudo-labels)。
Self-supervised Learning with Aligned Pseudo-labels (使用对其的伪标签进行自监督学习)
深度集群( DeepCluster)在集群(clustering)和更新网络参数(updating network parameters)之间交替进行。它执行k-means来产生聚类分配(cluster assignments)作为伪标签( pseudo-label),并使用它们来训练神经网络。但是,需要在每个训练阶段之前重新初始化分类器参数。解决分配不一致的问题。
由于每个嵌入的样本在 欧几里得空间中被分配到其最近的质心( centroid)上,因此采用C作为先验知识来调整不同训练时期不一致的聚类分配( cluster assignments )。将问题转化为质心对齐。
虽然意图表示会不断更新,但类似的意图也会分布在附近的位置。
采用 Hungarian algorithm 得到最优的映射 G:

 其中,C^{c} 和 C^{l}分别表示当前和最后一个训练时期的质心矩阵。

之后得到对齐的伪标签(aligned pseudo-labels

(G的逆映射,y^{c} 在当前的训练时代中的伪标签)

最后使用aligned pseudo-labels 进行自监督学习,损失函数如下:

 

使用聚类有效性指数(CVI)  评价 集群的质量

an unsupervised metric Silhouette Coeffificient:

 SC的范围在-1到1之间,得分越高表示聚类结果越好。

Experiments

Datasets

CLINC(意图分类数据集) 和 BANKING(在银行领域中的一个细粒度的数据集)
Baselines (Unsupervised 、Semi-supervised)

 Conclusion and Future Work

介绍了一种发现新意图的有效方法。
提出的方法成功地转移了有限的已知意图的先验知识,并通过消除低置信度聚类来估计意图的数量。
此外,还提供了更稳定和具体的监督信号来指导聚类过程。
未来可以尝试不同的聚类方法进行自监督学习。
思考:这种聚类的的过程来生成伪标签可以在别的领域尝试一下。
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值