
เราได้เพิ่มจุดตรวจสอบในการกอดหน้าเพื่อการทำซ้ำที่ง่ายขึ้น!
เราได้เพิ่ม Continual_pretrain.ipynb เป็น ตัวอย่างที่มีอยู่ในตัวเอง ของสถานการณ์ที่ทำให้อ่อนนุ่ม มันทำงานได้ดีโดยไม่ต้อง GPU!
Soft-Masking ยังสามารถทำงานใน การปรับแต่งอย่างต่อเนื่อง ตรวจสอบกระดาษ EMNLP23 ล่าสุดของเรา!
สงสัยว่าคุณสามารถปรับ LLM กล่องดำ โดยไม่ต้องกังวลเกี่ยวกับการอัปเดตพารามิเตอร์ของมันหรือไม่? ตรวจสอบบทความล่าสุดของเราเกี่ยวกับการค้นคืนของผู้คน (RAG) ที่นี่!
ในปี 2021 เราแนะนำ Pycontinual ซึ่งเป็นกรอบการทำงานที่ตรงไปตรงมาและยืดหยุ่นสำหรับการเรียนรู้อย่างต่อเนื่อง การวิจัยของเราได้รับประโยชน์อย่างมากจากกรอบนี้ วันนี้เรารู้สึกตื่นเต้นที่จะแบ่งปันความ ต่อเนื่อง ซึ่งเป็นกรอบการเรียนรู้อย่างต่อเนื่องที่ขยายได้ซึ่งมุ่งเน้นไปที่รูปแบบภาษา (LMS) ที่ออกแบบมาเพื่อรักษาประโยชน์ของการเรียนรู้อย่างต่อเนื่อง (CL) ในสาขานี้
การเรียนรู้อย่างต่อเนื่องสำหรับ LMS นั้นแตกต่างจาก CL แบบดั้งเดิมเพราะ
พื้นที่เก็บข้อมูลของเรารวมถึงการใช้งาน Pytorch ของการรวบรวมวิธีการที่ทันสมัย (SOTA) โดยใช้การฝึกอบรมและการประเมินผลท่อเดียวกัน ที่เก็บนี้มุ่งมั่นที่จะพัฒนาสาขาการเรียนรู้อย่างต่อเนื่องสำหรับ LMS วิธีการรวมคือ:
จากกลุ่มของเรา:
จากกลุ่มอื่น ๆ (เพิ่มเติมที่จะมา) :
baselines ที่ใช้กันอย่างแพร่หลายสำหรับการเรียนรู้อย่างต่อเนื่อง:
เราได้เพิ่ม continual_pretrain.ipynb เป็นตัวอย่างที่มีอยู่ในตัวเองของสถานการณ์ที่ทำให้อ่อนนุ่ม มันทำงานได้ดีโดยไม่ต้อง GPU!
เมื่อพูดถึงการเรียนรู้อย่างต่อเนื่องของแบบจำลองภาษา (LMS) การค้นหาชุดข้อมูลที่เหมาะสมเป็นสิ่งสำคัญ ชุดข้อมูลที่เราให้ไว้เป็นไปตามหลักการดังต่อไปนี้:
เราปล่อยชุดข้อมูลของเราประกอบด้วย 6 โดเมนที่แตกต่างกันแต่ละรายการมาพร้อมกับงานจบที่สอดคล้องกัน ชุดข้อมูลสามารถพบได้ที่นี่ ด้านล่างนี้เป็นสถิติบางอย่างสำหรับแต่ละโดเมน:
| คลังโดเมน | ขนาด | งานจบ | งาน | #การฝึกอบรม | #การทดสอบ | #classes |
|---|---|---|---|---|---|---|
| ร้านอาหาร Yelp | 758MB | ร้านอาหาร | การจำแนกประเภทความเชื่อมั่น (ASC) | 3,452 | 1,120 | 3 |
| โทรศัพท์อเมซอน | 724MB | โทรศัพท์ | การจำแนกประเภทความเชื่อมั่น (ASC) | 239 | 553 | 2 |
| กล้องอเมซอน | 3199MB | กล้อง | การจำแนกประเภทความเชื่อมั่น (ASC) | 230 | 626 | 2 |
| เอกสาร ACL | 867MB | ACL | การจำแนกความตั้งใจของการอ้างอิง | 1,520 | 421 | 6 |
| เอกสาร AI | 507MB | AI | การจำแนกความสัมพันธ์ | 2,260 | 2,388 | 7 |
| PubMed เอกสาร | 989MB | PubMed | การทำนายปฏิสัมพันธ์ระหว่างโปรตีนเคมี | 2,667 | 7,398 | 13 |
สถาปัตยกรรมของความต่อเนื่องส่วนใหญ่เป็นไปตามของ pycontinual, CPT และ DGA
conda create --name continuallm --file requirements.txt
transformers==4.17.0 และ adapter-transformers==3.0.1 เราขอแนะนำให้ใช้เวอร์ชันเฉพาะเหล่านี้เนื่องจากการใช้เวอร์ชันอื่นอาจส่งผลให้เกิดข้อบกพร่องที่ไม่คาดคิด
นี่คือที่ที่การเรียนรู้อย่างต่อเนื่องเกิดขึ้น เราจะเรียนรู้ sequnce ของโดเมน
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 : เลือกลำดับงาน ดู ./sequences ลำดับสำหรับรายละเอียดเพิ่มเติม--baseline : ดูบทนำสำหรับรุ่นพื้นฐานที่มีอยู่ (ดู choices ใน config.py ) หลังจากการเรียนรู้แบบ conitinual ของ LMS ตอนนี้เรา สามารถ ประเมินการแสดงได้
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 สำหรับผู้ที่มีความสนใจเพียงอย่างเดียวในรูปแบบผลลัพธ์หรือต้องการดำเนินการต่อการฝึกอบรมแบบจำลองด้วยข้อมูลของตัวเองเรามีข่าวดี! เราเสนอจุดตรวจสอบผ่านการกอดใบหน้า
คุณสามารถนำเข้าโมเดลที่ผ่านการฝึกอบรมอย่างต่อเนื่องของเราอย่างต่อเนื่องด้วย 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 ) หากคุณพบปัญหาใด ๆ เมื่อโหลดโมเดลโดยตรงโดย API ของ HuggingFace คุณยังสามารถดาวน์โหลดโมเดลด้วยตนเองจาก repo และใช้ model = AutoModel.from_pretrained({PATH TO THE DOWNLOAD MODEL})
ลำดับก่อนการฝึกอบรมอย่างต่อเนื่องเป็น ลำดับแรก ที่ ./sequences/posttrain esequences/posttrain (จาก ร้านอาหารไปจนถึงกล้อง ) คุณสามารถใช้น้ำหนักที่ดาวน์โหลดเพื่อปรับแต่ง task ที่สอดคล้องกัน
หากคุณสนใจในไฟล์สำคัญโปรดดูที่ before_distill0 และ after_mlm{domain_id} before จะบ่งบอกถึงความสำคัญที่คำนวณก่อนการฝึกอบรมก่อนซึ่งจะทำเพียงครั้งเดียวก่อนที่จะมีโดเมนแรกสำหรับความรู้ทั่วไปที่ผ่านการฝึกอบรมมาก่อน after ระบุความสำคัญที่คำนวณหลังจากการฝึกอบรมก่อนของ DOMAIN_ID
เราขอขอบคุณการแสดงของคุณในการจ้องมองและอ้างถึง การใส่ใจในรายละเอียดและการรับรู้ของคุณมีคุณค่าอย่างมาก
@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 } } หากคุณมีคำถามใด ๆ เกี่ยวกับรหัสโปรดส่งอีเมลไปที่ Zixuan KE, Yijia Shao หรือ Haowei Lin หรือคุณอาจเปิดปัญหา เราขอแสดงความขอบคุณต่อ Bing Liu, Hu Xu และ Lei Shu สำหรับความคิดเห็นและความคิดเห็นที่มีค่าของพวกเขา