Curriculum Masking (CCM) berbasis konsep adalah strategi pelatihan untuk pra-pelatihan model bahasa yang efisien. Ini dapat digunakan untuk transformator pra-pelatihan dengan biaya komputasi yang relatif lebih rendah. Kerangka kerja kami menutupi konsep-konsep dalam kalimat dalam urutan yang mudah difikul. CCM mencapai kinerja komparatif dengan Bert asli dengan hanya menggunakan 1/2 biaya komputasi pada patokan lem.
Repositori ini berisi kode untuk makalah EMNLP 2022 kami: Efisien pra-pelatihan model bahasa bertopeng melalui masking kurikulum berbasis konsep. Untuk deskripsi terperinci dan hasil eksperimen, silakan merujuk ke makalah ini.
Hasil pada set Glue Dev
| Model | Cola | SST | Mrpc | STS | Rte |
|---|---|---|---|---|---|
| Bert (kecil, 14m) | 38.0 | 88.7 | 82.8 | 82.0 | 59.2 |
| CCM (kecil, 14m) | 42.8 | 89.1 | 84.1 | 83.3 | 61.3 |
| Bert (Medium, 26m) | 44.9 | 89.6 | 85.4 | 82.7 | 60.3 |
| CCM (sedang, 26m) | 48.0 | 90.9 | 86.7 | 83.6 | 61.4 |
| Bert (basis, 110m) | 49.7 | 90.8 | 87.8 | 85.4 | 67.8 |
| CCM (basis, 110m) | 60.3 | 93.1 | 88.3 | 85.5 | 65.0 |
| Model | Mnli | QQP | Qnli |
|---|---|---|---|
| Bert (kecil, 14m) | 76.8 | 88.4 | 85.8 |
| CCM (kecil, 14m) | 77.5 | 88.6 | 86.3 |
| Bert (Medium, 26m) | 78.9 | 89.4 | 87.6 |
| CCM (sedang, 26m) | 80.0 | 89.2 | 87.6 |
| Bert (basis, 110m) | 81.7 | 90.4 | 89.5 |
| CCM (basis, 110m) | 84.1 | 91.0 | 91.4 |
Unduh pernyataan ConceptNet.
# Download assertions in the data folder.
$ wget ./data/assertions.csv https://s3.amazonaws.com/conceptnet/precomputed-data/2016/assertions/conceptnet-assertions-5.5.0.csv.gz
# run concept_extraction.py
$ python ./script/concept_extraction.py
Gunakan ./script/basicconcept_selection.py untuk membuat tahap pertama dari kurikulum dengan konsep dasar yang terhubung dengan banyak konsep lain dalam grafik pengetahuan dan sering terjadi dalam korpus pra-pelatihan.
--conceptnet_path : Path to Preprecessed ConceptNet File.--topk_connected_concepts : Konsep K Atas yang terhubung ke banyak konsep lain dalam grafik pengetahuan.--corpus_dir : Direktori yang berisi file teks mentah untuk berubah menjadi contoh pra-pelatihan MLM.--delete_threshold : Ambang frekuensi untuk memfilter konsep langka.--basicConcepts_num : Tetapkan jumlah konsep dasar yang digunakan untuk kurikulum.--save_path : Path untuk menyimpan serangkaian konsep dasar. Gunakan ./script/curriculum_construction.py untuk membangun kurikulum berbasis konsep dengan konsep dasar.
--conceptnet_path : Path to Preprecessed ConceptNet File.--num_of_hops : Tetapkan jumlah hop untuk menambahkan konsep terkait ke set konsep tahap berikutnya.--basic_concept_path : Path untuk memuat himpunan konsep dasar.--save_dir : Path untuk menyimpan serangkaian konsep untuk setiap tahap kurikulum.--num_of_stages : Atur jumlah tahap untuk kurikulum. Gunakan ./script/curriculum_construction.py untuk mengidentifikasi konsep dalam korpus dan mengaturnya bersama dengan kurikulum.
--corpus_dir : Direktori yang berisi file teks mentah untuk berubah menjadi contoh pra-pelatihan MLM.--save_dir : Path untuk menyimpan korpus yang telah diproses sebelumnya.--curriculum_dir : Direktori yang berisi kurikulum berbasis konsep.--process_num : Tetapkan jumlah prosesor CPU untuk pra-pemrosesan. Akhirnya, gunakan ./script/pre-training.py untuk pra-latihan model Anda dengan masking kurikulum berbasis konsep.
--curriculum_dir : Direktori yang berisi kurikulum berbasis konsep.--lr : Tetapkan tingkat pembelajaran.--epochs : Tetapkan jumlah zaman.--batch_size : Atur ukuran batch untuk melakukan sekaligus.--step_batch_size : Atur ukuran batch untuk memperbarui per setiap langkah (jika memori GPU sudah cukup, atur batch_size dan step_batch_size sama.--data_path : Direktori yang berisi contoh yang telah diproses sebelumnya.--warmup_steps : Tetapkan jumlah langkah untuk menghangatkan model dengan MLM asli.--model_size : Pilih ukuran model untuk pra-kereta. Untuk bantuan atau masalah menggunakan CCM, silakan kirimkan masalah GitHub.
Untuk komunikasi pribadi yang terkait dengan CCM, silakan hubungi Mingyu Lee <[email protected]> atau Jun-Hyung Park <[email protected]> .