January 01, 1970
Systems like Voice-command based conversational agents are characterized by a pre-defined set of skills or intents to perform user specified tasks. In the course of time, newer intents may emerge requiring retraining. However, the newer intents may not be explicitly announced and need to be inferred dynamically. Thus, there are two important tasks at hand (a). identifying emerging new intents, (b). annotating data of the new intents so that the underlying classifier can be retrained efficiently. The tasks become specially challenging when a large number of new intents emerge simultaneously and there is a limited budget of manual annotation. In this paper, we propose MNID (Multiple Novel Intent Detection) which is a cluster based framework to detect multiple novel intents with budgeted human annotation cost. Empirical results on various benchmark datasets (of different sizes) demonstrate that MNID, by intelligently using the budget for annotation, outperforms the baseline methods in terms of accuracy and F1-score.
The conversational agents such as Amazon Alexa, Apple Siri are characterised by the skill of understanding intents which help them to efficiently handle a user’s query. For example, the query ‘Will it be colder in Ohio’ requires getting the weather updates for the city ‘Ohio’ and would be associated to the intent GetWeather. The agents are trained with a pre-defined set of intents such as {GetWeather, RateBook, BookRestaurant} so as to perform the goal-oriented user tasks. But with the passage of time, a user may be interested in performing newer tasks adding hitherto unknown intents. For example, ‘Play some music from 1954’ would be associated to the intent PlayMusic that may not be a part of the set of pre-defined intents.
Emergence of novel intent detection has been periodically checked by different models in the last decade. There are works on incremental learning in dynamic environment for evolving new classes [1]–[3]. There are also several approaches [4]–[9] to detect new classes in the form of outlier detection but they do not distinguish among multiple new class labels so are not effective in novel multi-class detection. detect user intents using zero-shot generalized intent detection framework. However, they assume that the unseen intent class LABELS are already known, while in our case neither the number of unseen intent classes, nor the corresponding class labels are known. The other line of works [10], [11] supply the system with new intents, albeit with a limited amount of tagged data per class and then have an efficient algorithm to incrementally learn new classes. These models work on the assumption that some instances of these new classes would be provided for model building. However, in a realistic setting, the system may not have any knowledge of the number and types of new intents appearing, it may at most understand that some new out-of-domain samples are generated. So, the problem statement is to probe the incoming data wisely and use minimum human intervention to identify all types of novel intents emerging and intelligently tag a limited set of data covering all discovered intents, which can be be fed into a model for retraining.
More concretely the system is at first trained with an initial set of known intents; side-by-side an out-of-distribution (OOD) detector classifier is also trained to identify datapoints which do not fit the known intents. When substantial amount of such points are detected, the task is to (a) identify whether the points are originating from introduction of a single novel intent or multiple and (b) choose (a limited number of) samples to annotate so that the classifier can be retrained efficiently.
In order to determine the number of novel intents present in the OOD data, we undertake a clustering based approach with the idea that each cluster would represent a novel intent. By increasing the cluster number progressively, we can make a highly accurate estimate of the number of novel intents. If sample points of an intent mainly correspond to a well formed cluster, the implication is that without much probing we can shortlist enough training samples (through silver tagging) for that class. On the other hand, if the sample points of an intent tend to interwine with other intent points in the feature space, these can be considered as uncertain points and require human intervention for tagging (gold tagging). With this intuition in place, we design a mix of silver and gold tagging to produce high-quality training samples which can be used to retrain the classifier.
Our proposed framework of Multiple Novel Intent Detection (MNID) is compared with competitive baselines and evaluated across several standard public datasets in NLU domain where it performs substantially better. We use datasets with different number of intent classes. SNIPS [12] and ATIS [13] are smaller datasets, consisting of less number intent classes - 7 and 21, respectively. HWU [14], BANKING [15] and CLINC [16] consist of large number of intent classes - 64, 77 and 150, respectively.
The paper is organized as follows. We discuss the Problem Setting and solution overview in Section 2. Our algorithmic framework is described in Section 3. We present the datasets with experimental statistics and data pre-processing in Section 4. In Section 5, we discuss the experimental design and baselines. Detail evaluation results with different algorithmic variations are in Section 6. We conclude with a summary in Section 73.
Problem Setting: To formally describe the problem setting, let there be a dataset \(W\) containing overall \(N\) classes. However, the value of \(N\) is not known apriori. Let \(T\in W\) be the test set and \(W - T = D\) be the rest of the dataset, out of which \(|D_{init}|~(<< |D|)\) labelled data of \(N_{init}~( < N)\) classes is initially provided, while the rest of the data is unlabelled. The task is to design an algorithm to (a). detect all the remaining \(N - N_{init}\) classes and (b). spent a limited budget (\(B\) - \(|D_{init}|\)) to annotate high fidelitous new datapoints, so that the classifier can achieve high accuracy when retraining. The solution steps are as follows: (a) Identify the OOD (out of distribution) datapoints which do not belong to the initial \(N_{init}\) classes. This can be considered as a preprocessing step. (b) Use a part of the allotted budget to annotate a portion of these OOD datapoints. These points (for annotation) are selected by repeatedly running a clustering algorithm with increasing number of clusters as input, and choosing cluster cluster centre points to identify the unknown classes. Rationale: The intuition/expectation is that each cluster hosts a separate intent, hence annotating the cluster centres would lead to discovery of maximum number of novel intents. (c) Further identify the classes which are well clustered in feature space and which are not. Use another portion of the budget to increase the annotations of not-so well formed clusters and then build up a classifier with all the classes. Rationale: If a cluster is well-formed, most likely it is hosting a single class, hence there is no need to annotate further points there, rather annotate more points in not-so-well-formed clusters. (d) Use the classifier to classify points from the clusters. Identify low-confidence points from the bad clusters and annotate them. High-confidence points from good clusters are silver annotated. Rationale: The low-confidence points in the bad clusters are the most uncertain points, hence annotating them helps in increasing classifier accuracy. Similarly high-confident points in the good clusters almost surely will belong to that particular cluster, hence silver annotation is pursued. (e). Retrain the classifier.
The overall MNID framework with different algorithmic modules is shown in Fig. 6.
The proposed framework for Multiple Novel Intent Detection (MNID) is explained through Algorithm 1. As highlighted in the overview, the algorithm consists of data pre-processing step, followed by three stages, each of them are discussed below. The total budget of (gold) annotation is \(B\). Besides the system can undertake unlimited silver annotation. The advantage of silver strategy is that it is free as no human probing is required. However, it is also likely to bring in noise if used indiscriminately.
Pre-process: OOD Detection (OODD): For the dataset (\(D\)), this module (Algorithm 2) takes the initial labelled data (\(D_{init}\)) as input and predicts the Out-of-Domain (OOD) samples on the remaining data, (\(D-D_{init}\)). We call the set of OOD samples predicted as \({\mathcal{OS}}\). This is a part of the data pre-processing.
Stage 1. Novel Class detection (NCD): In this sub-module (Algorithm 3), we aim at finding all the new classes, \(N_{new}.\) On the OOD samples (\({\mathcal{OS}}\)), obtained in the previous sub-module (Algorithm 2), we do clustering using K-Means. We start the algorithm with \(K = 1\) and number of new classes, \({N}_{new}\) = 0. We perform - (i) K-Means clustering. (ii) Annotate \(x\) points from each cluster, add those points to \(\mathcal{L}\) and identify \(n'\) new classes. (iii) Increase new class count (\({N}_{new}\)+ \(n'\)). (iv) Double the number of cluster count (we compare \({N}_{new}\) with \(K/2\)). We execute the above steps until cluster count exceeds the new intent count. The algorithm returns current annotations (\(\mathcal{L}\)), newly discovered class count (\({N}_{new}\)) and newly formed clusters (\(\mathcal{CL}\)). The budget spent in this step is \(B_1\).
Stage 2. Cluster Quality Based Annotation (CQBA): In this step (Algorithm 4), we evaluate the quality of each of the clusters obtained by the previous algorithm. We annotate \(p\) points from each of these clusters and if all the \(p\) points belong to the same class, we term it as a good cluster or else a bad cluster. An example of a bad
cluster in BANKING would be the one containing data points from multiple classes, which may have high similarity, such as: declined_cash_withdrawal and pending_cash_withdrawal. For the bad clusters, we annotate \(q\) more points. All these annotated points are then added to the labelled data, \(\mathcal{L}\). The budget spent in this step is \(B_2\). Hence the remaining
budget \(B\) - (\(B_1\) + \(B_2\)) is used in the next step.
Stage 3. Post Processing Annotation Strategy (PPAS): In this step (Algorithm 5), we add more data to the labelled set, \(\mathcal{L}\), through gold annotation (gold
strategy), as well as silver-annotated data (silver strategy). To select these data points, we first train a classifier (\(\mathcal{M}\)) with the labelled set, \(\mathcal{L}\)
as obtained in the last step (CBQA), and consider the clusters \(\mathcal{CL}\). We predict on the remaining points of the clusters to get the confidence of the datapoints. We perform silver strategy based on confidence
score (CS) and gold strategy in round-robin way to operate on each cluster one after another.
Gold Strategy: Least confident data-points are annotated from the bad clusters (if present) or else from the good clusters. Gold strategy is performed in a round-robin way to retrieve data points with the least score for each cluster until
our budget exhausts.
Silver strategy: If the confidence score (CS) of a datapoint from a cluster is greater than a predefined threshold (\(\mathcal{TH}\)), we measure the average cosine similarity of points annotated within
that cluster with this point. If similarity is above a predefined threshold (\(\mathcal{\tau}\)), we label this point with class label of that cluster. The predefined threshold (\(\mathcal{\tau}\)) is required to choose good samples selectively instead of choosing all the points. Silver strategy does not require human intervention therefore there is no extra addition to the annotation cost, but the
multiple conditions are checked to prevent noise in the training set.
Final Step: We again train the neural model \(\mathcal{M}\) on \(\mathcal{L}\) and test on \(\mathcal{T}\) to find out Accuracy and F1.
We perform our experiments on a variety of datasets, which are widely used as benchmarks for Natural Language Understanding tasks. The datasets are SNIPS [12], ATIS [13], HWU [14], BANKING [15] and CLINC [16]. SNIPS (7) and ATIS (21) are smaller datasets consisting of less number of intents (in bracket) where HWU (64), BANKING (77) and CLINC (150) are larger datasets with many intents. ATIS is the most imbalanced, skewed dataset. In BANKING data - several intents are highly similar among themselves. The detailed statistics of these datasets including our experimental framework are shown in Table ¿tbl:tab:dataset?. Since the datasets are already fully labelled, annotation essentially means utilizing the already available labels. Hence, we do not have to deal with usual issues of annotation accuracy, inter-annotator agreement, etc.
width=
SNIPS [12]: This dataset is collected from the Snips personal voice assistant. It has a total of 14,484 sentences with 7
intent types.
ATIS [13]: ATIS consists of recordings from automated airline travel inquiry systems. We consider the same data as in [17] for our experiments similar to [18]. It has total 5,871 sentences and 21 intent types.
BANKING [15]: All intents in this dataset are taken from the ‘Banking’ domain. It has total 77 intents across 13,083 sentences. CLINC [16]: CLINC is a multi-domain dataset where there are 150 intents which span across 10 domains. The dataset contains queries labelled with these intents and some of them are labelled as ‘OOS’, we however do not consider these OOS queries for our setting. It has total 22500 sentences with 150 intent types. HWU [14]: It contains queries spanning multiple domains, unlike a single domain SDS which only understands and responds to the user in a specific domain. It consists of 11,036 examples for 64 intents in 21 domains.
width=
In the pre-processing step, we filter the out-of-domain samples. We consider four algorithms for detecting out-of-domain samples. i) Softmax Prediction Probability (MSP) [19] predicts out-of-domain samples based on a threshold on the softmax prediction scores. ii) Deep Open Classification (DOC) [20] method builds a multi-class classifier with one vs rest layer of sigmoids. iii) Large Margin Cosine Loss (LMCL) [21] trains a network with margin loss and predictions are then fed into an algorithm called Local Outlier Factor (LOF) for outlier detection. iv) Few-shot OOD (FS-OOD) [22] uses a ProtoTypical Network to detect OOD examples and classifying in-domain examples with few-shot examples from the in-domain class. We fine-tune BERT embeddings using all these out of domain sample detection algorithms. We use bert-base-uncased for these methods. We set the threshold for MSP as 0.5 as in , . The results of all these algorithms are shown in Table ¿tbl:tab:tab95iclr?. FS-OOD [22] provides us the best accuracy and F1 for detecting OOD samples (\(\mathcal{OS}\)). Only DOC performs better in case of SNIPS but overall FS-OOD outperforms other approaches so we use FS-OOD produced out-of-sample data.4
The efficacy of the algorithm needs to be tested on two aspects. (a). The number of unknown intents identified. (b). The accuracy achieved when the data is annotated by our algorithm, MNID. To test the accuracy, we use state-of-the-art several classification algorithms used for intent detection.
width=0.9
Different Neural Models: We explore different neural models to evaluate MNID as discussed next:
1. IFSTC [10]: This finetunes a trained model on few shot data of new classes using an entailment and hybrid strategy. We use the hybrid strategy (best performing in their case).
2. PolyAI [15]: It performs intent classification task based on dual sentence encoders - Universal Sentence Encoders (USE) [23] and ConveRT. Since authors have taken down the ConveRT model, we apply USE only. 5
Along with the above two, we also consider other standard models, 3. BERT (‘bert-base-uncased’) [24] and 4. RoBERTa (‘roberta-base-uncased’) [25] for evaluation on these datasets. We finetune these pre-trained language models for 15 epochs for the smaller datasets (SNIPS, ATIS) 50 epochs for the larger datasets (HWU, BANKING, CLINC) and with a learning rate of 2e-05 and Adam optimizer6. Early stopping was employed to stop training. For all methods, we provide the same number of gold annotated data obtained using our pipeline and report its performance.
Baselines: We compare the performance of our method using two annotation techniques for choosing \(B - \|D_{init}\|\) data points: 1) \(Gl_F\): This is the ideal scenario where we are given \(F\) (=10) data points for each of the new classes - GoldFew, abbreviated as ‘\(Gl_F\)’. 2) \(Rn_{F}\) : Here, we randomly choose \(B - \|D_{init}\|\) data points from the unlabelled data - RandomFew, abbreviated as ‘\(Rn_{F}\)’.
Clustering Algorithms: One of the building blocks of MNID is to cluster datapoints, so the efficacy of MNID depends on employing an efficient clustering algorithm. We do a detailed study by employing several unsupervised and semi-supervised clustering algorithm and choose the best. The unsupervised algorithms are: (i) K-Means (KM) [26] (ii) Agglomerative Clustering (AG) [27] (iii) Deep Clustering Network (DCN) [28] and (iv) Deep Embedded Clustering (DEC) [29] which uses the stacked auto-encoder based reconstruction loss. The semi-supervised algorithms are: (i) DeepAligned (DAL) [30] which uses limited data for pre-training and cluster assignments as pseudo labels for cluster refinement. (ii) DTC [31] develops on the DCN algorithm by scaling it to the transfer learning setting and can estimate the number of known classes in unlabelled data. It is however highly dependent on availability of labelled data (iii) KCL [32] which transfers the knowledge to target dataset considering KL-divergence based distance loss (iv) MCL [33] which uses meta-classification based likelihood criterion for pairwise similarity evaluation (v) CDAC+ [34] which uses prior data to refine the clustering process and KL-divergence based loss 7.
Other than KM and AG, all the other unsupervised methods along with some of the semi-supervised methods such as DTC and CDAC need the information of the ground truth number of clusters for training and we provide them so (it is an extra advantage for them). For semi-supervised methods such as KCL, MCL, DTC and DAL, we start with double the number of ground truth clusters and let the method determine the number of clusters.
Hyper-parameters and Settings: For Post-Processing annotation strategy of MNID, we set the cosine similarity threshold, \(\tau\) as 0.8 and the confidence threshold, \(\mathcal{TH}\) as 0.5 8. For all datasets, we use a setting similar to \(\kappa\)-shot with \(\kappa\) = 10. For \(N\) intents, we define our total budget \(B = \kappa \times N\). We use same budget for all our experiments. We experiment on NVIDIA Tesla K40m GPU with 12 GB RAM, 6 Gbps clock cycle and GDDR5 memory. All the methods took less than 8 GPU hours for training.
Figure 7: Count of gold annotated points for newly discovered classes. a — HWU, b — BANKING, c — CLINC
In this section, we discuss the experimental outcomes for MNID and competing baselines. We also show results of different clustering algorithms and variations of distinct components of MNID.
(A) Class Discovery: MNID is very effective in identifying almost all new intents. For HWU, BANKING and CLINC, 54 out of 54 (100%), 66 out of 67 (98.5%) and 139 out of 140 (99.3%) new intents from the unknown intent set were discovered, respectively. For SNIPS and ATIS, we could discover 2 out of 2 (100%) and 7 out of 8 (87.5%) new intent classes, respectively. Due to data skewness (ATIS) and high intent similarity (BANKING, CLINC) MNID misses one intent.
(B) Performance of MNID: Table [tbl:tab:embeddings] shows the performance of different models - IFSTC, PolyAI, BERT and RoBERTa when trained with datasets provided by MNID. In order to maintain the fairness, MNID, \(Rn_F\) and \(Gl_F\) use the (overall) same number of gold-annotated data points. Besides MNID uses silver-annotated data points, while the others do not have any way of creating high quality silver annotated data. Each cell in the table consists of values from \(Gl_{F}\), \(Rn_{F}\) and MNID. As expected, \(Rn_{F}\) performs the worst across all settings. However, except two scenarios, we observe that MNID consistently performs better than the \(Gl_F\) dataset. For all these four different settings across five datasets, MNID improvements over \(Gl_{F}\) predictions are statistically significant (\(p < 0.05\)) as per McNemar’s Test. It is observed that our approach also works well on the highly imbalanced ATIS dataset in which some of the classes have less than 10 data points and highly similar BANKING dataset in which the intents are closely related eg., ‘top-up-reverted’ and ‘top-up-failed’. This is because although \(Gl_F\) chooses uniformly across all classes, MNID selectively labels datapoints having high uncertainty thus providing the classifier with the right ingredient to perform better. In IFSTC on SNIPS dataset, MNID underperforms as compared to \(Gl_F\) but with a very small margin. This happens because in the case of SNIPS dataset, the number of new classes is very less, hence \(Gl_{F}\) can choose ideal candidates. The best performance of MNID as well as the two baselines is in the PolyAI setting when it is used with Universal Sentence Encoders (USE). Since PolyAI performs the best, all our subsequent results are provided on PolyAI (USE).
(C) Distribution of gold annotated points: Fig 7 shows the count of the gold annotated points (\(Y-axis\)) for new classes (class indices on \(X-axis\)). The dotted line is at the frequency of 10, corresponding to the average annotations per class. For 76.2% (HWU), 81.5% (BANKING) and 67.3% (CLINC) classes in good clusters require ‘\(\leq 10\)’ annotations. More than 10 annotations are needed for 65.4% (HWU), 68.5% (BANKING) and 54.5% (CLINC) classes in bad clusters.
(D) Budgets: For novel intent class discovery, a minimum number of human annotation is necessary. For NCD to work, at least 4 shot, 6-shot and 7-shot annotations are required for HWU, BANKING and CLINC datasets respectively.
width=0.98
All these clustering methods however cannot determine the intent classes of these clusters, we as such continue with the rest of our pipeline as discussed before, to determine the same. We use ‘bert-base-uncased’ to extract representations for all the methods except DEC and DCN where we use Stacked Auto-Encoders. For NCD, we consider \(x\) as 2. For CBQA, we identify good cluster and bad cluster based on \(p\) point selection from each cluster. If all the \(p\) points from a cluster belong to same class then it is a good cluster otherwise bad cluster. The idea of good and bad cluster is helpful in prudent data selection for annotation. Good clusters are organised properly while bad clusters are cluttered. So less number of point selection is required from good clusters but more number of points are needed to be checked from bad clusters to optimize the labeling cost. For bad cluster, we select \(q\) more points for annotation. In CBQA, we set \(p\) as 3 and \(q\) as 2. [PG: But later on, a different value has been given.] [done] We perform various ablation study on these values in the later sections. The results of all these methods are shown in Table ¿tbl:tab:clustering95comp?. KM performs consistently well on all the datasets as can be observed in Table ¿tbl:tab:clustering95comp?.
width=
MNID consists of three steps (a). novel class detection (NCD), (b). cluster quality based annotation (CQBA) and (c). post-processing annotation strategy (PPAS). In each of these steps, certain parameters can be varied. We systematically discuss the impact of these parameters on MNID performance.
(a) Performance of Clustering Algorithms: We explore different unsupervised and semi-supervised clustering algorithms in our MNID framework. Overall accuracy and F1-Score for open intent discovery by different approaches are shown in Table ¿tbl:tab:clustering95comp?. From Table ¿tbl:tab:clustering95comp?, it is seen that unsupervised approaches perform better than semi-supervised models The semi-supervised techniques get biased by the initial seed and fail to discover diverse clusters needed to detect all the new intent classes. K-Means (KM) performs the best across all datasets in terms of accuracy and F1 score except for HWU dataset where DEC and DTC (F1 only) outperforms it. This is most probably due to its robustness and absence of any outlier in the dataset. So we use K-Means as the clustering algorithm for MNID.
(b) Class Discovery with number of clusters: From Fig 8 (a), we observe an increasing trend in the number of classes discovered with increasing number of clusters which show that classes get evenly distributed across clusters as the number of clusters increases. The rate at which new classes are discovered is linear with the new clusters until significant classes are detected. The horizontal lines represent the gold number of new intents.
width=0.9
(c) Effect of number of points (\(x\)) used in clustering: Fig 8 (b) shows that the accuracy on all datasets drops as we increase the number of points used for new class discovery in clustering beyond \(x=2\). This is because most of the budget gets exhausted while clustering and we have a very small budget to annotate low-confidence points in the next steps. Note that at least two points from a cluster need to be annotated for new class discovery.
Figure 8: Variations of NCD. a — Class discovery with
number of clusters, b — Accuracy vs points annotated (\(x\)) for clustering
(a) Effect of number of points selected from Good and Bad clusters: We experiment with different values of point selection (\(p,q\)) for the module CQBA (4) and observe how accuracy changes for three larger datasets - HWU, BANKING and CLINC. We get the best accuracy for (\(p, q\)) = (3, 2) i.e 3(\(p\)) points from good cluster and 5(\(p+q\)) points from bad cluster as shown in Table ¿tbl:tab:p95q95pointwise95accuracy1?. Since, we perform gold annotation strategy on the bad clusters, a higher number of point selection is required to identify classes. (b) Distribution of good and bad clusters: For CLINC, BANKING and HWU we obtain 256, 128 and 64 clusters respectively by NCD. The percentage of good clusters obtained for CLINC, BANKING and HWU are 70.70% (181 out of 256), 46.88% (60 out of 128) 56.25 % (36 out of 64), respectively. For BANKING, since the entire dataset is from a single domain with multiple intents being similar among themselves, we obtain more bad clusters than the good clusters. For SNIPS and ATIS, however, all the clusters are good clusters.
(a) Different Variations of Gold and Silver Strategies: The results for different variations of MNID methods (based on Silver and Gold Strategy applications) for all the datasets are provided in Table ¿tbl:tab:mnid-variations-table?. We observe that the best result is obtained on MNID-9, i.e., choosing high confidence points from the good clusters for silver strategy and low confidence points from the bad clusters (if detected or else from the good clusters) only for gold strategy. This strategy ensures that during silver annotation we choose points with high fidelity and side by side for gold annotation choose points with high uncertainty, both of which help in developing a highly accurate classifier. Silver strategy on high confidence points from good cluster (7 vs 9) and gold strategy on low confidence points from bad cluster (4 vs 9) alone enhances \(\sim\)1- 3% accuracy and F1 for the three large datasets.MNID-9 corresponds to our proposed approach, MNID.
width=
(b) Silver Strategy Analysis: We inspect silver strategy based on cosine similarity, confidence score and strategy accuracy.
(i) Effect of Cosine Similarity and Confidence Score (CS): We study the effect of cosine similarity of silver strategy for MNID. From Fig. 9 (a), we observe that the best results are always obtained using a higher threshold of 0.8 cosine similarity. In case of BANKING, HWU and ATIS accuracy drops at 0.9 whereas for other datasets it remains almost identical. Fig 9 (b) shows how accuracy varies for different confidence scores. We observe that for all the datasets the best results are obtained at a threshold of 0.5. This is because a lower threshold allows more diverse datapoints to be selected using cosine similarity and this in turn improves the model performance. In both the cases if the cosine similarity or the threshold is increased beyond the optimal point, that results in selection of too less datapoints which is not enough for the classifier to do a meaningful learning. Hence accuracy drops. So we choose the parameters - cosine similarity = 0.8 and \(\tau\) = 0.5 - while choosing high confidence point to be annotated by silver strategy.
(ii) Strategy Accuracy: The accuracy of data point selection by silver strategy for different MNID variations is shown in Table ¿tbl:tab:silver?. We see the strategy of choosing high-confidence points from good clusters produce points with high fidelity. Table ¿tbl:tab:silver? also shows the average number of points per class as selected by this strategy for various datasets. Here we see that enough number of silver points are annotated even after considering a very strict criterion. Note, count is the highest for BANKING because multiple intents are very similar to each other and hence more points qualify the cosine similarity threshold, \(\tau\).
.
In Table [tab:fb_results], we show results on Facebook multilingual datasets, ATIS and SNIPS (averaged results from Table [tab:snips_results]). In Table [tab:snips_results], we report performance of our algorithm on the different types on SNIPS data. We observe that in almost all the datasets, the KM labelling strategy outperforms others in terms of overall accuracy and Macro-F1-score. We also observe that CL performs significantly well on all the datasets and even out-performs KM in SNIPS Type 2 setting as in Table [tab:snips_results]. Thus, CL can be a decent alternative to KM and may significantly reduce the overhead of deciding the number of clusters. The MNID Random annotation (Rand Annot) baseline fails to perform well on the datasets (Table [tab:snips_results]) since the random selection of samples leads to a uniform distribution of all the known and unknown classes and a lower number of OOD samples are added back to training. [NG: A detailed discussion is needed]
Our method (MNID) consistently outperforms the other baseline by \(\sim\) 10% in terms of accuracy and \(\sim\) 4-8% in terms of macro F1. Also, it can be observed from Table [tab:snips_results], that all the baselines perform well for Type 3 setting in the SNIPS dataset. The reason behind this would be the high level of dissimilarity between the unknown intents with the known intents which makes it easier to detect these classes. Despite of the fact that the competing baselines have the added advantage of not having to differentiate between the novel classes, we were still able to achieve higher results on all the datasets.
Figure 9: Variations of PPAS. a — Cosine similarity
threshold (\(\tau\)), b — Confidence score
threshold (\(\mathcal{TH}\))
(g) Effect of changing size of unlabelled data: We study the effect of changing unlabelled data on three larger datasets viz., BANKING, CLINC and HWU. We split the dataset into: 2x, 5x and Full setting where x is the budget. These data points are chosen randomly from the pool of unlabelled data available. We observe that the performance of our method increases with the size of the unlabelled data as can be seen in Fig [fig:unlab]. The dotted lines represent the accuracy of this method in ‘Gold10’ setting.
[NG: How are you choosing 2x, 5x etc. What is the percentage of classes you are being able to discover] [done]
We have developed MNID (Multiple Novel Intent Detection), an end-to-end framework to identify multiple novel intents within a fixed annotation cost. The algorithm intelligently uses the concept of clusters to first discover the classes and then estimate the nature in which datapoints of a class is distributed, that is, whether the datapoints of a class congregate strongly within themselves and separate from other classes or are entangled with datapoints of other classes. In the two types of situations, we propose two different strategies, silver strategy to take advantage of the clusters so that we can annotate many points without any extra human cost and gold strategy to annotate highly uncertain points. This two-pronged approach helps us to annotate highly precise points automatically while annotating the most uncertain (with respect to the class it belongs) points using human assistance. We have done a very rigorous analysis/experimentation to establish the core idea of our algorithm. We observe that the accuracy of classifiers when fed with the dataset created by MNID can beat the standard best few-shot setting where it is assumed that ‘\(\kappa\)’ instances of each class are provided and annotated by human whereas in our case we have to first discover the classes and then have to find the instances of each class. One limitation of MNID is that it is not able to detect intents where classes are very similar to each other. For example, the query “Can you explain why my payment is still pending?” in BANKING dataset is from the “pending transfer” category but our system detects as “pending card payment’’ intent as both intents are quite similar. We shall try to address this issue in future. We have presently worked on a setting where novel intents appear in one step, we would strive to extend this framework to explore the dynamics of periodically evolving intents.
Equal contribution↩︎
Work done while the author was a student at IIT Kharagpur↩︎
Codes are in - https://github.com/sukannyapurkayastha/MNID↩︎
FS-OOD: https://github.com/SLAD-ml/few-shot-ood and other OOD models: https://huggingface.co↩︎
We use author’s implementation of IFSTC (PyTorch) and re-implement PolyAI (Tensorflow)↩︎
We use https://huggingface.co/↩︎
This combination of \(\tau\) and \(\mathcal{TH}\) provides the best results among different experimented results.↩︎