Jaguar Re-Identification - Model Artifacts
Kaggle "Jaguar Re-Identification Challenge" コンペティションの学習済みモデル重み・サブミッション・設定ファイルのバックアップ。
Best Score
Public LB 0.948 (exp004 + exp005 weighted ensemble, w=0.7/0.3)
Contents
Model Weights (weights/)
| Experiment | Description | LB Score | File | Size |
|---|---|---|---|---|
| exp004/000 | EVA-02-L-448 + GeM + ArcFace + Jaccard Rerank + Optimal Blend (10ep) | 0.946 | weights/exp004_0938_optimal_blending/000/best_model.pth |
~1.2GB |
| exp005/000 | Pseudo-Labeling fine-tune on exp004 (5ep) | 0.937 | weights/exp005_pseudo_labeling/000/best_model_finetuned.pth |
~1.2GB |
| exp006/001 | DINOv2 ViT-L-518 + GeM + ArcFace (20ep) | 0.925 | weights/exp006_dinov2/001/best_model.pth |
~1.2GB |
Submissions (submissions/)
各実験の推論結果 CSV (baseline, TTA, rerank, optimal_blend)。
Configs (configs/)
各実験の Hydra 設定ファイル (config.yaml + exp/*.yaml)。
Docs & Logs (docs/, logs/)
docs/experiments.md: 全実験結果・知見集約docs/TODO.md: タスク管理docs/KAGGLE_DIRECTION.md: コンペ固有ワークフローlogs/Log_*.md: 日別開発ログ
Experiment Summary
| Experiment | Backbone | Epochs | Best Loss | Accuracy | LB |
|---|---|---|---|---|---|
| exp002/000 | MegaDescriptor-B-224 | 25 | - | - | 0.781 |
| exp003/000 | EVA-02-L-448 | 10 | - | - | 0.921 |
| exp003/001 | EVA-02-L-448 | 20 | 0.3035 | 96.78% | 0.913 |
| exp004/000 | EVA-02-L-448 | 10 | 0.1355 | 98.47% | 0.946 |
| exp004/001 | EVA-02-L-448 | 20 | 0.0481 | 99.42% | 0.945 |
| exp005/000 | EVA-02-L-448 (PL) | 5 | 0.0731 | 99.20% | 0.937 |
| exp006/000 | DINOv2-L-518 | 10 | 0.3982 | 95.14% | 0.897 |
| exp006/001 | DINOv2-L-518 | 20 | 0.0827 | 98.94% | 0.925 |
| exp007/000 | EVA-02-L-448 (LwLR+W+EMA) | 10 | 4.4556 | 48.94% | - |
| exp007/001 | EVA-02-L-448 (LwLR0.95+W+EMA) | 10 | 0.3466 | 95.56% | - |
| exp007/002 | EVA-02-L-448 (W+EMA) | 10 | 0.1904 | 97.83% | - |
| Ensemble | exp004+exp005 (w0.7/0.3) | - | - | - | 0.948 |
Key Insights
- EVA-02 Large 448px が最も効果的なバックボーン (MegaDescriptor-B-224 比 LB +0.140)
- Jaccard Re-ranking + Optimal Blending (20% raw + 80% reranked) が後処理として有効
- 20ep 延長学習は微小改善〜悪化: exp003は悪化 (0.921→0.913)、exp004はほぼ同等 (0.946→0.945)
- Layer-wise LR Decay は EVA-02 Large に有害: decay_rate=0.95 でも全層同一LR に劣る
- Warmup + EMA は微小劣化: 10ep では warmup の序盤学習遅延を回収しきれない
Reproduction
Code
git clone git@github.com:nawta/Jaguar_Re_Identification.git
cd Jaguar_Re_Identification
git checkout lb-0.948
Environment
# Python environment
uv sync
# or Docker
make build && make bash
Data
Competition data is NOT included. Download from Kaggle:
kaggle competitions download -c jaguar-re-id
unzip jaguar-re-id.zip -d input/
Training
# Best single model (exp004)
uv run python -m experiments.exp004_0938_optimal_blending.run exp=000
# Pseudo-labeling (exp005, requires exp004 weights)
uv run python -m experiments.exp005_pseudo_labeling.run exp=000
# DINOv2 (exp006)
uv run python -m experiments.exp006_dinov2.run exp=000
Ensemble (LB 0.948)
exp004 と exp005 の submission.csv を weighted average (w=0.7/0.3) で結合:
import pandas as pd
df004 = pd.read_csv("output/experiments/exp004_0938_optimal_blending/000/submission.csv")
df005 = pd.read_csv("output/experiments/exp005_pseudo_labeling/000/submission.csv")
df_ens = df004.copy()
df_ens["score"] = 0.7 * df004["score"] + 0.3 * df005["score"]
df_ens.to_csv("submission_ensemble.csv", index=False)
Not Included
- Competition input data (
input/, ~17GB): Re-download viakaggle competitions download -c jaguar-re-id - Inferior model weights: exp002 (LB 0.781), exp003 (LB 0.921), exp007 (exp004 以下)
- Python virtual environment (
.venv/): Recreate viauv sync - wandb logs: Synced to wandb.ai/nawta1998/jaguar-re-identification
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support