Update README.md
Browse files
README.md
CHANGED
@@ -1,86 +1,103 @@
|
|
1 |
-
---
|
2 |
-
language: en
|
3 |
-
license: apache-2.0
|
4 |
-
datasets:
|
5 |
-
- nyu-mll/glue
|
6 |
-
---
|
7 |
-
|
8 |
-
# LoNAS Model Card: lonas-bert-base-glue
|
9 |
-
|
10 |
-
The super-networks fine-tuned on BERT-base with [GLUE benchmark](https://gluebenchmark.com/) using LoNAS.
|
11 |
-
|
12 |
-
## Model Details
|
13 |
-
|
14 |
-
### Information
|
15 |
-
|
16 |
-
- **Model name:** lonas-bert-base-glue
|
17 |
-
- **Base model:** [bert-base-uncased](https://huggingface.co/google-bert/bert-base-uncased)
|
18 |
-
- **Subnetwork version:** Super-network
|
19 |
-
- **NNCF Configurations:** [nncf_config/glue](https://github.com/IntelLabs/Hardware-Aware-Automated-Machine-Learning/tree/main/LoNAS/nncf_config/glue)
|
20 |
-
|
21 |
-
### Adapter Configuration
|
22 |
-
|
23 |
-
- **LoRA rank:** 8
|
24 |
-
- **LoRA alpha:** 16
|
25 |
-
- **LoRA target modules:** query, value
|
26 |
-
|
27 |
-
|
28 |
-
### Training and Evaluation
|
29 |
-
|
30 |
-
[GLUE benchmark](https://gluebenchmark.com/)
|
31 |
-
|
32 |
-
### Training Hyperparameters
|
33 |
-
|
34 |
-
| Task | RTE | MRPC | STS-B | CoLA | SST-2 | QNLI | QQP | MNLI |
|
35 |
-
|------------|------|------|-------|------|-------|------|------|------|
|
36 |
-
| Epoch | 80 | 35 | 60 | 80 | 60 | 80 | 60 | 40 |
|
37 |
-
| Batch size | 32 | 32 | 64 | 64 | 64 | 64 | 64 | 64 |
|
38 |
-
| Learning rate | 3e-4 | 5e-4 | 5e-4 | 3e-4 | 3e-4 | 4e-4 | 3e-4 | 4e-4 |
|
39 |
-
| Max length | 128 | 128 | 128 | 128 | 128 | 256 | 128 | 128 |
|
40 |
-
|
41 |
-
## How to use
|
42 |
-
|
43 |
-
Refer to [https://github.com/IntelLabs/Hardware-Aware-Automated-Machine-Learning/tree/main/LoNAS/running_commands](https://github.com/IntelLabs/Hardware-Aware-Automated-Machine-Learning/tree/main/LoNAS/running_commands):
|
44 |
-
```bash
|
45 |
-
CUDA_VISIBLE_DEVICES=${DEVICES} python run_glue.py \
|
46 |
-
--task_name ${TASK} \
|
47 |
-
--model_name_or_path bert-base-uncased \
|
48 |
-
--do_eval \
|
49 |
-
--do_search \
|
50 |
-
--per_device_eval_batch_size 64 \
|
51 |
-
--max_seq_length ${MAX_LENGTH} \
|
52 |
-
--lora \
|
53 |
-
--lora_weights lonas-bert-base-glue/lonas-bert-base-${TASK} \
|
54 |
-
--nncf_config nncf_config/glue/nncf_lonas_bert_base_${TASK}.json \
|
55 |
-
--output_dir lonas-bert-base-glue/lonas-bert-base-${TASK}/results
|
56 |
-
```
|
57 |
-
|
58 |
-
## Evaluation Results
|
59 |
-
|
60 |
-
Results of the optimal sub-network discoverd from the super-network:
|
61 |
-
|
62 |
-
| Method | Trainable Parameter Ratio | GFLOPs | RTE | MRPC | STS-B | CoLA | SST-2 | QNLI | QQP | MNLI | AVG |
|
63 |
-
|-------------|---------------------------|------------|-------|-------|-------|-------|-------|-------|-------|-------|-----------|
|
64 |
-
| LoRA | 0.27% | 11.2 | 65.85 | 84.46 | 88.73 | 57.58 | 92.06 | 90.62 | 89.41 | 83.00 | 81.46 |
|
65 |
-
| **LoNAS** | 0.27% | **8.0** | 70.76 | 88.97 | 88.28 | 61.12 | 93.23 | 91.21 | 88.55 | 82.00 | **83.02** |
|
66 |
-
|
67 |
-
|
68 |
-
## Model Sources
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
language: en
|
3 |
+
license: apache-2.0
|
4 |
+
datasets:
|
5 |
+
- nyu-mll/glue
|
6 |
+
---
|
7 |
+
|
8 |
+
# LoNAS Model Card: lonas-bert-base-glue
|
9 |
+
|
10 |
+
The super-networks fine-tuned on BERT-base with [GLUE benchmark](https://gluebenchmark.com/) using LoNAS.
|
11 |
+
|
12 |
+
## Model Details
|
13 |
+
|
14 |
+
### Information
|
15 |
+
|
16 |
+
- **Model name:** lonas-bert-base-glue
|
17 |
+
- **Base model:** [bert-base-uncased](https://huggingface.co/google-bert/bert-base-uncased)
|
18 |
+
- **Subnetwork version:** Super-network
|
19 |
+
- **NNCF Configurations:** [nncf_config/glue](https://github.com/IntelLabs/Hardware-Aware-Automated-Machine-Learning/tree/main/LoNAS/nncf_config/glue)
|
20 |
+
|
21 |
+
### Adapter Configuration
|
22 |
+
|
23 |
+
- **LoRA rank:** 8
|
24 |
+
- **LoRA alpha:** 16
|
25 |
+
- **LoRA target modules:** query, value
|
26 |
+
|
27 |
+
|
28 |
+
### Training and Evaluation
|
29 |
+
|
30 |
+
[GLUE benchmark](https://gluebenchmark.com/)
|
31 |
+
|
32 |
+
### Training Hyperparameters
|
33 |
+
|
34 |
+
| Task | RTE | MRPC | STS-B | CoLA | SST-2 | QNLI | QQP | MNLI |
|
35 |
+
|------------|------|------|-------|------|-------|------|------|------|
|
36 |
+
| Epoch | 80 | 35 | 60 | 80 | 60 | 80 | 60 | 40 |
|
37 |
+
| Batch size | 32 | 32 | 64 | 64 | 64 | 64 | 64 | 64 |
|
38 |
+
| Learning rate | 3e-4 | 5e-4 | 5e-4 | 3e-4 | 3e-4 | 4e-4 | 3e-4 | 4e-4 |
|
39 |
+
| Max length | 128 | 128 | 128 | 128 | 128 | 256 | 128 | 128 |
|
40 |
+
|
41 |
+
## How to use
|
42 |
+
|
43 |
+
Refer to [https://github.com/IntelLabs/Hardware-Aware-Automated-Machine-Learning/tree/main/LoNAS/running_commands](https://github.com/IntelLabs/Hardware-Aware-Automated-Machine-Learning/tree/main/LoNAS/running_commands):
|
44 |
+
```bash
|
45 |
+
CUDA_VISIBLE_DEVICES=${DEVICES} python run_glue.py \
|
46 |
+
--task_name ${TASK} \
|
47 |
+
--model_name_or_path bert-base-uncased \
|
48 |
+
--do_eval \
|
49 |
+
--do_search \
|
50 |
+
--per_device_eval_batch_size 64 \
|
51 |
+
--max_seq_length ${MAX_LENGTH} \
|
52 |
+
--lora \
|
53 |
+
--lora_weights lonas-bert-base-glue/lonas-bert-base-${TASK} \
|
54 |
+
--nncf_config nncf_config/glue/nncf_lonas_bert_base_${TASK}.json \
|
55 |
+
--output_dir lonas-bert-base-glue/lonas-bert-base-${TASK}/results
|
56 |
+
```
|
57 |
+
|
58 |
+
## Evaluation Results
|
59 |
+
|
60 |
+
Results of the optimal sub-network discoverd from the super-network:
|
61 |
+
|
62 |
+
| Method | Trainable Parameter Ratio | GFLOPs | RTE | MRPC | STS-B | CoLA | SST-2 | QNLI | QQP | MNLI | AVG |
|
63 |
+
|-------------|---------------------------|------------|-------|-------|-------|-------|-------|-------|-------|-------|-----------|
|
64 |
+
| LoRA | 0.27% | 11.2 | 65.85 | 84.46 | 88.73 | 57.58 | 92.06 | 90.62 | 89.41 | 83.00 | 81.46 |
|
65 |
+
| **LoNAS** | 0.27% | **8.0** | 70.76 | 88.97 | 88.28 | 61.12 | 93.23 | 91.21 | 88.55 | 82.00 | **83.02** |
|
66 |
+
|
67 |
+
|
68 |
+
## Model Sources
|
69 |
+
|
70 |
+
**Repository:** [https://github.com/IntelLabs/Hardware-Aware-Automated-Machine-Learning/tree/main/LoNAS](https://github.com/IntelLabs/Hardware-Aware-Automated-Machine-Learning/tree/main/LoNAS)
|
71 |
+
|
72 |
+
**Paper:**
|
73 |
+
- [LoNAS: Elastic Low-Rank Adapters for Efficient Large Language Models](https://aclanthology.org/2024.lrec-main.940)
|
74 |
+
- [Low-Rank Adapters Meet Neural Architecture Search for LLM Compression](https://arxiv.org/abs/2501.16372)
|
75 |
+
|
76 |
+
## Citation
|
77 |
+
|
78 |
+
```bibtex
|
79 |
+
@inproceedings{munoz-etal-2024-lonas,
|
80 |
+
title = "{L}o{NAS}: Elastic Low-Rank Adapters for Efficient Large Language Models",
|
81 |
+
author = "Munoz, Juan Pablo and
|
82 |
+
Yuan, Jinjie and
|
83 |
+
Zheng, Yi and
|
84 |
+
Jain, Nilesh",
|
85 |
+
editor = "Calzolari, Nicoletta and
|
86 |
+
Kan, Min-Yen and
|
87 |
+
Hoste, Veronique and
|
88 |
+
Lenci, Alessandro and
|
89 |
+
Sakti, Sakriani and
|
90 |
+
Xue, Nianwen",
|
91 |
+
booktitle = "Proceedings of the 2024 Joint International Conference on Computational Linguistics, Language Resources and Evaluation (LREC-COLING 2024)",
|
92 |
+
month = may,
|
93 |
+
year = "2024",
|
94 |
+
address = "Torino, Italia",
|
95 |
+
publisher = "ELRA and ICCL",
|
96 |
+
url = "https://aclanthology.org/2024.lrec-main.940",
|
97 |
+
pages = "10760--10776",
|
98 |
+
}
|
99 |
+
```
|
100 |
+
|
101 |
+
## License
|
102 |
+
|
103 |
+
Apache-2.0
|