การใช้งาน PyTorch อย่างเป็นทางการและชุดการประเมิน EmoCause ของรายงาน EMNLP 2021 ของเรา
คิมฮยอนอู คิมบยองชาง และคิมกุนฮี การมองมุมมองและเชิงปฏิบัติเพื่อสร้างการตอบสนองอย่างเห็นอกเห็นใจโดยเน้นไปที่สาเหตุทางอารมณ์ EMNLP , 2564 [กระดาษ]
หากคุณใช้เนื้อหาในคลังนี้เป็นส่วนหนึ่งของงานวิจัยที่ได้รับการตีพิมพ์ เราขอให้คุณอ้างอิงเอกสารต่อไปนี้:
@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 eval ได้ [ที่นี่]
โปรดทราบว่าชุดข้อมูลจะถูกดาวน์โหลดโดยอัตโนมัติเมื่อคุณเรียกใช้คำสั่งการทดสอบด้านล่าง
#อารมณ์ | ประเภทป้ายกำกับ | #ฉลาก/คำพูด | #คำพูด | |
---|---|---|---|---|
อีโมสาเหตุ | 32 | คำ | 2.3 | 4.6K |
{
"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 ทำงานได้โดยไม่เน้นในทางปฏิบัติ คุณยังสามารถลองใช้ตัวเบี่ยงเบนแบบสุ่ม (ธรรมดา S1) ได้โดยการเพิ่ม --distractor-type random
หากต้องการวัดคะแนนการตีความและการสำรวจ ให้ตั้งค่า --empathy-score
เป็น True
มันจะดาวน์โหลดโมเดล RoBERTa ที่ได้รับการปรับแต่งบน EmpatheticDialogues โดยอัตโนมัติ สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับคะแนนความเห็นอกเห็นใจ โปรดไปที่ repo ดั้งเดิม
เราขอขอบคุณผู้ตรวจสอบที่ไม่ระบุชื่อสำหรับความคิดเห็นที่เป็นประโยชน์เกี่ยวกับงานนี้
งานวิจัยนี้ได้รับการสนับสนุนจาก Samsung Research Funding Center ของ Samsung Electronics ภายใต้โครงการหมายเลข SRFCIT210101 ทรัพยากรคอมพิวเตอร์และการศึกษาของมนุษย์ได้รับการสนับสนุนจากโครงการวิจัยสมองโดย National Research Foundation of Korea (NRF) (2017M3C7A1047860)
โปรดติดต่อ Hyunwoo Kim ได้ที่ hyunw.kim ที่ vl dot snu dot ac dot kr
พื้นที่เก็บข้อมูลนี้ได้รับอนุญาตจาก MIT ดูไฟล์ใบอนุญาตสำหรับรายละเอียด