turhancan97's picture
Add detection probe for dinov2_vitb14
38278b8 verified
|
Raw History Blame Contribute Delete
1.83 kB
---
library_name: visbench
tags:
- visbench
- probing
- detection
---
# detection probe for `dinov2_vitb14`
A **trained probe head**, not a backbone. It is the small module VisBench fits
on top of frozen `dinov2_vitb14` features to measure what those features carry.
```python
import visbench
from visbench.hub import load_probe_from_hub
backbone = visbench.get_backbone("dinov2_vitb14")
probe = load_probe_from_hub("turhancan97/visbench-detection-dinov2_vitb14", backbone=backbone)
```
## It only works with this backbone
These weights were fitted on features from `dinov2_vitb14`, taken with
`pooling=mean` and `feature_mode=dense_only`. Loading them against
anything else is refused, because the failure is otherwise silent: a head fitted
on one pooling and fed another has the right shapes and produces a plausible,
wrong number.
| | |
| --- | --- |
| backbone | `dinov2_vitb14` |
| backbone key | `dinov2/dinov2_vitb14/224/7764ea0f912e` |
| task | `detection` (high_level) |
| pooling | `mean` (requested `mean`) |
| feature mode | `dense_only` |
| layers | `None` |
**Reported scores**
| metric | value |
| --- | --- |
| `classes_scored` | 20.0000 |
| `detections_per_image` | 88.5717 |
| `map_50` | 0.2897 |
| `map_50_95` | 0.0988 |
## Reproducing it
Fitted with:
- `batch_size`: `8`
- `box_weight`: `2.0`
- `epochs`: `10`
- `focal_alpha`: `0.25`
- `focal_gamma`: `2.0`
- `head`: `detection`
- `hidden_dim`: `0`
- `image_size`: `224`
- `iou_thresholds`: `[0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95]`
- `lr`: `0.0005`
- `max_detections`: `100`
- `nms_iou`: `0.5`
- `num_classes`: `20`
- `optimizer`: `adamw`
- `protocol`: `visbench_anchor_free_det`
- `score_threshold`: `0.05`
- `warmup_epochs`: `1.5`
- `weight_decay`: `0.0001`
Generated by [VisBench](https://github.com/turhancan97/VisBench).