For those enquiring about how to extract visual and audio features, please check this out: https://github.com/soujanyaporia/MUStARD
| Tanggal | Pengumuman |
|---|---|
| 10/03/2024 | Jika Anda tertarik dengan IQ Testing LLMS, lihat pekerjaan baru kami: Algopuzzlevqa |
| 03/08/2021 | ? ? Kami telah merilis dataset baru M2H2: Dataset Hindi multimodal multimodal untuk pengakuan humor dalam percakapan. Lihatlah: M2H2. Baselines untuk dataset M2H2 dibuat berdasarkan dialoguernn dan bclstm. |
| 18/05/2021 | ? ? Kami telah merilis repo baru yang berisi model untuk menyelesaikan masalah emosi menyebabkan pengakuan dalam percakapan. Lihatlah: Ekstraksi emosional-penyebab. Terima kasih kepada Pengfei Hong untuk menyusun ini. |
| 24/12/2020 | ? ? Tertarik dengan topik mengenali penyebab emosi dalam percakapan? Kami baru saja merilis dataset untuk ini. Pergilah ke https://github.com/declare-lab/reccon. |
| 06/10/2020 | ? ? Kertas baru dan sota dalam pengenalan emosi dalam percakapan. Lihat Kosmik Direktori untuk Kode. Baca makalah - Cosmic: pengetahuan akal sehat untuk identifikasi emosi dalam percakapan. |
| 30/09/2020 | Makalah baru dan garis dasar dalam pemahaman dialog tingkat ucapan telah dirilis. Baca pemahaman dialog tingkat ucapan kami: studi empiris. Garpu kode. |
| 26/07/2020 | Kode DialogueGCN baru telah dirilis. Silakan kunjungi https://github.com/declare-lab/conv-emotion/tree/master/dialoguegcn-mianzhang. Semua kredit diberikan ke Mian Zhang (https://github.com/mianzhang/) |
| 11/07/2020 | Tertarik membaca makalah tentang ERC atau tugas terkait seperti deteksi sarkasme dalam percakapan? Kami telah menyusun daftar bacaan yang komprehensif untuk makalah. Silakan kunjungi https://github.com/declare-lab/awesome-emotion-recognition-in-conversations |
| 07/06/2020: | Hasil canggih baru untuk tugas ERC akan segera dirilis. |
| 07/06/2020: | Repo convotion akan dipertahankan di https://github.com/declare-lab/ |
| 22/12/2019: | Kode untuk DialogueGCN telah dirilis. |
| 11/10/2019: | Makalah baru: Pembelajaran transfer percakapan untuk pengenalan emosi. |
| 09/08/2019: | Makalah baru tentang pengenalan emosi dalam percakapan (ERC). |
| 06/03/2019: | Fitur dan kode untuk melatih dialoguernn pada dataset meld telah dirilis. |
| 20/11/2018: | Versi ikon dan dialoguernn secara end-end telah dirilis. |
Cosmic adalah model kinerja terbaik dalam repo ini dan silakan kunjungi tautan di bawah ini untuk membandingkan model pada set data ERC yang berbeda.
Repositori ini berisi implementasi untuk beberapa pengenalan emosi dalam metode percakapan serta algoritma untuk mengenali penyebab emosi dalam percakapan:
Tidak seperti model deteksi emosi lainnya, teknik-teknik ini mempertimbangkan negara-negara partai dan ketergantungan antar partai untuk memodelkan konteks percakapan yang relevan dengan pengakuan emosi. Tujuan utama dari semua teknik ini adalah untuk pretrain model deteksi emosi untuk generasi dialog empati.

Pengenalan emosi bisa sangat berguna untuk generasi dialog empati dan afektif -

