File size: 4,877 Bytes
0f701f1 6011105 0f701f1 6011105 0f701f1 0ae1bc0 0f701f1 0ae1bc0 0f701f1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
---
base_model: meta-llama/Meta-Llama-3-8B
datasets:
- generator
library_name: peft
license: llama3
tags:
- trl
- sft
- generated_from_trainer
model-index:
- name: POC-NEW-Meta-Llama-3-8B-MEDAL-flash-attention-2-cosine-evaldata
results: []
---
<!-- This model card has been generated automatically according to the information the Trainer had access to. You
should probably proofread and complete it, then remove this comment. -->
# POC-NEW-Meta-Llama-3-8B-MEDAL-flash-attention-2-cosine-evaldata
This model is a fine-tuned version of [meta-llama/Meta-Llama-3-8B](https://huggingface.co/meta-llama/Meta-Llama-3-8B) on the generator dataset.
It achieves the following results on the evaluation set:
- Loss: 2.2356
## Model description
Article: https://medium.com/@frankmorales_91352/sfttrainer-a-comprehensive-exploration-of-its-concept-advantages-limitations-history-and-19ab0926e74e
## Training and evaluation data
Evaluation: https://github.com/frank-morales2020/MLxDL/blob/main/Meta_Llama_3_8B_for_MEDAL_EVALUATOR_evaldata_NEW_POC.ipynb
## Training procedure
Fine Tuning: https://github.com/frank-morales2020/MLxDL/blob/main/FineTuning_LLM_Meta_Llama_3_8B_for_MEDAL_EVALDATA_PONEW.ipynb
### Training hyperparameters
The following hyperparameters were used during training:
- learning_rate: 0.0002
- train_batch_size: 3
- eval_batch_size: 8
- seed: 42
- gradient_accumulation_steps: 8
- total_train_batch_size: 24
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: constant
- lr_scheduler_warmup_ratio: 0.03
- lr_scheduler_warmup_steps: 1500
- num_epochs: 0.5
from transformers import TrainingArguments
args = TrainingArguments(
output_dir="/content/gdrive/MyDrive/model/POC-NEW-Meta-Llama-3-8B-MEDAL-flash-attention-2-cosine-evaldata",
num_train_epochs=0.5, # number of training epochs for POC
per_device_train_batch_size=3, #4 # batch size per device during training
gradient_accumulation_steps=8, #6 # values like 8, 12, or even 16, # number of steps before performing a backward/update pass
gradient_checkpointing=True, # use gradient checkpointing to save memory
optim="adamw_torch_fused", # use fused adamw optimizer
logging_steps=100, # log every 100 steps
learning_rate=2e-4, # learning rate, based on QLoRA paper # i used in the first model
#learning_rate=1e-5,
bf16=True, # use bfloat16 precision
tf32=True, # use tf32 precision
max_grad_norm=1.0, # max gradient norm based on QLoRA paper
warmup_ratio=0.03, # warmup ratio based on QLoRA paper = 0.03
weight_decay=0.01,
lr_scheduler_type="constant", # use constant learning rate scheduler
push_to_hub=True, # push model to hub
report_to="tensorboard", # report metrics to tensorboard
gradient_checkpointing_kwargs={"use_reentrant": True},
load_best_model_at_end=True,
logging_dir="/content/gdrive/MyDrive/model/POC-NEW-Meta-Llama-3-8B-MEDAL-flash-attention-2-cosine-evaldata/logs",
evaluation_strategy="steps",
eval_steps=100,
save_strategy="steps",
save_steps=100,
metric_for_best_model = "loss",
warmup_steps=1500,
)
### Training results
| Training Loss | Epoch | Step | Validation Loss |
|:-------------:|:------:|:----:|:---------------:|
| 2.4484 | 0.0207 | 100 | 2.3720 |
| 2.3535 | 0.0415 | 200 | 2.3370 |
| 2.3303 | 0.0622 | 300 | 2.3204 |
| 2.3153 | 0.0830 | 400 | 2.3081 |
| 2.3041 | 0.1037 | 500 | 2.2982 |
| 2.2904 | 0.1245 | 600 | 2.2917 |
| 2.2954 | 0.1452 | 700 | 2.2845 |
| 2.2795 | 0.1660 | 800 | 2.2790 |
| 2.2772 | 0.1867 | 900 | 2.2751 |
| 2.2769 | 0.2075 | 1000 | 2.2711 |
| 2.2711 | 0.2282 | 1100 | 2.2678 |
| 2.2722 | 0.2489 | 1200 | 2.2644 |
| 2.269 | 0.2697 | 1300 | 2.2610 |
| 2.2651 | 0.2904 | 1400 | 2.2586 |
| 2.2625 | 0.3112 | 1500 | 2.2550 |
| 2.2579 | 0.3319 | 1600 | 2.2516 |
| 2.2532 | 0.3527 | 1700 | 2.2501 |
| 2.256 | 0.3734 | 1800 | 2.2471 |
| 2.2509 | 0.3942 | 1900 | 2.2450 |
| 2.2482 | 0.4149 | 2000 | 2.2433 |
| 2.247 | 0.4357 | 2100 | 2.2406 |
| 2.2404 | 0.4564 | 2200 | 2.2395 |
| 2.2377 | 0.4771 | 2300 | 2.2372 |
| 2.2373 | 0.4979 | 2400 | 2.2356 |
### Framework versions
- PEFT 0.11.1
- Transformers 4.41.2
- Pytorch 2.3.0+cu121
- Datasets 2.20.0
- Tokenizers 0.19.1 |