• Stars
    star
    195
  • Rank 199,374 (Top 4 %)
  • Language
    Python
  • License
    MIT License
  • Created over 3 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

TEXTOIR is the first opensource toolkit for text open intent recognition. (ACL 2021)

TEXT Open Intent Recognition (TEXTOIR)

TEXTOIR is the first high-quality Text Open Intent Recognition platform. This repo contains a convenient toolkit with extensible interfaces, integrating a series of state-of-the-art algorithms of two tasks (open intent detection and open intent discovery). We also release the pipeline framework and the visualized platform in the repo TEXTOIR-DEMO.

Introduction

TEXTOIR aims to provide a convenience toolkit for researchers to reproduce the related text open classification and clustering methods. It contains two tasks, which are defined as open intent detection and open intent discovery. Open intent detection aims to identify n-class known intents, and detect one-class open intent. Open intent discovery aims to leverage limited prior knowledge of known intents to find fine-grained known and open intent-wise clusters. Related papers and codes are collected in our previous released reading list.

Open Intent Recognition:
Example

Updates ๐Ÿ”ฅ ๐Ÿ”ฅ ๐Ÿ”ฅ

Date Announcements
07/2023 ๐ŸŽ† ๐ŸŽ† New paper and SOTA in Open Intent Discovery. Refer to the directory USNID for the codes. Read the paper -- USNID: A Framework for Unsupervised and Semi-supervised New Intent Discovery.
04/2023 ๐ŸŽ† ๐ŸŽ† New paper and SOTA in Open Intent Detection. Refer to the directory DA-ADB for the codes. Read the paper -- Learning Discriminative Representations and Decision Boundaries for Open Intent Detection (Published in IEEE/ACM TASLP 2023).
09/2021 ๐ŸŽ† ๐ŸŽ† The first integrated and visualized platform for text Open Intent Recognition TEXTOIR has been released. Refer to the directory TEXTOIR-DEMO for the demo codes. Read our paper TEXTOIR: An Integrated and Visualized Platform for Text Open Intent Recognition (Published in ACL 2021).
05/2021 New paper and baselines DeepAligned in Open Intent Discovery have been released. Read our paper Discovering New Intents with Deep Aligned Clustering (Published in AAAI 2021).
05/2021 New paper and baselines ADB in Open Intent Detection have been released. Read our paper Deep Open Intent Classification with Adaptive Decision Boundary (Published in AAAI 2021).
05/2020 New paper and baselines CDAC+ in Open Intent Discovery have been released. Read our paper Discovering New Intents via Constrained Deep Adaptive Clustering with Cluster Refinement (Published in AAAI 2020).

We strongly recommend you to use our TEXTOIR toolkit, which has standard and unified interfaces (especially data setting) to obtain fair and persuable results on benchmark intent datasets!

Benchmark Datasets

Datasets Source
BANKING Paper
OOS / CLINC150 Paper
StackOverflow Paper

Integrated Models

Open Intent Detection

Model Name Source Published
OpenMax* Paper Code CVPR 2016
MSP Paper Code ICLR 2017
DOC Paper Code EMNLP 2017
DeepUnk Paper Code ACL 2019
SEG Paper Code ACL 2020
ADB Paper Code AAAI 2021
(K+1)-way Paper Code ACL 2021
MDF Paper Code ACL 2021
ARPL* Paper Code IEEE TPAMI 2022
KNNCL Paper Code ACL 2022
DA-ADB Paper Code IEEE/ACM TASLP 2023

Open Intent Discovery

