Image Classification
Transformers
Tibetan
tibetan
script-classification
dinov3
binary

You need to agree to share your contact information to access this model

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

Log in or Sign Up to review the conditions and access this model content.

Danyig vs Pedri Binary Script Classifier (DINOv3 ViT-S)

Fine-tuned DINOv3 ViT-S for parent script classification:

Danyig, Pedri

Experiment: dinov3_danyig_pedri_binary (danyig_pedri_binary_classification)
Pooling: ViT CLS token (last_hidden_state[:, 0, :])
Weights: final_model.pt (best validation macro-F1 across stages A/B/C)

Data

Test split: balanced benchmark (60 images per parent class, held out of training).

Preprocessing

Split Mode Size
train resize_letterbox 448
val resize_letterbox 448
test resize_letterbox 448

Validation metrics (n=118)

Metric Value
Accuracy 81.4%
Macro F1 0.814
Weighted F1 0.813
AUC-ROC 0.863
Loss 0.5729

Best checkpoint: best_stage_c_last_blocks.pt epoch 12 val macro-F1 0.814

Per-class (validation)

precision    recall  f1-score   support

      Danyig       0.84      0.78      0.81        60
       Pedri       0.79      0.84      0.82        58

    accuracy                           0.81       118
   macro avg       0.81      0.81      0.81       118
weighted avg       0.82      0.81      0.81       118

Test / benchmark metrics (n=120)

Metric Value
Accuracy 85.0%
Macro F1 0.849
Weighted F1 0.849
AUC-ROC 0.914
Loss 0.4417

Per-class (test)

precision    recall  f1-score   support

      Danyig       0.90      0.78      0.84        60
       Pedri       0.81      0.92      0.86        60

    accuracy                           0.85       120
   macro avg       0.86      0.85      0.85       120
weighted avg       0.86      0.85      0.85       120

Training

Stage Epochs LR head LR backbone Unfrozen blocks
A 7 0.0005 — 0
B 10 0.0001 1e-05 4
C 12 5e-05 1.5e-05 8
Setting Value
Scheduler cosine_warmup
Class weights custom
Label smoothing 0.05
Dropout 0.1

Confusion matrix (test)

Confusion matrix

True \ Pred Danyig Pedri
Danyig 47 13
Pedri 5 55

Files

File Description
final_model.pt Best val-F1 weights + label maps
results.json Full metrics, history, warm-start info
config.yaml Training config
model_card.json Summary metadata
confusion_matrix.json / .png Test CM
training_history.png Stage loss / val F1 curves
split_stats.json / .md Per-class split counts
inference.py Classify image paths
requirements-inference.txt Pip deps

Inference

pip install -r requirements-inference.txt
python inference.py --checkpoint final_model.pt --image path/to/page.jpg --preprocess resize_letterbox --preprocess-size 448

Reproduce training

python experiments/danyig-pedri-subclass/train.py

Model repo: BDRC/danyig-pedri-binary-script-classifier

License

The fine-tuned model weights are derivative works of DINOv3 and are distributed under the DINOv3 License. The original inference code in this repository is available under the Apache License 2.0.

Downloads last month
-
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for BDRC/danyig-pedri-binary-script-classifier

Collection including BDRC/danyig-pedri-binary-script-classifier