Coder Social home page Coder Social logo

emma's Introduction

EMMA

Introduction

Existing emotion-aware conversational models usually focus on controlling the response contents to align with a specific emotion class, whereas empathy is the ability to understand and concern the feelings and experience of others. Hence, it is critical to learn the causes that evoke the users' emotion for empathetic responding, a.k.a. emotion causes. To gather emotion causes in online environments, we leverage counseling strategies and develop an empathetic chatbot to utilize the causal emotion information. On a real-world online dataset, we verify the effectiveness of the proposed approach by comparing our chatbot with several SOTA methods using automatic metrics, expert-based human judgements as well as user-based online evaluation. The paper "Towards an Online Empathetic Chatbot with Emotion Causes" has been accepted by The 44th International ACM SIGIR Conference on Research and Development in Information Retrieval. For details, https://doi.org/10.1145/3404835.3463042

Dataset

X-EMAC: XiaoAI Empathetic Conversation dataset

Dataset Overview

In version 1.0, we only released q-a pair. In version 2.0, in addition to expanding the data size, we added additional information such as emotion_label, keywords, reply intent, etc.

Dependencies

  • Python3
  • torch == 1.4.0
  • pytorch-ignite==0.2.1
  • transformers==2.1.1
  • tensorboardX==1.8
  • tensorflow ==1.14.0

Quick Start

TrainData

Query\tResponse\tQueryEmotionLabel\tResponseEmotionLabel

TestData

prev Query|prev Response|Query+EmotionLabel+EmotionCause,Response

Train

CUDA_VISIBLE_DEVICES=0,1,2 python train.py --pretrained --model_checkpoint ./pretrained_models/ --data_path ../data/xiaoai_train.txt --scheduler linear 

Test

CUDA_VISIBLE_DEVICES=0,1,2 python infer_moban.py \
          --datapath ../data/test_dialog.json \
          --out_path test_dialog \
          --model_checkpoint  model_checkpoint/ \
          --max_length 20 \
          --min_length 1

LICENSE

Licensed under either of

  • MIT license
  • BSD license

EMMA

介绍

现有的共情对话模型通常聚焦在控制模型生成特定情绪的回复,没有考虑到把情绪原因应用到共情对话生成。 但实际上,理解、关注他人感受,了解用户产生情绪的原因至关重要。我们采取了多种策略获取线上用户真实的情绪原因,并且开发了一个具有共情能力的对话机器人。在真实的场景中,我们与SOTA方法进行了对比,通过自动化指标、人工指标验证了我们提出的方法的有效性。该成果的论文《Towards an Online Empathetic Chatbot with Emotion Causes》已被国际人工智能方向顶级会议 The 44th International ACM SIGIR Conference on Research and Development in Information Retrieval 接收。详细见:https://doi.org/10.1145/3404835.3463042

数据集

X-EMAC: 小爱共情对话数据集

数据集概况

在1.0版本中,我们仅开发了q-a pair 信息,在2.0版本除了扩大了数据集的规模外, 还增加了query的情绪类别、情绪原因、回复的意图类别等标注信息。

依赖

  • Python3
  • torch == 1.4.0
  • pytorch-ignite==0.2.1
  • transformers==2.1.1
  • tensorboardX==1.8
  • tensorflow ==1.14.0

快速开始

训练语料格式

Query\tResponse\tQueryEmotionLabel\tResponseEmotionLabel

测试语料格式

prev Query|prev Response|Query+EmotionLabel+EmotionCause,Response

训练

CUDA_VISIBLE_DEVICES=0,1,2 python train.py --pretrained --model_checkpoint ./pretrained_models/ --data_path ../data/xiaoai_train.txt --scheduler linear 

测试

CUDA_VISIBLE_DEVICES=0,1,2 python infer_moban.py \
          --datapath ../data/test_dialog.json \
          --out_path test_dialog \
          --model_checkpoint  model_checkpoint/ \
          --max_length 20 \
          --min_length 1

LICENSE

Licensed under either of

  • MIT license
  • BSD license

emma's People

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.