Installs into .claude/skills of the current project.
Are you the author of Pope Negative Sampling?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-pope-negative-sampling)
---
name: pope_negative_sampling
description: Select POPE absent-object negatives using random, popular, and adversarial strategies for object hallucination evaluation.
---
# POPE Negative Sampling
Use this skill when constructing POPE-style object hallucination probes from image object annotations. It should be used after records have been normalized to `{image, objects}` and before emitting negative yes/no questions.
Do not use this skill to answer LVLM questions or to compute final metrics. It only chooses absent objects and computes dataset statistics.
## Inputs
- A list of image records with `image` and `objects` fields.
- A current image's object list.
- A per-image history of already used object names.
- A strategy: `random`, `popular`, or `adversarial`.
- For adversarial sampling, the positive anchor object.
- Optional random seed for deterministic random selection.
## Outputs
- Dataset object frequencies.
- Object co-occurrence rankings.
- A selected negative object that is not present in the current image and not already used in the image history.
## Workflow
1. Normalize object strings by stripping whitespace and removing empties.
2. Build a vocabulary and global frequency count over all records.
3. Build co-occurrence rankings by counting other objects appearing in the same image.
4. For `random`, choose an eligible absent vocabulary item with the seeded random generator.
5. For `popular`, choose the most frequent eligible absent item.
6. For `adversarial`, choose the highest-ranked eligible co-occurring item for the anchor; if none is eligible, fall back to popular selection and record that it remains an absent-object probe.
7. Raise a clear error when no eligible absent object exists.
## Validation
Run:
```bash
python scripts/pope_negative_sampling.py --self-test
python tests/test_negative_sampling.py
```
The tests verify frequency counts, co-occurrence rankings, and the invariant that present objects are never selected as negatives.
## Limitations
The skill assumes object annotations are already available or have been generated by another component. It does not run segmentation or inspect images.