refactored ตามรหัสล่าสุด V2.2.2 รหัสที่ผลิตโดย HuggingFace เพื่อให้แน่ใจว่ารหัสสามารถทำซ้ำได้โดยตรงในอนาคตโดยไม่มีปัญหาความเข้ากันได้
model_type:
แก้ไขพารามิเตอร์ model_type ในไฟล์เชลล์เพื่อระบุรุ่น
ตัวอย่างเช่นหากเบิร์ตตามด้วยเลเยอร์การเชื่อมต่อแบบเต็มของ FC, model_type=bert ถูกตั้งค่าโดยตรง; เบิร์ตตามด้วยเลเยอร์ cnn convolutional, model_type=bert_cnn ถูกตั้งค่าโดยตรง
model_type ที่สนับสนุนโดยแต่ละรุ่นที่ผ่านการฝึกอบรมในโครงการนี้แสดงอยู่ใน Support ของ readme นี้
ในที่สุดเพียงเรียกใช้ไฟล์เชลล์โดยตรงในเทอร์มินัลเช่น:
bash run_classifier.sh
หมายเหตุ : ในรูปแบบภาษาที่ผ่านการฝึกอบรมมาก่อนสามแบบของ Roberta, Ernie และ BERT_WWM, BERT MODEL_TYPE ทั้งหมดใช้สำหรับการโหลด
dataset เช่น TestDatautils.py ในไดเรกทอรีรูทเขียนคลาสของคุณเองตาม class THUNewsProcessor เช่นชื่อ class TestDataProcessor ชื่อและเพิ่มเนื้อหาที่เกี่ยวข้องกับสาม dicts tasks_num_labels processors และ output_modesTestDataหนึ่ง 2080Ti, 12GB RAM
Python: 3.6.5
Pytorch: 1.3.1
TensorFlow: 1.14.0 (เพื่อรองรับ Tensorboard เท่านั้นไม่มีฟังก์ชั่นอื่น)
numpy: 1.14.6
ชุดข้อมูล: Thunews/5_5000
ยุค: 1
Train_steps: 5000
| แบบอย่าง | Dev ตั้งค่า F1 และ ACC ที่ดีที่สุด | คำพูด |
|---|---|---|
| bert_base | 0.9308869881728941, 0.9324 | Bert Connection Layer FC, Batch_size 8, Learning_rate 2E-5 |
| bert_base+cnn | 0.9136314735833212, 0.9156 | Bert เชื่อมต่อกับเลเยอร์ CNN, batch_size 8, learning_rate 2e-5 |
| bert_base+lstm | 0.9369254464106703, 0.9372 | Bert เชื่อมต่อกับเลเยอร์ LSTM, batch_size 8, learning_rate 2e-5 |
| bert_base+gru | 0.9379539112313108, 0.938 | bert เชื่อมต่อกับเลเยอร์ gru, batch_size 8, learning_rate 2e-5 |
| Roberta_large | Roberta Connection Layer FC, Batch_size 2, Learning_rate 2E-5 | |
| xlnet_mid | 0.9530066512880131, 0.954 | XLNet Connection Layer FC, BATCH_SIZE 2, Learning_Rate 2E-5 |
| xlnet_mid+lstm | 0.9269927348553552, 0.9304 | XLNet เชื่อมต่อกับเลเยอร์ LSTM, BATCH_SIZE 2, Learning_Rate 2E-5 |
| xlnet_mid+gru | 0.9494631023945569, 0.9508 | xlnet เชื่อมต่อกับเลเยอร์ gru, batch_size 2, learning_rate 2e-5 |
| albert_xlarge_183k |
npl_pemdc