Setting Model Name Source Published
Unsupervised KM Paper BSMSP 1967
Unsupervised AG Paper PR 1978
Unsupervised SAE-KM Paper JMLR 2010
Unsupervised DEC Paper Code ICML 2016
Unsupervised DCN Paper Code ICML 2017
Unsupervised CC Paper Code AAAI 2021
Unsupervised SCCL Paper Code NAACL 2021
Unsupervised USNID Paper Code arXiv 2023
Semi-supervised KCL* Paper Code ICLR 2018
Semi-supervised MCL* Paper Code ICLR 2019
Semi-supervised DTC* Paper Code ICCV 2019
Semi-supervised CDAC+ Paper Code AAAI 2020
Semi-supervised DeepAligned Paper Code AAAI 2021
Semi-supervised GCD Paper Code CVPR 2022
Semi-supervised MTP-CLNN Paper Code ACL 2022
Semi-supervised USNID Paper Code arXiv 2023

(* denotes the CV model replaced with the BERT backbone)

Quick Start

  1. Use anaconda to create Python (version >= 3.6) environment
conda create --name textoir python=3.6
conda activate textoir
  1. Install PyTorch (Cuda version 11.2)
conda install pytorch torchvision torchaudio cudatoolkit=11.0 -c pytorch -c conda-forge  
  1. Clone the TEXTOIR repository, and choose the task (Take open intent detection as an example).
git clone [email protected]:thuiar/TEXTOIR.git
cd TEXTOIR
cd open_intent_detection
  1. Install related environmental dependencies
pip install -r requirements.txt
  1. Run examples (Take ADB as an example)
sh examples/run_ADB.sh

Extensibility

This toolkit is extensible and supports adding new methods, datasets, configurations, backbones, dataloaders, losses conveniently. More detailed information can be seen in the directory open_intent_detection and open_intent_discovery respectively.

Citations

If this work is helpful, or you want to use the codes and results in this repo, please cite the following papers:

@inproceedings{zhang-etal-2021-textoir,
    title = "{TEXTOIR}: An Integrated and Visualized Platform for Text Open Intent Recognition",
    author = "Zhang, Hanlei  and Li, Xiaoteng  and Xu, Hua  and Zhang, Panpan and Zhao, Kang  and Gao, Kai",
    booktitle = "Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing: System Demonstrations",
    pages = "167--174",
    year = "2021",
    url = "https://aclanthology.org/2021.acl-demo.20",
    doi = "10.18653/v1/2021.acl-demo.20",
}
@article{DA-ADB, 
    title = {Learning Discriminative Representations and Decision Boundaries for Open Intent Detection},  
    author = {Zhang, Hanlei and Xu, Hua and Zhao, Shaojie and Zhou, Qianrui}, 
    journal = {IEEE/ACM Transactions on Audio, Speech, and Language Processing},  
    volume = {31},
    pages = {1611-1623},
    year = {2023}, 
    doi = {10.1109/TASLP.2023.3265203} 
} 
@article{USNID, 
    title={USNID: A Framework for Unsupervised and Semi-supervised New Intent Discovery},  
    author={Zhang, Hanlei and Xu, Hua and Wang, Xin and Long, Fei and Gao, Kai},
    journal={arXiv preprint arXiv:2304.07699},  
    year={2023}, 
 } 

Contributors

Hanlei Zhang, Shaojie Zhao, Xin Wang, Ting-En Lin, Qianrui Zhou, Huisheng Mao.

Bugs or questions?

If you have any questions, please open issues and illustrate your problems as detailed as possible. If you want to integrate your method in our repo, please feel free to pull request!

More Repositories

1

MMSA

MMSA is a unified framework for Multimodal Sentiment Analysis.
Python
654
star
2

GNN-GBDT-Guided-Fast-Optimizing-Framework

GNN&GBDT-Guided Fast Optimizing Framework for Large-scale Integer Programming(Ye et al., ICML 2023): https://openreview.net/pdf?id=tX7ajV69wt
Python
312
star
3

Self-MM

Codes for paper "Learning Modality-Specific Representations with Self-Supervised Multi-Task Learning for Multimodal Sentiment Analysis"
Python
184
star
4

MMSA-FET

A Tool for extracting multimodal features from videos.
Python
133
star
5

DeepAligned-Clustering

Discovering New Intents with Deep Aligned Clustering (AAAI 2021)
Python
120
star
6

OKD-Reading-List