Jaringan ini mengharapkan label emosi/sentimen dan info speaker untuk setiap ucapan yang ada dalam dialog seperti
Party 1: I hate my girlfriend (angry)
Party 2: you got a girlfriend?! (surprise)
Party 1: yes (angry)
Namun, kode tersebut dapat diadpasi untuk melakukan tugas -tugas di mana hanya ucapan sebelumnya yang tersedia, tanpa label yang sesuai, karena konteks dan tujuannya adalah untuk memberi label hanya ucapan saat ini/target. Misalnya, konteksnya
Party 1: I hate my girlfriend
Party 2: you got a girlfriend?!
targetnya adalah
Party 1: yes (angry)
Di mana emosi target marah . Selain itu, kode ini juga dapat dicetak untuk melatih jaringan dengan cara ujung ke ujung. Kami akan segera mendorong perubahan yang bermanfaat ini.
| Metode | Iemocap | DailyDialog | Berbaur | Emorynlp | |||
|---|---|---|---|---|---|---|---|
| W-AVG F1 | F1 makro | F1 mikro | W-AVG F1 (3-Cls) | W-AVG F1 (7-Cls) | W-AVG F1 (3-Cls) | W-AVG F1 (7-Cls) | |
| Roberta | 54.55 | 48.20 | 55.16 | 72.12 | 62.02 | 55.28 | 37.29 |
| Roberta dialoguernn | 64.76 | 49.65 | 57.32 | 72.14 | 63.61 | 55.36 | 37.44 |
| Roberta Cosmic | 65.28 | 51.05 | 58.48 | 73.20 | 65.21 | 56.51 | 38.11 |
Kosmik membahas tugas pengenalan emosi tingkat ucapan dalam percakapan menggunakan pengetahuan akal sehat. Ini adalah kerangka kerja baru yang menggabungkan berbagai elemen akal sehat seperti kondisi mental, peristiwa, dan hubungan sebab akibat, dan membangunnya untuk mempelajari interaksi antara lawan bicara yang berpartisipasi dalam percakapan. Metode mutakhir saat ini sering mengalami kesulitan dalam perambatan konteks, deteksi pergeseran emosi, dan membedakan antara kelas emosi terkait. Dengan mempelajari representasi akal sehat yang berbeda, Cosmic mengatasi tantangan-tantangan ini dan mencapai hasil canggih yang baru untuk pengenalan emosi pada empat dataset percakapan benchmark yang berbeda.

Pertama-tama unduh fitur Roberta dan Comet di sini dan simpan di direktori yang sesuai dalam COSMIC/erc-training . Kemudian pelatihan dan evaluasi pada empat dataset harus dilakukan sebagai berikut:
python train_iemocap.py --active-listenerpython train_dailydialog.py --active-listener --class-weight --residualpython train_meld.py --active-listener --attention simple --dropout 0.5 --rec_dropout 0.3 --lr 0.0001 --mode1 2 --classify emotion --mu 0 --l2 0.00003 --epochs 60python train_meld.py --active-listener --class-weight --residual --classify sentimentpython train_emorynlp.py --active-listener --class-weight --residualpython train_emorynlp.py --active-listener --class-weight --residual --classify sentimentHarap kutip makalah berikut jika Anda menemukan kode ini berguna dalam pekerjaan Anda.
COSMIC: COmmonSense knowledge for eMotion Identification in Conversations. D. Ghosal, N. Majumder, A. Gelbukh, R. Mihalcea, & S. Poria. Findings of EMNLP 2020.TL-ERC adalah kerangka kerja berbasis pembelajaran transfer untuk ERC. Ini pra-melatih model dialog generatif dan mentransfer bobot tingkat konteks yang mencakup pengetahuan afektif ke dalam model diskriminatif target untuk ERC.

Mengatur lingkungan dengan conda:
conda env create -f environment.yml
conda activate TL_ERC
cd TL_ERC
python setup.py Unduh file dataset IEMOCAP, DailyDialog dan simpan di ./datasets/ .
Unduh bobot pra-terlatih HRED di dataset Cornell dan Ubuntu dan simpan di ./generative_weights/
[Opsional]: Untuk melatih bobot generatif baru dari model dialog, lihat https://github.com/ctr4si/a-hierarchical-latent-struktur-for-variational-conversation-modeling.
cd bert_modelpython train.py --load_checkpoint=../generative_weights/cornell_weights.pkl --data=iemocap .cornell ke ubuntu dan iemocap menjadi dailydialog untuk kombinasi dataset lainnya.load_checkpoint untuk menghindari menginisialisasi bobot kontekstual.configs.pypython iemocap_preprocess.py . Demikian pula untuk dailydialog .Harap kutip makalah berikut jika Anda menemukan kode ini berguna dalam pekerjaan Anda.
Conversational transfer learning for emotion recognition. Hazarika, D., Poria, S., Zimmermann, R., & Mihalcea, R. (2020). Information Fusion.DialogueGCN (Dialog Grafik Convolutional Network), adalah pendekatan berbasis jaringan neural untuk ERC. Kami memanfaatkan ketergantungan diri dan inter-speaker dari lawan bicara untuk memodelkan konteks percakapan untuk pengenalan emosi. Melalui jaringan grafik, DialogueGCN membahas masalah perambatan konteks yang ada dalam metode berbasis RNN saat ini. DialogueGCN secara alami cocok untuk dialog multi-partai.

