นี่คือการใช้งาน PyTorch ของเอกสาร:
MoEL: ส่วนผสมของผู้ฟังที่เอาใจใส่ Zhaojiang Lin , Andrea Madotto, Jamin Shin, Peng Xu, Pascale Fung EMNLP 2019 [PDF]
รหัสนี้เขียนโดยใช้ PyTorch >= 0.4.1 หากคุณใช้ซอร์สโค้ดหรือชุดข้อมูลใดๆ ที่รวมอยู่ในชุดเครื่องมือนี้ในงานของคุณ โปรดอ้างอิงเอกสารต่อไปนี้ bibtex มีดังต่อไปนี้:
@บทความ{lin2019moel, title={MoEL: ส่วนผสมของผู้ฟังที่เอาใจใส่}, ผู้แต่ง={Lin, Zhaojiang และ Madotto, Andrea และ Shin, Jamin และ Xu, Peng และ Fung, Pascale}, วารสาร={arXiv พิมพ์ล่วงหน้า arXiv:1908.07687}, ปี={2019} -
งานวิจัยก่อนหน้านี้เกี่ยวกับระบบบทสนทนาที่เห็นอกเห็นใจส่วนใหญ่มุ่งเน้นไปที่การสร้างการตอบสนองตามอารมณ์บางอย่าง อย่างไรก็ตาม การเห็นอกเห็นใจไม่เพียงแต่ต้องอาศัยความสามารถในการสร้างการตอบสนองทางอารมณ์เท่านั้น แต่ที่สำคัญกว่านั้นยังต้องอาศัยความเข้าใจในอารมณ์ของผู้ใช้และการตอบกลับอย่างเหมาะสมอีกด้วย ในบทความนี้ เราเสนอแนวทางใหม่ตั้งแต่ต้นจนจบสำหรับการสร้างแบบจำลองความเห็นอกเห็นใจในระบบบทสนทนา: การผสมผสานของผู้ฟังที่เอาใจใส่ (MoEL) แบบจำลองของเราจะจับอารมณ์ของผู้ใช้ก่อนและส่งออกการกระจายอารมณ์ จากสิ่งนี้ MoEL จะรวมสถานะเอาต์พุตของผู้ฟังที่เหมาะสมเข้าด้วยกันอย่างนุ่มนวล ซึ่งแต่ละสถานะได้รับการปรับให้เหมาะสมเพื่อตอบสนองต่ออารมณ์บางอย่าง และสร้างการตอบสนองอย่างเห็นอกเห็นใจ การประเมินโดยมนุษย์ในชุดข้อมูลบทสนทนาเชิงเห็นอกเห็นใจยืนยันว่า MoEL มีประสิทธิภาพเหนือกว่าพื้นฐานการฝึกอบรมแบบมัลติทาสก์ในแง่ของความเห็นอกเห็นใจ ความเกี่ยวข้อง และความคล่องแคล่ว นอกจากนี้ กรณีศึกษาเกี่ยวกับการตอบสนองที่สร้างขึ้นของผู้ฟังที่แตกต่างกันยังแสดงให้เห็นถึงความสามารถในการตีความแบบจำลองของเราในระดับสูง
การแสดงความสนใจของผู้ฟัง: ด้านซ้ายคือบริบทตามด้วยคำตอบที่สร้างโดย MoEL แผนที่ความร้อนแสดงน้ำหนักความสนใจของผู้ฟัง 32 คน
ตรวจสอบแพ็คเกจที่จำเป็นหรือเพียงแค่รันคำสั่ง
❱❱❱ pip install -r requirements.txt
การฝังถุงมือที่ผ่านการฝึกอบรมมาแล้ว : Glove.6B.300d.txt ภายในโฟลเดอร์ /vectors/
ผลลัพธ์ที่รวดเร็ว
หากต้องการข้ามการฝึก โปรดตรวจสอบ generation_result.txt
ชุดข้อมูล
ชุดข้อมูล (บทสนทนาที่เอาใจใส่) ได้รับการประมวลผลล่วงหน้าและจัดเก็บในรูปแบบ npy: sys_dialog_texts.train.npy, sys_target_texts.train.npy, sys_emotion_texts.train.npy ซึ่งประกอบด้วยรายการ คู่ขนาน ของบริบท (แหล่งที่มา) การตอบสนอง (เป้าหมาย) และป้ายกำกับอารมณ์ (ฉลากเพิ่มเติม)
การฝึกอบรมและการทดสอบ
โมเอล
❱❱❱ python3 main.py --model experts --label_smoothing --noam --emb_dim 300 --hidden_dim 300 --hop 1 --heads 2 --topk 5 --cuda --pretrain_emb --softmax --basic_learner --schedule 10000 --save_path save/moel/
พื้นฐานของหม้อแปลง
❱❱❱ python3 main.py --model trs --label_smoothing --noam --emb_dim 300 --hidden_dim 300 --hop 2 --heads 2 --cuda --pretrain_emb --save_path save/trs/
พื้นฐานมัลติทาสก์ Transformer
❱❱❱ python3 main.py --model trs --label_smoothing --noam --emb_dim 300 --hidden_dim 300 --hop 2 --heads 2 --cuda --pretrain_emb --multitask --save_path save/multi-trs/