mistral-7b-instruct-v0.3-mimic4-adapt-multilabel-classify / classification_log_2025-06-03_20-22-05.log
deb101's picture
Trained classifier model on MIMIC-IV
b7943cb verified
2025-06-03 20:22:05,457 - INFO - 🛠️ Command-line Arguments: - [multilabel_classify.py:323:print_args]
2025-06-03 20:22:05,457 - INFO -
🔹 output_dir: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b
🔹 source_url: XURLs.MIMIC4_DEMO
🔹 data: mimic4_icd10_full
🔹 logfile: classification_log
🔹 base_dir: ../tmp/MIMIC4_DEMO
🔹 hub_model_id: deb101/mistral-7b-instruct-v0.3-mimic4-adapt
🔹 model_name: mistralai/Mistral-7B-Instruct-v0.3
🔹 max_length: 512
🔹 do_fresh_training: True
🔹 load_from_checkpoint: False
🔹 task: multilabel-classify
🔹 num_train_epochs: 4
🔹 metric_for_best_model: precision_at_15
🔹 learning_rate: 0.0001
🔹 final_lr_scheduling: 1e-06
🔹 warmup_steps: 500
🔹 source: /home/ubuntu/.xcube/data/mimic4_demo
🔹 logfile_path: ../tmp/MIMIC4_DEMO/logs/classification_log_2025-06-03_20-22-05.log - [multilabel_classify.py:324:print_args]
2025-06-03 20:22:05,457 - INFO - ➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖➖ - [multilabel_classify.py:325:print_args]
2025-06-03 20:22:05,458 - INFO - +----------------------------------------------------+ - [multilabel_classify.py:133:log_with_box]
2025-06-03 20:22:05,458 - INFO - | 🤖🏷️ ****Multi-Label Classification Started**** 🏷️🤖 | - [multilabel_classify.py:133:log_with_box]
2025-06-03 20:22:05,458 - INFO - +----------------------------------------------------+ - [multilabel_classify.py:133:log_with_box]
2025-06-03 20:22:05,458 - INFO - ================================================================================ - [multilabel_classify.py:96:log_section]
2025-06-03 20:22:05,458 - INFO - = 📌 INITIALIZING TRAINING ENVIRONMENT = - [multilabel_classify.py:97:log_section]
2025-06-03 20:22:05,458 - INFO - ================================================================================ - [multilabel_classify.py:100:log_section]
2025-06-03 20:22:05,458 - INFO - Hub Model ID for this multi-label classification task: deb101/mistral-7b-instruct-v0.3-mimic4-adapt-multilabel-classify - [multilabel_classify.py:3227:main]
2025-06-03 20:22:05,504 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:96:log_section]
2025-06-03 20:22:05,505 - INFO - + LOADING DATASETS + - [multilabel_classify.py:97:log_section]
2025-06-03 20:22:05,505 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:100:log_section]
2025-06-03 20:22:05,505 - INFO - 📊 Loading main datasets.... - [multilabel_classify.py:3245:main]
2025-06-03 20:22:13,776 - INFO - 🔍 Total unique labels in dataset: 7942 - [multilabel_classify.py:3086:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,789 - INFO - 🧪 Attempt 1: Sampled 122 rows covering 863 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,798 - INFO - 🧪 Attempt 2: Sampled 122 rows covering 816 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,807 - INFO - 🧪 Attempt 3: Sampled 122 rows covering 885 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,816 - INFO - 🧪 Attempt 4: Sampled 122 rows covering 828 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,825 - INFO - 🧪 Attempt 5: Sampled 122 rows covering 879 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,834 - INFO - 🧪 Attempt 6: Sampled 122 rows covering 852 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,842 - INFO - 🧪 Attempt 7: Sampled 122 rows covering 838 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,850 - INFO - 🧪 Attempt 8: Sampled 122 rows covering 851 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,859 - INFO - 🧪 Attempt 9: Sampled 122 rows covering 825 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,867 - INFO - 🧪 Attempt 10: Sampled 122 rows covering 833 labels. - [multilabel_classify.py:3100:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,868 - INFO - ⚠️ Skipping label coverage fix. 7109 labels are missing. - [multilabel_classify.py:3118:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,868 - INFO - Final row count: 122 (Valid: 20, Not-valid: 102) - [multilabel_classify.py:3121:sample_df_with_full_label_coverage]
2025-06-03 20:22:13,886 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:96:log_section]
2025-06-03 20:22:13,887 - INFO - + STARTING FRESH TRAINING + - [multilabel_classify.py:97:log_section]
2025-06-03 20:22:13,887 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:100:log_section]
2025-06-03 20:22:13,887 - INFO - 🔄 Starting fresh training (either forced or model not found)... - [multilabel_classify.py:3266:main]
2025-06-03 20:22:13,902 - WARNING - Note: Environment variable`HF_TOKEN` is set and is the current active token independently from the token you've just configured. - [_login.py:415:_login]
2025-06-03 20:22:13,902 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:96:log_section]
2025-06-03 20:22:13,902 - INFO - + LOADING BASE MODEL + - [multilabel_classify.py:97:log_section]
2025-06-03 20:22:13,902 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:100:log_section]
2025-06-03 20:22:13,902 - INFO - 📥 Loading pretrained model and tokenizer... - [multilabel_classify.py:3296:main]
2025-06-03 20:22:13,902 - INFO - 🚀 Starting model and tokenizer loading process... - [multilabel_classify.py:1198:load_base_model_and_tokenizer]
2025-06-03 20:22:13,903 - INFO - 📊 Quantization config: BitsAndBytesConfig {
"_load_in_4bit": true,
"_load_in_8bit": false,
"bnb_4bit_compute_dtype": "bfloat16",
"bnb_4bit_quant_storage": "uint8",
"bnb_4bit_quant_type": "nf4",
"bnb_4bit_use_double_quant": true,
"llm_int8_enable_fp32_cpu_offload": false,
"llm_int8_has_fp16_weight": false,
"llm_int8_skip_modules": null,
"llm_int8_threshold": 6.0,
"load_in_4bit": true,
"load_in_8bit": false,
"quant_method": "bitsandbytes"
}
- [multilabel_classify.py:1207:load_base_model_and_tokenizer]
2025-06-03 20:22:13,904 - INFO - 🔤 Loading tokenizer for model: deb101/mistral-7b-instruct-v0.3-mimic4-adapt... - [multilabel_classify.py:1211:load_base_model_and_tokenizer]
2025-06-03 20:22:14,413 - INFO - 🔍 Checking if deb101/mistral-7b-instruct-v0.3-mimic4-adapt is a PEFT model... - [multilabel_classify.py:1223:load_base_model_and_tokenizer]
2025-06-03 20:22:14,438 - INFO - Detected PEFT model. Base model: mistralai/Mistral-7B-Instruct-v0.3 - [multilabel_classify.py:1227:load_base_model_and_tokenizer]
2025-06-03 20:22:14,438 - INFO - 🔍 Loading model configuration for mistralai/Mistral-7B-Instruct-v0.3... - [multilabel_classify.py:1237:load_base_model_and_tokenizer]
2025-06-03 20:22:14,461 - INFO - Model type: mistral, Architectures: ['MistralForCausalLM'] - [multilabel_classify.py:1243:load_base_model_and_tokenizer]
2025-06-03 20:22:14,461 - INFO - 🧠 Loading base model: mistralai/Mistral-7B-Instruct-v0.3... - [multilabel_classify.py:1306:load_base_model_and_tokenizer]
2025-06-03 20:22:15,021 - INFO - We will use 90% of the memory on device 0 for storing the model, and 10% for the buffer to avoid OOM. You can set `max_memory` in to a higher value to use more memory (at your own risk). - [modeling.py:991:get_balanced_memory]
2025-06-03 20:22:20,344 - INFO - 🧩 Loading PEFT adapters for deb101/mistral-7b-instruct-v0.3-mimic4-adapt... - [multilabel_classify.py:1321:load_base_model_and_tokenizer]
2025-06-03 20:22:20,612 - INFO - 🔧 Before enabling PEFT adapters for training - [multilabel_classify.py:1323:load_base_model_and_tokenizer]
2025-06-03 20:22:20,617 - INFO - 🔧 After Enabling PEFT adapters for training - [multilabel_classify.py:1330:load_base_model_and_tokenizer]
2025-06-03 20:22:20,620 - INFO - Model and tokenizer successfully loaded! - [multilabel_classify.py:1371:load_base_model_and_tokenizer]
2025-06-03 20:22:20,620 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:96:log_section]
2025-06-03 20:22:20,620 - INFO - + DATA PREPROCESSING + - [multilabel_classify.py:97:log_section]
2025-06-03 20:22:20,620 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:100:log_section]
2025-06-03 20:22:20,620 - INFO - 🔄 Loading and preprocessing training data... - [multilabel_classify.py:3304:main]
2025-06-03 20:22:20,624 - INFO - Total number of labels: 833 - [multilabel_classify.py:999:preprocess_data]
2025-06-03 20:22:20,624 - INFO - Rare labels (freq < 50): 832 - [multilabel_classify.py:1000:preprocess_data]
2025-06-03 20:22:20,624 - INFO - Not rare labels (freq >= 50): 1 - [multilabel_classify.py:1001:preprocess_data]
2025-06-03 20:22:20,624 - INFO - Label partitions and classes saved to ../tmp/MIMIC4_DEMO/labels_partition.json - [multilabel_classify.py:1002:preprocess_data]
2025-06-03 20:22:21,956 - INFO - The size of training set: 567 - [multilabel_classify.py:1098:preprocess_data]
2025-06-03 20:22:21,956 - INFO - The size of Evaluation set: 136 - [multilabel_classify.py:1099:preprocess_data]
2025-06-03 20:22:21,961 - INFO - Number of unique ICD-10 codes: 833 - [multilabel_classify.py:3310:main]
2025-06-03 20:22:21,961 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:96:log_section]
2025-06-03 20:22:21,961 - INFO - + MODEL INITIALIZATION + - [multilabel_classify.py:97:log_section]
2025-06-03 20:22:21,961 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:100:log_section]
2025-06-03 20:22:21,961 - INFO - 🧠 Initializing custom L2R model for outputting per-token relevance scores per ICD-10 codes. - [multilabel_classify.py:3313:main]
2025-06-03 20:22:21,962 - INFO - Will now start to create Multilabel-Classification Model from the base model - [multilabel_classify.py:516:__init__]
2025-06-03 20:22:21,965 - INFO - Trainable params: 6815744 / 3765178368 (0.18%) - [multilabel_classify.py:568:compute_trainable_params]
2025-06-03 20:22:22,304 - INFO - Creating the Multi-Label Classification Model from base model mistralai/Mistral-7B-Instruct-v0.3 completed!!! - [multilabel_classify.py:558:__init__]
2025-06-03 20:22:22,307 - INFO - Trainable params: 84177025 / 3842539649 (2.19%) - [multilabel_classify.py:568:compute_trainable_params]
2025-06-03 20:22:22,307 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:96:log_section]
2025-06-03 20:22:22,307 - INFO - + TRAINING PREPARATION + - [multilabel_classify.py:97:log_section]
2025-06-03 20:22:22,307 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:100:log_section]
2025-06-03 20:22:22,307 - INFO - ⚙️ Preparing training components and optimizers... - [multilabel_classify.py:3320:main]
2025-06-03 20:22:22,367 - INFO - 🖥️ Device: NVIDIA GH200 480GB - [multilabel_classify.py:845:log_training_configuration]
2025-06-03 20:22:22,367 - INFO - 🔋 CUDA Available: True - [multilabel_classify.py:848:log_training_configuration]
2025-06-03 20:22:22,367 - INFO - 💾 CUDA Device Count: 1 - [multilabel_classify.py:849:log_training_configuration]
2025-06-03 20:22:22,368 - INFO -
📋 Training Configuration 📋
+----------+-----------------------------+------------------------------------------------------------------+
| 🌟 Emoji | 🏷️ Parameter | 📊 Value |
+----------+-----------------------------+------------------------------------------------------------------+
| 📁 | Output Directory | ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b |
| 🔁 | Training Epochs | 4 |
| 🏋️ | Train Batch Size | 8 |
| 🔍 | Eval Batch Size | 8 |
| 📊 | Gradient Accumulation Steps | 4 |
| 🚀 | Learning Rate | 0.0001 |
| 🌅 | Warmup Steps | 500 |
| 💾 | Save Strategy | epoch |
| 💾 | Save Total Limit | 10 |
| 📊 | Evaluation Strategy | epoch |
| 🎯 | Best Model Metric | precision_at_15 |
| 📝 | Logging Strategy | steps (every 10 steps) |
| 🌐 | Push to Hub | True |
| 🌐 | Hub Model ID | deb101/mistral-7b-instruct-v0.3-mimic4-adapt-multilabel-classify |
| 🔢 | Steps per Epoch | 17 |
| 🔢 | Total Training Steps | 68 |
| 🔢 | Evaluation Steps | 17 |
| 📊 | Training Dataset Size | 567 samples 🏋️ |
| 📊 | Evaluation Dataset Size | 136 samples 🔍 |
+----------+-----------------------------+------------------------------------------------------------------+ - [multilabel_classify.py:837:log_training_args]
2025-06-03 20:22:22,368 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:96:log_section]
2025-06-03 20:22:22,368 - INFO - + MODEL TRAINING + - [multilabel_classify.py:97:log_section]
2025-06-03 20:22:22,368 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:100:log_section]
2025-06-03 20:22:22,368 - INFO - 🏋️ Starting model training process... - [multilabel_classify.py:3340:main]
2025-06-03 20:22:22,411 - INFO - We are registering the tokenizer deb101/mistral-7b-instruct-v0.3-mimic4-adapt in Custom Trainer - [multilabel_classify.py:1941:__init__]
2025-06-03 20:22:22,667 - INFO - 🚀 Starting Training... - [multilabel_classify.py:1595:on_train_begin]
2025-06-03 20:22:43,213 - INFO -
🚂 Training Metrics (Step 10) 🚂
+---------------+---------+
| Metric | Value |
+===============+=========+
| loss | 0.624 |
+---------------+---------+
| grad_norm | 6.71916 |
+---------------+---------+
| learning_rate | 2e-06 |
+---------------+---------+
| epoch | 0.56338 |
+---------------+---------+ - [multilabel_classify.py:1789:on_log]
2025-06-03 20:22:57,293 - INFO - Removing 'token_type_ids' from eval_dataset as they are not needed. - [multilabel_classify.py:1953:evaluate]
2025-06-03 20:23:32,597 - INFO -
🔍 Evaluation Metrics 🔍
+-------------------------------+----------+
| Metric | Value |
+===============================+==========+
| eval_f1_micro | 0 |
+-------------------------------+----------+
| eval_f1_macro | 0 |
+-------------------------------+----------+
| eval_precision_at_5 | 0.005882 |
+-------------------------------+----------+
| eval_recall_at_5 | 0.001306 |
+-------------------------------+----------+
| eval_precision_at_8 | 0.011029 |
+-------------------------------+----------+
| eval_recall_at_8 | 0.003704 |
+-------------------------------+----------+
| eval_precision_at_15 | 0.014706 |
+-------------------------------+----------+
| eval_recall_at_15 | 0.011093 |
+-------------------------------+----------+
| eval_rare_f1_micro | 0 |
+-------------------------------+----------+
| eval_rare_f1_macro | 0 |
+-------------------------------+----------+
| eval_rare_precision | 0 |
+-------------------------------+----------+
| eval_rare_recall | 0 |
+-------------------------------+----------+
| eval_rare_precision_at_5 | 0.010294 |
+-------------------------------+----------+
| eval_rare_recall_at_5 | 0.002439 |
+-------------------------------+----------+
| eval_rare_precision_at_8 | 0.012868 |
+-------------------------------+----------+
| eval_rare_recall_at_8 | 0.00592 |
+-------------------------------+----------+
| eval_rare_precision_at_15 | 0.014216 |
+-------------------------------+----------+
| eval_rare_recall_at_15 | 0.011398 |
+-------------------------------+----------+
| eval_not_rare_f1_micro | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_f1_macro | 0.373272 |
+-------------------------------+----------+
| eval_not_rare_precision | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_recall | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_precision_at_5 | 0.080882 |
+-------------------------------+----------+
| eval_not_rare_recall_at_5 | 0.404412 |
+-------------------------------+----------+
| eval_not_rare_precision_at_8 | 0.050551 |
+-------------------------------+----------+
| eval_not_rare_recall_at_8 | 0.404412 |
+-------------------------------+----------+
| eval_not_rare_precision_at_15 | 0.026961 |
+-------------------------------+----------+
| eval_not_rare_recall_at_15 | 0.404412 |
+-------------------------------+----------+
| eval_loss | 0.221656 |
+-------------------------------+----------+ - [multilabel_classify.py:1808:on_evaluate]
2025-06-03 20:23:36,490 - INFO - 💾 Model weights saved in safetensors format: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-18 - [multilabel_classify.py:2046:_save]
2025-06-03 20:23:36,493 - INFO - ⚙️ Config saved in checkpoint: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-18 - [multilabel_classify.py:2051:_save]
2025-06-03 20:23:36,494 - INFO - 📋 Saved files in ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-18:
+---------+--------------------+------------+
| Index | Saved File | Size |
+=========+====================+============+
| 1 | training_args.bin | 0.01 MB |
+---------+--------------------+------------+
| 2 | optimizer.pt | 642.30 MB |
+---------+--------------------+------------+
| 3 | model.safetensors | 4267.74 MB |
+---------+--------------------+------------+
| 4 | scaler.pt | 0.00 MB |
+---------+--------------------+------------+
| 5 | config.json | 0.04 MB |
+---------+--------------------+------------+
| 6 | scheduler.pt | 0.00 MB |
+---------+--------------------+------------+
| 7 | trainer_state.json | 0.00 MB |
+---------+--------------------+------------+
| 8 | rng_state.pth | 0.01 MB |
+---------+--------------------+------------+ - [multilabel_classify.py:2068:_save]
2025-06-03 20:23:42,667 - INFO -
🚂 Training Metrics (Step 20) 🚂
+---------------+---------+
| Metric | Value |
+===============+=========+
| loss | 0.3386 |
+---------------+---------+
| grad_norm | 2.49967 |
+---------------+---------+
| learning_rate | 4e-06 |
+---------------+---------+
| epoch | 1.11268 |
+---------------+---------+ - [multilabel_classify.py:1789:on_log]
2025-06-03 20:24:00,820 - INFO -
🚂 Training Metrics (Step 30) 🚂
+---------------+----------+
| Metric | Value |
+===============+==========+
| loss | 0.1249 |
+---------------+----------+
| grad_norm | 0.258035 |
+---------------+----------+
| learning_rate | 6e-06 |
+---------------+----------+
| epoch | 1.67606 |
+---------------+----------+ - [multilabel_classify.py:1789:on_log]
2025-06-03 20:24:11,212 - INFO - Removing 'token_type_ids' from eval_dataset as they are not needed. - [multilabel_classify.py:1953:evaluate]
2025-06-03 20:24:46,604 - INFO -
🔍 Evaluation Metrics 🔍
+-------------------------------+----------+
| Metric | Value |
+===============================+==========+
| eval_f1_micro | 0 |
+-------------------------------+----------+
| eval_f1_macro | 0 |
+-------------------------------+----------+
| eval_precision_at_5 | 0.008824 |
+-------------------------------+----------+
| eval_recall_at_5 | 0.001777 |
+-------------------------------+----------+
| eval_precision_at_8 | 0.011029 |
+-------------------------------+----------+
| eval_recall_at_8 | 0.003763 |
+-------------------------------+----------+
| eval_precision_at_15 | 0.015196 |
+-------------------------------+----------+
| eval_recall_at_15 | 0.010958 |
+-------------------------------+----------+
| eval_rare_f1_micro | 0 |
+-------------------------------+----------+
| eval_rare_f1_macro | 0 |
+-------------------------------+----------+
| eval_rare_precision | 0 |
+-------------------------------+----------+
| eval_rare_recall | 0 |
+-------------------------------+----------+
| eval_rare_precision_at_5 | 0.008824 |
+-------------------------------+----------+
| eval_rare_recall_at_5 | 0.001785 |
+-------------------------------+----------+
| eval_rare_precision_at_8 | 0.011029 |
+-------------------------------+----------+
| eval_rare_recall_at_8 | 0.004688 |
+-------------------------------+----------+
| eval_rare_precision_at_15 | 0.014216 |
+-------------------------------+----------+
| eval_rare_recall_at_15 | 0.012365 |
+-------------------------------+----------+
| eval_not_rare_f1_micro | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_f1_macro | 0.373272 |
+-------------------------------+----------+
| eval_not_rare_precision | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_recall | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_precision_at_5 | 0.080882 |
+-------------------------------+----------+
| eval_not_rare_recall_at_5 | 0.404412 |
+-------------------------------+----------+
| eval_not_rare_precision_at_8 | 0.050551 |
+-------------------------------+----------+
| eval_not_rare_recall_at_8 | 0.404412 |
+-------------------------------+----------+
| eval_not_rare_precision_at_15 | 0.026961 |
+-------------------------------+----------+
| eval_not_rare_recall_at_15 | 0.404412 |
+-------------------------------+----------+
| eval_loss | 0.121922 |
+-------------------------------+----------+ - [multilabel_classify.py:1808:on_evaluate]
2025-06-03 20:24:50,330 - INFO - 💾 Model weights saved in safetensors format: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-36 - [multilabel_classify.py:2046:_save]
2025-06-03 20:24:50,333 - INFO - ⚙️ Config saved in checkpoint: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-36 - [multilabel_classify.py:2051:_save]
2025-06-03 20:24:50,334 - INFO - 📋 Saved files in ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-36:
+---------+--------------------+------------+
| Index | Saved File | Size |
+=========+====================+============+
| 1 | training_args.bin | 0.01 MB |
+---------+--------------------+------------+
| 2 | optimizer.pt | 642.30 MB |
+---------+--------------------+------------+
| 3 | model.safetensors | 4267.74 MB |
+---------+--------------------+------------+
| 4 | scaler.pt | 0.00 MB |
+---------+--------------------+------------+
| 5 | config.json | 0.04 MB |
+---------+--------------------+------------+
| 6 | scheduler.pt | 0.00 MB |
+---------+--------------------+------------+
| 7 | trainer_state.json | 0.00 MB |
+---------+--------------------+------------+
| 8 | rng_state.pth | 0.01 MB |
+---------+--------------------+------------+ - [multilabel_classify.py:2068:_save]
2025-06-03 20:25:00,280 - INFO -
🚂 Training Metrics (Step 40) 🚂
+---------------+----------+
| Metric | Value |
+===============+==========+
| loss | 0.1098 |
+---------------+----------+
| grad_norm | 0.470693 |
+---------------+----------+
| learning_rate | 8e-06 |
+---------------+----------+
| epoch | 2.22535 |
+---------------+----------+ - [multilabel_classify.py:1789:on_log]
2025-06-03 20:25:18,391 - INFO -
🚂 Training Metrics (Step 50) 🚂
+---------------+----------+
| Metric | Value |
+===============+==========+
| loss | 0.1086 |
+---------------+----------+
| grad_norm | 0.067761 |
+---------------+----------+
| learning_rate | 1e-05 |
+---------------+----------+
| epoch | 2.78873 |
+---------------+----------+ - [multilabel_classify.py:1789:on_log]
2025-06-03 20:25:25,137 - INFO - Removing 'token_type_ids' from eval_dataset as they are not needed. - [multilabel_classify.py:1953:evaluate]
2025-06-03 20:26:00,429 - INFO -
🔍 Evaluation Metrics 🔍
+-------------------------------+----------+
| Metric | Value |
+===============================+==========+
| eval_f1_micro | 0 |
+-------------------------------+----------+
| eval_f1_macro | 0 |
+-------------------------------+----------+
| eval_precision_at_5 | 0.047059 |
+-------------------------------+----------+
| eval_recall_at_5 | 0.012123 |
+-------------------------------+----------+
| eval_precision_at_8 | 0.050551 |
+-------------------------------+----------+
| eval_recall_at_8 | 0.02375 |
+-------------------------------+----------+
| eval_precision_at_15 | 0.045588 |
+-------------------------------+----------+
| eval_recall_at_15 | 0.045718 |
+-------------------------------+----------+
| eval_rare_f1_micro | 0 |
+-------------------------------+----------+
| eval_rare_f1_macro | 0 |
+-------------------------------+----------+
| eval_rare_precision | 0 |
+-------------------------------+----------+
| eval_rare_recall | 0 |
+-------------------------------+----------+
| eval_rare_precision_at_5 | 0.036765 |
+-------------------------------+----------+
| eval_rare_recall_at_5 | 0.010554 |
+-------------------------------+----------+
| eval_rare_precision_at_8 | 0.04136 |
+-------------------------------+----------+
| eval_rare_recall_at_8 | 0.019845 |
+-------------------------------+----------+
| eval_rare_precision_at_15 | 0.036765 |
+-------------------------------+----------+
| eval_rare_recall_at_15 | 0.037016 |
+-------------------------------+----------+
| eval_not_rare_f1_micro | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_f1_macro | 0.373272 |
+-------------------------------+----------+
| eval_not_rare_precision | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_recall | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_precision_at_5 | 0.080882 |
+-------------------------------+----------+
| eval_not_rare_recall_at_5 | 0.404412 |
+-------------------------------+----------+
| eval_not_rare_precision_at_8 | 0.050551 |
+-------------------------------+----------+
| eval_not_rare_recall_at_8 | 0.404412 |
+-------------------------------+----------+
| eval_not_rare_precision_at_15 | 0.026961 |
+-------------------------------+----------+
| eval_not_rare_recall_at_15 | 0.404412 |
+-------------------------------+----------+
| eval_loss | 0.107352 |
+-------------------------------+----------+ - [multilabel_classify.py:1808:on_evaluate]
2025-06-03 20:26:01,710 - INFO - 💾 Model weights saved in safetensors format: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-54 - [multilabel_classify.py:2046:_save]
2025-06-03 20:26:01,713 - INFO - ⚙️ Config saved in checkpoint: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-54 - [multilabel_classify.py:2051:_save]
2025-06-03 20:26:01,714 - INFO - 📋 Saved files in ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-54:
+---------+-------------------+------------+
| Index | Saved File | Size |
+=========+===================+============+
| 1 | training_args.bin | 0.01 MB |
+---------+-------------------+------------+
| 2 | model.safetensors | 4267.74 MB |
+---------+-------------------+------------+
| 3 | config.json | 0.04 MB |
+---------+-------------------+------------+ - [multilabel_classify.py:2068:_save]
2025-06-03 20:26:15,035 - INFO -
🚂 Training Metrics (Step 60) 🚂
+---------------+----------+
| Metric | Value |
+===============+==========+
| loss | 0.1033 |
+---------------+----------+
| grad_norm | 0.206313 |
+---------------+----------+
| learning_rate | 1.2e-05 |
+---------------+----------+
| epoch | 3.33803 |
+---------------+----------+ - [multilabel_classify.py:1789:on_log]
2025-06-03 20:26:30,807 - INFO - 💾 Model weights saved in safetensors format: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-68 - [multilabel_classify.py:2046:_save]
2025-06-03 20:26:30,810 - INFO - ⚙️ Config saved in checkpoint: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-68 - [multilabel_classify.py:2051:_save]
2025-06-03 20:26:30,811 - INFO - 📋 Saved files in ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-68:
+---------+-------------------+------------+
| Index | Saved File | Size |
+=========+===================+============+
| 1 | training_args.bin | 0.01 MB |
+---------+-------------------+------------+
| 2 | model.safetensors | 4267.74 MB |
+---------+-------------------+------------+
| 3 | config.json | 0.04 MB |
+---------+-------------------+------------+ - [multilabel_classify.py:2068:_save]
2025-06-03 20:26:31,136 - INFO - Removing 'token_type_ids' from eval_dataset as they are not needed. - [multilabel_classify.py:1953:evaluate]
2025-06-03 20:27:06,536 - INFO -
🔍 Evaluation Metrics 🔍
+-------------------------------+----------+
| Metric | Value |
+===============================+==========+
| eval_f1_micro | 0 |
+-------------------------------+----------+
| eval_f1_macro | 0 |
+-------------------------------+----------+
| eval_precision_at_5 | 0.167647 |
+-------------------------------+----------+
| eval_recall_at_5 | 0.059694 |
+-------------------------------+----------+
| eval_precision_at_8 | 0.137868 |
+-------------------------------+----------+
| eval_recall_at_8 | 0.077015 |
+-------------------------------+----------+
| eval_precision_at_15 | 0.092647 |
+-------------------------------+----------+
| eval_recall_at_15 | 0.099223 |
+-------------------------------+----------+
| eval_rare_f1_micro | 0 |
+-------------------------------+----------+
| eval_rare_f1_macro | 0 |
+-------------------------------+----------+
| eval_rare_precision | 0 |
+-------------------------------+----------+
| eval_rare_recall | 0 |
+-------------------------------+----------+
| eval_rare_precision_at_5 | 0.127941 |
+-------------------------------+----------+
| eval_rare_recall_at_5 | 0.046166 |
+-------------------------------+----------+
| eval_rare_precision_at_8 | 0.09375 |
+-------------------------------+----------+
| eval_rare_recall_at_8 | 0.052229 |
+-------------------------------+----------+
| eval_rare_precision_at_15 | 0.064216 |
+-------------------------------+----------+
| eval_rare_recall_at_15 | 0.069951 |
+-------------------------------+----------+
| eval_not_rare_f1_micro | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_f1_macro | 0.373272 |
+-------------------------------+----------+
| eval_not_rare_precision | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_recall | 0.595588 |
+-------------------------------+----------+
| eval_not_rare_precision_at_5 | 0.080882 |
+-------------------------------+----------+
| eval_not_rare_recall_at_5 | 0.404412 |
+-------------------------------+----------+
| eval_not_rare_precision_at_8 | 0.050551 |
+-------------------------------+----------+
| eval_not_rare_recall_at_8 | 0.404412 |
+-------------------------------+----------+
| eval_not_rare_precision_at_15 | 0.026961 |
+-------------------------------+----------+
| eval_not_rare_recall_at_15 | 0.404412 |
+-------------------------------+----------+
| eval_loss | 0.10503 |
+-------------------------------+----------+ - [multilabel_classify.py:1808:on_evaluate]
2025-06-03 20:27:10,158 - INFO - 💾 Model weights saved in safetensors format: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-68 - [multilabel_classify.py:2046:_save]
2025-06-03 20:27:10,161 - INFO - ⚙️ Config saved in checkpoint: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-68 - [multilabel_classify.py:2051:_save]
2025-06-03 20:27:10,163 - INFO - 📋 Saved files in ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-68:
+---------+--------------------+------------+
| Index | Saved File | Size |
+=========+====================+============+
| 1 | training_args.bin | 0.01 MB |
+---------+--------------------+------------+
| 2 | optimizer.pt | 642.30 MB |
+---------+--------------------+------------+
| 3 | model.safetensors | 4267.74 MB |
+---------+--------------------+------------+
| 4 | scaler.pt | 0.00 MB |
+---------+--------------------+------------+
| 5 | config.json | 0.04 MB |
+---------+--------------------+------------+
| 6 | scheduler.pt | 0.00 MB |
+---------+--------------------+------------+
| 7 | trainer_state.json | 0.01 MB |
+---------+--------------------+------------+
| 8 | rng_state.pth | 0.01 MB |
+---------+--------------------+------------+ - [multilabel_classify.py:2068:_save]
2025-06-03 20:27:10,994 - INFO - 📂 Loading best model from ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-68 - [multilabel_classify.py:2120:_load_best_model]
2025-06-03 20:27:10,994 - INFO - 🖥️ Model is on device: cuda:0 - [multilabel_classify.py:2130:_load_best_model]
2025-06-03 20:27:11,049 - INFO - 🔑 Key order comparison:
+---------+--------------------------------------------+--------------------------------------------------------------------------------------+
| Index | Saved state_dict Keys | Model state_dict Keys |
+=========+============================================+======================================================================================+
| 1 | attention.in_proj_bias | boost_mul |
+---------+--------------------------------------------+--------------------------------------------------------------------------------------+
| 2 | attention.in_proj_weight | boost_add |
+---------+--------------------------------------------+--------------------------------------------------------------------------------------+
| 3 | attention.out_proj.bias | base_model.base_model.model.model.embed_tokens.weight |
+---------+--------------------------------------------+--------------------------------------------------------------------------------------+
| 4 | attention.out_proj.weight | base_model.base_model.model.model.layers.0.self_attn.q_proj.base_layer.weight |
+---------+--------------------------------------------+--------------------------------------------------------------------------------------+
| 5 | base_model.base_model.model.lm_head.weight | base_model.base_model.model.model.layers.0.self_attn.q_proj.base_layer.weight.absmax |
+---------+--------------------------------------------+--------------------------------------------------------------------------------------+ - [multilabel_classify.py:2154:_load_best_model]
2025-06-03 20:27:12,079 - INFO - Loaded best model weights from ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/checkpoint-68/model.safetensors - [multilabel_classify.py:2171:_load_best_model]
2025-06-03 20:27:12,105 - INFO - ✔️ Weight for boost_mul matches between saved and loaded state_dict - [multilabel_classify.py:2183:_load_best_model]
2025-06-03 20:27:12,129 - INFO - ✔️ Weight for boost_add matches between saved and loaded state_dict - [multilabel_classify.py:2183:_load_best_model]
2025-06-03 20:27:12,152 - INFO -
🚂 Training Metrics (Step 68) 🚂
+--------------------------+---------+
| Metric | Value |
+==========================+=========+
| train_runtime | 289.486 |
+--------------------------+---------+
| train_samples_per_second | 7.835 |
+--------------------------+---------+
| train_steps_per_second | 0.235 |
+--------------------------+---------+
| total_flos | 0 |
+--------------------------+---------+
| train_loss | 0.21949 |
+--------------------------+---------+
| epoch | 3.78873 |
+--------------------------+---------+ - [multilabel_classify.py:1789:on_log]
2025-06-03 20:27:12,152 - INFO - Training Completed! - [multilabel_classify.py:1662:on_train_end]
2025-06-03 20:27:12,224 - INFO - 📊 Training loss plot saved as '../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/train_loss_plot.png' - [multilabel_classify.py:1858:on_train_end]
2025-06-03 20:27:12,286 - INFO - 📊 Evaluation loss plot saved as '../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/eval_loss_plot.png' - [multilabel_classify.py:1872:on_train_end]
2025-06-03 20:27:12,348 - INFO - 📊 Evaluation metric plot saved as '../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b/eval_precision_at_15_plot.png' - [multilabel_classify.py:1893:on_train_end]
2025-06-03 20:27:12,348 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:96:log_section]
2025-06-03 20:27:12,348 - INFO - + MODEL SAVING + - [multilabel_classify.py:97:log_section]
2025-06-03 20:27:12,348 - INFO - ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - [multilabel_classify.py:100:log_section]
2025-06-03 20:27:12,349 - INFO - 💾 Saving trained model and pushing to Hugging Face Hub... - [multilabel_classify.py:3354:main]
2025-06-03 20:27:12,349 - INFO - 📁 Creating/using output directory: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b - [multilabel_classify.py:2646:save_and_push]
2025-06-03 20:27:13,614 - INFO - 💾 Model weights saved in safetensors format: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b - [multilabel_classify.py:2046:_save]
2025-06-03 20:27:13,617 - INFO - ⚙️ Config saved in checkpoint: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b - [multilabel_classify.py:2051:_save]
2025-06-03 20:27:13,618 - INFO - 📋 Saved files in ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b:
+---------+-------------------------------+------------+
| Index | Saved File | Size |
+=========+===============================+============+
| 1 | eval_loss_plot.png | 0.03 MB |
+---------+-------------------------------+------------+
| 2 | training_args.bin | 0.01 MB |
+---------+-------------------------------+------------+
| 3 | model.safetensors | 4267.74 MB |
+---------+-------------------------------+------------+
| 4 | config.json | 0.04 MB |
+---------+-------------------------------+------------+
| 5 | train_loss_plot.png | 0.02 MB |
+---------+-------------------------------+------------+
| 6 | eval_precision_at_15_plot.png | 0.03 MB |
+---------+-------------------------------+------------+ - [multilabel_classify.py:2068:_save]
2025-06-03 20:27:17,349 - INFO - 💾 Model weights saved in safetensors format: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b - [multilabel_classify.py:2046:_save]
2025-06-03 20:27:17,352 - INFO - ⚙️ Config saved in checkpoint: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b - [multilabel_classify.py:2051:_save]
2025-06-03 20:27:17,354 - INFO - 📋 Saved files in ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b:
+---------+-------------------------------+------------+
| Index | Saved File | Size |
+=========+===============================+============+
| 1 | eval_loss_plot.png | 0.03 MB |
+---------+-------------------------------+------------+
| 2 | training_args.bin | 0.01 MB |
+---------+-------------------------------+------------+
| 3 | model.safetensors | 4267.74 MB |
+---------+-------------------------------+------------+
| 4 | config.json | 0.04 MB |
+---------+-------------------------------+------------+
| 5 | train_loss_plot.png | 0.02 MB |
+---------+-------------------------------+------------+
| 6 | eval_precision_at_15_plot.png | 0.03 MB |
+---------+-------------------------------+------------+ - [multilabel_classify.py:2068:_save]
2025-06-03 20:28:44,815 - INFO - 💾 Model saved to: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b - [multilabel_classify.py:2650:save_and_push]
2025-06-03 20:28:44,845 - INFO - 🖌️ Tokenizer saved to: ../tmp/MIMIC4_DEMO/mimic4_classify_mistral7b - [multilabel_classify.py:2654:save_and_push]