Catatan : Pytorch Geometric membuat penggunaan berat operasi atom CUDA dan merupakan sumber non-determinisme. Untuk mereproduksi hasil yang dilaporkan dalam makalah, kami sarankan untuk menggunakan perintah eksekusi berikut. Perhatikan bahwa skrip ini akan dieksekusi dalam CPU. Kami mengantarkan skor F1 rata -rata tertimbang 64,67 di mesin kami dan 64,44 di Google Colaboratory untuk dataset IEMOCAP dengan perintah berikut.
python train_IEMOCAP.py --base-model 'LSTM' --graph-model --nodal-attention --dropout 0.4 --lr 0.0003 --batch-size 32 --class-weight --l2 0.0 --no-cudaHarap kutip makalah berikut jika Anda menemukan kode ini berguna dalam pekerjaan Anda.
DialogueGCN: A Graph Convolutional Neural Network for Emotion Recognition in Conversation. D. Ghosal, N. Majumder, S. Poria, N. Chhaya, & A. Gelbukh. EMNLP-IJCNLP (2019), Hong Kong, China.Implementasi PyTorch ke Paper "DialogueGCN: jaringan saraf convolutional grafik untuk pengenalan emosi dalam percakapan".
Anda dapat menjalankan seluruh proses dengan sangat mudah. Ambil Corpus IEMOCAP misalnya:
./scripts/iemocap.sh preprocess./scripts/iemocap.sh train| - | Dataset | F1 tertimbang |
|---|---|---|
| Asli | Iemocap | 64,18% |
| Implementasi ini | Iemocap | 64,10% |
Mian Zhang (GitHub: Mianzhang)
Harap kutip makalah berikut jika Anda menemukan kode ini berguna dalam pekerjaan Anda.
DialogueGCN: A Graph Convolutional Neural Network for Emotion Recognition in Conversation. D. Ghosal, N. Majumder, S. Poria, N. Chhaya, & A. Gelbukh. EMNLP-IJCNLP (2019), Hong Kong, China.Dialoguernn pada dasarnya adalah jaringan saraf berulang yang disesuaikan (RNN) yang profil setiap pembicara dalam percakapan/dialog dengan cepat, sementara memodelkan konteks percakapan pada saat yang sama. Model ini dapat dengan mudah diperluas ke skenario multi-partai. Juga, ini dapat digunakan sebagai model pretraining untuk generasi dialog empati.
Catatan : Pengaturan default (hyperparameters dan argumen Commandline) dalam kode dimaksudkan untuk bidialoguernn+att. Pengguna perlu mengoptimalkan pengaturan untuk varian dan perubahan lainnya. 
Harap ekstrak isi DialogueRNN_features.zip .
python train_IEMOCAP.py <command-line arguments>python train_AVEC.py <command-line arguments>--no-cuda : tidak menggunakan GPU--lr : Tingkat Pembelajaran--l2 : berat regularisasi L2--rec-dropout : Dropout berulang--dropout : Dropout--batch-size : Ukuran Batch--epochs : Jumlah zaman--class-weight : Bobot kelas (tidak berlaku untuk AVEC)--active-listener : Mode Lisnener Eksplisit--attention : Jenis Perhatian--tensorboard : Mengaktifkan log tensorboard--attribute : Atribut 1 hingga 4 (hanya untuk AVEC; 1 = valensi, 2 = aktivasi/gairah, 3 = antisipasi/ekspektasi, 4 = daya)Harap kutip makalah berikut jika Anda menemukan kode ini berguna dalam pekerjaan Anda.
DialogueRNN: An Attentive RNN for Emotion Detection in Conversations. N. Majumder, S. Poria, D. Hazarika, R. Mihalcea, E. Cambria, and G. Alexander. AAAI (2019), Honolulu, Hawaii, USAInteraktif Conversational Memory Network (ICON) adalah kerangka deteksi emosi multimodal yang mengekstraksi fitur multimodal dari video percakapan dan secara hierarkis memodelkan textit {self-} dan textit {inter-speaker} pengaruh emosional ke dalam ingatan global. Kenangan semacam itu menghasilkan ringkasan kontekstual yang membantu dalam memprediksi orientasi emosional ucapan-video.

