
Kami telah menambahkan pos pemeriksaan di wajah memeluk untuk reproduksi yang lebih mudah!
Kami telah menambahkan continual_prain.ipynb sebagai contoh mandiri dari skenario soft-masking. Ini berjalan dengan baik tanpa GPU!
Masking lunak juga dapat bekerja dalam penyempurnaan terus-menerus konvensional . Lihat kertas EMNLP23 terbaru kami!
Ingin tahu apakah Anda dapat mengadaptasi Black-Box LLM tanpa khawatir tentang pembaruan parameternya? Lihatlah makalah terbaru kami tentang Retrieval-Agusted Generation (RAG) di sini!
Pada tahun 2021, kami memperkenalkan kerangka kerja pycontinual, mudah dan fleksibel untuk pembelajaran berkelanjutan. Penelitian kami mendapat manfaat secara signifikan dari kerangka kerja ini. Hari ini, kami sangat senang berbagi kontinuallm , kerangka pembelajaran berkelanjutan yang dapat diperluas yang difokuskan pada model bahasa (LMS), yang dirancang untuk mempertahankan manfaat pembelajaran berkelanjutan (CL) di bidang ini.
Pembelajaran berkelanjutan untuk LMS berbeda dari CL tradisional karena
Repositori kami mencakup implementasi Pytorch dari kumpulan metode canggih (SOTA), menggunakan pipa pelatihan dan evaluasi yang sama. Repositori ini berkomitmen untuk memajukan bidang pembelajaran berkelanjutan untuk LMS. Metode yang termasuk adalah:
Dari grup kami:
Dari kelompok lain (lebih banyak yang akan datang) :
Baseline yang dipekerjakan secara luas untuk pembelajaran berkelanjutan:
Kami telah menambahkan continual_pretrain.ipynb sebagai contoh mandiri dari skenario soft-masking. Ini berjalan dengan baik tanpa GPU!
Ketika datang ke pembelajaran terus -menerus dari model bahasa (LMS), menemukan set data yang sesuai sangat penting. Dataset yang kami berikan pada prinsip -prinsip berikut:
Kami merilis dataset kami yang terdiri dari 6 domain berbeda, masing-masing disertai dengan tugas akhir yang sesuai. Dataset dapat ditemukan di sini. Di bawah ini adalah beberapa statistik untuk setiap domain:
| Domain corpus | Ukuran | Tugas akhir | Tugas | #Pelatihan | #Testing | #Classes |
|---|---|---|---|---|---|---|
| Restoran Yelp | 758MB | Restoran | Aspek Sentimen Klasifikasi (ASC) | 3.452 | 1.120 | 3 |
| Telepon Amazon | 724MB | Telepon | Aspek Sentimen Klasifikasi (ASC) | 239 | 553 | 2 |
| Kamera Amazon | 319MB | Kamera | Aspek Sentimen Klasifikasi (ASC) | 230 | 626 | 2 |
| Kertas acl | 867MB | ACL | Klasifikasi Niat Kutipan | 1.520 | 421 | 6 |
| AI Papers | 507MB | Ai | Klasifikasi Relasi | 2.260 | 2.388 | 7 |
| Makalah PubMed | 989MB | PubMed | Prediksi interaksi kimia-protein | 2.667 | 7.398 | 13 |
Arsitektur kontinuallm sebagian besar mengikuti pycontinual, CPT dan DGA.
conda create --name continuallm --file requirements.txt
transformers==4.17.0 dan adapter-transformers==3.0.1 . Kami merekomendasikan penggunaan versi spesifik ini, karena menggunakan versi lain dapat menghasilkan bug yang tidak terduga.
Di sinilah pembelajaran terus -menerus terjadi. Kami akan belajar sequnce domain.
max_samples=640000
for idrandom in 0
do
for pt_task in 0 1 2 3 4 5
do
python -m torch.distributed.launch --nproc_per_node 4 --use_env posttrain.py
--per_device_train_batch_size 62
--fp16
--max_seq_length 164
--max_samples ${max_samples}
--idrandom ${idrandom}
--ntasks 6
--pt_task ${pt_task}
--baseline ' das '
done
done --idrandom : Pilih urutan tugas. Lihat ./sequences untuk detail lebih lanjut.--baseline : Lihat Pendahuluan untuk Model Baseline yang Tersedia (lihat choices di config.py ). Setelah pembelajaran Conitinual dari LMS, sekarang kami dapat mengevaluasi kinerja dengan menjalankan penyempurnaan akhir-tugas secara individual .
max_samples=640000
seed=(2021 111 222 333 444 555 666 777 888 999)
for round in 0 ; do
for idrandom in 0 ;
do
for pt_task in 0 1 2 3 4 5
do
for ft_task in $( seq 0 ${pt_task} ) ;
do
python finetune.py
--max_seq_length 164
--pt_task ${pt_task}
--ft_task ${ft_task}
--idrandom ${idrandom}
--ntasks 6
--max_samples ${max_samples}
--seed ${seed[$round]}
--baseline ' das '
done
done
done
done Bagi mereka yang hanya tertarik pada model yang dihasilkan atau ingin melanjutkan per-pelatihan model dengan data mereka sendiri, kami memiliki kabar baik! Kami menawarkan pos pemeriksaan melalui wajah memeluk.
Anda dapat dengan mudah mengimpor model kami yang terus terlatih dengan transformers Huggingface!
import torch
from transformers import AutoTokenizer , AutoModelForSequenceClassification
# Import our model. The package will take care of downloading the models automatically
tokenizer = AutoTokenizer . from_pretrained ( "UIC-Liu-Lab/DAS-Rest2Cam" )
model = AutoModelForSequenceClassification . from_pretrained ( "UIC-Liu-Lab/DAS-Rest2Cam" , trust_remote_code = True )
# Tokenize input texts
texts = [
"There's a kid on a skateboard." ,
"A kid is skateboarding." ,
"A kid is inside the house."
]
inputs = tokenizer ( texts , padding = True , truncation = True , return_tensors = "pt" )
# Get the model output!
res = model ( ** inputs ) Jika Anda menghadapi masalah ketika secara langsung memuat model dengan API HuggingFace, Anda juga dapat mengunduh model secara manual dari repo dan menggunakan model = AutoModel.from_pretrained({PATH TO THE DOWNLOAD MODEL}) .
Urutan pra-pelatihan terus menerus adalah urutan pertama di ./sequences/posttrain (dari restoran ke kamera ), Anda dapat menggunakan bobot yang diunduh untuk menyempurnakan tugas akhir yang sesuai.
Jika Anda tertarik pada file penting, silakan merujuk ke before_distill0 dan after_mlm{domain_id} . before menandakan pentingnya dihitung sebelum pra-pelatihan, yang dilakukan hanya sekali sebelum domain pertama untuk pengetahuan pra-terlatih umum. after menunjukkan pentingnya dihitung setelah pra-pelatihan domain_id.
Kami sangat menghargai tindakan menatap dan mengutip Anda. Perhatian Anda terhadap detail dan pengakuan sangat dihargai.
@inproceedings { ke2022dgs ,
title = { Continual Learning of Language Models } , author = { Ke, Zixuan and Shao, Yijia and Lin, Haowei and Konishi, Tatsuya and Kim, Gyuhak and Liu, Bing } , booktitle = { International Conference on Learning Representations (ICLR) } , year = { 2023 } }
@inproceedings { ke2022dga ,
title = { Adapting a Language Model While Preserving its General Knowledge } , author = { Ke, Zixuan and Shao, Yijia and Lin, Haowei and Xu, Hu and Shu, Lei, and Liu, Bing } , booktitle = { Empirical Methods in Natural Language Processing (EMNLP) } , year = { 2022 } }
@inproceedings { ke2022continual ,
title = { Continual Training of Language Models for Few-Shot Learning } , author = { Ke, Zixuan and Lin, Haowei and Shao, Yijia and Xu, Hu and Shu, Lei, and Liu, Bing } , booktitle = { Empirical Methods in Natural Language Processing (EMNLP) } , year = { 2022 } } Jika Anda memiliki pertanyaan tentang kode tersebut, jangan ragu untuk mengirim email ke Zixuan Ke, Yijia Shao, atau Haowei Lin. Atau, Anda dapat membuka masalah. Kami ingin mengucapkan terima kasih kepada Bing Liu, Hu Xu, dan Lei Shu atas komentar dan pendapat mereka yang berharga