Evaluates a model's ability to ignore out-of-context patches (patch selectivity) and maintain classification accuracy under simulated occlusion and spatial permutation attacks. Use when the user wants to benchmark on ImageNet-1K val, SMD, NVD, ROD, or asks about evaluating this task. Reports Top-1 accuracy.
Scanned 9/11/2026
Install to Claude Code
npx -y skills add qhjqhj00/research-skills-pool --skill patch-selectivity-eval --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Patch Selectivity Eval?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/qhjqhj00-patch-selectivity-eval)More formats (shields.io, HTML) on the badges page.
---
name: patch-selectivity-eval
description: Evaluates a model's ability to ignore out-of-context patches (patch selectivity) and maintain classification accuracy under simulated occlusion and spatial permutation attacks. Use when the user wants to benchmark on ImageNet-1K val, SMD, NVD, ROD, or asks about evaluating this task. Reports Top-1 accuracy.
metadata:
skill_kind: dataset_eval
source_arxiv: 2306.17848
bibtex_key: lee2023hardwiring
confidence: high
---
# patch-selectivity-eval
> Hardwiring ViT Patch Selectivity into CNNs using Patch Mixing — Lee et al. (2023) (arXiv:2306.17848, 2023)
## What this evaluates
Evaluates a model's ability to ignore out-of-context patches (patch selectivity) and maintain classification accuracy under simulated occlusion and spatial permutation attacks.
## Datasets
- **ImageNet-1K val** — total ?; splits: val (-1)
- **SMD** — total ?; splits: test (-1)
- **NVD** — total ?; splits: val (-1)
- **ROD** — total ?; splits: test (-1)
## Metrics
- `Top-1 accuracy` **(primary)** — range: percent
- Standard classification accuracy: the fraction of correctly predicted top-1 classes out of total evaluated instances.
- `Top-5 accuracy` — range: percent
- Fraction of instances where the true label appears in the model's top-5 predicted classes.
- `Inverse patch selectivity` — range: [0, 1]
- Sum of Softmax-normalized c-RISE importance values over out-of-context patches. Lower values indicate better selectivity.
## Input / output format
**Input**: Natural images from benchmark datasets, optionally subjected to patch replacement, grid shuffling, or occlusion attacks during evaluation.
**Output**: Class predictions (top-1 or top-5 ranked classes) and, for explainability analysis, c-RISE importance heatmaps normalized via Softmax.
## Scoring recipe
```python
def compute_accuracy(preds, gold):
correct = sum(1 for p, g in zip(preds, gold) if p == g)
return correct / len(gold)
def compute_inverse_patch_selectivity(rise_maps, ooc_mask):
norm_maps = softmax(rise_maps, dim=0)
return sum(norm_maps[ooc_mask])
```
## Common pitfalls
- Confusing the training-time Patch Mixing augmentation with the evaluation-time patch replacement/shuffle attacks.
- Mixing up Top-1 and Top-5 accuracy metrics, as the paper reports Top-1 for IN/SMD but Top-5 for NVD/ROD.
- Assuming ViTs inherently lack occlusion robustness without testing under controlled information loss.
## Evidence (verbatim from paper)
> Table 1 presents a summary of the results for different network architectures tested on three datasets: ImageNet-1K val (IN) top-1, SMD top-1 (avg. over 10 - 30% occlusion), NVD [25] simulated occlusion validation top-5, and ROD top-5.
## Citation
```bibtex
@misc{lee2023hardwiring,
title={Hardwiring ViT Patch Selectivity into CNNs using Patch Mixing},
author={Lee et al. (2023)},
year={2023},
note={arXiv:2306.17848}
}
```
- arXiv: 2306.17848
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!