GithubHelp home page GithubHelp logo

simcde's Introduction

SimCDE

Introduction

This is the repository of our paper 'dial2vec: Self-Guided Contrastive Learning of Unsupervised Dialogue Embeddings'.

Quick Start

We prepare a set of shell scripts for convenient usage.

Model Options: bert,roberta,t5,todbert,blender,plato,bge

Dataset Options: bitod,doc2dial,metalwoz,mwoz,selfdialog,sgd

Installation

git clone https://github.com/AlibabaResearch/DAMO-ConvAI/tree/main/dial2vec
cd dial2vec

# conda create -n dial2vec python=3.8
pip3 -r install requirements.txt

## download all datasets and move them to ./dial2vec/datasets/
## url -> https://drive.google.com/file/d/1KpxQGXg9gvH-2u21bAMykL5N-tpYU2Dr/view?usp=sharing

## download all trained checkpoints and move them to ./dial2vec/output/
## url -> https://drive.google.com/file/d/1JVod0OLyiVeIRVxvA-uk1TKa_zMn-sZK/view?usp=sharing

## download useful PLM and move them to ./dial2vec/model/
## url -> https://drive.google.com/file/d/1Xq_nj-le_Mm6iUUHjltPtJZYd6gmSvNb/view?usp=sharing

Data

The dataset required for this project can be downloaded from the following link: Download Dataset

Train

Train dial2vec on ${dataset}, we can use the following script:

sh scripts/train/run_plato.sh 'doc2dial' 'train' 5 100  # train dial2vec on doc2dial dataset

Inference

Evaluate the performance of ${model} on ${dataset}, we can use the following script:

sh scripts/inference/run_roberta.sh 'mwoz'  # evaluate roberta on MultiWOZ dataset.

Quick inference

If you want to inference several models on one dataset in one line, then you can receive results for all models.

sh scripts/inference/run_dataset.sh 'bitod'  # evaluate all models including dial2vec and baselines on BiTOD dataset.

If you want to inference one model on several datasets in one line, then you can receive results for all datasets.

sh scripts/inference/run_model.sh 'todbert'   # evaluate TOD-BERT on six datasets.

Citation

simcde's People

Contributors

ji-hyeon-oh avatar subeenc avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.