chrisvoncsefalvay's picture
Update model card with evaluation results
7602e47 verified
---
language:
- en
license: apache-2.0
base_model: HuggingFaceTB/SmolLM3-3B
tags:
- clinical
- medical
- sentence-classification
- multi-label
- action-items
- discharge-summary
- lora
- peft
datasets:
- chrisvoncsefalvay/smol-discharge-sentences-sft
metrics:
- f1
- accuracy
pipeline_tag: text-generation
library_name: peft
---
# SmolLM3-Instruct Discharge Sentences SFT
A fine-tuned version of [SmolLM3-3B](https://huggingface.co/HuggingFaceTB/SmolLM3-3B) for **multi-label clinical sentence classification** in hospital discharge summaries.
## Model Description
This model classifies individual sentences from discharge summaries into categories of follow-up actions:
- **instructions**: Case-specific instructions for the patient
- **appointment**: Appointment-related followup
- **medication**: Medication-related followups
- **lab**: Lab-related followup
- **procedure**: Procedure-related followup
- **imaging**: Imaging-related followup
- **other**: Other helpful contextual information
## Performance
Evaluated on 5,313 test samples:
| Metric | Score |
|--------|-------|
| **JSON Validity** | 100.0% |
| **Exact Match Accuracy** | 85.6% |
| **Micro F1** | 0.796 |
| **Macro F1** | 0.647 |
| **Micro Precision** | 0.854 |
| **Micro Recall** | 0.745 |
### Per-Category Performance
| Category | Precision | Recall | F1 | Support |
|----------|-----------|--------|-----|---------|
| instructions | 0.873 | 0.745 | 0.804 | 1153 |
| appointment | 0.848 | 0.902 | 0.874 | 660 |
| medication | 0.797 | 0.674 | 0.730 | 239 |
| lab | 0.909 | 0.606 | 0.727 | 132 |
| procedure | 0.700 | 0.400 | 0.509 | 35 |
| imaging | 0.909 | 0.541 | 0.678 | 37 |
| other | 0.526 | 0.127 | 0.204 | 79 |
### Comparison with Base SFT Model
| Metric | Base SFT | Instruct SFT | Improvement |
|--------|----------|--------------|-------------|
| JSON Validity | 97.5% | 100.0% | +2.5 pp |
| Exact Match | 76.3% | 85.6% | **+9.3 pp** |
| Micro F1 | 0.631 | 0.796 | **+26%** |
| Macro F1 | 0.568 | 0.647 | +14% |
| Micro Recall | 0.553 | 0.745 | **+35%** |
## Usage
```python
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
# Load base model and adapter
base_model = AutoModelForCausalLM.from_pretrained(
"HuggingFaceTB/SmolLM3-3B",
torch_dtype="auto",
device_map="auto",
)
model = PeftModel.from_pretrained(base_model, "chrisvoncsefalvay/smollm3-instruct-discharge-sentences-sft")
tokenizer = AutoTokenizer.from_pretrained("chrisvoncsefalvay/smollm3-instruct-discharge-sentences-sft")
# Prepare input
messages = [
{"role": "system", "content": "You are a clinical action item classifier..."},
{"role": "user", "content": "Classify this sentence:\n\nPlease take aspirin 81mg daily."}
]
input_text = tokenizer.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)
inputs = tokenizer(input_text, return_tensors="pt").to(model.device)
# Generate
outputs = model.generate(**inputs, max_new_tokens=64, temperature=0.1)
response = tokenizer.decode(outputs[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True)
print(response)
# {"categories": ["medication", "instructions"]}
```
## Training Details
- **Base Model**: HuggingFaceTB/SmolLM3-3B (instruction-tuned)
- **Method**: LoRA (r=64, alpha=128, dropout=0.1)
- **Target Modules**: q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
- **Dataset**: [chrisvoncsefalvay/smol-discharge-sentences-sft](https://huggingface.co/datasets/chrisvoncsefalvay/smol-discharge-sentences-sft)
- **Training Samples**: 25,782
- **Epochs**: 3
- **Learning Rate**: 5e-5
- **Effective Batch Size**: 16
- **Precision**: bf16
## Advantages Over Base Model
Using the instruction-tuned SmolLM3-3B as a base provides:
1. **Perfect JSON validity** (100%) - built-in chat template ensures reliable structured output
2. **Significantly higher recall** (+35%) - better at identifying action items
3. **No custom template needed** - uses standard chat format
## Citation
If you use this model, please cite:
```bibtex
@misc{smollm3-instruct-discharge-sft,
author = {von Csefalvay, Chris},
title = {SmolLM3-Instruct Discharge Sentences SFT},
year = {2025},
publisher = {HuggingFace},
url = {https://huggingface.co/chrisvoncsefalvay/smollm3-instruct-discharge-sentences-sft}
}
```
## License
Apache 2.0