cd ICON
Unzip data sebagai berikut:
/ICON/IEMOCAP/data/ . Perintah Sampel untuk mencapai ini: unzip {path_to_zip_file} -d ./IEMOCAP/Latih model ikon:
python train_iemocap.py untuk iemocapICON: Interactive Conversational Memory Networkfor Multimodal Emotion Detection. D. Hazarika, S. Poria, R. Mihalcea, E. Cambria, and R. Zimmermann. EMNLP (2018), Brussels, Belgium CMN adalah kerangka saraf untuk deteksi emosi dalam percakapan diad. Ini memanfaatkan sinyal mutlimodal dari modalitas teks, audio dan visual. Ini secara khusus memasukkan dependensi spesifik pembicara ke dalam arsitekturnya untuk pemodelan konteks. Ringkasan kemudian dihasilkan dari konteks ini menggunakan jaringan memori multi-hop. 
cd CMN
Unzip data sebagai berikut:
/CMN/IEMOCAP/data/ . Perintah Sampel untuk mencapai ini: unzip {path_to_zip_file} -d ./IEMOCAP/Latih model ikon:
python train_iemocap.py untuk iemocapHarap kutip makalah berikut jika Anda menemukan kode ini berguna dalam pekerjaan Anda.
Hazarika, D., Poria, S., Zadeh, A., Cambria, E., Morency, L.P. and Zimmermann, R., 2018. Conversational Memory Network for Emotion Recognition in Dyadic Dialogue Videos. In Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long Papers) (Vol. 1, pp. 2122-2132).BC-LSTM-PYTORCH adalah jaringan untuk menggunakan konteks untuk mendeteksi emosi ucapan dalam dialog. Model ini sederhana tetapi efisien yang hanya menggunakan LSTM untuk memodelkan hubungan temporal di antara ucapan. Dalam repo ini kami memberikan data SEMEVAL 2019 Task 3. Kami telah menggunakan dan memberikan data yang dirilis oleh SEMEVAL 2019 Tugas 3 - Penyelenggara "Pengenalan Emosi dalam Konteks". Dalam tugas ini hanya 3 ucapan yang telah disediakan - ucapan1 (user1), ucterance2 (user2), ucterance3 (user1) secara berurutan. Tugasnya adalah memprediksi label emosi ucapan3. Label emosi setiap ucapan belum disediakan. Namun, jika data Anda berisi label emosi dari setiap ucapan maka Anda masih dapat menggunakan kode ini dan menyesuaikannya. Oleh karena itu, kode ini masih dapat diterapkan untuk set data seperti MOSI, Mosei, IEMOCAP, AVEC, DailyDialogue dll. BC-LSTM tidak memanfaatkan informasi speaker seperti CMN, Ikon dan Dialoguernn.

cd bc-LSTM-pytorch
Latih model BC-LSTM:
python train_IEMOCAP.py untuk iemocapHarap kutip makalah berikut jika Anda menemukan kode ini berguna dalam pekerjaan Anda.
Poria, S., Cambria, E., Hazarika, D., Majumder, N., Zadeh, A. and Morency, L.P., 2017. Context-dependent sentiment analysis in user-generated videos. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers) (Vol. 1, pp. 873-883).Implementasi Keras dari BC-LSTM .
cd bc-LSTM
Latih model BC-LSTM:
python baseline.py -config testBaseline.config untuk iemocapHarap kutip makalah berikut jika Anda menemukan kode ini berguna dalam pekerjaan Anda.
Poria, S., Cambria, E., Hazarika, D., Majumder, N., Zadeh, A. and Morency, L.P., 2017. Context-dependent sentiment analysis in user-generated videos. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers) (Vol. 1, pp. 873-883).Repositori ini juga berisi implementasi arsitektur yang berbeda untuk mendeteksi penyebab emosi dalam percakapan.


| Model | emo_f1 | pos_f1 | neg_f1 | macro_avg |
|---|---|---|---|---|
| ECPE-2D Cross_road (0 Transform Layer) | 52.76 | 52.39 | 95.86 | 73.62 |
| ECPE-2D Window_constrained (1 Lapisan Transformasi) | 70.48 | 48.80 | 93.85 | 71.32 |
| ECPE-2D Cross_road (2 Lapisan Transformasi) | 52.76 | 55.50 | 94.96 | 75.23 |
| ECPE-MLL | - | 48.48 | 94.68 | 71.58 |
| Peringkat emosi penyebab | - | 33.00 | 97.30 | 65.15 |
| Roberta-Base | - | 64.28 | 88.74 | 76.51 |
| Roberta-Large | - | 66.23 | 87.89 | 77.06 |

Kutipan: Harap kutip makalah berikut jika Anda menggunakan kode ini.

Kutipan: Harap kutip makalah berikut jika Anda menggunakan kode ini.

Kutipan: Harap kutip makalah berikut jika Anda menggunakan kode ini.
Baselines Roberta dan Spanbert seperti yang dijelaskan dalam kertas RECCON asli. Lihat ini.
Kutipan: Harap kutip makalah berikut jika Anda menggunakan kode ini.