Официальная реализация PyTorch и оценочный набор EmoCause нашего документа EMNLP 2021?
Хёну Ким, Пёнчан Ким и Гунхи Ким. Взгляд на перспективу и прагматика для создания эмпатических ответов, ориентированных на причины эмоций. ЭМНЛП , 2021 [Документ]
Если вы используете материалы этого репозитория как часть какого-либо опубликованного исследования, мы просим вас цитировать следующую статью:
@inproceedings { Kim:2021:empathy ,
title = { Perspective-taking and Pragmatics for Generating Empathetic Responses Focused on Emotion Causes } ,
author = { Kim, Hyunwoo and Kim, Byeongchang and Kim, Gunhee } ,
booktitle = { EMNLP } ,
year = 2021
}
Наш код построен на платформе ParlAI. Мы рекомендуем вам создать среду conda следующим образом:
conda env create -f environment.yml
и активируйте его с помощью
conda activate focused-empathy
python -m spacy download en
EmoCause — это набор данных аннотированных слов, вызывающих эмоции в эмоциональных ситуациях, из действительного и тестового набора EmpatheticDialogues. Цель состоит в том, чтобы распознавать слова, вызывающие эмоции, в предложениях путем обучения только меткам эмоций на уровне предложений без меток на уровне слов ( т. е. распознавание причин эмоций со слабым контролем ). EmoCause основан на том факте, что люди не распознают причину эмоций при контролируемом обучении по меткам причин на уровне слов. Таким образом, мы не предоставляем обучающий набор.
Вы можете скачать оценочный набор EmoCause [здесь].
Обратите внимание: набор данных будет загружен автоматически при запуске приведенной ниже команды эксперимента.
#Эмоция | Тип этикетки | #Ярлык/Высказывание | #Высказывание | |
---|---|---|---|---|
ЭмоПричина | 32 | Слово | 2.3 | 4,6 тыс. |
{
"original_situation": the original situations in the EmpatheticDialogues,
"tokenized_situation": tokenized situation utterances using spacy,
"emotion": emotion labels,
"conv_id": id for each corresponding conversation in EmpatheticDialogues,
"annotation": list of tuples: (emotion cause word, index),
"labels": list of strings containing the emotion cause words
}
Все соответствующие модели будут загружены автоматически при выполнении следующих команд.
Мы также предоставляем ссылки для загрузки руководства: [GEE] [Finetuned Blender]
Вы можете оценить предлагаемый нами Генеративный оценщик эмоций (GEE) в наборе оценок EmoCause.
python eval_emocause.py --model agents.gee_agent:GeeCauseInferenceAgent --fp16 False
Вы можете оценить наш подход к генерации целенаправленных эмпатических ответов поверх точно настроенного Blender (Не знакомы с Blender? Смотрите здесь!).
python eval_empatheticdialogues.py --model agents.empathetic_gee_blender:EmpatheticBlenderAgent --model_file data/models/finetuned_blender90m/model --fp16 False --empathy-score False
Добавление флага --alpha 0
запустит Blender без прагматики. Вы также можете попробовать случайный отвлекатель (Plain S1), добавив --distractor-type random
.
Чтобы также измерить оценки интерпретации и исследования, установите для --empathy-score
значение True
. Он автоматически загрузит модели RoBERTa, настроенные на EmpatheticDialogues. Для получения более подробной информации об оценках эмпатии посетите исходный репозиторий.
Мы благодарим анонимных рецензентов за полезные комментарии к работе.
Это исследование было поддержано Центром финансирования исследований Samsung компании Samsung Electronics в рамках проекта SRFCIT210101. Вычислительные ресурсы и исследования на людях поддерживаются Программой исследований мозга Национального исследовательского фонда Кореи (NRF) (2017M3C7A1047860).
Пожалуйста, свяжитесь с Хёну Кимом по адресу hyunw.kim по адресу vl dot snu dot ac dot kr.
Этот репозиторий имеет лицензию MIT. Подробности смотрите в файле ЛИЦЕНЗИИ.