Papers for Open Knowledge Discovery
TeX
117
star
7

Cross-Modal-BERT

CM-BERT: Cross-Modal BERT for Text-Audio Sentiment Analysis๏ผˆMM2020๏ผ‰
Python
103
star
8

AWESOME-MSA

Paper List for Multimodal Sentiment Analysis
94
star
9

M-SENA

M-SENA: All-in-One Platform for Multimodal Sentiment Analysis
79
star
10

MIntRec

MIntRec: A New Dataset for Multimodal Intent Recognition (ACM MM 2022)
Python
74
star
11

Adaptive-Decision-Boundary

Deep Open Intent Classification with Adaptive Decision Boundary (AAAI 2021)
Python
70
star
12

ch-sims-v2

Make Acoustic and Visual Cues Matter: CH-SIMS v2.0 Dataset and AV-Mixup Consistent Module
Python
54
star
13

TEXTOIR-DEMO

TEXTOIR: An Integrated and Visualized Platform for Text Open Intent Recognition (ACL 2021)
JavaScript
46
star
14

CDAC-plus

Discovering New Intents via Constrained Deep Adaptive Clustering with Cluster Refinement (AAAI2020)
Jupyter Notebook
44
star
15

DeepUnkID

Deep Unknown Intent Detection with Margin Loss (ACL2019)
Jupyter Notebook
34
star
16

TCL-MAP

TCL-MAP is a powerful method for multimodal intent recognition (AAAI 2024)
Python
31
star
17

CRL

Implementation of the research paper Consistent Representation Learning for Continual Relation Extraction (Findings of ACL 2022)
Python
25
star
18

TFR-Net

This repository contains the official implementation code of the paper Transformer-based Feature Reconstruction Network for Robust Multimodal Sentiment Analysis, accepted at ACMMM 2021.
Python
25
star
19

MIntRec2.0

MIntRec 2.0 is the first large-scale dataset for multimodal intent recognition and out-of-scope detection in multi-party conversations (ICLR 2024)
Python
20
star
20

OpenVNA

[ACL 2024 SDT] OpenVNA is an open-source framework designed for analyzing the behavior of multimodal language understanding systems under noisy conditions.
Python
15
star
21

AWESOME-Dialogue

Paper List for Dialogue and Interactive Systems
15
star
22

UMC

Unsupervised Multimodal Clustering for Semantics Discovery in Multimodal Utterances (ACL 2024)
Python
14
star
23

thuiar.github.io

The official website of THUIAR.
HTML
10
star
24

Books

JavaScript
8
star
25

Robust-MSA

JavaScript
7
star
26

CTMWA

Crossmodal Translation based Meta Weight Adaption for Robust Image-Text Sentiment Analysis
Python
7
star
27

Meta-NA

Pytorch implementation for codes in Meta Noise Adaption Framework for Multimodal Sentiment Analysis with Feature Noise (Accepted by IEEE Transactions on Multimedia).
Python
6
star
28

TCM-CAS

Traditional Chinese Medicine Constitution Assessment System
4
star
29

Adaptive-Batch-ParEGO

This repository contains Matlab implementation of the algorithm framework for adaptive batch-ParEGO
MATLAB
3
star
30

MILPGen

Python
2
star
31

AWESOME-MTL

Paper List for Multi-task Learning
2
star
32

cmcnn

code for paper "Co-attentive multi-task convolutional neural network for facial expression recognition"
Python
2
star
33

Expensive-Multi-objective-Optimization

2
star
34

Light-MILPopt

2
star
35

AudioProcess

Related methods and tools for processing audio data
C++
1
star
36

Block-MOBO

This repository contains Matlab implementation of the algorithm framework for Block-MOBO.
MATLAB
1
star
37

ML4MILP

ML4MILP: the first benchmark dataset specifically designed to test ML-based algorithms for solving MILP problems
Python
1
star
38

GAR-Net

GAR-Net: A Graph Attention Reasoning Network for Conversation Understanding
Python
1
star