diff --git a/save_lora_instruct_r8_2e4_s11_v2/README.md b/save_lora_instruct_r8_2e4_s11_v2/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d380bbbf0bf0fa1f211b53410559607e5007a209 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/README.md @@ -0,0 +1,202 @@ +--- +library_name: peft +base_model: meta-llama/Llama-2-7b-hf +--- + +# Model Card for Model ID + + + + + +## Model Details + +### Model Description + + + + + +- **Developed by:** [More Information Needed] +- **Funded by [optional]:** [More Information Needed] +- **Shared by [optional]:** [More Information Needed] +- **Model type:** [More Information Needed] +- **Language(s) (NLP):** [More Information Needed] +- **License:** [More Information Needed] +- **Finetuned from model [optional]:** [More Information Needed] + +### Model Sources [optional] + + + +- **Repository:** [More Information Needed] +- **Paper [optional]:** [More Information Needed] +- **Demo [optional]:** [More Information Needed] + +## Uses + + + +### Direct Use + + + +[More Information Needed] + +### Downstream Use [optional] + + + +[More Information Needed] + +### Out-of-Scope Use + + + +[More Information Needed] + +## Bias, Risks, and Limitations + + + +[More Information Needed] + +### Recommendations + + + +Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. + +## How to Get Started with the Model + +Use the code below to get started with the model. + +[More Information Needed] + +## Training Details + +### Training Data + + + +[More Information Needed] + +### Training Procedure + + + +#### Preprocessing [optional] + +[More Information Needed] + + +#### Training Hyperparameters + +- **Training regime:** [More Information Needed] + +#### Speeds, Sizes, Times [optional] + + + +[More Information Needed] + +## Evaluation + + + +### Testing Data, Factors & Metrics + +#### Testing Data + + + +[More Information Needed] + +#### Factors + + + +[More Information Needed] + +#### Metrics + + + +[More Information Needed] + +### Results + +[More Information Needed] + +#### Summary + + + +## Model Examination [optional] + + + +[More Information Needed] + +## Environmental Impact + + + +Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700). + +- **Hardware Type:** [More Information Needed] +- **Hours used:** [More Information Needed] +- **Cloud Provider:** [More Information Needed] +- **Compute Region:** [More Information Needed] +- **Carbon Emitted:** [More Information Needed] + +## Technical Specifications [optional] + +### Model Architecture and Objective + +[More Information Needed] + +### Compute Infrastructure + +[More Information Needed] + +#### Hardware + +[More Information Needed] + +#### Software + +[More Information Needed] + +## Citation [optional] + + + +**BibTeX:** + +[More Information Needed] + +**APA:** + +[More Information Needed] + +## Glossary [optional] + + + +[More Information Needed] + +## More Information [optional] + +[More Information Needed] + +## Model Card Authors [optional] + +[More Information Needed] + +## Model Card Contact + +[More Information Needed] +### Framework versions + +- PEFT 0.9.0 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/adapter_config.json b/save_lora_instruct_r8_2e4_s11_v2/adapter_config.json new file mode 100644 index 0000000000000000000000000000000000000000..9c81a592f0ff08374a4f61f6003029070a8429ae --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/adapter_config.json @@ -0,0 +1,35 @@ +{ + "alpha_pattern": {}, + "auto_mapping": null, + "base_model_name_or_path": "meta-llama/Llama-2-7b-hf", + "bias": "none", + "fan_in_fan_out": false, + "inference_mode": true, + "init_lora_weights": true, + "layers_pattern": null, + "layers_to_transform": null, + "loftq_config": {}, + "lora_alpha": 16, + "lora_dropout": 0.05, + "megatron_config": null, + "megatron_core": "megatron.core", + "modules_to_save": null, + "mora_type": 1, + "peft_type": "LORA", + "r": 8, + "rank_pattern": {}, + "revision": null, + "target_modules": [ + "q_proj", + "k_proj", + "v_proj", + "o_proj", + "gate_proj", + "down_proj", + "up_proj" + ], + "task_type": "CAUSAL_LM", + "use_dora": false, + "use_mora": false, + "use_rslora": false +} \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/adapter_model.safetensors b/save_lora_instruct_r8_2e4_s11_v2/adapter_model.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..05554982ab60151866ce542b304ed8121b43add9 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/adapter_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a485c55c32ea5d70c88fda6d211474749d855619eb4c5b4aa225293e09d9da98 +size 564342240 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/README.md b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d380bbbf0bf0fa1f211b53410559607e5007a209 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/README.md @@ -0,0 +1,202 @@ +--- +library_name: peft +base_model: meta-llama/Llama-2-7b-hf +--- + +# Model Card for Model ID + + + + + +## Model Details + +### Model Description + + + + + +- **Developed by:** [More Information Needed] +- **Funded by [optional]:** [More Information Needed] +- **Shared by [optional]:** [More Information Needed] +- **Model type:** [More Information Needed] +- **Language(s) (NLP):** [More Information Needed] +- **License:** [More Information Needed] +- **Finetuned from model [optional]:** [More Information Needed] + +### Model Sources [optional] + + + +- **Repository:** [More Information Needed] +- **Paper [optional]:** [More Information Needed] +- **Demo [optional]:** [More Information Needed] + +## Uses + + + +### Direct Use + + + +[More Information Needed] + +### Downstream Use [optional] + + + +[More Information Needed] + +### Out-of-Scope Use + + + +[More Information Needed] + +## Bias, Risks, and Limitations + + + +[More Information Needed] + +### Recommendations + + + +Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. + +## How to Get Started with the Model + +Use the code below to get started with the model. + +[More Information Needed] + +## Training Details + +### Training Data + + + +[More Information Needed] + +### Training Procedure + + + +#### Preprocessing [optional] + +[More Information Needed] + + +#### Training Hyperparameters + +- **Training regime:** [More Information Needed] + +#### Speeds, Sizes, Times [optional] + + + +[More Information Needed] + +## Evaluation + + + +### Testing Data, Factors & Metrics + +#### Testing Data + + + +[More Information Needed] + +#### Factors + + + +[More Information Needed] + +#### Metrics + + + +[More Information Needed] + +### Results + +[More Information Needed] + +#### Summary + + + +## Model Examination [optional] + + + +[More Information Needed] + +## Environmental Impact + + + +Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700). + +- **Hardware Type:** [More Information Needed] +- **Hours used:** [More Information Needed] +- **Cloud Provider:** [More Information Needed] +- **Compute Region:** [More Information Needed] +- **Carbon Emitted:** [More Information Needed] + +## Technical Specifications [optional] + +### Model Architecture and Objective + +[More Information Needed] + +### Compute Infrastructure + +[More Information Needed] + +#### Hardware + +[More Information Needed] + +#### Software + +[More Information Needed] + +## Citation [optional] + + + +**BibTeX:** + +[More Information Needed] + +**APA:** + +[More Information Needed] + +## Glossary [optional] + + + +[More Information Needed] + +## More Information [optional] + +[More Information Needed] + +## Model Card Authors [optional] + +[More Information Needed] + +## Model Card Contact + +[More Information Needed] +### Framework versions + +- PEFT 0.9.0 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/adapter_config.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/adapter_config.json new file mode 100644 index 0000000000000000000000000000000000000000..9c81a592f0ff08374a4f61f6003029070a8429ae --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/adapter_config.json @@ -0,0 +1,35 @@ +{ + "alpha_pattern": {}, + "auto_mapping": null, + "base_model_name_or_path": "meta-llama/Llama-2-7b-hf", + "bias": "none", + "fan_in_fan_out": false, + "inference_mode": true, + "init_lora_weights": true, + "layers_pattern": null, + "layers_to_transform": null, + "loftq_config": {}, + "lora_alpha": 16, + "lora_dropout": 0.05, + "megatron_config": null, + "megatron_core": "megatron.core", + "modules_to_save": null, + "mora_type": 1, + "peft_type": "LORA", + "r": 8, + "rank_pattern": {}, + "revision": null, + "target_modules": [ + "q_proj", + "k_proj", + "v_proj", + "o_proj", + "gate_proj", + "down_proj", + "up_proj" + ], + "task_type": "CAUSAL_LM", + "use_dora": false, + "use_mora": false, + "use_rslora": false +} \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/adapter_model.safetensors b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/adapter_model.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..e23e88143160a3d3863343dc09c9abbe2c89b14b --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/adapter_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc1edca5f464acc3dc6f239977259478fa8ba15acaa46569fe428bbfa9fdcc36 +size 564342240 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/global_step2000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/global_step2000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..3703e0bbcd850fc1dc9604bae2c989d9cd153bb6 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/global_step2000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bcf95c3aae5cb9697ebddd8878b6984e90a1b1280dc7aa85efc0d1494c84b96 +size 239914224 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/global_step2000/mp_rank_00_model_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/global_step2000/mp_rank_00_model_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..73542385294d522dac16ff57e8fbf084ba07c198 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/global_step2000/mp_rank_00_model_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16a382ded0b4fd0796d713dafe5721f70f4af6c9faa0d211d8502f5c13cfb1d8 +size 40303404 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/latest b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/latest new file mode 100644 index 0000000000000000000000000000000000000000..2a79fdc19587e6bc9de060e90633f3a151b04516 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/latest @@ -0,0 +1 @@ +global_step2000 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/rng_state.pth b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/rng_state.pth new file mode 100644 index 0000000000000000000000000000000000000000..dc5168604114fe8873a415e695c403804f881e2d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/rng_state.pth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01850e1315165c5e052c036124faa2f6de6533691d8649e2233f6ae6493d461c +size 14244 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/scheduler.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/scheduler.pt new file mode 100644 index 0000000000000000000000000000000000000000..4cba1ee9f732a8d9836710421bdd2f6db8a9c37d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/scheduler.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0868cf0d4c19e8673c246e79cd537d21bbd3e13298159c66bd69908f72d5c416 +size 1064 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/trainer_state.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/trainer_state.json new file mode 100644 index 0000000000000000000000000000000000000000..829bef516b28c25cdc9c5a84a96dbe3e49769815 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/trainer_state.json @@ -0,0 +1,2421 @@ +{ + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 0.7983284997037453, + "eval_steps": 500, + "global_step": 2000, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.0, + "learning_rate": 6.666666666666667e-06, + "loss": 1.3797, + "step": 5 + }, + { + "epoch": 0.0, + "learning_rate": 1.3333333333333333e-05, + "loss": 1.3952, + "step": 10 + }, + { + "epoch": 0.01, + "learning_rate": 2e-05, + "loss": 1.3112, + "step": 15 + }, + { + "epoch": 0.01, + "learning_rate": 2.6666666666666667e-05, + "loss": 1.3136, + "step": 20 + }, + { + "epoch": 0.01, + "learning_rate": 3.3333333333333335e-05, + "loss": 1.2012, + "step": 25 + }, + { + "epoch": 0.01, + "learning_rate": 4e-05, + "loss": 1.1277, + "step": 30 + }, + { + "epoch": 0.01, + "learning_rate": 4.666666666666667e-05, + "loss": 1.0832, + "step": 35 + }, + { + "epoch": 0.02, + "learning_rate": 5.333333333333333e-05, + "loss": 1.0659, + "step": 40 + }, + { + "epoch": 0.02, + "learning_rate": 6e-05, + "loss": 0.983, + "step": 45 + }, + { + "epoch": 0.02, + "learning_rate": 6.666666666666667e-05, + "loss": 0.9763, + "step": 50 + }, + { + "epoch": 0.02, + "learning_rate": 7.333333333333333e-05, + "loss": 0.9992, + "step": 55 + }, + { + "epoch": 0.02, + "learning_rate": 8e-05, + "loss": 0.9405, + "step": 60 + }, + { + "epoch": 0.03, + "learning_rate": 8.666666666666667e-05, + "loss": 0.9827, + "step": 65 + }, + { + "epoch": 0.03, + "learning_rate": 9.333333333333334e-05, + "loss": 0.9061, + "step": 70 + }, + { + "epoch": 0.03, + "learning_rate": 0.0001, + "loss": 0.8921, + "step": 75 + }, + { + "epoch": 0.03, + "learning_rate": 0.00010666666666666667, + "loss": 0.9377, + "step": 80 + }, + { + "epoch": 0.03, + "learning_rate": 0.00011333333333333334, + "loss": 0.8528, + "step": 85 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012, + "loss": 0.8913, + "step": 90 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012666666666666666, + "loss": 0.8562, + "step": 95 + }, + { + "epoch": 0.04, + "learning_rate": 0.00013333333333333334, + "loss": 0.877, + "step": 100 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014, + "loss": 0.8781, + "step": 105 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014666666666666666, + "loss": 0.8546, + "step": 110 + }, + { + "epoch": 0.05, + "learning_rate": 0.00015333333333333334, + "loss": 0.8672, + "step": 115 + }, + { + "epoch": 0.05, + "learning_rate": 0.00016, + "loss": 0.8611, + "step": 120 + }, + { + "epoch": 0.05, + "learning_rate": 0.0001666666666666667, + "loss": 0.8624, + "step": 125 + }, + { + "epoch": 0.05, + "learning_rate": 0.00017333333333333334, + "loss": 0.8477, + "step": 130 + }, + { + "epoch": 0.05, + "learning_rate": 0.00018, + "loss": 0.8227, + "step": 135 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001866666666666667, + "loss": 0.8064, + "step": 140 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019333333333333333, + "loss": 0.8422, + "step": 145 + }, + { + "epoch": 0.06, + "learning_rate": 0.0002, + "loss": 0.8471, + "step": 150 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001997942386831276, + "loss": 0.8183, + "step": 155 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019958847736625514, + "loss": 0.8229, + "step": 160 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019938271604938272, + "loss": 0.8114, + "step": 165 + }, + { + "epoch": 0.07, + "learning_rate": 0.0001991769547325103, + "loss": 0.7861, + "step": 170 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019897119341563788, + "loss": 0.841, + "step": 175 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019876543209876543, + "loss": 0.8549, + "step": 180 + }, + { + "epoch": 0.07, + "learning_rate": 0.000198559670781893, + "loss": 0.8449, + "step": 185 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001983539094650206, + "loss": 0.8311, + "step": 190 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019814814814814814, + "loss": 0.8296, + "step": 195 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019794238683127572, + "loss": 0.8263, + "step": 200 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001977366255144033, + "loss": 0.8452, + "step": 205 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019753086419753085, + "loss": 0.8044, + "step": 210 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019732510288065843, + "loss": 0.8119, + "step": 215 + }, + { + "epoch": 0.09, + "learning_rate": 0.000197119341563786, + "loss": 0.8127, + "step": 220 + }, + { + "epoch": 0.09, + "learning_rate": 0.0001969135802469136, + "loss": 0.7921, + "step": 225 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019670781893004114, + "loss": 0.803, + "step": 230 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019650205761316872, + "loss": 0.838, + "step": 235 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001962962962962963, + "loss": 0.7801, + "step": 240 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019609053497942388, + "loss": 0.817, + "step": 245 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019588477366255146, + "loss": 0.8211, + "step": 250 + }, + { + "epoch": 0.1, + "learning_rate": 0.000195679012345679, + "loss": 0.8423, + "step": 255 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001954732510288066, + "loss": 0.8007, + "step": 260 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019526748971193417, + "loss": 0.8135, + "step": 265 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019506172839506175, + "loss": 0.7961, + "step": 270 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019485596707818933, + "loss": 0.797, + "step": 275 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019465020576131688, + "loss": 0.793, + "step": 280 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019444444444444446, + "loss": 0.7809, + "step": 285 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019423868312757204, + "loss": 0.7811, + "step": 290 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019403292181069962, + "loss": 0.8074, + "step": 295 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019382716049382717, + "loss": 0.8028, + "step": 300 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019362139917695475, + "loss": 0.7895, + "step": 305 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019341563786008233, + "loss": 0.7777, + "step": 310 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019320987654320988, + "loss": 0.7868, + "step": 315 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019300411522633746, + "loss": 0.7921, + "step": 320 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019279835390946504, + "loss": 0.8, + "step": 325 + }, + { + "epoch": 0.13, + "learning_rate": 0.0001925925925925926, + "loss": 0.7781, + "step": 330 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019238683127572017, + "loss": 0.7799, + "step": 335 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019218106995884775, + "loss": 0.7921, + "step": 340 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019197530864197533, + "loss": 0.7851, + "step": 345 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019176954732510288, + "loss": 0.8106, + "step": 350 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019156378600823046, + "loss": 0.7953, + "step": 355 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019135802469135804, + "loss": 0.8084, + "step": 360 + }, + { + "epoch": 0.15, + "learning_rate": 0.0001911522633744856, + "loss": 0.8298, + "step": 365 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019094650205761317, + "loss": 0.8273, + "step": 370 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019074074074074075, + "loss": 0.8047, + "step": 375 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019053497942386833, + "loss": 0.8108, + "step": 380 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019032921810699588, + "loss": 0.8207, + "step": 385 + }, + { + "epoch": 0.16, + "learning_rate": 0.00019012345679012346, + "loss": 0.7884, + "step": 390 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018991769547325104, + "loss": 0.7918, + "step": 395 + }, + { + "epoch": 0.16, + "learning_rate": 0.0001897119341563786, + "loss": 0.7554, + "step": 400 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018950617283950617, + "loss": 0.8099, + "step": 405 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018930041152263375, + "loss": 0.807, + "step": 410 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018909465020576133, + "loss": 0.7793, + "step": 415 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018888888888888888, + "loss": 0.7734, + "step": 420 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018868312757201646, + "loss": 0.7786, + "step": 425 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018847736625514404, + "loss": 0.7548, + "step": 430 + }, + { + "epoch": 0.17, + "learning_rate": 0.0001882716049382716, + "loss": 0.8024, + "step": 435 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018806584362139917, + "loss": 0.7708, + "step": 440 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018786008230452675, + "loss": 0.8045, + "step": 445 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018765432098765433, + "loss": 0.7477, + "step": 450 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018744855967078189, + "loss": 0.7474, + "step": 455 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018724279835390946, + "loss": 0.7629, + "step": 460 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018703703703703704, + "loss": 0.7777, + "step": 465 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018683127572016462, + "loss": 0.7823, + "step": 470 + }, + { + "epoch": 0.19, + "learning_rate": 0.0001866255144032922, + "loss": 0.7762, + "step": 475 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018641975308641978, + "loss": 0.782, + "step": 480 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018621399176954733, + "loss": 0.7783, + "step": 485 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001860082304526749, + "loss": 0.7376, + "step": 490 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001858024691358025, + "loss": 0.7683, + "step": 495 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018559670781893007, + "loss": 0.7547, + "step": 500 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018539094650205762, + "loss": 0.7569, + "step": 505 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001851851851851852, + "loss": 0.7796, + "step": 510 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018497942386831278, + "loss": 0.7888, + "step": 515 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018477366255144033, + "loss": 0.7763, + "step": 520 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018456790123456791, + "loss": 0.7787, + "step": 525 + }, + { + "epoch": 0.21, + "learning_rate": 0.0001843621399176955, + "loss": 0.772, + "step": 530 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018415637860082307, + "loss": 0.786, + "step": 535 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018395061728395062, + "loss": 0.7639, + "step": 540 + }, + { + "epoch": 0.22, + "learning_rate": 0.0001837448559670782, + "loss": 0.775, + "step": 545 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018353909465020578, + "loss": 0.8002, + "step": 550 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018333333333333334, + "loss": 0.7359, + "step": 555 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018312757201646091, + "loss": 0.747, + "step": 560 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001829218106995885, + "loss": 0.8234, + "step": 565 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018271604938271605, + "loss": 0.7586, + "step": 570 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018251028806584363, + "loss": 0.7315, + "step": 575 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001823045267489712, + "loss": 0.7986, + "step": 580 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018209876543209878, + "loss": 0.7758, + "step": 585 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018189300411522634, + "loss": 0.7869, + "step": 590 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018168724279835392, + "loss": 0.7596, + "step": 595 + }, + { + "epoch": 0.24, + "learning_rate": 0.0001814814814814815, + "loss": 0.7658, + "step": 600 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018127572016460905, + "loss": 0.7851, + "step": 605 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018106995884773663, + "loss": 0.7957, + "step": 610 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001808641975308642, + "loss": 0.7756, + "step": 615 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018065843621399178, + "loss": 0.7911, + "step": 620 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018045267489711934, + "loss": 0.7864, + "step": 625 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018024691358024692, + "loss": 0.7683, + "step": 630 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001800411522633745, + "loss": 0.7731, + "step": 635 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017983539094650205, + "loss": 0.7671, + "step": 640 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017962962962962963, + "loss": 0.7367, + "step": 645 + }, + { + "epoch": 0.26, + "learning_rate": 0.0001794238683127572, + "loss": 0.8024, + "step": 650 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017921810699588476, + "loss": 0.7572, + "step": 655 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017901234567901234, + "loss": 0.7554, + "step": 660 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017880658436213992, + "loss": 0.7677, + "step": 665 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001786008230452675, + "loss": 0.7652, + "step": 670 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017839506172839508, + "loss": 0.7771, + "step": 675 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017818930041152265, + "loss": 0.7747, + "step": 680 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001779835390946502, + "loss": 0.767, + "step": 685 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017777777777777779, + "loss": 0.7738, + "step": 690 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017757201646090537, + "loss": 0.7271, + "step": 695 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017736625514403294, + "loss": 0.7316, + "step": 700 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017716049382716052, + "loss": 0.7831, + "step": 705 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017695473251028808, + "loss": 0.7835, + "step": 710 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017674897119341566, + "loss": 0.7497, + "step": 715 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017654320987654323, + "loss": 0.7757, + "step": 720 + }, + { + "epoch": 0.29, + "learning_rate": 0.0001763374485596708, + "loss": 0.74, + "step": 725 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017613168724279837, + "loss": 0.7697, + "step": 730 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017592592592592595, + "loss": 0.774, + "step": 735 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017572016460905352, + "loss": 0.7668, + "step": 740 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017551440329218108, + "loss": 0.7779, + "step": 745 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017530864197530866, + "loss": 0.7441, + "step": 750 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017510288065843624, + "loss": 0.7578, + "step": 755 + }, + { + "epoch": 0.3, + "learning_rate": 0.0001748971193415638, + "loss": 0.8358, + "step": 760 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017469135802469137, + "loss": 0.7473, + "step": 765 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017448559670781895, + "loss": 0.7517, + "step": 770 + }, + { + "epoch": 0.31, + "learning_rate": 0.0001742798353909465, + "loss": 0.7593, + "step": 775 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017407407407407408, + "loss": 0.7251, + "step": 780 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017386831275720166, + "loss": 0.7365, + "step": 785 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017366255144032924, + "loss": 0.7798, + "step": 790 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001734567901234568, + "loss": 0.746, + "step": 795 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017325102880658437, + "loss": 0.7607, + "step": 800 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017304526748971195, + "loss": 0.7694, + "step": 805 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001728395061728395, + "loss": 0.7926, + "step": 810 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017263374485596708, + "loss": 0.795, + "step": 815 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017242798353909466, + "loss": 0.7581, + "step": 820 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017222222222222224, + "loss": 0.7629, + "step": 825 + }, + { + "epoch": 0.33, + "learning_rate": 0.0001720164609053498, + "loss": 0.7526, + "step": 830 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017181069958847737, + "loss": 0.7338, + "step": 835 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017160493827160495, + "loss": 0.7544, + "step": 840 + }, + { + "epoch": 0.34, + "learning_rate": 0.0001713991769547325, + "loss": 0.7522, + "step": 845 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017119341563786008, + "loss": 0.7639, + "step": 850 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017098765432098766, + "loss": 0.7914, + "step": 855 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017078189300411524, + "loss": 0.7635, + "step": 860 + }, + { + "epoch": 0.35, + "learning_rate": 0.0001705761316872428, + "loss": 0.8343, + "step": 865 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017037037037037037, + "loss": 0.7299, + "step": 870 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017016460905349795, + "loss": 0.7643, + "step": 875 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016995884773662553, + "loss": 0.7343, + "step": 880 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016975308641975308, + "loss": 0.7546, + "step": 885 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016954732510288066, + "loss": 0.7435, + "step": 890 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016934156378600824, + "loss": 0.8086, + "step": 895 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016913580246913582, + "loss": 0.7274, + "step": 900 + }, + { + "epoch": 0.36, + "learning_rate": 0.0001689300411522634, + "loss": 0.7511, + "step": 905 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016872427983539098, + "loss": 0.7689, + "step": 910 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016851851851851853, + "loss": 0.754, + "step": 915 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001683127572016461, + "loss": 0.7298, + "step": 920 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001681069958847737, + "loss": 0.7755, + "step": 925 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016790123456790124, + "loss": 0.7854, + "step": 930 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016769547325102882, + "loss": 0.7452, + "step": 935 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001674897119341564, + "loss": 0.7473, + "step": 940 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016728395061728398, + "loss": 0.7855, + "step": 945 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016707818930041153, + "loss": 0.7527, + "step": 950 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001668724279835391, + "loss": 0.7641, + "step": 955 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001666666666666667, + "loss": 0.828, + "step": 960 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016646090534979424, + "loss": 0.7571, + "step": 965 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016625514403292182, + "loss": 0.7768, + "step": 970 + }, + { + "epoch": 0.39, + "learning_rate": 0.0001660493827160494, + "loss": 0.7644, + "step": 975 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016584362139917695, + "loss": 0.7747, + "step": 980 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016563786008230453, + "loss": 0.7926, + "step": 985 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001654320987654321, + "loss": 0.7645, + "step": 990 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001652263374485597, + "loss": 0.7464, + "step": 995 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016502057613168724, + "loss": 0.7558, + "step": 1000 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016481481481481482, + "loss": 0.7574, + "step": 1005 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001646090534979424, + "loss": 0.7491, + "step": 1010 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016440329218106995, + "loss": 0.756, + "step": 1015 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016419753086419753, + "loss": 0.7679, + "step": 1020 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001639917695473251, + "loss": 0.776, + "step": 1025 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001637860082304527, + "loss": 0.7235, + "step": 1030 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016358024691358024, + "loss": 0.7817, + "step": 1035 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016337448559670782, + "loss": 0.7333, + "step": 1040 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001631687242798354, + "loss": 0.754, + "step": 1045 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016296296296296295, + "loss": 0.74, + "step": 1050 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016275720164609053, + "loss": 0.7857, + "step": 1055 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001625514403292181, + "loss": 0.8015, + "step": 1060 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001623456790123457, + "loss": 0.7508, + "step": 1065 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016213991769547324, + "loss": 0.7514, + "step": 1070 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016193415637860082, + "loss": 0.7326, + "step": 1075 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001617283950617284, + "loss": 0.7322, + "step": 1080 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016152263374485595, + "loss": 0.7373, + "step": 1085 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016131687242798353, + "loss": 0.7637, + "step": 1090 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001611111111111111, + "loss": 0.7697, + "step": 1095 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001609053497942387, + "loss": 0.7505, + "step": 1100 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016069958847736627, + "loss": 0.7568, + "step": 1105 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016049382716049385, + "loss": 0.786, + "step": 1110 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001602880658436214, + "loss": 0.7525, + "step": 1115 + }, + { + "epoch": 0.45, + "learning_rate": 0.00016008230452674898, + "loss": 0.7696, + "step": 1120 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015987654320987656, + "loss": 0.7648, + "step": 1125 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015967078189300414, + "loss": 0.7492, + "step": 1130 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001594650205761317, + "loss": 0.809, + "step": 1135 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015925925925925927, + "loss": 0.7592, + "step": 1140 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015905349794238685, + "loss": 0.7874, + "step": 1145 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015884773662551443, + "loss": 0.7874, + "step": 1150 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015864197530864198, + "loss": 0.7374, + "step": 1155 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015843621399176956, + "loss": 0.7218, + "step": 1160 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015823045267489714, + "loss": 0.7494, + "step": 1165 + }, + { + "epoch": 0.47, + "learning_rate": 0.0001580246913580247, + "loss": 0.7449, + "step": 1170 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015781893004115227, + "loss": 0.725, + "step": 1175 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015761316872427985, + "loss": 0.739, + "step": 1180 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015740740740740743, + "loss": 0.7554, + "step": 1185 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015720164609053498, + "loss": 0.7702, + "step": 1190 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015699588477366256, + "loss": 0.7418, + "step": 1195 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015679012345679014, + "loss": 0.7217, + "step": 1200 + }, + { + "epoch": 0.48, + "learning_rate": 0.0001565843621399177, + "loss": 0.7391, + "step": 1205 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015637860082304527, + "loss": 0.7696, + "step": 1210 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015617283950617285, + "loss": 0.7594, + "step": 1215 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001559670781893004, + "loss": 0.777, + "step": 1220 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015576131687242798, + "loss": 0.7441, + "step": 1225 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015555555555555556, + "loss": 0.7611, + "step": 1230 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015534979423868314, + "loss": 0.7278, + "step": 1235 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001551440329218107, + "loss": 0.7452, + "step": 1240 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015493827160493827, + "loss": 0.7939, + "step": 1245 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015473251028806585, + "loss": 0.7161, + "step": 1250 + }, + { + "epoch": 0.5, + "learning_rate": 0.0001545267489711934, + "loss": 0.7344, + "step": 1255 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015432098765432098, + "loss": 0.7368, + "step": 1260 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015411522633744856, + "loss": 0.7172, + "step": 1265 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015390946502057614, + "loss": 0.7589, + "step": 1270 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001537037037037037, + "loss": 0.7641, + "step": 1275 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015349794238683127, + "loss": 0.761, + "step": 1280 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015329218106995885, + "loss": 0.7414, + "step": 1285 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001530864197530864, + "loss": 0.7713, + "step": 1290 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015288065843621399, + "loss": 0.7543, + "step": 1295 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015267489711934156, + "loss": 0.7683, + "step": 1300 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015246913580246914, + "loss": 0.8106, + "step": 1305 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015226337448559672, + "loss": 0.7739, + "step": 1310 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015205761316872428, + "loss": 0.7585, + "step": 1315 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015185185185185185, + "loss": 0.7577, + "step": 1320 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015164609053497943, + "loss": 0.7608, + "step": 1325 + }, + { + "epoch": 0.53, + "learning_rate": 0.000151440329218107, + "loss": 0.7715, + "step": 1330 + }, + { + "epoch": 0.53, + "learning_rate": 0.0001512345679012346, + "loss": 0.7681, + "step": 1335 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015102880658436214, + "loss": 0.7476, + "step": 1340 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015082304526748972, + "loss": 0.7539, + "step": 1345 + }, + { + "epoch": 0.54, + "learning_rate": 0.0001506172839506173, + "loss": 0.7492, + "step": 1350 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015041152263374488, + "loss": 0.7491, + "step": 1355 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015020576131687243, + "loss": 0.7236, + "step": 1360 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015000000000000001, + "loss": 0.7328, + "step": 1365 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001497942386831276, + "loss": 0.7603, + "step": 1370 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014958847736625515, + "loss": 0.7206, + "step": 1375 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014938271604938272, + "loss": 0.7001, + "step": 1380 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001491769547325103, + "loss": 0.7241, + "step": 1385 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014897119341563788, + "loss": 0.7511, + "step": 1390 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014876543209876544, + "loss": 0.7546, + "step": 1395 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014855967078189301, + "loss": 0.762, + "step": 1400 + }, + { + "epoch": 0.56, + "learning_rate": 0.0001483539094650206, + "loss": 0.6979, + "step": 1405 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014814814814814815, + "loss": 0.7352, + "step": 1410 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014794238683127573, + "loss": 0.7604, + "step": 1415 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001477366255144033, + "loss": 0.7612, + "step": 1420 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014753086419753086, + "loss": 0.7618, + "step": 1425 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014732510288065844, + "loss": 0.7107, + "step": 1430 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014711934156378602, + "loss": 0.7247, + "step": 1435 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001469135802469136, + "loss": 0.7733, + "step": 1440 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014670781893004115, + "loss": 0.7627, + "step": 1445 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014650205761316873, + "loss": 0.7323, + "step": 1450 + }, + { + "epoch": 0.58, + "learning_rate": 0.0001462962962962963, + "loss": 0.7728, + "step": 1455 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014609053497942386, + "loss": 0.7541, + "step": 1460 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014588477366255144, + "loss": 0.7781, + "step": 1465 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014567901234567902, + "loss": 0.7474, + "step": 1470 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001454732510288066, + "loss": 0.7789, + "step": 1475 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014526748971193415, + "loss": 0.7497, + "step": 1480 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014506172839506173, + "loss": 0.7487, + "step": 1485 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001448559670781893, + "loss": 0.7563, + "step": 1490 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014465020576131686, + "loss": 0.7444, + "step": 1495 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014444444444444444, + "loss": 0.7399, + "step": 1500 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014423868312757202, + "loss": 0.7288, + "step": 1505 + }, + { + "epoch": 0.6, + "learning_rate": 0.0001440329218106996, + "loss": 0.7458, + "step": 1510 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014382716049382718, + "loss": 0.7297, + "step": 1515 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014362139917695473, + "loss": 0.7684, + "step": 1520 + }, + { + "epoch": 0.61, + "learning_rate": 0.0001434156378600823, + "loss": 0.7428, + "step": 1525 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014320987654320989, + "loss": 0.705, + "step": 1530 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014300411522633747, + "loss": 0.7445, + "step": 1535 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014279835390946504, + "loss": 0.7109, + "step": 1540 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001425925925925926, + "loss": 0.7502, + "step": 1545 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014238683127572018, + "loss": 0.7485, + "step": 1550 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014218106995884776, + "loss": 0.7421, + "step": 1555 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014197530864197534, + "loss": 0.7369, + "step": 1560 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001417695473251029, + "loss": 0.7746, + "step": 1565 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014156378600823047, + "loss": 0.7334, + "step": 1570 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014135802469135805, + "loss": 0.7251, + "step": 1575 + }, + { + "epoch": 0.63, + "learning_rate": 0.0001411522633744856, + "loss": 0.7146, + "step": 1580 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014094650205761318, + "loss": 0.7563, + "step": 1585 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014074074074074076, + "loss": 0.7247, + "step": 1590 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014053497942386834, + "loss": 0.7379, + "step": 1595 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001403292181069959, + "loss": 0.7684, + "step": 1600 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014012345679012347, + "loss": 0.7574, + "step": 1605 + }, + { + "epoch": 0.64, + "learning_rate": 0.00013991769547325105, + "loss": 0.7138, + "step": 1610 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001397119341563786, + "loss": 0.7472, + "step": 1615 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013950617283950618, + "loss": 0.7466, + "step": 1620 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013930041152263376, + "loss": 0.7288, + "step": 1625 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013909465020576134, + "loss": 0.7717, + "step": 1630 + }, + { + "epoch": 0.65, + "learning_rate": 0.0001388888888888889, + "loss": 0.7665, + "step": 1635 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013868312757201647, + "loss": 0.7408, + "step": 1640 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013847736625514405, + "loss": 0.7418, + "step": 1645 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001382716049382716, + "loss": 0.7502, + "step": 1650 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013806584362139918, + "loss": 0.7657, + "step": 1655 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013786008230452676, + "loss": 0.728, + "step": 1660 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001376543209876543, + "loss": 0.7142, + "step": 1665 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001374485596707819, + "loss": 0.7971, + "step": 1670 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013724279835390947, + "loss": 0.737, + "step": 1675 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013703703703703705, + "loss": 0.7947, + "step": 1680 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001368312757201646, + "loss": 0.7525, + "step": 1685 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013662551440329218, + "loss": 0.711, + "step": 1690 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013641975308641976, + "loss": 0.7459, + "step": 1695 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001362139917695473, + "loss": 0.7404, + "step": 1700 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001360082304526749, + "loss": 0.7458, + "step": 1705 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013580246913580247, + "loss": 0.754, + "step": 1710 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013559670781893005, + "loss": 0.7217, + "step": 1715 + }, + { + "epoch": 0.69, + "learning_rate": 0.0001353909465020576, + "loss": 0.7373, + "step": 1720 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013518518518518518, + "loss": 0.7567, + "step": 1725 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013497942386831276, + "loss": 0.7525, + "step": 1730 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013477366255144034, + "loss": 0.752, + "step": 1735 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013456790123456792, + "loss": 0.7342, + "step": 1740 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001343621399176955, + "loss": 0.7276, + "step": 1745 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013415637860082305, + "loss": 0.6915, + "step": 1750 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013395061728395063, + "loss": 0.737, + "step": 1755 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001337448559670782, + "loss": 0.7427, + "step": 1760 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001335390946502058, + "loss": 0.7126, + "step": 1765 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013333333333333334, + "loss": 0.7241, + "step": 1770 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013312757201646092, + "loss": 0.755, + "step": 1775 + }, + { + "epoch": 0.71, + "learning_rate": 0.0001329218106995885, + "loss": 0.7494, + "step": 1780 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013271604938271605, + "loss": 0.709, + "step": 1785 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013251028806584363, + "loss": 0.7555, + "step": 1790 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001323045267489712, + "loss": 0.7298, + "step": 1795 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001320987654320988, + "loss": 0.7232, + "step": 1800 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013189300411522634, + "loss": 0.7441, + "step": 1805 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013168724279835392, + "loss": 0.7623, + "step": 1810 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001314814814814815, + "loss": 0.7349, + "step": 1815 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013127572016460905, + "loss": 0.7773, + "step": 1820 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013106995884773663, + "loss": 0.7537, + "step": 1825 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001308641975308642, + "loss": 0.7579, + "step": 1830 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001306584362139918, + "loss": 0.7321, + "step": 1835 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013045267489711934, + "loss": 0.7175, + "step": 1840 + }, + { + "epoch": 0.74, + "learning_rate": 0.00013024691358024692, + "loss": 0.7553, + "step": 1845 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001300411522633745, + "loss": 0.7591, + "step": 1850 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012983539094650205, + "loss": 0.7581, + "step": 1855 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012962962962962963, + "loss": 0.7632, + "step": 1860 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001294238683127572, + "loss": 0.7434, + "step": 1865 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012921810699588476, + "loss": 0.7695, + "step": 1870 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012901234567901234, + "loss": 0.7808, + "step": 1875 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012880658436213992, + "loss": 0.7428, + "step": 1880 + }, + { + "epoch": 0.75, + "learning_rate": 0.0001286008230452675, + "loss": 0.7487, + "step": 1885 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012839506172839505, + "loss": 0.7033, + "step": 1890 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012818930041152263, + "loss": 0.7639, + "step": 1895 + }, + { + "epoch": 0.76, + "learning_rate": 0.0001279835390946502, + "loss": 0.7345, + "step": 1900 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012777777777777776, + "loss": 0.7434, + "step": 1905 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012757201646090534, + "loss": 0.7082, + "step": 1910 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012736625514403292, + "loss": 0.7294, + "step": 1915 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001271604938271605, + "loss": 0.74, + "step": 1920 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012695473251028805, + "loss": 0.7694, + "step": 1925 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012674897119341563, + "loss": 0.7339, + "step": 1930 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001265432098765432, + "loss": 0.7259, + "step": 1935 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001263374485596708, + "loss": 0.7307, + "step": 1940 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012613168724279837, + "loss": 0.7085, + "step": 1945 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012592592592592592, + "loss": 0.7662, + "step": 1950 + }, + { + "epoch": 0.78, + "learning_rate": 0.0001257201646090535, + "loss": 0.7145, + "step": 1955 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012551440329218108, + "loss": 0.7528, + "step": 1960 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012530864197530866, + "loss": 0.7308, + "step": 1965 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012510288065843624, + "loss": 0.7163, + "step": 1970 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001248971193415638, + "loss": 0.7254, + "step": 1975 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012469135802469137, + "loss": 0.7467, + "step": 1980 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012448559670781895, + "loss": 0.7391, + "step": 1985 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001242798353909465, + "loss": 0.7314, + "step": 1990 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012407407407407408, + "loss": 0.7048, + "step": 1995 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012386831275720166, + "loss": 0.7187, + "step": 2000 + } + ], + "logging_steps": 5, + "max_steps": 5010, + "num_input_tokens_seen": 0, + "num_train_epochs": 2, + "save_steps": 500, + "total_flos": 8.056468541093708e+18, + "train_batch_size": 1, + "trial_name": null, + "trial_params": null +} diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/training_args.bin b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/training_args.bin new file mode 100644 index 0000000000000000000000000000000000000000..e707059a03fbe62142ac41332e145ac1ac1f36cc --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b99a1729574e0e46ee782b42dc90101a785d5b4792871920d293f44722c28cc +size 5944 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/zero_to_fp32.py b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/zero_to_fp32.py new file mode 100644 index 0000000000000000000000000000000000000000..c98caae31534368be22b67fc4ae906836c992a8d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2000/zero_to_fp32.py @@ -0,0 +1,587 @@ +#!/usr/bin/env python + +# Copyright (c) Microsoft Corporation. +# SPDX-License-Identifier: Apache-2.0 + +# DeepSpeed Team + +# This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets +# copied into the top level checkpoint dir, so the user can easily do the conversion at any point in +# the future. Once extracted, the weights don't require DeepSpeed and can be used in any +# application. +# +# example: python zero_to_fp32.py . pytorch_model.bin + +import argparse +import torch +import glob +import math +import os +import re +from collections import OrderedDict +from dataclasses import dataclass + +# while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with +# DeepSpeed data structures it has to be available in the current python environment. +from deepspeed.utils import logger +from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS, + FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES, + FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS) + + +@dataclass +class zero_model_state: + buffers: dict() + param_shapes: dict() + shared_params: list + ds_version: int + frozen_param_shapes: dict() + frozen_param_fragments: dict() + + +debug = 0 + +# load to cpu +device = torch.device('cpu') + + +def atoi(text): + return int(text) if text.isdigit() else text + + +def natural_keys(text): + ''' + alist.sort(key=natural_keys) sorts in human order + http://nedbatchelder.com/blog/200712/human_sorting.html + (See Toothy's implementation in the comments) + ''' + return [atoi(c) for c in re.split(r'(\d+)', text)] + + +def get_model_state_file(checkpoint_dir, zero_stage): + if not os.path.isdir(checkpoint_dir): + raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist") + + # there should be only one file + if zero_stage <= 2: + file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt") + elif zero_stage == 3: + file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt") + + if not os.path.exists(file): + raise FileNotFoundError(f"can't find model states file at '{file}'") + + return file + + +def get_checkpoint_files(checkpoint_dir, glob_pattern): + # XXX: need to test that this simple glob rule works for multi-node setup too + ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys) + + if len(ckpt_files) == 0: + raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'") + + return ckpt_files + + +def get_optim_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt") + + +def get_model_state_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_model_states.pt") + + +def parse_model_states(files): + zero_model_states = [] + for file in files: + state_dict = torch.load(file, map_location=device) + + if BUFFER_NAMES not in state_dict: + raise ValueError(f"{file} is not a model state checkpoint") + buffer_names = state_dict[BUFFER_NAMES] + if debug: + print("Found buffers:", buffer_names) + + # recover just the buffers while restoring them to fp32 if they were saved in fp16 + buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names} + param_shapes = state_dict[PARAM_SHAPES] + + # collect parameters that are included in param_shapes + param_names = [] + for s in param_shapes: + for name in s.keys(): + param_names.append(name) + + # update with frozen parameters + frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None) + if frozen_param_shapes is not None: + if debug: + print(f"Found frozen_param_shapes: {frozen_param_shapes}") + param_names += list(frozen_param_shapes.keys()) + + # handle shared params + shared_params = [[k, v] for k, v in state_dict["shared_params"].items()] + + ds_version = state_dict.get(DS_VERSION, None) + + frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None) + + z_model_state = zero_model_state(buffers=buffers, + param_shapes=param_shapes, + shared_params=shared_params, + ds_version=ds_version, + frozen_param_shapes=frozen_param_shapes, + frozen_param_fragments=frozen_param_fragments) + zero_model_states.append(z_model_state) + + return zero_model_states + + +def parse_optim_states(files, ds_checkpoint_dir): + + total_files = len(files) + state_dicts = [] + for f in files: + state_dict = torch.load(f, map_location=device) + # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights + # and also handle the case where it was already removed by another helper script + state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None) + state_dicts.append(state_dict) + + if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]: + raise ValueError(f"{files[0]} is not a zero checkpoint") + zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE] + world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT] + + # For ZeRO-2 each param group can have different partition_count as data parallelism for expert + # parameters can be different from data parallelism for non-expert parameters. So we can just + # use the max of the partition_count to get the dp world_size. + + if type(world_size) is list: + world_size = max(world_size) + + if world_size != total_files: + raise ValueError( + f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. " + "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes." + ) + + # the groups are named differently in each stage + if zero_stage <= 2: + fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS + elif zero_stage == 3: + fp32_groups_key = FP32_FLAT_GROUPS + else: + raise ValueError(f"unknown zero stage {zero_stage}") + + if zero_stage <= 2: + fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))] + elif zero_stage == 3: + # if there is more than one param group, there will be multiple flattened tensors - one + # flattened tensor per group - for simplicity merge them into a single tensor + # + # XXX: could make the script more memory efficient for when there are multiple groups - it + # will require matching the sub-lists of param_shapes for each param group flattened tensor + + fp32_flat_groups = [ + torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts)) + ] + + return zero_stage, world_size, fp32_flat_groups + + +def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir): + """ + Returns fp32 state_dict reconstructed from ds checkpoint + + Args: + - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are) + + """ + print(f"Processing zero checkpoint '{ds_checkpoint_dir}'") + + optim_files = get_optim_files(ds_checkpoint_dir) + zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir) + print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}") + + model_files = get_model_state_files(ds_checkpoint_dir) + + zero_model_states = parse_model_states(model_files) + print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}') + + if zero_stage <= 2: + return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states) + elif zero_stage == 3: + return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states) + + +def _zero2_merge_frozen_params(state_dict, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + frozen_param_fragments = zero_model_states[0].frozen_param_fragments + + if debug: + num_elem = sum(s.numel() for s in frozen_param_shapes.values()) + print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in frozen_param_fragments.values()]) + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + state_dict[name] = frozen_param_fragments[name] + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + + # Reconstruction protocol: + # + # XXX: document this + + if debug: + for i in range(world_size): + for j in range(len(fp32_flat_groups[0])): + print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}") + + # XXX: memory usage doubles here (zero2) + num_param_groups = len(fp32_flat_groups[0]) + merged_single_partition_of_fp32_groups = [] + for i in range(num_param_groups): + merged_partitions = [sd[i] for sd in fp32_flat_groups] + full_single_fp32_vector = torch.cat(merged_partitions, 0) + merged_single_partition_of_fp32_groups.append(full_single_fp32_vector) + avail_numel = sum( + [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups]) + + if debug: + wanted_params = sum([len(shapes) for shapes in param_shapes]) + wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes]) + # not asserting if there is a mismatch due to possible padding + print(f"Have {avail_numel} numels to process.") + print(f"Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + total_numel = 0 + total_params = 0 + for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups): + offset = 0 + avail_numel = full_single_fp32_vector.numel() + for name, shape in shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape) + offset += unpartitioned_numel + + # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and + # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex + # paddings performed in the code it's almost impossible to predict the exact numbers w/o the + # live optimizer object, so we are checking that the numbers are within the right range + align_to = 2 * world_size + + def zero2_align(x): + return align_to * math.ceil(x / align_to) + + if debug: + print(f"original offset={offset}, avail_numel={avail_numel}") + + offset = zero2_align(offset) + avail_numel = zero2_align(avail_numel) + + if debug: + print(f"aligned offset={offset}, avail_numel={avail_numel}") + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero2_merge_frozen_params(state_dict, zero_model_states) + + _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def zero3_partitioned_param_info(unpartitioned_numel, world_size): + remainder = unpartitioned_numel % world_size + padding_numel = (world_size - remainder) if remainder else 0 + partitioned_numel = math.ceil(unpartitioned_numel / world_size) + return partitioned_numel, padding_numel + + +def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + if debug: + for i in range(world_size): + num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values()) + print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in zero_model_states[0].frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states) + state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape) + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + avail_numel = fp32_flat_groups[0].numel() * world_size + # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each + # param, re-consolidating each param, while dealing with padding if any + + # merge list of dicts, preserving order + param_shapes = {k: v for d in param_shapes for k, v in d.items()} + + if debug: + for i in range(world_size): + print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}") + + wanted_params = len(param_shapes) + wanted_numel = sum(shape.numel() for shape in param_shapes.values()) + # not asserting if there is a mismatch due to possible padding + avail_numel = fp32_flat_groups[0].numel() * world_size + print(f"Trainable params: Have {avail_numel} numels to process.") + print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + offset = 0 + total_numel = 0 + total_params = 0 + for name, shape in param_shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + # XXX: memory usage doubles here + state_dict[name] = torch.cat( + tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)), + 0).narrow(0, 0, unpartitioned_numel).view(shape) + offset += partitioned_numel + + offset *= world_size + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero3_merge_frozen_params(state_dict, world_size, zero_model_states) + + _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with + ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example + via a model hub. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14`` + + Returns: + - pytorch ``state_dict`` + + Note: this approach may not work if your application doesn't have sufficient free CPU memory and + you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with + the checkpoint. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint + # do the training and checkpoint saving + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu + model = model.cpu() # move to cpu + model.load_state_dict(state_dict) + # submit to model hub or save the model to share with others + + In this example the ``model`` will no longer be usable in the deepspeed context of the same + application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead. + + """ + if tag is None: + latest_path = os.path.join(checkpoint_dir, 'latest') + if os.path.isfile(latest_path): + with open(latest_path, 'r') as fd: + tag = fd.read().strip() + else: + raise ValueError(f"Unable to find 'latest' file at {latest_path}") + + ds_checkpoint_dir = os.path.join(checkpoint_dir, tag) + + if not os.path.isdir(ds_checkpoint_dir): + raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist") + + return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir) + + +def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be + loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + """ + + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + print(f"Saving fp32 state dict to {output_file}") + torch.save(state_dict, output_file) + + +def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None): + """ + 1. Put the provided model to cpu + 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` + 3. Load it into the provided model + + Args: + - ``model``: the model object to update + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + + Returns: + - ``model`: modified model + + Make sure you have plenty of CPU memory available before you call this function. If you don't + have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it + conveniently placed for you in the checkpoint folder. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint + model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir) + # submit to model hub or save the model to share with others + + Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context + of the same application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + """ + logger.info(f"Extracting fp32 weights") + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + + logger.info(f"Overwriting model with fp32 weights") + model = model.cpu() + model.load_state_dict(state_dict, strict=False) + + return model + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("checkpoint_dir", + type=str, + help="path to the desired checkpoint folder, e.g., path/checkpoint-12") + parser.add_argument( + "output_file", + type=str, + help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)") + parser.add_argument("-t", + "--tag", + type=str, + default=None, + help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1") + parser.add_argument("-d", "--debug", action='store_true', help="enable debug") + args = parser.parse_args() + + debug = args.debug + + convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag) diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/README.md b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d380bbbf0bf0fa1f211b53410559607e5007a209 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/README.md @@ -0,0 +1,202 @@ +--- +library_name: peft +base_model: meta-llama/Llama-2-7b-hf +--- + +# Model Card for Model ID + + + + + +## Model Details + +### Model Description + + + + + +- **Developed by:** [More Information Needed] +- **Funded by [optional]:** [More Information Needed] +- **Shared by [optional]:** [More Information Needed] +- **Model type:** [More Information Needed] +- **Language(s) (NLP):** [More Information Needed] +- **License:** [More Information Needed] +- **Finetuned from model [optional]:** [More Information Needed] + +### Model Sources [optional] + + + +- **Repository:** [More Information Needed] +- **Paper [optional]:** [More Information Needed] +- **Demo [optional]:** [More Information Needed] + +## Uses + + + +### Direct Use + + + +[More Information Needed] + +### Downstream Use [optional] + + + +[More Information Needed] + +### Out-of-Scope Use + + + +[More Information Needed] + +## Bias, Risks, and Limitations + + + +[More Information Needed] + +### Recommendations + + + +Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. + +## How to Get Started with the Model + +Use the code below to get started with the model. + +[More Information Needed] + +## Training Details + +### Training Data + + + +[More Information Needed] + +### Training Procedure + + + +#### Preprocessing [optional] + +[More Information Needed] + + +#### Training Hyperparameters + +- **Training regime:** [More Information Needed] + +#### Speeds, Sizes, Times [optional] + + + +[More Information Needed] + +## Evaluation + + + +### Testing Data, Factors & Metrics + +#### Testing Data + + + +[More Information Needed] + +#### Factors + + + +[More Information Needed] + +#### Metrics + + + +[More Information Needed] + +### Results + +[More Information Needed] + +#### Summary + + + +## Model Examination [optional] + + + +[More Information Needed] + +## Environmental Impact + + + +Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700). + +- **Hardware Type:** [More Information Needed] +- **Hours used:** [More Information Needed] +- **Cloud Provider:** [More Information Needed] +- **Compute Region:** [More Information Needed] +- **Carbon Emitted:** [More Information Needed] + +## Technical Specifications [optional] + +### Model Architecture and Objective + +[More Information Needed] + +### Compute Infrastructure + +[More Information Needed] + +#### Hardware + +[More Information Needed] + +#### Software + +[More Information Needed] + +## Citation [optional] + + + +**BibTeX:** + +[More Information Needed] + +**APA:** + +[More Information Needed] + +## Glossary [optional] + + + +[More Information Needed] + +## More Information [optional] + +[More Information Needed] + +## Model Card Authors [optional] + +[More Information Needed] + +## Model Card Contact + +[More Information Needed] +### Framework versions + +- PEFT 0.9.0 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/adapter_config.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/adapter_config.json new file mode 100644 index 0000000000000000000000000000000000000000..9c81a592f0ff08374a4f61f6003029070a8429ae --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/adapter_config.json @@ -0,0 +1,35 @@ +{ + "alpha_pattern": {}, + "auto_mapping": null, + "base_model_name_or_path": "meta-llama/Llama-2-7b-hf", + "bias": "none", + "fan_in_fan_out": false, + "inference_mode": true, + "init_lora_weights": true, + "layers_pattern": null, + "layers_to_transform": null, + "loftq_config": {}, + "lora_alpha": 16, + "lora_dropout": 0.05, + "megatron_config": null, + "megatron_core": "megatron.core", + "modules_to_save": null, + "mora_type": 1, + "peft_type": "LORA", + "r": 8, + "rank_pattern": {}, + "revision": null, + "target_modules": [ + "q_proj", + "k_proj", + "v_proj", + "o_proj", + "gate_proj", + "down_proj", + "up_proj" + ], + "task_type": "CAUSAL_LM", + "use_dora": false, + "use_mora": false, + "use_rslora": false +} \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/adapter_model.safetensors b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/adapter_model.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..bd8a663922e9e392f755995c88e506cacc1ec665 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/adapter_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1286cce8a1ff02fa26b8fc6175aa59320d52dc871b3c727b773e08d246798839 +size 564342240 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/global_step2500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/global_step2500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..e2fe9a5de6dc5f01843fc4219215c38fe0cffd75 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/global_step2500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bc5a584db3f84f71a5531be6e84ee9012f906801e236164bf1930863c96b349 +size 239914224 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/global_step2500/mp_rank_00_model_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/global_step2500/mp_rank_00_model_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..db6c59da154981a2521b71a63cb1723a6f5c12d9 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/global_step2500/mp_rank_00_model_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6714b8877a46c01dfe0c658fd930d5ff477446b11507a1bf0bf987d13c62d61 +size 40303404 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/latest b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/latest new file mode 100644 index 0000000000000000000000000000000000000000..98f8bed9a5485ee900d9931cc06950de69499848 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/latest @@ -0,0 +1 @@ +global_step2500 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/rng_state.pth b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/rng_state.pth new file mode 100644 index 0000000000000000000000000000000000000000..8b083fe9709f50483130314aef7895e0a0989009 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/rng_state.pth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c06751c7f8c719f6b24d07fe3e53f4df2e8851764965d05ce5c2050d512804f2 +size 14244 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/scheduler.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/scheduler.pt new file mode 100644 index 0000000000000000000000000000000000000000..5fc605059c2c25108953bfd80fb285e7ad18418c --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/scheduler.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c72b22311c7cbc36b4527a16e3812d8e5f456c956cbf82d4e8d13847a239836 +size 1064 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/trainer_state.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/trainer_state.json new file mode 100644 index 0000000000000000000000000000000000000000..8358794a803a0fcbcf2aebd98f10e13052c5d9d7 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/trainer_state.json @@ -0,0 +1,3021 @@ +{ + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 0.9979106246296816, + "eval_steps": 500, + "global_step": 2500, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.0, + "learning_rate": 6.666666666666667e-06, + "loss": 1.3797, + "step": 5 + }, + { + "epoch": 0.0, + "learning_rate": 1.3333333333333333e-05, + "loss": 1.3952, + "step": 10 + }, + { + "epoch": 0.01, + "learning_rate": 2e-05, + "loss": 1.3112, + "step": 15 + }, + { + "epoch": 0.01, + "learning_rate": 2.6666666666666667e-05, + "loss": 1.3136, + "step": 20 + }, + { + "epoch": 0.01, + "learning_rate": 3.3333333333333335e-05, + "loss": 1.2012, + "step": 25 + }, + { + "epoch": 0.01, + "learning_rate": 4e-05, + "loss": 1.1277, + "step": 30 + }, + { + "epoch": 0.01, + "learning_rate": 4.666666666666667e-05, + "loss": 1.0832, + "step": 35 + }, + { + "epoch": 0.02, + "learning_rate": 5.333333333333333e-05, + "loss": 1.0659, + "step": 40 + }, + { + "epoch": 0.02, + "learning_rate": 6e-05, + "loss": 0.983, + "step": 45 + }, + { + "epoch": 0.02, + "learning_rate": 6.666666666666667e-05, + "loss": 0.9763, + "step": 50 + }, + { + "epoch": 0.02, + "learning_rate": 7.333333333333333e-05, + "loss": 0.9992, + "step": 55 + }, + { + "epoch": 0.02, + "learning_rate": 8e-05, + "loss": 0.9405, + "step": 60 + }, + { + "epoch": 0.03, + "learning_rate": 8.666666666666667e-05, + "loss": 0.9827, + "step": 65 + }, + { + "epoch": 0.03, + "learning_rate": 9.333333333333334e-05, + "loss": 0.9061, + "step": 70 + }, + { + "epoch": 0.03, + "learning_rate": 0.0001, + "loss": 0.8921, + "step": 75 + }, + { + "epoch": 0.03, + "learning_rate": 0.00010666666666666667, + "loss": 0.9377, + "step": 80 + }, + { + "epoch": 0.03, + "learning_rate": 0.00011333333333333334, + "loss": 0.8528, + "step": 85 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012, + "loss": 0.8913, + "step": 90 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012666666666666666, + "loss": 0.8562, + "step": 95 + }, + { + "epoch": 0.04, + "learning_rate": 0.00013333333333333334, + "loss": 0.877, + "step": 100 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014, + "loss": 0.8781, + "step": 105 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014666666666666666, + "loss": 0.8546, + "step": 110 + }, + { + "epoch": 0.05, + "learning_rate": 0.00015333333333333334, + "loss": 0.8672, + "step": 115 + }, + { + "epoch": 0.05, + "learning_rate": 0.00016, + "loss": 0.8611, + "step": 120 + }, + { + "epoch": 0.05, + "learning_rate": 0.0001666666666666667, + "loss": 0.8624, + "step": 125 + }, + { + "epoch": 0.05, + "learning_rate": 0.00017333333333333334, + "loss": 0.8477, + "step": 130 + }, + { + "epoch": 0.05, + "learning_rate": 0.00018, + "loss": 0.8227, + "step": 135 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001866666666666667, + "loss": 0.8064, + "step": 140 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019333333333333333, + "loss": 0.8422, + "step": 145 + }, + { + "epoch": 0.06, + "learning_rate": 0.0002, + "loss": 0.8471, + "step": 150 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001997942386831276, + "loss": 0.8183, + "step": 155 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019958847736625514, + "loss": 0.8229, + "step": 160 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019938271604938272, + "loss": 0.8114, + "step": 165 + }, + { + "epoch": 0.07, + "learning_rate": 0.0001991769547325103, + "loss": 0.7861, + "step": 170 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019897119341563788, + "loss": 0.841, + "step": 175 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019876543209876543, + "loss": 0.8549, + "step": 180 + }, + { + "epoch": 0.07, + "learning_rate": 0.000198559670781893, + "loss": 0.8449, + "step": 185 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001983539094650206, + "loss": 0.8311, + "step": 190 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019814814814814814, + "loss": 0.8296, + "step": 195 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019794238683127572, + "loss": 0.8263, + "step": 200 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001977366255144033, + "loss": 0.8452, + "step": 205 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019753086419753085, + "loss": 0.8044, + "step": 210 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019732510288065843, + "loss": 0.8119, + "step": 215 + }, + { + "epoch": 0.09, + "learning_rate": 0.000197119341563786, + "loss": 0.8127, + "step": 220 + }, + { + "epoch": 0.09, + "learning_rate": 0.0001969135802469136, + "loss": 0.7921, + "step": 225 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019670781893004114, + "loss": 0.803, + "step": 230 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019650205761316872, + "loss": 0.838, + "step": 235 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001962962962962963, + "loss": 0.7801, + "step": 240 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019609053497942388, + "loss": 0.817, + "step": 245 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019588477366255146, + "loss": 0.8211, + "step": 250 + }, + { + "epoch": 0.1, + "learning_rate": 0.000195679012345679, + "loss": 0.8423, + "step": 255 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001954732510288066, + "loss": 0.8007, + "step": 260 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019526748971193417, + "loss": 0.8135, + "step": 265 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019506172839506175, + "loss": 0.7961, + "step": 270 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019485596707818933, + "loss": 0.797, + "step": 275 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019465020576131688, + "loss": 0.793, + "step": 280 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019444444444444446, + "loss": 0.7809, + "step": 285 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019423868312757204, + "loss": 0.7811, + "step": 290 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019403292181069962, + "loss": 0.8074, + "step": 295 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019382716049382717, + "loss": 0.8028, + "step": 300 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019362139917695475, + "loss": 0.7895, + "step": 305 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019341563786008233, + "loss": 0.7777, + "step": 310 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019320987654320988, + "loss": 0.7868, + "step": 315 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019300411522633746, + "loss": 0.7921, + "step": 320 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019279835390946504, + "loss": 0.8, + "step": 325 + }, + { + "epoch": 0.13, + "learning_rate": 0.0001925925925925926, + "loss": 0.7781, + "step": 330 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019238683127572017, + "loss": 0.7799, + "step": 335 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019218106995884775, + "loss": 0.7921, + "step": 340 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019197530864197533, + "loss": 0.7851, + "step": 345 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019176954732510288, + "loss": 0.8106, + "step": 350 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019156378600823046, + "loss": 0.7953, + "step": 355 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019135802469135804, + "loss": 0.8084, + "step": 360 + }, + { + "epoch": 0.15, + "learning_rate": 0.0001911522633744856, + "loss": 0.8298, + "step": 365 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019094650205761317, + "loss": 0.8273, + "step": 370 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019074074074074075, + "loss": 0.8047, + "step": 375 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019053497942386833, + "loss": 0.8108, + "step": 380 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019032921810699588, + "loss": 0.8207, + "step": 385 + }, + { + "epoch": 0.16, + "learning_rate": 0.00019012345679012346, + "loss": 0.7884, + "step": 390 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018991769547325104, + "loss": 0.7918, + "step": 395 + }, + { + "epoch": 0.16, + "learning_rate": 0.0001897119341563786, + "loss": 0.7554, + "step": 400 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018950617283950617, + "loss": 0.8099, + "step": 405 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018930041152263375, + "loss": 0.807, + "step": 410 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018909465020576133, + "loss": 0.7793, + "step": 415 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018888888888888888, + "loss": 0.7734, + "step": 420 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018868312757201646, + "loss": 0.7786, + "step": 425 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018847736625514404, + "loss": 0.7548, + "step": 430 + }, + { + "epoch": 0.17, + "learning_rate": 0.0001882716049382716, + "loss": 0.8024, + "step": 435 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018806584362139917, + "loss": 0.7708, + "step": 440 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018786008230452675, + "loss": 0.8045, + "step": 445 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018765432098765433, + "loss": 0.7477, + "step": 450 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018744855967078189, + "loss": 0.7474, + "step": 455 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018724279835390946, + "loss": 0.7629, + "step": 460 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018703703703703704, + "loss": 0.7777, + "step": 465 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018683127572016462, + "loss": 0.7823, + "step": 470 + }, + { + "epoch": 0.19, + "learning_rate": 0.0001866255144032922, + "loss": 0.7762, + "step": 475 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018641975308641978, + "loss": 0.782, + "step": 480 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018621399176954733, + "loss": 0.7783, + "step": 485 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001860082304526749, + "loss": 0.7376, + "step": 490 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001858024691358025, + "loss": 0.7683, + "step": 495 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018559670781893007, + "loss": 0.7547, + "step": 500 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018539094650205762, + "loss": 0.7569, + "step": 505 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001851851851851852, + "loss": 0.7796, + "step": 510 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018497942386831278, + "loss": 0.7888, + "step": 515 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018477366255144033, + "loss": 0.7763, + "step": 520 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018456790123456791, + "loss": 0.7787, + "step": 525 + }, + { + "epoch": 0.21, + "learning_rate": 0.0001843621399176955, + "loss": 0.772, + "step": 530 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018415637860082307, + "loss": 0.786, + "step": 535 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018395061728395062, + "loss": 0.7639, + "step": 540 + }, + { + "epoch": 0.22, + "learning_rate": 0.0001837448559670782, + "loss": 0.775, + "step": 545 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018353909465020578, + "loss": 0.8002, + "step": 550 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018333333333333334, + "loss": 0.7359, + "step": 555 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018312757201646091, + "loss": 0.747, + "step": 560 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001829218106995885, + "loss": 0.8234, + "step": 565 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018271604938271605, + "loss": 0.7586, + "step": 570 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018251028806584363, + "loss": 0.7315, + "step": 575 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001823045267489712, + "loss": 0.7986, + "step": 580 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018209876543209878, + "loss": 0.7758, + "step": 585 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018189300411522634, + "loss": 0.7869, + "step": 590 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018168724279835392, + "loss": 0.7596, + "step": 595 + }, + { + "epoch": 0.24, + "learning_rate": 0.0001814814814814815, + "loss": 0.7658, + "step": 600 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018127572016460905, + "loss": 0.7851, + "step": 605 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018106995884773663, + "loss": 0.7957, + "step": 610 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001808641975308642, + "loss": 0.7756, + "step": 615 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018065843621399178, + "loss": 0.7911, + "step": 620 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018045267489711934, + "loss": 0.7864, + "step": 625 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018024691358024692, + "loss": 0.7683, + "step": 630 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001800411522633745, + "loss": 0.7731, + "step": 635 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017983539094650205, + "loss": 0.7671, + "step": 640 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017962962962962963, + "loss": 0.7367, + "step": 645 + }, + { + "epoch": 0.26, + "learning_rate": 0.0001794238683127572, + "loss": 0.8024, + "step": 650 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017921810699588476, + "loss": 0.7572, + "step": 655 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017901234567901234, + "loss": 0.7554, + "step": 660 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017880658436213992, + "loss": 0.7677, + "step": 665 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001786008230452675, + "loss": 0.7652, + "step": 670 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017839506172839508, + "loss": 0.7771, + "step": 675 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017818930041152265, + "loss": 0.7747, + "step": 680 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001779835390946502, + "loss": 0.767, + "step": 685 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017777777777777779, + "loss": 0.7738, + "step": 690 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017757201646090537, + "loss": 0.7271, + "step": 695 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017736625514403294, + "loss": 0.7316, + "step": 700 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017716049382716052, + "loss": 0.7831, + "step": 705 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017695473251028808, + "loss": 0.7835, + "step": 710 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017674897119341566, + "loss": 0.7497, + "step": 715 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017654320987654323, + "loss": 0.7757, + "step": 720 + }, + { + "epoch": 0.29, + "learning_rate": 0.0001763374485596708, + "loss": 0.74, + "step": 725 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017613168724279837, + "loss": 0.7697, + "step": 730 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017592592592592595, + "loss": 0.774, + "step": 735 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017572016460905352, + "loss": 0.7668, + "step": 740 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017551440329218108, + "loss": 0.7779, + "step": 745 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017530864197530866, + "loss": 0.7441, + "step": 750 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017510288065843624, + "loss": 0.7578, + "step": 755 + }, + { + "epoch": 0.3, + "learning_rate": 0.0001748971193415638, + "loss": 0.8358, + "step": 760 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017469135802469137, + "loss": 0.7473, + "step": 765 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017448559670781895, + "loss": 0.7517, + "step": 770 + }, + { + "epoch": 0.31, + "learning_rate": 0.0001742798353909465, + "loss": 0.7593, + "step": 775 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017407407407407408, + "loss": 0.7251, + "step": 780 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017386831275720166, + "loss": 0.7365, + "step": 785 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017366255144032924, + "loss": 0.7798, + "step": 790 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001734567901234568, + "loss": 0.746, + "step": 795 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017325102880658437, + "loss": 0.7607, + "step": 800 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017304526748971195, + "loss": 0.7694, + "step": 805 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001728395061728395, + "loss": 0.7926, + "step": 810 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017263374485596708, + "loss": 0.795, + "step": 815 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017242798353909466, + "loss": 0.7581, + "step": 820 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017222222222222224, + "loss": 0.7629, + "step": 825 + }, + { + "epoch": 0.33, + "learning_rate": 0.0001720164609053498, + "loss": 0.7526, + "step": 830 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017181069958847737, + "loss": 0.7338, + "step": 835 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017160493827160495, + "loss": 0.7544, + "step": 840 + }, + { + "epoch": 0.34, + "learning_rate": 0.0001713991769547325, + "loss": 0.7522, + "step": 845 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017119341563786008, + "loss": 0.7639, + "step": 850 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017098765432098766, + "loss": 0.7914, + "step": 855 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017078189300411524, + "loss": 0.7635, + "step": 860 + }, + { + "epoch": 0.35, + "learning_rate": 0.0001705761316872428, + "loss": 0.8343, + "step": 865 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017037037037037037, + "loss": 0.7299, + "step": 870 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017016460905349795, + "loss": 0.7643, + "step": 875 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016995884773662553, + "loss": 0.7343, + "step": 880 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016975308641975308, + "loss": 0.7546, + "step": 885 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016954732510288066, + "loss": 0.7435, + "step": 890 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016934156378600824, + "loss": 0.8086, + "step": 895 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016913580246913582, + "loss": 0.7274, + "step": 900 + }, + { + "epoch": 0.36, + "learning_rate": 0.0001689300411522634, + "loss": 0.7511, + "step": 905 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016872427983539098, + "loss": 0.7689, + "step": 910 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016851851851851853, + "loss": 0.754, + "step": 915 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001683127572016461, + "loss": 0.7298, + "step": 920 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001681069958847737, + "loss": 0.7755, + "step": 925 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016790123456790124, + "loss": 0.7854, + "step": 930 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016769547325102882, + "loss": 0.7452, + "step": 935 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001674897119341564, + "loss": 0.7473, + "step": 940 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016728395061728398, + "loss": 0.7855, + "step": 945 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016707818930041153, + "loss": 0.7527, + "step": 950 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001668724279835391, + "loss": 0.7641, + "step": 955 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001666666666666667, + "loss": 0.828, + "step": 960 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016646090534979424, + "loss": 0.7571, + "step": 965 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016625514403292182, + "loss": 0.7768, + "step": 970 + }, + { + "epoch": 0.39, + "learning_rate": 0.0001660493827160494, + "loss": 0.7644, + "step": 975 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016584362139917695, + "loss": 0.7747, + "step": 980 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016563786008230453, + "loss": 0.7926, + "step": 985 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001654320987654321, + "loss": 0.7645, + "step": 990 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001652263374485597, + "loss": 0.7464, + "step": 995 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016502057613168724, + "loss": 0.7558, + "step": 1000 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016481481481481482, + "loss": 0.7574, + "step": 1005 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001646090534979424, + "loss": 0.7491, + "step": 1010 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016440329218106995, + "loss": 0.756, + "step": 1015 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016419753086419753, + "loss": 0.7679, + "step": 1020 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001639917695473251, + "loss": 0.776, + "step": 1025 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001637860082304527, + "loss": 0.7235, + "step": 1030 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016358024691358024, + "loss": 0.7817, + "step": 1035 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016337448559670782, + "loss": 0.7333, + "step": 1040 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001631687242798354, + "loss": 0.754, + "step": 1045 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016296296296296295, + "loss": 0.74, + "step": 1050 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016275720164609053, + "loss": 0.7857, + "step": 1055 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001625514403292181, + "loss": 0.8015, + "step": 1060 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001623456790123457, + "loss": 0.7508, + "step": 1065 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016213991769547324, + "loss": 0.7514, + "step": 1070 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016193415637860082, + "loss": 0.7326, + "step": 1075 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001617283950617284, + "loss": 0.7322, + "step": 1080 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016152263374485595, + "loss": 0.7373, + "step": 1085 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016131687242798353, + "loss": 0.7637, + "step": 1090 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001611111111111111, + "loss": 0.7697, + "step": 1095 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001609053497942387, + "loss": 0.7505, + "step": 1100 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016069958847736627, + "loss": 0.7568, + "step": 1105 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016049382716049385, + "loss": 0.786, + "step": 1110 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001602880658436214, + "loss": 0.7525, + "step": 1115 + }, + { + "epoch": 0.45, + "learning_rate": 0.00016008230452674898, + "loss": 0.7696, + "step": 1120 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015987654320987656, + "loss": 0.7648, + "step": 1125 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015967078189300414, + "loss": 0.7492, + "step": 1130 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001594650205761317, + "loss": 0.809, + "step": 1135 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015925925925925927, + "loss": 0.7592, + "step": 1140 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015905349794238685, + "loss": 0.7874, + "step": 1145 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015884773662551443, + "loss": 0.7874, + "step": 1150 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015864197530864198, + "loss": 0.7374, + "step": 1155 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015843621399176956, + "loss": 0.7218, + "step": 1160 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015823045267489714, + "loss": 0.7494, + "step": 1165 + }, + { + "epoch": 0.47, + "learning_rate": 0.0001580246913580247, + "loss": 0.7449, + "step": 1170 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015781893004115227, + "loss": 0.725, + "step": 1175 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015761316872427985, + "loss": 0.739, + "step": 1180 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015740740740740743, + "loss": 0.7554, + "step": 1185 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015720164609053498, + "loss": 0.7702, + "step": 1190 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015699588477366256, + "loss": 0.7418, + "step": 1195 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015679012345679014, + "loss": 0.7217, + "step": 1200 + }, + { + "epoch": 0.48, + "learning_rate": 0.0001565843621399177, + "loss": 0.7391, + "step": 1205 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015637860082304527, + "loss": 0.7696, + "step": 1210 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015617283950617285, + "loss": 0.7594, + "step": 1215 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001559670781893004, + "loss": 0.777, + "step": 1220 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015576131687242798, + "loss": 0.7441, + "step": 1225 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015555555555555556, + "loss": 0.7611, + "step": 1230 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015534979423868314, + "loss": 0.7278, + "step": 1235 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001551440329218107, + "loss": 0.7452, + "step": 1240 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015493827160493827, + "loss": 0.7939, + "step": 1245 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015473251028806585, + "loss": 0.7161, + "step": 1250 + }, + { + "epoch": 0.5, + "learning_rate": 0.0001545267489711934, + "loss": 0.7344, + "step": 1255 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015432098765432098, + "loss": 0.7368, + "step": 1260 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015411522633744856, + "loss": 0.7172, + "step": 1265 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015390946502057614, + "loss": 0.7589, + "step": 1270 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001537037037037037, + "loss": 0.7641, + "step": 1275 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015349794238683127, + "loss": 0.761, + "step": 1280 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015329218106995885, + "loss": 0.7414, + "step": 1285 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001530864197530864, + "loss": 0.7713, + "step": 1290 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015288065843621399, + "loss": 0.7543, + "step": 1295 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015267489711934156, + "loss": 0.7683, + "step": 1300 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015246913580246914, + "loss": 0.8106, + "step": 1305 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015226337448559672, + "loss": 0.7739, + "step": 1310 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015205761316872428, + "loss": 0.7585, + "step": 1315 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015185185185185185, + "loss": 0.7577, + "step": 1320 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015164609053497943, + "loss": 0.7608, + "step": 1325 + }, + { + "epoch": 0.53, + "learning_rate": 0.000151440329218107, + "loss": 0.7715, + "step": 1330 + }, + { + "epoch": 0.53, + "learning_rate": 0.0001512345679012346, + "loss": 0.7681, + "step": 1335 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015102880658436214, + "loss": 0.7476, + "step": 1340 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015082304526748972, + "loss": 0.7539, + "step": 1345 + }, + { + "epoch": 0.54, + "learning_rate": 0.0001506172839506173, + "loss": 0.7492, + "step": 1350 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015041152263374488, + "loss": 0.7491, + "step": 1355 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015020576131687243, + "loss": 0.7236, + "step": 1360 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015000000000000001, + "loss": 0.7328, + "step": 1365 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001497942386831276, + "loss": 0.7603, + "step": 1370 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014958847736625515, + "loss": 0.7206, + "step": 1375 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014938271604938272, + "loss": 0.7001, + "step": 1380 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001491769547325103, + "loss": 0.7241, + "step": 1385 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014897119341563788, + "loss": 0.7511, + "step": 1390 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014876543209876544, + "loss": 0.7546, + "step": 1395 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014855967078189301, + "loss": 0.762, + "step": 1400 + }, + { + "epoch": 0.56, + "learning_rate": 0.0001483539094650206, + "loss": 0.6979, + "step": 1405 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014814814814814815, + "loss": 0.7352, + "step": 1410 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014794238683127573, + "loss": 0.7604, + "step": 1415 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001477366255144033, + "loss": 0.7612, + "step": 1420 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014753086419753086, + "loss": 0.7618, + "step": 1425 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014732510288065844, + "loss": 0.7107, + "step": 1430 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014711934156378602, + "loss": 0.7247, + "step": 1435 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001469135802469136, + "loss": 0.7733, + "step": 1440 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014670781893004115, + "loss": 0.7627, + "step": 1445 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014650205761316873, + "loss": 0.7323, + "step": 1450 + }, + { + "epoch": 0.58, + "learning_rate": 0.0001462962962962963, + "loss": 0.7728, + "step": 1455 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014609053497942386, + "loss": 0.7541, + "step": 1460 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014588477366255144, + "loss": 0.7781, + "step": 1465 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014567901234567902, + "loss": 0.7474, + "step": 1470 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001454732510288066, + "loss": 0.7789, + "step": 1475 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014526748971193415, + "loss": 0.7497, + "step": 1480 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014506172839506173, + "loss": 0.7487, + "step": 1485 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001448559670781893, + "loss": 0.7563, + "step": 1490 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014465020576131686, + "loss": 0.7444, + "step": 1495 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014444444444444444, + "loss": 0.7399, + "step": 1500 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014423868312757202, + "loss": 0.7288, + "step": 1505 + }, + { + "epoch": 0.6, + "learning_rate": 0.0001440329218106996, + "loss": 0.7458, + "step": 1510 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014382716049382718, + "loss": 0.7297, + "step": 1515 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014362139917695473, + "loss": 0.7684, + "step": 1520 + }, + { + "epoch": 0.61, + "learning_rate": 0.0001434156378600823, + "loss": 0.7428, + "step": 1525 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014320987654320989, + "loss": 0.705, + "step": 1530 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014300411522633747, + "loss": 0.7445, + "step": 1535 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014279835390946504, + "loss": 0.7109, + "step": 1540 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001425925925925926, + "loss": 0.7502, + "step": 1545 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014238683127572018, + "loss": 0.7485, + "step": 1550 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014218106995884776, + "loss": 0.7421, + "step": 1555 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014197530864197534, + "loss": 0.7369, + "step": 1560 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001417695473251029, + "loss": 0.7746, + "step": 1565 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014156378600823047, + "loss": 0.7334, + "step": 1570 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014135802469135805, + "loss": 0.7251, + "step": 1575 + }, + { + "epoch": 0.63, + "learning_rate": 0.0001411522633744856, + "loss": 0.7146, + "step": 1580 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014094650205761318, + "loss": 0.7563, + "step": 1585 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014074074074074076, + "loss": 0.7247, + "step": 1590 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014053497942386834, + "loss": 0.7379, + "step": 1595 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001403292181069959, + "loss": 0.7684, + "step": 1600 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014012345679012347, + "loss": 0.7574, + "step": 1605 + }, + { + "epoch": 0.64, + "learning_rate": 0.00013991769547325105, + "loss": 0.7138, + "step": 1610 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001397119341563786, + "loss": 0.7472, + "step": 1615 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013950617283950618, + "loss": 0.7466, + "step": 1620 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013930041152263376, + "loss": 0.7288, + "step": 1625 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013909465020576134, + "loss": 0.7717, + "step": 1630 + }, + { + "epoch": 0.65, + "learning_rate": 0.0001388888888888889, + "loss": 0.7665, + "step": 1635 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013868312757201647, + "loss": 0.7408, + "step": 1640 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013847736625514405, + "loss": 0.7418, + "step": 1645 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001382716049382716, + "loss": 0.7502, + "step": 1650 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013806584362139918, + "loss": 0.7657, + "step": 1655 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013786008230452676, + "loss": 0.728, + "step": 1660 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001376543209876543, + "loss": 0.7142, + "step": 1665 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001374485596707819, + "loss": 0.7971, + "step": 1670 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013724279835390947, + "loss": 0.737, + "step": 1675 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013703703703703705, + "loss": 0.7947, + "step": 1680 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001368312757201646, + "loss": 0.7525, + "step": 1685 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013662551440329218, + "loss": 0.711, + "step": 1690 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013641975308641976, + "loss": 0.7459, + "step": 1695 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001362139917695473, + "loss": 0.7404, + "step": 1700 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001360082304526749, + "loss": 0.7458, + "step": 1705 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013580246913580247, + "loss": 0.754, + "step": 1710 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013559670781893005, + "loss": 0.7217, + "step": 1715 + }, + { + "epoch": 0.69, + "learning_rate": 0.0001353909465020576, + "loss": 0.7373, + "step": 1720 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013518518518518518, + "loss": 0.7567, + "step": 1725 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013497942386831276, + "loss": 0.7525, + "step": 1730 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013477366255144034, + "loss": 0.752, + "step": 1735 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013456790123456792, + "loss": 0.7342, + "step": 1740 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001343621399176955, + "loss": 0.7276, + "step": 1745 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013415637860082305, + "loss": 0.6915, + "step": 1750 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013395061728395063, + "loss": 0.737, + "step": 1755 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001337448559670782, + "loss": 0.7427, + "step": 1760 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001335390946502058, + "loss": 0.7126, + "step": 1765 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013333333333333334, + "loss": 0.7241, + "step": 1770 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013312757201646092, + "loss": 0.755, + "step": 1775 + }, + { + "epoch": 0.71, + "learning_rate": 0.0001329218106995885, + "loss": 0.7494, + "step": 1780 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013271604938271605, + "loss": 0.709, + "step": 1785 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013251028806584363, + "loss": 0.7555, + "step": 1790 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001323045267489712, + "loss": 0.7298, + "step": 1795 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001320987654320988, + "loss": 0.7232, + "step": 1800 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013189300411522634, + "loss": 0.7441, + "step": 1805 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013168724279835392, + "loss": 0.7623, + "step": 1810 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001314814814814815, + "loss": 0.7349, + "step": 1815 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013127572016460905, + "loss": 0.7773, + "step": 1820 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013106995884773663, + "loss": 0.7537, + "step": 1825 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001308641975308642, + "loss": 0.7579, + "step": 1830 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001306584362139918, + "loss": 0.7321, + "step": 1835 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013045267489711934, + "loss": 0.7175, + "step": 1840 + }, + { + "epoch": 0.74, + "learning_rate": 0.00013024691358024692, + "loss": 0.7553, + "step": 1845 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001300411522633745, + "loss": 0.7591, + "step": 1850 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012983539094650205, + "loss": 0.7581, + "step": 1855 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012962962962962963, + "loss": 0.7632, + "step": 1860 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001294238683127572, + "loss": 0.7434, + "step": 1865 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012921810699588476, + "loss": 0.7695, + "step": 1870 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012901234567901234, + "loss": 0.7808, + "step": 1875 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012880658436213992, + "loss": 0.7428, + "step": 1880 + }, + { + "epoch": 0.75, + "learning_rate": 0.0001286008230452675, + "loss": 0.7487, + "step": 1885 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012839506172839505, + "loss": 0.7033, + "step": 1890 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012818930041152263, + "loss": 0.7639, + "step": 1895 + }, + { + "epoch": 0.76, + "learning_rate": 0.0001279835390946502, + "loss": 0.7345, + "step": 1900 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012777777777777776, + "loss": 0.7434, + "step": 1905 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012757201646090534, + "loss": 0.7082, + "step": 1910 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012736625514403292, + "loss": 0.7294, + "step": 1915 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001271604938271605, + "loss": 0.74, + "step": 1920 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012695473251028805, + "loss": 0.7694, + "step": 1925 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012674897119341563, + "loss": 0.7339, + "step": 1930 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001265432098765432, + "loss": 0.7259, + "step": 1935 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001263374485596708, + "loss": 0.7307, + "step": 1940 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012613168724279837, + "loss": 0.7085, + "step": 1945 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012592592592592592, + "loss": 0.7662, + "step": 1950 + }, + { + "epoch": 0.78, + "learning_rate": 0.0001257201646090535, + "loss": 0.7145, + "step": 1955 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012551440329218108, + "loss": 0.7528, + "step": 1960 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012530864197530866, + "loss": 0.7308, + "step": 1965 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012510288065843624, + "loss": 0.7163, + "step": 1970 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001248971193415638, + "loss": 0.7254, + "step": 1975 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012469135802469137, + "loss": 0.7467, + "step": 1980 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012448559670781895, + "loss": 0.7391, + "step": 1985 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001242798353909465, + "loss": 0.7314, + "step": 1990 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012407407407407408, + "loss": 0.7048, + "step": 1995 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012386831275720166, + "loss": 0.7187, + "step": 2000 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012366255144032924, + "loss": 0.735, + "step": 2005 + }, + { + "epoch": 0.8, + "learning_rate": 0.0001234567901234568, + "loss": 0.7662, + "step": 2010 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012325102880658437, + "loss": 0.7437, + "step": 2015 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012304526748971195, + "loss": 0.7675, + "step": 2020 + }, + { + "epoch": 0.81, + "learning_rate": 0.0001228395061728395, + "loss": 0.7143, + "step": 2025 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012263374485596708, + "loss": 0.7101, + "step": 2030 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012242798353909466, + "loss": 0.7257, + "step": 2035 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012222222222222224, + "loss": 0.7522, + "step": 2040 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001220164609053498, + "loss": 0.7669, + "step": 2045 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012181069958847737, + "loss": 0.7283, + "step": 2050 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012160493827160495, + "loss": 0.7413, + "step": 2055 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001213991769547325, + "loss": 0.6988, + "step": 2060 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012119341563786008, + "loss": 0.7421, + "step": 2065 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012098765432098766, + "loss": 0.7152, + "step": 2070 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012078189300411524, + "loss": 0.7741, + "step": 2075 + }, + { + "epoch": 0.83, + "learning_rate": 0.0001205761316872428, + "loss": 0.7381, + "step": 2080 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012037037037037037, + "loss": 0.738, + "step": 2085 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012016460905349795, + "loss": 0.7258, + "step": 2090 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011995884773662552, + "loss": 0.7426, + "step": 2095 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011975308641975308, + "loss": 0.7185, + "step": 2100 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011954732510288066, + "loss": 0.7401, + "step": 2105 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011934156378600823, + "loss": 0.751, + "step": 2110 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011913580246913581, + "loss": 0.7284, + "step": 2115 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011893004115226339, + "loss": 0.7901, + "step": 2120 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011872427983539097, + "loss": 0.7432, + "step": 2125 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011851851851851852, + "loss": 0.7355, + "step": 2130 + }, + { + "epoch": 0.85, + "learning_rate": 0.0001183127572016461, + "loss": 0.7333, + "step": 2135 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011810699588477368, + "loss": 0.7504, + "step": 2140 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011790123456790123, + "loss": 0.7503, + "step": 2145 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011769547325102881, + "loss": 0.728, + "step": 2150 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011748971193415639, + "loss": 0.7485, + "step": 2155 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011728395061728397, + "loss": 0.7127, + "step": 2160 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011707818930041152, + "loss": 0.7278, + "step": 2165 + }, + { + "epoch": 0.87, + "learning_rate": 0.0001168724279835391, + "loss": 0.7513, + "step": 2170 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011666666666666668, + "loss": 0.7193, + "step": 2175 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011646090534979423, + "loss": 0.7245, + "step": 2180 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011625514403292181, + "loss": 0.7266, + "step": 2185 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011604938271604939, + "loss": 0.7531, + "step": 2190 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011584362139917696, + "loss": 0.7637, + "step": 2195 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011563786008230452, + "loss": 0.7388, + "step": 2200 + }, + { + "epoch": 0.88, + "learning_rate": 0.0001154320987654321, + "loss": 0.7222, + "step": 2205 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011522633744855968, + "loss": 0.7667, + "step": 2210 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011502057613168725, + "loss": 0.7382, + "step": 2215 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011481481481481482, + "loss": 0.7243, + "step": 2220 + }, + { + "epoch": 0.89, + "learning_rate": 0.0001146090534979424, + "loss": 0.7192, + "step": 2225 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011440329218106996, + "loss": 0.7237, + "step": 2230 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011419753086419754, + "loss": 0.7498, + "step": 2235 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011399176954732511, + "loss": 0.7007, + "step": 2240 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001137860082304527, + "loss": 0.758, + "step": 2245 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011358024691358025, + "loss": 0.7111, + "step": 2250 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011337448559670783, + "loss": 0.706, + "step": 2255 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001131687242798354, + "loss": 0.7423, + "step": 2260 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011296296296296296, + "loss": 0.7094, + "step": 2265 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011275720164609054, + "loss": 0.7331, + "step": 2270 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011255144032921812, + "loss": 0.7164, + "step": 2275 + }, + { + "epoch": 0.91, + "learning_rate": 0.0001123456790123457, + "loss": 0.7452, + "step": 2280 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011213991769547325, + "loss": 0.7172, + "step": 2285 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011193415637860083, + "loss": 0.7232, + "step": 2290 + }, + { + "epoch": 0.92, + "learning_rate": 0.0001117283950617284, + "loss": 0.7112, + "step": 2295 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011152263374485596, + "loss": 0.7459, + "step": 2300 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011131687242798354, + "loss": 0.7353, + "step": 2305 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011111111111111112, + "loss": 0.7406, + "step": 2310 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011090534979423868, + "loss": 0.7623, + "step": 2315 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011069958847736626, + "loss": 0.7567, + "step": 2320 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011049382716049384, + "loss": 0.7752, + "step": 2325 + }, + { + "epoch": 0.93, + "learning_rate": 0.0001102880658436214, + "loss": 0.7419, + "step": 2330 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011008230452674897, + "loss": 0.7244, + "step": 2335 + }, + { + "epoch": 0.93, + "learning_rate": 0.00010987654320987655, + "loss": 0.7553, + "step": 2340 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010967078189300413, + "loss": 0.7389, + "step": 2345 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010946502057613168, + "loss": 0.7002, + "step": 2350 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010925925925925926, + "loss": 0.7238, + "step": 2355 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010905349794238684, + "loss": 0.6923, + "step": 2360 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010884773662551442, + "loss": 0.7579, + "step": 2365 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010864197530864197, + "loss": 0.7291, + "step": 2370 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010843621399176955, + "loss": 0.721, + "step": 2375 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010823045267489713, + "loss": 0.7605, + "step": 2380 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010802469135802468, + "loss": 0.7297, + "step": 2385 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010781893004115226, + "loss": 0.7565, + "step": 2390 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010761316872427984, + "loss": 0.701, + "step": 2395 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010740740740740742, + "loss": 0.736, + "step": 2400 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010720164609053497, + "loss": 0.7079, + "step": 2405 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010699588477366255, + "loss": 0.7349, + "step": 2410 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010679012345679013, + "loss": 0.7106, + "step": 2415 + }, + { + "epoch": 0.97, + "learning_rate": 0.0001065843621399177, + "loss": 0.7396, + "step": 2420 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010637860082304528, + "loss": 0.7713, + "step": 2425 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010617283950617284, + "loss": 0.747, + "step": 2430 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010596707818930041, + "loss": 0.7475, + "step": 2435 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010576131687242799, + "loss": 0.7449, + "step": 2440 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010555555555555557, + "loss": 0.7208, + "step": 2445 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010534979423868315, + "loss": 0.7317, + "step": 2450 + }, + { + "epoch": 0.98, + "learning_rate": 0.0001051440329218107, + "loss": 0.7419, + "step": 2455 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010493827160493828, + "loss": 0.7148, + "step": 2460 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010473251028806586, + "loss": 0.7143, + "step": 2465 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010452674897119341, + "loss": 0.747, + "step": 2470 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010432098765432099, + "loss": 0.7079, + "step": 2475 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010411522633744857, + "loss": 0.7059, + "step": 2480 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010390946502057615, + "loss": 0.7272, + "step": 2485 + }, + { + "epoch": 0.99, + "learning_rate": 0.0001037037037037037, + "loss": 0.7281, + "step": 2490 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010349794238683128, + "loss": 0.6956, + "step": 2495 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010329218106995886, + "loss": 0.7571, + "step": 2500 + } + ], + "logging_steps": 5, + "max_steps": 5010, + "num_input_tokens_seen": 0, + "num_train_epochs": 2, + "save_steps": 500, + "total_flos": 1.006726589213311e+19, + "train_batch_size": 1, + "trial_name": null, + "trial_params": null +} diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/training_args.bin b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/training_args.bin new file mode 100644 index 0000000000000000000000000000000000000000..e707059a03fbe62142ac41332e145ac1ac1f36cc --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b99a1729574e0e46ee782b42dc90101a785d5b4792871920d293f44722c28cc +size 5944 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/zero_to_fp32.py b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/zero_to_fp32.py new file mode 100644 index 0000000000000000000000000000000000000000..c98caae31534368be22b67fc4ae906836c992a8d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-2500/zero_to_fp32.py @@ -0,0 +1,587 @@ +#!/usr/bin/env python + +# Copyright (c) Microsoft Corporation. +# SPDX-License-Identifier: Apache-2.0 + +# DeepSpeed Team + +# This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets +# copied into the top level checkpoint dir, so the user can easily do the conversion at any point in +# the future. Once extracted, the weights don't require DeepSpeed and can be used in any +# application. +# +# example: python zero_to_fp32.py . pytorch_model.bin + +import argparse +import torch +import glob +import math +import os +import re +from collections import OrderedDict +from dataclasses import dataclass + +# while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with +# DeepSpeed data structures it has to be available in the current python environment. +from deepspeed.utils import logger +from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS, + FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES, + FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS) + + +@dataclass +class zero_model_state: + buffers: dict() + param_shapes: dict() + shared_params: list + ds_version: int + frozen_param_shapes: dict() + frozen_param_fragments: dict() + + +debug = 0 + +# load to cpu +device = torch.device('cpu') + + +def atoi(text): + return int(text) if text.isdigit() else text + + +def natural_keys(text): + ''' + alist.sort(key=natural_keys) sorts in human order + http://nedbatchelder.com/blog/200712/human_sorting.html + (See Toothy's implementation in the comments) + ''' + return [atoi(c) for c in re.split(r'(\d+)', text)] + + +def get_model_state_file(checkpoint_dir, zero_stage): + if not os.path.isdir(checkpoint_dir): + raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist") + + # there should be only one file + if zero_stage <= 2: + file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt") + elif zero_stage == 3: + file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt") + + if not os.path.exists(file): + raise FileNotFoundError(f"can't find model states file at '{file}'") + + return file + + +def get_checkpoint_files(checkpoint_dir, glob_pattern): + # XXX: need to test that this simple glob rule works for multi-node setup too + ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys) + + if len(ckpt_files) == 0: + raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'") + + return ckpt_files + + +def get_optim_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt") + + +def get_model_state_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_model_states.pt") + + +def parse_model_states(files): + zero_model_states = [] + for file in files: + state_dict = torch.load(file, map_location=device) + + if BUFFER_NAMES not in state_dict: + raise ValueError(f"{file} is not a model state checkpoint") + buffer_names = state_dict[BUFFER_NAMES] + if debug: + print("Found buffers:", buffer_names) + + # recover just the buffers while restoring them to fp32 if they were saved in fp16 + buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names} + param_shapes = state_dict[PARAM_SHAPES] + + # collect parameters that are included in param_shapes + param_names = [] + for s in param_shapes: + for name in s.keys(): + param_names.append(name) + + # update with frozen parameters + frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None) + if frozen_param_shapes is not None: + if debug: + print(f"Found frozen_param_shapes: {frozen_param_shapes}") + param_names += list(frozen_param_shapes.keys()) + + # handle shared params + shared_params = [[k, v] for k, v in state_dict["shared_params"].items()] + + ds_version = state_dict.get(DS_VERSION, None) + + frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None) + + z_model_state = zero_model_state(buffers=buffers, + param_shapes=param_shapes, + shared_params=shared_params, + ds_version=ds_version, + frozen_param_shapes=frozen_param_shapes, + frozen_param_fragments=frozen_param_fragments) + zero_model_states.append(z_model_state) + + return zero_model_states + + +def parse_optim_states(files, ds_checkpoint_dir): + + total_files = len(files) + state_dicts = [] + for f in files: + state_dict = torch.load(f, map_location=device) + # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights + # and also handle the case where it was already removed by another helper script + state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None) + state_dicts.append(state_dict) + + if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]: + raise ValueError(f"{files[0]} is not a zero checkpoint") + zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE] + world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT] + + # For ZeRO-2 each param group can have different partition_count as data parallelism for expert + # parameters can be different from data parallelism for non-expert parameters. So we can just + # use the max of the partition_count to get the dp world_size. + + if type(world_size) is list: + world_size = max(world_size) + + if world_size != total_files: + raise ValueError( + f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. " + "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes." + ) + + # the groups are named differently in each stage + if zero_stage <= 2: + fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS + elif zero_stage == 3: + fp32_groups_key = FP32_FLAT_GROUPS + else: + raise ValueError(f"unknown zero stage {zero_stage}") + + if zero_stage <= 2: + fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))] + elif zero_stage == 3: + # if there is more than one param group, there will be multiple flattened tensors - one + # flattened tensor per group - for simplicity merge them into a single tensor + # + # XXX: could make the script more memory efficient for when there are multiple groups - it + # will require matching the sub-lists of param_shapes for each param group flattened tensor + + fp32_flat_groups = [ + torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts)) + ] + + return zero_stage, world_size, fp32_flat_groups + + +def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir): + """ + Returns fp32 state_dict reconstructed from ds checkpoint + + Args: + - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are) + + """ + print(f"Processing zero checkpoint '{ds_checkpoint_dir}'") + + optim_files = get_optim_files(ds_checkpoint_dir) + zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir) + print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}") + + model_files = get_model_state_files(ds_checkpoint_dir) + + zero_model_states = parse_model_states(model_files) + print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}') + + if zero_stage <= 2: + return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states) + elif zero_stage == 3: + return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states) + + +def _zero2_merge_frozen_params(state_dict, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + frozen_param_fragments = zero_model_states[0].frozen_param_fragments + + if debug: + num_elem = sum(s.numel() for s in frozen_param_shapes.values()) + print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in frozen_param_fragments.values()]) + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + state_dict[name] = frozen_param_fragments[name] + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + + # Reconstruction protocol: + # + # XXX: document this + + if debug: + for i in range(world_size): + for j in range(len(fp32_flat_groups[0])): + print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}") + + # XXX: memory usage doubles here (zero2) + num_param_groups = len(fp32_flat_groups[0]) + merged_single_partition_of_fp32_groups = [] + for i in range(num_param_groups): + merged_partitions = [sd[i] for sd in fp32_flat_groups] + full_single_fp32_vector = torch.cat(merged_partitions, 0) + merged_single_partition_of_fp32_groups.append(full_single_fp32_vector) + avail_numel = sum( + [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups]) + + if debug: + wanted_params = sum([len(shapes) for shapes in param_shapes]) + wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes]) + # not asserting if there is a mismatch due to possible padding + print(f"Have {avail_numel} numels to process.") + print(f"Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + total_numel = 0 + total_params = 0 + for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups): + offset = 0 + avail_numel = full_single_fp32_vector.numel() + for name, shape in shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape) + offset += unpartitioned_numel + + # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and + # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex + # paddings performed in the code it's almost impossible to predict the exact numbers w/o the + # live optimizer object, so we are checking that the numbers are within the right range + align_to = 2 * world_size + + def zero2_align(x): + return align_to * math.ceil(x / align_to) + + if debug: + print(f"original offset={offset}, avail_numel={avail_numel}") + + offset = zero2_align(offset) + avail_numel = zero2_align(avail_numel) + + if debug: + print(f"aligned offset={offset}, avail_numel={avail_numel}") + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero2_merge_frozen_params(state_dict, zero_model_states) + + _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def zero3_partitioned_param_info(unpartitioned_numel, world_size): + remainder = unpartitioned_numel % world_size + padding_numel = (world_size - remainder) if remainder else 0 + partitioned_numel = math.ceil(unpartitioned_numel / world_size) + return partitioned_numel, padding_numel + + +def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + if debug: + for i in range(world_size): + num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values()) + print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in zero_model_states[0].frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states) + state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape) + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + avail_numel = fp32_flat_groups[0].numel() * world_size + # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each + # param, re-consolidating each param, while dealing with padding if any + + # merge list of dicts, preserving order + param_shapes = {k: v for d in param_shapes for k, v in d.items()} + + if debug: + for i in range(world_size): + print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}") + + wanted_params = len(param_shapes) + wanted_numel = sum(shape.numel() for shape in param_shapes.values()) + # not asserting if there is a mismatch due to possible padding + avail_numel = fp32_flat_groups[0].numel() * world_size + print(f"Trainable params: Have {avail_numel} numels to process.") + print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + offset = 0 + total_numel = 0 + total_params = 0 + for name, shape in param_shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + # XXX: memory usage doubles here + state_dict[name] = torch.cat( + tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)), + 0).narrow(0, 0, unpartitioned_numel).view(shape) + offset += partitioned_numel + + offset *= world_size + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero3_merge_frozen_params(state_dict, world_size, zero_model_states) + + _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with + ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example + via a model hub. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14`` + + Returns: + - pytorch ``state_dict`` + + Note: this approach may not work if your application doesn't have sufficient free CPU memory and + you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with + the checkpoint. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint + # do the training and checkpoint saving + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu + model = model.cpu() # move to cpu + model.load_state_dict(state_dict) + # submit to model hub or save the model to share with others + + In this example the ``model`` will no longer be usable in the deepspeed context of the same + application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead. + + """ + if tag is None: + latest_path = os.path.join(checkpoint_dir, 'latest') + if os.path.isfile(latest_path): + with open(latest_path, 'r') as fd: + tag = fd.read().strip() + else: + raise ValueError(f"Unable to find 'latest' file at {latest_path}") + + ds_checkpoint_dir = os.path.join(checkpoint_dir, tag) + + if not os.path.isdir(ds_checkpoint_dir): + raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist") + + return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir) + + +def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be + loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + """ + + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + print(f"Saving fp32 state dict to {output_file}") + torch.save(state_dict, output_file) + + +def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None): + """ + 1. Put the provided model to cpu + 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` + 3. Load it into the provided model + + Args: + - ``model``: the model object to update + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + + Returns: + - ``model`: modified model + + Make sure you have plenty of CPU memory available before you call this function. If you don't + have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it + conveniently placed for you in the checkpoint folder. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint + model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir) + # submit to model hub or save the model to share with others + + Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context + of the same application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + """ + logger.info(f"Extracting fp32 weights") + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + + logger.info(f"Overwriting model with fp32 weights") + model = model.cpu() + model.load_state_dict(state_dict, strict=False) + + return model + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("checkpoint_dir", + type=str, + help="path to the desired checkpoint folder, e.g., path/checkpoint-12") + parser.add_argument( + "output_file", + type=str, + help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)") + parser.add_argument("-t", + "--tag", + type=str, + default=None, + help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1") + parser.add_argument("-d", "--debug", action='store_true', help="enable debug") + args = parser.parse_args() + + debug = args.debug + + convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag) diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/README.md b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d380bbbf0bf0fa1f211b53410559607e5007a209 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/README.md @@ -0,0 +1,202 @@ +--- +library_name: peft +base_model: meta-llama/Llama-2-7b-hf +--- + +# Model Card for Model ID + + + + + +## Model Details + +### Model Description + + + + + +- **Developed by:** [More Information Needed] +- **Funded by [optional]:** [More Information Needed] +- **Shared by [optional]:** [More Information Needed] +- **Model type:** [More Information Needed] +- **Language(s) (NLP):** [More Information Needed] +- **License:** [More Information Needed] +- **Finetuned from model [optional]:** [More Information Needed] + +### Model Sources [optional] + + + +- **Repository:** [More Information Needed] +- **Paper [optional]:** [More Information Needed] +- **Demo [optional]:** [More Information Needed] + +## Uses + + + +### Direct Use + + + +[More Information Needed] + +### Downstream Use [optional] + + + +[More Information Needed] + +### Out-of-Scope Use + + + +[More Information Needed] + +## Bias, Risks, and Limitations + + + +[More Information Needed] + +### Recommendations + + + +Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. + +## How to Get Started with the Model + +Use the code below to get started with the model. + +[More Information Needed] + +## Training Details + +### Training Data + + + +[More Information Needed] + +### Training Procedure + + + +#### Preprocessing [optional] + +[More Information Needed] + + +#### Training Hyperparameters + +- **Training regime:** [More Information Needed] + +#### Speeds, Sizes, Times [optional] + + + +[More Information Needed] + +## Evaluation + + + +### Testing Data, Factors & Metrics + +#### Testing Data + + + +[More Information Needed] + +#### Factors + + + +[More Information Needed] + +#### Metrics + + + +[More Information Needed] + +### Results + +[More Information Needed] + +#### Summary + + + +## Model Examination [optional] + + + +[More Information Needed] + +## Environmental Impact + + + +Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700). + +- **Hardware Type:** [More Information Needed] +- **Hours used:** [More Information Needed] +- **Cloud Provider:** [More Information Needed] +- **Compute Region:** [More Information Needed] +- **Carbon Emitted:** [More Information Needed] + +## Technical Specifications [optional] + +### Model Architecture and Objective + +[More Information Needed] + +### Compute Infrastructure + +[More Information Needed] + +#### Hardware + +[More Information Needed] + +#### Software + +[More Information Needed] + +## Citation [optional] + + + +**BibTeX:** + +[More Information Needed] + +**APA:** + +[More Information Needed] + +## Glossary [optional] + + + +[More Information Needed] + +## More Information [optional] + +[More Information Needed] + +## Model Card Authors [optional] + +[More Information Needed] + +## Model Card Contact + +[More Information Needed] +### Framework versions + +- PEFT 0.9.0 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/adapter_config.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/adapter_config.json new file mode 100644 index 0000000000000000000000000000000000000000..9c81a592f0ff08374a4f61f6003029070a8429ae --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/adapter_config.json @@ -0,0 +1,35 @@ +{ + "alpha_pattern": {}, + "auto_mapping": null, + "base_model_name_or_path": "meta-llama/Llama-2-7b-hf", + "bias": "none", + "fan_in_fan_out": false, + "inference_mode": true, + "init_lora_weights": true, + "layers_pattern": null, + "layers_to_transform": null, + "loftq_config": {}, + "lora_alpha": 16, + "lora_dropout": 0.05, + "megatron_config": null, + "megatron_core": "megatron.core", + "modules_to_save": null, + "mora_type": 1, + "peft_type": "LORA", + "r": 8, + "rank_pattern": {}, + "revision": null, + "target_modules": [ + "q_proj", + "k_proj", + "v_proj", + "o_proj", + "gate_proj", + "down_proj", + "up_proj" + ], + "task_type": "CAUSAL_LM", + "use_dora": false, + "use_mora": false, + "use_rslora": false +} \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/adapter_model.safetensors b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/adapter_model.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..9b54d94d95fd4d335426c8041703b751ef521862 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/adapter_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12bb4d2478f00de5cd40c10cae5ef5bf80ef1fec9bd44f7398d51bca636a3ddc +size 564342240 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/global_step3000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/global_step3000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..6397f62166a7fcede76485314e2a1620fc0f2b90 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/global_step3000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0210f3f6e2ac8f9cd0b17e5408639966f58dbda6ac71bbc377f17243c37ba278 +size 239914224 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/global_step3000/mp_rank_00_model_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/global_step3000/mp_rank_00_model_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..ca006784c18a3fdfe765bdb105bbfac2400d3214 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/global_step3000/mp_rank_00_model_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b60211ffd4f70597b76b44474e6e539456e92269af560e92b3dd2a1125a2312 +size 40303404 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/latest b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/latest new file mode 100644 index 0000000000000000000000000000000000000000..1d7ba373feda3875a77d01589035020625a7c98e --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/latest @@ -0,0 +1 @@ +global_step3000 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/rng_state.pth b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/rng_state.pth new file mode 100644 index 0000000000000000000000000000000000000000..ef5bdcfd1c8949add7096d6bba3bbd15a996a7f4 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/rng_state.pth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19d07e457963fb633a8a76af2488db91a9a823d4ae9e728350053659f7550aff +size 14244 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/scheduler.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/scheduler.pt new file mode 100644 index 0000000000000000000000000000000000000000..cae8d8d17ef2ea198cb9db32e2e75500ed2fcb86 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/scheduler.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e52b346ba1d827109b4132f75a5a289e15d677fb11398880b39f9c40c0bdea2f +size 1064 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/trainer_state.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/trainer_state.json new file mode 100644 index 0000000000000000000000000000000000000000..a0c1ad939aa7d70c81823fbc7fb66d8cbc69d5cd --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/trainer_state.json @@ -0,0 +1,3621 @@ +{ + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 1.197492749555618, + "eval_steps": 500, + "global_step": 3000, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.0, + "learning_rate": 6.666666666666667e-06, + "loss": 1.3797, + "step": 5 + }, + { + "epoch": 0.0, + "learning_rate": 1.3333333333333333e-05, + "loss": 1.3952, + "step": 10 + }, + { + "epoch": 0.01, + "learning_rate": 2e-05, + "loss": 1.3112, + "step": 15 + }, + { + "epoch": 0.01, + "learning_rate": 2.6666666666666667e-05, + "loss": 1.3136, + "step": 20 + }, + { + "epoch": 0.01, + "learning_rate": 3.3333333333333335e-05, + "loss": 1.2012, + "step": 25 + }, + { + "epoch": 0.01, + "learning_rate": 4e-05, + "loss": 1.1277, + "step": 30 + }, + { + "epoch": 0.01, + "learning_rate": 4.666666666666667e-05, + "loss": 1.0832, + "step": 35 + }, + { + "epoch": 0.02, + "learning_rate": 5.333333333333333e-05, + "loss": 1.0659, + "step": 40 + }, + { + "epoch": 0.02, + "learning_rate": 6e-05, + "loss": 0.983, + "step": 45 + }, + { + "epoch": 0.02, + "learning_rate": 6.666666666666667e-05, + "loss": 0.9763, + "step": 50 + }, + { + "epoch": 0.02, + "learning_rate": 7.333333333333333e-05, + "loss": 0.9992, + "step": 55 + }, + { + "epoch": 0.02, + "learning_rate": 8e-05, + "loss": 0.9405, + "step": 60 + }, + { + "epoch": 0.03, + "learning_rate": 8.666666666666667e-05, + "loss": 0.9827, + "step": 65 + }, + { + "epoch": 0.03, + "learning_rate": 9.333333333333334e-05, + "loss": 0.9061, + "step": 70 + }, + { + "epoch": 0.03, + "learning_rate": 0.0001, + "loss": 0.8921, + "step": 75 + }, + { + "epoch": 0.03, + "learning_rate": 0.00010666666666666667, + "loss": 0.9377, + "step": 80 + }, + { + "epoch": 0.03, + "learning_rate": 0.00011333333333333334, + "loss": 0.8528, + "step": 85 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012, + "loss": 0.8913, + "step": 90 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012666666666666666, + "loss": 0.8562, + "step": 95 + }, + { + "epoch": 0.04, + "learning_rate": 0.00013333333333333334, + "loss": 0.877, + "step": 100 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014, + "loss": 0.8781, + "step": 105 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014666666666666666, + "loss": 0.8546, + "step": 110 + }, + { + "epoch": 0.05, + "learning_rate": 0.00015333333333333334, + "loss": 0.8672, + "step": 115 + }, + { + "epoch": 0.05, + "learning_rate": 0.00016, + "loss": 0.8611, + "step": 120 + }, + { + "epoch": 0.05, + "learning_rate": 0.0001666666666666667, + "loss": 0.8624, + "step": 125 + }, + { + "epoch": 0.05, + "learning_rate": 0.00017333333333333334, + "loss": 0.8477, + "step": 130 + }, + { + "epoch": 0.05, + "learning_rate": 0.00018, + "loss": 0.8227, + "step": 135 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001866666666666667, + "loss": 0.8064, + "step": 140 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019333333333333333, + "loss": 0.8422, + "step": 145 + }, + { + "epoch": 0.06, + "learning_rate": 0.0002, + "loss": 0.8471, + "step": 150 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001997942386831276, + "loss": 0.8183, + "step": 155 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019958847736625514, + "loss": 0.8229, + "step": 160 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019938271604938272, + "loss": 0.8114, + "step": 165 + }, + { + "epoch": 0.07, + "learning_rate": 0.0001991769547325103, + "loss": 0.7861, + "step": 170 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019897119341563788, + "loss": 0.841, + "step": 175 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019876543209876543, + "loss": 0.8549, + "step": 180 + }, + { + "epoch": 0.07, + "learning_rate": 0.000198559670781893, + "loss": 0.8449, + "step": 185 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001983539094650206, + "loss": 0.8311, + "step": 190 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019814814814814814, + "loss": 0.8296, + "step": 195 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019794238683127572, + "loss": 0.8263, + "step": 200 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001977366255144033, + "loss": 0.8452, + "step": 205 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019753086419753085, + "loss": 0.8044, + "step": 210 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019732510288065843, + "loss": 0.8119, + "step": 215 + }, + { + "epoch": 0.09, + "learning_rate": 0.000197119341563786, + "loss": 0.8127, + "step": 220 + }, + { + "epoch": 0.09, + "learning_rate": 0.0001969135802469136, + "loss": 0.7921, + "step": 225 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019670781893004114, + "loss": 0.803, + "step": 230 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019650205761316872, + "loss": 0.838, + "step": 235 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001962962962962963, + "loss": 0.7801, + "step": 240 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019609053497942388, + "loss": 0.817, + "step": 245 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019588477366255146, + "loss": 0.8211, + "step": 250 + }, + { + "epoch": 0.1, + "learning_rate": 0.000195679012345679, + "loss": 0.8423, + "step": 255 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001954732510288066, + "loss": 0.8007, + "step": 260 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019526748971193417, + "loss": 0.8135, + "step": 265 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019506172839506175, + "loss": 0.7961, + "step": 270 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019485596707818933, + "loss": 0.797, + "step": 275 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019465020576131688, + "loss": 0.793, + "step": 280 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019444444444444446, + "loss": 0.7809, + "step": 285 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019423868312757204, + "loss": 0.7811, + "step": 290 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019403292181069962, + "loss": 0.8074, + "step": 295 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019382716049382717, + "loss": 0.8028, + "step": 300 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019362139917695475, + "loss": 0.7895, + "step": 305 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019341563786008233, + "loss": 0.7777, + "step": 310 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019320987654320988, + "loss": 0.7868, + "step": 315 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019300411522633746, + "loss": 0.7921, + "step": 320 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019279835390946504, + "loss": 0.8, + "step": 325 + }, + { + "epoch": 0.13, + "learning_rate": 0.0001925925925925926, + "loss": 0.7781, + "step": 330 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019238683127572017, + "loss": 0.7799, + "step": 335 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019218106995884775, + "loss": 0.7921, + "step": 340 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019197530864197533, + "loss": 0.7851, + "step": 345 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019176954732510288, + "loss": 0.8106, + "step": 350 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019156378600823046, + "loss": 0.7953, + "step": 355 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019135802469135804, + "loss": 0.8084, + "step": 360 + }, + { + "epoch": 0.15, + "learning_rate": 0.0001911522633744856, + "loss": 0.8298, + "step": 365 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019094650205761317, + "loss": 0.8273, + "step": 370 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019074074074074075, + "loss": 0.8047, + "step": 375 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019053497942386833, + "loss": 0.8108, + "step": 380 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019032921810699588, + "loss": 0.8207, + "step": 385 + }, + { + "epoch": 0.16, + "learning_rate": 0.00019012345679012346, + "loss": 0.7884, + "step": 390 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018991769547325104, + "loss": 0.7918, + "step": 395 + }, + { + "epoch": 0.16, + "learning_rate": 0.0001897119341563786, + "loss": 0.7554, + "step": 400 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018950617283950617, + "loss": 0.8099, + "step": 405 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018930041152263375, + "loss": 0.807, + "step": 410 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018909465020576133, + "loss": 0.7793, + "step": 415 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018888888888888888, + "loss": 0.7734, + "step": 420 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018868312757201646, + "loss": 0.7786, + "step": 425 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018847736625514404, + "loss": 0.7548, + "step": 430 + }, + { + "epoch": 0.17, + "learning_rate": 0.0001882716049382716, + "loss": 0.8024, + "step": 435 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018806584362139917, + "loss": 0.7708, + "step": 440 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018786008230452675, + "loss": 0.8045, + "step": 445 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018765432098765433, + "loss": 0.7477, + "step": 450 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018744855967078189, + "loss": 0.7474, + "step": 455 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018724279835390946, + "loss": 0.7629, + "step": 460 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018703703703703704, + "loss": 0.7777, + "step": 465 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018683127572016462, + "loss": 0.7823, + "step": 470 + }, + { + "epoch": 0.19, + "learning_rate": 0.0001866255144032922, + "loss": 0.7762, + "step": 475 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018641975308641978, + "loss": 0.782, + "step": 480 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018621399176954733, + "loss": 0.7783, + "step": 485 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001860082304526749, + "loss": 0.7376, + "step": 490 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001858024691358025, + "loss": 0.7683, + "step": 495 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018559670781893007, + "loss": 0.7547, + "step": 500 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018539094650205762, + "loss": 0.7569, + "step": 505 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001851851851851852, + "loss": 0.7796, + "step": 510 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018497942386831278, + "loss": 0.7888, + "step": 515 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018477366255144033, + "loss": 0.7763, + "step": 520 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018456790123456791, + "loss": 0.7787, + "step": 525 + }, + { + "epoch": 0.21, + "learning_rate": 0.0001843621399176955, + "loss": 0.772, + "step": 530 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018415637860082307, + "loss": 0.786, + "step": 535 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018395061728395062, + "loss": 0.7639, + "step": 540 + }, + { + "epoch": 0.22, + "learning_rate": 0.0001837448559670782, + "loss": 0.775, + "step": 545 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018353909465020578, + "loss": 0.8002, + "step": 550 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018333333333333334, + "loss": 0.7359, + "step": 555 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018312757201646091, + "loss": 0.747, + "step": 560 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001829218106995885, + "loss": 0.8234, + "step": 565 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018271604938271605, + "loss": 0.7586, + "step": 570 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018251028806584363, + "loss": 0.7315, + "step": 575 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001823045267489712, + "loss": 0.7986, + "step": 580 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018209876543209878, + "loss": 0.7758, + "step": 585 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018189300411522634, + "loss": 0.7869, + "step": 590 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018168724279835392, + "loss": 0.7596, + "step": 595 + }, + { + "epoch": 0.24, + "learning_rate": 0.0001814814814814815, + "loss": 0.7658, + "step": 600 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018127572016460905, + "loss": 0.7851, + "step": 605 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018106995884773663, + "loss": 0.7957, + "step": 610 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001808641975308642, + "loss": 0.7756, + "step": 615 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018065843621399178, + "loss": 0.7911, + "step": 620 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018045267489711934, + "loss": 0.7864, + "step": 625 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018024691358024692, + "loss": 0.7683, + "step": 630 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001800411522633745, + "loss": 0.7731, + "step": 635 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017983539094650205, + "loss": 0.7671, + "step": 640 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017962962962962963, + "loss": 0.7367, + "step": 645 + }, + { + "epoch": 0.26, + "learning_rate": 0.0001794238683127572, + "loss": 0.8024, + "step": 650 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017921810699588476, + "loss": 0.7572, + "step": 655 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017901234567901234, + "loss": 0.7554, + "step": 660 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017880658436213992, + "loss": 0.7677, + "step": 665 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001786008230452675, + "loss": 0.7652, + "step": 670 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017839506172839508, + "loss": 0.7771, + "step": 675 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017818930041152265, + "loss": 0.7747, + "step": 680 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001779835390946502, + "loss": 0.767, + "step": 685 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017777777777777779, + "loss": 0.7738, + "step": 690 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017757201646090537, + "loss": 0.7271, + "step": 695 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017736625514403294, + "loss": 0.7316, + "step": 700 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017716049382716052, + "loss": 0.7831, + "step": 705 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017695473251028808, + "loss": 0.7835, + "step": 710 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017674897119341566, + "loss": 0.7497, + "step": 715 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017654320987654323, + "loss": 0.7757, + "step": 720 + }, + { + "epoch": 0.29, + "learning_rate": 0.0001763374485596708, + "loss": 0.74, + "step": 725 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017613168724279837, + "loss": 0.7697, + "step": 730 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017592592592592595, + "loss": 0.774, + "step": 735 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017572016460905352, + "loss": 0.7668, + "step": 740 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017551440329218108, + "loss": 0.7779, + "step": 745 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017530864197530866, + "loss": 0.7441, + "step": 750 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017510288065843624, + "loss": 0.7578, + "step": 755 + }, + { + "epoch": 0.3, + "learning_rate": 0.0001748971193415638, + "loss": 0.8358, + "step": 760 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017469135802469137, + "loss": 0.7473, + "step": 765 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017448559670781895, + "loss": 0.7517, + "step": 770 + }, + { + "epoch": 0.31, + "learning_rate": 0.0001742798353909465, + "loss": 0.7593, + "step": 775 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017407407407407408, + "loss": 0.7251, + "step": 780 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017386831275720166, + "loss": 0.7365, + "step": 785 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017366255144032924, + "loss": 0.7798, + "step": 790 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001734567901234568, + "loss": 0.746, + "step": 795 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017325102880658437, + "loss": 0.7607, + "step": 800 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017304526748971195, + "loss": 0.7694, + "step": 805 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001728395061728395, + "loss": 0.7926, + "step": 810 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017263374485596708, + "loss": 0.795, + "step": 815 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017242798353909466, + "loss": 0.7581, + "step": 820 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017222222222222224, + "loss": 0.7629, + "step": 825 + }, + { + "epoch": 0.33, + "learning_rate": 0.0001720164609053498, + "loss": 0.7526, + "step": 830 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017181069958847737, + "loss": 0.7338, + "step": 835 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017160493827160495, + "loss": 0.7544, + "step": 840 + }, + { + "epoch": 0.34, + "learning_rate": 0.0001713991769547325, + "loss": 0.7522, + "step": 845 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017119341563786008, + "loss": 0.7639, + "step": 850 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017098765432098766, + "loss": 0.7914, + "step": 855 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017078189300411524, + "loss": 0.7635, + "step": 860 + }, + { + "epoch": 0.35, + "learning_rate": 0.0001705761316872428, + "loss": 0.8343, + "step": 865 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017037037037037037, + "loss": 0.7299, + "step": 870 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017016460905349795, + "loss": 0.7643, + "step": 875 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016995884773662553, + "loss": 0.7343, + "step": 880 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016975308641975308, + "loss": 0.7546, + "step": 885 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016954732510288066, + "loss": 0.7435, + "step": 890 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016934156378600824, + "loss": 0.8086, + "step": 895 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016913580246913582, + "loss": 0.7274, + "step": 900 + }, + { + "epoch": 0.36, + "learning_rate": 0.0001689300411522634, + "loss": 0.7511, + "step": 905 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016872427983539098, + "loss": 0.7689, + "step": 910 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016851851851851853, + "loss": 0.754, + "step": 915 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001683127572016461, + "loss": 0.7298, + "step": 920 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001681069958847737, + "loss": 0.7755, + "step": 925 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016790123456790124, + "loss": 0.7854, + "step": 930 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016769547325102882, + "loss": 0.7452, + "step": 935 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001674897119341564, + "loss": 0.7473, + "step": 940 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016728395061728398, + "loss": 0.7855, + "step": 945 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016707818930041153, + "loss": 0.7527, + "step": 950 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001668724279835391, + "loss": 0.7641, + "step": 955 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001666666666666667, + "loss": 0.828, + "step": 960 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016646090534979424, + "loss": 0.7571, + "step": 965 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016625514403292182, + "loss": 0.7768, + "step": 970 + }, + { + "epoch": 0.39, + "learning_rate": 0.0001660493827160494, + "loss": 0.7644, + "step": 975 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016584362139917695, + "loss": 0.7747, + "step": 980 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016563786008230453, + "loss": 0.7926, + "step": 985 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001654320987654321, + "loss": 0.7645, + "step": 990 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001652263374485597, + "loss": 0.7464, + "step": 995 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016502057613168724, + "loss": 0.7558, + "step": 1000 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016481481481481482, + "loss": 0.7574, + "step": 1005 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001646090534979424, + "loss": 0.7491, + "step": 1010 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016440329218106995, + "loss": 0.756, + "step": 1015 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016419753086419753, + "loss": 0.7679, + "step": 1020 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001639917695473251, + "loss": 0.776, + "step": 1025 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001637860082304527, + "loss": 0.7235, + "step": 1030 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016358024691358024, + "loss": 0.7817, + "step": 1035 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016337448559670782, + "loss": 0.7333, + "step": 1040 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001631687242798354, + "loss": 0.754, + "step": 1045 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016296296296296295, + "loss": 0.74, + "step": 1050 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016275720164609053, + "loss": 0.7857, + "step": 1055 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001625514403292181, + "loss": 0.8015, + "step": 1060 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001623456790123457, + "loss": 0.7508, + "step": 1065 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016213991769547324, + "loss": 0.7514, + "step": 1070 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016193415637860082, + "loss": 0.7326, + "step": 1075 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001617283950617284, + "loss": 0.7322, + "step": 1080 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016152263374485595, + "loss": 0.7373, + "step": 1085 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016131687242798353, + "loss": 0.7637, + "step": 1090 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001611111111111111, + "loss": 0.7697, + "step": 1095 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001609053497942387, + "loss": 0.7505, + "step": 1100 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016069958847736627, + "loss": 0.7568, + "step": 1105 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016049382716049385, + "loss": 0.786, + "step": 1110 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001602880658436214, + "loss": 0.7525, + "step": 1115 + }, + { + "epoch": 0.45, + "learning_rate": 0.00016008230452674898, + "loss": 0.7696, + "step": 1120 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015987654320987656, + "loss": 0.7648, + "step": 1125 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015967078189300414, + "loss": 0.7492, + "step": 1130 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001594650205761317, + "loss": 0.809, + "step": 1135 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015925925925925927, + "loss": 0.7592, + "step": 1140 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015905349794238685, + "loss": 0.7874, + "step": 1145 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015884773662551443, + "loss": 0.7874, + "step": 1150 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015864197530864198, + "loss": 0.7374, + "step": 1155 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015843621399176956, + "loss": 0.7218, + "step": 1160 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015823045267489714, + "loss": 0.7494, + "step": 1165 + }, + { + "epoch": 0.47, + "learning_rate": 0.0001580246913580247, + "loss": 0.7449, + "step": 1170 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015781893004115227, + "loss": 0.725, + "step": 1175 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015761316872427985, + "loss": 0.739, + "step": 1180 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015740740740740743, + "loss": 0.7554, + "step": 1185 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015720164609053498, + "loss": 0.7702, + "step": 1190 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015699588477366256, + "loss": 0.7418, + "step": 1195 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015679012345679014, + "loss": 0.7217, + "step": 1200 + }, + { + "epoch": 0.48, + "learning_rate": 0.0001565843621399177, + "loss": 0.7391, + "step": 1205 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015637860082304527, + "loss": 0.7696, + "step": 1210 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015617283950617285, + "loss": 0.7594, + "step": 1215 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001559670781893004, + "loss": 0.777, + "step": 1220 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015576131687242798, + "loss": 0.7441, + "step": 1225 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015555555555555556, + "loss": 0.7611, + "step": 1230 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015534979423868314, + "loss": 0.7278, + "step": 1235 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001551440329218107, + "loss": 0.7452, + "step": 1240 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015493827160493827, + "loss": 0.7939, + "step": 1245 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015473251028806585, + "loss": 0.7161, + "step": 1250 + }, + { + "epoch": 0.5, + "learning_rate": 0.0001545267489711934, + "loss": 0.7344, + "step": 1255 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015432098765432098, + "loss": 0.7368, + "step": 1260 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015411522633744856, + "loss": 0.7172, + "step": 1265 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015390946502057614, + "loss": 0.7589, + "step": 1270 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001537037037037037, + "loss": 0.7641, + "step": 1275 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015349794238683127, + "loss": 0.761, + "step": 1280 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015329218106995885, + "loss": 0.7414, + "step": 1285 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001530864197530864, + "loss": 0.7713, + "step": 1290 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015288065843621399, + "loss": 0.7543, + "step": 1295 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015267489711934156, + "loss": 0.7683, + "step": 1300 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015246913580246914, + "loss": 0.8106, + "step": 1305 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015226337448559672, + "loss": 0.7739, + "step": 1310 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015205761316872428, + "loss": 0.7585, + "step": 1315 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015185185185185185, + "loss": 0.7577, + "step": 1320 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015164609053497943, + "loss": 0.7608, + "step": 1325 + }, + { + "epoch": 0.53, + "learning_rate": 0.000151440329218107, + "loss": 0.7715, + "step": 1330 + }, + { + "epoch": 0.53, + "learning_rate": 0.0001512345679012346, + "loss": 0.7681, + "step": 1335 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015102880658436214, + "loss": 0.7476, + "step": 1340 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015082304526748972, + "loss": 0.7539, + "step": 1345 + }, + { + "epoch": 0.54, + "learning_rate": 0.0001506172839506173, + "loss": 0.7492, + "step": 1350 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015041152263374488, + "loss": 0.7491, + "step": 1355 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015020576131687243, + "loss": 0.7236, + "step": 1360 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015000000000000001, + "loss": 0.7328, + "step": 1365 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001497942386831276, + "loss": 0.7603, + "step": 1370 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014958847736625515, + "loss": 0.7206, + "step": 1375 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014938271604938272, + "loss": 0.7001, + "step": 1380 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001491769547325103, + "loss": 0.7241, + "step": 1385 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014897119341563788, + "loss": 0.7511, + "step": 1390 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014876543209876544, + "loss": 0.7546, + "step": 1395 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014855967078189301, + "loss": 0.762, + "step": 1400 + }, + { + "epoch": 0.56, + "learning_rate": 0.0001483539094650206, + "loss": 0.6979, + "step": 1405 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014814814814814815, + "loss": 0.7352, + "step": 1410 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014794238683127573, + "loss": 0.7604, + "step": 1415 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001477366255144033, + "loss": 0.7612, + "step": 1420 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014753086419753086, + "loss": 0.7618, + "step": 1425 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014732510288065844, + "loss": 0.7107, + "step": 1430 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014711934156378602, + "loss": 0.7247, + "step": 1435 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001469135802469136, + "loss": 0.7733, + "step": 1440 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014670781893004115, + "loss": 0.7627, + "step": 1445 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014650205761316873, + "loss": 0.7323, + "step": 1450 + }, + { + "epoch": 0.58, + "learning_rate": 0.0001462962962962963, + "loss": 0.7728, + "step": 1455 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014609053497942386, + "loss": 0.7541, + "step": 1460 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014588477366255144, + "loss": 0.7781, + "step": 1465 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014567901234567902, + "loss": 0.7474, + "step": 1470 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001454732510288066, + "loss": 0.7789, + "step": 1475 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014526748971193415, + "loss": 0.7497, + "step": 1480 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014506172839506173, + "loss": 0.7487, + "step": 1485 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001448559670781893, + "loss": 0.7563, + "step": 1490 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014465020576131686, + "loss": 0.7444, + "step": 1495 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014444444444444444, + "loss": 0.7399, + "step": 1500 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014423868312757202, + "loss": 0.7288, + "step": 1505 + }, + { + "epoch": 0.6, + "learning_rate": 0.0001440329218106996, + "loss": 0.7458, + "step": 1510 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014382716049382718, + "loss": 0.7297, + "step": 1515 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014362139917695473, + "loss": 0.7684, + "step": 1520 + }, + { + "epoch": 0.61, + "learning_rate": 0.0001434156378600823, + "loss": 0.7428, + "step": 1525 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014320987654320989, + "loss": 0.705, + "step": 1530 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014300411522633747, + "loss": 0.7445, + "step": 1535 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014279835390946504, + "loss": 0.7109, + "step": 1540 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001425925925925926, + "loss": 0.7502, + "step": 1545 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014238683127572018, + "loss": 0.7485, + "step": 1550 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014218106995884776, + "loss": 0.7421, + "step": 1555 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014197530864197534, + "loss": 0.7369, + "step": 1560 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001417695473251029, + "loss": 0.7746, + "step": 1565 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014156378600823047, + "loss": 0.7334, + "step": 1570 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014135802469135805, + "loss": 0.7251, + "step": 1575 + }, + { + "epoch": 0.63, + "learning_rate": 0.0001411522633744856, + "loss": 0.7146, + "step": 1580 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014094650205761318, + "loss": 0.7563, + "step": 1585 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014074074074074076, + "loss": 0.7247, + "step": 1590 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014053497942386834, + "loss": 0.7379, + "step": 1595 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001403292181069959, + "loss": 0.7684, + "step": 1600 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014012345679012347, + "loss": 0.7574, + "step": 1605 + }, + { + "epoch": 0.64, + "learning_rate": 0.00013991769547325105, + "loss": 0.7138, + "step": 1610 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001397119341563786, + "loss": 0.7472, + "step": 1615 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013950617283950618, + "loss": 0.7466, + "step": 1620 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013930041152263376, + "loss": 0.7288, + "step": 1625 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013909465020576134, + "loss": 0.7717, + "step": 1630 + }, + { + "epoch": 0.65, + "learning_rate": 0.0001388888888888889, + "loss": 0.7665, + "step": 1635 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013868312757201647, + "loss": 0.7408, + "step": 1640 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013847736625514405, + "loss": 0.7418, + "step": 1645 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001382716049382716, + "loss": 0.7502, + "step": 1650 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013806584362139918, + "loss": 0.7657, + "step": 1655 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013786008230452676, + "loss": 0.728, + "step": 1660 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001376543209876543, + "loss": 0.7142, + "step": 1665 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001374485596707819, + "loss": 0.7971, + "step": 1670 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013724279835390947, + "loss": 0.737, + "step": 1675 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013703703703703705, + "loss": 0.7947, + "step": 1680 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001368312757201646, + "loss": 0.7525, + "step": 1685 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013662551440329218, + "loss": 0.711, + "step": 1690 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013641975308641976, + "loss": 0.7459, + "step": 1695 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001362139917695473, + "loss": 0.7404, + "step": 1700 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001360082304526749, + "loss": 0.7458, + "step": 1705 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013580246913580247, + "loss": 0.754, + "step": 1710 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013559670781893005, + "loss": 0.7217, + "step": 1715 + }, + { + "epoch": 0.69, + "learning_rate": 0.0001353909465020576, + "loss": 0.7373, + "step": 1720 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013518518518518518, + "loss": 0.7567, + "step": 1725 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013497942386831276, + "loss": 0.7525, + "step": 1730 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013477366255144034, + "loss": 0.752, + "step": 1735 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013456790123456792, + "loss": 0.7342, + "step": 1740 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001343621399176955, + "loss": 0.7276, + "step": 1745 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013415637860082305, + "loss": 0.6915, + "step": 1750 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013395061728395063, + "loss": 0.737, + "step": 1755 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001337448559670782, + "loss": 0.7427, + "step": 1760 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001335390946502058, + "loss": 0.7126, + "step": 1765 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013333333333333334, + "loss": 0.7241, + "step": 1770 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013312757201646092, + "loss": 0.755, + "step": 1775 + }, + { + "epoch": 0.71, + "learning_rate": 0.0001329218106995885, + "loss": 0.7494, + "step": 1780 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013271604938271605, + "loss": 0.709, + "step": 1785 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013251028806584363, + "loss": 0.7555, + "step": 1790 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001323045267489712, + "loss": 0.7298, + "step": 1795 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001320987654320988, + "loss": 0.7232, + "step": 1800 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013189300411522634, + "loss": 0.7441, + "step": 1805 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013168724279835392, + "loss": 0.7623, + "step": 1810 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001314814814814815, + "loss": 0.7349, + "step": 1815 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013127572016460905, + "loss": 0.7773, + "step": 1820 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013106995884773663, + "loss": 0.7537, + "step": 1825 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001308641975308642, + "loss": 0.7579, + "step": 1830 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001306584362139918, + "loss": 0.7321, + "step": 1835 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013045267489711934, + "loss": 0.7175, + "step": 1840 + }, + { + "epoch": 0.74, + "learning_rate": 0.00013024691358024692, + "loss": 0.7553, + "step": 1845 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001300411522633745, + "loss": 0.7591, + "step": 1850 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012983539094650205, + "loss": 0.7581, + "step": 1855 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012962962962962963, + "loss": 0.7632, + "step": 1860 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001294238683127572, + "loss": 0.7434, + "step": 1865 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012921810699588476, + "loss": 0.7695, + "step": 1870 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012901234567901234, + "loss": 0.7808, + "step": 1875 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012880658436213992, + "loss": 0.7428, + "step": 1880 + }, + { + "epoch": 0.75, + "learning_rate": 0.0001286008230452675, + "loss": 0.7487, + "step": 1885 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012839506172839505, + "loss": 0.7033, + "step": 1890 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012818930041152263, + "loss": 0.7639, + "step": 1895 + }, + { + "epoch": 0.76, + "learning_rate": 0.0001279835390946502, + "loss": 0.7345, + "step": 1900 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012777777777777776, + "loss": 0.7434, + "step": 1905 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012757201646090534, + "loss": 0.7082, + "step": 1910 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012736625514403292, + "loss": 0.7294, + "step": 1915 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001271604938271605, + "loss": 0.74, + "step": 1920 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012695473251028805, + "loss": 0.7694, + "step": 1925 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012674897119341563, + "loss": 0.7339, + "step": 1930 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001265432098765432, + "loss": 0.7259, + "step": 1935 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001263374485596708, + "loss": 0.7307, + "step": 1940 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012613168724279837, + "loss": 0.7085, + "step": 1945 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012592592592592592, + "loss": 0.7662, + "step": 1950 + }, + { + "epoch": 0.78, + "learning_rate": 0.0001257201646090535, + "loss": 0.7145, + "step": 1955 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012551440329218108, + "loss": 0.7528, + "step": 1960 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012530864197530866, + "loss": 0.7308, + "step": 1965 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012510288065843624, + "loss": 0.7163, + "step": 1970 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001248971193415638, + "loss": 0.7254, + "step": 1975 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012469135802469137, + "loss": 0.7467, + "step": 1980 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012448559670781895, + "loss": 0.7391, + "step": 1985 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001242798353909465, + "loss": 0.7314, + "step": 1990 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012407407407407408, + "loss": 0.7048, + "step": 1995 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012386831275720166, + "loss": 0.7187, + "step": 2000 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012366255144032924, + "loss": 0.735, + "step": 2005 + }, + { + "epoch": 0.8, + "learning_rate": 0.0001234567901234568, + "loss": 0.7662, + "step": 2010 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012325102880658437, + "loss": 0.7437, + "step": 2015 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012304526748971195, + "loss": 0.7675, + "step": 2020 + }, + { + "epoch": 0.81, + "learning_rate": 0.0001228395061728395, + "loss": 0.7143, + "step": 2025 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012263374485596708, + "loss": 0.7101, + "step": 2030 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012242798353909466, + "loss": 0.7257, + "step": 2035 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012222222222222224, + "loss": 0.7522, + "step": 2040 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001220164609053498, + "loss": 0.7669, + "step": 2045 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012181069958847737, + "loss": 0.7283, + "step": 2050 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012160493827160495, + "loss": 0.7413, + "step": 2055 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001213991769547325, + "loss": 0.6988, + "step": 2060 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012119341563786008, + "loss": 0.7421, + "step": 2065 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012098765432098766, + "loss": 0.7152, + "step": 2070 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012078189300411524, + "loss": 0.7741, + "step": 2075 + }, + { + "epoch": 0.83, + "learning_rate": 0.0001205761316872428, + "loss": 0.7381, + "step": 2080 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012037037037037037, + "loss": 0.738, + "step": 2085 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012016460905349795, + "loss": 0.7258, + "step": 2090 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011995884773662552, + "loss": 0.7426, + "step": 2095 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011975308641975308, + "loss": 0.7185, + "step": 2100 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011954732510288066, + "loss": 0.7401, + "step": 2105 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011934156378600823, + "loss": 0.751, + "step": 2110 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011913580246913581, + "loss": 0.7284, + "step": 2115 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011893004115226339, + "loss": 0.7901, + "step": 2120 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011872427983539097, + "loss": 0.7432, + "step": 2125 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011851851851851852, + "loss": 0.7355, + "step": 2130 + }, + { + "epoch": 0.85, + "learning_rate": 0.0001183127572016461, + "loss": 0.7333, + "step": 2135 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011810699588477368, + "loss": 0.7504, + "step": 2140 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011790123456790123, + "loss": 0.7503, + "step": 2145 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011769547325102881, + "loss": 0.728, + "step": 2150 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011748971193415639, + "loss": 0.7485, + "step": 2155 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011728395061728397, + "loss": 0.7127, + "step": 2160 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011707818930041152, + "loss": 0.7278, + "step": 2165 + }, + { + "epoch": 0.87, + "learning_rate": 0.0001168724279835391, + "loss": 0.7513, + "step": 2170 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011666666666666668, + "loss": 0.7193, + "step": 2175 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011646090534979423, + "loss": 0.7245, + "step": 2180 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011625514403292181, + "loss": 0.7266, + "step": 2185 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011604938271604939, + "loss": 0.7531, + "step": 2190 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011584362139917696, + "loss": 0.7637, + "step": 2195 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011563786008230452, + "loss": 0.7388, + "step": 2200 + }, + { + "epoch": 0.88, + "learning_rate": 0.0001154320987654321, + "loss": 0.7222, + "step": 2205 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011522633744855968, + "loss": 0.7667, + "step": 2210 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011502057613168725, + "loss": 0.7382, + "step": 2215 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011481481481481482, + "loss": 0.7243, + "step": 2220 + }, + { + "epoch": 0.89, + "learning_rate": 0.0001146090534979424, + "loss": 0.7192, + "step": 2225 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011440329218106996, + "loss": 0.7237, + "step": 2230 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011419753086419754, + "loss": 0.7498, + "step": 2235 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011399176954732511, + "loss": 0.7007, + "step": 2240 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001137860082304527, + "loss": 0.758, + "step": 2245 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011358024691358025, + "loss": 0.7111, + "step": 2250 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011337448559670783, + "loss": 0.706, + "step": 2255 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001131687242798354, + "loss": 0.7423, + "step": 2260 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011296296296296296, + "loss": 0.7094, + "step": 2265 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011275720164609054, + "loss": 0.7331, + "step": 2270 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011255144032921812, + "loss": 0.7164, + "step": 2275 + }, + { + "epoch": 0.91, + "learning_rate": 0.0001123456790123457, + "loss": 0.7452, + "step": 2280 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011213991769547325, + "loss": 0.7172, + "step": 2285 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011193415637860083, + "loss": 0.7232, + "step": 2290 + }, + { + "epoch": 0.92, + "learning_rate": 0.0001117283950617284, + "loss": 0.7112, + "step": 2295 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011152263374485596, + "loss": 0.7459, + "step": 2300 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011131687242798354, + "loss": 0.7353, + "step": 2305 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011111111111111112, + "loss": 0.7406, + "step": 2310 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011090534979423868, + "loss": 0.7623, + "step": 2315 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011069958847736626, + "loss": 0.7567, + "step": 2320 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011049382716049384, + "loss": 0.7752, + "step": 2325 + }, + { + "epoch": 0.93, + "learning_rate": 0.0001102880658436214, + "loss": 0.7419, + "step": 2330 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011008230452674897, + "loss": 0.7244, + "step": 2335 + }, + { + "epoch": 0.93, + "learning_rate": 0.00010987654320987655, + "loss": 0.7553, + "step": 2340 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010967078189300413, + "loss": 0.7389, + "step": 2345 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010946502057613168, + "loss": 0.7002, + "step": 2350 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010925925925925926, + "loss": 0.7238, + "step": 2355 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010905349794238684, + "loss": 0.6923, + "step": 2360 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010884773662551442, + "loss": 0.7579, + "step": 2365 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010864197530864197, + "loss": 0.7291, + "step": 2370 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010843621399176955, + "loss": 0.721, + "step": 2375 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010823045267489713, + "loss": 0.7605, + "step": 2380 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010802469135802468, + "loss": 0.7297, + "step": 2385 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010781893004115226, + "loss": 0.7565, + "step": 2390 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010761316872427984, + "loss": 0.701, + "step": 2395 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010740740740740742, + "loss": 0.736, + "step": 2400 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010720164609053497, + "loss": 0.7079, + "step": 2405 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010699588477366255, + "loss": 0.7349, + "step": 2410 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010679012345679013, + "loss": 0.7106, + "step": 2415 + }, + { + "epoch": 0.97, + "learning_rate": 0.0001065843621399177, + "loss": 0.7396, + "step": 2420 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010637860082304528, + "loss": 0.7713, + "step": 2425 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010617283950617284, + "loss": 0.747, + "step": 2430 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010596707818930041, + "loss": 0.7475, + "step": 2435 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010576131687242799, + "loss": 0.7449, + "step": 2440 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010555555555555557, + "loss": 0.7208, + "step": 2445 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010534979423868315, + "loss": 0.7317, + "step": 2450 + }, + { + "epoch": 0.98, + "learning_rate": 0.0001051440329218107, + "loss": 0.7419, + "step": 2455 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010493827160493828, + "loss": 0.7148, + "step": 2460 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010473251028806586, + "loss": 0.7143, + "step": 2465 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010452674897119341, + "loss": 0.747, + "step": 2470 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010432098765432099, + "loss": 0.7079, + "step": 2475 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010411522633744857, + "loss": 0.7059, + "step": 2480 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010390946502057615, + "loss": 0.7272, + "step": 2485 + }, + { + "epoch": 0.99, + "learning_rate": 0.0001037037037037037, + "loss": 0.7281, + "step": 2490 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010349794238683128, + "loss": 0.6956, + "step": 2495 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010329218106995886, + "loss": 0.7571, + "step": 2500 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010308641975308641, + "loss": 0.7311, + "step": 2505 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010288065843621399, + "loss": 0.6815, + "step": 2510 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010267489711934157, + "loss": 0.6781, + "step": 2515 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010246913580246915, + "loss": 0.6948, + "step": 2520 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010226337448559671, + "loss": 0.7133, + "step": 2525 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010205761316872428, + "loss": 0.688, + "step": 2530 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010185185185185186, + "loss": 0.6687, + "step": 2535 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010164609053497942, + "loss": 0.7142, + "step": 2540 + }, + { + "epoch": 1.02, + "learning_rate": 0.000101440329218107, + "loss": 0.6885, + "step": 2545 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010123456790123458, + "loss": 0.6867, + "step": 2550 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010102880658436214, + "loss": 0.7045, + "step": 2555 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010082304526748971, + "loss": 0.7375, + "step": 2560 + }, + { + "epoch": 1.02, + "learning_rate": 0.0001006172839506173, + "loss": 0.7157, + "step": 2565 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010041152263374487, + "loss": 0.6828, + "step": 2570 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010020576131687243, + "loss": 0.7048, + "step": 2575 + }, + { + "epoch": 1.03, + "learning_rate": 0.0001, + "loss": 0.6944, + "step": 2580 + }, + { + "epoch": 1.03, + "learning_rate": 9.979423868312757e-05, + "loss": 0.696, + "step": 2585 + }, + { + "epoch": 1.03, + "learning_rate": 9.958847736625515e-05, + "loss": 0.6609, + "step": 2590 + }, + { + "epoch": 1.04, + "learning_rate": 9.938271604938272e-05, + "loss": 0.674, + "step": 2595 + }, + { + "epoch": 1.04, + "learning_rate": 9.91769547325103e-05, + "loss": 0.7138, + "step": 2600 + }, + { + "epoch": 1.04, + "learning_rate": 9.897119341563786e-05, + "loss": 0.713, + "step": 2605 + }, + { + "epoch": 1.04, + "learning_rate": 9.876543209876543e-05, + "loss": 0.7022, + "step": 2610 + }, + { + "epoch": 1.04, + "learning_rate": 9.8559670781893e-05, + "loss": 0.6955, + "step": 2615 + }, + { + "epoch": 1.05, + "learning_rate": 9.835390946502057e-05, + "loss": 0.6888, + "step": 2620 + }, + { + "epoch": 1.05, + "learning_rate": 9.814814814814815e-05, + "loss": 0.7003, + "step": 2625 + }, + { + "epoch": 1.05, + "learning_rate": 9.794238683127573e-05, + "loss": 0.7167, + "step": 2630 + }, + { + "epoch": 1.05, + "learning_rate": 9.77366255144033e-05, + "loss": 0.7087, + "step": 2635 + }, + { + "epoch": 1.05, + "learning_rate": 9.753086419753087e-05, + "loss": 0.7019, + "step": 2640 + }, + { + "epoch": 1.06, + "learning_rate": 9.732510288065844e-05, + "loss": 0.6609, + "step": 2645 + }, + { + "epoch": 1.06, + "learning_rate": 9.711934156378602e-05, + "loss": 0.7367, + "step": 2650 + }, + { + "epoch": 1.06, + "learning_rate": 9.691358024691359e-05, + "loss": 0.6862, + "step": 2655 + }, + { + "epoch": 1.06, + "learning_rate": 9.670781893004116e-05, + "loss": 0.7121, + "step": 2660 + }, + { + "epoch": 1.06, + "learning_rate": 9.650205761316873e-05, + "loss": 0.7031, + "step": 2665 + }, + { + "epoch": 1.07, + "learning_rate": 9.62962962962963e-05, + "loss": 0.7005, + "step": 2670 + }, + { + "epoch": 1.07, + "learning_rate": 9.609053497942388e-05, + "loss": 0.7041, + "step": 2675 + }, + { + "epoch": 1.07, + "learning_rate": 9.588477366255144e-05, + "loss": 0.6713, + "step": 2680 + }, + { + "epoch": 1.07, + "learning_rate": 9.567901234567902e-05, + "loss": 0.6932, + "step": 2685 + }, + { + "epoch": 1.07, + "learning_rate": 9.547325102880659e-05, + "loss": 0.6849, + "step": 2690 + }, + { + "epoch": 1.08, + "learning_rate": 9.526748971193417e-05, + "loss": 0.6915, + "step": 2695 + }, + { + "epoch": 1.08, + "learning_rate": 9.506172839506173e-05, + "loss": 0.6677, + "step": 2700 + }, + { + "epoch": 1.08, + "learning_rate": 9.48559670781893e-05, + "loss": 0.6767, + "step": 2705 + }, + { + "epoch": 1.08, + "learning_rate": 9.465020576131688e-05, + "loss": 0.6873, + "step": 2710 + }, + { + "epoch": 1.08, + "learning_rate": 9.444444444444444e-05, + "loss": 0.7007, + "step": 2715 + }, + { + "epoch": 1.09, + "learning_rate": 9.423868312757202e-05, + "loss": 0.6782, + "step": 2720 + }, + { + "epoch": 1.09, + "learning_rate": 9.403292181069959e-05, + "loss": 0.7044, + "step": 2725 + }, + { + "epoch": 1.09, + "learning_rate": 9.382716049382717e-05, + "loss": 0.6787, + "step": 2730 + }, + { + "epoch": 1.09, + "learning_rate": 9.362139917695473e-05, + "loss": 0.6876, + "step": 2735 + }, + { + "epoch": 1.09, + "learning_rate": 9.341563786008231e-05, + "loss": 0.7253, + "step": 2740 + }, + { + "epoch": 1.1, + "learning_rate": 9.320987654320989e-05, + "loss": 0.7159, + "step": 2745 + }, + { + "epoch": 1.1, + "learning_rate": 9.300411522633746e-05, + "loss": 0.704, + "step": 2750 + }, + { + "epoch": 1.1, + "learning_rate": 9.279835390946504e-05, + "loss": 0.6882, + "step": 2755 + }, + { + "epoch": 1.1, + "learning_rate": 9.25925925925926e-05, + "loss": 0.6777, + "step": 2760 + }, + { + "epoch": 1.1, + "learning_rate": 9.238683127572017e-05, + "loss": 0.7133, + "step": 2765 + }, + { + "epoch": 1.11, + "learning_rate": 9.218106995884775e-05, + "loss": 0.6988, + "step": 2770 + }, + { + "epoch": 1.11, + "learning_rate": 9.197530864197531e-05, + "loss": 0.7323, + "step": 2775 + }, + { + "epoch": 1.11, + "learning_rate": 9.176954732510289e-05, + "loss": 0.6854, + "step": 2780 + }, + { + "epoch": 1.11, + "learning_rate": 9.156378600823046e-05, + "loss": 0.6926, + "step": 2785 + }, + { + "epoch": 1.11, + "learning_rate": 9.135802469135802e-05, + "loss": 0.6985, + "step": 2790 + }, + { + "epoch": 1.12, + "learning_rate": 9.11522633744856e-05, + "loss": 0.6776, + "step": 2795 + }, + { + "epoch": 1.12, + "learning_rate": 9.094650205761317e-05, + "loss": 0.7374, + "step": 2800 + }, + { + "epoch": 1.12, + "learning_rate": 9.074074074074075e-05, + "loss": 0.6928, + "step": 2805 + }, + { + "epoch": 1.12, + "learning_rate": 9.053497942386831e-05, + "loss": 0.7129, + "step": 2810 + }, + { + "epoch": 1.12, + "learning_rate": 9.032921810699589e-05, + "loss": 0.6918, + "step": 2815 + }, + { + "epoch": 1.13, + "learning_rate": 9.012345679012346e-05, + "loss": 0.6641, + "step": 2820 + }, + { + "epoch": 1.13, + "learning_rate": 8.991769547325102e-05, + "loss": 0.7075, + "step": 2825 + }, + { + "epoch": 1.13, + "learning_rate": 8.97119341563786e-05, + "loss": 0.668, + "step": 2830 + }, + { + "epoch": 1.13, + "learning_rate": 8.950617283950617e-05, + "loss": 0.6836, + "step": 2835 + }, + { + "epoch": 1.13, + "learning_rate": 8.930041152263375e-05, + "loss": 0.672, + "step": 2840 + }, + { + "epoch": 1.14, + "learning_rate": 8.909465020576133e-05, + "loss": 0.6827, + "step": 2845 + }, + { + "epoch": 1.14, + "learning_rate": 8.888888888888889e-05, + "loss": 0.6976, + "step": 2850 + }, + { + "epoch": 1.14, + "learning_rate": 8.868312757201647e-05, + "loss": 0.6719, + "step": 2855 + }, + { + "epoch": 1.14, + "learning_rate": 8.847736625514404e-05, + "loss": 0.6871, + "step": 2860 + }, + { + "epoch": 1.14, + "learning_rate": 8.827160493827162e-05, + "loss": 0.6975, + "step": 2865 + }, + { + "epoch": 1.15, + "learning_rate": 8.806584362139918e-05, + "loss": 0.684, + "step": 2870 + }, + { + "epoch": 1.15, + "learning_rate": 8.786008230452676e-05, + "loss": 0.6861, + "step": 2875 + }, + { + "epoch": 1.15, + "learning_rate": 8.765432098765433e-05, + "loss": 0.7116, + "step": 2880 + }, + { + "epoch": 1.15, + "learning_rate": 8.74485596707819e-05, + "loss": 0.686, + "step": 2885 + }, + { + "epoch": 1.15, + "learning_rate": 8.724279835390947e-05, + "loss": 0.677, + "step": 2890 + }, + { + "epoch": 1.16, + "learning_rate": 8.703703703703704e-05, + "loss": 0.6996, + "step": 2895 + }, + { + "epoch": 1.16, + "learning_rate": 8.683127572016462e-05, + "loss": 0.7211, + "step": 2900 + }, + { + "epoch": 1.16, + "learning_rate": 8.662551440329218e-05, + "loss": 0.6766, + "step": 2905 + }, + { + "epoch": 1.16, + "learning_rate": 8.641975308641975e-05, + "loss": 0.6883, + "step": 2910 + }, + { + "epoch": 1.16, + "learning_rate": 8.621399176954733e-05, + "loss": 0.6829, + "step": 2915 + }, + { + "epoch": 1.17, + "learning_rate": 8.60082304526749e-05, + "loss": 0.7089, + "step": 2920 + }, + { + "epoch": 1.17, + "learning_rate": 8.580246913580247e-05, + "loss": 0.6711, + "step": 2925 + }, + { + "epoch": 1.17, + "learning_rate": 8.559670781893004e-05, + "loss": 0.6926, + "step": 2930 + }, + { + "epoch": 1.17, + "learning_rate": 8.539094650205762e-05, + "loss": 0.6513, + "step": 2935 + }, + { + "epoch": 1.17, + "learning_rate": 8.518518518518518e-05, + "loss": 0.6817, + "step": 2940 + }, + { + "epoch": 1.18, + "learning_rate": 8.497942386831276e-05, + "loss": 0.7005, + "step": 2945 + }, + { + "epoch": 1.18, + "learning_rate": 8.477366255144033e-05, + "loss": 0.7013, + "step": 2950 + }, + { + "epoch": 1.18, + "learning_rate": 8.456790123456791e-05, + "loss": 0.6562, + "step": 2955 + }, + { + "epoch": 1.18, + "learning_rate": 8.436213991769549e-05, + "loss": 0.7074, + "step": 2960 + }, + { + "epoch": 1.18, + "learning_rate": 8.415637860082305e-05, + "loss": 0.6901, + "step": 2965 + }, + { + "epoch": 1.19, + "learning_rate": 8.395061728395062e-05, + "loss": 0.6867, + "step": 2970 + }, + { + "epoch": 1.19, + "learning_rate": 8.37448559670782e-05, + "loss": 0.692, + "step": 2975 + }, + { + "epoch": 1.19, + "learning_rate": 8.353909465020576e-05, + "loss": 0.6863, + "step": 2980 + }, + { + "epoch": 1.19, + "learning_rate": 8.333333333333334e-05, + "loss": 0.6881, + "step": 2985 + }, + { + "epoch": 1.19, + "learning_rate": 8.312757201646091e-05, + "loss": 0.7203, + "step": 2990 + }, + { + "epoch": 1.2, + "learning_rate": 8.292181069958848e-05, + "loss": 0.7075, + "step": 2995 + }, + { + "epoch": 1.2, + "learning_rate": 8.271604938271605e-05, + "loss": 0.7187, + "step": 3000 + } + ], + "logging_steps": 5, + "max_steps": 5010, + "num_input_tokens_seen": 0, + "num_train_epochs": 2, + "save_steps": 500, + "total_flos": 1.2080552599774822e+19, + "train_batch_size": 1, + "trial_name": null, + "trial_params": null +} diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/training_args.bin b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/training_args.bin new file mode 100644 index 0000000000000000000000000000000000000000..e707059a03fbe62142ac41332e145ac1ac1f36cc --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b99a1729574e0e46ee782b42dc90101a785d5b4792871920d293f44722c28cc +size 5944 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/zero_to_fp32.py b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/zero_to_fp32.py new file mode 100644 index 0000000000000000000000000000000000000000..c98caae31534368be22b67fc4ae906836c992a8d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3000/zero_to_fp32.py @@ -0,0 +1,587 @@ +#!/usr/bin/env python + +# Copyright (c) Microsoft Corporation. +# SPDX-License-Identifier: Apache-2.0 + +# DeepSpeed Team + +# This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets +# copied into the top level checkpoint dir, so the user can easily do the conversion at any point in +# the future. Once extracted, the weights don't require DeepSpeed and can be used in any +# application. +# +# example: python zero_to_fp32.py . pytorch_model.bin + +import argparse +import torch +import glob +import math +import os +import re +from collections import OrderedDict +from dataclasses import dataclass + +# while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with +# DeepSpeed data structures it has to be available in the current python environment. +from deepspeed.utils import logger +from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS, + FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES, + FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS) + + +@dataclass +class zero_model_state: + buffers: dict() + param_shapes: dict() + shared_params: list + ds_version: int + frozen_param_shapes: dict() + frozen_param_fragments: dict() + + +debug = 0 + +# load to cpu +device = torch.device('cpu') + + +def atoi(text): + return int(text) if text.isdigit() else text + + +def natural_keys(text): + ''' + alist.sort(key=natural_keys) sorts in human order + http://nedbatchelder.com/blog/200712/human_sorting.html + (See Toothy's implementation in the comments) + ''' + return [atoi(c) for c in re.split(r'(\d+)', text)] + + +def get_model_state_file(checkpoint_dir, zero_stage): + if not os.path.isdir(checkpoint_dir): + raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist") + + # there should be only one file + if zero_stage <= 2: + file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt") + elif zero_stage == 3: + file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt") + + if not os.path.exists(file): + raise FileNotFoundError(f"can't find model states file at '{file}'") + + return file + + +def get_checkpoint_files(checkpoint_dir, glob_pattern): + # XXX: need to test that this simple glob rule works for multi-node setup too + ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys) + + if len(ckpt_files) == 0: + raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'") + + return ckpt_files + + +def get_optim_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt") + + +def get_model_state_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_model_states.pt") + + +def parse_model_states(files): + zero_model_states = [] + for file in files: + state_dict = torch.load(file, map_location=device) + + if BUFFER_NAMES not in state_dict: + raise ValueError(f"{file} is not a model state checkpoint") + buffer_names = state_dict[BUFFER_NAMES] + if debug: + print("Found buffers:", buffer_names) + + # recover just the buffers while restoring them to fp32 if they were saved in fp16 + buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names} + param_shapes = state_dict[PARAM_SHAPES] + + # collect parameters that are included in param_shapes + param_names = [] + for s in param_shapes: + for name in s.keys(): + param_names.append(name) + + # update with frozen parameters + frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None) + if frozen_param_shapes is not None: + if debug: + print(f"Found frozen_param_shapes: {frozen_param_shapes}") + param_names += list(frozen_param_shapes.keys()) + + # handle shared params + shared_params = [[k, v] for k, v in state_dict["shared_params"].items()] + + ds_version = state_dict.get(DS_VERSION, None) + + frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None) + + z_model_state = zero_model_state(buffers=buffers, + param_shapes=param_shapes, + shared_params=shared_params, + ds_version=ds_version, + frozen_param_shapes=frozen_param_shapes, + frozen_param_fragments=frozen_param_fragments) + zero_model_states.append(z_model_state) + + return zero_model_states + + +def parse_optim_states(files, ds_checkpoint_dir): + + total_files = len(files) + state_dicts = [] + for f in files: + state_dict = torch.load(f, map_location=device) + # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights + # and also handle the case where it was already removed by another helper script + state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None) + state_dicts.append(state_dict) + + if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]: + raise ValueError(f"{files[0]} is not a zero checkpoint") + zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE] + world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT] + + # For ZeRO-2 each param group can have different partition_count as data parallelism for expert + # parameters can be different from data parallelism for non-expert parameters. So we can just + # use the max of the partition_count to get the dp world_size. + + if type(world_size) is list: + world_size = max(world_size) + + if world_size != total_files: + raise ValueError( + f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. " + "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes." + ) + + # the groups are named differently in each stage + if zero_stage <= 2: + fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS + elif zero_stage == 3: + fp32_groups_key = FP32_FLAT_GROUPS + else: + raise ValueError(f"unknown zero stage {zero_stage}") + + if zero_stage <= 2: + fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))] + elif zero_stage == 3: + # if there is more than one param group, there will be multiple flattened tensors - one + # flattened tensor per group - for simplicity merge them into a single tensor + # + # XXX: could make the script more memory efficient for when there are multiple groups - it + # will require matching the sub-lists of param_shapes for each param group flattened tensor + + fp32_flat_groups = [ + torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts)) + ] + + return zero_stage, world_size, fp32_flat_groups + + +def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir): + """ + Returns fp32 state_dict reconstructed from ds checkpoint + + Args: + - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are) + + """ + print(f"Processing zero checkpoint '{ds_checkpoint_dir}'") + + optim_files = get_optim_files(ds_checkpoint_dir) + zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir) + print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}") + + model_files = get_model_state_files(ds_checkpoint_dir) + + zero_model_states = parse_model_states(model_files) + print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}') + + if zero_stage <= 2: + return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states) + elif zero_stage == 3: + return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states) + + +def _zero2_merge_frozen_params(state_dict, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + frozen_param_fragments = zero_model_states[0].frozen_param_fragments + + if debug: + num_elem = sum(s.numel() for s in frozen_param_shapes.values()) + print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in frozen_param_fragments.values()]) + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + state_dict[name] = frozen_param_fragments[name] + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + + # Reconstruction protocol: + # + # XXX: document this + + if debug: + for i in range(world_size): + for j in range(len(fp32_flat_groups[0])): + print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}") + + # XXX: memory usage doubles here (zero2) + num_param_groups = len(fp32_flat_groups[0]) + merged_single_partition_of_fp32_groups = [] + for i in range(num_param_groups): + merged_partitions = [sd[i] for sd in fp32_flat_groups] + full_single_fp32_vector = torch.cat(merged_partitions, 0) + merged_single_partition_of_fp32_groups.append(full_single_fp32_vector) + avail_numel = sum( + [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups]) + + if debug: + wanted_params = sum([len(shapes) for shapes in param_shapes]) + wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes]) + # not asserting if there is a mismatch due to possible padding + print(f"Have {avail_numel} numels to process.") + print(f"Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + total_numel = 0 + total_params = 0 + for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups): + offset = 0 + avail_numel = full_single_fp32_vector.numel() + for name, shape in shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape) + offset += unpartitioned_numel + + # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and + # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex + # paddings performed in the code it's almost impossible to predict the exact numbers w/o the + # live optimizer object, so we are checking that the numbers are within the right range + align_to = 2 * world_size + + def zero2_align(x): + return align_to * math.ceil(x / align_to) + + if debug: + print(f"original offset={offset}, avail_numel={avail_numel}") + + offset = zero2_align(offset) + avail_numel = zero2_align(avail_numel) + + if debug: + print(f"aligned offset={offset}, avail_numel={avail_numel}") + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero2_merge_frozen_params(state_dict, zero_model_states) + + _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def zero3_partitioned_param_info(unpartitioned_numel, world_size): + remainder = unpartitioned_numel % world_size + padding_numel = (world_size - remainder) if remainder else 0 + partitioned_numel = math.ceil(unpartitioned_numel / world_size) + return partitioned_numel, padding_numel + + +def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + if debug: + for i in range(world_size): + num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values()) + print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in zero_model_states[0].frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states) + state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape) + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + avail_numel = fp32_flat_groups[0].numel() * world_size + # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each + # param, re-consolidating each param, while dealing with padding if any + + # merge list of dicts, preserving order + param_shapes = {k: v for d in param_shapes for k, v in d.items()} + + if debug: + for i in range(world_size): + print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}") + + wanted_params = len(param_shapes) + wanted_numel = sum(shape.numel() for shape in param_shapes.values()) + # not asserting if there is a mismatch due to possible padding + avail_numel = fp32_flat_groups[0].numel() * world_size + print(f"Trainable params: Have {avail_numel} numels to process.") + print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + offset = 0 + total_numel = 0 + total_params = 0 + for name, shape in param_shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + # XXX: memory usage doubles here + state_dict[name] = torch.cat( + tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)), + 0).narrow(0, 0, unpartitioned_numel).view(shape) + offset += partitioned_numel + + offset *= world_size + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero3_merge_frozen_params(state_dict, world_size, zero_model_states) + + _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with + ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example + via a model hub. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14`` + + Returns: + - pytorch ``state_dict`` + + Note: this approach may not work if your application doesn't have sufficient free CPU memory and + you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with + the checkpoint. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint + # do the training and checkpoint saving + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu + model = model.cpu() # move to cpu + model.load_state_dict(state_dict) + # submit to model hub or save the model to share with others + + In this example the ``model`` will no longer be usable in the deepspeed context of the same + application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead. + + """ + if tag is None: + latest_path = os.path.join(checkpoint_dir, 'latest') + if os.path.isfile(latest_path): + with open(latest_path, 'r') as fd: + tag = fd.read().strip() + else: + raise ValueError(f"Unable to find 'latest' file at {latest_path}") + + ds_checkpoint_dir = os.path.join(checkpoint_dir, tag) + + if not os.path.isdir(ds_checkpoint_dir): + raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist") + + return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir) + + +def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be + loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + """ + + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + print(f"Saving fp32 state dict to {output_file}") + torch.save(state_dict, output_file) + + +def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None): + """ + 1. Put the provided model to cpu + 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` + 3. Load it into the provided model + + Args: + - ``model``: the model object to update + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + + Returns: + - ``model`: modified model + + Make sure you have plenty of CPU memory available before you call this function. If you don't + have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it + conveniently placed for you in the checkpoint folder. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint + model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir) + # submit to model hub or save the model to share with others + + Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context + of the same application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + """ + logger.info(f"Extracting fp32 weights") + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + + logger.info(f"Overwriting model with fp32 weights") + model = model.cpu() + model.load_state_dict(state_dict, strict=False) + + return model + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("checkpoint_dir", + type=str, + help="path to the desired checkpoint folder, e.g., path/checkpoint-12") + parser.add_argument( + "output_file", + type=str, + help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)") + parser.add_argument("-t", + "--tag", + type=str, + default=None, + help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1") + parser.add_argument("-d", "--debug", action='store_true', help="enable debug") + args = parser.parse_args() + + debug = args.debug + + convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag) diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/README.md b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d380bbbf0bf0fa1f211b53410559607e5007a209 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/README.md @@ -0,0 +1,202 @@ +--- +library_name: peft +base_model: meta-llama/Llama-2-7b-hf +--- + +# Model Card for Model ID + + + + + +## Model Details + +### Model Description + + + + + +- **Developed by:** [More Information Needed] +- **Funded by [optional]:** [More Information Needed] +- **Shared by [optional]:** [More Information Needed] +- **Model type:** [More Information Needed] +- **Language(s) (NLP):** [More Information Needed] +- **License:** [More Information Needed] +- **Finetuned from model [optional]:** [More Information Needed] + +### Model Sources [optional] + + + +- **Repository:** [More Information Needed] +- **Paper [optional]:** [More Information Needed] +- **Demo [optional]:** [More Information Needed] + +## Uses + + + +### Direct Use + + + +[More Information Needed] + +### Downstream Use [optional] + + + +[More Information Needed] + +### Out-of-Scope Use + + + +[More Information Needed] + +## Bias, Risks, and Limitations + + + +[More Information Needed] + +### Recommendations + + + +Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. + +## How to Get Started with the Model + +Use the code below to get started with the model. + +[More Information Needed] + +## Training Details + +### Training Data + + + +[More Information Needed] + +### Training Procedure + + + +#### Preprocessing [optional] + +[More Information Needed] + + +#### Training Hyperparameters + +- **Training regime:** [More Information Needed] + +#### Speeds, Sizes, Times [optional] + + + +[More Information Needed] + +## Evaluation + + + +### Testing Data, Factors & Metrics + +#### Testing Data + + + +[More Information Needed] + +#### Factors + + + +[More Information Needed] + +#### Metrics + + + +[More Information Needed] + +### Results + +[More Information Needed] + +#### Summary + + + +## Model Examination [optional] + + + +[More Information Needed] + +## Environmental Impact + + + +Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700). + +- **Hardware Type:** [More Information Needed] +- **Hours used:** [More Information Needed] +- **Cloud Provider:** [More Information Needed] +- **Compute Region:** [More Information Needed] +- **Carbon Emitted:** [More Information Needed] + +## Technical Specifications [optional] + +### Model Architecture and Objective + +[More Information Needed] + +### Compute Infrastructure + +[More Information Needed] + +#### Hardware + +[More Information Needed] + +#### Software + +[More Information Needed] + +## Citation [optional] + + + +**BibTeX:** + +[More Information Needed] + +**APA:** + +[More Information Needed] + +## Glossary [optional] + + + +[More Information Needed] + +## More Information [optional] + +[More Information Needed] + +## Model Card Authors [optional] + +[More Information Needed] + +## Model Card Contact + +[More Information Needed] +### Framework versions + +- PEFT 0.9.0 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/adapter_config.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/adapter_config.json new file mode 100644 index 0000000000000000000000000000000000000000..9c81a592f0ff08374a4f61f6003029070a8429ae --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/adapter_config.json @@ -0,0 +1,35 @@ +{ + "alpha_pattern": {}, + "auto_mapping": null, + "base_model_name_or_path": "meta-llama/Llama-2-7b-hf", + "bias": "none", + "fan_in_fan_out": false, + "inference_mode": true, + "init_lora_weights": true, + "layers_pattern": null, + "layers_to_transform": null, + "loftq_config": {}, + "lora_alpha": 16, + "lora_dropout": 0.05, + "megatron_config": null, + "megatron_core": "megatron.core", + "modules_to_save": null, + "mora_type": 1, + "peft_type": "LORA", + "r": 8, + "rank_pattern": {}, + "revision": null, + "target_modules": [ + "q_proj", + "k_proj", + "v_proj", + "o_proj", + "gate_proj", + "down_proj", + "up_proj" + ], + "task_type": "CAUSAL_LM", + "use_dora": false, + "use_mora": false, + "use_rslora": false +} \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/adapter_model.safetensors b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/adapter_model.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..56c01ad2bac411f86a23c71238e57b117dbae71a --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/adapter_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f825f1c91ef88e469dc88e5c1f974f5e9863bf41613c313f3edb86f79b997d8 +size 564342240 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/global_step3500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/global_step3500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..a1500106df4d9d6b40c10087707bfc750007695a --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/global_step3500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9dd2a5a634f9136b34bafaf7ebf5ae6e1bd68bd0d6ab19c9c9f1ce2e0bf2964 +size 239914224 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/global_step3500/mp_rank_00_model_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/global_step3500/mp_rank_00_model_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..9f04d2d3589976b23f26ca624531ad5bd8191ab1 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/global_step3500/mp_rank_00_model_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce6fd22ddaaae068ca6f0d80e6862c5c460bb52fddab7d0d7c1a8bebc630eda2 +size 40303404 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/latest b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/latest new file mode 100644 index 0000000000000000000000000000000000000000..f3af93198d9ca215e3991f85bf3781ae5dfe71f3 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/latest @@ -0,0 +1 @@ +global_step3500 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/rng_state.pth b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/rng_state.pth new file mode 100644 index 0000000000000000000000000000000000000000..b19f858646e4561a537cbc37fd2ba0f1ec9557d4 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/rng_state.pth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88769897e04293935730651f96c7d6f6c9d8615f4112479ca9a2282704b6192a +size 14244 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/scheduler.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/scheduler.pt new file mode 100644 index 0000000000000000000000000000000000000000..b0265f30b2483860c14312296fa7e203718592a3 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/scheduler.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e760dff0fb35054d078fc10a68a9b3f94efee1e1f7c7a5303dc355ea6cc41b4 +size 1064 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/trainer_state.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/trainer_state.json new file mode 100644 index 0000000000000000000000000000000000000000..e5024ff931606bcd2b2b9f378ed8d21fc375bf07 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/trainer_state.json @@ -0,0 +1,4221 @@ +{ + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 1.3970748744815542, + "eval_steps": 500, + "global_step": 3500, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.0, + "learning_rate": 6.666666666666667e-06, + "loss": 1.3797, + "step": 5 + }, + { + "epoch": 0.0, + "learning_rate": 1.3333333333333333e-05, + "loss": 1.3952, + "step": 10 + }, + { + "epoch": 0.01, + "learning_rate": 2e-05, + "loss": 1.3112, + "step": 15 + }, + { + "epoch": 0.01, + "learning_rate": 2.6666666666666667e-05, + "loss": 1.3136, + "step": 20 + }, + { + "epoch": 0.01, + "learning_rate": 3.3333333333333335e-05, + "loss": 1.2012, + "step": 25 + }, + { + "epoch": 0.01, + "learning_rate": 4e-05, + "loss": 1.1277, + "step": 30 + }, + { + "epoch": 0.01, + "learning_rate": 4.666666666666667e-05, + "loss": 1.0832, + "step": 35 + }, + { + "epoch": 0.02, + "learning_rate": 5.333333333333333e-05, + "loss": 1.0659, + "step": 40 + }, + { + "epoch": 0.02, + "learning_rate": 6e-05, + "loss": 0.983, + "step": 45 + }, + { + "epoch": 0.02, + "learning_rate": 6.666666666666667e-05, + "loss": 0.9763, + "step": 50 + }, + { + "epoch": 0.02, + "learning_rate": 7.333333333333333e-05, + "loss": 0.9992, + "step": 55 + }, + { + "epoch": 0.02, + "learning_rate": 8e-05, + "loss": 0.9405, + "step": 60 + }, + { + "epoch": 0.03, + "learning_rate": 8.666666666666667e-05, + "loss": 0.9827, + "step": 65 + }, + { + "epoch": 0.03, + "learning_rate": 9.333333333333334e-05, + "loss": 0.9061, + "step": 70 + }, + { + "epoch": 0.03, + "learning_rate": 0.0001, + "loss": 0.8921, + "step": 75 + }, + { + "epoch": 0.03, + "learning_rate": 0.00010666666666666667, + "loss": 0.9377, + "step": 80 + }, + { + "epoch": 0.03, + "learning_rate": 0.00011333333333333334, + "loss": 0.8528, + "step": 85 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012, + "loss": 0.8913, + "step": 90 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012666666666666666, + "loss": 0.8562, + "step": 95 + }, + { + "epoch": 0.04, + "learning_rate": 0.00013333333333333334, + "loss": 0.877, + "step": 100 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014, + "loss": 0.8781, + "step": 105 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014666666666666666, + "loss": 0.8546, + "step": 110 + }, + { + "epoch": 0.05, + "learning_rate": 0.00015333333333333334, + "loss": 0.8672, + "step": 115 + }, + { + "epoch": 0.05, + "learning_rate": 0.00016, + "loss": 0.8611, + "step": 120 + }, + { + "epoch": 0.05, + "learning_rate": 0.0001666666666666667, + "loss": 0.8624, + "step": 125 + }, + { + "epoch": 0.05, + "learning_rate": 0.00017333333333333334, + "loss": 0.8477, + "step": 130 + }, + { + "epoch": 0.05, + "learning_rate": 0.00018, + "loss": 0.8227, + "step": 135 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001866666666666667, + "loss": 0.8064, + "step": 140 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019333333333333333, + "loss": 0.8422, + "step": 145 + }, + { + "epoch": 0.06, + "learning_rate": 0.0002, + "loss": 0.8471, + "step": 150 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001997942386831276, + "loss": 0.8183, + "step": 155 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019958847736625514, + "loss": 0.8229, + "step": 160 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019938271604938272, + "loss": 0.8114, + "step": 165 + }, + { + "epoch": 0.07, + "learning_rate": 0.0001991769547325103, + "loss": 0.7861, + "step": 170 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019897119341563788, + "loss": 0.841, + "step": 175 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019876543209876543, + "loss": 0.8549, + "step": 180 + }, + { + "epoch": 0.07, + "learning_rate": 0.000198559670781893, + "loss": 0.8449, + "step": 185 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001983539094650206, + "loss": 0.8311, + "step": 190 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019814814814814814, + "loss": 0.8296, + "step": 195 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019794238683127572, + "loss": 0.8263, + "step": 200 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001977366255144033, + "loss": 0.8452, + "step": 205 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019753086419753085, + "loss": 0.8044, + "step": 210 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019732510288065843, + "loss": 0.8119, + "step": 215 + }, + { + "epoch": 0.09, + "learning_rate": 0.000197119341563786, + "loss": 0.8127, + "step": 220 + }, + { + "epoch": 0.09, + "learning_rate": 0.0001969135802469136, + "loss": 0.7921, + "step": 225 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019670781893004114, + "loss": 0.803, + "step": 230 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019650205761316872, + "loss": 0.838, + "step": 235 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001962962962962963, + "loss": 0.7801, + "step": 240 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019609053497942388, + "loss": 0.817, + "step": 245 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019588477366255146, + "loss": 0.8211, + "step": 250 + }, + { + "epoch": 0.1, + "learning_rate": 0.000195679012345679, + "loss": 0.8423, + "step": 255 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001954732510288066, + "loss": 0.8007, + "step": 260 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019526748971193417, + "loss": 0.8135, + "step": 265 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019506172839506175, + "loss": 0.7961, + "step": 270 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019485596707818933, + "loss": 0.797, + "step": 275 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019465020576131688, + "loss": 0.793, + "step": 280 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019444444444444446, + "loss": 0.7809, + "step": 285 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019423868312757204, + "loss": 0.7811, + "step": 290 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019403292181069962, + "loss": 0.8074, + "step": 295 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019382716049382717, + "loss": 0.8028, + "step": 300 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019362139917695475, + "loss": 0.7895, + "step": 305 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019341563786008233, + "loss": 0.7777, + "step": 310 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019320987654320988, + "loss": 0.7868, + "step": 315 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019300411522633746, + "loss": 0.7921, + "step": 320 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019279835390946504, + "loss": 0.8, + "step": 325 + }, + { + "epoch": 0.13, + "learning_rate": 0.0001925925925925926, + "loss": 0.7781, + "step": 330 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019238683127572017, + "loss": 0.7799, + "step": 335 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019218106995884775, + "loss": 0.7921, + "step": 340 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019197530864197533, + "loss": 0.7851, + "step": 345 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019176954732510288, + "loss": 0.8106, + "step": 350 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019156378600823046, + "loss": 0.7953, + "step": 355 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019135802469135804, + "loss": 0.8084, + "step": 360 + }, + { + "epoch": 0.15, + "learning_rate": 0.0001911522633744856, + "loss": 0.8298, + "step": 365 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019094650205761317, + "loss": 0.8273, + "step": 370 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019074074074074075, + "loss": 0.8047, + "step": 375 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019053497942386833, + "loss": 0.8108, + "step": 380 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019032921810699588, + "loss": 0.8207, + "step": 385 + }, + { + "epoch": 0.16, + "learning_rate": 0.00019012345679012346, + "loss": 0.7884, + "step": 390 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018991769547325104, + "loss": 0.7918, + "step": 395 + }, + { + "epoch": 0.16, + "learning_rate": 0.0001897119341563786, + "loss": 0.7554, + "step": 400 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018950617283950617, + "loss": 0.8099, + "step": 405 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018930041152263375, + "loss": 0.807, + "step": 410 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018909465020576133, + "loss": 0.7793, + "step": 415 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018888888888888888, + "loss": 0.7734, + "step": 420 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018868312757201646, + "loss": 0.7786, + "step": 425 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018847736625514404, + "loss": 0.7548, + "step": 430 + }, + { + "epoch": 0.17, + "learning_rate": 0.0001882716049382716, + "loss": 0.8024, + "step": 435 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018806584362139917, + "loss": 0.7708, + "step": 440 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018786008230452675, + "loss": 0.8045, + "step": 445 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018765432098765433, + "loss": 0.7477, + "step": 450 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018744855967078189, + "loss": 0.7474, + "step": 455 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018724279835390946, + "loss": 0.7629, + "step": 460 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018703703703703704, + "loss": 0.7777, + "step": 465 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018683127572016462, + "loss": 0.7823, + "step": 470 + }, + { + "epoch": 0.19, + "learning_rate": 0.0001866255144032922, + "loss": 0.7762, + "step": 475 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018641975308641978, + "loss": 0.782, + "step": 480 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018621399176954733, + "loss": 0.7783, + "step": 485 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001860082304526749, + "loss": 0.7376, + "step": 490 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001858024691358025, + "loss": 0.7683, + "step": 495 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018559670781893007, + "loss": 0.7547, + "step": 500 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018539094650205762, + "loss": 0.7569, + "step": 505 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001851851851851852, + "loss": 0.7796, + "step": 510 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018497942386831278, + "loss": 0.7888, + "step": 515 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018477366255144033, + "loss": 0.7763, + "step": 520 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018456790123456791, + "loss": 0.7787, + "step": 525 + }, + { + "epoch": 0.21, + "learning_rate": 0.0001843621399176955, + "loss": 0.772, + "step": 530 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018415637860082307, + "loss": 0.786, + "step": 535 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018395061728395062, + "loss": 0.7639, + "step": 540 + }, + { + "epoch": 0.22, + "learning_rate": 0.0001837448559670782, + "loss": 0.775, + "step": 545 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018353909465020578, + "loss": 0.8002, + "step": 550 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018333333333333334, + "loss": 0.7359, + "step": 555 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018312757201646091, + "loss": 0.747, + "step": 560 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001829218106995885, + "loss": 0.8234, + "step": 565 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018271604938271605, + "loss": 0.7586, + "step": 570 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018251028806584363, + "loss": 0.7315, + "step": 575 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001823045267489712, + "loss": 0.7986, + "step": 580 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018209876543209878, + "loss": 0.7758, + "step": 585 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018189300411522634, + "loss": 0.7869, + "step": 590 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018168724279835392, + "loss": 0.7596, + "step": 595 + }, + { + "epoch": 0.24, + "learning_rate": 0.0001814814814814815, + "loss": 0.7658, + "step": 600 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018127572016460905, + "loss": 0.7851, + "step": 605 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018106995884773663, + "loss": 0.7957, + "step": 610 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001808641975308642, + "loss": 0.7756, + "step": 615 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018065843621399178, + "loss": 0.7911, + "step": 620 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018045267489711934, + "loss": 0.7864, + "step": 625 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018024691358024692, + "loss": 0.7683, + "step": 630 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001800411522633745, + "loss": 0.7731, + "step": 635 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017983539094650205, + "loss": 0.7671, + "step": 640 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017962962962962963, + "loss": 0.7367, + "step": 645 + }, + { + "epoch": 0.26, + "learning_rate": 0.0001794238683127572, + "loss": 0.8024, + "step": 650 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017921810699588476, + "loss": 0.7572, + "step": 655 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017901234567901234, + "loss": 0.7554, + "step": 660 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017880658436213992, + "loss": 0.7677, + "step": 665 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001786008230452675, + "loss": 0.7652, + "step": 670 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017839506172839508, + "loss": 0.7771, + "step": 675 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017818930041152265, + "loss": 0.7747, + "step": 680 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001779835390946502, + "loss": 0.767, + "step": 685 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017777777777777779, + "loss": 0.7738, + "step": 690 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017757201646090537, + "loss": 0.7271, + "step": 695 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017736625514403294, + "loss": 0.7316, + "step": 700 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017716049382716052, + "loss": 0.7831, + "step": 705 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017695473251028808, + "loss": 0.7835, + "step": 710 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017674897119341566, + "loss": 0.7497, + "step": 715 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017654320987654323, + "loss": 0.7757, + "step": 720 + }, + { + "epoch": 0.29, + "learning_rate": 0.0001763374485596708, + "loss": 0.74, + "step": 725 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017613168724279837, + "loss": 0.7697, + "step": 730 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017592592592592595, + "loss": 0.774, + "step": 735 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017572016460905352, + "loss": 0.7668, + "step": 740 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017551440329218108, + "loss": 0.7779, + "step": 745 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017530864197530866, + "loss": 0.7441, + "step": 750 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017510288065843624, + "loss": 0.7578, + "step": 755 + }, + { + "epoch": 0.3, + "learning_rate": 0.0001748971193415638, + "loss": 0.8358, + "step": 760 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017469135802469137, + "loss": 0.7473, + "step": 765 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017448559670781895, + "loss": 0.7517, + "step": 770 + }, + { + "epoch": 0.31, + "learning_rate": 0.0001742798353909465, + "loss": 0.7593, + "step": 775 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017407407407407408, + "loss": 0.7251, + "step": 780 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017386831275720166, + "loss": 0.7365, + "step": 785 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017366255144032924, + "loss": 0.7798, + "step": 790 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001734567901234568, + "loss": 0.746, + "step": 795 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017325102880658437, + "loss": 0.7607, + "step": 800 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017304526748971195, + "loss": 0.7694, + "step": 805 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001728395061728395, + "loss": 0.7926, + "step": 810 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017263374485596708, + "loss": 0.795, + "step": 815 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017242798353909466, + "loss": 0.7581, + "step": 820 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017222222222222224, + "loss": 0.7629, + "step": 825 + }, + { + "epoch": 0.33, + "learning_rate": 0.0001720164609053498, + "loss": 0.7526, + "step": 830 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017181069958847737, + "loss": 0.7338, + "step": 835 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017160493827160495, + "loss": 0.7544, + "step": 840 + }, + { + "epoch": 0.34, + "learning_rate": 0.0001713991769547325, + "loss": 0.7522, + "step": 845 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017119341563786008, + "loss": 0.7639, + "step": 850 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017098765432098766, + "loss": 0.7914, + "step": 855 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017078189300411524, + "loss": 0.7635, + "step": 860 + }, + { + "epoch": 0.35, + "learning_rate": 0.0001705761316872428, + "loss": 0.8343, + "step": 865 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017037037037037037, + "loss": 0.7299, + "step": 870 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017016460905349795, + "loss": 0.7643, + "step": 875 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016995884773662553, + "loss": 0.7343, + "step": 880 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016975308641975308, + "loss": 0.7546, + "step": 885 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016954732510288066, + "loss": 0.7435, + "step": 890 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016934156378600824, + "loss": 0.8086, + "step": 895 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016913580246913582, + "loss": 0.7274, + "step": 900 + }, + { + "epoch": 0.36, + "learning_rate": 0.0001689300411522634, + "loss": 0.7511, + "step": 905 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016872427983539098, + "loss": 0.7689, + "step": 910 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016851851851851853, + "loss": 0.754, + "step": 915 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001683127572016461, + "loss": 0.7298, + "step": 920 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001681069958847737, + "loss": 0.7755, + "step": 925 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016790123456790124, + "loss": 0.7854, + "step": 930 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016769547325102882, + "loss": 0.7452, + "step": 935 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001674897119341564, + "loss": 0.7473, + "step": 940 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016728395061728398, + "loss": 0.7855, + "step": 945 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016707818930041153, + "loss": 0.7527, + "step": 950 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001668724279835391, + "loss": 0.7641, + "step": 955 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001666666666666667, + "loss": 0.828, + "step": 960 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016646090534979424, + "loss": 0.7571, + "step": 965 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016625514403292182, + "loss": 0.7768, + "step": 970 + }, + { + "epoch": 0.39, + "learning_rate": 0.0001660493827160494, + "loss": 0.7644, + "step": 975 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016584362139917695, + "loss": 0.7747, + "step": 980 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016563786008230453, + "loss": 0.7926, + "step": 985 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001654320987654321, + "loss": 0.7645, + "step": 990 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001652263374485597, + "loss": 0.7464, + "step": 995 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016502057613168724, + "loss": 0.7558, + "step": 1000 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016481481481481482, + "loss": 0.7574, + "step": 1005 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001646090534979424, + "loss": 0.7491, + "step": 1010 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016440329218106995, + "loss": 0.756, + "step": 1015 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016419753086419753, + "loss": 0.7679, + "step": 1020 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001639917695473251, + "loss": 0.776, + "step": 1025 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001637860082304527, + "loss": 0.7235, + "step": 1030 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016358024691358024, + "loss": 0.7817, + "step": 1035 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016337448559670782, + "loss": 0.7333, + "step": 1040 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001631687242798354, + "loss": 0.754, + "step": 1045 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016296296296296295, + "loss": 0.74, + "step": 1050 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016275720164609053, + "loss": 0.7857, + "step": 1055 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001625514403292181, + "loss": 0.8015, + "step": 1060 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001623456790123457, + "loss": 0.7508, + "step": 1065 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016213991769547324, + "loss": 0.7514, + "step": 1070 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016193415637860082, + "loss": 0.7326, + "step": 1075 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001617283950617284, + "loss": 0.7322, + "step": 1080 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016152263374485595, + "loss": 0.7373, + "step": 1085 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016131687242798353, + "loss": 0.7637, + "step": 1090 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001611111111111111, + "loss": 0.7697, + "step": 1095 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001609053497942387, + "loss": 0.7505, + "step": 1100 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016069958847736627, + "loss": 0.7568, + "step": 1105 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016049382716049385, + "loss": 0.786, + "step": 1110 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001602880658436214, + "loss": 0.7525, + "step": 1115 + }, + { + "epoch": 0.45, + "learning_rate": 0.00016008230452674898, + "loss": 0.7696, + "step": 1120 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015987654320987656, + "loss": 0.7648, + "step": 1125 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015967078189300414, + "loss": 0.7492, + "step": 1130 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001594650205761317, + "loss": 0.809, + "step": 1135 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015925925925925927, + "loss": 0.7592, + "step": 1140 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015905349794238685, + "loss": 0.7874, + "step": 1145 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015884773662551443, + "loss": 0.7874, + "step": 1150 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015864197530864198, + "loss": 0.7374, + "step": 1155 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015843621399176956, + "loss": 0.7218, + "step": 1160 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015823045267489714, + "loss": 0.7494, + "step": 1165 + }, + { + "epoch": 0.47, + "learning_rate": 0.0001580246913580247, + "loss": 0.7449, + "step": 1170 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015781893004115227, + "loss": 0.725, + "step": 1175 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015761316872427985, + "loss": 0.739, + "step": 1180 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015740740740740743, + "loss": 0.7554, + "step": 1185 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015720164609053498, + "loss": 0.7702, + "step": 1190 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015699588477366256, + "loss": 0.7418, + "step": 1195 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015679012345679014, + "loss": 0.7217, + "step": 1200 + }, + { + "epoch": 0.48, + "learning_rate": 0.0001565843621399177, + "loss": 0.7391, + "step": 1205 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015637860082304527, + "loss": 0.7696, + "step": 1210 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015617283950617285, + "loss": 0.7594, + "step": 1215 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001559670781893004, + "loss": 0.777, + "step": 1220 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015576131687242798, + "loss": 0.7441, + "step": 1225 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015555555555555556, + "loss": 0.7611, + "step": 1230 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015534979423868314, + "loss": 0.7278, + "step": 1235 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001551440329218107, + "loss": 0.7452, + "step": 1240 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015493827160493827, + "loss": 0.7939, + "step": 1245 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015473251028806585, + "loss": 0.7161, + "step": 1250 + }, + { + "epoch": 0.5, + "learning_rate": 0.0001545267489711934, + "loss": 0.7344, + "step": 1255 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015432098765432098, + "loss": 0.7368, + "step": 1260 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015411522633744856, + "loss": 0.7172, + "step": 1265 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015390946502057614, + "loss": 0.7589, + "step": 1270 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001537037037037037, + "loss": 0.7641, + "step": 1275 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015349794238683127, + "loss": 0.761, + "step": 1280 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015329218106995885, + "loss": 0.7414, + "step": 1285 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001530864197530864, + "loss": 0.7713, + "step": 1290 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015288065843621399, + "loss": 0.7543, + "step": 1295 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015267489711934156, + "loss": 0.7683, + "step": 1300 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015246913580246914, + "loss": 0.8106, + "step": 1305 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015226337448559672, + "loss": 0.7739, + "step": 1310 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015205761316872428, + "loss": 0.7585, + "step": 1315 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015185185185185185, + "loss": 0.7577, + "step": 1320 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015164609053497943, + "loss": 0.7608, + "step": 1325 + }, + { + "epoch": 0.53, + "learning_rate": 0.000151440329218107, + "loss": 0.7715, + "step": 1330 + }, + { + "epoch": 0.53, + "learning_rate": 0.0001512345679012346, + "loss": 0.7681, + "step": 1335 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015102880658436214, + "loss": 0.7476, + "step": 1340 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015082304526748972, + "loss": 0.7539, + "step": 1345 + }, + { + "epoch": 0.54, + "learning_rate": 0.0001506172839506173, + "loss": 0.7492, + "step": 1350 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015041152263374488, + "loss": 0.7491, + "step": 1355 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015020576131687243, + "loss": 0.7236, + "step": 1360 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015000000000000001, + "loss": 0.7328, + "step": 1365 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001497942386831276, + "loss": 0.7603, + "step": 1370 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014958847736625515, + "loss": 0.7206, + "step": 1375 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014938271604938272, + "loss": 0.7001, + "step": 1380 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001491769547325103, + "loss": 0.7241, + "step": 1385 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014897119341563788, + "loss": 0.7511, + "step": 1390 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014876543209876544, + "loss": 0.7546, + "step": 1395 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014855967078189301, + "loss": 0.762, + "step": 1400 + }, + { + "epoch": 0.56, + "learning_rate": 0.0001483539094650206, + "loss": 0.6979, + "step": 1405 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014814814814814815, + "loss": 0.7352, + "step": 1410 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014794238683127573, + "loss": 0.7604, + "step": 1415 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001477366255144033, + "loss": 0.7612, + "step": 1420 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014753086419753086, + "loss": 0.7618, + "step": 1425 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014732510288065844, + "loss": 0.7107, + "step": 1430 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014711934156378602, + "loss": 0.7247, + "step": 1435 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001469135802469136, + "loss": 0.7733, + "step": 1440 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014670781893004115, + "loss": 0.7627, + "step": 1445 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014650205761316873, + "loss": 0.7323, + "step": 1450 + }, + { + "epoch": 0.58, + "learning_rate": 0.0001462962962962963, + "loss": 0.7728, + "step": 1455 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014609053497942386, + "loss": 0.7541, + "step": 1460 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014588477366255144, + "loss": 0.7781, + "step": 1465 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014567901234567902, + "loss": 0.7474, + "step": 1470 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001454732510288066, + "loss": 0.7789, + "step": 1475 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014526748971193415, + "loss": 0.7497, + "step": 1480 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014506172839506173, + "loss": 0.7487, + "step": 1485 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001448559670781893, + "loss": 0.7563, + "step": 1490 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014465020576131686, + "loss": 0.7444, + "step": 1495 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014444444444444444, + "loss": 0.7399, + "step": 1500 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014423868312757202, + "loss": 0.7288, + "step": 1505 + }, + { + "epoch": 0.6, + "learning_rate": 0.0001440329218106996, + "loss": 0.7458, + "step": 1510 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014382716049382718, + "loss": 0.7297, + "step": 1515 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014362139917695473, + "loss": 0.7684, + "step": 1520 + }, + { + "epoch": 0.61, + "learning_rate": 0.0001434156378600823, + "loss": 0.7428, + "step": 1525 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014320987654320989, + "loss": 0.705, + "step": 1530 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014300411522633747, + "loss": 0.7445, + "step": 1535 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014279835390946504, + "loss": 0.7109, + "step": 1540 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001425925925925926, + "loss": 0.7502, + "step": 1545 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014238683127572018, + "loss": 0.7485, + "step": 1550 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014218106995884776, + "loss": 0.7421, + "step": 1555 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014197530864197534, + "loss": 0.7369, + "step": 1560 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001417695473251029, + "loss": 0.7746, + "step": 1565 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014156378600823047, + "loss": 0.7334, + "step": 1570 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014135802469135805, + "loss": 0.7251, + "step": 1575 + }, + { + "epoch": 0.63, + "learning_rate": 0.0001411522633744856, + "loss": 0.7146, + "step": 1580 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014094650205761318, + "loss": 0.7563, + "step": 1585 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014074074074074076, + "loss": 0.7247, + "step": 1590 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014053497942386834, + "loss": 0.7379, + "step": 1595 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001403292181069959, + "loss": 0.7684, + "step": 1600 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014012345679012347, + "loss": 0.7574, + "step": 1605 + }, + { + "epoch": 0.64, + "learning_rate": 0.00013991769547325105, + "loss": 0.7138, + "step": 1610 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001397119341563786, + "loss": 0.7472, + "step": 1615 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013950617283950618, + "loss": 0.7466, + "step": 1620 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013930041152263376, + "loss": 0.7288, + "step": 1625 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013909465020576134, + "loss": 0.7717, + "step": 1630 + }, + { + "epoch": 0.65, + "learning_rate": 0.0001388888888888889, + "loss": 0.7665, + "step": 1635 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013868312757201647, + "loss": 0.7408, + "step": 1640 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013847736625514405, + "loss": 0.7418, + "step": 1645 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001382716049382716, + "loss": 0.7502, + "step": 1650 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013806584362139918, + "loss": 0.7657, + "step": 1655 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013786008230452676, + "loss": 0.728, + "step": 1660 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001376543209876543, + "loss": 0.7142, + "step": 1665 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001374485596707819, + "loss": 0.7971, + "step": 1670 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013724279835390947, + "loss": 0.737, + "step": 1675 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013703703703703705, + "loss": 0.7947, + "step": 1680 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001368312757201646, + "loss": 0.7525, + "step": 1685 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013662551440329218, + "loss": 0.711, + "step": 1690 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013641975308641976, + "loss": 0.7459, + "step": 1695 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001362139917695473, + "loss": 0.7404, + "step": 1700 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001360082304526749, + "loss": 0.7458, + "step": 1705 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013580246913580247, + "loss": 0.754, + "step": 1710 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013559670781893005, + "loss": 0.7217, + "step": 1715 + }, + { + "epoch": 0.69, + "learning_rate": 0.0001353909465020576, + "loss": 0.7373, + "step": 1720 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013518518518518518, + "loss": 0.7567, + "step": 1725 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013497942386831276, + "loss": 0.7525, + "step": 1730 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013477366255144034, + "loss": 0.752, + "step": 1735 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013456790123456792, + "loss": 0.7342, + "step": 1740 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001343621399176955, + "loss": 0.7276, + "step": 1745 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013415637860082305, + "loss": 0.6915, + "step": 1750 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013395061728395063, + "loss": 0.737, + "step": 1755 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001337448559670782, + "loss": 0.7427, + "step": 1760 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001335390946502058, + "loss": 0.7126, + "step": 1765 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013333333333333334, + "loss": 0.7241, + "step": 1770 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013312757201646092, + "loss": 0.755, + "step": 1775 + }, + { + "epoch": 0.71, + "learning_rate": 0.0001329218106995885, + "loss": 0.7494, + "step": 1780 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013271604938271605, + "loss": 0.709, + "step": 1785 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013251028806584363, + "loss": 0.7555, + "step": 1790 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001323045267489712, + "loss": 0.7298, + "step": 1795 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001320987654320988, + "loss": 0.7232, + "step": 1800 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013189300411522634, + "loss": 0.7441, + "step": 1805 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013168724279835392, + "loss": 0.7623, + "step": 1810 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001314814814814815, + "loss": 0.7349, + "step": 1815 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013127572016460905, + "loss": 0.7773, + "step": 1820 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013106995884773663, + "loss": 0.7537, + "step": 1825 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001308641975308642, + "loss": 0.7579, + "step": 1830 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001306584362139918, + "loss": 0.7321, + "step": 1835 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013045267489711934, + "loss": 0.7175, + "step": 1840 + }, + { + "epoch": 0.74, + "learning_rate": 0.00013024691358024692, + "loss": 0.7553, + "step": 1845 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001300411522633745, + "loss": 0.7591, + "step": 1850 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012983539094650205, + "loss": 0.7581, + "step": 1855 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012962962962962963, + "loss": 0.7632, + "step": 1860 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001294238683127572, + "loss": 0.7434, + "step": 1865 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012921810699588476, + "loss": 0.7695, + "step": 1870 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012901234567901234, + "loss": 0.7808, + "step": 1875 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012880658436213992, + "loss": 0.7428, + "step": 1880 + }, + { + "epoch": 0.75, + "learning_rate": 0.0001286008230452675, + "loss": 0.7487, + "step": 1885 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012839506172839505, + "loss": 0.7033, + "step": 1890 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012818930041152263, + "loss": 0.7639, + "step": 1895 + }, + { + "epoch": 0.76, + "learning_rate": 0.0001279835390946502, + "loss": 0.7345, + "step": 1900 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012777777777777776, + "loss": 0.7434, + "step": 1905 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012757201646090534, + "loss": 0.7082, + "step": 1910 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012736625514403292, + "loss": 0.7294, + "step": 1915 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001271604938271605, + "loss": 0.74, + "step": 1920 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012695473251028805, + "loss": 0.7694, + "step": 1925 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012674897119341563, + "loss": 0.7339, + "step": 1930 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001265432098765432, + "loss": 0.7259, + "step": 1935 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001263374485596708, + "loss": 0.7307, + "step": 1940 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012613168724279837, + "loss": 0.7085, + "step": 1945 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012592592592592592, + "loss": 0.7662, + "step": 1950 + }, + { + "epoch": 0.78, + "learning_rate": 0.0001257201646090535, + "loss": 0.7145, + "step": 1955 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012551440329218108, + "loss": 0.7528, + "step": 1960 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012530864197530866, + "loss": 0.7308, + "step": 1965 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012510288065843624, + "loss": 0.7163, + "step": 1970 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001248971193415638, + "loss": 0.7254, + "step": 1975 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012469135802469137, + "loss": 0.7467, + "step": 1980 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012448559670781895, + "loss": 0.7391, + "step": 1985 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001242798353909465, + "loss": 0.7314, + "step": 1990 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012407407407407408, + "loss": 0.7048, + "step": 1995 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012386831275720166, + "loss": 0.7187, + "step": 2000 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012366255144032924, + "loss": 0.735, + "step": 2005 + }, + { + "epoch": 0.8, + "learning_rate": 0.0001234567901234568, + "loss": 0.7662, + "step": 2010 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012325102880658437, + "loss": 0.7437, + "step": 2015 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012304526748971195, + "loss": 0.7675, + "step": 2020 + }, + { + "epoch": 0.81, + "learning_rate": 0.0001228395061728395, + "loss": 0.7143, + "step": 2025 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012263374485596708, + "loss": 0.7101, + "step": 2030 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012242798353909466, + "loss": 0.7257, + "step": 2035 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012222222222222224, + "loss": 0.7522, + "step": 2040 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001220164609053498, + "loss": 0.7669, + "step": 2045 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012181069958847737, + "loss": 0.7283, + "step": 2050 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012160493827160495, + "loss": 0.7413, + "step": 2055 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001213991769547325, + "loss": 0.6988, + "step": 2060 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012119341563786008, + "loss": 0.7421, + "step": 2065 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012098765432098766, + "loss": 0.7152, + "step": 2070 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012078189300411524, + "loss": 0.7741, + "step": 2075 + }, + { + "epoch": 0.83, + "learning_rate": 0.0001205761316872428, + "loss": 0.7381, + "step": 2080 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012037037037037037, + "loss": 0.738, + "step": 2085 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012016460905349795, + "loss": 0.7258, + "step": 2090 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011995884773662552, + "loss": 0.7426, + "step": 2095 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011975308641975308, + "loss": 0.7185, + "step": 2100 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011954732510288066, + "loss": 0.7401, + "step": 2105 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011934156378600823, + "loss": 0.751, + "step": 2110 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011913580246913581, + "loss": 0.7284, + "step": 2115 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011893004115226339, + "loss": 0.7901, + "step": 2120 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011872427983539097, + "loss": 0.7432, + "step": 2125 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011851851851851852, + "loss": 0.7355, + "step": 2130 + }, + { + "epoch": 0.85, + "learning_rate": 0.0001183127572016461, + "loss": 0.7333, + "step": 2135 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011810699588477368, + "loss": 0.7504, + "step": 2140 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011790123456790123, + "loss": 0.7503, + "step": 2145 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011769547325102881, + "loss": 0.728, + "step": 2150 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011748971193415639, + "loss": 0.7485, + "step": 2155 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011728395061728397, + "loss": 0.7127, + "step": 2160 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011707818930041152, + "loss": 0.7278, + "step": 2165 + }, + { + "epoch": 0.87, + "learning_rate": 0.0001168724279835391, + "loss": 0.7513, + "step": 2170 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011666666666666668, + "loss": 0.7193, + "step": 2175 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011646090534979423, + "loss": 0.7245, + "step": 2180 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011625514403292181, + "loss": 0.7266, + "step": 2185 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011604938271604939, + "loss": 0.7531, + "step": 2190 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011584362139917696, + "loss": 0.7637, + "step": 2195 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011563786008230452, + "loss": 0.7388, + "step": 2200 + }, + { + "epoch": 0.88, + "learning_rate": 0.0001154320987654321, + "loss": 0.7222, + "step": 2205 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011522633744855968, + "loss": 0.7667, + "step": 2210 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011502057613168725, + "loss": 0.7382, + "step": 2215 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011481481481481482, + "loss": 0.7243, + "step": 2220 + }, + { + "epoch": 0.89, + "learning_rate": 0.0001146090534979424, + "loss": 0.7192, + "step": 2225 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011440329218106996, + "loss": 0.7237, + "step": 2230 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011419753086419754, + "loss": 0.7498, + "step": 2235 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011399176954732511, + "loss": 0.7007, + "step": 2240 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001137860082304527, + "loss": 0.758, + "step": 2245 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011358024691358025, + "loss": 0.7111, + "step": 2250 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011337448559670783, + "loss": 0.706, + "step": 2255 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001131687242798354, + "loss": 0.7423, + "step": 2260 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011296296296296296, + "loss": 0.7094, + "step": 2265 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011275720164609054, + "loss": 0.7331, + "step": 2270 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011255144032921812, + "loss": 0.7164, + "step": 2275 + }, + { + "epoch": 0.91, + "learning_rate": 0.0001123456790123457, + "loss": 0.7452, + "step": 2280 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011213991769547325, + "loss": 0.7172, + "step": 2285 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011193415637860083, + "loss": 0.7232, + "step": 2290 + }, + { + "epoch": 0.92, + "learning_rate": 0.0001117283950617284, + "loss": 0.7112, + "step": 2295 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011152263374485596, + "loss": 0.7459, + "step": 2300 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011131687242798354, + "loss": 0.7353, + "step": 2305 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011111111111111112, + "loss": 0.7406, + "step": 2310 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011090534979423868, + "loss": 0.7623, + "step": 2315 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011069958847736626, + "loss": 0.7567, + "step": 2320 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011049382716049384, + "loss": 0.7752, + "step": 2325 + }, + { + "epoch": 0.93, + "learning_rate": 0.0001102880658436214, + "loss": 0.7419, + "step": 2330 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011008230452674897, + "loss": 0.7244, + "step": 2335 + }, + { + "epoch": 0.93, + "learning_rate": 0.00010987654320987655, + "loss": 0.7553, + "step": 2340 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010967078189300413, + "loss": 0.7389, + "step": 2345 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010946502057613168, + "loss": 0.7002, + "step": 2350 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010925925925925926, + "loss": 0.7238, + "step": 2355 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010905349794238684, + "loss": 0.6923, + "step": 2360 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010884773662551442, + "loss": 0.7579, + "step": 2365 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010864197530864197, + "loss": 0.7291, + "step": 2370 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010843621399176955, + "loss": 0.721, + "step": 2375 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010823045267489713, + "loss": 0.7605, + "step": 2380 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010802469135802468, + "loss": 0.7297, + "step": 2385 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010781893004115226, + "loss": 0.7565, + "step": 2390 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010761316872427984, + "loss": 0.701, + "step": 2395 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010740740740740742, + "loss": 0.736, + "step": 2400 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010720164609053497, + "loss": 0.7079, + "step": 2405 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010699588477366255, + "loss": 0.7349, + "step": 2410 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010679012345679013, + "loss": 0.7106, + "step": 2415 + }, + { + "epoch": 0.97, + "learning_rate": 0.0001065843621399177, + "loss": 0.7396, + "step": 2420 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010637860082304528, + "loss": 0.7713, + "step": 2425 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010617283950617284, + "loss": 0.747, + "step": 2430 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010596707818930041, + "loss": 0.7475, + "step": 2435 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010576131687242799, + "loss": 0.7449, + "step": 2440 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010555555555555557, + "loss": 0.7208, + "step": 2445 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010534979423868315, + "loss": 0.7317, + "step": 2450 + }, + { + "epoch": 0.98, + "learning_rate": 0.0001051440329218107, + "loss": 0.7419, + "step": 2455 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010493827160493828, + "loss": 0.7148, + "step": 2460 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010473251028806586, + "loss": 0.7143, + "step": 2465 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010452674897119341, + "loss": 0.747, + "step": 2470 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010432098765432099, + "loss": 0.7079, + "step": 2475 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010411522633744857, + "loss": 0.7059, + "step": 2480 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010390946502057615, + "loss": 0.7272, + "step": 2485 + }, + { + "epoch": 0.99, + "learning_rate": 0.0001037037037037037, + "loss": 0.7281, + "step": 2490 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010349794238683128, + "loss": 0.6956, + "step": 2495 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010329218106995886, + "loss": 0.7571, + "step": 2500 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010308641975308641, + "loss": 0.7311, + "step": 2505 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010288065843621399, + "loss": 0.6815, + "step": 2510 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010267489711934157, + "loss": 0.6781, + "step": 2515 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010246913580246915, + "loss": 0.6948, + "step": 2520 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010226337448559671, + "loss": 0.7133, + "step": 2525 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010205761316872428, + "loss": 0.688, + "step": 2530 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010185185185185186, + "loss": 0.6687, + "step": 2535 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010164609053497942, + "loss": 0.7142, + "step": 2540 + }, + { + "epoch": 1.02, + "learning_rate": 0.000101440329218107, + "loss": 0.6885, + "step": 2545 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010123456790123458, + "loss": 0.6867, + "step": 2550 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010102880658436214, + "loss": 0.7045, + "step": 2555 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010082304526748971, + "loss": 0.7375, + "step": 2560 + }, + { + "epoch": 1.02, + "learning_rate": 0.0001006172839506173, + "loss": 0.7157, + "step": 2565 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010041152263374487, + "loss": 0.6828, + "step": 2570 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010020576131687243, + "loss": 0.7048, + "step": 2575 + }, + { + "epoch": 1.03, + "learning_rate": 0.0001, + "loss": 0.6944, + "step": 2580 + }, + { + "epoch": 1.03, + "learning_rate": 9.979423868312757e-05, + "loss": 0.696, + "step": 2585 + }, + { + "epoch": 1.03, + "learning_rate": 9.958847736625515e-05, + "loss": 0.6609, + "step": 2590 + }, + { + "epoch": 1.04, + "learning_rate": 9.938271604938272e-05, + "loss": 0.674, + "step": 2595 + }, + { + "epoch": 1.04, + "learning_rate": 9.91769547325103e-05, + "loss": 0.7138, + "step": 2600 + }, + { + "epoch": 1.04, + "learning_rate": 9.897119341563786e-05, + "loss": 0.713, + "step": 2605 + }, + { + "epoch": 1.04, + "learning_rate": 9.876543209876543e-05, + "loss": 0.7022, + "step": 2610 + }, + { + "epoch": 1.04, + "learning_rate": 9.8559670781893e-05, + "loss": 0.6955, + "step": 2615 + }, + { + "epoch": 1.05, + "learning_rate": 9.835390946502057e-05, + "loss": 0.6888, + "step": 2620 + }, + { + "epoch": 1.05, + "learning_rate": 9.814814814814815e-05, + "loss": 0.7003, + "step": 2625 + }, + { + "epoch": 1.05, + "learning_rate": 9.794238683127573e-05, + "loss": 0.7167, + "step": 2630 + }, + { + "epoch": 1.05, + "learning_rate": 9.77366255144033e-05, + "loss": 0.7087, + "step": 2635 + }, + { + "epoch": 1.05, + "learning_rate": 9.753086419753087e-05, + "loss": 0.7019, + "step": 2640 + }, + { + "epoch": 1.06, + "learning_rate": 9.732510288065844e-05, + "loss": 0.6609, + "step": 2645 + }, + { + "epoch": 1.06, + "learning_rate": 9.711934156378602e-05, + "loss": 0.7367, + "step": 2650 + }, + { + "epoch": 1.06, + "learning_rate": 9.691358024691359e-05, + "loss": 0.6862, + "step": 2655 + }, + { + "epoch": 1.06, + "learning_rate": 9.670781893004116e-05, + "loss": 0.7121, + "step": 2660 + }, + { + "epoch": 1.06, + "learning_rate": 9.650205761316873e-05, + "loss": 0.7031, + "step": 2665 + }, + { + "epoch": 1.07, + "learning_rate": 9.62962962962963e-05, + "loss": 0.7005, + "step": 2670 + }, + { + "epoch": 1.07, + "learning_rate": 9.609053497942388e-05, + "loss": 0.7041, + "step": 2675 + }, + { + "epoch": 1.07, + "learning_rate": 9.588477366255144e-05, + "loss": 0.6713, + "step": 2680 + }, + { + "epoch": 1.07, + "learning_rate": 9.567901234567902e-05, + "loss": 0.6932, + "step": 2685 + }, + { + "epoch": 1.07, + "learning_rate": 9.547325102880659e-05, + "loss": 0.6849, + "step": 2690 + }, + { + "epoch": 1.08, + "learning_rate": 9.526748971193417e-05, + "loss": 0.6915, + "step": 2695 + }, + { + "epoch": 1.08, + "learning_rate": 9.506172839506173e-05, + "loss": 0.6677, + "step": 2700 + }, + { + "epoch": 1.08, + "learning_rate": 9.48559670781893e-05, + "loss": 0.6767, + "step": 2705 + }, + { + "epoch": 1.08, + "learning_rate": 9.465020576131688e-05, + "loss": 0.6873, + "step": 2710 + }, + { + "epoch": 1.08, + "learning_rate": 9.444444444444444e-05, + "loss": 0.7007, + "step": 2715 + }, + { + "epoch": 1.09, + "learning_rate": 9.423868312757202e-05, + "loss": 0.6782, + "step": 2720 + }, + { + "epoch": 1.09, + "learning_rate": 9.403292181069959e-05, + "loss": 0.7044, + "step": 2725 + }, + { + "epoch": 1.09, + "learning_rate": 9.382716049382717e-05, + "loss": 0.6787, + "step": 2730 + }, + { + "epoch": 1.09, + "learning_rate": 9.362139917695473e-05, + "loss": 0.6876, + "step": 2735 + }, + { + "epoch": 1.09, + "learning_rate": 9.341563786008231e-05, + "loss": 0.7253, + "step": 2740 + }, + { + "epoch": 1.1, + "learning_rate": 9.320987654320989e-05, + "loss": 0.7159, + "step": 2745 + }, + { + "epoch": 1.1, + "learning_rate": 9.300411522633746e-05, + "loss": 0.704, + "step": 2750 + }, + { + "epoch": 1.1, + "learning_rate": 9.279835390946504e-05, + "loss": 0.6882, + "step": 2755 + }, + { + "epoch": 1.1, + "learning_rate": 9.25925925925926e-05, + "loss": 0.6777, + "step": 2760 + }, + { + "epoch": 1.1, + "learning_rate": 9.238683127572017e-05, + "loss": 0.7133, + "step": 2765 + }, + { + "epoch": 1.11, + "learning_rate": 9.218106995884775e-05, + "loss": 0.6988, + "step": 2770 + }, + { + "epoch": 1.11, + "learning_rate": 9.197530864197531e-05, + "loss": 0.7323, + "step": 2775 + }, + { + "epoch": 1.11, + "learning_rate": 9.176954732510289e-05, + "loss": 0.6854, + "step": 2780 + }, + { + "epoch": 1.11, + "learning_rate": 9.156378600823046e-05, + "loss": 0.6926, + "step": 2785 + }, + { + "epoch": 1.11, + "learning_rate": 9.135802469135802e-05, + "loss": 0.6985, + "step": 2790 + }, + { + "epoch": 1.12, + "learning_rate": 9.11522633744856e-05, + "loss": 0.6776, + "step": 2795 + }, + { + "epoch": 1.12, + "learning_rate": 9.094650205761317e-05, + "loss": 0.7374, + "step": 2800 + }, + { + "epoch": 1.12, + "learning_rate": 9.074074074074075e-05, + "loss": 0.6928, + "step": 2805 + }, + { + "epoch": 1.12, + "learning_rate": 9.053497942386831e-05, + "loss": 0.7129, + "step": 2810 + }, + { + "epoch": 1.12, + "learning_rate": 9.032921810699589e-05, + "loss": 0.6918, + "step": 2815 + }, + { + "epoch": 1.13, + "learning_rate": 9.012345679012346e-05, + "loss": 0.6641, + "step": 2820 + }, + { + "epoch": 1.13, + "learning_rate": 8.991769547325102e-05, + "loss": 0.7075, + "step": 2825 + }, + { + "epoch": 1.13, + "learning_rate": 8.97119341563786e-05, + "loss": 0.668, + "step": 2830 + }, + { + "epoch": 1.13, + "learning_rate": 8.950617283950617e-05, + "loss": 0.6836, + "step": 2835 + }, + { + "epoch": 1.13, + "learning_rate": 8.930041152263375e-05, + "loss": 0.672, + "step": 2840 + }, + { + "epoch": 1.14, + "learning_rate": 8.909465020576133e-05, + "loss": 0.6827, + "step": 2845 + }, + { + "epoch": 1.14, + "learning_rate": 8.888888888888889e-05, + "loss": 0.6976, + "step": 2850 + }, + { + "epoch": 1.14, + "learning_rate": 8.868312757201647e-05, + "loss": 0.6719, + "step": 2855 + }, + { + "epoch": 1.14, + "learning_rate": 8.847736625514404e-05, + "loss": 0.6871, + "step": 2860 + }, + { + "epoch": 1.14, + "learning_rate": 8.827160493827162e-05, + "loss": 0.6975, + "step": 2865 + }, + { + "epoch": 1.15, + "learning_rate": 8.806584362139918e-05, + "loss": 0.684, + "step": 2870 + }, + { + "epoch": 1.15, + "learning_rate": 8.786008230452676e-05, + "loss": 0.6861, + "step": 2875 + }, + { + "epoch": 1.15, + "learning_rate": 8.765432098765433e-05, + "loss": 0.7116, + "step": 2880 + }, + { + "epoch": 1.15, + "learning_rate": 8.74485596707819e-05, + "loss": 0.686, + "step": 2885 + }, + { + "epoch": 1.15, + "learning_rate": 8.724279835390947e-05, + "loss": 0.677, + "step": 2890 + }, + { + "epoch": 1.16, + "learning_rate": 8.703703703703704e-05, + "loss": 0.6996, + "step": 2895 + }, + { + "epoch": 1.16, + "learning_rate": 8.683127572016462e-05, + "loss": 0.7211, + "step": 2900 + }, + { + "epoch": 1.16, + "learning_rate": 8.662551440329218e-05, + "loss": 0.6766, + "step": 2905 + }, + { + "epoch": 1.16, + "learning_rate": 8.641975308641975e-05, + "loss": 0.6883, + "step": 2910 + }, + { + "epoch": 1.16, + "learning_rate": 8.621399176954733e-05, + "loss": 0.6829, + "step": 2915 + }, + { + "epoch": 1.17, + "learning_rate": 8.60082304526749e-05, + "loss": 0.7089, + "step": 2920 + }, + { + "epoch": 1.17, + "learning_rate": 8.580246913580247e-05, + "loss": 0.6711, + "step": 2925 + }, + { + "epoch": 1.17, + "learning_rate": 8.559670781893004e-05, + "loss": 0.6926, + "step": 2930 + }, + { + "epoch": 1.17, + "learning_rate": 8.539094650205762e-05, + "loss": 0.6513, + "step": 2935 + }, + { + "epoch": 1.17, + "learning_rate": 8.518518518518518e-05, + "loss": 0.6817, + "step": 2940 + }, + { + "epoch": 1.18, + "learning_rate": 8.497942386831276e-05, + "loss": 0.7005, + "step": 2945 + }, + { + "epoch": 1.18, + "learning_rate": 8.477366255144033e-05, + "loss": 0.7013, + "step": 2950 + }, + { + "epoch": 1.18, + "learning_rate": 8.456790123456791e-05, + "loss": 0.6562, + "step": 2955 + }, + { + "epoch": 1.18, + "learning_rate": 8.436213991769549e-05, + "loss": 0.7074, + "step": 2960 + }, + { + "epoch": 1.18, + "learning_rate": 8.415637860082305e-05, + "loss": 0.6901, + "step": 2965 + }, + { + "epoch": 1.19, + "learning_rate": 8.395061728395062e-05, + "loss": 0.6867, + "step": 2970 + }, + { + "epoch": 1.19, + "learning_rate": 8.37448559670782e-05, + "loss": 0.692, + "step": 2975 + }, + { + "epoch": 1.19, + "learning_rate": 8.353909465020576e-05, + "loss": 0.6863, + "step": 2980 + }, + { + "epoch": 1.19, + "learning_rate": 8.333333333333334e-05, + "loss": 0.6881, + "step": 2985 + }, + { + "epoch": 1.19, + "learning_rate": 8.312757201646091e-05, + "loss": 0.7203, + "step": 2990 + }, + { + "epoch": 1.2, + "learning_rate": 8.292181069958848e-05, + "loss": 0.7075, + "step": 2995 + }, + { + "epoch": 1.2, + "learning_rate": 8.271604938271605e-05, + "loss": 0.7187, + "step": 3000 + }, + { + "epoch": 1.2, + "learning_rate": 8.251028806584362e-05, + "loss": 0.6791, + "step": 3005 + }, + { + "epoch": 1.2, + "learning_rate": 8.23045267489712e-05, + "loss": 0.6937, + "step": 3010 + }, + { + "epoch": 1.2, + "learning_rate": 8.209876543209877e-05, + "loss": 0.6584, + "step": 3015 + }, + { + "epoch": 1.21, + "learning_rate": 8.189300411522634e-05, + "loss": 0.6818, + "step": 3020 + }, + { + "epoch": 1.21, + "learning_rate": 8.168724279835391e-05, + "loss": 0.6827, + "step": 3025 + }, + { + "epoch": 1.21, + "learning_rate": 8.148148148148148e-05, + "loss": 0.6774, + "step": 3030 + }, + { + "epoch": 1.21, + "learning_rate": 8.127572016460906e-05, + "loss": 0.6826, + "step": 3035 + }, + { + "epoch": 1.21, + "learning_rate": 8.106995884773662e-05, + "loss": 0.6767, + "step": 3040 + }, + { + "epoch": 1.22, + "learning_rate": 8.08641975308642e-05, + "loss": 0.7256, + "step": 3045 + }, + { + "epoch": 1.22, + "learning_rate": 8.065843621399177e-05, + "loss": 0.6875, + "step": 3050 + }, + { + "epoch": 1.22, + "learning_rate": 8.045267489711935e-05, + "loss": 0.7013, + "step": 3055 + }, + { + "epoch": 1.22, + "learning_rate": 8.024691358024692e-05, + "loss": 0.6907, + "step": 3060 + }, + { + "epoch": 1.22, + "learning_rate": 8.004115226337449e-05, + "loss": 0.6751, + "step": 3065 + }, + { + "epoch": 1.23, + "learning_rate": 7.983539094650207e-05, + "loss": 0.6893, + "step": 3070 + }, + { + "epoch": 1.23, + "learning_rate": 7.962962962962964e-05, + "loss": 0.6962, + "step": 3075 + }, + { + "epoch": 1.23, + "learning_rate": 7.942386831275721e-05, + "loss": 0.6743, + "step": 3080 + }, + { + "epoch": 1.23, + "learning_rate": 7.921810699588478e-05, + "loss": 0.7004, + "step": 3085 + }, + { + "epoch": 1.23, + "learning_rate": 7.901234567901235e-05, + "loss": 0.6908, + "step": 3090 + }, + { + "epoch": 1.24, + "learning_rate": 7.880658436213993e-05, + "loss": 0.6736, + "step": 3095 + }, + { + "epoch": 1.24, + "learning_rate": 7.860082304526749e-05, + "loss": 0.7153, + "step": 3100 + }, + { + "epoch": 1.24, + "learning_rate": 7.839506172839507e-05, + "loss": 0.7072, + "step": 3105 + }, + { + "epoch": 1.24, + "learning_rate": 7.818930041152264e-05, + "loss": 0.7163, + "step": 3110 + }, + { + "epoch": 1.24, + "learning_rate": 7.79835390946502e-05, + "loss": 0.6996, + "step": 3115 + }, + { + "epoch": 1.25, + "learning_rate": 7.777777777777778e-05, + "loss": 0.7257, + "step": 3120 + }, + { + "epoch": 1.25, + "learning_rate": 7.757201646090535e-05, + "loss": 0.7155, + "step": 3125 + }, + { + "epoch": 1.25, + "learning_rate": 7.736625514403293e-05, + "loss": 0.7068, + "step": 3130 + }, + { + "epoch": 1.25, + "learning_rate": 7.716049382716049e-05, + "loss": 0.6575, + "step": 3135 + }, + { + "epoch": 1.25, + "learning_rate": 7.695473251028807e-05, + "loss": 0.6771, + "step": 3140 + }, + { + "epoch": 1.26, + "learning_rate": 7.674897119341564e-05, + "loss": 0.6976, + "step": 3145 + }, + { + "epoch": 1.26, + "learning_rate": 7.65432098765432e-05, + "loss": 0.6568, + "step": 3150 + }, + { + "epoch": 1.26, + "learning_rate": 7.633744855967078e-05, + "loss": 0.6609, + "step": 3155 + }, + { + "epoch": 1.26, + "learning_rate": 7.613168724279836e-05, + "loss": 0.697, + "step": 3160 + }, + { + "epoch": 1.26, + "learning_rate": 7.592592592592593e-05, + "loss": 0.714, + "step": 3165 + }, + { + "epoch": 1.27, + "learning_rate": 7.57201646090535e-05, + "loss": 0.6829, + "step": 3170 + }, + { + "epoch": 1.27, + "learning_rate": 7.551440329218107e-05, + "loss": 0.6932, + "step": 3175 + }, + { + "epoch": 1.27, + "learning_rate": 7.530864197530865e-05, + "loss": 0.6859, + "step": 3180 + }, + { + "epoch": 1.27, + "learning_rate": 7.510288065843622e-05, + "loss": 0.7117, + "step": 3185 + }, + { + "epoch": 1.27, + "learning_rate": 7.48971193415638e-05, + "loss": 0.7157, + "step": 3190 + }, + { + "epoch": 1.28, + "learning_rate": 7.469135802469136e-05, + "loss": 0.6593, + "step": 3195 + }, + { + "epoch": 1.28, + "learning_rate": 7.448559670781894e-05, + "loss": 0.6683, + "step": 3200 + }, + { + "epoch": 1.28, + "learning_rate": 7.427983539094651e-05, + "loss": 0.6876, + "step": 3205 + }, + { + "epoch": 1.28, + "learning_rate": 7.407407407407407e-05, + "loss": 0.6584, + "step": 3210 + }, + { + "epoch": 1.28, + "learning_rate": 7.386831275720165e-05, + "loss": 0.6816, + "step": 3215 + }, + { + "epoch": 1.29, + "learning_rate": 7.366255144032922e-05, + "loss": 0.6994, + "step": 3220 + }, + { + "epoch": 1.29, + "learning_rate": 7.34567901234568e-05, + "loss": 0.6701, + "step": 3225 + }, + { + "epoch": 1.29, + "learning_rate": 7.325102880658436e-05, + "loss": 0.6869, + "step": 3230 + }, + { + "epoch": 1.29, + "learning_rate": 7.304526748971193e-05, + "loss": 0.6895, + "step": 3235 + }, + { + "epoch": 1.29, + "learning_rate": 7.283950617283951e-05, + "loss": 0.6972, + "step": 3240 + }, + { + "epoch": 1.3, + "learning_rate": 7.263374485596707e-05, + "loss": 0.6849, + "step": 3245 + }, + { + "epoch": 1.3, + "learning_rate": 7.242798353909465e-05, + "loss": 0.6967, + "step": 3250 + }, + { + "epoch": 1.3, + "learning_rate": 7.222222222222222e-05, + "loss": 0.6679, + "step": 3255 + }, + { + "epoch": 1.3, + "learning_rate": 7.20164609053498e-05, + "loss": 0.6683, + "step": 3260 + }, + { + "epoch": 1.3, + "learning_rate": 7.181069958847736e-05, + "loss": 0.6787, + "step": 3265 + }, + { + "epoch": 1.31, + "learning_rate": 7.160493827160494e-05, + "loss": 0.6726, + "step": 3270 + }, + { + "epoch": 1.31, + "learning_rate": 7.139917695473252e-05, + "loss": 0.721, + "step": 3275 + }, + { + "epoch": 1.31, + "learning_rate": 7.119341563786009e-05, + "loss": 0.6865, + "step": 3280 + }, + { + "epoch": 1.31, + "learning_rate": 7.098765432098767e-05, + "loss": 0.7031, + "step": 3285 + }, + { + "epoch": 1.31, + "learning_rate": 7.078189300411523e-05, + "loss": 0.6895, + "step": 3290 + }, + { + "epoch": 1.32, + "learning_rate": 7.05761316872428e-05, + "loss": 0.6983, + "step": 3295 + }, + { + "epoch": 1.32, + "learning_rate": 7.037037037037038e-05, + "loss": 0.6929, + "step": 3300 + }, + { + "epoch": 1.32, + "learning_rate": 7.016460905349794e-05, + "loss": 0.7117, + "step": 3305 + }, + { + "epoch": 1.32, + "learning_rate": 6.995884773662552e-05, + "loss": 0.664, + "step": 3310 + }, + { + "epoch": 1.32, + "learning_rate": 6.975308641975309e-05, + "loss": 0.6645, + "step": 3315 + }, + { + "epoch": 1.33, + "learning_rate": 6.954732510288067e-05, + "loss": 0.6985, + "step": 3320 + }, + { + "epoch": 1.33, + "learning_rate": 6.934156378600823e-05, + "loss": 0.6826, + "step": 3325 + }, + { + "epoch": 1.33, + "learning_rate": 6.91358024691358e-05, + "loss": 0.7324, + "step": 3330 + }, + { + "epoch": 1.33, + "learning_rate": 6.893004115226338e-05, + "loss": 0.6828, + "step": 3335 + }, + { + "epoch": 1.33, + "learning_rate": 6.872427983539094e-05, + "loss": 0.6801, + "step": 3340 + }, + { + "epoch": 1.34, + "learning_rate": 6.851851851851852e-05, + "loss": 0.6923, + "step": 3345 + }, + { + "epoch": 1.34, + "learning_rate": 6.831275720164609e-05, + "loss": 0.6787, + "step": 3350 + }, + { + "epoch": 1.34, + "learning_rate": 6.810699588477366e-05, + "loss": 0.6812, + "step": 3355 + }, + { + "epoch": 1.34, + "learning_rate": 6.790123456790123e-05, + "loss": 0.7059, + "step": 3360 + }, + { + "epoch": 1.34, + "learning_rate": 6.76954732510288e-05, + "loss": 0.6794, + "step": 3365 + }, + { + "epoch": 1.35, + "learning_rate": 6.748971193415638e-05, + "loss": 0.6635, + "step": 3370 + }, + { + "epoch": 1.35, + "learning_rate": 6.728395061728396e-05, + "loss": 0.666, + "step": 3375 + }, + { + "epoch": 1.35, + "learning_rate": 6.707818930041152e-05, + "loss": 0.6909, + "step": 3380 + }, + { + "epoch": 1.35, + "learning_rate": 6.68724279835391e-05, + "loss": 0.7096, + "step": 3385 + }, + { + "epoch": 1.35, + "learning_rate": 6.666666666666667e-05, + "loss": 0.7049, + "step": 3390 + }, + { + "epoch": 1.36, + "learning_rate": 6.646090534979425e-05, + "loss": 0.6801, + "step": 3395 + }, + { + "epoch": 1.36, + "learning_rate": 6.625514403292181e-05, + "loss": 0.7045, + "step": 3400 + }, + { + "epoch": 1.36, + "learning_rate": 6.60493827160494e-05, + "loss": 0.7096, + "step": 3405 + }, + { + "epoch": 1.36, + "learning_rate": 6.584362139917696e-05, + "loss": 0.7192, + "step": 3410 + }, + { + "epoch": 1.36, + "learning_rate": 6.563786008230453e-05, + "loss": 0.6818, + "step": 3415 + }, + { + "epoch": 1.37, + "learning_rate": 6.54320987654321e-05, + "loss": 0.6358, + "step": 3420 + }, + { + "epoch": 1.37, + "learning_rate": 6.522633744855967e-05, + "loss": 0.6674, + "step": 3425 + }, + { + "epoch": 1.37, + "learning_rate": 6.502057613168725e-05, + "loss": 0.684, + "step": 3430 + }, + { + "epoch": 1.37, + "learning_rate": 6.481481481481482e-05, + "loss": 0.6753, + "step": 3435 + }, + { + "epoch": 1.37, + "learning_rate": 6.460905349794238e-05, + "loss": 0.6902, + "step": 3440 + }, + { + "epoch": 1.38, + "learning_rate": 6.440329218106996e-05, + "loss": 0.6664, + "step": 3445 + }, + { + "epoch": 1.38, + "learning_rate": 6.419753086419753e-05, + "loss": 0.684, + "step": 3450 + }, + { + "epoch": 1.38, + "learning_rate": 6.39917695473251e-05, + "loss": 0.682, + "step": 3455 + }, + { + "epoch": 1.38, + "learning_rate": 6.378600823045267e-05, + "loss": 0.6764, + "step": 3460 + }, + { + "epoch": 1.38, + "learning_rate": 6.358024691358025e-05, + "loss": 0.6783, + "step": 3465 + }, + { + "epoch": 1.39, + "learning_rate": 6.337448559670782e-05, + "loss": 0.6962, + "step": 3470 + }, + { + "epoch": 1.39, + "learning_rate": 6.31687242798354e-05, + "loss": 0.6819, + "step": 3475 + }, + { + "epoch": 1.39, + "learning_rate": 6.296296296296296e-05, + "loss": 0.6741, + "step": 3480 + }, + { + "epoch": 1.39, + "learning_rate": 6.275720164609054e-05, + "loss": 0.6754, + "step": 3485 + }, + { + "epoch": 1.39, + "learning_rate": 6.255144032921812e-05, + "loss": 0.6717, + "step": 3490 + }, + { + "epoch": 1.4, + "learning_rate": 6.234567901234569e-05, + "loss": 0.667, + "step": 3495 + }, + { + "epoch": 1.4, + "learning_rate": 6.213991769547325e-05, + "loss": 0.6822, + "step": 3500 + } + ], + "logging_steps": 5, + "max_steps": 5010, + "num_input_tokens_seen": 0, + "num_train_epochs": 2, + "save_steps": 500, + "total_flos": 1.408889273989464e+19, + "train_batch_size": 1, + "trial_name": null, + "trial_params": null +} diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/training_args.bin b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/training_args.bin new file mode 100644 index 0000000000000000000000000000000000000000..e707059a03fbe62142ac41332e145ac1ac1f36cc --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b99a1729574e0e46ee782b42dc90101a785d5b4792871920d293f44722c28cc +size 5944 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/zero_to_fp32.py b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/zero_to_fp32.py new file mode 100644 index 0000000000000000000000000000000000000000..c98caae31534368be22b67fc4ae906836c992a8d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-3500/zero_to_fp32.py @@ -0,0 +1,587 @@ +#!/usr/bin/env python + +# Copyright (c) Microsoft Corporation. +# SPDX-License-Identifier: Apache-2.0 + +# DeepSpeed Team + +# This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets +# copied into the top level checkpoint dir, so the user can easily do the conversion at any point in +# the future. Once extracted, the weights don't require DeepSpeed and can be used in any +# application. +# +# example: python zero_to_fp32.py . pytorch_model.bin + +import argparse +import torch +import glob +import math +import os +import re +from collections import OrderedDict +from dataclasses import dataclass + +# while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with +# DeepSpeed data structures it has to be available in the current python environment. +from deepspeed.utils import logger +from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS, + FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES, + FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS) + + +@dataclass +class zero_model_state: + buffers: dict() + param_shapes: dict() + shared_params: list + ds_version: int + frozen_param_shapes: dict() + frozen_param_fragments: dict() + + +debug = 0 + +# load to cpu +device = torch.device('cpu') + + +def atoi(text): + return int(text) if text.isdigit() else text + + +def natural_keys(text): + ''' + alist.sort(key=natural_keys) sorts in human order + http://nedbatchelder.com/blog/200712/human_sorting.html + (See Toothy's implementation in the comments) + ''' + return [atoi(c) for c in re.split(r'(\d+)', text)] + + +def get_model_state_file(checkpoint_dir, zero_stage): + if not os.path.isdir(checkpoint_dir): + raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist") + + # there should be only one file + if zero_stage <= 2: + file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt") + elif zero_stage == 3: + file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt") + + if not os.path.exists(file): + raise FileNotFoundError(f"can't find model states file at '{file}'") + + return file + + +def get_checkpoint_files(checkpoint_dir, glob_pattern): + # XXX: need to test that this simple glob rule works for multi-node setup too + ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys) + + if len(ckpt_files) == 0: + raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'") + + return ckpt_files + + +def get_optim_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt") + + +def get_model_state_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_model_states.pt") + + +def parse_model_states(files): + zero_model_states = [] + for file in files: + state_dict = torch.load(file, map_location=device) + + if BUFFER_NAMES not in state_dict: + raise ValueError(f"{file} is not a model state checkpoint") + buffer_names = state_dict[BUFFER_NAMES] + if debug: + print("Found buffers:", buffer_names) + + # recover just the buffers while restoring them to fp32 if they were saved in fp16 + buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names} + param_shapes = state_dict[PARAM_SHAPES] + + # collect parameters that are included in param_shapes + param_names = [] + for s in param_shapes: + for name in s.keys(): + param_names.append(name) + + # update with frozen parameters + frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None) + if frozen_param_shapes is not None: + if debug: + print(f"Found frozen_param_shapes: {frozen_param_shapes}") + param_names += list(frozen_param_shapes.keys()) + + # handle shared params + shared_params = [[k, v] for k, v in state_dict["shared_params"].items()] + + ds_version = state_dict.get(DS_VERSION, None) + + frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None) + + z_model_state = zero_model_state(buffers=buffers, + param_shapes=param_shapes, + shared_params=shared_params, + ds_version=ds_version, + frozen_param_shapes=frozen_param_shapes, + frozen_param_fragments=frozen_param_fragments) + zero_model_states.append(z_model_state) + + return zero_model_states + + +def parse_optim_states(files, ds_checkpoint_dir): + + total_files = len(files) + state_dicts = [] + for f in files: + state_dict = torch.load(f, map_location=device) + # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights + # and also handle the case where it was already removed by another helper script + state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None) + state_dicts.append(state_dict) + + if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]: + raise ValueError(f"{files[0]} is not a zero checkpoint") + zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE] + world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT] + + # For ZeRO-2 each param group can have different partition_count as data parallelism for expert + # parameters can be different from data parallelism for non-expert parameters. So we can just + # use the max of the partition_count to get the dp world_size. + + if type(world_size) is list: + world_size = max(world_size) + + if world_size != total_files: + raise ValueError( + f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. " + "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes." + ) + + # the groups are named differently in each stage + if zero_stage <= 2: + fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS + elif zero_stage == 3: + fp32_groups_key = FP32_FLAT_GROUPS + else: + raise ValueError(f"unknown zero stage {zero_stage}") + + if zero_stage <= 2: + fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))] + elif zero_stage == 3: + # if there is more than one param group, there will be multiple flattened tensors - one + # flattened tensor per group - for simplicity merge them into a single tensor + # + # XXX: could make the script more memory efficient for when there are multiple groups - it + # will require matching the sub-lists of param_shapes for each param group flattened tensor + + fp32_flat_groups = [ + torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts)) + ] + + return zero_stage, world_size, fp32_flat_groups + + +def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir): + """ + Returns fp32 state_dict reconstructed from ds checkpoint + + Args: + - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are) + + """ + print(f"Processing zero checkpoint '{ds_checkpoint_dir}'") + + optim_files = get_optim_files(ds_checkpoint_dir) + zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir) + print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}") + + model_files = get_model_state_files(ds_checkpoint_dir) + + zero_model_states = parse_model_states(model_files) + print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}') + + if zero_stage <= 2: + return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states) + elif zero_stage == 3: + return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states) + + +def _zero2_merge_frozen_params(state_dict, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + frozen_param_fragments = zero_model_states[0].frozen_param_fragments + + if debug: + num_elem = sum(s.numel() for s in frozen_param_shapes.values()) + print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in frozen_param_fragments.values()]) + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + state_dict[name] = frozen_param_fragments[name] + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + + # Reconstruction protocol: + # + # XXX: document this + + if debug: + for i in range(world_size): + for j in range(len(fp32_flat_groups[0])): + print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}") + + # XXX: memory usage doubles here (zero2) + num_param_groups = len(fp32_flat_groups[0]) + merged_single_partition_of_fp32_groups = [] + for i in range(num_param_groups): + merged_partitions = [sd[i] for sd in fp32_flat_groups] + full_single_fp32_vector = torch.cat(merged_partitions, 0) + merged_single_partition_of_fp32_groups.append(full_single_fp32_vector) + avail_numel = sum( + [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups]) + + if debug: + wanted_params = sum([len(shapes) for shapes in param_shapes]) + wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes]) + # not asserting if there is a mismatch due to possible padding + print(f"Have {avail_numel} numels to process.") + print(f"Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + total_numel = 0 + total_params = 0 + for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups): + offset = 0 + avail_numel = full_single_fp32_vector.numel() + for name, shape in shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape) + offset += unpartitioned_numel + + # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and + # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex + # paddings performed in the code it's almost impossible to predict the exact numbers w/o the + # live optimizer object, so we are checking that the numbers are within the right range + align_to = 2 * world_size + + def zero2_align(x): + return align_to * math.ceil(x / align_to) + + if debug: + print(f"original offset={offset}, avail_numel={avail_numel}") + + offset = zero2_align(offset) + avail_numel = zero2_align(avail_numel) + + if debug: + print(f"aligned offset={offset}, avail_numel={avail_numel}") + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero2_merge_frozen_params(state_dict, zero_model_states) + + _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def zero3_partitioned_param_info(unpartitioned_numel, world_size): + remainder = unpartitioned_numel % world_size + padding_numel = (world_size - remainder) if remainder else 0 + partitioned_numel = math.ceil(unpartitioned_numel / world_size) + return partitioned_numel, padding_numel + + +def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + if debug: + for i in range(world_size): + num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values()) + print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in zero_model_states[0].frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states) + state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape) + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + avail_numel = fp32_flat_groups[0].numel() * world_size + # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each + # param, re-consolidating each param, while dealing with padding if any + + # merge list of dicts, preserving order + param_shapes = {k: v for d in param_shapes for k, v in d.items()} + + if debug: + for i in range(world_size): + print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}") + + wanted_params = len(param_shapes) + wanted_numel = sum(shape.numel() for shape in param_shapes.values()) + # not asserting if there is a mismatch due to possible padding + avail_numel = fp32_flat_groups[0].numel() * world_size + print(f"Trainable params: Have {avail_numel} numels to process.") + print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + offset = 0 + total_numel = 0 + total_params = 0 + for name, shape in param_shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + # XXX: memory usage doubles here + state_dict[name] = torch.cat( + tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)), + 0).narrow(0, 0, unpartitioned_numel).view(shape) + offset += partitioned_numel + + offset *= world_size + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero3_merge_frozen_params(state_dict, world_size, zero_model_states) + + _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with + ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example + via a model hub. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14`` + + Returns: + - pytorch ``state_dict`` + + Note: this approach may not work if your application doesn't have sufficient free CPU memory and + you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with + the checkpoint. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint + # do the training and checkpoint saving + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu + model = model.cpu() # move to cpu + model.load_state_dict(state_dict) + # submit to model hub or save the model to share with others + + In this example the ``model`` will no longer be usable in the deepspeed context of the same + application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead. + + """ + if tag is None: + latest_path = os.path.join(checkpoint_dir, 'latest') + if os.path.isfile(latest_path): + with open(latest_path, 'r') as fd: + tag = fd.read().strip() + else: + raise ValueError(f"Unable to find 'latest' file at {latest_path}") + + ds_checkpoint_dir = os.path.join(checkpoint_dir, tag) + + if not os.path.isdir(ds_checkpoint_dir): + raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist") + + return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir) + + +def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be + loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + """ + + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + print(f"Saving fp32 state dict to {output_file}") + torch.save(state_dict, output_file) + + +def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None): + """ + 1. Put the provided model to cpu + 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` + 3. Load it into the provided model + + Args: + - ``model``: the model object to update + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + + Returns: + - ``model`: modified model + + Make sure you have plenty of CPU memory available before you call this function. If you don't + have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it + conveniently placed for you in the checkpoint folder. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint + model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir) + # submit to model hub or save the model to share with others + + Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context + of the same application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + """ + logger.info(f"Extracting fp32 weights") + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + + logger.info(f"Overwriting model with fp32 weights") + model = model.cpu() + model.load_state_dict(state_dict, strict=False) + + return model + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("checkpoint_dir", + type=str, + help="path to the desired checkpoint folder, e.g., path/checkpoint-12") + parser.add_argument( + "output_file", + type=str, + help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)") + parser.add_argument("-t", + "--tag", + type=str, + default=None, + help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1") + parser.add_argument("-d", "--debug", action='store_true', help="enable debug") + args = parser.parse_args() + + debug = args.debug + + convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag) diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/README.md b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d380bbbf0bf0fa1f211b53410559607e5007a209 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/README.md @@ -0,0 +1,202 @@ +--- +library_name: peft +base_model: meta-llama/Llama-2-7b-hf +--- + +# Model Card for Model ID + + + + + +## Model Details + +### Model Description + + + + + +- **Developed by:** [More Information Needed] +- **Funded by [optional]:** [More Information Needed] +- **Shared by [optional]:** [More Information Needed] +- **Model type:** [More Information Needed] +- **Language(s) (NLP):** [More Information Needed] +- **License:** [More Information Needed] +- **Finetuned from model [optional]:** [More Information Needed] + +### Model Sources [optional] + + + +- **Repository:** [More Information Needed] +- **Paper [optional]:** [More Information Needed] +- **Demo [optional]:** [More Information Needed] + +## Uses + + + +### Direct Use + + + +[More Information Needed] + +### Downstream Use [optional] + + + +[More Information Needed] + +### Out-of-Scope Use + + + +[More Information Needed] + +## Bias, Risks, and Limitations + + + +[More Information Needed] + +### Recommendations + + + +Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. + +## How to Get Started with the Model + +Use the code below to get started with the model. + +[More Information Needed] + +## Training Details + +### Training Data + + + +[More Information Needed] + +### Training Procedure + + + +#### Preprocessing [optional] + +[More Information Needed] + + +#### Training Hyperparameters + +- **Training regime:** [More Information Needed] + +#### Speeds, Sizes, Times [optional] + + + +[More Information Needed] + +## Evaluation + + + +### Testing Data, Factors & Metrics + +#### Testing Data + + + +[More Information Needed] + +#### Factors + + + +[More Information Needed] + +#### Metrics + + + +[More Information Needed] + +### Results + +[More Information Needed] + +#### Summary + + + +## Model Examination [optional] + + + +[More Information Needed] + +## Environmental Impact + + + +Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700). + +- **Hardware Type:** [More Information Needed] +- **Hours used:** [More Information Needed] +- **Cloud Provider:** [More Information Needed] +- **Compute Region:** [More Information Needed] +- **Carbon Emitted:** [More Information Needed] + +## Technical Specifications [optional] + +### Model Architecture and Objective + +[More Information Needed] + +### Compute Infrastructure + +[More Information Needed] + +#### Hardware + +[More Information Needed] + +#### Software + +[More Information Needed] + +## Citation [optional] + + + +**BibTeX:** + +[More Information Needed] + +**APA:** + +[More Information Needed] + +## Glossary [optional] + + + +[More Information Needed] + +## More Information [optional] + +[More Information Needed] + +## Model Card Authors [optional] + +[More Information Needed] + +## Model Card Contact + +[More Information Needed] +### Framework versions + +- PEFT 0.9.0 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/adapter_config.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/adapter_config.json new file mode 100644 index 0000000000000000000000000000000000000000..9c81a592f0ff08374a4f61f6003029070a8429ae --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/adapter_config.json @@ -0,0 +1,35 @@ +{ + "alpha_pattern": {}, + "auto_mapping": null, + "base_model_name_or_path": "meta-llama/Llama-2-7b-hf", + "bias": "none", + "fan_in_fan_out": false, + "inference_mode": true, + "init_lora_weights": true, + "layers_pattern": null, + "layers_to_transform": null, + "loftq_config": {}, + "lora_alpha": 16, + "lora_dropout": 0.05, + "megatron_config": null, + "megatron_core": "megatron.core", + "modules_to_save": null, + "mora_type": 1, + "peft_type": "LORA", + "r": 8, + "rank_pattern": {}, + "revision": null, + "target_modules": [ + "q_proj", + "k_proj", + "v_proj", + "o_proj", + "gate_proj", + "down_proj", + "up_proj" + ], + "task_type": "CAUSAL_LM", + "use_dora": false, + "use_mora": false, + "use_rslora": false +} \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/adapter_model.safetensors b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/adapter_model.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..5c0192bdea98f0b3b2070bdb5e703d03a67aa8af --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/adapter_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:760f271674e70b10f3c0862e636e6e476374822135ffd779b5bc5e8efeeaf544 +size 564342240 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/global_step4000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/global_step4000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..334b959ec8134cad314f452285076a897f7dd7dc --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/global_step4000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:488f3b09d708dea624d9aa5a2203a60393cef34ba96a723da74967d6000addbc +size 239914224 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/global_step4000/mp_rank_00_model_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/global_step4000/mp_rank_00_model_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..f69a31863f7417e2c602314eea4546a3dc3e38fa --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/global_step4000/mp_rank_00_model_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69e0b718ee03fac24adc36a83d378c71464a92a58f16855c28b0019d44f8fa25 +size 40303404 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/latest b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/latest new file mode 100644 index 0000000000000000000000000000000000000000..641c40ce8d5e05e04a0840d69bcc5fac045a3fbd --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/latest @@ -0,0 +1 @@ +global_step4000 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/rng_state.pth b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/rng_state.pth new file mode 100644 index 0000000000000000000000000000000000000000..178d8815a2b3cdca228a0041ccaf1c5aaa4fb84d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/rng_state.pth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dc888883ee7f81d8fd46e862508c2a1f0ce08f0cd29a1f2a2ecef8bcdbbd555 +size 14244 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/scheduler.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/scheduler.pt new file mode 100644 index 0000000000000000000000000000000000000000..7425eca6955a32648ed4f5d49750541bf784bb01 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/scheduler.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5c63e5be21eafeb9162ff869971752483dca22315942206614c9edfe5714c18 +size 1064 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/trainer_state.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/trainer_state.json new file mode 100644 index 0000000000000000000000000000000000000000..a792ed6668e5cdb11c19ef23c3d958f87f923f03 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/trainer_state.json @@ -0,0 +1,4821 @@ +{ + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 1.5966569994074906, + "eval_steps": 500, + "global_step": 4000, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.0, + "learning_rate": 6.666666666666667e-06, + "loss": 1.3797, + "step": 5 + }, + { + "epoch": 0.0, + "learning_rate": 1.3333333333333333e-05, + "loss": 1.3952, + "step": 10 + }, + { + "epoch": 0.01, + "learning_rate": 2e-05, + "loss": 1.3112, + "step": 15 + }, + { + "epoch": 0.01, + "learning_rate": 2.6666666666666667e-05, + "loss": 1.3136, + "step": 20 + }, + { + "epoch": 0.01, + "learning_rate": 3.3333333333333335e-05, + "loss": 1.2012, + "step": 25 + }, + { + "epoch": 0.01, + "learning_rate": 4e-05, + "loss": 1.1277, + "step": 30 + }, + { + "epoch": 0.01, + "learning_rate": 4.666666666666667e-05, + "loss": 1.0832, + "step": 35 + }, + { + "epoch": 0.02, + "learning_rate": 5.333333333333333e-05, + "loss": 1.0659, + "step": 40 + }, + { + "epoch": 0.02, + "learning_rate": 6e-05, + "loss": 0.983, + "step": 45 + }, + { + "epoch": 0.02, + "learning_rate": 6.666666666666667e-05, + "loss": 0.9763, + "step": 50 + }, + { + "epoch": 0.02, + "learning_rate": 7.333333333333333e-05, + "loss": 0.9992, + "step": 55 + }, + { + "epoch": 0.02, + "learning_rate": 8e-05, + "loss": 0.9405, + "step": 60 + }, + { + "epoch": 0.03, + "learning_rate": 8.666666666666667e-05, + "loss": 0.9827, + "step": 65 + }, + { + "epoch": 0.03, + "learning_rate": 9.333333333333334e-05, + "loss": 0.9061, + "step": 70 + }, + { + "epoch": 0.03, + "learning_rate": 0.0001, + "loss": 0.8921, + "step": 75 + }, + { + "epoch": 0.03, + "learning_rate": 0.00010666666666666667, + "loss": 0.9377, + "step": 80 + }, + { + "epoch": 0.03, + "learning_rate": 0.00011333333333333334, + "loss": 0.8528, + "step": 85 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012, + "loss": 0.8913, + "step": 90 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012666666666666666, + "loss": 0.8562, + "step": 95 + }, + { + "epoch": 0.04, + "learning_rate": 0.00013333333333333334, + "loss": 0.877, + "step": 100 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014, + "loss": 0.8781, + "step": 105 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014666666666666666, + "loss": 0.8546, + "step": 110 + }, + { + "epoch": 0.05, + "learning_rate": 0.00015333333333333334, + "loss": 0.8672, + "step": 115 + }, + { + "epoch": 0.05, + "learning_rate": 0.00016, + "loss": 0.8611, + "step": 120 + }, + { + "epoch": 0.05, + "learning_rate": 0.0001666666666666667, + "loss": 0.8624, + "step": 125 + }, + { + "epoch": 0.05, + "learning_rate": 0.00017333333333333334, + "loss": 0.8477, + "step": 130 + }, + { + "epoch": 0.05, + "learning_rate": 0.00018, + "loss": 0.8227, + "step": 135 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001866666666666667, + "loss": 0.8064, + "step": 140 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019333333333333333, + "loss": 0.8422, + "step": 145 + }, + { + "epoch": 0.06, + "learning_rate": 0.0002, + "loss": 0.8471, + "step": 150 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001997942386831276, + "loss": 0.8183, + "step": 155 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019958847736625514, + "loss": 0.8229, + "step": 160 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019938271604938272, + "loss": 0.8114, + "step": 165 + }, + { + "epoch": 0.07, + "learning_rate": 0.0001991769547325103, + "loss": 0.7861, + "step": 170 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019897119341563788, + "loss": 0.841, + "step": 175 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019876543209876543, + "loss": 0.8549, + "step": 180 + }, + { + "epoch": 0.07, + "learning_rate": 0.000198559670781893, + "loss": 0.8449, + "step": 185 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001983539094650206, + "loss": 0.8311, + "step": 190 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019814814814814814, + "loss": 0.8296, + "step": 195 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019794238683127572, + "loss": 0.8263, + "step": 200 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001977366255144033, + "loss": 0.8452, + "step": 205 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019753086419753085, + "loss": 0.8044, + "step": 210 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019732510288065843, + "loss": 0.8119, + "step": 215 + }, + { + "epoch": 0.09, + "learning_rate": 0.000197119341563786, + "loss": 0.8127, + "step": 220 + }, + { + "epoch": 0.09, + "learning_rate": 0.0001969135802469136, + "loss": 0.7921, + "step": 225 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019670781893004114, + "loss": 0.803, + "step": 230 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019650205761316872, + "loss": 0.838, + "step": 235 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001962962962962963, + "loss": 0.7801, + "step": 240 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019609053497942388, + "loss": 0.817, + "step": 245 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019588477366255146, + "loss": 0.8211, + "step": 250 + }, + { + "epoch": 0.1, + "learning_rate": 0.000195679012345679, + "loss": 0.8423, + "step": 255 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001954732510288066, + "loss": 0.8007, + "step": 260 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019526748971193417, + "loss": 0.8135, + "step": 265 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019506172839506175, + "loss": 0.7961, + "step": 270 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019485596707818933, + "loss": 0.797, + "step": 275 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019465020576131688, + "loss": 0.793, + "step": 280 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019444444444444446, + "loss": 0.7809, + "step": 285 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019423868312757204, + "loss": 0.7811, + "step": 290 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019403292181069962, + "loss": 0.8074, + "step": 295 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019382716049382717, + "loss": 0.8028, + "step": 300 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019362139917695475, + "loss": 0.7895, + "step": 305 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019341563786008233, + "loss": 0.7777, + "step": 310 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019320987654320988, + "loss": 0.7868, + "step": 315 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019300411522633746, + "loss": 0.7921, + "step": 320 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019279835390946504, + "loss": 0.8, + "step": 325 + }, + { + "epoch": 0.13, + "learning_rate": 0.0001925925925925926, + "loss": 0.7781, + "step": 330 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019238683127572017, + "loss": 0.7799, + "step": 335 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019218106995884775, + "loss": 0.7921, + "step": 340 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019197530864197533, + "loss": 0.7851, + "step": 345 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019176954732510288, + "loss": 0.8106, + "step": 350 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019156378600823046, + "loss": 0.7953, + "step": 355 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019135802469135804, + "loss": 0.8084, + "step": 360 + }, + { + "epoch": 0.15, + "learning_rate": 0.0001911522633744856, + "loss": 0.8298, + "step": 365 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019094650205761317, + "loss": 0.8273, + "step": 370 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019074074074074075, + "loss": 0.8047, + "step": 375 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019053497942386833, + "loss": 0.8108, + "step": 380 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019032921810699588, + "loss": 0.8207, + "step": 385 + }, + { + "epoch": 0.16, + "learning_rate": 0.00019012345679012346, + "loss": 0.7884, + "step": 390 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018991769547325104, + "loss": 0.7918, + "step": 395 + }, + { + "epoch": 0.16, + "learning_rate": 0.0001897119341563786, + "loss": 0.7554, + "step": 400 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018950617283950617, + "loss": 0.8099, + "step": 405 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018930041152263375, + "loss": 0.807, + "step": 410 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018909465020576133, + "loss": 0.7793, + "step": 415 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018888888888888888, + "loss": 0.7734, + "step": 420 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018868312757201646, + "loss": 0.7786, + "step": 425 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018847736625514404, + "loss": 0.7548, + "step": 430 + }, + { + "epoch": 0.17, + "learning_rate": 0.0001882716049382716, + "loss": 0.8024, + "step": 435 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018806584362139917, + "loss": 0.7708, + "step": 440 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018786008230452675, + "loss": 0.8045, + "step": 445 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018765432098765433, + "loss": 0.7477, + "step": 450 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018744855967078189, + "loss": 0.7474, + "step": 455 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018724279835390946, + "loss": 0.7629, + "step": 460 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018703703703703704, + "loss": 0.7777, + "step": 465 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018683127572016462, + "loss": 0.7823, + "step": 470 + }, + { + "epoch": 0.19, + "learning_rate": 0.0001866255144032922, + "loss": 0.7762, + "step": 475 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018641975308641978, + "loss": 0.782, + "step": 480 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018621399176954733, + "loss": 0.7783, + "step": 485 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001860082304526749, + "loss": 0.7376, + "step": 490 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001858024691358025, + "loss": 0.7683, + "step": 495 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018559670781893007, + "loss": 0.7547, + "step": 500 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018539094650205762, + "loss": 0.7569, + "step": 505 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001851851851851852, + "loss": 0.7796, + "step": 510 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018497942386831278, + "loss": 0.7888, + "step": 515 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018477366255144033, + "loss": 0.7763, + "step": 520 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018456790123456791, + "loss": 0.7787, + "step": 525 + }, + { + "epoch": 0.21, + "learning_rate": 0.0001843621399176955, + "loss": 0.772, + "step": 530 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018415637860082307, + "loss": 0.786, + "step": 535 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018395061728395062, + "loss": 0.7639, + "step": 540 + }, + { + "epoch": 0.22, + "learning_rate": 0.0001837448559670782, + "loss": 0.775, + "step": 545 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018353909465020578, + "loss": 0.8002, + "step": 550 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018333333333333334, + "loss": 0.7359, + "step": 555 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018312757201646091, + "loss": 0.747, + "step": 560 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001829218106995885, + "loss": 0.8234, + "step": 565 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018271604938271605, + "loss": 0.7586, + "step": 570 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018251028806584363, + "loss": 0.7315, + "step": 575 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001823045267489712, + "loss": 0.7986, + "step": 580 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018209876543209878, + "loss": 0.7758, + "step": 585 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018189300411522634, + "loss": 0.7869, + "step": 590 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018168724279835392, + "loss": 0.7596, + "step": 595 + }, + { + "epoch": 0.24, + "learning_rate": 0.0001814814814814815, + "loss": 0.7658, + "step": 600 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018127572016460905, + "loss": 0.7851, + "step": 605 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018106995884773663, + "loss": 0.7957, + "step": 610 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001808641975308642, + "loss": 0.7756, + "step": 615 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018065843621399178, + "loss": 0.7911, + "step": 620 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018045267489711934, + "loss": 0.7864, + "step": 625 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018024691358024692, + "loss": 0.7683, + "step": 630 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001800411522633745, + "loss": 0.7731, + "step": 635 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017983539094650205, + "loss": 0.7671, + "step": 640 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017962962962962963, + "loss": 0.7367, + "step": 645 + }, + { + "epoch": 0.26, + "learning_rate": 0.0001794238683127572, + "loss": 0.8024, + "step": 650 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017921810699588476, + "loss": 0.7572, + "step": 655 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017901234567901234, + "loss": 0.7554, + "step": 660 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017880658436213992, + "loss": 0.7677, + "step": 665 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001786008230452675, + "loss": 0.7652, + "step": 670 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017839506172839508, + "loss": 0.7771, + "step": 675 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017818930041152265, + "loss": 0.7747, + "step": 680 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001779835390946502, + "loss": 0.767, + "step": 685 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017777777777777779, + "loss": 0.7738, + "step": 690 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017757201646090537, + "loss": 0.7271, + "step": 695 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017736625514403294, + "loss": 0.7316, + "step": 700 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017716049382716052, + "loss": 0.7831, + "step": 705 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017695473251028808, + "loss": 0.7835, + "step": 710 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017674897119341566, + "loss": 0.7497, + "step": 715 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017654320987654323, + "loss": 0.7757, + "step": 720 + }, + { + "epoch": 0.29, + "learning_rate": 0.0001763374485596708, + "loss": 0.74, + "step": 725 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017613168724279837, + "loss": 0.7697, + "step": 730 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017592592592592595, + "loss": 0.774, + "step": 735 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017572016460905352, + "loss": 0.7668, + "step": 740 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017551440329218108, + "loss": 0.7779, + "step": 745 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017530864197530866, + "loss": 0.7441, + "step": 750 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017510288065843624, + "loss": 0.7578, + "step": 755 + }, + { + "epoch": 0.3, + "learning_rate": 0.0001748971193415638, + "loss": 0.8358, + "step": 760 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017469135802469137, + "loss": 0.7473, + "step": 765 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017448559670781895, + "loss": 0.7517, + "step": 770 + }, + { + "epoch": 0.31, + "learning_rate": 0.0001742798353909465, + "loss": 0.7593, + "step": 775 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017407407407407408, + "loss": 0.7251, + "step": 780 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017386831275720166, + "loss": 0.7365, + "step": 785 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017366255144032924, + "loss": 0.7798, + "step": 790 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001734567901234568, + "loss": 0.746, + "step": 795 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017325102880658437, + "loss": 0.7607, + "step": 800 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017304526748971195, + "loss": 0.7694, + "step": 805 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001728395061728395, + "loss": 0.7926, + "step": 810 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017263374485596708, + "loss": 0.795, + "step": 815 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017242798353909466, + "loss": 0.7581, + "step": 820 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017222222222222224, + "loss": 0.7629, + "step": 825 + }, + { + "epoch": 0.33, + "learning_rate": 0.0001720164609053498, + "loss": 0.7526, + "step": 830 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017181069958847737, + "loss": 0.7338, + "step": 835 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017160493827160495, + "loss": 0.7544, + "step": 840 + }, + { + "epoch": 0.34, + "learning_rate": 0.0001713991769547325, + "loss": 0.7522, + "step": 845 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017119341563786008, + "loss": 0.7639, + "step": 850 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017098765432098766, + "loss": 0.7914, + "step": 855 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017078189300411524, + "loss": 0.7635, + "step": 860 + }, + { + "epoch": 0.35, + "learning_rate": 0.0001705761316872428, + "loss": 0.8343, + "step": 865 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017037037037037037, + "loss": 0.7299, + "step": 870 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017016460905349795, + "loss": 0.7643, + "step": 875 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016995884773662553, + "loss": 0.7343, + "step": 880 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016975308641975308, + "loss": 0.7546, + "step": 885 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016954732510288066, + "loss": 0.7435, + "step": 890 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016934156378600824, + "loss": 0.8086, + "step": 895 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016913580246913582, + "loss": 0.7274, + "step": 900 + }, + { + "epoch": 0.36, + "learning_rate": 0.0001689300411522634, + "loss": 0.7511, + "step": 905 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016872427983539098, + "loss": 0.7689, + "step": 910 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016851851851851853, + "loss": 0.754, + "step": 915 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001683127572016461, + "loss": 0.7298, + "step": 920 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001681069958847737, + "loss": 0.7755, + "step": 925 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016790123456790124, + "loss": 0.7854, + "step": 930 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016769547325102882, + "loss": 0.7452, + "step": 935 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001674897119341564, + "loss": 0.7473, + "step": 940 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016728395061728398, + "loss": 0.7855, + "step": 945 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016707818930041153, + "loss": 0.7527, + "step": 950 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001668724279835391, + "loss": 0.7641, + "step": 955 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001666666666666667, + "loss": 0.828, + "step": 960 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016646090534979424, + "loss": 0.7571, + "step": 965 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016625514403292182, + "loss": 0.7768, + "step": 970 + }, + { + "epoch": 0.39, + "learning_rate": 0.0001660493827160494, + "loss": 0.7644, + "step": 975 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016584362139917695, + "loss": 0.7747, + "step": 980 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016563786008230453, + "loss": 0.7926, + "step": 985 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001654320987654321, + "loss": 0.7645, + "step": 990 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001652263374485597, + "loss": 0.7464, + "step": 995 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016502057613168724, + "loss": 0.7558, + "step": 1000 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016481481481481482, + "loss": 0.7574, + "step": 1005 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001646090534979424, + "loss": 0.7491, + "step": 1010 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016440329218106995, + "loss": 0.756, + "step": 1015 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016419753086419753, + "loss": 0.7679, + "step": 1020 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001639917695473251, + "loss": 0.776, + "step": 1025 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001637860082304527, + "loss": 0.7235, + "step": 1030 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016358024691358024, + "loss": 0.7817, + "step": 1035 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016337448559670782, + "loss": 0.7333, + "step": 1040 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001631687242798354, + "loss": 0.754, + "step": 1045 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016296296296296295, + "loss": 0.74, + "step": 1050 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016275720164609053, + "loss": 0.7857, + "step": 1055 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001625514403292181, + "loss": 0.8015, + "step": 1060 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001623456790123457, + "loss": 0.7508, + "step": 1065 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016213991769547324, + "loss": 0.7514, + "step": 1070 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016193415637860082, + "loss": 0.7326, + "step": 1075 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001617283950617284, + "loss": 0.7322, + "step": 1080 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016152263374485595, + "loss": 0.7373, + "step": 1085 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016131687242798353, + "loss": 0.7637, + "step": 1090 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001611111111111111, + "loss": 0.7697, + "step": 1095 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001609053497942387, + "loss": 0.7505, + "step": 1100 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016069958847736627, + "loss": 0.7568, + "step": 1105 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016049382716049385, + "loss": 0.786, + "step": 1110 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001602880658436214, + "loss": 0.7525, + "step": 1115 + }, + { + "epoch": 0.45, + "learning_rate": 0.00016008230452674898, + "loss": 0.7696, + "step": 1120 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015987654320987656, + "loss": 0.7648, + "step": 1125 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015967078189300414, + "loss": 0.7492, + "step": 1130 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001594650205761317, + "loss": 0.809, + "step": 1135 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015925925925925927, + "loss": 0.7592, + "step": 1140 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015905349794238685, + "loss": 0.7874, + "step": 1145 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015884773662551443, + "loss": 0.7874, + "step": 1150 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015864197530864198, + "loss": 0.7374, + "step": 1155 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015843621399176956, + "loss": 0.7218, + "step": 1160 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015823045267489714, + "loss": 0.7494, + "step": 1165 + }, + { + "epoch": 0.47, + "learning_rate": 0.0001580246913580247, + "loss": 0.7449, + "step": 1170 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015781893004115227, + "loss": 0.725, + "step": 1175 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015761316872427985, + "loss": 0.739, + "step": 1180 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015740740740740743, + "loss": 0.7554, + "step": 1185 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015720164609053498, + "loss": 0.7702, + "step": 1190 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015699588477366256, + "loss": 0.7418, + "step": 1195 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015679012345679014, + "loss": 0.7217, + "step": 1200 + }, + { + "epoch": 0.48, + "learning_rate": 0.0001565843621399177, + "loss": 0.7391, + "step": 1205 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015637860082304527, + "loss": 0.7696, + "step": 1210 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015617283950617285, + "loss": 0.7594, + "step": 1215 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001559670781893004, + "loss": 0.777, + "step": 1220 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015576131687242798, + "loss": 0.7441, + "step": 1225 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015555555555555556, + "loss": 0.7611, + "step": 1230 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015534979423868314, + "loss": 0.7278, + "step": 1235 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001551440329218107, + "loss": 0.7452, + "step": 1240 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015493827160493827, + "loss": 0.7939, + "step": 1245 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015473251028806585, + "loss": 0.7161, + "step": 1250 + }, + { + "epoch": 0.5, + "learning_rate": 0.0001545267489711934, + "loss": 0.7344, + "step": 1255 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015432098765432098, + "loss": 0.7368, + "step": 1260 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015411522633744856, + "loss": 0.7172, + "step": 1265 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015390946502057614, + "loss": 0.7589, + "step": 1270 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001537037037037037, + "loss": 0.7641, + "step": 1275 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015349794238683127, + "loss": 0.761, + "step": 1280 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015329218106995885, + "loss": 0.7414, + "step": 1285 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001530864197530864, + "loss": 0.7713, + "step": 1290 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015288065843621399, + "loss": 0.7543, + "step": 1295 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015267489711934156, + "loss": 0.7683, + "step": 1300 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015246913580246914, + "loss": 0.8106, + "step": 1305 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015226337448559672, + "loss": 0.7739, + "step": 1310 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015205761316872428, + "loss": 0.7585, + "step": 1315 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015185185185185185, + "loss": 0.7577, + "step": 1320 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015164609053497943, + "loss": 0.7608, + "step": 1325 + }, + { + "epoch": 0.53, + "learning_rate": 0.000151440329218107, + "loss": 0.7715, + "step": 1330 + }, + { + "epoch": 0.53, + "learning_rate": 0.0001512345679012346, + "loss": 0.7681, + "step": 1335 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015102880658436214, + "loss": 0.7476, + "step": 1340 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015082304526748972, + "loss": 0.7539, + "step": 1345 + }, + { + "epoch": 0.54, + "learning_rate": 0.0001506172839506173, + "loss": 0.7492, + "step": 1350 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015041152263374488, + "loss": 0.7491, + "step": 1355 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015020576131687243, + "loss": 0.7236, + "step": 1360 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015000000000000001, + "loss": 0.7328, + "step": 1365 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001497942386831276, + "loss": 0.7603, + "step": 1370 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014958847736625515, + "loss": 0.7206, + "step": 1375 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014938271604938272, + "loss": 0.7001, + "step": 1380 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001491769547325103, + "loss": 0.7241, + "step": 1385 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014897119341563788, + "loss": 0.7511, + "step": 1390 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014876543209876544, + "loss": 0.7546, + "step": 1395 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014855967078189301, + "loss": 0.762, + "step": 1400 + }, + { + "epoch": 0.56, + "learning_rate": 0.0001483539094650206, + "loss": 0.6979, + "step": 1405 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014814814814814815, + "loss": 0.7352, + "step": 1410 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014794238683127573, + "loss": 0.7604, + "step": 1415 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001477366255144033, + "loss": 0.7612, + "step": 1420 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014753086419753086, + "loss": 0.7618, + "step": 1425 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014732510288065844, + "loss": 0.7107, + "step": 1430 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014711934156378602, + "loss": 0.7247, + "step": 1435 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001469135802469136, + "loss": 0.7733, + "step": 1440 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014670781893004115, + "loss": 0.7627, + "step": 1445 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014650205761316873, + "loss": 0.7323, + "step": 1450 + }, + { + "epoch": 0.58, + "learning_rate": 0.0001462962962962963, + "loss": 0.7728, + "step": 1455 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014609053497942386, + "loss": 0.7541, + "step": 1460 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014588477366255144, + "loss": 0.7781, + "step": 1465 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014567901234567902, + "loss": 0.7474, + "step": 1470 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001454732510288066, + "loss": 0.7789, + "step": 1475 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014526748971193415, + "loss": 0.7497, + "step": 1480 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014506172839506173, + "loss": 0.7487, + "step": 1485 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001448559670781893, + "loss": 0.7563, + "step": 1490 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014465020576131686, + "loss": 0.7444, + "step": 1495 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014444444444444444, + "loss": 0.7399, + "step": 1500 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014423868312757202, + "loss": 0.7288, + "step": 1505 + }, + { + "epoch": 0.6, + "learning_rate": 0.0001440329218106996, + "loss": 0.7458, + "step": 1510 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014382716049382718, + "loss": 0.7297, + "step": 1515 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014362139917695473, + "loss": 0.7684, + "step": 1520 + }, + { + "epoch": 0.61, + "learning_rate": 0.0001434156378600823, + "loss": 0.7428, + "step": 1525 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014320987654320989, + "loss": 0.705, + "step": 1530 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014300411522633747, + "loss": 0.7445, + "step": 1535 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014279835390946504, + "loss": 0.7109, + "step": 1540 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001425925925925926, + "loss": 0.7502, + "step": 1545 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014238683127572018, + "loss": 0.7485, + "step": 1550 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014218106995884776, + "loss": 0.7421, + "step": 1555 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014197530864197534, + "loss": 0.7369, + "step": 1560 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001417695473251029, + "loss": 0.7746, + "step": 1565 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014156378600823047, + "loss": 0.7334, + "step": 1570 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014135802469135805, + "loss": 0.7251, + "step": 1575 + }, + { + "epoch": 0.63, + "learning_rate": 0.0001411522633744856, + "loss": 0.7146, + "step": 1580 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014094650205761318, + "loss": 0.7563, + "step": 1585 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014074074074074076, + "loss": 0.7247, + "step": 1590 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014053497942386834, + "loss": 0.7379, + "step": 1595 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001403292181069959, + "loss": 0.7684, + "step": 1600 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014012345679012347, + "loss": 0.7574, + "step": 1605 + }, + { + "epoch": 0.64, + "learning_rate": 0.00013991769547325105, + "loss": 0.7138, + "step": 1610 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001397119341563786, + "loss": 0.7472, + "step": 1615 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013950617283950618, + "loss": 0.7466, + "step": 1620 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013930041152263376, + "loss": 0.7288, + "step": 1625 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013909465020576134, + "loss": 0.7717, + "step": 1630 + }, + { + "epoch": 0.65, + "learning_rate": 0.0001388888888888889, + "loss": 0.7665, + "step": 1635 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013868312757201647, + "loss": 0.7408, + "step": 1640 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013847736625514405, + "loss": 0.7418, + "step": 1645 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001382716049382716, + "loss": 0.7502, + "step": 1650 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013806584362139918, + "loss": 0.7657, + "step": 1655 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013786008230452676, + "loss": 0.728, + "step": 1660 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001376543209876543, + "loss": 0.7142, + "step": 1665 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001374485596707819, + "loss": 0.7971, + "step": 1670 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013724279835390947, + "loss": 0.737, + "step": 1675 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013703703703703705, + "loss": 0.7947, + "step": 1680 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001368312757201646, + "loss": 0.7525, + "step": 1685 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013662551440329218, + "loss": 0.711, + "step": 1690 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013641975308641976, + "loss": 0.7459, + "step": 1695 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001362139917695473, + "loss": 0.7404, + "step": 1700 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001360082304526749, + "loss": 0.7458, + "step": 1705 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013580246913580247, + "loss": 0.754, + "step": 1710 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013559670781893005, + "loss": 0.7217, + "step": 1715 + }, + { + "epoch": 0.69, + "learning_rate": 0.0001353909465020576, + "loss": 0.7373, + "step": 1720 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013518518518518518, + "loss": 0.7567, + "step": 1725 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013497942386831276, + "loss": 0.7525, + "step": 1730 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013477366255144034, + "loss": 0.752, + "step": 1735 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013456790123456792, + "loss": 0.7342, + "step": 1740 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001343621399176955, + "loss": 0.7276, + "step": 1745 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013415637860082305, + "loss": 0.6915, + "step": 1750 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013395061728395063, + "loss": 0.737, + "step": 1755 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001337448559670782, + "loss": 0.7427, + "step": 1760 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001335390946502058, + "loss": 0.7126, + "step": 1765 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013333333333333334, + "loss": 0.7241, + "step": 1770 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013312757201646092, + "loss": 0.755, + "step": 1775 + }, + { + "epoch": 0.71, + "learning_rate": 0.0001329218106995885, + "loss": 0.7494, + "step": 1780 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013271604938271605, + "loss": 0.709, + "step": 1785 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013251028806584363, + "loss": 0.7555, + "step": 1790 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001323045267489712, + "loss": 0.7298, + "step": 1795 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001320987654320988, + "loss": 0.7232, + "step": 1800 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013189300411522634, + "loss": 0.7441, + "step": 1805 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013168724279835392, + "loss": 0.7623, + "step": 1810 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001314814814814815, + "loss": 0.7349, + "step": 1815 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013127572016460905, + "loss": 0.7773, + "step": 1820 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013106995884773663, + "loss": 0.7537, + "step": 1825 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001308641975308642, + "loss": 0.7579, + "step": 1830 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001306584362139918, + "loss": 0.7321, + "step": 1835 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013045267489711934, + "loss": 0.7175, + "step": 1840 + }, + { + "epoch": 0.74, + "learning_rate": 0.00013024691358024692, + "loss": 0.7553, + "step": 1845 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001300411522633745, + "loss": 0.7591, + "step": 1850 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012983539094650205, + "loss": 0.7581, + "step": 1855 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012962962962962963, + "loss": 0.7632, + "step": 1860 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001294238683127572, + "loss": 0.7434, + "step": 1865 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012921810699588476, + "loss": 0.7695, + "step": 1870 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012901234567901234, + "loss": 0.7808, + "step": 1875 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012880658436213992, + "loss": 0.7428, + "step": 1880 + }, + { + "epoch": 0.75, + "learning_rate": 0.0001286008230452675, + "loss": 0.7487, + "step": 1885 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012839506172839505, + "loss": 0.7033, + "step": 1890 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012818930041152263, + "loss": 0.7639, + "step": 1895 + }, + { + "epoch": 0.76, + "learning_rate": 0.0001279835390946502, + "loss": 0.7345, + "step": 1900 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012777777777777776, + "loss": 0.7434, + "step": 1905 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012757201646090534, + "loss": 0.7082, + "step": 1910 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012736625514403292, + "loss": 0.7294, + "step": 1915 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001271604938271605, + "loss": 0.74, + "step": 1920 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012695473251028805, + "loss": 0.7694, + "step": 1925 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012674897119341563, + "loss": 0.7339, + "step": 1930 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001265432098765432, + "loss": 0.7259, + "step": 1935 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001263374485596708, + "loss": 0.7307, + "step": 1940 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012613168724279837, + "loss": 0.7085, + "step": 1945 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012592592592592592, + "loss": 0.7662, + "step": 1950 + }, + { + "epoch": 0.78, + "learning_rate": 0.0001257201646090535, + "loss": 0.7145, + "step": 1955 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012551440329218108, + "loss": 0.7528, + "step": 1960 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012530864197530866, + "loss": 0.7308, + "step": 1965 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012510288065843624, + "loss": 0.7163, + "step": 1970 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001248971193415638, + "loss": 0.7254, + "step": 1975 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012469135802469137, + "loss": 0.7467, + "step": 1980 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012448559670781895, + "loss": 0.7391, + "step": 1985 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001242798353909465, + "loss": 0.7314, + "step": 1990 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012407407407407408, + "loss": 0.7048, + "step": 1995 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012386831275720166, + "loss": 0.7187, + "step": 2000 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012366255144032924, + "loss": 0.735, + "step": 2005 + }, + { + "epoch": 0.8, + "learning_rate": 0.0001234567901234568, + "loss": 0.7662, + "step": 2010 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012325102880658437, + "loss": 0.7437, + "step": 2015 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012304526748971195, + "loss": 0.7675, + "step": 2020 + }, + { + "epoch": 0.81, + "learning_rate": 0.0001228395061728395, + "loss": 0.7143, + "step": 2025 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012263374485596708, + "loss": 0.7101, + "step": 2030 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012242798353909466, + "loss": 0.7257, + "step": 2035 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012222222222222224, + "loss": 0.7522, + "step": 2040 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001220164609053498, + "loss": 0.7669, + "step": 2045 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012181069958847737, + "loss": 0.7283, + "step": 2050 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012160493827160495, + "loss": 0.7413, + "step": 2055 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001213991769547325, + "loss": 0.6988, + "step": 2060 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012119341563786008, + "loss": 0.7421, + "step": 2065 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012098765432098766, + "loss": 0.7152, + "step": 2070 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012078189300411524, + "loss": 0.7741, + "step": 2075 + }, + { + "epoch": 0.83, + "learning_rate": 0.0001205761316872428, + "loss": 0.7381, + "step": 2080 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012037037037037037, + "loss": 0.738, + "step": 2085 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012016460905349795, + "loss": 0.7258, + "step": 2090 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011995884773662552, + "loss": 0.7426, + "step": 2095 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011975308641975308, + "loss": 0.7185, + "step": 2100 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011954732510288066, + "loss": 0.7401, + "step": 2105 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011934156378600823, + "loss": 0.751, + "step": 2110 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011913580246913581, + "loss": 0.7284, + "step": 2115 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011893004115226339, + "loss": 0.7901, + "step": 2120 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011872427983539097, + "loss": 0.7432, + "step": 2125 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011851851851851852, + "loss": 0.7355, + "step": 2130 + }, + { + "epoch": 0.85, + "learning_rate": 0.0001183127572016461, + "loss": 0.7333, + "step": 2135 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011810699588477368, + "loss": 0.7504, + "step": 2140 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011790123456790123, + "loss": 0.7503, + "step": 2145 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011769547325102881, + "loss": 0.728, + "step": 2150 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011748971193415639, + "loss": 0.7485, + "step": 2155 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011728395061728397, + "loss": 0.7127, + "step": 2160 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011707818930041152, + "loss": 0.7278, + "step": 2165 + }, + { + "epoch": 0.87, + "learning_rate": 0.0001168724279835391, + "loss": 0.7513, + "step": 2170 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011666666666666668, + "loss": 0.7193, + "step": 2175 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011646090534979423, + "loss": 0.7245, + "step": 2180 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011625514403292181, + "loss": 0.7266, + "step": 2185 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011604938271604939, + "loss": 0.7531, + "step": 2190 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011584362139917696, + "loss": 0.7637, + "step": 2195 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011563786008230452, + "loss": 0.7388, + "step": 2200 + }, + { + "epoch": 0.88, + "learning_rate": 0.0001154320987654321, + "loss": 0.7222, + "step": 2205 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011522633744855968, + "loss": 0.7667, + "step": 2210 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011502057613168725, + "loss": 0.7382, + "step": 2215 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011481481481481482, + "loss": 0.7243, + "step": 2220 + }, + { + "epoch": 0.89, + "learning_rate": 0.0001146090534979424, + "loss": 0.7192, + "step": 2225 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011440329218106996, + "loss": 0.7237, + "step": 2230 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011419753086419754, + "loss": 0.7498, + "step": 2235 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011399176954732511, + "loss": 0.7007, + "step": 2240 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001137860082304527, + "loss": 0.758, + "step": 2245 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011358024691358025, + "loss": 0.7111, + "step": 2250 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011337448559670783, + "loss": 0.706, + "step": 2255 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001131687242798354, + "loss": 0.7423, + "step": 2260 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011296296296296296, + "loss": 0.7094, + "step": 2265 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011275720164609054, + "loss": 0.7331, + "step": 2270 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011255144032921812, + "loss": 0.7164, + "step": 2275 + }, + { + "epoch": 0.91, + "learning_rate": 0.0001123456790123457, + "loss": 0.7452, + "step": 2280 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011213991769547325, + "loss": 0.7172, + "step": 2285 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011193415637860083, + "loss": 0.7232, + "step": 2290 + }, + { + "epoch": 0.92, + "learning_rate": 0.0001117283950617284, + "loss": 0.7112, + "step": 2295 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011152263374485596, + "loss": 0.7459, + "step": 2300 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011131687242798354, + "loss": 0.7353, + "step": 2305 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011111111111111112, + "loss": 0.7406, + "step": 2310 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011090534979423868, + "loss": 0.7623, + "step": 2315 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011069958847736626, + "loss": 0.7567, + "step": 2320 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011049382716049384, + "loss": 0.7752, + "step": 2325 + }, + { + "epoch": 0.93, + "learning_rate": 0.0001102880658436214, + "loss": 0.7419, + "step": 2330 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011008230452674897, + "loss": 0.7244, + "step": 2335 + }, + { + "epoch": 0.93, + "learning_rate": 0.00010987654320987655, + "loss": 0.7553, + "step": 2340 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010967078189300413, + "loss": 0.7389, + "step": 2345 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010946502057613168, + "loss": 0.7002, + "step": 2350 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010925925925925926, + "loss": 0.7238, + "step": 2355 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010905349794238684, + "loss": 0.6923, + "step": 2360 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010884773662551442, + "loss": 0.7579, + "step": 2365 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010864197530864197, + "loss": 0.7291, + "step": 2370 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010843621399176955, + "loss": 0.721, + "step": 2375 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010823045267489713, + "loss": 0.7605, + "step": 2380 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010802469135802468, + "loss": 0.7297, + "step": 2385 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010781893004115226, + "loss": 0.7565, + "step": 2390 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010761316872427984, + "loss": 0.701, + "step": 2395 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010740740740740742, + "loss": 0.736, + "step": 2400 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010720164609053497, + "loss": 0.7079, + "step": 2405 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010699588477366255, + "loss": 0.7349, + "step": 2410 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010679012345679013, + "loss": 0.7106, + "step": 2415 + }, + { + "epoch": 0.97, + "learning_rate": 0.0001065843621399177, + "loss": 0.7396, + "step": 2420 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010637860082304528, + "loss": 0.7713, + "step": 2425 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010617283950617284, + "loss": 0.747, + "step": 2430 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010596707818930041, + "loss": 0.7475, + "step": 2435 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010576131687242799, + "loss": 0.7449, + "step": 2440 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010555555555555557, + "loss": 0.7208, + "step": 2445 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010534979423868315, + "loss": 0.7317, + "step": 2450 + }, + { + "epoch": 0.98, + "learning_rate": 0.0001051440329218107, + "loss": 0.7419, + "step": 2455 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010493827160493828, + "loss": 0.7148, + "step": 2460 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010473251028806586, + "loss": 0.7143, + "step": 2465 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010452674897119341, + "loss": 0.747, + "step": 2470 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010432098765432099, + "loss": 0.7079, + "step": 2475 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010411522633744857, + "loss": 0.7059, + "step": 2480 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010390946502057615, + "loss": 0.7272, + "step": 2485 + }, + { + "epoch": 0.99, + "learning_rate": 0.0001037037037037037, + "loss": 0.7281, + "step": 2490 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010349794238683128, + "loss": 0.6956, + "step": 2495 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010329218106995886, + "loss": 0.7571, + "step": 2500 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010308641975308641, + "loss": 0.7311, + "step": 2505 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010288065843621399, + "loss": 0.6815, + "step": 2510 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010267489711934157, + "loss": 0.6781, + "step": 2515 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010246913580246915, + "loss": 0.6948, + "step": 2520 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010226337448559671, + "loss": 0.7133, + "step": 2525 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010205761316872428, + "loss": 0.688, + "step": 2530 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010185185185185186, + "loss": 0.6687, + "step": 2535 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010164609053497942, + "loss": 0.7142, + "step": 2540 + }, + { + "epoch": 1.02, + "learning_rate": 0.000101440329218107, + "loss": 0.6885, + "step": 2545 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010123456790123458, + "loss": 0.6867, + "step": 2550 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010102880658436214, + "loss": 0.7045, + "step": 2555 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010082304526748971, + "loss": 0.7375, + "step": 2560 + }, + { + "epoch": 1.02, + "learning_rate": 0.0001006172839506173, + "loss": 0.7157, + "step": 2565 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010041152263374487, + "loss": 0.6828, + "step": 2570 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010020576131687243, + "loss": 0.7048, + "step": 2575 + }, + { + "epoch": 1.03, + "learning_rate": 0.0001, + "loss": 0.6944, + "step": 2580 + }, + { + "epoch": 1.03, + "learning_rate": 9.979423868312757e-05, + "loss": 0.696, + "step": 2585 + }, + { + "epoch": 1.03, + "learning_rate": 9.958847736625515e-05, + "loss": 0.6609, + "step": 2590 + }, + { + "epoch": 1.04, + "learning_rate": 9.938271604938272e-05, + "loss": 0.674, + "step": 2595 + }, + { + "epoch": 1.04, + "learning_rate": 9.91769547325103e-05, + "loss": 0.7138, + "step": 2600 + }, + { + "epoch": 1.04, + "learning_rate": 9.897119341563786e-05, + "loss": 0.713, + "step": 2605 + }, + { + "epoch": 1.04, + "learning_rate": 9.876543209876543e-05, + "loss": 0.7022, + "step": 2610 + }, + { + "epoch": 1.04, + "learning_rate": 9.8559670781893e-05, + "loss": 0.6955, + "step": 2615 + }, + { + "epoch": 1.05, + "learning_rate": 9.835390946502057e-05, + "loss": 0.6888, + "step": 2620 + }, + { + "epoch": 1.05, + "learning_rate": 9.814814814814815e-05, + "loss": 0.7003, + "step": 2625 + }, + { + "epoch": 1.05, + "learning_rate": 9.794238683127573e-05, + "loss": 0.7167, + "step": 2630 + }, + { + "epoch": 1.05, + "learning_rate": 9.77366255144033e-05, + "loss": 0.7087, + "step": 2635 + }, + { + "epoch": 1.05, + "learning_rate": 9.753086419753087e-05, + "loss": 0.7019, + "step": 2640 + }, + { + "epoch": 1.06, + "learning_rate": 9.732510288065844e-05, + "loss": 0.6609, + "step": 2645 + }, + { + "epoch": 1.06, + "learning_rate": 9.711934156378602e-05, + "loss": 0.7367, + "step": 2650 + }, + { + "epoch": 1.06, + "learning_rate": 9.691358024691359e-05, + "loss": 0.6862, + "step": 2655 + }, + { + "epoch": 1.06, + "learning_rate": 9.670781893004116e-05, + "loss": 0.7121, + "step": 2660 + }, + { + "epoch": 1.06, + "learning_rate": 9.650205761316873e-05, + "loss": 0.7031, + "step": 2665 + }, + { + "epoch": 1.07, + "learning_rate": 9.62962962962963e-05, + "loss": 0.7005, + "step": 2670 + }, + { + "epoch": 1.07, + "learning_rate": 9.609053497942388e-05, + "loss": 0.7041, + "step": 2675 + }, + { + "epoch": 1.07, + "learning_rate": 9.588477366255144e-05, + "loss": 0.6713, + "step": 2680 + }, + { + "epoch": 1.07, + "learning_rate": 9.567901234567902e-05, + "loss": 0.6932, + "step": 2685 + }, + { + "epoch": 1.07, + "learning_rate": 9.547325102880659e-05, + "loss": 0.6849, + "step": 2690 + }, + { + "epoch": 1.08, + "learning_rate": 9.526748971193417e-05, + "loss": 0.6915, + "step": 2695 + }, + { + "epoch": 1.08, + "learning_rate": 9.506172839506173e-05, + "loss": 0.6677, + "step": 2700 + }, + { + "epoch": 1.08, + "learning_rate": 9.48559670781893e-05, + "loss": 0.6767, + "step": 2705 + }, + { + "epoch": 1.08, + "learning_rate": 9.465020576131688e-05, + "loss": 0.6873, + "step": 2710 + }, + { + "epoch": 1.08, + "learning_rate": 9.444444444444444e-05, + "loss": 0.7007, + "step": 2715 + }, + { + "epoch": 1.09, + "learning_rate": 9.423868312757202e-05, + "loss": 0.6782, + "step": 2720 + }, + { + "epoch": 1.09, + "learning_rate": 9.403292181069959e-05, + "loss": 0.7044, + "step": 2725 + }, + { + "epoch": 1.09, + "learning_rate": 9.382716049382717e-05, + "loss": 0.6787, + "step": 2730 + }, + { + "epoch": 1.09, + "learning_rate": 9.362139917695473e-05, + "loss": 0.6876, + "step": 2735 + }, + { + "epoch": 1.09, + "learning_rate": 9.341563786008231e-05, + "loss": 0.7253, + "step": 2740 + }, + { + "epoch": 1.1, + "learning_rate": 9.320987654320989e-05, + "loss": 0.7159, + "step": 2745 + }, + { + "epoch": 1.1, + "learning_rate": 9.300411522633746e-05, + "loss": 0.704, + "step": 2750 + }, + { + "epoch": 1.1, + "learning_rate": 9.279835390946504e-05, + "loss": 0.6882, + "step": 2755 + }, + { + "epoch": 1.1, + "learning_rate": 9.25925925925926e-05, + "loss": 0.6777, + "step": 2760 + }, + { + "epoch": 1.1, + "learning_rate": 9.238683127572017e-05, + "loss": 0.7133, + "step": 2765 + }, + { + "epoch": 1.11, + "learning_rate": 9.218106995884775e-05, + "loss": 0.6988, + "step": 2770 + }, + { + "epoch": 1.11, + "learning_rate": 9.197530864197531e-05, + "loss": 0.7323, + "step": 2775 + }, + { + "epoch": 1.11, + "learning_rate": 9.176954732510289e-05, + "loss": 0.6854, + "step": 2780 + }, + { + "epoch": 1.11, + "learning_rate": 9.156378600823046e-05, + "loss": 0.6926, + "step": 2785 + }, + { + "epoch": 1.11, + "learning_rate": 9.135802469135802e-05, + "loss": 0.6985, + "step": 2790 + }, + { + "epoch": 1.12, + "learning_rate": 9.11522633744856e-05, + "loss": 0.6776, + "step": 2795 + }, + { + "epoch": 1.12, + "learning_rate": 9.094650205761317e-05, + "loss": 0.7374, + "step": 2800 + }, + { + "epoch": 1.12, + "learning_rate": 9.074074074074075e-05, + "loss": 0.6928, + "step": 2805 + }, + { + "epoch": 1.12, + "learning_rate": 9.053497942386831e-05, + "loss": 0.7129, + "step": 2810 + }, + { + "epoch": 1.12, + "learning_rate": 9.032921810699589e-05, + "loss": 0.6918, + "step": 2815 + }, + { + "epoch": 1.13, + "learning_rate": 9.012345679012346e-05, + "loss": 0.6641, + "step": 2820 + }, + { + "epoch": 1.13, + "learning_rate": 8.991769547325102e-05, + "loss": 0.7075, + "step": 2825 + }, + { + "epoch": 1.13, + "learning_rate": 8.97119341563786e-05, + "loss": 0.668, + "step": 2830 + }, + { + "epoch": 1.13, + "learning_rate": 8.950617283950617e-05, + "loss": 0.6836, + "step": 2835 + }, + { + "epoch": 1.13, + "learning_rate": 8.930041152263375e-05, + "loss": 0.672, + "step": 2840 + }, + { + "epoch": 1.14, + "learning_rate": 8.909465020576133e-05, + "loss": 0.6827, + "step": 2845 + }, + { + "epoch": 1.14, + "learning_rate": 8.888888888888889e-05, + "loss": 0.6976, + "step": 2850 + }, + { + "epoch": 1.14, + "learning_rate": 8.868312757201647e-05, + "loss": 0.6719, + "step": 2855 + }, + { + "epoch": 1.14, + "learning_rate": 8.847736625514404e-05, + "loss": 0.6871, + "step": 2860 + }, + { + "epoch": 1.14, + "learning_rate": 8.827160493827162e-05, + "loss": 0.6975, + "step": 2865 + }, + { + "epoch": 1.15, + "learning_rate": 8.806584362139918e-05, + "loss": 0.684, + "step": 2870 + }, + { + "epoch": 1.15, + "learning_rate": 8.786008230452676e-05, + "loss": 0.6861, + "step": 2875 + }, + { + "epoch": 1.15, + "learning_rate": 8.765432098765433e-05, + "loss": 0.7116, + "step": 2880 + }, + { + "epoch": 1.15, + "learning_rate": 8.74485596707819e-05, + "loss": 0.686, + "step": 2885 + }, + { + "epoch": 1.15, + "learning_rate": 8.724279835390947e-05, + "loss": 0.677, + "step": 2890 + }, + { + "epoch": 1.16, + "learning_rate": 8.703703703703704e-05, + "loss": 0.6996, + "step": 2895 + }, + { + "epoch": 1.16, + "learning_rate": 8.683127572016462e-05, + "loss": 0.7211, + "step": 2900 + }, + { + "epoch": 1.16, + "learning_rate": 8.662551440329218e-05, + "loss": 0.6766, + "step": 2905 + }, + { + "epoch": 1.16, + "learning_rate": 8.641975308641975e-05, + "loss": 0.6883, + "step": 2910 + }, + { + "epoch": 1.16, + "learning_rate": 8.621399176954733e-05, + "loss": 0.6829, + "step": 2915 + }, + { + "epoch": 1.17, + "learning_rate": 8.60082304526749e-05, + "loss": 0.7089, + "step": 2920 + }, + { + "epoch": 1.17, + "learning_rate": 8.580246913580247e-05, + "loss": 0.6711, + "step": 2925 + }, + { + "epoch": 1.17, + "learning_rate": 8.559670781893004e-05, + "loss": 0.6926, + "step": 2930 + }, + { + "epoch": 1.17, + "learning_rate": 8.539094650205762e-05, + "loss": 0.6513, + "step": 2935 + }, + { + "epoch": 1.17, + "learning_rate": 8.518518518518518e-05, + "loss": 0.6817, + "step": 2940 + }, + { + "epoch": 1.18, + "learning_rate": 8.497942386831276e-05, + "loss": 0.7005, + "step": 2945 + }, + { + "epoch": 1.18, + "learning_rate": 8.477366255144033e-05, + "loss": 0.7013, + "step": 2950 + }, + { + "epoch": 1.18, + "learning_rate": 8.456790123456791e-05, + "loss": 0.6562, + "step": 2955 + }, + { + "epoch": 1.18, + "learning_rate": 8.436213991769549e-05, + "loss": 0.7074, + "step": 2960 + }, + { + "epoch": 1.18, + "learning_rate": 8.415637860082305e-05, + "loss": 0.6901, + "step": 2965 + }, + { + "epoch": 1.19, + "learning_rate": 8.395061728395062e-05, + "loss": 0.6867, + "step": 2970 + }, + { + "epoch": 1.19, + "learning_rate": 8.37448559670782e-05, + "loss": 0.692, + "step": 2975 + }, + { + "epoch": 1.19, + "learning_rate": 8.353909465020576e-05, + "loss": 0.6863, + "step": 2980 + }, + { + "epoch": 1.19, + "learning_rate": 8.333333333333334e-05, + "loss": 0.6881, + "step": 2985 + }, + { + "epoch": 1.19, + "learning_rate": 8.312757201646091e-05, + "loss": 0.7203, + "step": 2990 + }, + { + "epoch": 1.2, + "learning_rate": 8.292181069958848e-05, + "loss": 0.7075, + "step": 2995 + }, + { + "epoch": 1.2, + "learning_rate": 8.271604938271605e-05, + "loss": 0.7187, + "step": 3000 + }, + { + "epoch": 1.2, + "learning_rate": 8.251028806584362e-05, + "loss": 0.6791, + "step": 3005 + }, + { + "epoch": 1.2, + "learning_rate": 8.23045267489712e-05, + "loss": 0.6937, + "step": 3010 + }, + { + "epoch": 1.2, + "learning_rate": 8.209876543209877e-05, + "loss": 0.6584, + "step": 3015 + }, + { + "epoch": 1.21, + "learning_rate": 8.189300411522634e-05, + "loss": 0.6818, + "step": 3020 + }, + { + "epoch": 1.21, + "learning_rate": 8.168724279835391e-05, + "loss": 0.6827, + "step": 3025 + }, + { + "epoch": 1.21, + "learning_rate": 8.148148148148148e-05, + "loss": 0.6774, + "step": 3030 + }, + { + "epoch": 1.21, + "learning_rate": 8.127572016460906e-05, + "loss": 0.6826, + "step": 3035 + }, + { + "epoch": 1.21, + "learning_rate": 8.106995884773662e-05, + "loss": 0.6767, + "step": 3040 + }, + { + "epoch": 1.22, + "learning_rate": 8.08641975308642e-05, + "loss": 0.7256, + "step": 3045 + }, + { + "epoch": 1.22, + "learning_rate": 8.065843621399177e-05, + "loss": 0.6875, + "step": 3050 + }, + { + "epoch": 1.22, + "learning_rate": 8.045267489711935e-05, + "loss": 0.7013, + "step": 3055 + }, + { + "epoch": 1.22, + "learning_rate": 8.024691358024692e-05, + "loss": 0.6907, + "step": 3060 + }, + { + "epoch": 1.22, + "learning_rate": 8.004115226337449e-05, + "loss": 0.6751, + "step": 3065 + }, + { + "epoch": 1.23, + "learning_rate": 7.983539094650207e-05, + "loss": 0.6893, + "step": 3070 + }, + { + "epoch": 1.23, + "learning_rate": 7.962962962962964e-05, + "loss": 0.6962, + "step": 3075 + }, + { + "epoch": 1.23, + "learning_rate": 7.942386831275721e-05, + "loss": 0.6743, + "step": 3080 + }, + { + "epoch": 1.23, + "learning_rate": 7.921810699588478e-05, + "loss": 0.7004, + "step": 3085 + }, + { + "epoch": 1.23, + "learning_rate": 7.901234567901235e-05, + "loss": 0.6908, + "step": 3090 + }, + { + "epoch": 1.24, + "learning_rate": 7.880658436213993e-05, + "loss": 0.6736, + "step": 3095 + }, + { + "epoch": 1.24, + "learning_rate": 7.860082304526749e-05, + "loss": 0.7153, + "step": 3100 + }, + { + "epoch": 1.24, + "learning_rate": 7.839506172839507e-05, + "loss": 0.7072, + "step": 3105 + }, + { + "epoch": 1.24, + "learning_rate": 7.818930041152264e-05, + "loss": 0.7163, + "step": 3110 + }, + { + "epoch": 1.24, + "learning_rate": 7.79835390946502e-05, + "loss": 0.6996, + "step": 3115 + }, + { + "epoch": 1.25, + "learning_rate": 7.777777777777778e-05, + "loss": 0.7257, + "step": 3120 + }, + { + "epoch": 1.25, + "learning_rate": 7.757201646090535e-05, + "loss": 0.7155, + "step": 3125 + }, + { + "epoch": 1.25, + "learning_rate": 7.736625514403293e-05, + "loss": 0.7068, + "step": 3130 + }, + { + "epoch": 1.25, + "learning_rate": 7.716049382716049e-05, + "loss": 0.6575, + "step": 3135 + }, + { + "epoch": 1.25, + "learning_rate": 7.695473251028807e-05, + "loss": 0.6771, + "step": 3140 + }, + { + "epoch": 1.26, + "learning_rate": 7.674897119341564e-05, + "loss": 0.6976, + "step": 3145 + }, + { + "epoch": 1.26, + "learning_rate": 7.65432098765432e-05, + "loss": 0.6568, + "step": 3150 + }, + { + "epoch": 1.26, + "learning_rate": 7.633744855967078e-05, + "loss": 0.6609, + "step": 3155 + }, + { + "epoch": 1.26, + "learning_rate": 7.613168724279836e-05, + "loss": 0.697, + "step": 3160 + }, + { + "epoch": 1.26, + "learning_rate": 7.592592592592593e-05, + "loss": 0.714, + "step": 3165 + }, + { + "epoch": 1.27, + "learning_rate": 7.57201646090535e-05, + "loss": 0.6829, + "step": 3170 + }, + { + "epoch": 1.27, + "learning_rate": 7.551440329218107e-05, + "loss": 0.6932, + "step": 3175 + }, + { + "epoch": 1.27, + "learning_rate": 7.530864197530865e-05, + "loss": 0.6859, + "step": 3180 + }, + { + "epoch": 1.27, + "learning_rate": 7.510288065843622e-05, + "loss": 0.7117, + "step": 3185 + }, + { + "epoch": 1.27, + "learning_rate": 7.48971193415638e-05, + "loss": 0.7157, + "step": 3190 + }, + { + "epoch": 1.28, + "learning_rate": 7.469135802469136e-05, + "loss": 0.6593, + "step": 3195 + }, + { + "epoch": 1.28, + "learning_rate": 7.448559670781894e-05, + "loss": 0.6683, + "step": 3200 + }, + { + "epoch": 1.28, + "learning_rate": 7.427983539094651e-05, + "loss": 0.6876, + "step": 3205 + }, + { + "epoch": 1.28, + "learning_rate": 7.407407407407407e-05, + "loss": 0.6584, + "step": 3210 + }, + { + "epoch": 1.28, + "learning_rate": 7.386831275720165e-05, + "loss": 0.6816, + "step": 3215 + }, + { + "epoch": 1.29, + "learning_rate": 7.366255144032922e-05, + "loss": 0.6994, + "step": 3220 + }, + { + "epoch": 1.29, + "learning_rate": 7.34567901234568e-05, + "loss": 0.6701, + "step": 3225 + }, + { + "epoch": 1.29, + "learning_rate": 7.325102880658436e-05, + "loss": 0.6869, + "step": 3230 + }, + { + "epoch": 1.29, + "learning_rate": 7.304526748971193e-05, + "loss": 0.6895, + "step": 3235 + }, + { + "epoch": 1.29, + "learning_rate": 7.283950617283951e-05, + "loss": 0.6972, + "step": 3240 + }, + { + "epoch": 1.3, + "learning_rate": 7.263374485596707e-05, + "loss": 0.6849, + "step": 3245 + }, + { + "epoch": 1.3, + "learning_rate": 7.242798353909465e-05, + "loss": 0.6967, + "step": 3250 + }, + { + "epoch": 1.3, + "learning_rate": 7.222222222222222e-05, + "loss": 0.6679, + "step": 3255 + }, + { + "epoch": 1.3, + "learning_rate": 7.20164609053498e-05, + "loss": 0.6683, + "step": 3260 + }, + { + "epoch": 1.3, + "learning_rate": 7.181069958847736e-05, + "loss": 0.6787, + "step": 3265 + }, + { + "epoch": 1.31, + "learning_rate": 7.160493827160494e-05, + "loss": 0.6726, + "step": 3270 + }, + { + "epoch": 1.31, + "learning_rate": 7.139917695473252e-05, + "loss": 0.721, + "step": 3275 + }, + { + "epoch": 1.31, + "learning_rate": 7.119341563786009e-05, + "loss": 0.6865, + "step": 3280 + }, + { + "epoch": 1.31, + "learning_rate": 7.098765432098767e-05, + "loss": 0.7031, + "step": 3285 + }, + { + "epoch": 1.31, + "learning_rate": 7.078189300411523e-05, + "loss": 0.6895, + "step": 3290 + }, + { + "epoch": 1.32, + "learning_rate": 7.05761316872428e-05, + "loss": 0.6983, + "step": 3295 + }, + { + "epoch": 1.32, + "learning_rate": 7.037037037037038e-05, + "loss": 0.6929, + "step": 3300 + }, + { + "epoch": 1.32, + "learning_rate": 7.016460905349794e-05, + "loss": 0.7117, + "step": 3305 + }, + { + "epoch": 1.32, + "learning_rate": 6.995884773662552e-05, + "loss": 0.664, + "step": 3310 + }, + { + "epoch": 1.32, + "learning_rate": 6.975308641975309e-05, + "loss": 0.6645, + "step": 3315 + }, + { + "epoch": 1.33, + "learning_rate": 6.954732510288067e-05, + "loss": 0.6985, + "step": 3320 + }, + { + "epoch": 1.33, + "learning_rate": 6.934156378600823e-05, + "loss": 0.6826, + "step": 3325 + }, + { + "epoch": 1.33, + "learning_rate": 6.91358024691358e-05, + "loss": 0.7324, + "step": 3330 + }, + { + "epoch": 1.33, + "learning_rate": 6.893004115226338e-05, + "loss": 0.6828, + "step": 3335 + }, + { + "epoch": 1.33, + "learning_rate": 6.872427983539094e-05, + "loss": 0.6801, + "step": 3340 + }, + { + "epoch": 1.34, + "learning_rate": 6.851851851851852e-05, + "loss": 0.6923, + "step": 3345 + }, + { + "epoch": 1.34, + "learning_rate": 6.831275720164609e-05, + "loss": 0.6787, + "step": 3350 + }, + { + "epoch": 1.34, + "learning_rate": 6.810699588477366e-05, + "loss": 0.6812, + "step": 3355 + }, + { + "epoch": 1.34, + "learning_rate": 6.790123456790123e-05, + "loss": 0.7059, + "step": 3360 + }, + { + "epoch": 1.34, + "learning_rate": 6.76954732510288e-05, + "loss": 0.6794, + "step": 3365 + }, + { + "epoch": 1.35, + "learning_rate": 6.748971193415638e-05, + "loss": 0.6635, + "step": 3370 + }, + { + "epoch": 1.35, + "learning_rate": 6.728395061728396e-05, + "loss": 0.666, + "step": 3375 + }, + { + "epoch": 1.35, + "learning_rate": 6.707818930041152e-05, + "loss": 0.6909, + "step": 3380 + }, + { + "epoch": 1.35, + "learning_rate": 6.68724279835391e-05, + "loss": 0.7096, + "step": 3385 + }, + { + "epoch": 1.35, + "learning_rate": 6.666666666666667e-05, + "loss": 0.7049, + "step": 3390 + }, + { + "epoch": 1.36, + "learning_rate": 6.646090534979425e-05, + "loss": 0.6801, + "step": 3395 + }, + { + "epoch": 1.36, + "learning_rate": 6.625514403292181e-05, + "loss": 0.7045, + "step": 3400 + }, + { + "epoch": 1.36, + "learning_rate": 6.60493827160494e-05, + "loss": 0.7096, + "step": 3405 + }, + { + "epoch": 1.36, + "learning_rate": 6.584362139917696e-05, + "loss": 0.7192, + "step": 3410 + }, + { + "epoch": 1.36, + "learning_rate": 6.563786008230453e-05, + "loss": 0.6818, + "step": 3415 + }, + { + "epoch": 1.37, + "learning_rate": 6.54320987654321e-05, + "loss": 0.6358, + "step": 3420 + }, + { + "epoch": 1.37, + "learning_rate": 6.522633744855967e-05, + "loss": 0.6674, + "step": 3425 + }, + { + "epoch": 1.37, + "learning_rate": 6.502057613168725e-05, + "loss": 0.684, + "step": 3430 + }, + { + "epoch": 1.37, + "learning_rate": 6.481481481481482e-05, + "loss": 0.6753, + "step": 3435 + }, + { + "epoch": 1.37, + "learning_rate": 6.460905349794238e-05, + "loss": 0.6902, + "step": 3440 + }, + { + "epoch": 1.38, + "learning_rate": 6.440329218106996e-05, + "loss": 0.6664, + "step": 3445 + }, + { + "epoch": 1.38, + "learning_rate": 6.419753086419753e-05, + "loss": 0.684, + "step": 3450 + }, + { + "epoch": 1.38, + "learning_rate": 6.39917695473251e-05, + "loss": 0.682, + "step": 3455 + }, + { + "epoch": 1.38, + "learning_rate": 6.378600823045267e-05, + "loss": 0.6764, + "step": 3460 + }, + { + "epoch": 1.38, + "learning_rate": 6.358024691358025e-05, + "loss": 0.6783, + "step": 3465 + }, + { + "epoch": 1.39, + "learning_rate": 6.337448559670782e-05, + "loss": 0.6962, + "step": 3470 + }, + { + "epoch": 1.39, + "learning_rate": 6.31687242798354e-05, + "loss": 0.6819, + "step": 3475 + }, + { + "epoch": 1.39, + "learning_rate": 6.296296296296296e-05, + "loss": 0.6741, + "step": 3480 + }, + { + "epoch": 1.39, + "learning_rate": 6.275720164609054e-05, + "loss": 0.6754, + "step": 3485 + }, + { + "epoch": 1.39, + "learning_rate": 6.255144032921812e-05, + "loss": 0.6717, + "step": 3490 + }, + { + "epoch": 1.4, + "learning_rate": 6.234567901234569e-05, + "loss": 0.667, + "step": 3495 + }, + { + "epoch": 1.4, + "learning_rate": 6.213991769547325e-05, + "loss": 0.6822, + "step": 3500 + }, + { + "epoch": 1.4, + "learning_rate": 6.193415637860083e-05, + "loss": 0.7055, + "step": 3505 + }, + { + "epoch": 1.4, + "learning_rate": 6.17283950617284e-05, + "loss": 0.6988, + "step": 3510 + }, + { + "epoch": 1.4, + "learning_rate": 6.152263374485598e-05, + "loss": 0.6793, + "step": 3515 + }, + { + "epoch": 1.41, + "learning_rate": 6.131687242798354e-05, + "loss": 0.7093, + "step": 3520 + }, + { + "epoch": 1.41, + "learning_rate": 6.111111111111112e-05, + "loss": 0.694, + "step": 3525 + }, + { + "epoch": 1.41, + "learning_rate": 6.0905349794238687e-05, + "loss": 0.7077, + "step": 3530 + }, + { + "epoch": 1.41, + "learning_rate": 6.069958847736625e-05, + "loss": 0.6938, + "step": 3535 + }, + { + "epoch": 1.41, + "learning_rate": 6.049382716049383e-05, + "loss": 0.6461, + "step": 3540 + }, + { + "epoch": 1.42, + "learning_rate": 6.02880658436214e-05, + "loss": 0.6993, + "step": 3545 + }, + { + "epoch": 1.42, + "learning_rate": 6.0082304526748977e-05, + "loss": 0.6901, + "step": 3550 + }, + { + "epoch": 1.42, + "learning_rate": 5.987654320987654e-05, + "loss": 0.6937, + "step": 3555 + }, + { + "epoch": 1.42, + "learning_rate": 5.9670781893004115e-05, + "loss": 0.6657, + "step": 3560 + }, + { + "epoch": 1.42, + "learning_rate": 5.9465020576131694e-05, + "loss": 0.6593, + "step": 3565 + }, + { + "epoch": 1.43, + "learning_rate": 5.925925925925926e-05, + "loss": 0.7056, + "step": 3570 + }, + { + "epoch": 1.43, + "learning_rate": 5.905349794238684e-05, + "loss": 0.6395, + "step": 3575 + }, + { + "epoch": 1.43, + "learning_rate": 5.8847736625514405e-05, + "loss": 0.6608, + "step": 3580 + }, + { + "epoch": 1.43, + "learning_rate": 5.8641975308641984e-05, + "loss": 0.7007, + "step": 3585 + }, + { + "epoch": 1.43, + "learning_rate": 5.843621399176955e-05, + "loss": 0.6605, + "step": 3590 + }, + { + "epoch": 1.43, + "learning_rate": 5.8230452674897116e-05, + "loss": 0.6752, + "step": 3595 + }, + { + "epoch": 1.44, + "learning_rate": 5.8024691358024695e-05, + "loss": 0.6736, + "step": 3600 + }, + { + "epoch": 1.44, + "learning_rate": 5.781893004115226e-05, + "loss": 0.671, + "step": 3605 + }, + { + "epoch": 1.44, + "learning_rate": 5.761316872427984e-05, + "loss": 0.6551, + "step": 3610 + }, + { + "epoch": 1.44, + "learning_rate": 5.740740740740741e-05, + "loss": 0.7053, + "step": 3615 + }, + { + "epoch": 1.44, + "learning_rate": 5.720164609053498e-05, + "loss": 0.6856, + "step": 3620 + }, + { + "epoch": 1.45, + "learning_rate": 5.699588477366256e-05, + "loss": 0.671, + "step": 3625 + }, + { + "epoch": 1.45, + "learning_rate": 5.679012345679012e-05, + "loss": 0.6763, + "step": 3630 + }, + { + "epoch": 1.45, + "learning_rate": 5.65843621399177e-05, + "loss": 0.6812, + "step": 3635 + }, + { + "epoch": 1.45, + "learning_rate": 5.637860082304527e-05, + "loss": 0.7407, + "step": 3640 + }, + { + "epoch": 1.45, + "learning_rate": 5.617283950617285e-05, + "loss": 0.7436, + "step": 3645 + }, + { + "epoch": 1.46, + "learning_rate": 5.596707818930041e-05, + "loss": 0.682, + "step": 3650 + }, + { + "epoch": 1.46, + "learning_rate": 5.576131687242798e-05, + "loss": 0.6808, + "step": 3655 + }, + { + "epoch": 1.46, + "learning_rate": 5.555555555555556e-05, + "loss": 0.6696, + "step": 3660 + }, + { + "epoch": 1.46, + "learning_rate": 5.534979423868313e-05, + "loss": 0.7207, + "step": 3665 + }, + { + "epoch": 1.46, + "learning_rate": 5.51440329218107e-05, + "loss": 0.6737, + "step": 3670 + }, + { + "epoch": 1.47, + "learning_rate": 5.4938271604938276e-05, + "loss": 0.6874, + "step": 3675 + }, + { + "epoch": 1.47, + "learning_rate": 5.473251028806584e-05, + "loss": 0.6652, + "step": 3680 + }, + { + "epoch": 1.47, + "learning_rate": 5.452674897119342e-05, + "loss": 0.6739, + "step": 3685 + }, + { + "epoch": 1.47, + "learning_rate": 5.4320987654320986e-05, + "loss": 0.7039, + "step": 3690 + }, + { + "epoch": 1.47, + "learning_rate": 5.4115226337448566e-05, + "loss": 0.696, + "step": 3695 + }, + { + "epoch": 1.48, + "learning_rate": 5.390946502057613e-05, + "loss": 0.6887, + "step": 3700 + }, + { + "epoch": 1.48, + "learning_rate": 5.370370370370371e-05, + "loss": 0.6653, + "step": 3705 + }, + { + "epoch": 1.48, + "learning_rate": 5.3497942386831277e-05, + "loss": 0.6987, + "step": 3710 + }, + { + "epoch": 1.48, + "learning_rate": 5.329218106995885e-05, + "loss": 0.6831, + "step": 3715 + }, + { + "epoch": 1.48, + "learning_rate": 5.308641975308642e-05, + "loss": 0.687, + "step": 3720 + }, + { + "epoch": 1.49, + "learning_rate": 5.2880658436213994e-05, + "loss": 0.6848, + "step": 3725 + }, + { + "epoch": 1.49, + "learning_rate": 5.267489711934157e-05, + "loss": 0.6819, + "step": 3730 + }, + { + "epoch": 1.49, + "learning_rate": 5.246913580246914e-05, + "loss": 0.662, + "step": 3735 + }, + { + "epoch": 1.49, + "learning_rate": 5.2263374485596705e-05, + "loss": 0.6462, + "step": 3740 + }, + { + "epoch": 1.49, + "learning_rate": 5.2057613168724284e-05, + "loss": 0.684, + "step": 3745 + }, + { + "epoch": 1.5, + "learning_rate": 5.185185185185185e-05, + "loss": 0.721, + "step": 3750 + }, + { + "epoch": 1.5, + "learning_rate": 5.164609053497943e-05, + "loss": 0.6998, + "step": 3755 + }, + { + "epoch": 1.5, + "learning_rate": 5.1440329218106995e-05, + "loss": 0.6922, + "step": 3760 + }, + { + "epoch": 1.5, + "learning_rate": 5.1234567901234574e-05, + "loss": 0.6674, + "step": 3765 + }, + { + "epoch": 1.5, + "learning_rate": 5.102880658436214e-05, + "loss": 0.7022, + "step": 3770 + }, + { + "epoch": 1.51, + "learning_rate": 5.082304526748971e-05, + "loss": 0.6753, + "step": 3775 + }, + { + "epoch": 1.51, + "learning_rate": 5.061728395061729e-05, + "loss": 0.6853, + "step": 3780 + }, + { + "epoch": 1.51, + "learning_rate": 5.041152263374486e-05, + "loss": 0.6669, + "step": 3785 + }, + { + "epoch": 1.51, + "learning_rate": 5.020576131687244e-05, + "loss": 0.6678, + "step": 3790 + }, + { + "epoch": 1.51, + "learning_rate": 5e-05, + "loss": 0.6881, + "step": 3795 + }, + { + "epoch": 1.52, + "learning_rate": 4.9794238683127575e-05, + "loss": 0.6959, + "step": 3800 + }, + { + "epoch": 1.52, + "learning_rate": 4.958847736625515e-05, + "loss": 0.695, + "step": 3805 + }, + { + "epoch": 1.52, + "learning_rate": 4.938271604938271e-05, + "loss": 0.6927, + "step": 3810 + }, + { + "epoch": 1.52, + "learning_rate": 4.9176954732510286e-05, + "loss": 0.7039, + "step": 3815 + }, + { + "epoch": 1.52, + "learning_rate": 4.8971193415637865e-05, + "loss": 0.6494, + "step": 3820 + }, + { + "epoch": 1.53, + "learning_rate": 4.876543209876544e-05, + "loss": 0.7015, + "step": 3825 + }, + { + "epoch": 1.53, + "learning_rate": 4.855967078189301e-05, + "loss": 0.6901, + "step": 3830 + }, + { + "epoch": 1.53, + "learning_rate": 4.835390946502058e-05, + "loss": 0.6618, + "step": 3835 + }, + { + "epoch": 1.53, + "learning_rate": 4.814814814814815e-05, + "loss": 0.6723, + "step": 3840 + }, + { + "epoch": 1.53, + "learning_rate": 4.794238683127572e-05, + "loss": 0.7196, + "step": 3845 + }, + { + "epoch": 1.54, + "learning_rate": 4.773662551440329e-05, + "loss": 0.6867, + "step": 3850 + }, + { + "epoch": 1.54, + "learning_rate": 4.7530864197530866e-05, + "loss": 0.6921, + "step": 3855 + }, + { + "epoch": 1.54, + "learning_rate": 4.732510288065844e-05, + "loss": 0.693, + "step": 3860 + }, + { + "epoch": 1.54, + "learning_rate": 4.711934156378601e-05, + "loss": 0.7031, + "step": 3865 + }, + { + "epoch": 1.54, + "learning_rate": 4.691358024691358e-05, + "loss": 0.7023, + "step": 3870 + }, + { + "epoch": 1.55, + "learning_rate": 4.6707818930041156e-05, + "loss": 0.6754, + "step": 3875 + }, + { + "epoch": 1.55, + "learning_rate": 4.650205761316873e-05, + "loss": 0.6985, + "step": 3880 + }, + { + "epoch": 1.55, + "learning_rate": 4.62962962962963e-05, + "loss": 0.665, + "step": 3885 + }, + { + "epoch": 1.55, + "learning_rate": 4.609053497942387e-05, + "loss": 0.6902, + "step": 3890 + }, + { + "epoch": 1.55, + "learning_rate": 4.5884773662551446e-05, + "loss": 0.7173, + "step": 3895 + }, + { + "epoch": 1.56, + "learning_rate": 4.567901234567901e-05, + "loss": 0.7121, + "step": 3900 + }, + { + "epoch": 1.56, + "learning_rate": 4.5473251028806584e-05, + "loss": 0.6939, + "step": 3905 + }, + { + "epoch": 1.56, + "learning_rate": 4.5267489711934157e-05, + "loss": 0.7093, + "step": 3910 + }, + { + "epoch": 1.56, + "learning_rate": 4.506172839506173e-05, + "loss": 0.6792, + "step": 3915 + }, + { + "epoch": 1.56, + "learning_rate": 4.48559670781893e-05, + "loss": 0.6737, + "step": 3920 + }, + { + "epoch": 1.57, + "learning_rate": 4.4650205761316874e-05, + "loss": 0.6858, + "step": 3925 + }, + { + "epoch": 1.57, + "learning_rate": 4.4444444444444447e-05, + "loss": 0.6776, + "step": 3930 + }, + { + "epoch": 1.57, + "learning_rate": 4.423868312757202e-05, + "loss": 0.6772, + "step": 3935 + }, + { + "epoch": 1.57, + "learning_rate": 4.403292181069959e-05, + "loss": 0.6667, + "step": 3940 + }, + { + "epoch": 1.57, + "learning_rate": 4.3827160493827164e-05, + "loss": 0.6892, + "step": 3945 + }, + { + "epoch": 1.58, + "learning_rate": 4.3621399176954737e-05, + "loss": 0.6652, + "step": 3950 + }, + { + "epoch": 1.58, + "learning_rate": 4.341563786008231e-05, + "loss": 0.6892, + "step": 3955 + }, + { + "epoch": 1.58, + "learning_rate": 4.3209876543209875e-05, + "loss": 0.6917, + "step": 3960 + }, + { + "epoch": 1.58, + "learning_rate": 4.300411522633745e-05, + "loss": 0.6708, + "step": 3965 + }, + { + "epoch": 1.58, + "learning_rate": 4.279835390946502e-05, + "loss": 0.6817, + "step": 3970 + }, + { + "epoch": 1.59, + "learning_rate": 4.259259259259259e-05, + "loss": 0.6761, + "step": 3975 + }, + { + "epoch": 1.59, + "learning_rate": 4.2386831275720165e-05, + "loss": 0.6638, + "step": 3980 + }, + { + "epoch": 1.59, + "learning_rate": 4.2181069958847744e-05, + "loss": 0.6707, + "step": 3985 + }, + { + "epoch": 1.59, + "learning_rate": 4.197530864197531e-05, + "loss": 0.6796, + "step": 3990 + }, + { + "epoch": 1.59, + "learning_rate": 4.176954732510288e-05, + "loss": 0.6903, + "step": 3995 + }, + { + "epoch": 1.6, + "learning_rate": 4.1563786008230455e-05, + "loss": 0.7081, + "step": 4000 + } + ], + "logging_steps": 5, + "max_steps": 5010, + "num_input_tokens_seen": 0, + "num_train_epochs": 2, + "save_steps": 500, + "total_flos": 1.6102337306911834e+19, + "train_batch_size": 1, + "trial_name": null, + "trial_params": null +} diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/training_args.bin b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/training_args.bin new file mode 100644 index 0000000000000000000000000000000000000000..e707059a03fbe62142ac41332e145ac1ac1f36cc --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b99a1729574e0e46ee782b42dc90101a785d5b4792871920d293f44722c28cc +size 5944 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/zero_to_fp32.py b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/zero_to_fp32.py new file mode 100644 index 0000000000000000000000000000000000000000..c98caae31534368be22b67fc4ae906836c992a8d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4000/zero_to_fp32.py @@ -0,0 +1,587 @@ +#!/usr/bin/env python + +# Copyright (c) Microsoft Corporation. +# SPDX-License-Identifier: Apache-2.0 + +# DeepSpeed Team + +# This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets +# copied into the top level checkpoint dir, so the user can easily do the conversion at any point in +# the future. Once extracted, the weights don't require DeepSpeed and can be used in any +# application. +# +# example: python zero_to_fp32.py . pytorch_model.bin + +import argparse +import torch +import glob +import math +import os +import re +from collections import OrderedDict +from dataclasses import dataclass + +# while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with +# DeepSpeed data structures it has to be available in the current python environment. +from deepspeed.utils import logger +from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS, + FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES, + FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS) + + +@dataclass +class zero_model_state: + buffers: dict() + param_shapes: dict() + shared_params: list + ds_version: int + frozen_param_shapes: dict() + frozen_param_fragments: dict() + + +debug = 0 + +# load to cpu +device = torch.device('cpu') + + +def atoi(text): + return int(text) if text.isdigit() else text + + +def natural_keys(text): + ''' + alist.sort(key=natural_keys) sorts in human order + http://nedbatchelder.com/blog/200712/human_sorting.html + (See Toothy's implementation in the comments) + ''' + return [atoi(c) for c in re.split(r'(\d+)', text)] + + +def get_model_state_file(checkpoint_dir, zero_stage): + if not os.path.isdir(checkpoint_dir): + raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist") + + # there should be only one file + if zero_stage <= 2: + file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt") + elif zero_stage == 3: + file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt") + + if not os.path.exists(file): + raise FileNotFoundError(f"can't find model states file at '{file}'") + + return file + + +def get_checkpoint_files(checkpoint_dir, glob_pattern): + # XXX: need to test that this simple glob rule works for multi-node setup too + ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys) + + if len(ckpt_files) == 0: + raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'") + + return ckpt_files + + +def get_optim_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt") + + +def get_model_state_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_model_states.pt") + + +def parse_model_states(files): + zero_model_states = [] + for file in files: + state_dict = torch.load(file, map_location=device) + + if BUFFER_NAMES not in state_dict: + raise ValueError(f"{file} is not a model state checkpoint") + buffer_names = state_dict[BUFFER_NAMES] + if debug: + print("Found buffers:", buffer_names) + + # recover just the buffers while restoring them to fp32 if they were saved in fp16 + buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names} + param_shapes = state_dict[PARAM_SHAPES] + + # collect parameters that are included in param_shapes + param_names = [] + for s in param_shapes: + for name in s.keys(): + param_names.append(name) + + # update with frozen parameters + frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None) + if frozen_param_shapes is not None: + if debug: + print(f"Found frozen_param_shapes: {frozen_param_shapes}") + param_names += list(frozen_param_shapes.keys()) + + # handle shared params + shared_params = [[k, v] for k, v in state_dict["shared_params"].items()] + + ds_version = state_dict.get(DS_VERSION, None) + + frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None) + + z_model_state = zero_model_state(buffers=buffers, + param_shapes=param_shapes, + shared_params=shared_params, + ds_version=ds_version, + frozen_param_shapes=frozen_param_shapes, + frozen_param_fragments=frozen_param_fragments) + zero_model_states.append(z_model_state) + + return zero_model_states + + +def parse_optim_states(files, ds_checkpoint_dir): + + total_files = len(files) + state_dicts = [] + for f in files: + state_dict = torch.load(f, map_location=device) + # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights + # and also handle the case where it was already removed by another helper script + state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None) + state_dicts.append(state_dict) + + if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]: + raise ValueError(f"{files[0]} is not a zero checkpoint") + zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE] + world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT] + + # For ZeRO-2 each param group can have different partition_count as data parallelism for expert + # parameters can be different from data parallelism for non-expert parameters. So we can just + # use the max of the partition_count to get the dp world_size. + + if type(world_size) is list: + world_size = max(world_size) + + if world_size != total_files: + raise ValueError( + f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. " + "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes." + ) + + # the groups are named differently in each stage + if zero_stage <= 2: + fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS + elif zero_stage == 3: + fp32_groups_key = FP32_FLAT_GROUPS + else: + raise ValueError(f"unknown zero stage {zero_stage}") + + if zero_stage <= 2: + fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))] + elif zero_stage == 3: + # if there is more than one param group, there will be multiple flattened tensors - one + # flattened tensor per group - for simplicity merge them into a single tensor + # + # XXX: could make the script more memory efficient for when there are multiple groups - it + # will require matching the sub-lists of param_shapes for each param group flattened tensor + + fp32_flat_groups = [ + torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts)) + ] + + return zero_stage, world_size, fp32_flat_groups + + +def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir): + """ + Returns fp32 state_dict reconstructed from ds checkpoint + + Args: + - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are) + + """ + print(f"Processing zero checkpoint '{ds_checkpoint_dir}'") + + optim_files = get_optim_files(ds_checkpoint_dir) + zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir) + print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}") + + model_files = get_model_state_files(ds_checkpoint_dir) + + zero_model_states = parse_model_states(model_files) + print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}') + + if zero_stage <= 2: + return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states) + elif zero_stage == 3: + return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states) + + +def _zero2_merge_frozen_params(state_dict, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + frozen_param_fragments = zero_model_states[0].frozen_param_fragments + + if debug: + num_elem = sum(s.numel() for s in frozen_param_shapes.values()) + print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in frozen_param_fragments.values()]) + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + state_dict[name] = frozen_param_fragments[name] + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + + # Reconstruction protocol: + # + # XXX: document this + + if debug: + for i in range(world_size): + for j in range(len(fp32_flat_groups[0])): + print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}") + + # XXX: memory usage doubles here (zero2) + num_param_groups = len(fp32_flat_groups[0]) + merged_single_partition_of_fp32_groups = [] + for i in range(num_param_groups): + merged_partitions = [sd[i] for sd in fp32_flat_groups] + full_single_fp32_vector = torch.cat(merged_partitions, 0) + merged_single_partition_of_fp32_groups.append(full_single_fp32_vector) + avail_numel = sum( + [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups]) + + if debug: + wanted_params = sum([len(shapes) for shapes in param_shapes]) + wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes]) + # not asserting if there is a mismatch due to possible padding + print(f"Have {avail_numel} numels to process.") + print(f"Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + total_numel = 0 + total_params = 0 + for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups): + offset = 0 + avail_numel = full_single_fp32_vector.numel() + for name, shape in shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape) + offset += unpartitioned_numel + + # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and + # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex + # paddings performed in the code it's almost impossible to predict the exact numbers w/o the + # live optimizer object, so we are checking that the numbers are within the right range + align_to = 2 * world_size + + def zero2_align(x): + return align_to * math.ceil(x / align_to) + + if debug: + print(f"original offset={offset}, avail_numel={avail_numel}") + + offset = zero2_align(offset) + avail_numel = zero2_align(avail_numel) + + if debug: + print(f"aligned offset={offset}, avail_numel={avail_numel}") + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero2_merge_frozen_params(state_dict, zero_model_states) + + _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def zero3_partitioned_param_info(unpartitioned_numel, world_size): + remainder = unpartitioned_numel % world_size + padding_numel = (world_size - remainder) if remainder else 0 + partitioned_numel = math.ceil(unpartitioned_numel / world_size) + return partitioned_numel, padding_numel + + +def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + if debug: + for i in range(world_size): + num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values()) + print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in zero_model_states[0].frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states) + state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape) + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + avail_numel = fp32_flat_groups[0].numel() * world_size + # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each + # param, re-consolidating each param, while dealing with padding if any + + # merge list of dicts, preserving order + param_shapes = {k: v for d in param_shapes for k, v in d.items()} + + if debug: + for i in range(world_size): + print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}") + + wanted_params = len(param_shapes) + wanted_numel = sum(shape.numel() for shape in param_shapes.values()) + # not asserting if there is a mismatch due to possible padding + avail_numel = fp32_flat_groups[0].numel() * world_size + print(f"Trainable params: Have {avail_numel} numels to process.") + print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + offset = 0 + total_numel = 0 + total_params = 0 + for name, shape in param_shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + # XXX: memory usage doubles here + state_dict[name] = torch.cat( + tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)), + 0).narrow(0, 0, unpartitioned_numel).view(shape) + offset += partitioned_numel + + offset *= world_size + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero3_merge_frozen_params(state_dict, world_size, zero_model_states) + + _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with + ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example + via a model hub. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14`` + + Returns: + - pytorch ``state_dict`` + + Note: this approach may not work if your application doesn't have sufficient free CPU memory and + you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with + the checkpoint. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint + # do the training and checkpoint saving + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu + model = model.cpu() # move to cpu + model.load_state_dict(state_dict) + # submit to model hub or save the model to share with others + + In this example the ``model`` will no longer be usable in the deepspeed context of the same + application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead. + + """ + if tag is None: + latest_path = os.path.join(checkpoint_dir, 'latest') + if os.path.isfile(latest_path): + with open(latest_path, 'r') as fd: + tag = fd.read().strip() + else: + raise ValueError(f"Unable to find 'latest' file at {latest_path}") + + ds_checkpoint_dir = os.path.join(checkpoint_dir, tag) + + if not os.path.isdir(ds_checkpoint_dir): + raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist") + + return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir) + + +def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be + loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + """ + + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + print(f"Saving fp32 state dict to {output_file}") + torch.save(state_dict, output_file) + + +def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None): + """ + 1. Put the provided model to cpu + 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` + 3. Load it into the provided model + + Args: + - ``model``: the model object to update + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + + Returns: + - ``model`: modified model + + Make sure you have plenty of CPU memory available before you call this function. If you don't + have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it + conveniently placed for you in the checkpoint folder. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint + model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir) + # submit to model hub or save the model to share with others + + Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context + of the same application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + """ + logger.info(f"Extracting fp32 weights") + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + + logger.info(f"Overwriting model with fp32 weights") + model = model.cpu() + model.load_state_dict(state_dict, strict=False) + + return model + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("checkpoint_dir", + type=str, + help="path to the desired checkpoint folder, e.g., path/checkpoint-12") + parser.add_argument( + "output_file", + type=str, + help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)") + parser.add_argument("-t", + "--tag", + type=str, + default=None, + help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1") + parser.add_argument("-d", "--debug", action='store_true', help="enable debug") + args = parser.parse_args() + + debug = args.debug + + convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag) diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/README.md b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d380bbbf0bf0fa1f211b53410559607e5007a209 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/README.md @@ -0,0 +1,202 @@ +--- +library_name: peft +base_model: meta-llama/Llama-2-7b-hf +--- + +# Model Card for Model ID + + + + + +## Model Details + +### Model Description + + + + + +- **Developed by:** [More Information Needed] +- **Funded by [optional]:** [More Information Needed] +- **Shared by [optional]:** [More Information Needed] +- **Model type:** [More Information Needed] +- **Language(s) (NLP):** [More Information Needed] +- **License:** [More Information Needed] +- **Finetuned from model [optional]:** [More Information Needed] + +### Model Sources [optional] + + + +- **Repository:** [More Information Needed] +- **Paper [optional]:** [More Information Needed] +- **Demo [optional]:** [More Information Needed] + +## Uses + + + +### Direct Use + + + +[More Information Needed] + +### Downstream Use [optional] + + + +[More Information Needed] + +### Out-of-Scope Use + + + +[More Information Needed] + +## Bias, Risks, and Limitations + + + +[More Information Needed] + +### Recommendations + + + +Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. + +## How to Get Started with the Model + +Use the code below to get started with the model. + +[More Information Needed] + +## Training Details + +### Training Data + + + +[More Information Needed] + +### Training Procedure + + + +#### Preprocessing [optional] + +[More Information Needed] + + +#### Training Hyperparameters + +- **Training regime:** [More Information Needed] + +#### Speeds, Sizes, Times [optional] + + + +[More Information Needed] + +## Evaluation + + + +### Testing Data, Factors & Metrics + +#### Testing Data + + + +[More Information Needed] + +#### Factors + + + +[More Information Needed] + +#### Metrics + + + +[More Information Needed] + +### Results + +[More Information Needed] + +#### Summary + + + +## Model Examination [optional] + + + +[More Information Needed] + +## Environmental Impact + + + +Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700). + +- **Hardware Type:** [More Information Needed] +- **Hours used:** [More Information Needed] +- **Cloud Provider:** [More Information Needed] +- **Compute Region:** [More Information Needed] +- **Carbon Emitted:** [More Information Needed] + +## Technical Specifications [optional] + +### Model Architecture and Objective + +[More Information Needed] + +### Compute Infrastructure + +[More Information Needed] + +#### Hardware + +[More Information Needed] + +#### Software + +[More Information Needed] + +## Citation [optional] + + + +**BibTeX:** + +[More Information Needed] + +**APA:** + +[More Information Needed] + +## Glossary [optional] + + + +[More Information Needed] + +## More Information [optional] + +[More Information Needed] + +## Model Card Authors [optional] + +[More Information Needed] + +## Model Card Contact + +[More Information Needed] +### Framework versions + +- PEFT 0.9.0 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/adapter_config.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/adapter_config.json new file mode 100644 index 0000000000000000000000000000000000000000..9c81a592f0ff08374a4f61f6003029070a8429ae --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/adapter_config.json @@ -0,0 +1,35 @@ +{ + "alpha_pattern": {}, + "auto_mapping": null, + "base_model_name_or_path": "meta-llama/Llama-2-7b-hf", + "bias": "none", + "fan_in_fan_out": false, + "inference_mode": true, + "init_lora_weights": true, + "layers_pattern": null, + "layers_to_transform": null, + "loftq_config": {}, + "lora_alpha": 16, + "lora_dropout": 0.05, + "megatron_config": null, + "megatron_core": "megatron.core", + "modules_to_save": null, + "mora_type": 1, + "peft_type": "LORA", + "r": 8, + "rank_pattern": {}, + "revision": null, + "target_modules": [ + "q_proj", + "k_proj", + "v_proj", + "o_proj", + "gate_proj", + "down_proj", + "up_proj" + ], + "task_type": "CAUSAL_LM", + "use_dora": false, + "use_mora": false, + "use_rslora": false +} \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/adapter_model.safetensors b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/adapter_model.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..4e7b6a47757954321a3775bcacd88ea00df0673a --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/adapter_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70f45d542b9751aac50878963b44fc32c5f248fe038c74462deb7a35a752d354 +size 564342240 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/global_step4500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/global_step4500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..8c75038a1daadd042aa2b0fbff47faf98be06720 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/global_step4500/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71432279295b06256962708fc569860b615fa9057cd3188a816efa7d765a97d3 +size 239914224 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/global_step4500/mp_rank_00_model_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/global_step4500/mp_rank_00_model_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..72c96092c73fd9ff83bffb466381a6fc29b4b997 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/global_step4500/mp_rank_00_model_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f18fb718aa658b625c69ca5508ef8e74bebeb071ae4a58db78f5578b3e55aa4a +size 40303404 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/latest b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/latest new file mode 100644 index 0000000000000000000000000000000000000000..982b8ddd9a759078550e0894b3ed06c6084c9e9c --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/latest @@ -0,0 +1 @@ +global_step4500 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/rng_state.pth b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/rng_state.pth new file mode 100644 index 0000000000000000000000000000000000000000..e016740571a6688a5f991c72573e1825d45089f4 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/rng_state.pth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19c63835baf588a511e53431b12916db783c534add75bfd00d5d75a5a7a999e6 +size 14244 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/scheduler.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/scheduler.pt new file mode 100644 index 0000000000000000000000000000000000000000..20781897ef32ae8a6ca52e9b08a84851d316b4f5 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/scheduler.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57969ca0ff3a5006c6164f4d25d7aa5010c76c0025d089be4262a3e81c08ba92 +size 1064 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/trainer_state.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/trainer_state.json new file mode 100644 index 0000000000000000000000000000000000000000..10564fbeb7c02f086e8d98e1ad95ea8884a7fe4d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/trainer_state.json @@ -0,0 +1,5421 @@ +{ + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 1.796239124333427, + "eval_steps": 500, + "global_step": 4500, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.0, + "learning_rate": 6.666666666666667e-06, + "loss": 1.3797, + "step": 5 + }, + { + "epoch": 0.0, + "learning_rate": 1.3333333333333333e-05, + "loss": 1.3952, + "step": 10 + }, + { + "epoch": 0.01, + "learning_rate": 2e-05, + "loss": 1.3112, + "step": 15 + }, + { + "epoch": 0.01, + "learning_rate": 2.6666666666666667e-05, + "loss": 1.3136, + "step": 20 + }, + { + "epoch": 0.01, + "learning_rate": 3.3333333333333335e-05, + "loss": 1.2012, + "step": 25 + }, + { + "epoch": 0.01, + "learning_rate": 4e-05, + "loss": 1.1277, + "step": 30 + }, + { + "epoch": 0.01, + "learning_rate": 4.666666666666667e-05, + "loss": 1.0832, + "step": 35 + }, + { + "epoch": 0.02, + "learning_rate": 5.333333333333333e-05, + "loss": 1.0659, + "step": 40 + }, + { + "epoch": 0.02, + "learning_rate": 6e-05, + "loss": 0.983, + "step": 45 + }, + { + "epoch": 0.02, + "learning_rate": 6.666666666666667e-05, + "loss": 0.9763, + "step": 50 + }, + { + "epoch": 0.02, + "learning_rate": 7.333333333333333e-05, + "loss": 0.9992, + "step": 55 + }, + { + "epoch": 0.02, + "learning_rate": 8e-05, + "loss": 0.9405, + "step": 60 + }, + { + "epoch": 0.03, + "learning_rate": 8.666666666666667e-05, + "loss": 0.9827, + "step": 65 + }, + { + "epoch": 0.03, + "learning_rate": 9.333333333333334e-05, + "loss": 0.9061, + "step": 70 + }, + { + "epoch": 0.03, + "learning_rate": 0.0001, + "loss": 0.8921, + "step": 75 + }, + { + "epoch": 0.03, + "learning_rate": 0.00010666666666666667, + "loss": 0.9377, + "step": 80 + }, + { + "epoch": 0.03, + "learning_rate": 0.00011333333333333334, + "loss": 0.8528, + "step": 85 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012, + "loss": 0.8913, + "step": 90 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012666666666666666, + "loss": 0.8562, + "step": 95 + }, + { + "epoch": 0.04, + "learning_rate": 0.00013333333333333334, + "loss": 0.877, + "step": 100 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014, + "loss": 0.8781, + "step": 105 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014666666666666666, + "loss": 0.8546, + "step": 110 + }, + { + "epoch": 0.05, + "learning_rate": 0.00015333333333333334, + "loss": 0.8672, + "step": 115 + }, + { + "epoch": 0.05, + "learning_rate": 0.00016, + "loss": 0.8611, + "step": 120 + }, + { + "epoch": 0.05, + "learning_rate": 0.0001666666666666667, + "loss": 0.8624, + "step": 125 + }, + { + "epoch": 0.05, + "learning_rate": 0.00017333333333333334, + "loss": 0.8477, + "step": 130 + }, + { + "epoch": 0.05, + "learning_rate": 0.00018, + "loss": 0.8227, + "step": 135 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001866666666666667, + "loss": 0.8064, + "step": 140 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019333333333333333, + "loss": 0.8422, + "step": 145 + }, + { + "epoch": 0.06, + "learning_rate": 0.0002, + "loss": 0.8471, + "step": 150 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001997942386831276, + "loss": 0.8183, + "step": 155 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019958847736625514, + "loss": 0.8229, + "step": 160 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019938271604938272, + "loss": 0.8114, + "step": 165 + }, + { + "epoch": 0.07, + "learning_rate": 0.0001991769547325103, + "loss": 0.7861, + "step": 170 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019897119341563788, + "loss": 0.841, + "step": 175 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019876543209876543, + "loss": 0.8549, + "step": 180 + }, + { + "epoch": 0.07, + "learning_rate": 0.000198559670781893, + "loss": 0.8449, + "step": 185 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001983539094650206, + "loss": 0.8311, + "step": 190 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019814814814814814, + "loss": 0.8296, + "step": 195 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019794238683127572, + "loss": 0.8263, + "step": 200 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001977366255144033, + "loss": 0.8452, + "step": 205 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019753086419753085, + "loss": 0.8044, + "step": 210 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019732510288065843, + "loss": 0.8119, + "step": 215 + }, + { + "epoch": 0.09, + "learning_rate": 0.000197119341563786, + "loss": 0.8127, + "step": 220 + }, + { + "epoch": 0.09, + "learning_rate": 0.0001969135802469136, + "loss": 0.7921, + "step": 225 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019670781893004114, + "loss": 0.803, + "step": 230 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019650205761316872, + "loss": 0.838, + "step": 235 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001962962962962963, + "loss": 0.7801, + "step": 240 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019609053497942388, + "loss": 0.817, + "step": 245 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019588477366255146, + "loss": 0.8211, + "step": 250 + }, + { + "epoch": 0.1, + "learning_rate": 0.000195679012345679, + "loss": 0.8423, + "step": 255 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001954732510288066, + "loss": 0.8007, + "step": 260 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019526748971193417, + "loss": 0.8135, + "step": 265 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019506172839506175, + "loss": 0.7961, + "step": 270 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019485596707818933, + "loss": 0.797, + "step": 275 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019465020576131688, + "loss": 0.793, + "step": 280 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019444444444444446, + "loss": 0.7809, + "step": 285 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019423868312757204, + "loss": 0.7811, + "step": 290 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019403292181069962, + "loss": 0.8074, + "step": 295 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019382716049382717, + "loss": 0.8028, + "step": 300 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019362139917695475, + "loss": 0.7895, + "step": 305 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019341563786008233, + "loss": 0.7777, + "step": 310 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019320987654320988, + "loss": 0.7868, + "step": 315 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019300411522633746, + "loss": 0.7921, + "step": 320 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019279835390946504, + "loss": 0.8, + "step": 325 + }, + { + "epoch": 0.13, + "learning_rate": 0.0001925925925925926, + "loss": 0.7781, + "step": 330 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019238683127572017, + "loss": 0.7799, + "step": 335 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019218106995884775, + "loss": 0.7921, + "step": 340 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019197530864197533, + "loss": 0.7851, + "step": 345 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019176954732510288, + "loss": 0.8106, + "step": 350 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019156378600823046, + "loss": 0.7953, + "step": 355 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019135802469135804, + "loss": 0.8084, + "step": 360 + }, + { + "epoch": 0.15, + "learning_rate": 0.0001911522633744856, + "loss": 0.8298, + "step": 365 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019094650205761317, + "loss": 0.8273, + "step": 370 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019074074074074075, + "loss": 0.8047, + "step": 375 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019053497942386833, + "loss": 0.8108, + "step": 380 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019032921810699588, + "loss": 0.8207, + "step": 385 + }, + { + "epoch": 0.16, + "learning_rate": 0.00019012345679012346, + "loss": 0.7884, + "step": 390 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018991769547325104, + "loss": 0.7918, + "step": 395 + }, + { + "epoch": 0.16, + "learning_rate": 0.0001897119341563786, + "loss": 0.7554, + "step": 400 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018950617283950617, + "loss": 0.8099, + "step": 405 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018930041152263375, + "loss": 0.807, + "step": 410 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018909465020576133, + "loss": 0.7793, + "step": 415 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018888888888888888, + "loss": 0.7734, + "step": 420 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018868312757201646, + "loss": 0.7786, + "step": 425 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018847736625514404, + "loss": 0.7548, + "step": 430 + }, + { + "epoch": 0.17, + "learning_rate": 0.0001882716049382716, + "loss": 0.8024, + "step": 435 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018806584362139917, + "loss": 0.7708, + "step": 440 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018786008230452675, + "loss": 0.8045, + "step": 445 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018765432098765433, + "loss": 0.7477, + "step": 450 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018744855967078189, + "loss": 0.7474, + "step": 455 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018724279835390946, + "loss": 0.7629, + "step": 460 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018703703703703704, + "loss": 0.7777, + "step": 465 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018683127572016462, + "loss": 0.7823, + "step": 470 + }, + { + "epoch": 0.19, + "learning_rate": 0.0001866255144032922, + "loss": 0.7762, + "step": 475 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018641975308641978, + "loss": 0.782, + "step": 480 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018621399176954733, + "loss": 0.7783, + "step": 485 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001860082304526749, + "loss": 0.7376, + "step": 490 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001858024691358025, + "loss": 0.7683, + "step": 495 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018559670781893007, + "loss": 0.7547, + "step": 500 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018539094650205762, + "loss": 0.7569, + "step": 505 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001851851851851852, + "loss": 0.7796, + "step": 510 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018497942386831278, + "loss": 0.7888, + "step": 515 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018477366255144033, + "loss": 0.7763, + "step": 520 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018456790123456791, + "loss": 0.7787, + "step": 525 + }, + { + "epoch": 0.21, + "learning_rate": 0.0001843621399176955, + "loss": 0.772, + "step": 530 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018415637860082307, + "loss": 0.786, + "step": 535 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018395061728395062, + "loss": 0.7639, + "step": 540 + }, + { + "epoch": 0.22, + "learning_rate": 0.0001837448559670782, + "loss": 0.775, + "step": 545 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018353909465020578, + "loss": 0.8002, + "step": 550 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018333333333333334, + "loss": 0.7359, + "step": 555 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018312757201646091, + "loss": 0.747, + "step": 560 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001829218106995885, + "loss": 0.8234, + "step": 565 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018271604938271605, + "loss": 0.7586, + "step": 570 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018251028806584363, + "loss": 0.7315, + "step": 575 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001823045267489712, + "loss": 0.7986, + "step": 580 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018209876543209878, + "loss": 0.7758, + "step": 585 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018189300411522634, + "loss": 0.7869, + "step": 590 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018168724279835392, + "loss": 0.7596, + "step": 595 + }, + { + "epoch": 0.24, + "learning_rate": 0.0001814814814814815, + "loss": 0.7658, + "step": 600 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018127572016460905, + "loss": 0.7851, + "step": 605 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018106995884773663, + "loss": 0.7957, + "step": 610 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001808641975308642, + "loss": 0.7756, + "step": 615 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018065843621399178, + "loss": 0.7911, + "step": 620 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018045267489711934, + "loss": 0.7864, + "step": 625 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018024691358024692, + "loss": 0.7683, + "step": 630 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001800411522633745, + "loss": 0.7731, + "step": 635 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017983539094650205, + "loss": 0.7671, + "step": 640 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017962962962962963, + "loss": 0.7367, + "step": 645 + }, + { + "epoch": 0.26, + "learning_rate": 0.0001794238683127572, + "loss": 0.8024, + "step": 650 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017921810699588476, + "loss": 0.7572, + "step": 655 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017901234567901234, + "loss": 0.7554, + "step": 660 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017880658436213992, + "loss": 0.7677, + "step": 665 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001786008230452675, + "loss": 0.7652, + "step": 670 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017839506172839508, + "loss": 0.7771, + "step": 675 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017818930041152265, + "loss": 0.7747, + "step": 680 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001779835390946502, + "loss": 0.767, + "step": 685 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017777777777777779, + "loss": 0.7738, + "step": 690 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017757201646090537, + "loss": 0.7271, + "step": 695 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017736625514403294, + "loss": 0.7316, + "step": 700 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017716049382716052, + "loss": 0.7831, + "step": 705 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017695473251028808, + "loss": 0.7835, + "step": 710 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017674897119341566, + "loss": 0.7497, + "step": 715 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017654320987654323, + "loss": 0.7757, + "step": 720 + }, + { + "epoch": 0.29, + "learning_rate": 0.0001763374485596708, + "loss": 0.74, + "step": 725 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017613168724279837, + "loss": 0.7697, + "step": 730 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017592592592592595, + "loss": 0.774, + "step": 735 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017572016460905352, + "loss": 0.7668, + "step": 740 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017551440329218108, + "loss": 0.7779, + "step": 745 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017530864197530866, + "loss": 0.7441, + "step": 750 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017510288065843624, + "loss": 0.7578, + "step": 755 + }, + { + "epoch": 0.3, + "learning_rate": 0.0001748971193415638, + "loss": 0.8358, + "step": 760 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017469135802469137, + "loss": 0.7473, + "step": 765 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017448559670781895, + "loss": 0.7517, + "step": 770 + }, + { + "epoch": 0.31, + "learning_rate": 0.0001742798353909465, + "loss": 0.7593, + "step": 775 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017407407407407408, + "loss": 0.7251, + "step": 780 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017386831275720166, + "loss": 0.7365, + "step": 785 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017366255144032924, + "loss": 0.7798, + "step": 790 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001734567901234568, + "loss": 0.746, + "step": 795 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017325102880658437, + "loss": 0.7607, + "step": 800 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017304526748971195, + "loss": 0.7694, + "step": 805 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001728395061728395, + "loss": 0.7926, + "step": 810 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017263374485596708, + "loss": 0.795, + "step": 815 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017242798353909466, + "loss": 0.7581, + "step": 820 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017222222222222224, + "loss": 0.7629, + "step": 825 + }, + { + "epoch": 0.33, + "learning_rate": 0.0001720164609053498, + "loss": 0.7526, + "step": 830 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017181069958847737, + "loss": 0.7338, + "step": 835 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017160493827160495, + "loss": 0.7544, + "step": 840 + }, + { + "epoch": 0.34, + "learning_rate": 0.0001713991769547325, + "loss": 0.7522, + "step": 845 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017119341563786008, + "loss": 0.7639, + "step": 850 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017098765432098766, + "loss": 0.7914, + "step": 855 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017078189300411524, + "loss": 0.7635, + "step": 860 + }, + { + "epoch": 0.35, + "learning_rate": 0.0001705761316872428, + "loss": 0.8343, + "step": 865 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017037037037037037, + "loss": 0.7299, + "step": 870 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017016460905349795, + "loss": 0.7643, + "step": 875 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016995884773662553, + "loss": 0.7343, + "step": 880 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016975308641975308, + "loss": 0.7546, + "step": 885 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016954732510288066, + "loss": 0.7435, + "step": 890 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016934156378600824, + "loss": 0.8086, + "step": 895 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016913580246913582, + "loss": 0.7274, + "step": 900 + }, + { + "epoch": 0.36, + "learning_rate": 0.0001689300411522634, + "loss": 0.7511, + "step": 905 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016872427983539098, + "loss": 0.7689, + "step": 910 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016851851851851853, + "loss": 0.754, + "step": 915 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001683127572016461, + "loss": 0.7298, + "step": 920 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001681069958847737, + "loss": 0.7755, + "step": 925 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016790123456790124, + "loss": 0.7854, + "step": 930 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016769547325102882, + "loss": 0.7452, + "step": 935 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001674897119341564, + "loss": 0.7473, + "step": 940 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016728395061728398, + "loss": 0.7855, + "step": 945 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016707818930041153, + "loss": 0.7527, + "step": 950 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001668724279835391, + "loss": 0.7641, + "step": 955 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001666666666666667, + "loss": 0.828, + "step": 960 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016646090534979424, + "loss": 0.7571, + "step": 965 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016625514403292182, + "loss": 0.7768, + "step": 970 + }, + { + "epoch": 0.39, + "learning_rate": 0.0001660493827160494, + "loss": 0.7644, + "step": 975 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016584362139917695, + "loss": 0.7747, + "step": 980 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016563786008230453, + "loss": 0.7926, + "step": 985 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001654320987654321, + "loss": 0.7645, + "step": 990 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001652263374485597, + "loss": 0.7464, + "step": 995 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016502057613168724, + "loss": 0.7558, + "step": 1000 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016481481481481482, + "loss": 0.7574, + "step": 1005 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001646090534979424, + "loss": 0.7491, + "step": 1010 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016440329218106995, + "loss": 0.756, + "step": 1015 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016419753086419753, + "loss": 0.7679, + "step": 1020 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001639917695473251, + "loss": 0.776, + "step": 1025 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001637860082304527, + "loss": 0.7235, + "step": 1030 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016358024691358024, + "loss": 0.7817, + "step": 1035 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016337448559670782, + "loss": 0.7333, + "step": 1040 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001631687242798354, + "loss": 0.754, + "step": 1045 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016296296296296295, + "loss": 0.74, + "step": 1050 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016275720164609053, + "loss": 0.7857, + "step": 1055 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001625514403292181, + "loss": 0.8015, + "step": 1060 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001623456790123457, + "loss": 0.7508, + "step": 1065 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016213991769547324, + "loss": 0.7514, + "step": 1070 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016193415637860082, + "loss": 0.7326, + "step": 1075 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001617283950617284, + "loss": 0.7322, + "step": 1080 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016152263374485595, + "loss": 0.7373, + "step": 1085 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016131687242798353, + "loss": 0.7637, + "step": 1090 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001611111111111111, + "loss": 0.7697, + "step": 1095 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001609053497942387, + "loss": 0.7505, + "step": 1100 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016069958847736627, + "loss": 0.7568, + "step": 1105 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016049382716049385, + "loss": 0.786, + "step": 1110 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001602880658436214, + "loss": 0.7525, + "step": 1115 + }, + { + "epoch": 0.45, + "learning_rate": 0.00016008230452674898, + "loss": 0.7696, + "step": 1120 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015987654320987656, + "loss": 0.7648, + "step": 1125 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015967078189300414, + "loss": 0.7492, + "step": 1130 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001594650205761317, + "loss": 0.809, + "step": 1135 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015925925925925927, + "loss": 0.7592, + "step": 1140 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015905349794238685, + "loss": 0.7874, + "step": 1145 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015884773662551443, + "loss": 0.7874, + "step": 1150 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015864197530864198, + "loss": 0.7374, + "step": 1155 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015843621399176956, + "loss": 0.7218, + "step": 1160 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015823045267489714, + "loss": 0.7494, + "step": 1165 + }, + { + "epoch": 0.47, + "learning_rate": 0.0001580246913580247, + "loss": 0.7449, + "step": 1170 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015781893004115227, + "loss": 0.725, + "step": 1175 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015761316872427985, + "loss": 0.739, + "step": 1180 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015740740740740743, + "loss": 0.7554, + "step": 1185 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015720164609053498, + "loss": 0.7702, + "step": 1190 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015699588477366256, + "loss": 0.7418, + "step": 1195 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015679012345679014, + "loss": 0.7217, + "step": 1200 + }, + { + "epoch": 0.48, + "learning_rate": 0.0001565843621399177, + "loss": 0.7391, + "step": 1205 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015637860082304527, + "loss": 0.7696, + "step": 1210 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015617283950617285, + "loss": 0.7594, + "step": 1215 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001559670781893004, + "loss": 0.777, + "step": 1220 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015576131687242798, + "loss": 0.7441, + "step": 1225 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015555555555555556, + "loss": 0.7611, + "step": 1230 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015534979423868314, + "loss": 0.7278, + "step": 1235 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001551440329218107, + "loss": 0.7452, + "step": 1240 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015493827160493827, + "loss": 0.7939, + "step": 1245 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015473251028806585, + "loss": 0.7161, + "step": 1250 + }, + { + "epoch": 0.5, + "learning_rate": 0.0001545267489711934, + "loss": 0.7344, + "step": 1255 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015432098765432098, + "loss": 0.7368, + "step": 1260 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015411522633744856, + "loss": 0.7172, + "step": 1265 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015390946502057614, + "loss": 0.7589, + "step": 1270 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001537037037037037, + "loss": 0.7641, + "step": 1275 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015349794238683127, + "loss": 0.761, + "step": 1280 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015329218106995885, + "loss": 0.7414, + "step": 1285 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001530864197530864, + "loss": 0.7713, + "step": 1290 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015288065843621399, + "loss": 0.7543, + "step": 1295 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015267489711934156, + "loss": 0.7683, + "step": 1300 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015246913580246914, + "loss": 0.8106, + "step": 1305 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015226337448559672, + "loss": 0.7739, + "step": 1310 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015205761316872428, + "loss": 0.7585, + "step": 1315 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015185185185185185, + "loss": 0.7577, + "step": 1320 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015164609053497943, + "loss": 0.7608, + "step": 1325 + }, + { + "epoch": 0.53, + "learning_rate": 0.000151440329218107, + "loss": 0.7715, + "step": 1330 + }, + { + "epoch": 0.53, + "learning_rate": 0.0001512345679012346, + "loss": 0.7681, + "step": 1335 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015102880658436214, + "loss": 0.7476, + "step": 1340 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015082304526748972, + "loss": 0.7539, + "step": 1345 + }, + { + "epoch": 0.54, + "learning_rate": 0.0001506172839506173, + "loss": 0.7492, + "step": 1350 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015041152263374488, + "loss": 0.7491, + "step": 1355 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015020576131687243, + "loss": 0.7236, + "step": 1360 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015000000000000001, + "loss": 0.7328, + "step": 1365 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001497942386831276, + "loss": 0.7603, + "step": 1370 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014958847736625515, + "loss": 0.7206, + "step": 1375 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014938271604938272, + "loss": 0.7001, + "step": 1380 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001491769547325103, + "loss": 0.7241, + "step": 1385 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014897119341563788, + "loss": 0.7511, + "step": 1390 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014876543209876544, + "loss": 0.7546, + "step": 1395 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014855967078189301, + "loss": 0.762, + "step": 1400 + }, + { + "epoch": 0.56, + "learning_rate": 0.0001483539094650206, + "loss": 0.6979, + "step": 1405 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014814814814814815, + "loss": 0.7352, + "step": 1410 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014794238683127573, + "loss": 0.7604, + "step": 1415 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001477366255144033, + "loss": 0.7612, + "step": 1420 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014753086419753086, + "loss": 0.7618, + "step": 1425 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014732510288065844, + "loss": 0.7107, + "step": 1430 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014711934156378602, + "loss": 0.7247, + "step": 1435 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001469135802469136, + "loss": 0.7733, + "step": 1440 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014670781893004115, + "loss": 0.7627, + "step": 1445 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014650205761316873, + "loss": 0.7323, + "step": 1450 + }, + { + "epoch": 0.58, + "learning_rate": 0.0001462962962962963, + "loss": 0.7728, + "step": 1455 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014609053497942386, + "loss": 0.7541, + "step": 1460 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014588477366255144, + "loss": 0.7781, + "step": 1465 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014567901234567902, + "loss": 0.7474, + "step": 1470 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001454732510288066, + "loss": 0.7789, + "step": 1475 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014526748971193415, + "loss": 0.7497, + "step": 1480 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014506172839506173, + "loss": 0.7487, + "step": 1485 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001448559670781893, + "loss": 0.7563, + "step": 1490 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014465020576131686, + "loss": 0.7444, + "step": 1495 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014444444444444444, + "loss": 0.7399, + "step": 1500 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014423868312757202, + "loss": 0.7288, + "step": 1505 + }, + { + "epoch": 0.6, + "learning_rate": 0.0001440329218106996, + "loss": 0.7458, + "step": 1510 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014382716049382718, + "loss": 0.7297, + "step": 1515 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014362139917695473, + "loss": 0.7684, + "step": 1520 + }, + { + "epoch": 0.61, + "learning_rate": 0.0001434156378600823, + "loss": 0.7428, + "step": 1525 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014320987654320989, + "loss": 0.705, + "step": 1530 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014300411522633747, + "loss": 0.7445, + "step": 1535 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014279835390946504, + "loss": 0.7109, + "step": 1540 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001425925925925926, + "loss": 0.7502, + "step": 1545 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014238683127572018, + "loss": 0.7485, + "step": 1550 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014218106995884776, + "loss": 0.7421, + "step": 1555 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014197530864197534, + "loss": 0.7369, + "step": 1560 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001417695473251029, + "loss": 0.7746, + "step": 1565 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014156378600823047, + "loss": 0.7334, + "step": 1570 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014135802469135805, + "loss": 0.7251, + "step": 1575 + }, + { + "epoch": 0.63, + "learning_rate": 0.0001411522633744856, + "loss": 0.7146, + "step": 1580 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014094650205761318, + "loss": 0.7563, + "step": 1585 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014074074074074076, + "loss": 0.7247, + "step": 1590 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014053497942386834, + "loss": 0.7379, + "step": 1595 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001403292181069959, + "loss": 0.7684, + "step": 1600 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014012345679012347, + "loss": 0.7574, + "step": 1605 + }, + { + "epoch": 0.64, + "learning_rate": 0.00013991769547325105, + "loss": 0.7138, + "step": 1610 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001397119341563786, + "loss": 0.7472, + "step": 1615 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013950617283950618, + "loss": 0.7466, + "step": 1620 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013930041152263376, + "loss": 0.7288, + "step": 1625 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013909465020576134, + "loss": 0.7717, + "step": 1630 + }, + { + "epoch": 0.65, + "learning_rate": 0.0001388888888888889, + "loss": 0.7665, + "step": 1635 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013868312757201647, + "loss": 0.7408, + "step": 1640 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013847736625514405, + "loss": 0.7418, + "step": 1645 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001382716049382716, + "loss": 0.7502, + "step": 1650 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013806584362139918, + "loss": 0.7657, + "step": 1655 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013786008230452676, + "loss": 0.728, + "step": 1660 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001376543209876543, + "loss": 0.7142, + "step": 1665 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001374485596707819, + "loss": 0.7971, + "step": 1670 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013724279835390947, + "loss": 0.737, + "step": 1675 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013703703703703705, + "loss": 0.7947, + "step": 1680 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001368312757201646, + "loss": 0.7525, + "step": 1685 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013662551440329218, + "loss": 0.711, + "step": 1690 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013641975308641976, + "loss": 0.7459, + "step": 1695 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001362139917695473, + "loss": 0.7404, + "step": 1700 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001360082304526749, + "loss": 0.7458, + "step": 1705 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013580246913580247, + "loss": 0.754, + "step": 1710 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013559670781893005, + "loss": 0.7217, + "step": 1715 + }, + { + "epoch": 0.69, + "learning_rate": 0.0001353909465020576, + "loss": 0.7373, + "step": 1720 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013518518518518518, + "loss": 0.7567, + "step": 1725 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013497942386831276, + "loss": 0.7525, + "step": 1730 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013477366255144034, + "loss": 0.752, + "step": 1735 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013456790123456792, + "loss": 0.7342, + "step": 1740 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001343621399176955, + "loss": 0.7276, + "step": 1745 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013415637860082305, + "loss": 0.6915, + "step": 1750 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013395061728395063, + "loss": 0.737, + "step": 1755 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001337448559670782, + "loss": 0.7427, + "step": 1760 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001335390946502058, + "loss": 0.7126, + "step": 1765 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013333333333333334, + "loss": 0.7241, + "step": 1770 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013312757201646092, + "loss": 0.755, + "step": 1775 + }, + { + "epoch": 0.71, + "learning_rate": 0.0001329218106995885, + "loss": 0.7494, + "step": 1780 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013271604938271605, + "loss": 0.709, + "step": 1785 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013251028806584363, + "loss": 0.7555, + "step": 1790 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001323045267489712, + "loss": 0.7298, + "step": 1795 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001320987654320988, + "loss": 0.7232, + "step": 1800 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013189300411522634, + "loss": 0.7441, + "step": 1805 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013168724279835392, + "loss": 0.7623, + "step": 1810 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001314814814814815, + "loss": 0.7349, + "step": 1815 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013127572016460905, + "loss": 0.7773, + "step": 1820 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013106995884773663, + "loss": 0.7537, + "step": 1825 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001308641975308642, + "loss": 0.7579, + "step": 1830 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001306584362139918, + "loss": 0.7321, + "step": 1835 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013045267489711934, + "loss": 0.7175, + "step": 1840 + }, + { + "epoch": 0.74, + "learning_rate": 0.00013024691358024692, + "loss": 0.7553, + "step": 1845 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001300411522633745, + "loss": 0.7591, + "step": 1850 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012983539094650205, + "loss": 0.7581, + "step": 1855 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012962962962962963, + "loss": 0.7632, + "step": 1860 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001294238683127572, + "loss": 0.7434, + "step": 1865 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012921810699588476, + "loss": 0.7695, + "step": 1870 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012901234567901234, + "loss": 0.7808, + "step": 1875 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012880658436213992, + "loss": 0.7428, + "step": 1880 + }, + { + "epoch": 0.75, + "learning_rate": 0.0001286008230452675, + "loss": 0.7487, + "step": 1885 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012839506172839505, + "loss": 0.7033, + "step": 1890 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012818930041152263, + "loss": 0.7639, + "step": 1895 + }, + { + "epoch": 0.76, + "learning_rate": 0.0001279835390946502, + "loss": 0.7345, + "step": 1900 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012777777777777776, + "loss": 0.7434, + "step": 1905 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012757201646090534, + "loss": 0.7082, + "step": 1910 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012736625514403292, + "loss": 0.7294, + "step": 1915 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001271604938271605, + "loss": 0.74, + "step": 1920 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012695473251028805, + "loss": 0.7694, + "step": 1925 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012674897119341563, + "loss": 0.7339, + "step": 1930 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001265432098765432, + "loss": 0.7259, + "step": 1935 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001263374485596708, + "loss": 0.7307, + "step": 1940 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012613168724279837, + "loss": 0.7085, + "step": 1945 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012592592592592592, + "loss": 0.7662, + "step": 1950 + }, + { + "epoch": 0.78, + "learning_rate": 0.0001257201646090535, + "loss": 0.7145, + "step": 1955 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012551440329218108, + "loss": 0.7528, + "step": 1960 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012530864197530866, + "loss": 0.7308, + "step": 1965 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012510288065843624, + "loss": 0.7163, + "step": 1970 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001248971193415638, + "loss": 0.7254, + "step": 1975 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012469135802469137, + "loss": 0.7467, + "step": 1980 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012448559670781895, + "loss": 0.7391, + "step": 1985 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001242798353909465, + "loss": 0.7314, + "step": 1990 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012407407407407408, + "loss": 0.7048, + "step": 1995 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012386831275720166, + "loss": 0.7187, + "step": 2000 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012366255144032924, + "loss": 0.735, + "step": 2005 + }, + { + "epoch": 0.8, + "learning_rate": 0.0001234567901234568, + "loss": 0.7662, + "step": 2010 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012325102880658437, + "loss": 0.7437, + "step": 2015 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012304526748971195, + "loss": 0.7675, + "step": 2020 + }, + { + "epoch": 0.81, + "learning_rate": 0.0001228395061728395, + "loss": 0.7143, + "step": 2025 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012263374485596708, + "loss": 0.7101, + "step": 2030 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012242798353909466, + "loss": 0.7257, + "step": 2035 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012222222222222224, + "loss": 0.7522, + "step": 2040 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001220164609053498, + "loss": 0.7669, + "step": 2045 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012181069958847737, + "loss": 0.7283, + "step": 2050 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012160493827160495, + "loss": 0.7413, + "step": 2055 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001213991769547325, + "loss": 0.6988, + "step": 2060 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012119341563786008, + "loss": 0.7421, + "step": 2065 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012098765432098766, + "loss": 0.7152, + "step": 2070 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012078189300411524, + "loss": 0.7741, + "step": 2075 + }, + { + "epoch": 0.83, + "learning_rate": 0.0001205761316872428, + "loss": 0.7381, + "step": 2080 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012037037037037037, + "loss": 0.738, + "step": 2085 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012016460905349795, + "loss": 0.7258, + "step": 2090 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011995884773662552, + "loss": 0.7426, + "step": 2095 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011975308641975308, + "loss": 0.7185, + "step": 2100 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011954732510288066, + "loss": 0.7401, + "step": 2105 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011934156378600823, + "loss": 0.751, + "step": 2110 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011913580246913581, + "loss": 0.7284, + "step": 2115 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011893004115226339, + "loss": 0.7901, + "step": 2120 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011872427983539097, + "loss": 0.7432, + "step": 2125 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011851851851851852, + "loss": 0.7355, + "step": 2130 + }, + { + "epoch": 0.85, + "learning_rate": 0.0001183127572016461, + "loss": 0.7333, + "step": 2135 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011810699588477368, + "loss": 0.7504, + "step": 2140 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011790123456790123, + "loss": 0.7503, + "step": 2145 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011769547325102881, + "loss": 0.728, + "step": 2150 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011748971193415639, + "loss": 0.7485, + "step": 2155 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011728395061728397, + "loss": 0.7127, + "step": 2160 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011707818930041152, + "loss": 0.7278, + "step": 2165 + }, + { + "epoch": 0.87, + "learning_rate": 0.0001168724279835391, + "loss": 0.7513, + "step": 2170 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011666666666666668, + "loss": 0.7193, + "step": 2175 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011646090534979423, + "loss": 0.7245, + "step": 2180 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011625514403292181, + "loss": 0.7266, + "step": 2185 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011604938271604939, + "loss": 0.7531, + "step": 2190 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011584362139917696, + "loss": 0.7637, + "step": 2195 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011563786008230452, + "loss": 0.7388, + "step": 2200 + }, + { + "epoch": 0.88, + "learning_rate": 0.0001154320987654321, + "loss": 0.7222, + "step": 2205 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011522633744855968, + "loss": 0.7667, + "step": 2210 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011502057613168725, + "loss": 0.7382, + "step": 2215 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011481481481481482, + "loss": 0.7243, + "step": 2220 + }, + { + "epoch": 0.89, + "learning_rate": 0.0001146090534979424, + "loss": 0.7192, + "step": 2225 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011440329218106996, + "loss": 0.7237, + "step": 2230 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011419753086419754, + "loss": 0.7498, + "step": 2235 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011399176954732511, + "loss": 0.7007, + "step": 2240 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001137860082304527, + "loss": 0.758, + "step": 2245 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011358024691358025, + "loss": 0.7111, + "step": 2250 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011337448559670783, + "loss": 0.706, + "step": 2255 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001131687242798354, + "loss": 0.7423, + "step": 2260 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011296296296296296, + "loss": 0.7094, + "step": 2265 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011275720164609054, + "loss": 0.7331, + "step": 2270 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011255144032921812, + "loss": 0.7164, + "step": 2275 + }, + { + "epoch": 0.91, + "learning_rate": 0.0001123456790123457, + "loss": 0.7452, + "step": 2280 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011213991769547325, + "loss": 0.7172, + "step": 2285 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011193415637860083, + "loss": 0.7232, + "step": 2290 + }, + { + "epoch": 0.92, + "learning_rate": 0.0001117283950617284, + "loss": 0.7112, + "step": 2295 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011152263374485596, + "loss": 0.7459, + "step": 2300 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011131687242798354, + "loss": 0.7353, + "step": 2305 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011111111111111112, + "loss": 0.7406, + "step": 2310 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011090534979423868, + "loss": 0.7623, + "step": 2315 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011069958847736626, + "loss": 0.7567, + "step": 2320 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011049382716049384, + "loss": 0.7752, + "step": 2325 + }, + { + "epoch": 0.93, + "learning_rate": 0.0001102880658436214, + "loss": 0.7419, + "step": 2330 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011008230452674897, + "loss": 0.7244, + "step": 2335 + }, + { + "epoch": 0.93, + "learning_rate": 0.00010987654320987655, + "loss": 0.7553, + "step": 2340 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010967078189300413, + "loss": 0.7389, + "step": 2345 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010946502057613168, + "loss": 0.7002, + "step": 2350 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010925925925925926, + "loss": 0.7238, + "step": 2355 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010905349794238684, + "loss": 0.6923, + "step": 2360 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010884773662551442, + "loss": 0.7579, + "step": 2365 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010864197530864197, + "loss": 0.7291, + "step": 2370 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010843621399176955, + "loss": 0.721, + "step": 2375 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010823045267489713, + "loss": 0.7605, + "step": 2380 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010802469135802468, + "loss": 0.7297, + "step": 2385 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010781893004115226, + "loss": 0.7565, + "step": 2390 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010761316872427984, + "loss": 0.701, + "step": 2395 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010740740740740742, + "loss": 0.736, + "step": 2400 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010720164609053497, + "loss": 0.7079, + "step": 2405 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010699588477366255, + "loss": 0.7349, + "step": 2410 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010679012345679013, + "loss": 0.7106, + "step": 2415 + }, + { + "epoch": 0.97, + "learning_rate": 0.0001065843621399177, + "loss": 0.7396, + "step": 2420 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010637860082304528, + "loss": 0.7713, + "step": 2425 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010617283950617284, + "loss": 0.747, + "step": 2430 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010596707818930041, + "loss": 0.7475, + "step": 2435 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010576131687242799, + "loss": 0.7449, + "step": 2440 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010555555555555557, + "loss": 0.7208, + "step": 2445 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010534979423868315, + "loss": 0.7317, + "step": 2450 + }, + { + "epoch": 0.98, + "learning_rate": 0.0001051440329218107, + "loss": 0.7419, + "step": 2455 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010493827160493828, + "loss": 0.7148, + "step": 2460 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010473251028806586, + "loss": 0.7143, + "step": 2465 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010452674897119341, + "loss": 0.747, + "step": 2470 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010432098765432099, + "loss": 0.7079, + "step": 2475 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010411522633744857, + "loss": 0.7059, + "step": 2480 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010390946502057615, + "loss": 0.7272, + "step": 2485 + }, + { + "epoch": 0.99, + "learning_rate": 0.0001037037037037037, + "loss": 0.7281, + "step": 2490 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010349794238683128, + "loss": 0.6956, + "step": 2495 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010329218106995886, + "loss": 0.7571, + "step": 2500 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010308641975308641, + "loss": 0.7311, + "step": 2505 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010288065843621399, + "loss": 0.6815, + "step": 2510 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010267489711934157, + "loss": 0.6781, + "step": 2515 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010246913580246915, + "loss": 0.6948, + "step": 2520 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010226337448559671, + "loss": 0.7133, + "step": 2525 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010205761316872428, + "loss": 0.688, + "step": 2530 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010185185185185186, + "loss": 0.6687, + "step": 2535 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010164609053497942, + "loss": 0.7142, + "step": 2540 + }, + { + "epoch": 1.02, + "learning_rate": 0.000101440329218107, + "loss": 0.6885, + "step": 2545 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010123456790123458, + "loss": 0.6867, + "step": 2550 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010102880658436214, + "loss": 0.7045, + "step": 2555 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010082304526748971, + "loss": 0.7375, + "step": 2560 + }, + { + "epoch": 1.02, + "learning_rate": 0.0001006172839506173, + "loss": 0.7157, + "step": 2565 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010041152263374487, + "loss": 0.6828, + "step": 2570 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010020576131687243, + "loss": 0.7048, + "step": 2575 + }, + { + "epoch": 1.03, + "learning_rate": 0.0001, + "loss": 0.6944, + "step": 2580 + }, + { + "epoch": 1.03, + "learning_rate": 9.979423868312757e-05, + "loss": 0.696, + "step": 2585 + }, + { + "epoch": 1.03, + "learning_rate": 9.958847736625515e-05, + "loss": 0.6609, + "step": 2590 + }, + { + "epoch": 1.04, + "learning_rate": 9.938271604938272e-05, + "loss": 0.674, + "step": 2595 + }, + { + "epoch": 1.04, + "learning_rate": 9.91769547325103e-05, + "loss": 0.7138, + "step": 2600 + }, + { + "epoch": 1.04, + "learning_rate": 9.897119341563786e-05, + "loss": 0.713, + "step": 2605 + }, + { + "epoch": 1.04, + "learning_rate": 9.876543209876543e-05, + "loss": 0.7022, + "step": 2610 + }, + { + "epoch": 1.04, + "learning_rate": 9.8559670781893e-05, + "loss": 0.6955, + "step": 2615 + }, + { + "epoch": 1.05, + "learning_rate": 9.835390946502057e-05, + "loss": 0.6888, + "step": 2620 + }, + { + "epoch": 1.05, + "learning_rate": 9.814814814814815e-05, + "loss": 0.7003, + "step": 2625 + }, + { + "epoch": 1.05, + "learning_rate": 9.794238683127573e-05, + "loss": 0.7167, + "step": 2630 + }, + { + "epoch": 1.05, + "learning_rate": 9.77366255144033e-05, + "loss": 0.7087, + "step": 2635 + }, + { + "epoch": 1.05, + "learning_rate": 9.753086419753087e-05, + "loss": 0.7019, + "step": 2640 + }, + { + "epoch": 1.06, + "learning_rate": 9.732510288065844e-05, + "loss": 0.6609, + "step": 2645 + }, + { + "epoch": 1.06, + "learning_rate": 9.711934156378602e-05, + "loss": 0.7367, + "step": 2650 + }, + { + "epoch": 1.06, + "learning_rate": 9.691358024691359e-05, + "loss": 0.6862, + "step": 2655 + }, + { + "epoch": 1.06, + "learning_rate": 9.670781893004116e-05, + "loss": 0.7121, + "step": 2660 + }, + { + "epoch": 1.06, + "learning_rate": 9.650205761316873e-05, + "loss": 0.7031, + "step": 2665 + }, + { + "epoch": 1.07, + "learning_rate": 9.62962962962963e-05, + "loss": 0.7005, + "step": 2670 + }, + { + "epoch": 1.07, + "learning_rate": 9.609053497942388e-05, + "loss": 0.7041, + "step": 2675 + }, + { + "epoch": 1.07, + "learning_rate": 9.588477366255144e-05, + "loss": 0.6713, + "step": 2680 + }, + { + "epoch": 1.07, + "learning_rate": 9.567901234567902e-05, + "loss": 0.6932, + "step": 2685 + }, + { + "epoch": 1.07, + "learning_rate": 9.547325102880659e-05, + "loss": 0.6849, + "step": 2690 + }, + { + "epoch": 1.08, + "learning_rate": 9.526748971193417e-05, + "loss": 0.6915, + "step": 2695 + }, + { + "epoch": 1.08, + "learning_rate": 9.506172839506173e-05, + "loss": 0.6677, + "step": 2700 + }, + { + "epoch": 1.08, + "learning_rate": 9.48559670781893e-05, + "loss": 0.6767, + "step": 2705 + }, + { + "epoch": 1.08, + "learning_rate": 9.465020576131688e-05, + "loss": 0.6873, + "step": 2710 + }, + { + "epoch": 1.08, + "learning_rate": 9.444444444444444e-05, + "loss": 0.7007, + "step": 2715 + }, + { + "epoch": 1.09, + "learning_rate": 9.423868312757202e-05, + "loss": 0.6782, + "step": 2720 + }, + { + "epoch": 1.09, + "learning_rate": 9.403292181069959e-05, + "loss": 0.7044, + "step": 2725 + }, + { + "epoch": 1.09, + "learning_rate": 9.382716049382717e-05, + "loss": 0.6787, + "step": 2730 + }, + { + "epoch": 1.09, + "learning_rate": 9.362139917695473e-05, + "loss": 0.6876, + "step": 2735 + }, + { + "epoch": 1.09, + "learning_rate": 9.341563786008231e-05, + "loss": 0.7253, + "step": 2740 + }, + { + "epoch": 1.1, + "learning_rate": 9.320987654320989e-05, + "loss": 0.7159, + "step": 2745 + }, + { + "epoch": 1.1, + "learning_rate": 9.300411522633746e-05, + "loss": 0.704, + "step": 2750 + }, + { + "epoch": 1.1, + "learning_rate": 9.279835390946504e-05, + "loss": 0.6882, + "step": 2755 + }, + { + "epoch": 1.1, + "learning_rate": 9.25925925925926e-05, + "loss": 0.6777, + "step": 2760 + }, + { + "epoch": 1.1, + "learning_rate": 9.238683127572017e-05, + "loss": 0.7133, + "step": 2765 + }, + { + "epoch": 1.11, + "learning_rate": 9.218106995884775e-05, + "loss": 0.6988, + "step": 2770 + }, + { + "epoch": 1.11, + "learning_rate": 9.197530864197531e-05, + "loss": 0.7323, + "step": 2775 + }, + { + "epoch": 1.11, + "learning_rate": 9.176954732510289e-05, + "loss": 0.6854, + "step": 2780 + }, + { + "epoch": 1.11, + "learning_rate": 9.156378600823046e-05, + "loss": 0.6926, + "step": 2785 + }, + { + "epoch": 1.11, + "learning_rate": 9.135802469135802e-05, + "loss": 0.6985, + "step": 2790 + }, + { + "epoch": 1.12, + "learning_rate": 9.11522633744856e-05, + "loss": 0.6776, + "step": 2795 + }, + { + "epoch": 1.12, + "learning_rate": 9.094650205761317e-05, + "loss": 0.7374, + "step": 2800 + }, + { + "epoch": 1.12, + "learning_rate": 9.074074074074075e-05, + "loss": 0.6928, + "step": 2805 + }, + { + "epoch": 1.12, + "learning_rate": 9.053497942386831e-05, + "loss": 0.7129, + "step": 2810 + }, + { + "epoch": 1.12, + "learning_rate": 9.032921810699589e-05, + "loss": 0.6918, + "step": 2815 + }, + { + "epoch": 1.13, + "learning_rate": 9.012345679012346e-05, + "loss": 0.6641, + "step": 2820 + }, + { + "epoch": 1.13, + "learning_rate": 8.991769547325102e-05, + "loss": 0.7075, + "step": 2825 + }, + { + "epoch": 1.13, + "learning_rate": 8.97119341563786e-05, + "loss": 0.668, + "step": 2830 + }, + { + "epoch": 1.13, + "learning_rate": 8.950617283950617e-05, + "loss": 0.6836, + "step": 2835 + }, + { + "epoch": 1.13, + "learning_rate": 8.930041152263375e-05, + "loss": 0.672, + "step": 2840 + }, + { + "epoch": 1.14, + "learning_rate": 8.909465020576133e-05, + "loss": 0.6827, + "step": 2845 + }, + { + "epoch": 1.14, + "learning_rate": 8.888888888888889e-05, + "loss": 0.6976, + "step": 2850 + }, + { + "epoch": 1.14, + "learning_rate": 8.868312757201647e-05, + "loss": 0.6719, + "step": 2855 + }, + { + "epoch": 1.14, + "learning_rate": 8.847736625514404e-05, + "loss": 0.6871, + "step": 2860 + }, + { + "epoch": 1.14, + "learning_rate": 8.827160493827162e-05, + "loss": 0.6975, + "step": 2865 + }, + { + "epoch": 1.15, + "learning_rate": 8.806584362139918e-05, + "loss": 0.684, + "step": 2870 + }, + { + "epoch": 1.15, + "learning_rate": 8.786008230452676e-05, + "loss": 0.6861, + "step": 2875 + }, + { + "epoch": 1.15, + "learning_rate": 8.765432098765433e-05, + "loss": 0.7116, + "step": 2880 + }, + { + "epoch": 1.15, + "learning_rate": 8.74485596707819e-05, + "loss": 0.686, + "step": 2885 + }, + { + "epoch": 1.15, + "learning_rate": 8.724279835390947e-05, + "loss": 0.677, + "step": 2890 + }, + { + "epoch": 1.16, + "learning_rate": 8.703703703703704e-05, + "loss": 0.6996, + "step": 2895 + }, + { + "epoch": 1.16, + "learning_rate": 8.683127572016462e-05, + "loss": 0.7211, + "step": 2900 + }, + { + "epoch": 1.16, + "learning_rate": 8.662551440329218e-05, + "loss": 0.6766, + "step": 2905 + }, + { + "epoch": 1.16, + "learning_rate": 8.641975308641975e-05, + "loss": 0.6883, + "step": 2910 + }, + { + "epoch": 1.16, + "learning_rate": 8.621399176954733e-05, + "loss": 0.6829, + "step": 2915 + }, + { + "epoch": 1.17, + "learning_rate": 8.60082304526749e-05, + "loss": 0.7089, + "step": 2920 + }, + { + "epoch": 1.17, + "learning_rate": 8.580246913580247e-05, + "loss": 0.6711, + "step": 2925 + }, + { + "epoch": 1.17, + "learning_rate": 8.559670781893004e-05, + "loss": 0.6926, + "step": 2930 + }, + { + "epoch": 1.17, + "learning_rate": 8.539094650205762e-05, + "loss": 0.6513, + "step": 2935 + }, + { + "epoch": 1.17, + "learning_rate": 8.518518518518518e-05, + "loss": 0.6817, + "step": 2940 + }, + { + "epoch": 1.18, + "learning_rate": 8.497942386831276e-05, + "loss": 0.7005, + "step": 2945 + }, + { + "epoch": 1.18, + "learning_rate": 8.477366255144033e-05, + "loss": 0.7013, + "step": 2950 + }, + { + "epoch": 1.18, + "learning_rate": 8.456790123456791e-05, + "loss": 0.6562, + "step": 2955 + }, + { + "epoch": 1.18, + "learning_rate": 8.436213991769549e-05, + "loss": 0.7074, + "step": 2960 + }, + { + "epoch": 1.18, + "learning_rate": 8.415637860082305e-05, + "loss": 0.6901, + "step": 2965 + }, + { + "epoch": 1.19, + "learning_rate": 8.395061728395062e-05, + "loss": 0.6867, + "step": 2970 + }, + { + "epoch": 1.19, + "learning_rate": 8.37448559670782e-05, + "loss": 0.692, + "step": 2975 + }, + { + "epoch": 1.19, + "learning_rate": 8.353909465020576e-05, + "loss": 0.6863, + "step": 2980 + }, + { + "epoch": 1.19, + "learning_rate": 8.333333333333334e-05, + "loss": 0.6881, + "step": 2985 + }, + { + "epoch": 1.19, + "learning_rate": 8.312757201646091e-05, + "loss": 0.7203, + "step": 2990 + }, + { + "epoch": 1.2, + "learning_rate": 8.292181069958848e-05, + "loss": 0.7075, + "step": 2995 + }, + { + "epoch": 1.2, + "learning_rate": 8.271604938271605e-05, + "loss": 0.7187, + "step": 3000 + }, + { + "epoch": 1.2, + "learning_rate": 8.251028806584362e-05, + "loss": 0.6791, + "step": 3005 + }, + { + "epoch": 1.2, + "learning_rate": 8.23045267489712e-05, + "loss": 0.6937, + "step": 3010 + }, + { + "epoch": 1.2, + "learning_rate": 8.209876543209877e-05, + "loss": 0.6584, + "step": 3015 + }, + { + "epoch": 1.21, + "learning_rate": 8.189300411522634e-05, + "loss": 0.6818, + "step": 3020 + }, + { + "epoch": 1.21, + "learning_rate": 8.168724279835391e-05, + "loss": 0.6827, + "step": 3025 + }, + { + "epoch": 1.21, + "learning_rate": 8.148148148148148e-05, + "loss": 0.6774, + "step": 3030 + }, + { + "epoch": 1.21, + "learning_rate": 8.127572016460906e-05, + "loss": 0.6826, + "step": 3035 + }, + { + "epoch": 1.21, + "learning_rate": 8.106995884773662e-05, + "loss": 0.6767, + "step": 3040 + }, + { + "epoch": 1.22, + "learning_rate": 8.08641975308642e-05, + "loss": 0.7256, + "step": 3045 + }, + { + "epoch": 1.22, + "learning_rate": 8.065843621399177e-05, + "loss": 0.6875, + "step": 3050 + }, + { + "epoch": 1.22, + "learning_rate": 8.045267489711935e-05, + "loss": 0.7013, + "step": 3055 + }, + { + "epoch": 1.22, + "learning_rate": 8.024691358024692e-05, + "loss": 0.6907, + "step": 3060 + }, + { + "epoch": 1.22, + "learning_rate": 8.004115226337449e-05, + "loss": 0.6751, + "step": 3065 + }, + { + "epoch": 1.23, + "learning_rate": 7.983539094650207e-05, + "loss": 0.6893, + "step": 3070 + }, + { + "epoch": 1.23, + "learning_rate": 7.962962962962964e-05, + "loss": 0.6962, + "step": 3075 + }, + { + "epoch": 1.23, + "learning_rate": 7.942386831275721e-05, + "loss": 0.6743, + "step": 3080 + }, + { + "epoch": 1.23, + "learning_rate": 7.921810699588478e-05, + "loss": 0.7004, + "step": 3085 + }, + { + "epoch": 1.23, + "learning_rate": 7.901234567901235e-05, + "loss": 0.6908, + "step": 3090 + }, + { + "epoch": 1.24, + "learning_rate": 7.880658436213993e-05, + "loss": 0.6736, + "step": 3095 + }, + { + "epoch": 1.24, + "learning_rate": 7.860082304526749e-05, + "loss": 0.7153, + "step": 3100 + }, + { + "epoch": 1.24, + "learning_rate": 7.839506172839507e-05, + "loss": 0.7072, + "step": 3105 + }, + { + "epoch": 1.24, + "learning_rate": 7.818930041152264e-05, + "loss": 0.7163, + "step": 3110 + }, + { + "epoch": 1.24, + "learning_rate": 7.79835390946502e-05, + "loss": 0.6996, + "step": 3115 + }, + { + "epoch": 1.25, + "learning_rate": 7.777777777777778e-05, + "loss": 0.7257, + "step": 3120 + }, + { + "epoch": 1.25, + "learning_rate": 7.757201646090535e-05, + "loss": 0.7155, + "step": 3125 + }, + { + "epoch": 1.25, + "learning_rate": 7.736625514403293e-05, + "loss": 0.7068, + "step": 3130 + }, + { + "epoch": 1.25, + "learning_rate": 7.716049382716049e-05, + "loss": 0.6575, + "step": 3135 + }, + { + "epoch": 1.25, + "learning_rate": 7.695473251028807e-05, + "loss": 0.6771, + "step": 3140 + }, + { + "epoch": 1.26, + "learning_rate": 7.674897119341564e-05, + "loss": 0.6976, + "step": 3145 + }, + { + "epoch": 1.26, + "learning_rate": 7.65432098765432e-05, + "loss": 0.6568, + "step": 3150 + }, + { + "epoch": 1.26, + "learning_rate": 7.633744855967078e-05, + "loss": 0.6609, + "step": 3155 + }, + { + "epoch": 1.26, + "learning_rate": 7.613168724279836e-05, + "loss": 0.697, + "step": 3160 + }, + { + "epoch": 1.26, + "learning_rate": 7.592592592592593e-05, + "loss": 0.714, + "step": 3165 + }, + { + "epoch": 1.27, + "learning_rate": 7.57201646090535e-05, + "loss": 0.6829, + "step": 3170 + }, + { + "epoch": 1.27, + "learning_rate": 7.551440329218107e-05, + "loss": 0.6932, + "step": 3175 + }, + { + "epoch": 1.27, + "learning_rate": 7.530864197530865e-05, + "loss": 0.6859, + "step": 3180 + }, + { + "epoch": 1.27, + "learning_rate": 7.510288065843622e-05, + "loss": 0.7117, + "step": 3185 + }, + { + "epoch": 1.27, + "learning_rate": 7.48971193415638e-05, + "loss": 0.7157, + "step": 3190 + }, + { + "epoch": 1.28, + "learning_rate": 7.469135802469136e-05, + "loss": 0.6593, + "step": 3195 + }, + { + "epoch": 1.28, + "learning_rate": 7.448559670781894e-05, + "loss": 0.6683, + "step": 3200 + }, + { + "epoch": 1.28, + "learning_rate": 7.427983539094651e-05, + "loss": 0.6876, + "step": 3205 + }, + { + "epoch": 1.28, + "learning_rate": 7.407407407407407e-05, + "loss": 0.6584, + "step": 3210 + }, + { + "epoch": 1.28, + "learning_rate": 7.386831275720165e-05, + "loss": 0.6816, + "step": 3215 + }, + { + "epoch": 1.29, + "learning_rate": 7.366255144032922e-05, + "loss": 0.6994, + "step": 3220 + }, + { + "epoch": 1.29, + "learning_rate": 7.34567901234568e-05, + "loss": 0.6701, + "step": 3225 + }, + { + "epoch": 1.29, + "learning_rate": 7.325102880658436e-05, + "loss": 0.6869, + "step": 3230 + }, + { + "epoch": 1.29, + "learning_rate": 7.304526748971193e-05, + "loss": 0.6895, + "step": 3235 + }, + { + "epoch": 1.29, + "learning_rate": 7.283950617283951e-05, + "loss": 0.6972, + "step": 3240 + }, + { + "epoch": 1.3, + "learning_rate": 7.263374485596707e-05, + "loss": 0.6849, + "step": 3245 + }, + { + "epoch": 1.3, + "learning_rate": 7.242798353909465e-05, + "loss": 0.6967, + "step": 3250 + }, + { + "epoch": 1.3, + "learning_rate": 7.222222222222222e-05, + "loss": 0.6679, + "step": 3255 + }, + { + "epoch": 1.3, + "learning_rate": 7.20164609053498e-05, + "loss": 0.6683, + "step": 3260 + }, + { + "epoch": 1.3, + "learning_rate": 7.181069958847736e-05, + "loss": 0.6787, + "step": 3265 + }, + { + "epoch": 1.31, + "learning_rate": 7.160493827160494e-05, + "loss": 0.6726, + "step": 3270 + }, + { + "epoch": 1.31, + "learning_rate": 7.139917695473252e-05, + "loss": 0.721, + "step": 3275 + }, + { + "epoch": 1.31, + "learning_rate": 7.119341563786009e-05, + "loss": 0.6865, + "step": 3280 + }, + { + "epoch": 1.31, + "learning_rate": 7.098765432098767e-05, + "loss": 0.7031, + "step": 3285 + }, + { + "epoch": 1.31, + "learning_rate": 7.078189300411523e-05, + "loss": 0.6895, + "step": 3290 + }, + { + "epoch": 1.32, + "learning_rate": 7.05761316872428e-05, + "loss": 0.6983, + "step": 3295 + }, + { + "epoch": 1.32, + "learning_rate": 7.037037037037038e-05, + "loss": 0.6929, + "step": 3300 + }, + { + "epoch": 1.32, + "learning_rate": 7.016460905349794e-05, + "loss": 0.7117, + "step": 3305 + }, + { + "epoch": 1.32, + "learning_rate": 6.995884773662552e-05, + "loss": 0.664, + "step": 3310 + }, + { + "epoch": 1.32, + "learning_rate": 6.975308641975309e-05, + "loss": 0.6645, + "step": 3315 + }, + { + "epoch": 1.33, + "learning_rate": 6.954732510288067e-05, + "loss": 0.6985, + "step": 3320 + }, + { + "epoch": 1.33, + "learning_rate": 6.934156378600823e-05, + "loss": 0.6826, + "step": 3325 + }, + { + "epoch": 1.33, + "learning_rate": 6.91358024691358e-05, + "loss": 0.7324, + "step": 3330 + }, + { + "epoch": 1.33, + "learning_rate": 6.893004115226338e-05, + "loss": 0.6828, + "step": 3335 + }, + { + "epoch": 1.33, + "learning_rate": 6.872427983539094e-05, + "loss": 0.6801, + "step": 3340 + }, + { + "epoch": 1.34, + "learning_rate": 6.851851851851852e-05, + "loss": 0.6923, + "step": 3345 + }, + { + "epoch": 1.34, + "learning_rate": 6.831275720164609e-05, + "loss": 0.6787, + "step": 3350 + }, + { + "epoch": 1.34, + "learning_rate": 6.810699588477366e-05, + "loss": 0.6812, + "step": 3355 + }, + { + "epoch": 1.34, + "learning_rate": 6.790123456790123e-05, + "loss": 0.7059, + "step": 3360 + }, + { + "epoch": 1.34, + "learning_rate": 6.76954732510288e-05, + "loss": 0.6794, + "step": 3365 + }, + { + "epoch": 1.35, + "learning_rate": 6.748971193415638e-05, + "loss": 0.6635, + "step": 3370 + }, + { + "epoch": 1.35, + "learning_rate": 6.728395061728396e-05, + "loss": 0.666, + "step": 3375 + }, + { + "epoch": 1.35, + "learning_rate": 6.707818930041152e-05, + "loss": 0.6909, + "step": 3380 + }, + { + "epoch": 1.35, + "learning_rate": 6.68724279835391e-05, + "loss": 0.7096, + "step": 3385 + }, + { + "epoch": 1.35, + "learning_rate": 6.666666666666667e-05, + "loss": 0.7049, + "step": 3390 + }, + { + "epoch": 1.36, + "learning_rate": 6.646090534979425e-05, + "loss": 0.6801, + "step": 3395 + }, + { + "epoch": 1.36, + "learning_rate": 6.625514403292181e-05, + "loss": 0.7045, + "step": 3400 + }, + { + "epoch": 1.36, + "learning_rate": 6.60493827160494e-05, + "loss": 0.7096, + "step": 3405 + }, + { + "epoch": 1.36, + "learning_rate": 6.584362139917696e-05, + "loss": 0.7192, + "step": 3410 + }, + { + "epoch": 1.36, + "learning_rate": 6.563786008230453e-05, + "loss": 0.6818, + "step": 3415 + }, + { + "epoch": 1.37, + "learning_rate": 6.54320987654321e-05, + "loss": 0.6358, + "step": 3420 + }, + { + "epoch": 1.37, + "learning_rate": 6.522633744855967e-05, + "loss": 0.6674, + "step": 3425 + }, + { + "epoch": 1.37, + "learning_rate": 6.502057613168725e-05, + "loss": 0.684, + "step": 3430 + }, + { + "epoch": 1.37, + "learning_rate": 6.481481481481482e-05, + "loss": 0.6753, + "step": 3435 + }, + { + "epoch": 1.37, + "learning_rate": 6.460905349794238e-05, + "loss": 0.6902, + "step": 3440 + }, + { + "epoch": 1.38, + "learning_rate": 6.440329218106996e-05, + "loss": 0.6664, + "step": 3445 + }, + { + "epoch": 1.38, + "learning_rate": 6.419753086419753e-05, + "loss": 0.684, + "step": 3450 + }, + { + "epoch": 1.38, + "learning_rate": 6.39917695473251e-05, + "loss": 0.682, + "step": 3455 + }, + { + "epoch": 1.38, + "learning_rate": 6.378600823045267e-05, + "loss": 0.6764, + "step": 3460 + }, + { + "epoch": 1.38, + "learning_rate": 6.358024691358025e-05, + "loss": 0.6783, + "step": 3465 + }, + { + "epoch": 1.39, + "learning_rate": 6.337448559670782e-05, + "loss": 0.6962, + "step": 3470 + }, + { + "epoch": 1.39, + "learning_rate": 6.31687242798354e-05, + "loss": 0.6819, + "step": 3475 + }, + { + "epoch": 1.39, + "learning_rate": 6.296296296296296e-05, + "loss": 0.6741, + "step": 3480 + }, + { + "epoch": 1.39, + "learning_rate": 6.275720164609054e-05, + "loss": 0.6754, + "step": 3485 + }, + { + "epoch": 1.39, + "learning_rate": 6.255144032921812e-05, + "loss": 0.6717, + "step": 3490 + }, + { + "epoch": 1.4, + "learning_rate": 6.234567901234569e-05, + "loss": 0.667, + "step": 3495 + }, + { + "epoch": 1.4, + "learning_rate": 6.213991769547325e-05, + "loss": 0.6822, + "step": 3500 + }, + { + "epoch": 1.4, + "learning_rate": 6.193415637860083e-05, + "loss": 0.7055, + "step": 3505 + }, + { + "epoch": 1.4, + "learning_rate": 6.17283950617284e-05, + "loss": 0.6988, + "step": 3510 + }, + { + "epoch": 1.4, + "learning_rate": 6.152263374485598e-05, + "loss": 0.6793, + "step": 3515 + }, + { + "epoch": 1.41, + "learning_rate": 6.131687242798354e-05, + "loss": 0.7093, + "step": 3520 + }, + { + "epoch": 1.41, + "learning_rate": 6.111111111111112e-05, + "loss": 0.694, + "step": 3525 + }, + { + "epoch": 1.41, + "learning_rate": 6.0905349794238687e-05, + "loss": 0.7077, + "step": 3530 + }, + { + "epoch": 1.41, + "learning_rate": 6.069958847736625e-05, + "loss": 0.6938, + "step": 3535 + }, + { + "epoch": 1.41, + "learning_rate": 6.049382716049383e-05, + "loss": 0.6461, + "step": 3540 + }, + { + "epoch": 1.42, + "learning_rate": 6.02880658436214e-05, + "loss": 0.6993, + "step": 3545 + }, + { + "epoch": 1.42, + "learning_rate": 6.0082304526748977e-05, + "loss": 0.6901, + "step": 3550 + }, + { + "epoch": 1.42, + "learning_rate": 5.987654320987654e-05, + "loss": 0.6937, + "step": 3555 + }, + { + "epoch": 1.42, + "learning_rate": 5.9670781893004115e-05, + "loss": 0.6657, + "step": 3560 + }, + { + "epoch": 1.42, + "learning_rate": 5.9465020576131694e-05, + "loss": 0.6593, + "step": 3565 + }, + { + "epoch": 1.43, + "learning_rate": 5.925925925925926e-05, + "loss": 0.7056, + "step": 3570 + }, + { + "epoch": 1.43, + "learning_rate": 5.905349794238684e-05, + "loss": 0.6395, + "step": 3575 + }, + { + "epoch": 1.43, + "learning_rate": 5.8847736625514405e-05, + "loss": 0.6608, + "step": 3580 + }, + { + "epoch": 1.43, + "learning_rate": 5.8641975308641984e-05, + "loss": 0.7007, + "step": 3585 + }, + { + "epoch": 1.43, + "learning_rate": 5.843621399176955e-05, + "loss": 0.6605, + "step": 3590 + }, + { + "epoch": 1.43, + "learning_rate": 5.8230452674897116e-05, + "loss": 0.6752, + "step": 3595 + }, + { + "epoch": 1.44, + "learning_rate": 5.8024691358024695e-05, + "loss": 0.6736, + "step": 3600 + }, + { + "epoch": 1.44, + "learning_rate": 5.781893004115226e-05, + "loss": 0.671, + "step": 3605 + }, + { + "epoch": 1.44, + "learning_rate": 5.761316872427984e-05, + "loss": 0.6551, + "step": 3610 + }, + { + "epoch": 1.44, + "learning_rate": 5.740740740740741e-05, + "loss": 0.7053, + "step": 3615 + }, + { + "epoch": 1.44, + "learning_rate": 5.720164609053498e-05, + "loss": 0.6856, + "step": 3620 + }, + { + "epoch": 1.45, + "learning_rate": 5.699588477366256e-05, + "loss": 0.671, + "step": 3625 + }, + { + "epoch": 1.45, + "learning_rate": 5.679012345679012e-05, + "loss": 0.6763, + "step": 3630 + }, + { + "epoch": 1.45, + "learning_rate": 5.65843621399177e-05, + "loss": 0.6812, + "step": 3635 + }, + { + "epoch": 1.45, + "learning_rate": 5.637860082304527e-05, + "loss": 0.7407, + "step": 3640 + }, + { + "epoch": 1.45, + "learning_rate": 5.617283950617285e-05, + "loss": 0.7436, + "step": 3645 + }, + { + "epoch": 1.46, + "learning_rate": 5.596707818930041e-05, + "loss": 0.682, + "step": 3650 + }, + { + "epoch": 1.46, + "learning_rate": 5.576131687242798e-05, + "loss": 0.6808, + "step": 3655 + }, + { + "epoch": 1.46, + "learning_rate": 5.555555555555556e-05, + "loss": 0.6696, + "step": 3660 + }, + { + "epoch": 1.46, + "learning_rate": 5.534979423868313e-05, + "loss": 0.7207, + "step": 3665 + }, + { + "epoch": 1.46, + "learning_rate": 5.51440329218107e-05, + "loss": 0.6737, + "step": 3670 + }, + { + "epoch": 1.47, + "learning_rate": 5.4938271604938276e-05, + "loss": 0.6874, + "step": 3675 + }, + { + "epoch": 1.47, + "learning_rate": 5.473251028806584e-05, + "loss": 0.6652, + "step": 3680 + }, + { + "epoch": 1.47, + "learning_rate": 5.452674897119342e-05, + "loss": 0.6739, + "step": 3685 + }, + { + "epoch": 1.47, + "learning_rate": 5.4320987654320986e-05, + "loss": 0.7039, + "step": 3690 + }, + { + "epoch": 1.47, + "learning_rate": 5.4115226337448566e-05, + "loss": 0.696, + "step": 3695 + }, + { + "epoch": 1.48, + "learning_rate": 5.390946502057613e-05, + "loss": 0.6887, + "step": 3700 + }, + { + "epoch": 1.48, + "learning_rate": 5.370370370370371e-05, + "loss": 0.6653, + "step": 3705 + }, + { + "epoch": 1.48, + "learning_rate": 5.3497942386831277e-05, + "loss": 0.6987, + "step": 3710 + }, + { + "epoch": 1.48, + "learning_rate": 5.329218106995885e-05, + "loss": 0.6831, + "step": 3715 + }, + { + "epoch": 1.48, + "learning_rate": 5.308641975308642e-05, + "loss": 0.687, + "step": 3720 + }, + { + "epoch": 1.49, + "learning_rate": 5.2880658436213994e-05, + "loss": 0.6848, + "step": 3725 + }, + { + "epoch": 1.49, + "learning_rate": 5.267489711934157e-05, + "loss": 0.6819, + "step": 3730 + }, + { + "epoch": 1.49, + "learning_rate": 5.246913580246914e-05, + "loss": 0.662, + "step": 3735 + }, + { + "epoch": 1.49, + "learning_rate": 5.2263374485596705e-05, + "loss": 0.6462, + "step": 3740 + }, + { + "epoch": 1.49, + "learning_rate": 5.2057613168724284e-05, + "loss": 0.684, + "step": 3745 + }, + { + "epoch": 1.5, + "learning_rate": 5.185185185185185e-05, + "loss": 0.721, + "step": 3750 + }, + { + "epoch": 1.5, + "learning_rate": 5.164609053497943e-05, + "loss": 0.6998, + "step": 3755 + }, + { + "epoch": 1.5, + "learning_rate": 5.1440329218106995e-05, + "loss": 0.6922, + "step": 3760 + }, + { + "epoch": 1.5, + "learning_rate": 5.1234567901234574e-05, + "loss": 0.6674, + "step": 3765 + }, + { + "epoch": 1.5, + "learning_rate": 5.102880658436214e-05, + "loss": 0.7022, + "step": 3770 + }, + { + "epoch": 1.51, + "learning_rate": 5.082304526748971e-05, + "loss": 0.6753, + "step": 3775 + }, + { + "epoch": 1.51, + "learning_rate": 5.061728395061729e-05, + "loss": 0.6853, + "step": 3780 + }, + { + "epoch": 1.51, + "learning_rate": 5.041152263374486e-05, + "loss": 0.6669, + "step": 3785 + }, + { + "epoch": 1.51, + "learning_rate": 5.020576131687244e-05, + "loss": 0.6678, + "step": 3790 + }, + { + "epoch": 1.51, + "learning_rate": 5e-05, + "loss": 0.6881, + "step": 3795 + }, + { + "epoch": 1.52, + "learning_rate": 4.9794238683127575e-05, + "loss": 0.6959, + "step": 3800 + }, + { + "epoch": 1.52, + "learning_rate": 4.958847736625515e-05, + "loss": 0.695, + "step": 3805 + }, + { + "epoch": 1.52, + "learning_rate": 4.938271604938271e-05, + "loss": 0.6927, + "step": 3810 + }, + { + "epoch": 1.52, + "learning_rate": 4.9176954732510286e-05, + "loss": 0.7039, + "step": 3815 + }, + { + "epoch": 1.52, + "learning_rate": 4.8971193415637865e-05, + "loss": 0.6494, + "step": 3820 + }, + { + "epoch": 1.53, + "learning_rate": 4.876543209876544e-05, + "loss": 0.7015, + "step": 3825 + }, + { + "epoch": 1.53, + "learning_rate": 4.855967078189301e-05, + "loss": 0.6901, + "step": 3830 + }, + { + "epoch": 1.53, + "learning_rate": 4.835390946502058e-05, + "loss": 0.6618, + "step": 3835 + }, + { + "epoch": 1.53, + "learning_rate": 4.814814814814815e-05, + "loss": 0.6723, + "step": 3840 + }, + { + "epoch": 1.53, + "learning_rate": 4.794238683127572e-05, + "loss": 0.7196, + "step": 3845 + }, + { + "epoch": 1.54, + "learning_rate": 4.773662551440329e-05, + "loss": 0.6867, + "step": 3850 + }, + { + "epoch": 1.54, + "learning_rate": 4.7530864197530866e-05, + "loss": 0.6921, + "step": 3855 + }, + { + "epoch": 1.54, + "learning_rate": 4.732510288065844e-05, + "loss": 0.693, + "step": 3860 + }, + { + "epoch": 1.54, + "learning_rate": 4.711934156378601e-05, + "loss": 0.7031, + "step": 3865 + }, + { + "epoch": 1.54, + "learning_rate": 4.691358024691358e-05, + "loss": 0.7023, + "step": 3870 + }, + { + "epoch": 1.55, + "learning_rate": 4.6707818930041156e-05, + "loss": 0.6754, + "step": 3875 + }, + { + "epoch": 1.55, + "learning_rate": 4.650205761316873e-05, + "loss": 0.6985, + "step": 3880 + }, + { + "epoch": 1.55, + "learning_rate": 4.62962962962963e-05, + "loss": 0.665, + "step": 3885 + }, + { + "epoch": 1.55, + "learning_rate": 4.609053497942387e-05, + "loss": 0.6902, + "step": 3890 + }, + { + "epoch": 1.55, + "learning_rate": 4.5884773662551446e-05, + "loss": 0.7173, + "step": 3895 + }, + { + "epoch": 1.56, + "learning_rate": 4.567901234567901e-05, + "loss": 0.7121, + "step": 3900 + }, + { + "epoch": 1.56, + "learning_rate": 4.5473251028806584e-05, + "loss": 0.6939, + "step": 3905 + }, + { + "epoch": 1.56, + "learning_rate": 4.5267489711934157e-05, + "loss": 0.7093, + "step": 3910 + }, + { + "epoch": 1.56, + "learning_rate": 4.506172839506173e-05, + "loss": 0.6792, + "step": 3915 + }, + { + "epoch": 1.56, + "learning_rate": 4.48559670781893e-05, + "loss": 0.6737, + "step": 3920 + }, + { + "epoch": 1.57, + "learning_rate": 4.4650205761316874e-05, + "loss": 0.6858, + "step": 3925 + }, + { + "epoch": 1.57, + "learning_rate": 4.4444444444444447e-05, + "loss": 0.6776, + "step": 3930 + }, + { + "epoch": 1.57, + "learning_rate": 4.423868312757202e-05, + "loss": 0.6772, + "step": 3935 + }, + { + "epoch": 1.57, + "learning_rate": 4.403292181069959e-05, + "loss": 0.6667, + "step": 3940 + }, + { + "epoch": 1.57, + "learning_rate": 4.3827160493827164e-05, + "loss": 0.6892, + "step": 3945 + }, + { + "epoch": 1.58, + "learning_rate": 4.3621399176954737e-05, + "loss": 0.6652, + "step": 3950 + }, + { + "epoch": 1.58, + "learning_rate": 4.341563786008231e-05, + "loss": 0.6892, + "step": 3955 + }, + { + "epoch": 1.58, + "learning_rate": 4.3209876543209875e-05, + "loss": 0.6917, + "step": 3960 + }, + { + "epoch": 1.58, + "learning_rate": 4.300411522633745e-05, + "loss": 0.6708, + "step": 3965 + }, + { + "epoch": 1.58, + "learning_rate": 4.279835390946502e-05, + "loss": 0.6817, + "step": 3970 + }, + { + "epoch": 1.59, + "learning_rate": 4.259259259259259e-05, + "loss": 0.6761, + "step": 3975 + }, + { + "epoch": 1.59, + "learning_rate": 4.2386831275720165e-05, + "loss": 0.6638, + "step": 3980 + }, + { + "epoch": 1.59, + "learning_rate": 4.2181069958847744e-05, + "loss": 0.6707, + "step": 3985 + }, + { + "epoch": 1.59, + "learning_rate": 4.197530864197531e-05, + "loss": 0.6796, + "step": 3990 + }, + { + "epoch": 1.59, + "learning_rate": 4.176954732510288e-05, + "loss": 0.6903, + "step": 3995 + }, + { + "epoch": 1.6, + "learning_rate": 4.1563786008230455e-05, + "loss": 0.7081, + "step": 4000 + }, + { + "epoch": 1.6, + "learning_rate": 4.135802469135803e-05, + "loss": 0.6528, + "step": 4005 + }, + { + "epoch": 1.6, + "learning_rate": 4.11522633744856e-05, + "loss": 0.6613, + "step": 4010 + }, + { + "epoch": 1.6, + "learning_rate": 4.094650205761317e-05, + "loss": 0.6694, + "step": 4015 + }, + { + "epoch": 1.6, + "learning_rate": 4.074074074074074e-05, + "loss": 0.6982, + "step": 4020 + }, + { + "epoch": 1.61, + "learning_rate": 4.053497942386831e-05, + "loss": 0.6722, + "step": 4025 + }, + { + "epoch": 1.61, + "learning_rate": 4.032921810699588e-05, + "loss": 0.6505, + "step": 4030 + }, + { + "epoch": 1.61, + "learning_rate": 4.012345679012346e-05, + "loss": 0.6747, + "step": 4035 + }, + { + "epoch": 1.61, + "learning_rate": 3.9917695473251035e-05, + "loss": 0.6459, + "step": 4040 + }, + { + "epoch": 1.61, + "learning_rate": 3.971193415637861e-05, + "loss": 0.6859, + "step": 4045 + }, + { + "epoch": 1.62, + "learning_rate": 3.950617283950617e-05, + "loss": 0.6774, + "step": 4050 + }, + { + "epoch": 1.62, + "learning_rate": 3.9300411522633746e-05, + "loss": 0.678, + "step": 4055 + }, + { + "epoch": 1.62, + "learning_rate": 3.909465020576132e-05, + "loss": 0.678, + "step": 4060 + }, + { + "epoch": 1.62, + "learning_rate": 3.888888888888889e-05, + "loss": 0.7204, + "step": 4065 + }, + { + "epoch": 1.62, + "learning_rate": 3.868312757201646e-05, + "loss": 0.68, + "step": 4070 + }, + { + "epoch": 1.63, + "learning_rate": 3.8477366255144036e-05, + "loss": 0.6797, + "step": 4075 + }, + { + "epoch": 1.63, + "learning_rate": 3.82716049382716e-05, + "loss": 0.6884, + "step": 4080 + }, + { + "epoch": 1.63, + "learning_rate": 3.806584362139918e-05, + "loss": 0.6749, + "step": 4085 + }, + { + "epoch": 1.63, + "learning_rate": 3.786008230452675e-05, + "loss": 0.7162, + "step": 4090 + }, + { + "epoch": 1.63, + "learning_rate": 3.7654320987654326e-05, + "loss": 0.6702, + "step": 4095 + }, + { + "epoch": 1.64, + "learning_rate": 3.74485596707819e-05, + "loss": 0.7014, + "step": 4100 + }, + { + "epoch": 1.64, + "learning_rate": 3.724279835390947e-05, + "loss": 0.7031, + "step": 4105 + }, + { + "epoch": 1.64, + "learning_rate": 3.7037037037037037e-05, + "loss": 0.6613, + "step": 4110 + }, + { + "epoch": 1.64, + "learning_rate": 3.683127572016461e-05, + "loss": 0.652, + "step": 4115 + }, + { + "epoch": 1.64, + "learning_rate": 3.662551440329218e-05, + "loss": 0.6591, + "step": 4120 + }, + { + "epoch": 1.65, + "learning_rate": 3.6419753086419754e-05, + "loss": 0.6688, + "step": 4125 + }, + { + "epoch": 1.65, + "learning_rate": 3.6213991769547327e-05, + "loss": 0.6843, + "step": 4130 + }, + { + "epoch": 1.65, + "learning_rate": 3.60082304526749e-05, + "loss": 0.6706, + "step": 4135 + }, + { + "epoch": 1.65, + "learning_rate": 3.580246913580247e-05, + "loss": 0.6974, + "step": 4140 + }, + { + "epoch": 1.65, + "learning_rate": 3.5596707818930044e-05, + "loss": 0.6739, + "step": 4145 + }, + { + "epoch": 1.66, + "learning_rate": 3.539094650205762e-05, + "loss": 0.6787, + "step": 4150 + }, + { + "epoch": 1.66, + "learning_rate": 3.518518518518519e-05, + "loss": 0.695, + "step": 4155 + }, + { + "epoch": 1.66, + "learning_rate": 3.497942386831276e-05, + "loss": 0.7012, + "step": 4160 + }, + { + "epoch": 1.66, + "learning_rate": 3.4773662551440334e-05, + "loss": 0.7137, + "step": 4165 + }, + { + "epoch": 1.66, + "learning_rate": 3.45679012345679e-05, + "loss": 0.6919, + "step": 4170 + }, + { + "epoch": 1.67, + "learning_rate": 3.436213991769547e-05, + "loss": 0.7045, + "step": 4175 + }, + { + "epoch": 1.67, + "learning_rate": 3.4156378600823045e-05, + "loss": 0.6638, + "step": 4180 + }, + { + "epoch": 1.67, + "learning_rate": 3.395061728395062e-05, + "loss": 0.6918, + "step": 4185 + }, + { + "epoch": 1.67, + "learning_rate": 3.374485596707819e-05, + "loss": 0.67, + "step": 4190 + }, + { + "epoch": 1.67, + "learning_rate": 3.353909465020576e-05, + "loss": 0.6835, + "step": 4195 + }, + { + "epoch": 1.68, + "learning_rate": 3.3333333333333335e-05, + "loss": 0.6854, + "step": 4200 + }, + { + "epoch": 1.68, + "learning_rate": 3.312757201646091e-05, + "loss": 0.6846, + "step": 4205 + }, + { + "epoch": 1.68, + "learning_rate": 3.292181069958848e-05, + "loss": 0.6707, + "step": 4210 + }, + { + "epoch": 1.68, + "learning_rate": 3.271604938271605e-05, + "loss": 0.7155, + "step": 4215 + }, + { + "epoch": 1.68, + "learning_rate": 3.2510288065843625e-05, + "loss": 0.6985, + "step": 4220 + }, + { + "epoch": 1.69, + "learning_rate": 3.230452674897119e-05, + "loss": 0.6842, + "step": 4225 + }, + { + "epoch": 1.69, + "learning_rate": 3.209876543209876e-05, + "loss": 0.6898, + "step": 4230 + }, + { + "epoch": 1.69, + "learning_rate": 3.1893004115226336e-05, + "loss": 0.6707, + "step": 4235 + }, + { + "epoch": 1.69, + "learning_rate": 3.168724279835391e-05, + "loss": 0.6979, + "step": 4240 + }, + { + "epoch": 1.69, + "learning_rate": 3.148148148148148e-05, + "loss": 0.6899, + "step": 4245 + }, + { + "epoch": 1.7, + "learning_rate": 3.127572016460906e-05, + "loss": 0.6697, + "step": 4250 + }, + { + "epoch": 1.7, + "learning_rate": 3.1069958847736626e-05, + "loss": 0.6819, + "step": 4255 + }, + { + "epoch": 1.7, + "learning_rate": 3.08641975308642e-05, + "loss": 0.6913, + "step": 4260 + }, + { + "epoch": 1.7, + "learning_rate": 3.065843621399177e-05, + "loss": 0.6894, + "step": 4265 + }, + { + "epoch": 1.7, + "learning_rate": 3.0452674897119343e-05, + "loss": 0.6801, + "step": 4270 + }, + { + "epoch": 1.71, + "learning_rate": 3.0246913580246916e-05, + "loss": 0.6932, + "step": 4275 + }, + { + "epoch": 1.71, + "learning_rate": 3.0041152263374488e-05, + "loss": 0.6567, + "step": 4280 + }, + { + "epoch": 1.71, + "learning_rate": 2.9835390946502057e-05, + "loss": 0.6416, + "step": 4285 + }, + { + "epoch": 1.71, + "learning_rate": 2.962962962962963e-05, + "loss": 0.6619, + "step": 4290 + }, + { + "epoch": 1.71, + "learning_rate": 2.9423868312757202e-05, + "loss": 0.6746, + "step": 4295 + }, + { + "epoch": 1.72, + "learning_rate": 2.9218106995884775e-05, + "loss": 0.6725, + "step": 4300 + }, + { + "epoch": 1.72, + "learning_rate": 2.9012345679012347e-05, + "loss": 0.695, + "step": 4305 + }, + { + "epoch": 1.72, + "learning_rate": 2.880658436213992e-05, + "loss": 0.68, + "step": 4310 + }, + { + "epoch": 1.72, + "learning_rate": 2.860082304526749e-05, + "loss": 0.6669, + "step": 4315 + }, + { + "epoch": 1.72, + "learning_rate": 2.839506172839506e-05, + "loss": 0.6626, + "step": 4320 + }, + { + "epoch": 1.73, + "learning_rate": 2.8189300411522634e-05, + "loss": 0.6871, + "step": 4325 + }, + { + "epoch": 1.73, + "learning_rate": 2.7983539094650207e-05, + "loss": 0.6719, + "step": 4330 + }, + { + "epoch": 1.73, + "learning_rate": 2.777777777777778e-05, + "loss": 0.6603, + "step": 4335 + }, + { + "epoch": 1.73, + "learning_rate": 2.757201646090535e-05, + "loss": 0.6378, + "step": 4340 + }, + { + "epoch": 1.73, + "learning_rate": 2.736625514403292e-05, + "loss": 0.6759, + "step": 4345 + }, + { + "epoch": 1.74, + "learning_rate": 2.7160493827160493e-05, + "loss": 0.6704, + "step": 4350 + }, + { + "epoch": 1.74, + "learning_rate": 2.6954732510288066e-05, + "loss": 0.6725, + "step": 4355 + }, + { + "epoch": 1.74, + "learning_rate": 2.6748971193415638e-05, + "loss": 0.6659, + "step": 4360 + }, + { + "epoch": 1.74, + "learning_rate": 2.654320987654321e-05, + "loss": 0.664, + "step": 4365 + }, + { + "epoch": 1.74, + "learning_rate": 2.6337448559670787e-05, + "loss": 0.7316, + "step": 4370 + }, + { + "epoch": 1.75, + "learning_rate": 2.6131687242798352e-05, + "loss": 0.6621, + "step": 4375 + }, + { + "epoch": 1.75, + "learning_rate": 2.5925925925925925e-05, + "loss": 0.6822, + "step": 4380 + }, + { + "epoch": 1.75, + "learning_rate": 2.5720164609053497e-05, + "loss": 0.6694, + "step": 4385 + }, + { + "epoch": 1.75, + "learning_rate": 2.551440329218107e-05, + "loss": 0.6719, + "step": 4390 + }, + { + "epoch": 1.75, + "learning_rate": 2.5308641975308646e-05, + "loss": 0.6687, + "step": 4395 + }, + { + "epoch": 1.76, + "learning_rate": 2.510288065843622e-05, + "loss": 0.6878, + "step": 4400 + }, + { + "epoch": 1.76, + "learning_rate": 2.4897119341563787e-05, + "loss": 0.6956, + "step": 4405 + }, + { + "epoch": 1.76, + "learning_rate": 2.4691358024691357e-05, + "loss": 0.6976, + "step": 4410 + }, + { + "epoch": 1.76, + "learning_rate": 2.4485596707818932e-05, + "loss": 0.6969, + "step": 4415 + }, + { + "epoch": 1.76, + "learning_rate": 2.4279835390946505e-05, + "loss": 0.685, + "step": 4420 + }, + { + "epoch": 1.77, + "learning_rate": 2.4074074074074074e-05, + "loss": 0.6835, + "step": 4425 + }, + { + "epoch": 1.77, + "learning_rate": 2.3868312757201647e-05, + "loss": 0.7002, + "step": 4430 + }, + { + "epoch": 1.77, + "learning_rate": 2.366255144032922e-05, + "loss": 0.6657, + "step": 4435 + }, + { + "epoch": 1.77, + "learning_rate": 2.345679012345679e-05, + "loss": 0.6524, + "step": 4440 + }, + { + "epoch": 1.77, + "learning_rate": 2.3251028806584364e-05, + "loss": 0.6672, + "step": 4445 + }, + { + "epoch": 1.78, + "learning_rate": 2.3045267489711937e-05, + "loss": 0.7033, + "step": 4450 + }, + { + "epoch": 1.78, + "learning_rate": 2.2839506172839506e-05, + "loss": 0.6922, + "step": 4455 + }, + { + "epoch": 1.78, + "learning_rate": 2.2633744855967078e-05, + "loss": 0.6567, + "step": 4460 + }, + { + "epoch": 1.78, + "learning_rate": 2.242798353909465e-05, + "loss": 0.6764, + "step": 4465 + }, + { + "epoch": 1.78, + "learning_rate": 2.2222222222222223e-05, + "loss": 0.7066, + "step": 4470 + }, + { + "epoch": 1.79, + "learning_rate": 2.2016460905349796e-05, + "loss": 0.7036, + "step": 4475 + }, + { + "epoch": 1.79, + "learning_rate": 2.1810699588477368e-05, + "loss": 0.6716, + "step": 4480 + }, + { + "epoch": 1.79, + "learning_rate": 2.1604938271604937e-05, + "loss": 0.6954, + "step": 4485 + }, + { + "epoch": 1.79, + "learning_rate": 2.139917695473251e-05, + "loss": 0.6752, + "step": 4490 + }, + { + "epoch": 1.79, + "learning_rate": 2.1193415637860082e-05, + "loss": 0.6845, + "step": 4495 + }, + { + "epoch": 1.8, + "learning_rate": 2.0987654320987655e-05, + "loss": 0.6928, + "step": 4500 + } + ], + "logging_steps": 5, + "max_steps": 5010, + "num_input_tokens_seen": 0, + "num_train_epochs": 2, + "save_steps": 500, + "total_flos": 1.8116033382918914e+19, + "train_batch_size": 1, + "trial_name": null, + "trial_params": null +} diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/training_args.bin b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/training_args.bin new file mode 100644 index 0000000000000000000000000000000000000000..e707059a03fbe62142ac41332e145ac1ac1f36cc --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b99a1729574e0e46ee782b42dc90101a785d5b4792871920d293f44722c28cc +size 5944 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/zero_to_fp32.py b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/zero_to_fp32.py new file mode 100644 index 0000000000000000000000000000000000000000..c98caae31534368be22b67fc4ae906836c992a8d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-4500/zero_to_fp32.py @@ -0,0 +1,587 @@ +#!/usr/bin/env python + +# Copyright (c) Microsoft Corporation. +# SPDX-License-Identifier: Apache-2.0 + +# DeepSpeed Team + +# This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets +# copied into the top level checkpoint dir, so the user can easily do the conversion at any point in +# the future. Once extracted, the weights don't require DeepSpeed and can be used in any +# application. +# +# example: python zero_to_fp32.py . pytorch_model.bin + +import argparse +import torch +import glob +import math +import os +import re +from collections import OrderedDict +from dataclasses import dataclass + +# while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with +# DeepSpeed data structures it has to be available in the current python environment. +from deepspeed.utils import logger +from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS, + FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES, + FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS) + + +@dataclass +class zero_model_state: + buffers: dict() + param_shapes: dict() + shared_params: list + ds_version: int + frozen_param_shapes: dict() + frozen_param_fragments: dict() + + +debug = 0 + +# load to cpu +device = torch.device('cpu') + + +def atoi(text): + return int(text) if text.isdigit() else text + + +def natural_keys(text): + ''' + alist.sort(key=natural_keys) sorts in human order + http://nedbatchelder.com/blog/200712/human_sorting.html + (See Toothy's implementation in the comments) + ''' + return [atoi(c) for c in re.split(r'(\d+)', text)] + + +def get_model_state_file(checkpoint_dir, zero_stage): + if not os.path.isdir(checkpoint_dir): + raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist") + + # there should be only one file + if zero_stage <= 2: + file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt") + elif zero_stage == 3: + file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt") + + if not os.path.exists(file): + raise FileNotFoundError(f"can't find model states file at '{file}'") + + return file + + +def get_checkpoint_files(checkpoint_dir, glob_pattern): + # XXX: need to test that this simple glob rule works for multi-node setup too + ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys) + + if len(ckpt_files) == 0: + raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'") + + return ckpt_files + + +def get_optim_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt") + + +def get_model_state_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_model_states.pt") + + +def parse_model_states(files): + zero_model_states = [] + for file in files: + state_dict = torch.load(file, map_location=device) + + if BUFFER_NAMES not in state_dict: + raise ValueError(f"{file} is not a model state checkpoint") + buffer_names = state_dict[BUFFER_NAMES] + if debug: + print("Found buffers:", buffer_names) + + # recover just the buffers while restoring them to fp32 if they were saved in fp16 + buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names} + param_shapes = state_dict[PARAM_SHAPES] + + # collect parameters that are included in param_shapes + param_names = [] + for s in param_shapes: + for name in s.keys(): + param_names.append(name) + + # update with frozen parameters + frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None) + if frozen_param_shapes is not None: + if debug: + print(f"Found frozen_param_shapes: {frozen_param_shapes}") + param_names += list(frozen_param_shapes.keys()) + + # handle shared params + shared_params = [[k, v] for k, v in state_dict["shared_params"].items()] + + ds_version = state_dict.get(DS_VERSION, None) + + frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None) + + z_model_state = zero_model_state(buffers=buffers, + param_shapes=param_shapes, + shared_params=shared_params, + ds_version=ds_version, + frozen_param_shapes=frozen_param_shapes, + frozen_param_fragments=frozen_param_fragments) + zero_model_states.append(z_model_state) + + return zero_model_states + + +def parse_optim_states(files, ds_checkpoint_dir): + + total_files = len(files) + state_dicts = [] + for f in files: + state_dict = torch.load(f, map_location=device) + # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights + # and also handle the case where it was already removed by another helper script + state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None) + state_dicts.append(state_dict) + + if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]: + raise ValueError(f"{files[0]} is not a zero checkpoint") + zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE] + world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT] + + # For ZeRO-2 each param group can have different partition_count as data parallelism for expert + # parameters can be different from data parallelism for non-expert parameters. So we can just + # use the max of the partition_count to get the dp world_size. + + if type(world_size) is list: + world_size = max(world_size) + + if world_size != total_files: + raise ValueError( + f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. " + "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes." + ) + + # the groups are named differently in each stage + if zero_stage <= 2: + fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS + elif zero_stage == 3: + fp32_groups_key = FP32_FLAT_GROUPS + else: + raise ValueError(f"unknown zero stage {zero_stage}") + + if zero_stage <= 2: + fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))] + elif zero_stage == 3: + # if there is more than one param group, there will be multiple flattened tensors - one + # flattened tensor per group - for simplicity merge them into a single tensor + # + # XXX: could make the script more memory efficient for when there are multiple groups - it + # will require matching the sub-lists of param_shapes for each param group flattened tensor + + fp32_flat_groups = [ + torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts)) + ] + + return zero_stage, world_size, fp32_flat_groups + + +def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir): + """ + Returns fp32 state_dict reconstructed from ds checkpoint + + Args: + - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are) + + """ + print(f"Processing zero checkpoint '{ds_checkpoint_dir}'") + + optim_files = get_optim_files(ds_checkpoint_dir) + zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir) + print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}") + + model_files = get_model_state_files(ds_checkpoint_dir) + + zero_model_states = parse_model_states(model_files) + print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}') + + if zero_stage <= 2: + return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states) + elif zero_stage == 3: + return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states) + + +def _zero2_merge_frozen_params(state_dict, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + frozen_param_fragments = zero_model_states[0].frozen_param_fragments + + if debug: + num_elem = sum(s.numel() for s in frozen_param_shapes.values()) + print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in frozen_param_fragments.values()]) + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + state_dict[name] = frozen_param_fragments[name] + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + + # Reconstruction protocol: + # + # XXX: document this + + if debug: + for i in range(world_size): + for j in range(len(fp32_flat_groups[0])): + print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}") + + # XXX: memory usage doubles here (zero2) + num_param_groups = len(fp32_flat_groups[0]) + merged_single_partition_of_fp32_groups = [] + for i in range(num_param_groups): + merged_partitions = [sd[i] for sd in fp32_flat_groups] + full_single_fp32_vector = torch.cat(merged_partitions, 0) + merged_single_partition_of_fp32_groups.append(full_single_fp32_vector) + avail_numel = sum( + [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups]) + + if debug: + wanted_params = sum([len(shapes) for shapes in param_shapes]) + wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes]) + # not asserting if there is a mismatch due to possible padding + print(f"Have {avail_numel} numels to process.") + print(f"Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + total_numel = 0 + total_params = 0 + for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups): + offset = 0 + avail_numel = full_single_fp32_vector.numel() + for name, shape in shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape) + offset += unpartitioned_numel + + # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and + # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex + # paddings performed in the code it's almost impossible to predict the exact numbers w/o the + # live optimizer object, so we are checking that the numbers are within the right range + align_to = 2 * world_size + + def zero2_align(x): + return align_to * math.ceil(x / align_to) + + if debug: + print(f"original offset={offset}, avail_numel={avail_numel}") + + offset = zero2_align(offset) + avail_numel = zero2_align(avail_numel) + + if debug: + print(f"aligned offset={offset}, avail_numel={avail_numel}") + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero2_merge_frozen_params(state_dict, zero_model_states) + + _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def zero3_partitioned_param_info(unpartitioned_numel, world_size): + remainder = unpartitioned_numel % world_size + padding_numel = (world_size - remainder) if remainder else 0 + partitioned_numel = math.ceil(unpartitioned_numel / world_size) + return partitioned_numel, padding_numel + + +def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + if debug: + for i in range(world_size): + num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values()) + print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in zero_model_states[0].frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states) + state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape) + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + avail_numel = fp32_flat_groups[0].numel() * world_size + # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each + # param, re-consolidating each param, while dealing with padding if any + + # merge list of dicts, preserving order + param_shapes = {k: v for d in param_shapes for k, v in d.items()} + + if debug: + for i in range(world_size): + print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}") + + wanted_params = len(param_shapes) + wanted_numel = sum(shape.numel() for shape in param_shapes.values()) + # not asserting if there is a mismatch due to possible padding + avail_numel = fp32_flat_groups[0].numel() * world_size + print(f"Trainable params: Have {avail_numel} numels to process.") + print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + offset = 0 + total_numel = 0 + total_params = 0 + for name, shape in param_shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + # XXX: memory usage doubles here + state_dict[name] = torch.cat( + tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)), + 0).narrow(0, 0, unpartitioned_numel).view(shape) + offset += partitioned_numel + + offset *= world_size + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero3_merge_frozen_params(state_dict, world_size, zero_model_states) + + _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with + ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example + via a model hub. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14`` + + Returns: + - pytorch ``state_dict`` + + Note: this approach may not work if your application doesn't have sufficient free CPU memory and + you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with + the checkpoint. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint + # do the training and checkpoint saving + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu + model = model.cpu() # move to cpu + model.load_state_dict(state_dict) + # submit to model hub or save the model to share with others + + In this example the ``model`` will no longer be usable in the deepspeed context of the same + application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead. + + """ + if tag is None: + latest_path = os.path.join(checkpoint_dir, 'latest') + if os.path.isfile(latest_path): + with open(latest_path, 'r') as fd: + tag = fd.read().strip() + else: + raise ValueError(f"Unable to find 'latest' file at {latest_path}") + + ds_checkpoint_dir = os.path.join(checkpoint_dir, tag) + + if not os.path.isdir(ds_checkpoint_dir): + raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist") + + return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir) + + +def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be + loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + """ + + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + print(f"Saving fp32 state dict to {output_file}") + torch.save(state_dict, output_file) + + +def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None): + """ + 1. Put the provided model to cpu + 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` + 3. Load it into the provided model + + Args: + - ``model``: the model object to update + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + + Returns: + - ``model`: modified model + + Make sure you have plenty of CPU memory available before you call this function. If you don't + have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it + conveniently placed for you in the checkpoint folder. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint + model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir) + # submit to model hub or save the model to share with others + + Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context + of the same application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + """ + logger.info(f"Extracting fp32 weights") + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + + logger.info(f"Overwriting model with fp32 weights") + model = model.cpu() + model.load_state_dict(state_dict, strict=False) + + return model + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("checkpoint_dir", + type=str, + help="path to the desired checkpoint folder, e.g., path/checkpoint-12") + parser.add_argument( + "output_file", + type=str, + help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)") + parser.add_argument("-t", + "--tag", + type=str, + default=None, + help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1") + parser.add_argument("-d", "--debug", action='store_true', help="enable debug") + args = parser.parse_args() + + debug = args.debug + + convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag) diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/README.md b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/README.md new file mode 100644 index 0000000000000000000000000000000000000000..d380bbbf0bf0fa1f211b53410559607e5007a209 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/README.md @@ -0,0 +1,202 @@ +--- +library_name: peft +base_model: meta-llama/Llama-2-7b-hf +--- + +# Model Card for Model ID + + + + + +## Model Details + +### Model Description + + + + + +- **Developed by:** [More Information Needed] +- **Funded by [optional]:** [More Information Needed] +- **Shared by [optional]:** [More Information Needed] +- **Model type:** [More Information Needed] +- **Language(s) (NLP):** [More Information Needed] +- **License:** [More Information Needed] +- **Finetuned from model [optional]:** [More Information Needed] + +### Model Sources [optional] + + + +- **Repository:** [More Information Needed] +- **Paper [optional]:** [More Information Needed] +- **Demo [optional]:** [More Information Needed] + +## Uses + + + +### Direct Use + + + +[More Information Needed] + +### Downstream Use [optional] + + + +[More Information Needed] + +### Out-of-Scope Use + + + +[More Information Needed] + +## Bias, Risks, and Limitations + + + +[More Information Needed] + +### Recommendations + + + +Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. + +## How to Get Started with the Model + +Use the code below to get started with the model. + +[More Information Needed] + +## Training Details + +### Training Data + + + +[More Information Needed] + +### Training Procedure + + + +#### Preprocessing [optional] + +[More Information Needed] + + +#### Training Hyperparameters + +- **Training regime:** [More Information Needed] + +#### Speeds, Sizes, Times [optional] + + + +[More Information Needed] + +## Evaluation + + + +### Testing Data, Factors & Metrics + +#### Testing Data + + + +[More Information Needed] + +#### Factors + + + +[More Information Needed] + +#### Metrics + + + +[More Information Needed] + +### Results + +[More Information Needed] + +#### Summary + + + +## Model Examination [optional] + + + +[More Information Needed] + +## Environmental Impact + + + +Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700). + +- **Hardware Type:** [More Information Needed] +- **Hours used:** [More Information Needed] +- **Cloud Provider:** [More Information Needed] +- **Compute Region:** [More Information Needed] +- **Carbon Emitted:** [More Information Needed] + +## Technical Specifications [optional] + +### Model Architecture and Objective + +[More Information Needed] + +### Compute Infrastructure + +[More Information Needed] + +#### Hardware + +[More Information Needed] + +#### Software + +[More Information Needed] + +## Citation [optional] + + + +**BibTeX:** + +[More Information Needed] + +**APA:** + +[More Information Needed] + +## Glossary [optional] + + + +[More Information Needed] + +## More Information [optional] + +[More Information Needed] + +## Model Card Authors [optional] + +[More Information Needed] + +## Model Card Contact + +[More Information Needed] +### Framework versions + +- PEFT 0.9.0 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/adapter_config.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/adapter_config.json new file mode 100644 index 0000000000000000000000000000000000000000..9c81a592f0ff08374a4f61f6003029070a8429ae --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/adapter_config.json @@ -0,0 +1,35 @@ +{ + "alpha_pattern": {}, + "auto_mapping": null, + "base_model_name_or_path": "meta-llama/Llama-2-7b-hf", + "bias": "none", + "fan_in_fan_out": false, + "inference_mode": true, + "init_lora_weights": true, + "layers_pattern": null, + "layers_to_transform": null, + "loftq_config": {}, + "lora_alpha": 16, + "lora_dropout": 0.05, + "megatron_config": null, + "megatron_core": "megatron.core", + "modules_to_save": null, + "mora_type": 1, + "peft_type": "LORA", + "r": 8, + "rank_pattern": {}, + "revision": null, + "target_modules": [ + "q_proj", + "k_proj", + "v_proj", + "o_proj", + "gate_proj", + "down_proj", + "up_proj" + ], + "task_type": "CAUSAL_LM", + "use_dora": false, + "use_mora": false, + "use_rslora": false +} \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/adapter_model.safetensors b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/adapter_model.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..876400acb0137ac2304de8d478a34740f4c3803d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/adapter_model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c7157a76c242cf0483703166583aa0d8133f197345c3660dfd11e4b2e8cf41d +size 564342240 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/global_step5000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/global_step5000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..4d95b3bf605efa71f4663fab1f4df31f4be9ea93 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/global_step5000/bf16_zero_pp_rank_0_mp_rank_00_optim_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:486f9c160d20739fe22883feaf8ff4a47a3c7bddc605711f3c46543b4fb68d46 +size 239914224 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/global_step5000/mp_rank_00_model_states.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/global_step5000/mp_rank_00_model_states.pt new file mode 100644 index 0000000000000000000000000000000000000000..e124cbe23c4f228afc0751ee1f58356eabb23fd3 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/global_step5000/mp_rank_00_model_states.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19ee8111ae0a3b07fd43f7ced68cb83fe11d3452acbf650b938e31e6403c6f7d +size 40303404 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/latest b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/latest new file mode 100644 index 0000000000000000000000000000000000000000..f805186fa43374540c3fa51dfd3cca9ac06e56a5 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/latest @@ -0,0 +1 @@ +global_step5000 \ No newline at end of file diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/rng_state.pth b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/rng_state.pth new file mode 100644 index 0000000000000000000000000000000000000000..57d9e7c2f8da97786cef99bf6be53018174ed306 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/rng_state.pth @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24b21beccd215decd3c69d041eadc01afc9d1794ccbd322384ceb50140c747f8 +size 14244 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/scheduler.pt b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/scheduler.pt new file mode 100644 index 0000000000000000000000000000000000000000..dbd2f165904e47158cbeec4cb8a92d3d34c7a507 --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/scheduler.pt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae247e5c98944f52ac569fb613fd9d0e95335f4fce7c104f2e6337707f118840 +size 1064 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/trainer_state.json b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/trainer_state.json new file mode 100644 index 0000000000000000000000000000000000000000..7bac2a8c22be5cc599360a780cb492c2837c300b --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/trainer_state.json @@ -0,0 +1,6021 @@ +{ + "best_metric": null, + "best_model_checkpoint": null, + "epoch": 1.9958212492593632, + "eval_steps": 500, + "global_step": 5000, + "is_hyper_param_search": false, + "is_local_process_zero": true, + "is_world_process_zero": true, + "log_history": [ + { + "epoch": 0.0, + "learning_rate": 6.666666666666667e-06, + "loss": 1.3797, + "step": 5 + }, + { + "epoch": 0.0, + "learning_rate": 1.3333333333333333e-05, + "loss": 1.3952, + "step": 10 + }, + { + "epoch": 0.01, + "learning_rate": 2e-05, + "loss": 1.3112, + "step": 15 + }, + { + "epoch": 0.01, + "learning_rate": 2.6666666666666667e-05, + "loss": 1.3136, + "step": 20 + }, + { + "epoch": 0.01, + "learning_rate": 3.3333333333333335e-05, + "loss": 1.2012, + "step": 25 + }, + { + "epoch": 0.01, + "learning_rate": 4e-05, + "loss": 1.1277, + "step": 30 + }, + { + "epoch": 0.01, + "learning_rate": 4.666666666666667e-05, + "loss": 1.0832, + "step": 35 + }, + { + "epoch": 0.02, + "learning_rate": 5.333333333333333e-05, + "loss": 1.0659, + "step": 40 + }, + { + "epoch": 0.02, + "learning_rate": 6e-05, + "loss": 0.983, + "step": 45 + }, + { + "epoch": 0.02, + "learning_rate": 6.666666666666667e-05, + "loss": 0.9763, + "step": 50 + }, + { + "epoch": 0.02, + "learning_rate": 7.333333333333333e-05, + "loss": 0.9992, + "step": 55 + }, + { + "epoch": 0.02, + "learning_rate": 8e-05, + "loss": 0.9405, + "step": 60 + }, + { + "epoch": 0.03, + "learning_rate": 8.666666666666667e-05, + "loss": 0.9827, + "step": 65 + }, + { + "epoch": 0.03, + "learning_rate": 9.333333333333334e-05, + "loss": 0.9061, + "step": 70 + }, + { + "epoch": 0.03, + "learning_rate": 0.0001, + "loss": 0.8921, + "step": 75 + }, + { + "epoch": 0.03, + "learning_rate": 0.00010666666666666667, + "loss": 0.9377, + "step": 80 + }, + { + "epoch": 0.03, + "learning_rate": 0.00011333333333333334, + "loss": 0.8528, + "step": 85 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012, + "loss": 0.8913, + "step": 90 + }, + { + "epoch": 0.04, + "learning_rate": 0.00012666666666666666, + "loss": 0.8562, + "step": 95 + }, + { + "epoch": 0.04, + "learning_rate": 0.00013333333333333334, + "loss": 0.877, + "step": 100 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014, + "loss": 0.8781, + "step": 105 + }, + { + "epoch": 0.04, + "learning_rate": 0.00014666666666666666, + "loss": 0.8546, + "step": 110 + }, + { + "epoch": 0.05, + "learning_rate": 0.00015333333333333334, + "loss": 0.8672, + "step": 115 + }, + { + "epoch": 0.05, + "learning_rate": 0.00016, + "loss": 0.8611, + "step": 120 + }, + { + "epoch": 0.05, + "learning_rate": 0.0001666666666666667, + "loss": 0.8624, + "step": 125 + }, + { + "epoch": 0.05, + "learning_rate": 0.00017333333333333334, + "loss": 0.8477, + "step": 130 + }, + { + "epoch": 0.05, + "learning_rate": 0.00018, + "loss": 0.8227, + "step": 135 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001866666666666667, + "loss": 0.8064, + "step": 140 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019333333333333333, + "loss": 0.8422, + "step": 145 + }, + { + "epoch": 0.06, + "learning_rate": 0.0002, + "loss": 0.8471, + "step": 150 + }, + { + "epoch": 0.06, + "learning_rate": 0.0001997942386831276, + "loss": 0.8183, + "step": 155 + }, + { + "epoch": 0.06, + "learning_rate": 0.00019958847736625514, + "loss": 0.8229, + "step": 160 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019938271604938272, + "loss": 0.8114, + "step": 165 + }, + { + "epoch": 0.07, + "learning_rate": 0.0001991769547325103, + "loss": 0.7861, + "step": 170 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019897119341563788, + "loss": 0.841, + "step": 175 + }, + { + "epoch": 0.07, + "learning_rate": 0.00019876543209876543, + "loss": 0.8549, + "step": 180 + }, + { + "epoch": 0.07, + "learning_rate": 0.000198559670781893, + "loss": 0.8449, + "step": 185 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001983539094650206, + "loss": 0.8311, + "step": 190 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019814814814814814, + "loss": 0.8296, + "step": 195 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019794238683127572, + "loss": 0.8263, + "step": 200 + }, + { + "epoch": 0.08, + "learning_rate": 0.0001977366255144033, + "loss": 0.8452, + "step": 205 + }, + { + "epoch": 0.08, + "learning_rate": 0.00019753086419753085, + "loss": 0.8044, + "step": 210 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019732510288065843, + "loss": 0.8119, + "step": 215 + }, + { + "epoch": 0.09, + "learning_rate": 0.000197119341563786, + "loss": 0.8127, + "step": 220 + }, + { + "epoch": 0.09, + "learning_rate": 0.0001969135802469136, + "loss": 0.7921, + "step": 225 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019670781893004114, + "loss": 0.803, + "step": 230 + }, + { + "epoch": 0.09, + "learning_rate": 0.00019650205761316872, + "loss": 0.838, + "step": 235 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001962962962962963, + "loss": 0.7801, + "step": 240 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019609053497942388, + "loss": 0.817, + "step": 245 + }, + { + "epoch": 0.1, + "learning_rate": 0.00019588477366255146, + "loss": 0.8211, + "step": 250 + }, + { + "epoch": 0.1, + "learning_rate": 0.000195679012345679, + "loss": 0.8423, + "step": 255 + }, + { + "epoch": 0.1, + "learning_rate": 0.0001954732510288066, + "loss": 0.8007, + "step": 260 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019526748971193417, + "loss": 0.8135, + "step": 265 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019506172839506175, + "loss": 0.7961, + "step": 270 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019485596707818933, + "loss": 0.797, + "step": 275 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019465020576131688, + "loss": 0.793, + "step": 280 + }, + { + "epoch": 0.11, + "learning_rate": 0.00019444444444444446, + "loss": 0.7809, + "step": 285 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019423868312757204, + "loss": 0.7811, + "step": 290 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019403292181069962, + "loss": 0.8074, + "step": 295 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019382716049382717, + "loss": 0.8028, + "step": 300 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019362139917695475, + "loss": 0.7895, + "step": 305 + }, + { + "epoch": 0.12, + "learning_rate": 0.00019341563786008233, + "loss": 0.7777, + "step": 310 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019320987654320988, + "loss": 0.7868, + "step": 315 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019300411522633746, + "loss": 0.7921, + "step": 320 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019279835390946504, + "loss": 0.8, + "step": 325 + }, + { + "epoch": 0.13, + "learning_rate": 0.0001925925925925926, + "loss": 0.7781, + "step": 330 + }, + { + "epoch": 0.13, + "learning_rate": 0.00019238683127572017, + "loss": 0.7799, + "step": 335 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019218106995884775, + "loss": 0.7921, + "step": 340 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019197530864197533, + "loss": 0.7851, + "step": 345 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019176954732510288, + "loss": 0.8106, + "step": 350 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019156378600823046, + "loss": 0.7953, + "step": 355 + }, + { + "epoch": 0.14, + "learning_rate": 0.00019135802469135804, + "loss": 0.8084, + "step": 360 + }, + { + "epoch": 0.15, + "learning_rate": 0.0001911522633744856, + "loss": 0.8298, + "step": 365 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019094650205761317, + "loss": 0.8273, + "step": 370 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019074074074074075, + "loss": 0.8047, + "step": 375 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019053497942386833, + "loss": 0.8108, + "step": 380 + }, + { + "epoch": 0.15, + "learning_rate": 0.00019032921810699588, + "loss": 0.8207, + "step": 385 + }, + { + "epoch": 0.16, + "learning_rate": 0.00019012345679012346, + "loss": 0.7884, + "step": 390 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018991769547325104, + "loss": 0.7918, + "step": 395 + }, + { + "epoch": 0.16, + "learning_rate": 0.0001897119341563786, + "loss": 0.7554, + "step": 400 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018950617283950617, + "loss": 0.8099, + "step": 405 + }, + { + "epoch": 0.16, + "learning_rate": 0.00018930041152263375, + "loss": 0.807, + "step": 410 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018909465020576133, + "loss": 0.7793, + "step": 415 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018888888888888888, + "loss": 0.7734, + "step": 420 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018868312757201646, + "loss": 0.7786, + "step": 425 + }, + { + "epoch": 0.17, + "learning_rate": 0.00018847736625514404, + "loss": 0.7548, + "step": 430 + }, + { + "epoch": 0.17, + "learning_rate": 0.0001882716049382716, + "loss": 0.8024, + "step": 435 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018806584362139917, + "loss": 0.7708, + "step": 440 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018786008230452675, + "loss": 0.8045, + "step": 445 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018765432098765433, + "loss": 0.7477, + "step": 450 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018744855967078189, + "loss": 0.7474, + "step": 455 + }, + { + "epoch": 0.18, + "learning_rate": 0.00018724279835390946, + "loss": 0.7629, + "step": 460 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018703703703703704, + "loss": 0.7777, + "step": 465 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018683127572016462, + "loss": 0.7823, + "step": 470 + }, + { + "epoch": 0.19, + "learning_rate": 0.0001866255144032922, + "loss": 0.7762, + "step": 475 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018641975308641978, + "loss": 0.782, + "step": 480 + }, + { + "epoch": 0.19, + "learning_rate": 0.00018621399176954733, + "loss": 0.7783, + "step": 485 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001860082304526749, + "loss": 0.7376, + "step": 490 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001858024691358025, + "loss": 0.7683, + "step": 495 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018559670781893007, + "loss": 0.7547, + "step": 500 + }, + { + "epoch": 0.2, + "learning_rate": 0.00018539094650205762, + "loss": 0.7569, + "step": 505 + }, + { + "epoch": 0.2, + "learning_rate": 0.0001851851851851852, + "loss": 0.7796, + "step": 510 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018497942386831278, + "loss": 0.7888, + "step": 515 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018477366255144033, + "loss": 0.7763, + "step": 520 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018456790123456791, + "loss": 0.7787, + "step": 525 + }, + { + "epoch": 0.21, + "learning_rate": 0.0001843621399176955, + "loss": 0.772, + "step": 530 + }, + { + "epoch": 0.21, + "learning_rate": 0.00018415637860082307, + "loss": 0.786, + "step": 535 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018395061728395062, + "loss": 0.7639, + "step": 540 + }, + { + "epoch": 0.22, + "learning_rate": 0.0001837448559670782, + "loss": 0.775, + "step": 545 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018353909465020578, + "loss": 0.8002, + "step": 550 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018333333333333334, + "loss": 0.7359, + "step": 555 + }, + { + "epoch": 0.22, + "learning_rate": 0.00018312757201646091, + "loss": 0.747, + "step": 560 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001829218106995885, + "loss": 0.8234, + "step": 565 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018271604938271605, + "loss": 0.7586, + "step": 570 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018251028806584363, + "loss": 0.7315, + "step": 575 + }, + { + "epoch": 0.23, + "learning_rate": 0.0001823045267489712, + "loss": 0.7986, + "step": 580 + }, + { + "epoch": 0.23, + "learning_rate": 0.00018209876543209878, + "loss": 0.7758, + "step": 585 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018189300411522634, + "loss": 0.7869, + "step": 590 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018168724279835392, + "loss": 0.7596, + "step": 595 + }, + { + "epoch": 0.24, + "learning_rate": 0.0001814814814814815, + "loss": 0.7658, + "step": 600 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018127572016460905, + "loss": 0.7851, + "step": 605 + }, + { + "epoch": 0.24, + "learning_rate": 0.00018106995884773663, + "loss": 0.7957, + "step": 610 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001808641975308642, + "loss": 0.7756, + "step": 615 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018065843621399178, + "loss": 0.7911, + "step": 620 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018045267489711934, + "loss": 0.7864, + "step": 625 + }, + { + "epoch": 0.25, + "learning_rate": 0.00018024691358024692, + "loss": 0.7683, + "step": 630 + }, + { + "epoch": 0.25, + "learning_rate": 0.0001800411522633745, + "loss": 0.7731, + "step": 635 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017983539094650205, + "loss": 0.7671, + "step": 640 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017962962962962963, + "loss": 0.7367, + "step": 645 + }, + { + "epoch": 0.26, + "learning_rate": 0.0001794238683127572, + "loss": 0.8024, + "step": 650 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017921810699588476, + "loss": 0.7572, + "step": 655 + }, + { + "epoch": 0.26, + "learning_rate": 0.00017901234567901234, + "loss": 0.7554, + "step": 660 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017880658436213992, + "loss": 0.7677, + "step": 665 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001786008230452675, + "loss": 0.7652, + "step": 670 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017839506172839508, + "loss": 0.7771, + "step": 675 + }, + { + "epoch": 0.27, + "learning_rate": 0.00017818930041152265, + "loss": 0.7747, + "step": 680 + }, + { + "epoch": 0.27, + "learning_rate": 0.0001779835390946502, + "loss": 0.767, + "step": 685 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017777777777777779, + "loss": 0.7738, + "step": 690 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017757201646090537, + "loss": 0.7271, + "step": 695 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017736625514403294, + "loss": 0.7316, + "step": 700 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017716049382716052, + "loss": 0.7831, + "step": 705 + }, + { + "epoch": 0.28, + "learning_rate": 0.00017695473251028808, + "loss": 0.7835, + "step": 710 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017674897119341566, + "loss": 0.7497, + "step": 715 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017654320987654323, + "loss": 0.7757, + "step": 720 + }, + { + "epoch": 0.29, + "learning_rate": 0.0001763374485596708, + "loss": 0.74, + "step": 725 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017613168724279837, + "loss": 0.7697, + "step": 730 + }, + { + "epoch": 0.29, + "learning_rate": 0.00017592592592592595, + "loss": 0.774, + "step": 735 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017572016460905352, + "loss": 0.7668, + "step": 740 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017551440329218108, + "loss": 0.7779, + "step": 745 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017530864197530866, + "loss": 0.7441, + "step": 750 + }, + { + "epoch": 0.3, + "learning_rate": 0.00017510288065843624, + "loss": 0.7578, + "step": 755 + }, + { + "epoch": 0.3, + "learning_rate": 0.0001748971193415638, + "loss": 0.8358, + "step": 760 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017469135802469137, + "loss": 0.7473, + "step": 765 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017448559670781895, + "loss": 0.7517, + "step": 770 + }, + { + "epoch": 0.31, + "learning_rate": 0.0001742798353909465, + "loss": 0.7593, + "step": 775 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017407407407407408, + "loss": 0.7251, + "step": 780 + }, + { + "epoch": 0.31, + "learning_rate": 0.00017386831275720166, + "loss": 0.7365, + "step": 785 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017366255144032924, + "loss": 0.7798, + "step": 790 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001734567901234568, + "loss": 0.746, + "step": 795 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017325102880658437, + "loss": 0.7607, + "step": 800 + }, + { + "epoch": 0.32, + "learning_rate": 0.00017304526748971195, + "loss": 0.7694, + "step": 805 + }, + { + "epoch": 0.32, + "learning_rate": 0.0001728395061728395, + "loss": 0.7926, + "step": 810 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017263374485596708, + "loss": 0.795, + "step": 815 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017242798353909466, + "loss": 0.7581, + "step": 820 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017222222222222224, + "loss": 0.7629, + "step": 825 + }, + { + "epoch": 0.33, + "learning_rate": 0.0001720164609053498, + "loss": 0.7526, + "step": 830 + }, + { + "epoch": 0.33, + "learning_rate": 0.00017181069958847737, + "loss": 0.7338, + "step": 835 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017160493827160495, + "loss": 0.7544, + "step": 840 + }, + { + "epoch": 0.34, + "learning_rate": 0.0001713991769547325, + "loss": 0.7522, + "step": 845 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017119341563786008, + "loss": 0.7639, + "step": 850 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017098765432098766, + "loss": 0.7914, + "step": 855 + }, + { + "epoch": 0.34, + "learning_rate": 0.00017078189300411524, + "loss": 0.7635, + "step": 860 + }, + { + "epoch": 0.35, + "learning_rate": 0.0001705761316872428, + "loss": 0.8343, + "step": 865 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017037037037037037, + "loss": 0.7299, + "step": 870 + }, + { + "epoch": 0.35, + "learning_rate": 0.00017016460905349795, + "loss": 0.7643, + "step": 875 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016995884773662553, + "loss": 0.7343, + "step": 880 + }, + { + "epoch": 0.35, + "learning_rate": 0.00016975308641975308, + "loss": 0.7546, + "step": 885 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016954732510288066, + "loss": 0.7435, + "step": 890 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016934156378600824, + "loss": 0.8086, + "step": 895 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016913580246913582, + "loss": 0.7274, + "step": 900 + }, + { + "epoch": 0.36, + "learning_rate": 0.0001689300411522634, + "loss": 0.7511, + "step": 905 + }, + { + "epoch": 0.36, + "learning_rate": 0.00016872427983539098, + "loss": 0.7689, + "step": 910 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016851851851851853, + "loss": 0.754, + "step": 915 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001683127572016461, + "loss": 0.7298, + "step": 920 + }, + { + "epoch": 0.37, + "learning_rate": 0.0001681069958847737, + "loss": 0.7755, + "step": 925 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016790123456790124, + "loss": 0.7854, + "step": 930 + }, + { + "epoch": 0.37, + "learning_rate": 0.00016769547325102882, + "loss": 0.7452, + "step": 935 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001674897119341564, + "loss": 0.7473, + "step": 940 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016728395061728398, + "loss": 0.7855, + "step": 945 + }, + { + "epoch": 0.38, + "learning_rate": 0.00016707818930041153, + "loss": 0.7527, + "step": 950 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001668724279835391, + "loss": 0.7641, + "step": 955 + }, + { + "epoch": 0.38, + "learning_rate": 0.0001666666666666667, + "loss": 0.828, + "step": 960 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016646090534979424, + "loss": 0.7571, + "step": 965 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016625514403292182, + "loss": 0.7768, + "step": 970 + }, + { + "epoch": 0.39, + "learning_rate": 0.0001660493827160494, + "loss": 0.7644, + "step": 975 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016584362139917695, + "loss": 0.7747, + "step": 980 + }, + { + "epoch": 0.39, + "learning_rate": 0.00016563786008230453, + "loss": 0.7926, + "step": 985 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001654320987654321, + "loss": 0.7645, + "step": 990 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001652263374485597, + "loss": 0.7464, + "step": 995 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016502057613168724, + "loss": 0.7558, + "step": 1000 + }, + { + "epoch": 0.4, + "learning_rate": 0.00016481481481481482, + "loss": 0.7574, + "step": 1005 + }, + { + "epoch": 0.4, + "learning_rate": 0.0001646090534979424, + "loss": 0.7491, + "step": 1010 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016440329218106995, + "loss": 0.756, + "step": 1015 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016419753086419753, + "loss": 0.7679, + "step": 1020 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001639917695473251, + "loss": 0.776, + "step": 1025 + }, + { + "epoch": 0.41, + "learning_rate": 0.0001637860082304527, + "loss": 0.7235, + "step": 1030 + }, + { + "epoch": 0.41, + "learning_rate": 0.00016358024691358024, + "loss": 0.7817, + "step": 1035 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016337448559670782, + "loss": 0.7333, + "step": 1040 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001631687242798354, + "loss": 0.754, + "step": 1045 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016296296296296295, + "loss": 0.74, + "step": 1050 + }, + { + "epoch": 0.42, + "learning_rate": 0.00016275720164609053, + "loss": 0.7857, + "step": 1055 + }, + { + "epoch": 0.42, + "learning_rate": 0.0001625514403292181, + "loss": 0.8015, + "step": 1060 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001623456790123457, + "loss": 0.7508, + "step": 1065 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016213991769547324, + "loss": 0.7514, + "step": 1070 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016193415637860082, + "loss": 0.7326, + "step": 1075 + }, + { + "epoch": 0.43, + "learning_rate": 0.0001617283950617284, + "loss": 0.7322, + "step": 1080 + }, + { + "epoch": 0.43, + "learning_rate": 0.00016152263374485595, + "loss": 0.7373, + "step": 1085 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016131687242798353, + "loss": 0.7637, + "step": 1090 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001611111111111111, + "loss": 0.7697, + "step": 1095 + }, + { + "epoch": 0.44, + "learning_rate": 0.0001609053497942387, + "loss": 0.7505, + "step": 1100 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016069958847736627, + "loss": 0.7568, + "step": 1105 + }, + { + "epoch": 0.44, + "learning_rate": 0.00016049382716049385, + "loss": 0.786, + "step": 1110 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001602880658436214, + "loss": 0.7525, + "step": 1115 + }, + { + "epoch": 0.45, + "learning_rate": 0.00016008230452674898, + "loss": 0.7696, + "step": 1120 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015987654320987656, + "loss": 0.7648, + "step": 1125 + }, + { + "epoch": 0.45, + "learning_rate": 0.00015967078189300414, + "loss": 0.7492, + "step": 1130 + }, + { + "epoch": 0.45, + "learning_rate": 0.0001594650205761317, + "loss": 0.809, + "step": 1135 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015925925925925927, + "loss": 0.7592, + "step": 1140 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015905349794238685, + "loss": 0.7874, + "step": 1145 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015884773662551443, + "loss": 0.7874, + "step": 1150 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015864197530864198, + "loss": 0.7374, + "step": 1155 + }, + { + "epoch": 0.46, + "learning_rate": 0.00015843621399176956, + "loss": 0.7218, + "step": 1160 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015823045267489714, + "loss": 0.7494, + "step": 1165 + }, + { + "epoch": 0.47, + "learning_rate": 0.0001580246913580247, + "loss": 0.7449, + "step": 1170 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015781893004115227, + "loss": 0.725, + "step": 1175 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015761316872427985, + "loss": 0.739, + "step": 1180 + }, + { + "epoch": 0.47, + "learning_rate": 0.00015740740740740743, + "loss": 0.7554, + "step": 1185 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015720164609053498, + "loss": 0.7702, + "step": 1190 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015699588477366256, + "loss": 0.7418, + "step": 1195 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015679012345679014, + "loss": 0.7217, + "step": 1200 + }, + { + "epoch": 0.48, + "learning_rate": 0.0001565843621399177, + "loss": 0.7391, + "step": 1205 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015637860082304527, + "loss": 0.7696, + "step": 1210 + }, + { + "epoch": 0.48, + "learning_rate": 0.00015617283950617285, + "loss": 0.7594, + "step": 1215 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001559670781893004, + "loss": 0.777, + "step": 1220 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015576131687242798, + "loss": 0.7441, + "step": 1225 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015555555555555556, + "loss": 0.7611, + "step": 1230 + }, + { + "epoch": 0.49, + "learning_rate": 0.00015534979423868314, + "loss": 0.7278, + "step": 1235 + }, + { + "epoch": 0.49, + "learning_rate": 0.0001551440329218107, + "loss": 0.7452, + "step": 1240 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015493827160493827, + "loss": 0.7939, + "step": 1245 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015473251028806585, + "loss": 0.7161, + "step": 1250 + }, + { + "epoch": 0.5, + "learning_rate": 0.0001545267489711934, + "loss": 0.7344, + "step": 1255 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015432098765432098, + "loss": 0.7368, + "step": 1260 + }, + { + "epoch": 0.5, + "learning_rate": 0.00015411522633744856, + "loss": 0.7172, + "step": 1265 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015390946502057614, + "loss": 0.7589, + "step": 1270 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001537037037037037, + "loss": 0.7641, + "step": 1275 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015349794238683127, + "loss": 0.761, + "step": 1280 + }, + { + "epoch": 0.51, + "learning_rate": 0.00015329218106995885, + "loss": 0.7414, + "step": 1285 + }, + { + "epoch": 0.51, + "learning_rate": 0.0001530864197530864, + "loss": 0.7713, + "step": 1290 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015288065843621399, + "loss": 0.7543, + "step": 1295 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015267489711934156, + "loss": 0.7683, + "step": 1300 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015246913580246914, + "loss": 0.8106, + "step": 1305 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015226337448559672, + "loss": 0.7739, + "step": 1310 + }, + { + "epoch": 0.52, + "learning_rate": 0.00015205761316872428, + "loss": 0.7585, + "step": 1315 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015185185185185185, + "loss": 0.7577, + "step": 1320 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015164609053497943, + "loss": 0.7608, + "step": 1325 + }, + { + "epoch": 0.53, + "learning_rate": 0.000151440329218107, + "loss": 0.7715, + "step": 1330 + }, + { + "epoch": 0.53, + "learning_rate": 0.0001512345679012346, + "loss": 0.7681, + "step": 1335 + }, + { + "epoch": 0.53, + "learning_rate": 0.00015102880658436214, + "loss": 0.7476, + "step": 1340 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015082304526748972, + "loss": 0.7539, + "step": 1345 + }, + { + "epoch": 0.54, + "learning_rate": 0.0001506172839506173, + "loss": 0.7492, + "step": 1350 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015041152263374488, + "loss": 0.7491, + "step": 1355 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015020576131687243, + "loss": 0.7236, + "step": 1360 + }, + { + "epoch": 0.54, + "learning_rate": 0.00015000000000000001, + "loss": 0.7328, + "step": 1365 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001497942386831276, + "loss": 0.7603, + "step": 1370 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014958847736625515, + "loss": 0.7206, + "step": 1375 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014938271604938272, + "loss": 0.7001, + "step": 1380 + }, + { + "epoch": 0.55, + "learning_rate": 0.0001491769547325103, + "loss": 0.7241, + "step": 1385 + }, + { + "epoch": 0.55, + "learning_rate": 0.00014897119341563788, + "loss": 0.7511, + "step": 1390 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014876543209876544, + "loss": 0.7546, + "step": 1395 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014855967078189301, + "loss": 0.762, + "step": 1400 + }, + { + "epoch": 0.56, + "learning_rate": 0.0001483539094650206, + "loss": 0.6979, + "step": 1405 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014814814814814815, + "loss": 0.7352, + "step": 1410 + }, + { + "epoch": 0.56, + "learning_rate": 0.00014794238683127573, + "loss": 0.7604, + "step": 1415 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001477366255144033, + "loss": 0.7612, + "step": 1420 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014753086419753086, + "loss": 0.7618, + "step": 1425 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014732510288065844, + "loss": 0.7107, + "step": 1430 + }, + { + "epoch": 0.57, + "learning_rate": 0.00014711934156378602, + "loss": 0.7247, + "step": 1435 + }, + { + "epoch": 0.57, + "learning_rate": 0.0001469135802469136, + "loss": 0.7733, + "step": 1440 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014670781893004115, + "loss": 0.7627, + "step": 1445 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014650205761316873, + "loss": 0.7323, + "step": 1450 + }, + { + "epoch": 0.58, + "learning_rate": 0.0001462962962962963, + "loss": 0.7728, + "step": 1455 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014609053497942386, + "loss": 0.7541, + "step": 1460 + }, + { + "epoch": 0.58, + "learning_rate": 0.00014588477366255144, + "loss": 0.7781, + "step": 1465 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014567901234567902, + "loss": 0.7474, + "step": 1470 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001454732510288066, + "loss": 0.7789, + "step": 1475 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014526748971193415, + "loss": 0.7497, + "step": 1480 + }, + { + "epoch": 0.59, + "learning_rate": 0.00014506172839506173, + "loss": 0.7487, + "step": 1485 + }, + { + "epoch": 0.59, + "learning_rate": 0.0001448559670781893, + "loss": 0.7563, + "step": 1490 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014465020576131686, + "loss": 0.7444, + "step": 1495 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014444444444444444, + "loss": 0.7399, + "step": 1500 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014423868312757202, + "loss": 0.7288, + "step": 1505 + }, + { + "epoch": 0.6, + "learning_rate": 0.0001440329218106996, + "loss": 0.7458, + "step": 1510 + }, + { + "epoch": 0.6, + "learning_rate": 0.00014382716049382718, + "loss": 0.7297, + "step": 1515 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014362139917695473, + "loss": 0.7684, + "step": 1520 + }, + { + "epoch": 0.61, + "learning_rate": 0.0001434156378600823, + "loss": 0.7428, + "step": 1525 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014320987654320989, + "loss": 0.705, + "step": 1530 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014300411522633747, + "loss": 0.7445, + "step": 1535 + }, + { + "epoch": 0.61, + "learning_rate": 0.00014279835390946504, + "loss": 0.7109, + "step": 1540 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001425925925925926, + "loss": 0.7502, + "step": 1545 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014238683127572018, + "loss": 0.7485, + "step": 1550 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014218106995884776, + "loss": 0.7421, + "step": 1555 + }, + { + "epoch": 0.62, + "learning_rate": 0.00014197530864197534, + "loss": 0.7369, + "step": 1560 + }, + { + "epoch": 0.62, + "learning_rate": 0.0001417695473251029, + "loss": 0.7746, + "step": 1565 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014156378600823047, + "loss": 0.7334, + "step": 1570 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014135802469135805, + "loss": 0.7251, + "step": 1575 + }, + { + "epoch": 0.63, + "learning_rate": 0.0001411522633744856, + "loss": 0.7146, + "step": 1580 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014094650205761318, + "loss": 0.7563, + "step": 1585 + }, + { + "epoch": 0.63, + "learning_rate": 0.00014074074074074076, + "loss": 0.7247, + "step": 1590 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014053497942386834, + "loss": 0.7379, + "step": 1595 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001403292181069959, + "loss": 0.7684, + "step": 1600 + }, + { + "epoch": 0.64, + "learning_rate": 0.00014012345679012347, + "loss": 0.7574, + "step": 1605 + }, + { + "epoch": 0.64, + "learning_rate": 0.00013991769547325105, + "loss": 0.7138, + "step": 1610 + }, + { + "epoch": 0.64, + "learning_rate": 0.0001397119341563786, + "loss": 0.7472, + "step": 1615 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013950617283950618, + "loss": 0.7466, + "step": 1620 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013930041152263376, + "loss": 0.7288, + "step": 1625 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013909465020576134, + "loss": 0.7717, + "step": 1630 + }, + { + "epoch": 0.65, + "learning_rate": 0.0001388888888888889, + "loss": 0.7665, + "step": 1635 + }, + { + "epoch": 0.65, + "learning_rate": 0.00013868312757201647, + "loss": 0.7408, + "step": 1640 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013847736625514405, + "loss": 0.7418, + "step": 1645 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001382716049382716, + "loss": 0.7502, + "step": 1650 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013806584362139918, + "loss": 0.7657, + "step": 1655 + }, + { + "epoch": 0.66, + "learning_rate": 0.00013786008230452676, + "loss": 0.728, + "step": 1660 + }, + { + "epoch": 0.66, + "learning_rate": 0.0001376543209876543, + "loss": 0.7142, + "step": 1665 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001374485596707819, + "loss": 0.7971, + "step": 1670 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013724279835390947, + "loss": 0.737, + "step": 1675 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013703703703703705, + "loss": 0.7947, + "step": 1680 + }, + { + "epoch": 0.67, + "learning_rate": 0.0001368312757201646, + "loss": 0.7525, + "step": 1685 + }, + { + "epoch": 0.67, + "learning_rate": 0.00013662551440329218, + "loss": 0.711, + "step": 1690 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013641975308641976, + "loss": 0.7459, + "step": 1695 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001362139917695473, + "loss": 0.7404, + "step": 1700 + }, + { + "epoch": 0.68, + "learning_rate": 0.0001360082304526749, + "loss": 0.7458, + "step": 1705 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013580246913580247, + "loss": 0.754, + "step": 1710 + }, + { + "epoch": 0.68, + "learning_rate": 0.00013559670781893005, + "loss": 0.7217, + "step": 1715 + }, + { + "epoch": 0.69, + "learning_rate": 0.0001353909465020576, + "loss": 0.7373, + "step": 1720 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013518518518518518, + "loss": 0.7567, + "step": 1725 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013497942386831276, + "loss": 0.7525, + "step": 1730 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013477366255144034, + "loss": 0.752, + "step": 1735 + }, + { + "epoch": 0.69, + "learning_rate": 0.00013456790123456792, + "loss": 0.7342, + "step": 1740 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001343621399176955, + "loss": 0.7276, + "step": 1745 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013415637860082305, + "loss": 0.6915, + "step": 1750 + }, + { + "epoch": 0.7, + "learning_rate": 0.00013395061728395063, + "loss": 0.737, + "step": 1755 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001337448559670782, + "loss": 0.7427, + "step": 1760 + }, + { + "epoch": 0.7, + "learning_rate": 0.0001335390946502058, + "loss": 0.7126, + "step": 1765 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013333333333333334, + "loss": 0.7241, + "step": 1770 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013312757201646092, + "loss": 0.755, + "step": 1775 + }, + { + "epoch": 0.71, + "learning_rate": 0.0001329218106995885, + "loss": 0.7494, + "step": 1780 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013271604938271605, + "loss": 0.709, + "step": 1785 + }, + { + "epoch": 0.71, + "learning_rate": 0.00013251028806584363, + "loss": 0.7555, + "step": 1790 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001323045267489712, + "loss": 0.7298, + "step": 1795 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001320987654320988, + "loss": 0.7232, + "step": 1800 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013189300411522634, + "loss": 0.7441, + "step": 1805 + }, + { + "epoch": 0.72, + "learning_rate": 0.00013168724279835392, + "loss": 0.7623, + "step": 1810 + }, + { + "epoch": 0.72, + "learning_rate": 0.0001314814814814815, + "loss": 0.7349, + "step": 1815 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013127572016460905, + "loss": 0.7773, + "step": 1820 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013106995884773663, + "loss": 0.7537, + "step": 1825 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001308641975308642, + "loss": 0.7579, + "step": 1830 + }, + { + "epoch": 0.73, + "learning_rate": 0.0001306584362139918, + "loss": 0.7321, + "step": 1835 + }, + { + "epoch": 0.73, + "learning_rate": 0.00013045267489711934, + "loss": 0.7175, + "step": 1840 + }, + { + "epoch": 0.74, + "learning_rate": 0.00013024691358024692, + "loss": 0.7553, + "step": 1845 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001300411522633745, + "loss": 0.7591, + "step": 1850 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012983539094650205, + "loss": 0.7581, + "step": 1855 + }, + { + "epoch": 0.74, + "learning_rate": 0.00012962962962962963, + "loss": 0.7632, + "step": 1860 + }, + { + "epoch": 0.74, + "learning_rate": 0.0001294238683127572, + "loss": 0.7434, + "step": 1865 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012921810699588476, + "loss": 0.7695, + "step": 1870 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012901234567901234, + "loss": 0.7808, + "step": 1875 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012880658436213992, + "loss": 0.7428, + "step": 1880 + }, + { + "epoch": 0.75, + "learning_rate": 0.0001286008230452675, + "loss": 0.7487, + "step": 1885 + }, + { + "epoch": 0.75, + "learning_rate": 0.00012839506172839505, + "loss": 0.7033, + "step": 1890 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012818930041152263, + "loss": 0.7639, + "step": 1895 + }, + { + "epoch": 0.76, + "learning_rate": 0.0001279835390946502, + "loss": 0.7345, + "step": 1900 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012777777777777776, + "loss": 0.7434, + "step": 1905 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012757201646090534, + "loss": 0.7082, + "step": 1910 + }, + { + "epoch": 0.76, + "learning_rate": 0.00012736625514403292, + "loss": 0.7294, + "step": 1915 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001271604938271605, + "loss": 0.74, + "step": 1920 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012695473251028805, + "loss": 0.7694, + "step": 1925 + }, + { + "epoch": 0.77, + "learning_rate": 0.00012674897119341563, + "loss": 0.7339, + "step": 1930 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001265432098765432, + "loss": 0.7259, + "step": 1935 + }, + { + "epoch": 0.77, + "learning_rate": 0.0001263374485596708, + "loss": 0.7307, + "step": 1940 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012613168724279837, + "loss": 0.7085, + "step": 1945 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012592592592592592, + "loss": 0.7662, + "step": 1950 + }, + { + "epoch": 0.78, + "learning_rate": 0.0001257201646090535, + "loss": 0.7145, + "step": 1955 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012551440329218108, + "loss": 0.7528, + "step": 1960 + }, + { + "epoch": 0.78, + "learning_rate": 0.00012530864197530866, + "loss": 0.7308, + "step": 1965 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012510288065843624, + "loss": 0.7163, + "step": 1970 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001248971193415638, + "loss": 0.7254, + "step": 1975 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012469135802469137, + "loss": 0.7467, + "step": 1980 + }, + { + "epoch": 0.79, + "learning_rate": 0.00012448559670781895, + "loss": 0.7391, + "step": 1985 + }, + { + "epoch": 0.79, + "learning_rate": 0.0001242798353909465, + "loss": 0.7314, + "step": 1990 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012407407407407408, + "loss": 0.7048, + "step": 1995 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012386831275720166, + "loss": 0.7187, + "step": 2000 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012366255144032924, + "loss": 0.735, + "step": 2005 + }, + { + "epoch": 0.8, + "learning_rate": 0.0001234567901234568, + "loss": 0.7662, + "step": 2010 + }, + { + "epoch": 0.8, + "learning_rate": 0.00012325102880658437, + "loss": 0.7437, + "step": 2015 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012304526748971195, + "loss": 0.7675, + "step": 2020 + }, + { + "epoch": 0.81, + "learning_rate": 0.0001228395061728395, + "loss": 0.7143, + "step": 2025 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012263374485596708, + "loss": 0.7101, + "step": 2030 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012242798353909466, + "loss": 0.7257, + "step": 2035 + }, + { + "epoch": 0.81, + "learning_rate": 0.00012222222222222224, + "loss": 0.7522, + "step": 2040 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001220164609053498, + "loss": 0.7669, + "step": 2045 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012181069958847737, + "loss": 0.7283, + "step": 2050 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012160493827160495, + "loss": 0.7413, + "step": 2055 + }, + { + "epoch": 0.82, + "learning_rate": 0.0001213991769547325, + "loss": 0.6988, + "step": 2060 + }, + { + "epoch": 0.82, + "learning_rate": 0.00012119341563786008, + "loss": 0.7421, + "step": 2065 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012098765432098766, + "loss": 0.7152, + "step": 2070 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012078189300411524, + "loss": 0.7741, + "step": 2075 + }, + { + "epoch": 0.83, + "learning_rate": 0.0001205761316872428, + "loss": 0.7381, + "step": 2080 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012037037037037037, + "loss": 0.738, + "step": 2085 + }, + { + "epoch": 0.83, + "learning_rate": 0.00012016460905349795, + "loss": 0.7258, + "step": 2090 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011995884773662552, + "loss": 0.7426, + "step": 2095 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011975308641975308, + "loss": 0.7185, + "step": 2100 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011954732510288066, + "loss": 0.7401, + "step": 2105 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011934156378600823, + "loss": 0.751, + "step": 2110 + }, + { + "epoch": 0.84, + "learning_rate": 0.00011913580246913581, + "loss": 0.7284, + "step": 2115 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011893004115226339, + "loss": 0.7901, + "step": 2120 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011872427983539097, + "loss": 0.7432, + "step": 2125 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011851851851851852, + "loss": 0.7355, + "step": 2130 + }, + { + "epoch": 0.85, + "learning_rate": 0.0001183127572016461, + "loss": 0.7333, + "step": 2135 + }, + { + "epoch": 0.85, + "learning_rate": 0.00011810699588477368, + "loss": 0.7504, + "step": 2140 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011790123456790123, + "loss": 0.7503, + "step": 2145 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011769547325102881, + "loss": 0.728, + "step": 2150 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011748971193415639, + "loss": 0.7485, + "step": 2155 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011728395061728397, + "loss": 0.7127, + "step": 2160 + }, + { + "epoch": 0.86, + "learning_rate": 0.00011707818930041152, + "loss": 0.7278, + "step": 2165 + }, + { + "epoch": 0.87, + "learning_rate": 0.0001168724279835391, + "loss": 0.7513, + "step": 2170 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011666666666666668, + "loss": 0.7193, + "step": 2175 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011646090534979423, + "loss": 0.7245, + "step": 2180 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011625514403292181, + "loss": 0.7266, + "step": 2185 + }, + { + "epoch": 0.87, + "learning_rate": 0.00011604938271604939, + "loss": 0.7531, + "step": 2190 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011584362139917696, + "loss": 0.7637, + "step": 2195 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011563786008230452, + "loss": 0.7388, + "step": 2200 + }, + { + "epoch": 0.88, + "learning_rate": 0.0001154320987654321, + "loss": 0.7222, + "step": 2205 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011522633744855968, + "loss": 0.7667, + "step": 2210 + }, + { + "epoch": 0.88, + "learning_rate": 0.00011502057613168725, + "loss": 0.7382, + "step": 2215 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011481481481481482, + "loss": 0.7243, + "step": 2220 + }, + { + "epoch": 0.89, + "learning_rate": 0.0001146090534979424, + "loss": 0.7192, + "step": 2225 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011440329218106996, + "loss": 0.7237, + "step": 2230 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011419753086419754, + "loss": 0.7498, + "step": 2235 + }, + { + "epoch": 0.89, + "learning_rate": 0.00011399176954732511, + "loss": 0.7007, + "step": 2240 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001137860082304527, + "loss": 0.758, + "step": 2245 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011358024691358025, + "loss": 0.7111, + "step": 2250 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011337448559670783, + "loss": 0.706, + "step": 2255 + }, + { + "epoch": 0.9, + "learning_rate": 0.0001131687242798354, + "loss": 0.7423, + "step": 2260 + }, + { + "epoch": 0.9, + "learning_rate": 0.00011296296296296296, + "loss": 0.7094, + "step": 2265 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011275720164609054, + "loss": 0.7331, + "step": 2270 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011255144032921812, + "loss": 0.7164, + "step": 2275 + }, + { + "epoch": 0.91, + "learning_rate": 0.0001123456790123457, + "loss": 0.7452, + "step": 2280 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011213991769547325, + "loss": 0.7172, + "step": 2285 + }, + { + "epoch": 0.91, + "learning_rate": 0.00011193415637860083, + "loss": 0.7232, + "step": 2290 + }, + { + "epoch": 0.92, + "learning_rate": 0.0001117283950617284, + "loss": 0.7112, + "step": 2295 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011152263374485596, + "loss": 0.7459, + "step": 2300 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011131687242798354, + "loss": 0.7353, + "step": 2305 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011111111111111112, + "loss": 0.7406, + "step": 2310 + }, + { + "epoch": 0.92, + "learning_rate": 0.00011090534979423868, + "loss": 0.7623, + "step": 2315 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011069958847736626, + "loss": 0.7567, + "step": 2320 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011049382716049384, + "loss": 0.7752, + "step": 2325 + }, + { + "epoch": 0.93, + "learning_rate": 0.0001102880658436214, + "loss": 0.7419, + "step": 2330 + }, + { + "epoch": 0.93, + "learning_rate": 0.00011008230452674897, + "loss": 0.7244, + "step": 2335 + }, + { + "epoch": 0.93, + "learning_rate": 0.00010987654320987655, + "loss": 0.7553, + "step": 2340 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010967078189300413, + "loss": 0.7389, + "step": 2345 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010946502057613168, + "loss": 0.7002, + "step": 2350 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010925925925925926, + "loss": 0.7238, + "step": 2355 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010905349794238684, + "loss": 0.6923, + "step": 2360 + }, + { + "epoch": 0.94, + "learning_rate": 0.00010884773662551442, + "loss": 0.7579, + "step": 2365 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010864197530864197, + "loss": 0.7291, + "step": 2370 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010843621399176955, + "loss": 0.721, + "step": 2375 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010823045267489713, + "loss": 0.7605, + "step": 2380 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010802469135802468, + "loss": 0.7297, + "step": 2385 + }, + { + "epoch": 0.95, + "learning_rate": 0.00010781893004115226, + "loss": 0.7565, + "step": 2390 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010761316872427984, + "loss": 0.701, + "step": 2395 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010740740740740742, + "loss": 0.736, + "step": 2400 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010720164609053497, + "loss": 0.7079, + "step": 2405 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010699588477366255, + "loss": 0.7349, + "step": 2410 + }, + { + "epoch": 0.96, + "learning_rate": 0.00010679012345679013, + "loss": 0.7106, + "step": 2415 + }, + { + "epoch": 0.97, + "learning_rate": 0.0001065843621399177, + "loss": 0.7396, + "step": 2420 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010637860082304528, + "loss": 0.7713, + "step": 2425 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010617283950617284, + "loss": 0.747, + "step": 2430 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010596707818930041, + "loss": 0.7475, + "step": 2435 + }, + { + "epoch": 0.97, + "learning_rate": 0.00010576131687242799, + "loss": 0.7449, + "step": 2440 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010555555555555557, + "loss": 0.7208, + "step": 2445 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010534979423868315, + "loss": 0.7317, + "step": 2450 + }, + { + "epoch": 0.98, + "learning_rate": 0.0001051440329218107, + "loss": 0.7419, + "step": 2455 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010493827160493828, + "loss": 0.7148, + "step": 2460 + }, + { + "epoch": 0.98, + "learning_rate": 0.00010473251028806586, + "loss": 0.7143, + "step": 2465 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010452674897119341, + "loss": 0.747, + "step": 2470 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010432098765432099, + "loss": 0.7079, + "step": 2475 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010411522633744857, + "loss": 0.7059, + "step": 2480 + }, + { + "epoch": 0.99, + "learning_rate": 0.00010390946502057615, + "loss": 0.7272, + "step": 2485 + }, + { + "epoch": 0.99, + "learning_rate": 0.0001037037037037037, + "loss": 0.7281, + "step": 2490 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010349794238683128, + "loss": 0.6956, + "step": 2495 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010329218106995886, + "loss": 0.7571, + "step": 2500 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010308641975308641, + "loss": 0.7311, + "step": 2505 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010288065843621399, + "loss": 0.6815, + "step": 2510 + }, + { + "epoch": 1.0, + "learning_rate": 0.00010267489711934157, + "loss": 0.6781, + "step": 2515 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010246913580246915, + "loss": 0.6948, + "step": 2520 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010226337448559671, + "loss": 0.7133, + "step": 2525 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010205761316872428, + "loss": 0.688, + "step": 2530 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010185185185185186, + "loss": 0.6687, + "step": 2535 + }, + { + "epoch": 1.01, + "learning_rate": 0.00010164609053497942, + "loss": 0.7142, + "step": 2540 + }, + { + "epoch": 1.02, + "learning_rate": 0.000101440329218107, + "loss": 0.6885, + "step": 2545 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010123456790123458, + "loss": 0.6867, + "step": 2550 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010102880658436214, + "loss": 0.7045, + "step": 2555 + }, + { + "epoch": 1.02, + "learning_rate": 0.00010082304526748971, + "loss": 0.7375, + "step": 2560 + }, + { + "epoch": 1.02, + "learning_rate": 0.0001006172839506173, + "loss": 0.7157, + "step": 2565 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010041152263374487, + "loss": 0.6828, + "step": 2570 + }, + { + "epoch": 1.03, + "learning_rate": 0.00010020576131687243, + "loss": 0.7048, + "step": 2575 + }, + { + "epoch": 1.03, + "learning_rate": 0.0001, + "loss": 0.6944, + "step": 2580 + }, + { + "epoch": 1.03, + "learning_rate": 9.979423868312757e-05, + "loss": 0.696, + "step": 2585 + }, + { + "epoch": 1.03, + "learning_rate": 9.958847736625515e-05, + "loss": 0.6609, + "step": 2590 + }, + { + "epoch": 1.04, + "learning_rate": 9.938271604938272e-05, + "loss": 0.674, + "step": 2595 + }, + { + "epoch": 1.04, + "learning_rate": 9.91769547325103e-05, + "loss": 0.7138, + "step": 2600 + }, + { + "epoch": 1.04, + "learning_rate": 9.897119341563786e-05, + "loss": 0.713, + "step": 2605 + }, + { + "epoch": 1.04, + "learning_rate": 9.876543209876543e-05, + "loss": 0.7022, + "step": 2610 + }, + { + "epoch": 1.04, + "learning_rate": 9.8559670781893e-05, + "loss": 0.6955, + "step": 2615 + }, + { + "epoch": 1.05, + "learning_rate": 9.835390946502057e-05, + "loss": 0.6888, + "step": 2620 + }, + { + "epoch": 1.05, + "learning_rate": 9.814814814814815e-05, + "loss": 0.7003, + "step": 2625 + }, + { + "epoch": 1.05, + "learning_rate": 9.794238683127573e-05, + "loss": 0.7167, + "step": 2630 + }, + { + "epoch": 1.05, + "learning_rate": 9.77366255144033e-05, + "loss": 0.7087, + "step": 2635 + }, + { + "epoch": 1.05, + "learning_rate": 9.753086419753087e-05, + "loss": 0.7019, + "step": 2640 + }, + { + "epoch": 1.06, + "learning_rate": 9.732510288065844e-05, + "loss": 0.6609, + "step": 2645 + }, + { + "epoch": 1.06, + "learning_rate": 9.711934156378602e-05, + "loss": 0.7367, + "step": 2650 + }, + { + "epoch": 1.06, + "learning_rate": 9.691358024691359e-05, + "loss": 0.6862, + "step": 2655 + }, + { + "epoch": 1.06, + "learning_rate": 9.670781893004116e-05, + "loss": 0.7121, + "step": 2660 + }, + { + "epoch": 1.06, + "learning_rate": 9.650205761316873e-05, + "loss": 0.7031, + "step": 2665 + }, + { + "epoch": 1.07, + "learning_rate": 9.62962962962963e-05, + "loss": 0.7005, + "step": 2670 + }, + { + "epoch": 1.07, + "learning_rate": 9.609053497942388e-05, + "loss": 0.7041, + "step": 2675 + }, + { + "epoch": 1.07, + "learning_rate": 9.588477366255144e-05, + "loss": 0.6713, + "step": 2680 + }, + { + "epoch": 1.07, + "learning_rate": 9.567901234567902e-05, + "loss": 0.6932, + "step": 2685 + }, + { + "epoch": 1.07, + "learning_rate": 9.547325102880659e-05, + "loss": 0.6849, + "step": 2690 + }, + { + "epoch": 1.08, + "learning_rate": 9.526748971193417e-05, + "loss": 0.6915, + "step": 2695 + }, + { + "epoch": 1.08, + "learning_rate": 9.506172839506173e-05, + "loss": 0.6677, + "step": 2700 + }, + { + "epoch": 1.08, + "learning_rate": 9.48559670781893e-05, + "loss": 0.6767, + "step": 2705 + }, + { + "epoch": 1.08, + "learning_rate": 9.465020576131688e-05, + "loss": 0.6873, + "step": 2710 + }, + { + "epoch": 1.08, + "learning_rate": 9.444444444444444e-05, + "loss": 0.7007, + "step": 2715 + }, + { + "epoch": 1.09, + "learning_rate": 9.423868312757202e-05, + "loss": 0.6782, + "step": 2720 + }, + { + "epoch": 1.09, + "learning_rate": 9.403292181069959e-05, + "loss": 0.7044, + "step": 2725 + }, + { + "epoch": 1.09, + "learning_rate": 9.382716049382717e-05, + "loss": 0.6787, + "step": 2730 + }, + { + "epoch": 1.09, + "learning_rate": 9.362139917695473e-05, + "loss": 0.6876, + "step": 2735 + }, + { + "epoch": 1.09, + "learning_rate": 9.341563786008231e-05, + "loss": 0.7253, + "step": 2740 + }, + { + "epoch": 1.1, + "learning_rate": 9.320987654320989e-05, + "loss": 0.7159, + "step": 2745 + }, + { + "epoch": 1.1, + "learning_rate": 9.300411522633746e-05, + "loss": 0.704, + "step": 2750 + }, + { + "epoch": 1.1, + "learning_rate": 9.279835390946504e-05, + "loss": 0.6882, + "step": 2755 + }, + { + "epoch": 1.1, + "learning_rate": 9.25925925925926e-05, + "loss": 0.6777, + "step": 2760 + }, + { + "epoch": 1.1, + "learning_rate": 9.238683127572017e-05, + "loss": 0.7133, + "step": 2765 + }, + { + "epoch": 1.11, + "learning_rate": 9.218106995884775e-05, + "loss": 0.6988, + "step": 2770 + }, + { + "epoch": 1.11, + "learning_rate": 9.197530864197531e-05, + "loss": 0.7323, + "step": 2775 + }, + { + "epoch": 1.11, + "learning_rate": 9.176954732510289e-05, + "loss": 0.6854, + "step": 2780 + }, + { + "epoch": 1.11, + "learning_rate": 9.156378600823046e-05, + "loss": 0.6926, + "step": 2785 + }, + { + "epoch": 1.11, + "learning_rate": 9.135802469135802e-05, + "loss": 0.6985, + "step": 2790 + }, + { + "epoch": 1.12, + "learning_rate": 9.11522633744856e-05, + "loss": 0.6776, + "step": 2795 + }, + { + "epoch": 1.12, + "learning_rate": 9.094650205761317e-05, + "loss": 0.7374, + "step": 2800 + }, + { + "epoch": 1.12, + "learning_rate": 9.074074074074075e-05, + "loss": 0.6928, + "step": 2805 + }, + { + "epoch": 1.12, + "learning_rate": 9.053497942386831e-05, + "loss": 0.7129, + "step": 2810 + }, + { + "epoch": 1.12, + "learning_rate": 9.032921810699589e-05, + "loss": 0.6918, + "step": 2815 + }, + { + "epoch": 1.13, + "learning_rate": 9.012345679012346e-05, + "loss": 0.6641, + "step": 2820 + }, + { + "epoch": 1.13, + "learning_rate": 8.991769547325102e-05, + "loss": 0.7075, + "step": 2825 + }, + { + "epoch": 1.13, + "learning_rate": 8.97119341563786e-05, + "loss": 0.668, + "step": 2830 + }, + { + "epoch": 1.13, + "learning_rate": 8.950617283950617e-05, + "loss": 0.6836, + "step": 2835 + }, + { + "epoch": 1.13, + "learning_rate": 8.930041152263375e-05, + "loss": 0.672, + "step": 2840 + }, + { + "epoch": 1.14, + "learning_rate": 8.909465020576133e-05, + "loss": 0.6827, + "step": 2845 + }, + { + "epoch": 1.14, + "learning_rate": 8.888888888888889e-05, + "loss": 0.6976, + "step": 2850 + }, + { + "epoch": 1.14, + "learning_rate": 8.868312757201647e-05, + "loss": 0.6719, + "step": 2855 + }, + { + "epoch": 1.14, + "learning_rate": 8.847736625514404e-05, + "loss": 0.6871, + "step": 2860 + }, + { + "epoch": 1.14, + "learning_rate": 8.827160493827162e-05, + "loss": 0.6975, + "step": 2865 + }, + { + "epoch": 1.15, + "learning_rate": 8.806584362139918e-05, + "loss": 0.684, + "step": 2870 + }, + { + "epoch": 1.15, + "learning_rate": 8.786008230452676e-05, + "loss": 0.6861, + "step": 2875 + }, + { + "epoch": 1.15, + "learning_rate": 8.765432098765433e-05, + "loss": 0.7116, + "step": 2880 + }, + { + "epoch": 1.15, + "learning_rate": 8.74485596707819e-05, + "loss": 0.686, + "step": 2885 + }, + { + "epoch": 1.15, + "learning_rate": 8.724279835390947e-05, + "loss": 0.677, + "step": 2890 + }, + { + "epoch": 1.16, + "learning_rate": 8.703703703703704e-05, + "loss": 0.6996, + "step": 2895 + }, + { + "epoch": 1.16, + "learning_rate": 8.683127572016462e-05, + "loss": 0.7211, + "step": 2900 + }, + { + "epoch": 1.16, + "learning_rate": 8.662551440329218e-05, + "loss": 0.6766, + "step": 2905 + }, + { + "epoch": 1.16, + "learning_rate": 8.641975308641975e-05, + "loss": 0.6883, + "step": 2910 + }, + { + "epoch": 1.16, + "learning_rate": 8.621399176954733e-05, + "loss": 0.6829, + "step": 2915 + }, + { + "epoch": 1.17, + "learning_rate": 8.60082304526749e-05, + "loss": 0.7089, + "step": 2920 + }, + { + "epoch": 1.17, + "learning_rate": 8.580246913580247e-05, + "loss": 0.6711, + "step": 2925 + }, + { + "epoch": 1.17, + "learning_rate": 8.559670781893004e-05, + "loss": 0.6926, + "step": 2930 + }, + { + "epoch": 1.17, + "learning_rate": 8.539094650205762e-05, + "loss": 0.6513, + "step": 2935 + }, + { + "epoch": 1.17, + "learning_rate": 8.518518518518518e-05, + "loss": 0.6817, + "step": 2940 + }, + { + "epoch": 1.18, + "learning_rate": 8.497942386831276e-05, + "loss": 0.7005, + "step": 2945 + }, + { + "epoch": 1.18, + "learning_rate": 8.477366255144033e-05, + "loss": 0.7013, + "step": 2950 + }, + { + "epoch": 1.18, + "learning_rate": 8.456790123456791e-05, + "loss": 0.6562, + "step": 2955 + }, + { + "epoch": 1.18, + "learning_rate": 8.436213991769549e-05, + "loss": 0.7074, + "step": 2960 + }, + { + "epoch": 1.18, + "learning_rate": 8.415637860082305e-05, + "loss": 0.6901, + "step": 2965 + }, + { + "epoch": 1.19, + "learning_rate": 8.395061728395062e-05, + "loss": 0.6867, + "step": 2970 + }, + { + "epoch": 1.19, + "learning_rate": 8.37448559670782e-05, + "loss": 0.692, + "step": 2975 + }, + { + "epoch": 1.19, + "learning_rate": 8.353909465020576e-05, + "loss": 0.6863, + "step": 2980 + }, + { + "epoch": 1.19, + "learning_rate": 8.333333333333334e-05, + "loss": 0.6881, + "step": 2985 + }, + { + "epoch": 1.19, + "learning_rate": 8.312757201646091e-05, + "loss": 0.7203, + "step": 2990 + }, + { + "epoch": 1.2, + "learning_rate": 8.292181069958848e-05, + "loss": 0.7075, + "step": 2995 + }, + { + "epoch": 1.2, + "learning_rate": 8.271604938271605e-05, + "loss": 0.7187, + "step": 3000 + }, + { + "epoch": 1.2, + "learning_rate": 8.251028806584362e-05, + "loss": 0.6791, + "step": 3005 + }, + { + "epoch": 1.2, + "learning_rate": 8.23045267489712e-05, + "loss": 0.6937, + "step": 3010 + }, + { + "epoch": 1.2, + "learning_rate": 8.209876543209877e-05, + "loss": 0.6584, + "step": 3015 + }, + { + "epoch": 1.21, + "learning_rate": 8.189300411522634e-05, + "loss": 0.6818, + "step": 3020 + }, + { + "epoch": 1.21, + "learning_rate": 8.168724279835391e-05, + "loss": 0.6827, + "step": 3025 + }, + { + "epoch": 1.21, + "learning_rate": 8.148148148148148e-05, + "loss": 0.6774, + "step": 3030 + }, + { + "epoch": 1.21, + "learning_rate": 8.127572016460906e-05, + "loss": 0.6826, + "step": 3035 + }, + { + "epoch": 1.21, + "learning_rate": 8.106995884773662e-05, + "loss": 0.6767, + "step": 3040 + }, + { + "epoch": 1.22, + "learning_rate": 8.08641975308642e-05, + "loss": 0.7256, + "step": 3045 + }, + { + "epoch": 1.22, + "learning_rate": 8.065843621399177e-05, + "loss": 0.6875, + "step": 3050 + }, + { + "epoch": 1.22, + "learning_rate": 8.045267489711935e-05, + "loss": 0.7013, + "step": 3055 + }, + { + "epoch": 1.22, + "learning_rate": 8.024691358024692e-05, + "loss": 0.6907, + "step": 3060 + }, + { + "epoch": 1.22, + "learning_rate": 8.004115226337449e-05, + "loss": 0.6751, + "step": 3065 + }, + { + "epoch": 1.23, + "learning_rate": 7.983539094650207e-05, + "loss": 0.6893, + "step": 3070 + }, + { + "epoch": 1.23, + "learning_rate": 7.962962962962964e-05, + "loss": 0.6962, + "step": 3075 + }, + { + "epoch": 1.23, + "learning_rate": 7.942386831275721e-05, + "loss": 0.6743, + "step": 3080 + }, + { + "epoch": 1.23, + "learning_rate": 7.921810699588478e-05, + "loss": 0.7004, + "step": 3085 + }, + { + "epoch": 1.23, + "learning_rate": 7.901234567901235e-05, + "loss": 0.6908, + "step": 3090 + }, + { + "epoch": 1.24, + "learning_rate": 7.880658436213993e-05, + "loss": 0.6736, + "step": 3095 + }, + { + "epoch": 1.24, + "learning_rate": 7.860082304526749e-05, + "loss": 0.7153, + "step": 3100 + }, + { + "epoch": 1.24, + "learning_rate": 7.839506172839507e-05, + "loss": 0.7072, + "step": 3105 + }, + { + "epoch": 1.24, + "learning_rate": 7.818930041152264e-05, + "loss": 0.7163, + "step": 3110 + }, + { + "epoch": 1.24, + "learning_rate": 7.79835390946502e-05, + "loss": 0.6996, + "step": 3115 + }, + { + "epoch": 1.25, + "learning_rate": 7.777777777777778e-05, + "loss": 0.7257, + "step": 3120 + }, + { + "epoch": 1.25, + "learning_rate": 7.757201646090535e-05, + "loss": 0.7155, + "step": 3125 + }, + { + "epoch": 1.25, + "learning_rate": 7.736625514403293e-05, + "loss": 0.7068, + "step": 3130 + }, + { + "epoch": 1.25, + "learning_rate": 7.716049382716049e-05, + "loss": 0.6575, + "step": 3135 + }, + { + "epoch": 1.25, + "learning_rate": 7.695473251028807e-05, + "loss": 0.6771, + "step": 3140 + }, + { + "epoch": 1.26, + "learning_rate": 7.674897119341564e-05, + "loss": 0.6976, + "step": 3145 + }, + { + "epoch": 1.26, + "learning_rate": 7.65432098765432e-05, + "loss": 0.6568, + "step": 3150 + }, + { + "epoch": 1.26, + "learning_rate": 7.633744855967078e-05, + "loss": 0.6609, + "step": 3155 + }, + { + "epoch": 1.26, + "learning_rate": 7.613168724279836e-05, + "loss": 0.697, + "step": 3160 + }, + { + "epoch": 1.26, + "learning_rate": 7.592592592592593e-05, + "loss": 0.714, + "step": 3165 + }, + { + "epoch": 1.27, + "learning_rate": 7.57201646090535e-05, + "loss": 0.6829, + "step": 3170 + }, + { + "epoch": 1.27, + "learning_rate": 7.551440329218107e-05, + "loss": 0.6932, + "step": 3175 + }, + { + "epoch": 1.27, + "learning_rate": 7.530864197530865e-05, + "loss": 0.6859, + "step": 3180 + }, + { + "epoch": 1.27, + "learning_rate": 7.510288065843622e-05, + "loss": 0.7117, + "step": 3185 + }, + { + "epoch": 1.27, + "learning_rate": 7.48971193415638e-05, + "loss": 0.7157, + "step": 3190 + }, + { + "epoch": 1.28, + "learning_rate": 7.469135802469136e-05, + "loss": 0.6593, + "step": 3195 + }, + { + "epoch": 1.28, + "learning_rate": 7.448559670781894e-05, + "loss": 0.6683, + "step": 3200 + }, + { + "epoch": 1.28, + "learning_rate": 7.427983539094651e-05, + "loss": 0.6876, + "step": 3205 + }, + { + "epoch": 1.28, + "learning_rate": 7.407407407407407e-05, + "loss": 0.6584, + "step": 3210 + }, + { + "epoch": 1.28, + "learning_rate": 7.386831275720165e-05, + "loss": 0.6816, + "step": 3215 + }, + { + "epoch": 1.29, + "learning_rate": 7.366255144032922e-05, + "loss": 0.6994, + "step": 3220 + }, + { + "epoch": 1.29, + "learning_rate": 7.34567901234568e-05, + "loss": 0.6701, + "step": 3225 + }, + { + "epoch": 1.29, + "learning_rate": 7.325102880658436e-05, + "loss": 0.6869, + "step": 3230 + }, + { + "epoch": 1.29, + "learning_rate": 7.304526748971193e-05, + "loss": 0.6895, + "step": 3235 + }, + { + "epoch": 1.29, + "learning_rate": 7.283950617283951e-05, + "loss": 0.6972, + "step": 3240 + }, + { + "epoch": 1.3, + "learning_rate": 7.263374485596707e-05, + "loss": 0.6849, + "step": 3245 + }, + { + "epoch": 1.3, + "learning_rate": 7.242798353909465e-05, + "loss": 0.6967, + "step": 3250 + }, + { + "epoch": 1.3, + "learning_rate": 7.222222222222222e-05, + "loss": 0.6679, + "step": 3255 + }, + { + "epoch": 1.3, + "learning_rate": 7.20164609053498e-05, + "loss": 0.6683, + "step": 3260 + }, + { + "epoch": 1.3, + "learning_rate": 7.181069958847736e-05, + "loss": 0.6787, + "step": 3265 + }, + { + "epoch": 1.31, + "learning_rate": 7.160493827160494e-05, + "loss": 0.6726, + "step": 3270 + }, + { + "epoch": 1.31, + "learning_rate": 7.139917695473252e-05, + "loss": 0.721, + "step": 3275 + }, + { + "epoch": 1.31, + "learning_rate": 7.119341563786009e-05, + "loss": 0.6865, + "step": 3280 + }, + { + "epoch": 1.31, + "learning_rate": 7.098765432098767e-05, + "loss": 0.7031, + "step": 3285 + }, + { + "epoch": 1.31, + "learning_rate": 7.078189300411523e-05, + "loss": 0.6895, + "step": 3290 + }, + { + "epoch": 1.32, + "learning_rate": 7.05761316872428e-05, + "loss": 0.6983, + "step": 3295 + }, + { + "epoch": 1.32, + "learning_rate": 7.037037037037038e-05, + "loss": 0.6929, + "step": 3300 + }, + { + "epoch": 1.32, + "learning_rate": 7.016460905349794e-05, + "loss": 0.7117, + "step": 3305 + }, + { + "epoch": 1.32, + "learning_rate": 6.995884773662552e-05, + "loss": 0.664, + "step": 3310 + }, + { + "epoch": 1.32, + "learning_rate": 6.975308641975309e-05, + "loss": 0.6645, + "step": 3315 + }, + { + "epoch": 1.33, + "learning_rate": 6.954732510288067e-05, + "loss": 0.6985, + "step": 3320 + }, + { + "epoch": 1.33, + "learning_rate": 6.934156378600823e-05, + "loss": 0.6826, + "step": 3325 + }, + { + "epoch": 1.33, + "learning_rate": 6.91358024691358e-05, + "loss": 0.7324, + "step": 3330 + }, + { + "epoch": 1.33, + "learning_rate": 6.893004115226338e-05, + "loss": 0.6828, + "step": 3335 + }, + { + "epoch": 1.33, + "learning_rate": 6.872427983539094e-05, + "loss": 0.6801, + "step": 3340 + }, + { + "epoch": 1.34, + "learning_rate": 6.851851851851852e-05, + "loss": 0.6923, + "step": 3345 + }, + { + "epoch": 1.34, + "learning_rate": 6.831275720164609e-05, + "loss": 0.6787, + "step": 3350 + }, + { + "epoch": 1.34, + "learning_rate": 6.810699588477366e-05, + "loss": 0.6812, + "step": 3355 + }, + { + "epoch": 1.34, + "learning_rate": 6.790123456790123e-05, + "loss": 0.7059, + "step": 3360 + }, + { + "epoch": 1.34, + "learning_rate": 6.76954732510288e-05, + "loss": 0.6794, + "step": 3365 + }, + { + "epoch": 1.35, + "learning_rate": 6.748971193415638e-05, + "loss": 0.6635, + "step": 3370 + }, + { + "epoch": 1.35, + "learning_rate": 6.728395061728396e-05, + "loss": 0.666, + "step": 3375 + }, + { + "epoch": 1.35, + "learning_rate": 6.707818930041152e-05, + "loss": 0.6909, + "step": 3380 + }, + { + "epoch": 1.35, + "learning_rate": 6.68724279835391e-05, + "loss": 0.7096, + "step": 3385 + }, + { + "epoch": 1.35, + "learning_rate": 6.666666666666667e-05, + "loss": 0.7049, + "step": 3390 + }, + { + "epoch": 1.36, + "learning_rate": 6.646090534979425e-05, + "loss": 0.6801, + "step": 3395 + }, + { + "epoch": 1.36, + "learning_rate": 6.625514403292181e-05, + "loss": 0.7045, + "step": 3400 + }, + { + "epoch": 1.36, + "learning_rate": 6.60493827160494e-05, + "loss": 0.7096, + "step": 3405 + }, + { + "epoch": 1.36, + "learning_rate": 6.584362139917696e-05, + "loss": 0.7192, + "step": 3410 + }, + { + "epoch": 1.36, + "learning_rate": 6.563786008230453e-05, + "loss": 0.6818, + "step": 3415 + }, + { + "epoch": 1.37, + "learning_rate": 6.54320987654321e-05, + "loss": 0.6358, + "step": 3420 + }, + { + "epoch": 1.37, + "learning_rate": 6.522633744855967e-05, + "loss": 0.6674, + "step": 3425 + }, + { + "epoch": 1.37, + "learning_rate": 6.502057613168725e-05, + "loss": 0.684, + "step": 3430 + }, + { + "epoch": 1.37, + "learning_rate": 6.481481481481482e-05, + "loss": 0.6753, + "step": 3435 + }, + { + "epoch": 1.37, + "learning_rate": 6.460905349794238e-05, + "loss": 0.6902, + "step": 3440 + }, + { + "epoch": 1.38, + "learning_rate": 6.440329218106996e-05, + "loss": 0.6664, + "step": 3445 + }, + { + "epoch": 1.38, + "learning_rate": 6.419753086419753e-05, + "loss": 0.684, + "step": 3450 + }, + { + "epoch": 1.38, + "learning_rate": 6.39917695473251e-05, + "loss": 0.682, + "step": 3455 + }, + { + "epoch": 1.38, + "learning_rate": 6.378600823045267e-05, + "loss": 0.6764, + "step": 3460 + }, + { + "epoch": 1.38, + "learning_rate": 6.358024691358025e-05, + "loss": 0.6783, + "step": 3465 + }, + { + "epoch": 1.39, + "learning_rate": 6.337448559670782e-05, + "loss": 0.6962, + "step": 3470 + }, + { + "epoch": 1.39, + "learning_rate": 6.31687242798354e-05, + "loss": 0.6819, + "step": 3475 + }, + { + "epoch": 1.39, + "learning_rate": 6.296296296296296e-05, + "loss": 0.6741, + "step": 3480 + }, + { + "epoch": 1.39, + "learning_rate": 6.275720164609054e-05, + "loss": 0.6754, + "step": 3485 + }, + { + "epoch": 1.39, + "learning_rate": 6.255144032921812e-05, + "loss": 0.6717, + "step": 3490 + }, + { + "epoch": 1.4, + "learning_rate": 6.234567901234569e-05, + "loss": 0.667, + "step": 3495 + }, + { + "epoch": 1.4, + "learning_rate": 6.213991769547325e-05, + "loss": 0.6822, + "step": 3500 + }, + { + "epoch": 1.4, + "learning_rate": 6.193415637860083e-05, + "loss": 0.7055, + "step": 3505 + }, + { + "epoch": 1.4, + "learning_rate": 6.17283950617284e-05, + "loss": 0.6988, + "step": 3510 + }, + { + "epoch": 1.4, + "learning_rate": 6.152263374485598e-05, + "loss": 0.6793, + "step": 3515 + }, + { + "epoch": 1.41, + "learning_rate": 6.131687242798354e-05, + "loss": 0.7093, + "step": 3520 + }, + { + "epoch": 1.41, + "learning_rate": 6.111111111111112e-05, + "loss": 0.694, + "step": 3525 + }, + { + "epoch": 1.41, + "learning_rate": 6.0905349794238687e-05, + "loss": 0.7077, + "step": 3530 + }, + { + "epoch": 1.41, + "learning_rate": 6.069958847736625e-05, + "loss": 0.6938, + "step": 3535 + }, + { + "epoch": 1.41, + "learning_rate": 6.049382716049383e-05, + "loss": 0.6461, + "step": 3540 + }, + { + "epoch": 1.42, + "learning_rate": 6.02880658436214e-05, + "loss": 0.6993, + "step": 3545 + }, + { + "epoch": 1.42, + "learning_rate": 6.0082304526748977e-05, + "loss": 0.6901, + "step": 3550 + }, + { + "epoch": 1.42, + "learning_rate": 5.987654320987654e-05, + "loss": 0.6937, + "step": 3555 + }, + { + "epoch": 1.42, + "learning_rate": 5.9670781893004115e-05, + "loss": 0.6657, + "step": 3560 + }, + { + "epoch": 1.42, + "learning_rate": 5.9465020576131694e-05, + "loss": 0.6593, + "step": 3565 + }, + { + "epoch": 1.43, + "learning_rate": 5.925925925925926e-05, + "loss": 0.7056, + "step": 3570 + }, + { + "epoch": 1.43, + "learning_rate": 5.905349794238684e-05, + "loss": 0.6395, + "step": 3575 + }, + { + "epoch": 1.43, + "learning_rate": 5.8847736625514405e-05, + "loss": 0.6608, + "step": 3580 + }, + { + "epoch": 1.43, + "learning_rate": 5.8641975308641984e-05, + "loss": 0.7007, + "step": 3585 + }, + { + "epoch": 1.43, + "learning_rate": 5.843621399176955e-05, + "loss": 0.6605, + "step": 3590 + }, + { + "epoch": 1.43, + "learning_rate": 5.8230452674897116e-05, + "loss": 0.6752, + "step": 3595 + }, + { + "epoch": 1.44, + "learning_rate": 5.8024691358024695e-05, + "loss": 0.6736, + "step": 3600 + }, + { + "epoch": 1.44, + "learning_rate": 5.781893004115226e-05, + "loss": 0.671, + "step": 3605 + }, + { + "epoch": 1.44, + "learning_rate": 5.761316872427984e-05, + "loss": 0.6551, + "step": 3610 + }, + { + "epoch": 1.44, + "learning_rate": 5.740740740740741e-05, + "loss": 0.7053, + "step": 3615 + }, + { + "epoch": 1.44, + "learning_rate": 5.720164609053498e-05, + "loss": 0.6856, + "step": 3620 + }, + { + "epoch": 1.45, + "learning_rate": 5.699588477366256e-05, + "loss": 0.671, + "step": 3625 + }, + { + "epoch": 1.45, + "learning_rate": 5.679012345679012e-05, + "loss": 0.6763, + "step": 3630 + }, + { + "epoch": 1.45, + "learning_rate": 5.65843621399177e-05, + "loss": 0.6812, + "step": 3635 + }, + { + "epoch": 1.45, + "learning_rate": 5.637860082304527e-05, + "loss": 0.7407, + "step": 3640 + }, + { + "epoch": 1.45, + "learning_rate": 5.617283950617285e-05, + "loss": 0.7436, + "step": 3645 + }, + { + "epoch": 1.46, + "learning_rate": 5.596707818930041e-05, + "loss": 0.682, + "step": 3650 + }, + { + "epoch": 1.46, + "learning_rate": 5.576131687242798e-05, + "loss": 0.6808, + "step": 3655 + }, + { + "epoch": 1.46, + "learning_rate": 5.555555555555556e-05, + "loss": 0.6696, + "step": 3660 + }, + { + "epoch": 1.46, + "learning_rate": 5.534979423868313e-05, + "loss": 0.7207, + "step": 3665 + }, + { + "epoch": 1.46, + "learning_rate": 5.51440329218107e-05, + "loss": 0.6737, + "step": 3670 + }, + { + "epoch": 1.47, + "learning_rate": 5.4938271604938276e-05, + "loss": 0.6874, + "step": 3675 + }, + { + "epoch": 1.47, + "learning_rate": 5.473251028806584e-05, + "loss": 0.6652, + "step": 3680 + }, + { + "epoch": 1.47, + "learning_rate": 5.452674897119342e-05, + "loss": 0.6739, + "step": 3685 + }, + { + "epoch": 1.47, + "learning_rate": 5.4320987654320986e-05, + "loss": 0.7039, + "step": 3690 + }, + { + "epoch": 1.47, + "learning_rate": 5.4115226337448566e-05, + "loss": 0.696, + "step": 3695 + }, + { + "epoch": 1.48, + "learning_rate": 5.390946502057613e-05, + "loss": 0.6887, + "step": 3700 + }, + { + "epoch": 1.48, + "learning_rate": 5.370370370370371e-05, + "loss": 0.6653, + "step": 3705 + }, + { + "epoch": 1.48, + "learning_rate": 5.3497942386831277e-05, + "loss": 0.6987, + "step": 3710 + }, + { + "epoch": 1.48, + "learning_rate": 5.329218106995885e-05, + "loss": 0.6831, + "step": 3715 + }, + { + "epoch": 1.48, + "learning_rate": 5.308641975308642e-05, + "loss": 0.687, + "step": 3720 + }, + { + "epoch": 1.49, + "learning_rate": 5.2880658436213994e-05, + "loss": 0.6848, + "step": 3725 + }, + { + "epoch": 1.49, + "learning_rate": 5.267489711934157e-05, + "loss": 0.6819, + "step": 3730 + }, + { + "epoch": 1.49, + "learning_rate": 5.246913580246914e-05, + "loss": 0.662, + "step": 3735 + }, + { + "epoch": 1.49, + "learning_rate": 5.2263374485596705e-05, + "loss": 0.6462, + "step": 3740 + }, + { + "epoch": 1.49, + "learning_rate": 5.2057613168724284e-05, + "loss": 0.684, + "step": 3745 + }, + { + "epoch": 1.5, + "learning_rate": 5.185185185185185e-05, + "loss": 0.721, + "step": 3750 + }, + { + "epoch": 1.5, + "learning_rate": 5.164609053497943e-05, + "loss": 0.6998, + "step": 3755 + }, + { + "epoch": 1.5, + "learning_rate": 5.1440329218106995e-05, + "loss": 0.6922, + "step": 3760 + }, + { + "epoch": 1.5, + "learning_rate": 5.1234567901234574e-05, + "loss": 0.6674, + "step": 3765 + }, + { + "epoch": 1.5, + "learning_rate": 5.102880658436214e-05, + "loss": 0.7022, + "step": 3770 + }, + { + "epoch": 1.51, + "learning_rate": 5.082304526748971e-05, + "loss": 0.6753, + "step": 3775 + }, + { + "epoch": 1.51, + "learning_rate": 5.061728395061729e-05, + "loss": 0.6853, + "step": 3780 + }, + { + "epoch": 1.51, + "learning_rate": 5.041152263374486e-05, + "loss": 0.6669, + "step": 3785 + }, + { + "epoch": 1.51, + "learning_rate": 5.020576131687244e-05, + "loss": 0.6678, + "step": 3790 + }, + { + "epoch": 1.51, + "learning_rate": 5e-05, + "loss": 0.6881, + "step": 3795 + }, + { + "epoch": 1.52, + "learning_rate": 4.9794238683127575e-05, + "loss": 0.6959, + "step": 3800 + }, + { + "epoch": 1.52, + "learning_rate": 4.958847736625515e-05, + "loss": 0.695, + "step": 3805 + }, + { + "epoch": 1.52, + "learning_rate": 4.938271604938271e-05, + "loss": 0.6927, + "step": 3810 + }, + { + "epoch": 1.52, + "learning_rate": 4.9176954732510286e-05, + "loss": 0.7039, + "step": 3815 + }, + { + "epoch": 1.52, + "learning_rate": 4.8971193415637865e-05, + "loss": 0.6494, + "step": 3820 + }, + { + "epoch": 1.53, + "learning_rate": 4.876543209876544e-05, + "loss": 0.7015, + "step": 3825 + }, + { + "epoch": 1.53, + "learning_rate": 4.855967078189301e-05, + "loss": 0.6901, + "step": 3830 + }, + { + "epoch": 1.53, + "learning_rate": 4.835390946502058e-05, + "loss": 0.6618, + "step": 3835 + }, + { + "epoch": 1.53, + "learning_rate": 4.814814814814815e-05, + "loss": 0.6723, + "step": 3840 + }, + { + "epoch": 1.53, + "learning_rate": 4.794238683127572e-05, + "loss": 0.7196, + "step": 3845 + }, + { + "epoch": 1.54, + "learning_rate": 4.773662551440329e-05, + "loss": 0.6867, + "step": 3850 + }, + { + "epoch": 1.54, + "learning_rate": 4.7530864197530866e-05, + "loss": 0.6921, + "step": 3855 + }, + { + "epoch": 1.54, + "learning_rate": 4.732510288065844e-05, + "loss": 0.693, + "step": 3860 + }, + { + "epoch": 1.54, + "learning_rate": 4.711934156378601e-05, + "loss": 0.7031, + "step": 3865 + }, + { + "epoch": 1.54, + "learning_rate": 4.691358024691358e-05, + "loss": 0.7023, + "step": 3870 + }, + { + "epoch": 1.55, + "learning_rate": 4.6707818930041156e-05, + "loss": 0.6754, + "step": 3875 + }, + { + "epoch": 1.55, + "learning_rate": 4.650205761316873e-05, + "loss": 0.6985, + "step": 3880 + }, + { + "epoch": 1.55, + "learning_rate": 4.62962962962963e-05, + "loss": 0.665, + "step": 3885 + }, + { + "epoch": 1.55, + "learning_rate": 4.609053497942387e-05, + "loss": 0.6902, + "step": 3890 + }, + { + "epoch": 1.55, + "learning_rate": 4.5884773662551446e-05, + "loss": 0.7173, + "step": 3895 + }, + { + "epoch": 1.56, + "learning_rate": 4.567901234567901e-05, + "loss": 0.7121, + "step": 3900 + }, + { + "epoch": 1.56, + "learning_rate": 4.5473251028806584e-05, + "loss": 0.6939, + "step": 3905 + }, + { + "epoch": 1.56, + "learning_rate": 4.5267489711934157e-05, + "loss": 0.7093, + "step": 3910 + }, + { + "epoch": 1.56, + "learning_rate": 4.506172839506173e-05, + "loss": 0.6792, + "step": 3915 + }, + { + "epoch": 1.56, + "learning_rate": 4.48559670781893e-05, + "loss": 0.6737, + "step": 3920 + }, + { + "epoch": 1.57, + "learning_rate": 4.4650205761316874e-05, + "loss": 0.6858, + "step": 3925 + }, + { + "epoch": 1.57, + "learning_rate": 4.4444444444444447e-05, + "loss": 0.6776, + "step": 3930 + }, + { + "epoch": 1.57, + "learning_rate": 4.423868312757202e-05, + "loss": 0.6772, + "step": 3935 + }, + { + "epoch": 1.57, + "learning_rate": 4.403292181069959e-05, + "loss": 0.6667, + "step": 3940 + }, + { + "epoch": 1.57, + "learning_rate": 4.3827160493827164e-05, + "loss": 0.6892, + "step": 3945 + }, + { + "epoch": 1.58, + "learning_rate": 4.3621399176954737e-05, + "loss": 0.6652, + "step": 3950 + }, + { + "epoch": 1.58, + "learning_rate": 4.341563786008231e-05, + "loss": 0.6892, + "step": 3955 + }, + { + "epoch": 1.58, + "learning_rate": 4.3209876543209875e-05, + "loss": 0.6917, + "step": 3960 + }, + { + "epoch": 1.58, + "learning_rate": 4.300411522633745e-05, + "loss": 0.6708, + "step": 3965 + }, + { + "epoch": 1.58, + "learning_rate": 4.279835390946502e-05, + "loss": 0.6817, + "step": 3970 + }, + { + "epoch": 1.59, + "learning_rate": 4.259259259259259e-05, + "loss": 0.6761, + "step": 3975 + }, + { + "epoch": 1.59, + "learning_rate": 4.2386831275720165e-05, + "loss": 0.6638, + "step": 3980 + }, + { + "epoch": 1.59, + "learning_rate": 4.2181069958847744e-05, + "loss": 0.6707, + "step": 3985 + }, + { + "epoch": 1.59, + "learning_rate": 4.197530864197531e-05, + "loss": 0.6796, + "step": 3990 + }, + { + "epoch": 1.59, + "learning_rate": 4.176954732510288e-05, + "loss": 0.6903, + "step": 3995 + }, + { + "epoch": 1.6, + "learning_rate": 4.1563786008230455e-05, + "loss": 0.7081, + "step": 4000 + }, + { + "epoch": 1.6, + "learning_rate": 4.135802469135803e-05, + "loss": 0.6528, + "step": 4005 + }, + { + "epoch": 1.6, + "learning_rate": 4.11522633744856e-05, + "loss": 0.6613, + "step": 4010 + }, + { + "epoch": 1.6, + "learning_rate": 4.094650205761317e-05, + "loss": 0.6694, + "step": 4015 + }, + { + "epoch": 1.6, + "learning_rate": 4.074074074074074e-05, + "loss": 0.6982, + "step": 4020 + }, + { + "epoch": 1.61, + "learning_rate": 4.053497942386831e-05, + "loss": 0.6722, + "step": 4025 + }, + { + "epoch": 1.61, + "learning_rate": 4.032921810699588e-05, + "loss": 0.6505, + "step": 4030 + }, + { + "epoch": 1.61, + "learning_rate": 4.012345679012346e-05, + "loss": 0.6747, + "step": 4035 + }, + { + "epoch": 1.61, + "learning_rate": 3.9917695473251035e-05, + "loss": 0.6459, + "step": 4040 + }, + { + "epoch": 1.61, + "learning_rate": 3.971193415637861e-05, + "loss": 0.6859, + "step": 4045 + }, + { + "epoch": 1.62, + "learning_rate": 3.950617283950617e-05, + "loss": 0.6774, + "step": 4050 + }, + { + "epoch": 1.62, + "learning_rate": 3.9300411522633746e-05, + "loss": 0.678, + "step": 4055 + }, + { + "epoch": 1.62, + "learning_rate": 3.909465020576132e-05, + "loss": 0.678, + "step": 4060 + }, + { + "epoch": 1.62, + "learning_rate": 3.888888888888889e-05, + "loss": 0.7204, + "step": 4065 + }, + { + "epoch": 1.62, + "learning_rate": 3.868312757201646e-05, + "loss": 0.68, + "step": 4070 + }, + { + "epoch": 1.63, + "learning_rate": 3.8477366255144036e-05, + "loss": 0.6797, + "step": 4075 + }, + { + "epoch": 1.63, + "learning_rate": 3.82716049382716e-05, + "loss": 0.6884, + "step": 4080 + }, + { + "epoch": 1.63, + "learning_rate": 3.806584362139918e-05, + "loss": 0.6749, + "step": 4085 + }, + { + "epoch": 1.63, + "learning_rate": 3.786008230452675e-05, + "loss": 0.7162, + "step": 4090 + }, + { + "epoch": 1.63, + "learning_rate": 3.7654320987654326e-05, + "loss": 0.6702, + "step": 4095 + }, + { + "epoch": 1.64, + "learning_rate": 3.74485596707819e-05, + "loss": 0.7014, + "step": 4100 + }, + { + "epoch": 1.64, + "learning_rate": 3.724279835390947e-05, + "loss": 0.7031, + "step": 4105 + }, + { + "epoch": 1.64, + "learning_rate": 3.7037037037037037e-05, + "loss": 0.6613, + "step": 4110 + }, + { + "epoch": 1.64, + "learning_rate": 3.683127572016461e-05, + "loss": 0.652, + "step": 4115 + }, + { + "epoch": 1.64, + "learning_rate": 3.662551440329218e-05, + "loss": 0.6591, + "step": 4120 + }, + { + "epoch": 1.65, + "learning_rate": 3.6419753086419754e-05, + "loss": 0.6688, + "step": 4125 + }, + { + "epoch": 1.65, + "learning_rate": 3.6213991769547327e-05, + "loss": 0.6843, + "step": 4130 + }, + { + "epoch": 1.65, + "learning_rate": 3.60082304526749e-05, + "loss": 0.6706, + "step": 4135 + }, + { + "epoch": 1.65, + "learning_rate": 3.580246913580247e-05, + "loss": 0.6974, + "step": 4140 + }, + { + "epoch": 1.65, + "learning_rate": 3.5596707818930044e-05, + "loss": 0.6739, + "step": 4145 + }, + { + "epoch": 1.66, + "learning_rate": 3.539094650205762e-05, + "loss": 0.6787, + "step": 4150 + }, + { + "epoch": 1.66, + "learning_rate": 3.518518518518519e-05, + "loss": 0.695, + "step": 4155 + }, + { + "epoch": 1.66, + "learning_rate": 3.497942386831276e-05, + "loss": 0.7012, + "step": 4160 + }, + { + "epoch": 1.66, + "learning_rate": 3.4773662551440334e-05, + "loss": 0.7137, + "step": 4165 + }, + { + "epoch": 1.66, + "learning_rate": 3.45679012345679e-05, + "loss": 0.6919, + "step": 4170 + }, + { + "epoch": 1.67, + "learning_rate": 3.436213991769547e-05, + "loss": 0.7045, + "step": 4175 + }, + { + "epoch": 1.67, + "learning_rate": 3.4156378600823045e-05, + "loss": 0.6638, + "step": 4180 + }, + { + "epoch": 1.67, + "learning_rate": 3.395061728395062e-05, + "loss": 0.6918, + "step": 4185 + }, + { + "epoch": 1.67, + "learning_rate": 3.374485596707819e-05, + "loss": 0.67, + "step": 4190 + }, + { + "epoch": 1.67, + "learning_rate": 3.353909465020576e-05, + "loss": 0.6835, + "step": 4195 + }, + { + "epoch": 1.68, + "learning_rate": 3.3333333333333335e-05, + "loss": 0.6854, + "step": 4200 + }, + { + "epoch": 1.68, + "learning_rate": 3.312757201646091e-05, + "loss": 0.6846, + "step": 4205 + }, + { + "epoch": 1.68, + "learning_rate": 3.292181069958848e-05, + "loss": 0.6707, + "step": 4210 + }, + { + "epoch": 1.68, + "learning_rate": 3.271604938271605e-05, + "loss": 0.7155, + "step": 4215 + }, + { + "epoch": 1.68, + "learning_rate": 3.2510288065843625e-05, + "loss": 0.6985, + "step": 4220 + }, + { + "epoch": 1.69, + "learning_rate": 3.230452674897119e-05, + "loss": 0.6842, + "step": 4225 + }, + { + "epoch": 1.69, + "learning_rate": 3.209876543209876e-05, + "loss": 0.6898, + "step": 4230 + }, + { + "epoch": 1.69, + "learning_rate": 3.1893004115226336e-05, + "loss": 0.6707, + "step": 4235 + }, + { + "epoch": 1.69, + "learning_rate": 3.168724279835391e-05, + "loss": 0.6979, + "step": 4240 + }, + { + "epoch": 1.69, + "learning_rate": 3.148148148148148e-05, + "loss": 0.6899, + "step": 4245 + }, + { + "epoch": 1.7, + "learning_rate": 3.127572016460906e-05, + "loss": 0.6697, + "step": 4250 + }, + { + "epoch": 1.7, + "learning_rate": 3.1069958847736626e-05, + "loss": 0.6819, + "step": 4255 + }, + { + "epoch": 1.7, + "learning_rate": 3.08641975308642e-05, + "loss": 0.6913, + "step": 4260 + }, + { + "epoch": 1.7, + "learning_rate": 3.065843621399177e-05, + "loss": 0.6894, + "step": 4265 + }, + { + "epoch": 1.7, + "learning_rate": 3.0452674897119343e-05, + "loss": 0.6801, + "step": 4270 + }, + { + "epoch": 1.71, + "learning_rate": 3.0246913580246916e-05, + "loss": 0.6932, + "step": 4275 + }, + { + "epoch": 1.71, + "learning_rate": 3.0041152263374488e-05, + "loss": 0.6567, + "step": 4280 + }, + { + "epoch": 1.71, + "learning_rate": 2.9835390946502057e-05, + "loss": 0.6416, + "step": 4285 + }, + { + "epoch": 1.71, + "learning_rate": 2.962962962962963e-05, + "loss": 0.6619, + "step": 4290 + }, + { + "epoch": 1.71, + "learning_rate": 2.9423868312757202e-05, + "loss": 0.6746, + "step": 4295 + }, + { + "epoch": 1.72, + "learning_rate": 2.9218106995884775e-05, + "loss": 0.6725, + "step": 4300 + }, + { + "epoch": 1.72, + "learning_rate": 2.9012345679012347e-05, + "loss": 0.695, + "step": 4305 + }, + { + "epoch": 1.72, + "learning_rate": 2.880658436213992e-05, + "loss": 0.68, + "step": 4310 + }, + { + "epoch": 1.72, + "learning_rate": 2.860082304526749e-05, + "loss": 0.6669, + "step": 4315 + }, + { + "epoch": 1.72, + "learning_rate": 2.839506172839506e-05, + "loss": 0.6626, + "step": 4320 + }, + { + "epoch": 1.73, + "learning_rate": 2.8189300411522634e-05, + "loss": 0.6871, + "step": 4325 + }, + { + "epoch": 1.73, + "learning_rate": 2.7983539094650207e-05, + "loss": 0.6719, + "step": 4330 + }, + { + "epoch": 1.73, + "learning_rate": 2.777777777777778e-05, + "loss": 0.6603, + "step": 4335 + }, + { + "epoch": 1.73, + "learning_rate": 2.757201646090535e-05, + "loss": 0.6378, + "step": 4340 + }, + { + "epoch": 1.73, + "learning_rate": 2.736625514403292e-05, + "loss": 0.6759, + "step": 4345 + }, + { + "epoch": 1.74, + "learning_rate": 2.7160493827160493e-05, + "loss": 0.6704, + "step": 4350 + }, + { + "epoch": 1.74, + "learning_rate": 2.6954732510288066e-05, + "loss": 0.6725, + "step": 4355 + }, + { + "epoch": 1.74, + "learning_rate": 2.6748971193415638e-05, + "loss": 0.6659, + "step": 4360 + }, + { + "epoch": 1.74, + "learning_rate": 2.654320987654321e-05, + "loss": 0.664, + "step": 4365 + }, + { + "epoch": 1.74, + "learning_rate": 2.6337448559670787e-05, + "loss": 0.7316, + "step": 4370 + }, + { + "epoch": 1.75, + "learning_rate": 2.6131687242798352e-05, + "loss": 0.6621, + "step": 4375 + }, + { + "epoch": 1.75, + "learning_rate": 2.5925925925925925e-05, + "loss": 0.6822, + "step": 4380 + }, + { + "epoch": 1.75, + "learning_rate": 2.5720164609053497e-05, + "loss": 0.6694, + "step": 4385 + }, + { + "epoch": 1.75, + "learning_rate": 2.551440329218107e-05, + "loss": 0.6719, + "step": 4390 + }, + { + "epoch": 1.75, + "learning_rate": 2.5308641975308646e-05, + "loss": 0.6687, + "step": 4395 + }, + { + "epoch": 1.76, + "learning_rate": 2.510288065843622e-05, + "loss": 0.6878, + "step": 4400 + }, + { + "epoch": 1.76, + "learning_rate": 2.4897119341563787e-05, + "loss": 0.6956, + "step": 4405 + }, + { + "epoch": 1.76, + "learning_rate": 2.4691358024691357e-05, + "loss": 0.6976, + "step": 4410 + }, + { + "epoch": 1.76, + "learning_rate": 2.4485596707818932e-05, + "loss": 0.6969, + "step": 4415 + }, + { + "epoch": 1.76, + "learning_rate": 2.4279835390946505e-05, + "loss": 0.685, + "step": 4420 + }, + { + "epoch": 1.77, + "learning_rate": 2.4074074074074074e-05, + "loss": 0.6835, + "step": 4425 + }, + { + "epoch": 1.77, + "learning_rate": 2.3868312757201647e-05, + "loss": 0.7002, + "step": 4430 + }, + { + "epoch": 1.77, + "learning_rate": 2.366255144032922e-05, + "loss": 0.6657, + "step": 4435 + }, + { + "epoch": 1.77, + "learning_rate": 2.345679012345679e-05, + "loss": 0.6524, + "step": 4440 + }, + { + "epoch": 1.77, + "learning_rate": 2.3251028806584364e-05, + "loss": 0.6672, + "step": 4445 + }, + { + "epoch": 1.78, + "learning_rate": 2.3045267489711937e-05, + "loss": 0.7033, + "step": 4450 + }, + { + "epoch": 1.78, + "learning_rate": 2.2839506172839506e-05, + "loss": 0.6922, + "step": 4455 + }, + { + "epoch": 1.78, + "learning_rate": 2.2633744855967078e-05, + "loss": 0.6567, + "step": 4460 + }, + { + "epoch": 1.78, + "learning_rate": 2.242798353909465e-05, + "loss": 0.6764, + "step": 4465 + }, + { + "epoch": 1.78, + "learning_rate": 2.2222222222222223e-05, + "loss": 0.7066, + "step": 4470 + }, + { + "epoch": 1.79, + "learning_rate": 2.2016460905349796e-05, + "loss": 0.7036, + "step": 4475 + }, + { + "epoch": 1.79, + "learning_rate": 2.1810699588477368e-05, + "loss": 0.6716, + "step": 4480 + }, + { + "epoch": 1.79, + "learning_rate": 2.1604938271604937e-05, + "loss": 0.6954, + "step": 4485 + }, + { + "epoch": 1.79, + "learning_rate": 2.139917695473251e-05, + "loss": 0.6752, + "step": 4490 + }, + { + "epoch": 1.79, + "learning_rate": 2.1193415637860082e-05, + "loss": 0.6845, + "step": 4495 + }, + { + "epoch": 1.8, + "learning_rate": 2.0987654320987655e-05, + "loss": 0.6928, + "step": 4500 + }, + { + "epoch": 1.8, + "learning_rate": 2.0781893004115227e-05, + "loss": 0.6722, + "step": 4505 + }, + { + "epoch": 1.8, + "learning_rate": 2.05761316872428e-05, + "loss": 0.7046, + "step": 4510 + }, + { + "epoch": 1.8, + "learning_rate": 2.037037037037037e-05, + "loss": 0.6874, + "step": 4515 + }, + { + "epoch": 1.8, + "learning_rate": 2.016460905349794e-05, + "loss": 0.6317, + "step": 4520 + }, + { + "epoch": 1.81, + "learning_rate": 1.9958847736625517e-05, + "loss": 0.6956, + "step": 4525 + }, + { + "epoch": 1.81, + "learning_rate": 1.9753086419753087e-05, + "loss": 0.6954, + "step": 4530 + }, + { + "epoch": 1.81, + "learning_rate": 1.954732510288066e-05, + "loss": 0.6806, + "step": 4535 + }, + { + "epoch": 1.81, + "learning_rate": 1.934156378600823e-05, + "loss": 0.6831, + "step": 4540 + }, + { + "epoch": 1.81, + "learning_rate": 1.91358024691358e-05, + "loss": 0.6942, + "step": 4545 + }, + { + "epoch": 1.82, + "learning_rate": 1.8930041152263377e-05, + "loss": 0.6806, + "step": 4550 + }, + { + "epoch": 1.82, + "learning_rate": 1.872427983539095e-05, + "loss": 0.6711, + "step": 4555 + }, + { + "epoch": 1.82, + "learning_rate": 1.8518518518518518e-05, + "loss": 0.7262, + "step": 4560 + }, + { + "epoch": 1.82, + "learning_rate": 1.831275720164609e-05, + "loss": 0.6546, + "step": 4565 + }, + { + "epoch": 1.82, + "learning_rate": 1.8106995884773663e-05, + "loss": 0.6538, + "step": 4570 + }, + { + "epoch": 1.83, + "learning_rate": 1.7901234567901236e-05, + "loss": 0.7062, + "step": 4575 + }, + { + "epoch": 1.83, + "learning_rate": 1.769547325102881e-05, + "loss": 0.6776, + "step": 4580 + }, + { + "epoch": 1.83, + "learning_rate": 1.748971193415638e-05, + "loss": 0.663, + "step": 4585 + }, + { + "epoch": 1.83, + "learning_rate": 1.728395061728395e-05, + "loss": 0.6985, + "step": 4590 + }, + { + "epoch": 1.83, + "learning_rate": 1.7078189300411522e-05, + "loss": 0.6924, + "step": 4595 + }, + { + "epoch": 1.84, + "learning_rate": 1.6872427983539095e-05, + "loss": 0.7159, + "step": 4600 + }, + { + "epoch": 1.84, + "learning_rate": 1.6666666666666667e-05, + "loss": 0.6842, + "step": 4605 + }, + { + "epoch": 1.84, + "learning_rate": 1.646090534979424e-05, + "loss": 0.6683, + "step": 4610 + }, + { + "epoch": 1.84, + "learning_rate": 1.6255144032921812e-05, + "loss": 0.6516, + "step": 4615 + }, + { + "epoch": 1.84, + "learning_rate": 1.604938271604938e-05, + "loss": 0.6851, + "step": 4620 + }, + { + "epoch": 1.85, + "learning_rate": 1.5843621399176954e-05, + "loss": 0.6949, + "step": 4625 + }, + { + "epoch": 1.85, + "learning_rate": 1.563786008230453e-05, + "loss": 0.6618, + "step": 4630 + }, + { + "epoch": 1.85, + "learning_rate": 1.54320987654321e-05, + "loss": 0.6703, + "step": 4635 + }, + { + "epoch": 1.85, + "learning_rate": 1.5226337448559672e-05, + "loss": 0.673, + "step": 4640 + }, + { + "epoch": 1.85, + "learning_rate": 1.5020576131687244e-05, + "loss": 0.6818, + "step": 4645 + }, + { + "epoch": 1.86, + "learning_rate": 1.4814814814814815e-05, + "loss": 0.6987, + "step": 4650 + }, + { + "epoch": 1.86, + "learning_rate": 1.4609053497942387e-05, + "loss": 0.6996, + "step": 4655 + }, + { + "epoch": 1.86, + "learning_rate": 1.440329218106996e-05, + "loss": 0.6698, + "step": 4660 + }, + { + "epoch": 1.86, + "learning_rate": 1.419753086419753e-05, + "loss": 0.6889, + "step": 4665 + }, + { + "epoch": 1.86, + "learning_rate": 1.3991769547325103e-05, + "loss": 0.69, + "step": 4670 + }, + { + "epoch": 1.87, + "learning_rate": 1.3786008230452676e-05, + "loss": 0.657, + "step": 4675 + }, + { + "epoch": 1.87, + "learning_rate": 1.3580246913580247e-05, + "loss": 0.6906, + "step": 4680 + }, + { + "epoch": 1.87, + "learning_rate": 1.3374485596707819e-05, + "loss": 0.6922, + "step": 4685 + }, + { + "epoch": 1.87, + "learning_rate": 1.3168724279835393e-05, + "loss": 0.671, + "step": 4690 + }, + { + "epoch": 1.87, + "learning_rate": 1.2962962962962962e-05, + "loss": 0.7035, + "step": 4695 + }, + { + "epoch": 1.88, + "learning_rate": 1.2757201646090535e-05, + "loss": 0.6989, + "step": 4700 + }, + { + "epoch": 1.88, + "learning_rate": 1.255144032921811e-05, + "loss": 0.7081, + "step": 4705 + }, + { + "epoch": 1.88, + "learning_rate": 1.2345679012345678e-05, + "loss": 0.6791, + "step": 4710 + }, + { + "epoch": 1.88, + "learning_rate": 1.2139917695473252e-05, + "loss": 0.6594, + "step": 4715 + }, + { + "epoch": 1.88, + "learning_rate": 1.1934156378600823e-05, + "loss": 0.6868, + "step": 4720 + }, + { + "epoch": 1.89, + "learning_rate": 1.1728395061728396e-05, + "loss": 0.6884, + "step": 4725 + }, + { + "epoch": 1.89, + "learning_rate": 1.1522633744855968e-05, + "loss": 0.7087, + "step": 4730 + }, + { + "epoch": 1.89, + "learning_rate": 1.1316872427983539e-05, + "loss": 0.6753, + "step": 4735 + }, + { + "epoch": 1.89, + "learning_rate": 1.1111111111111112e-05, + "loss": 0.6763, + "step": 4740 + }, + { + "epoch": 1.89, + "learning_rate": 1.0905349794238684e-05, + "loss": 0.7185, + "step": 4745 + }, + { + "epoch": 1.9, + "learning_rate": 1.0699588477366255e-05, + "loss": 0.7175, + "step": 4750 + }, + { + "epoch": 1.9, + "learning_rate": 1.0493827160493827e-05, + "loss": 0.6795, + "step": 4755 + }, + { + "epoch": 1.9, + "learning_rate": 1.02880658436214e-05, + "loss": 0.697, + "step": 4760 + }, + { + "epoch": 1.9, + "learning_rate": 1.008230452674897e-05, + "loss": 0.6923, + "step": 4765 + }, + { + "epoch": 1.9, + "learning_rate": 9.876543209876543e-06, + "loss": 0.6987, + "step": 4770 + }, + { + "epoch": 1.91, + "learning_rate": 9.670781893004116e-06, + "loss": 0.6644, + "step": 4775 + }, + { + "epoch": 1.91, + "learning_rate": 9.465020576131688e-06, + "loss": 0.6703, + "step": 4780 + }, + { + "epoch": 1.91, + "learning_rate": 9.259259259259259e-06, + "loss": 0.6659, + "step": 4785 + }, + { + "epoch": 1.91, + "learning_rate": 9.053497942386832e-06, + "loss": 0.6619, + "step": 4790 + }, + { + "epoch": 1.91, + "learning_rate": 8.847736625514404e-06, + "loss": 0.694, + "step": 4795 + }, + { + "epoch": 1.92, + "learning_rate": 8.641975308641975e-06, + "loss": 0.6688, + "step": 4800 + }, + { + "epoch": 1.92, + "learning_rate": 8.436213991769547e-06, + "loss": 0.7193, + "step": 4805 + }, + { + "epoch": 1.92, + "learning_rate": 8.23045267489712e-06, + "loss": 0.6711, + "step": 4810 + }, + { + "epoch": 1.92, + "learning_rate": 8.02469135802469e-06, + "loss": 0.6951, + "step": 4815 + }, + { + "epoch": 1.92, + "learning_rate": 7.818930041152265e-06, + "loss": 0.6955, + "step": 4820 + }, + { + "epoch": 1.93, + "learning_rate": 7.613168724279836e-06, + "loss": 0.6694, + "step": 4825 + }, + { + "epoch": 1.93, + "learning_rate": 7.4074074074074075e-06, + "loss": 0.6918, + "step": 4830 + }, + { + "epoch": 1.93, + "learning_rate": 7.20164609053498e-06, + "loss": 0.6723, + "step": 4835 + }, + { + "epoch": 1.93, + "learning_rate": 6.995884773662552e-06, + "loss": 0.6961, + "step": 4840 + }, + { + "epoch": 1.93, + "learning_rate": 6.790123456790123e-06, + "loss": 0.6864, + "step": 4845 + }, + { + "epoch": 1.94, + "learning_rate": 6.584362139917697e-06, + "loss": 0.6814, + "step": 4850 + }, + { + "epoch": 1.94, + "learning_rate": 6.3786008230452675e-06, + "loss": 0.6628, + "step": 4855 + }, + { + "epoch": 1.94, + "learning_rate": 6.172839506172839e-06, + "loss": 0.6854, + "step": 4860 + }, + { + "epoch": 1.94, + "learning_rate": 5.967078189300412e-06, + "loss": 0.6722, + "step": 4865 + }, + { + "epoch": 1.94, + "learning_rate": 5.761316872427984e-06, + "loss": 0.6889, + "step": 4870 + }, + { + "epoch": 1.95, + "learning_rate": 5.555555555555556e-06, + "loss": 0.6729, + "step": 4875 + }, + { + "epoch": 1.95, + "learning_rate": 5.3497942386831275e-06, + "loss": 0.684, + "step": 4880 + }, + { + "epoch": 1.95, + "learning_rate": 5.1440329218107e-06, + "loss": 0.6878, + "step": 4885 + }, + { + "epoch": 1.95, + "learning_rate": 4.938271604938272e-06, + "loss": 0.7092, + "step": 4890 + }, + { + "epoch": 1.95, + "learning_rate": 4.732510288065844e-06, + "loss": 0.6773, + "step": 4895 + }, + { + "epoch": 1.96, + "learning_rate": 4.526748971193416e-06, + "loss": 0.7095, + "step": 4900 + }, + { + "epoch": 1.96, + "learning_rate": 4.3209876543209875e-06, + "loss": 0.6731, + "step": 4905 + }, + { + "epoch": 1.96, + "learning_rate": 4.11522633744856e-06, + "loss": 0.682, + "step": 4910 + }, + { + "epoch": 1.96, + "learning_rate": 3.9094650205761325e-06, + "loss": 0.6868, + "step": 4915 + }, + { + "epoch": 1.96, + "learning_rate": 3.7037037037037037e-06, + "loss": 0.6764, + "step": 4920 + }, + { + "epoch": 1.97, + "learning_rate": 3.497942386831276e-06, + "loss": 0.6804, + "step": 4925 + }, + { + "epoch": 1.97, + "learning_rate": 3.2921810699588483e-06, + "loss": 0.6904, + "step": 4930 + }, + { + "epoch": 1.97, + "learning_rate": 3.0864197530864196e-06, + "loss": 0.6742, + "step": 4935 + }, + { + "epoch": 1.97, + "learning_rate": 2.880658436213992e-06, + "loss": 0.674, + "step": 4940 + }, + { + "epoch": 1.97, + "learning_rate": 2.6748971193415637e-06, + "loss": 0.7115, + "step": 4945 + }, + { + "epoch": 1.98, + "learning_rate": 2.469135802469136e-06, + "loss": 0.6989, + "step": 4950 + }, + { + "epoch": 1.98, + "learning_rate": 2.263374485596708e-06, + "loss": 0.6408, + "step": 4955 + }, + { + "epoch": 1.98, + "learning_rate": 2.05761316872428e-06, + "loss": 0.6561, + "step": 4960 + }, + { + "epoch": 1.98, + "learning_rate": 1.8518518518518519e-06, + "loss": 0.6743, + "step": 4965 + }, + { + "epoch": 1.98, + "learning_rate": 1.6460905349794242e-06, + "loss": 0.6878, + "step": 4970 + }, + { + "epoch": 1.99, + "learning_rate": 1.440329218106996e-06, + "loss": 0.7012, + "step": 4975 + }, + { + "epoch": 1.99, + "learning_rate": 1.234567901234568e-06, + "loss": 0.6747, + "step": 4980 + }, + { + "epoch": 1.99, + "learning_rate": 1.02880658436214e-06, + "loss": 0.712, + "step": 4985 + }, + { + "epoch": 1.99, + "learning_rate": 8.230452674897121e-07, + "loss": 0.6959, + "step": 4990 + }, + { + "epoch": 1.99, + "learning_rate": 6.17283950617284e-07, + "loss": 0.6961, + "step": 4995 + }, + { + "epoch": 2.0, + "learning_rate": 4.1152263374485604e-07, + "loss": 0.7222, + "step": 5000 + } + ], + "logging_steps": 5, + "max_steps": 5010, + "num_input_tokens_seen": 0, + "num_train_epochs": 2, + "save_steps": 500, + "total_flos": 2.0132950426699956e+19, + "train_batch_size": 1, + "trial_name": null, + "trial_params": null +} diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/training_args.bin b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/training_args.bin new file mode 100644 index 0000000000000000000000000000000000000000..e707059a03fbe62142ac41332e145ac1ac1f36cc --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/training_args.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b99a1729574e0e46ee782b42dc90101a785d5b4792871920d293f44722c28cc +size 5944 diff --git a/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/zero_to_fp32.py b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/zero_to_fp32.py new file mode 100644 index 0000000000000000000000000000000000000000..c98caae31534368be22b67fc4ae906836c992a8d --- /dev/null +++ b/save_lora_instruct_r8_2e4_s11_v2/checkpoint-5000/zero_to_fp32.py @@ -0,0 +1,587 @@ +#!/usr/bin/env python + +# Copyright (c) Microsoft Corporation. +# SPDX-License-Identifier: Apache-2.0 + +# DeepSpeed Team + +# This script extracts fp32 consolidated weights from a zero 1, 2 and 3 DeepSpeed checkpoints. It gets +# copied into the top level checkpoint dir, so the user can easily do the conversion at any point in +# the future. Once extracted, the weights don't require DeepSpeed and can be used in any +# application. +# +# example: python zero_to_fp32.py . pytorch_model.bin + +import argparse +import torch +import glob +import math +import os +import re +from collections import OrderedDict +from dataclasses import dataclass + +# while this script doesn't use deepspeed to recover data, since the checkpoints are pickled with +# DeepSpeed data structures it has to be available in the current python environment. +from deepspeed.utils import logger +from deepspeed.checkpoint.constants import (DS_VERSION, OPTIMIZER_STATE_DICT, SINGLE_PARTITION_OF_FP32_GROUPS, + FP32_FLAT_GROUPS, ZERO_STAGE, PARTITION_COUNT, PARAM_SHAPES, BUFFER_NAMES, + FROZEN_PARAM_SHAPES, FROZEN_PARAM_FRAGMENTS) + + +@dataclass +class zero_model_state: + buffers: dict() + param_shapes: dict() + shared_params: list + ds_version: int + frozen_param_shapes: dict() + frozen_param_fragments: dict() + + +debug = 0 + +# load to cpu +device = torch.device('cpu') + + +def atoi(text): + return int(text) if text.isdigit() else text + + +def natural_keys(text): + ''' + alist.sort(key=natural_keys) sorts in human order + http://nedbatchelder.com/blog/200712/human_sorting.html + (See Toothy's implementation in the comments) + ''' + return [atoi(c) for c in re.split(r'(\d+)', text)] + + +def get_model_state_file(checkpoint_dir, zero_stage): + if not os.path.isdir(checkpoint_dir): + raise FileNotFoundError(f"Directory '{checkpoint_dir}' doesn't exist") + + # there should be only one file + if zero_stage <= 2: + file = os.path.join(checkpoint_dir, "mp_rank_00_model_states.pt") + elif zero_stage == 3: + file = os.path.join(checkpoint_dir, "zero_pp_rank_0_mp_rank_00_model_states.pt") + + if not os.path.exists(file): + raise FileNotFoundError(f"can't find model states file at '{file}'") + + return file + + +def get_checkpoint_files(checkpoint_dir, glob_pattern): + # XXX: need to test that this simple glob rule works for multi-node setup too + ckpt_files = sorted(glob.glob(os.path.join(checkpoint_dir, glob_pattern)), key=natural_keys) + + if len(ckpt_files) == 0: + raise FileNotFoundError(f"can't find {glob_pattern} files in directory '{checkpoint_dir}'") + + return ckpt_files + + +def get_optim_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_optim_states.pt") + + +def get_model_state_files(checkpoint_dir): + return get_checkpoint_files(checkpoint_dir, "*_model_states.pt") + + +def parse_model_states(files): + zero_model_states = [] + for file in files: + state_dict = torch.load(file, map_location=device) + + if BUFFER_NAMES not in state_dict: + raise ValueError(f"{file} is not a model state checkpoint") + buffer_names = state_dict[BUFFER_NAMES] + if debug: + print("Found buffers:", buffer_names) + + # recover just the buffers while restoring them to fp32 if they were saved in fp16 + buffers = {k: v.float() for k, v in state_dict["module"].items() if k in buffer_names} + param_shapes = state_dict[PARAM_SHAPES] + + # collect parameters that are included in param_shapes + param_names = [] + for s in param_shapes: + for name in s.keys(): + param_names.append(name) + + # update with frozen parameters + frozen_param_shapes = state_dict.get(FROZEN_PARAM_SHAPES, None) + if frozen_param_shapes is not None: + if debug: + print(f"Found frozen_param_shapes: {frozen_param_shapes}") + param_names += list(frozen_param_shapes.keys()) + + # handle shared params + shared_params = [[k, v] for k, v in state_dict["shared_params"].items()] + + ds_version = state_dict.get(DS_VERSION, None) + + frozen_param_fragments = state_dict.get(FROZEN_PARAM_FRAGMENTS, None) + + z_model_state = zero_model_state(buffers=buffers, + param_shapes=param_shapes, + shared_params=shared_params, + ds_version=ds_version, + frozen_param_shapes=frozen_param_shapes, + frozen_param_fragments=frozen_param_fragments) + zero_model_states.append(z_model_state) + + return zero_model_states + + +def parse_optim_states(files, ds_checkpoint_dir): + + total_files = len(files) + state_dicts = [] + for f in files: + state_dict = torch.load(f, map_location=device) + # immediately discard the potentially huge 2 optimizer states as we only care for fp32 master weights + # and also handle the case where it was already removed by another helper script + state_dict["optimizer_state_dict"].pop("optimizer_state_dict", None) + state_dicts.append(state_dict) + + if not ZERO_STAGE in state_dicts[0][OPTIMIZER_STATE_DICT]: + raise ValueError(f"{files[0]} is not a zero checkpoint") + zero_stage = state_dicts[0][OPTIMIZER_STATE_DICT][ZERO_STAGE] + world_size = state_dicts[0][OPTIMIZER_STATE_DICT][PARTITION_COUNT] + + # For ZeRO-2 each param group can have different partition_count as data parallelism for expert + # parameters can be different from data parallelism for non-expert parameters. So we can just + # use the max of the partition_count to get the dp world_size. + + if type(world_size) is list: + world_size = max(world_size) + + if world_size != total_files: + raise ValueError( + f"Expected {world_size} of '*_optim_states.pt' under '{ds_checkpoint_dir}' but found {total_files} files. " + "Possibly due to an overwrite of an old checkpoint, or a checkpoint didn't get saved by one or more processes." + ) + + # the groups are named differently in each stage + if zero_stage <= 2: + fp32_groups_key = SINGLE_PARTITION_OF_FP32_GROUPS + elif zero_stage == 3: + fp32_groups_key = FP32_FLAT_GROUPS + else: + raise ValueError(f"unknown zero stage {zero_stage}") + + if zero_stage <= 2: + fp32_flat_groups = [state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key] for i in range(len(state_dicts))] + elif zero_stage == 3: + # if there is more than one param group, there will be multiple flattened tensors - one + # flattened tensor per group - for simplicity merge them into a single tensor + # + # XXX: could make the script more memory efficient for when there are multiple groups - it + # will require matching the sub-lists of param_shapes for each param group flattened tensor + + fp32_flat_groups = [ + torch.cat(state_dicts[i][OPTIMIZER_STATE_DICT][fp32_groups_key], 0) for i in range(len(state_dicts)) + ] + + return zero_stage, world_size, fp32_flat_groups + + +def _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir): + """ + Returns fp32 state_dict reconstructed from ds checkpoint + + Args: + - ``ds_checkpoint_dir``: path to the deepspeed checkpoint folder (where the optimizer files are) + + """ + print(f"Processing zero checkpoint '{ds_checkpoint_dir}'") + + optim_files = get_optim_files(ds_checkpoint_dir) + zero_stage, world_size, fp32_flat_groups = parse_optim_states(optim_files, ds_checkpoint_dir) + print(f"Detected checkpoint of type zero stage {zero_stage}, world_size: {world_size}") + + model_files = get_model_state_files(ds_checkpoint_dir) + + zero_model_states = parse_model_states(model_files) + print(f'Parsing checkpoint created by deepspeed=={zero_model_states[0].ds_version}') + + if zero_stage <= 2: + return _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states) + elif zero_stage == 3: + return _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states) + + +def _zero2_merge_frozen_params(state_dict, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + frozen_param_fragments = zero_model_states[0].frozen_param_fragments + + if debug: + num_elem = sum(s.numel() for s in frozen_param_shapes.values()) + print(f'rank 0: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in frozen_param_fragments.values()]) + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + state_dict[name] = frozen_param_fragments[name] + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + + # Reconstruction protocol: + # + # XXX: document this + + if debug: + for i in range(world_size): + for j in range(len(fp32_flat_groups[0])): + print(f"{FP32_FLAT_GROUPS}[{i}][{j}].shape={fp32_flat_groups[i][j].shape}") + + # XXX: memory usage doubles here (zero2) + num_param_groups = len(fp32_flat_groups[0]) + merged_single_partition_of_fp32_groups = [] + for i in range(num_param_groups): + merged_partitions = [sd[i] for sd in fp32_flat_groups] + full_single_fp32_vector = torch.cat(merged_partitions, 0) + merged_single_partition_of_fp32_groups.append(full_single_fp32_vector) + avail_numel = sum( + [full_single_fp32_vector.numel() for full_single_fp32_vector in merged_single_partition_of_fp32_groups]) + + if debug: + wanted_params = sum([len(shapes) for shapes in param_shapes]) + wanted_numel = sum([sum(shape.numel() for shape in shapes.values()) for shapes in param_shapes]) + # not asserting if there is a mismatch due to possible padding + print(f"Have {avail_numel} numels to process.") + print(f"Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + total_numel = 0 + total_params = 0 + for shapes, full_single_fp32_vector in zip(param_shapes, merged_single_partition_of_fp32_groups): + offset = 0 + avail_numel = full_single_fp32_vector.numel() + for name, shape in shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + if debug: + print(f"{name} full shape: {shape} unpartitioned numel {unpartitioned_numel} ") + state_dict[name] = full_single_fp32_vector.narrow(0, offset, unpartitioned_numel).view(shape) + offset += unpartitioned_numel + + # Z2 started to align to 2*world_size to improve nccl performance. Therefore both offset and + # avail_numel can differ by anywhere between 0..2*world_size. Due to two unrelated complex + # paddings performed in the code it's almost impossible to predict the exact numbers w/o the + # live optimizer object, so we are checking that the numbers are within the right range + align_to = 2 * world_size + + def zero2_align(x): + return align_to * math.ceil(x / align_to) + + if debug: + print(f"original offset={offset}, avail_numel={avail_numel}") + + offset = zero2_align(offset) + avail_numel = zero2_align(avail_numel) + + if debug: + print(f"aligned offset={offset}, avail_numel={avail_numel}") + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero2_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero2_merge_frozen_params(state_dict, zero_model_states) + + _zero2_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def zero3_partitioned_param_info(unpartitioned_numel, world_size): + remainder = unpartitioned_numel % world_size + padding_numel = (world_size - remainder) if remainder else 0 + partitioned_numel = math.ceil(unpartitioned_numel / world_size) + return partitioned_numel, padding_numel + + +def _zero3_merge_frozen_params(state_dict, world_size, zero_model_states): + if zero_model_states[0].frozen_param_shapes is None or len(zero_model_states[0].frozen_param_shapes) == 0: + return + + if debug: + for i in range(world_size): + num_elem = sum(s.numel() for s in zero_model_states[i].frozen_param_fragments.values()) + print(f'rank {i}: {FROZEN_PARAM_SHAPES}.numel = {num_elem}') + + frozen_param_shapes = zero_model_states[0].frozen_param_shapes + wanted_params = len(frozen_param_shapes) + wanted_numel = sum(s.numel() for s in frozen_param_shapes.values()) + avail_numel = sum([p.numel() for p in zero_model_states[0].frozen_param_fragments.values()]) * world_size + print(f'Frozen params: Have {avail_numel} numels to process.') + print(f'Frozen params: Need {wanted_numel} numels in {wanted_params} params') + + total_params = 0 + total_numel = 0 + for name, shape in zero_model_states[0].frozen_param_shapes.items(): + total_params += 1 + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + + param_frags = tuple(model_state.frozen_param_fragments[name] for model_state in zero_model_states) + state_dict[name] = torch.cat(param_frags, 0).narrow(0, 0, unpartitioned_numel).view(shape) + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Frozen params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + print(f"Reconstructed Frozen fp32 state dict with {total_params} params {total_numel} elements") + + +def _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states): + param_shapes = zero_model_states[0].param_shapes + avail_numel = fp32_flat_groups[0].numel() * world_size + # Reconstruction protocol: For zero3 we need to zip the partitions together at boundary of each + # param, re-consolidating each param, while dealing with padding if any + + # merge list of dicts, preserving order + param_shapes = {k: v for d in param_shapes for k, v in d.items()} + + if debug: + for i in range(world_size): + print(f"{FP32_FLAT_GROUPS}[{i}].shape={fp32_flat_groups[i].shape}") + + wanted_params = len(param_shapes) + wanted_numel = sum(shape.numel() for shape in param_shapes.values()) + # not asserting if there is a mismatch due to possible padding + avail_numel = fp32_flat_groups[0].numel() * world_size + print(f"Trainable params: Have {avail_numel} numels to process.") + print(f"Trainable params: Need {wanted_numel} numels in {wanted_params} params.") + + # params + # XXX: for huge models that can't fit into the host's RAM we will have to recode this to support + # out-of-core computing solution + offset = 0 + total_numel = 0 + total_params = 0 + for name, shape in param_shapes.items(): + + unpartitioned_numel = shape.numel() + total_numel += unpartitioned_numel + total_params += 1 + + partitioned_numel, partitioned_padding_numel = zero3_partitioned_param_info(unpartitioned_numel, world_size) + + if debug: + print( + f"Trainable params: {total_params} {name} full shape: {shape} partition0 numel={partitioned_numel} partitioned_padding_numel={partitioned_padding_numel}" + ) + + # XXX: memory usage doubles here + state_dict[name] = torch.cat( + tuple(fp32_flat_groups[i].narrow(0, offset, partitioned_numel) for i in range(world_size)), + 0).narrow(0, 0, unpartitioned_numel).view(shape) + offset += partitioned_numel + + offset *= world_size + + # Sanity check + if offset != avail_numel: + raise ValueError(f"consumed {offset} numels out of {avail_numel} - something is wrong") + + print(f"Reconstructed Trainable fp32 state dict with {total_params} params {total_numel} elements") + + +def _get_fp32_state_dict_from_zero3_checkpoint(world_size, fp32_flat_groups, zero_model_states): + state_dict = OrderedDict() + + # buffers + buffers = zero_model_states[0].buffers + state_dict.update(buffers) + if debug: + print(f"added {len(buffers)} buffers") + + _zero3_merge_frozen_params(state_dict, world_size, zero_model_states) + + _zero3_merge_trainable_params(state_dict, world_size, fp32_flat_groups, zero_model_states) + + # recover shared parameters + for pair in zero_model_states[0].shared_params: + if pair[1] in state_dict: + state_dict[pair[0]] = state_dict[pair[1]] + + return state_dict + + +def get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated state_dict that can be loaded with + ``load_state_dict()`` and used for training without DeepSpeed or shared with others, for example + via a model hub. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in 'latest' file. e.g., ``global_step14`` + + Returns: + - pytorch ``state_dict`` + + Note: this approach may not work if your application doesn't have sufficient free CPU memory and + you may need to use the offline approach using the ``zero_to_fp32.py`` script that is saved with + the checkpoint. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import get_fp32_state_dict_from_zero_checkpoint + # do the training and checkpoint saving + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir) # already on cpu + model = model.cpu() # move to cpu + model.load_state_dict(state_dict) + # submit to model hub or save the model to share with others + + In this example the ``model`` will no longer be usable in the deepspeed context of the same + application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + If you want it all done for you, use ``load_state_dict_from_zero_checkpoint`` instead. + + """ + if tag is None: + latest_path = os.path.join(checkpoint_dir, 'latest') + if os.path.isfile(latest_path): + with open(latest_path, 'r') as fd: + tag = fd.read().strip() + else: + raise ValueError(f"Unable to find 'latest' file at {latest_path}") + + ds_checkpoint_dir = os.path.join(checkpoint_dir, tag) + + if not os.path.isdir(ds_checkpoint_dir): + raise FileNotFoundError(f"Directory '{ds_checkpoint_dir}' doesn't exist") + + return _get_fp32_state_dict_from_zero_checkpoint(ds_checkpoint_dir) + + +def convert_zero_checkpoint_to_fp32_state_dict(checkpoint_dir, output_file, tag=None): + """ + Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` file that can be + loaded with ``torch.load(file)`` + ``load_state_dict()`` and used for training without DeepSpeed. + + Args: + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``output_file``: path to the pytorch fp32 state_dict output file (e.g. path/pytorch_model.bin) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + """ + + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + print(f"Saving fp32 state dict to {output_file}") + torch.save(state_dict, output_file) + + +def load_state_dict_from_zero_checkpoint(model, checkpoint_dir, tag=None): + """ + 1. Put the provided model to cpu + 2. Convert ZeRO 2 or 3 checkpoint into a single fp32 consolidated ``state_dict`` + 3. Load it into the provided model + + Args: + - ``model``: the model object to update + - ``checkpoint_dir``: path to the desired checkpoint folder. (one that contains the tag-folder, like ``global_step14``) + - ``tag``: checkpoint tag used as a unique identifier for checkpoint. If not provided will attempt to load tag in the file named ``latest`` in the checkpoint folder, e.g., ``global_step14`` + + Returns: + - ``model`: modified model + + Make sure you have plenty of CPU memory available before you call this function. If you don't + have enough use the ``zero_to_fp32.py`` utility to do the conversion. You will find it + conveniently placed for you in the checkpoint folder. + + A typical usage might be :: + + from deepspeed.utils.zero_to_fp32 import load_state_dict_from_zero_checkpoint + model = load_state_dict_from_zero_checkpoint(trainer.model, checkpoint_dir) + # submit to model hub or save the model to share with others + + Note, that once this was run, the ``model`` will no longer be usable in the deepspeed context + of the same application. i.e. you will need to re-initialize the deepspeed engine, since + ``model.load_state_dict(state_dict)`` will remove all the deepspeed magic from it. + + """ + logger.info(f"Extracting fp32 weights") + state_dict = get_fp32_state_dict_from_zero_checkpoint(checkpoint_dir, tag) + + logger.info(f"Overwriting model with fp32 weights") + model = model.cpu() + model.load_state_dict(state_dict, strict=False) + + return model + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("checkpoint_dir", + type=str, + help="path to the desired checkpoint folder, e.g., path/checkpoint-12") + parser.add_argument( + "output_file", + type=str, + help="path to the pytorch fp32 state_dict output file (e.g. path/checkpoint-12/pytorch_model.bin)") + parser.add_argument("-t", + "--tag", + type=str, + default=None, + help="checkpoint tag used as a unique identifier for checkpoint. e.g., global_step1") + parser.add_argument("-d", "--debug", action='store_true', help="enable debug") + args = parser.parse_args() + + debug = args.debug + + convert_zero_checkpoint_to_fp32_state_dict(args.checkpoint_dir, args.output_file, tag=args.tag)