Skip to content
Back to skills

Scene Graph Generation Eval

ASecurity

Evaluates scene graph generation models on predicting subject-predicate-object triplets while mitigating long-tailed training biases. It probes zero-shot generalization and graph-level semantic coherence through sentence-to-graph retrieval. Use when the user wants to benchmark on Visual Genome (VG), MS-COCO Caption (VG Overlap), or asks about evaluating this task. Reports mR@K.

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 11, 2026
researchpythongogitperformance

Security analysis

A100/100

Scanned September 11, 2026

npx -y skills add qhjqhj00/research-skills-pool --skill scene-graph-generation-eval --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Scene Graph Generation Eval?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Scene Graph Generation Eval
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/qhjqhj00-scene-graph-generation-eval/badge)](https://www.skillsdirectory.com/skills/qhjqhj00-scene-graph-generation-eval)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: scene-graph-generation-eval
description: Evaluates scene graph generation models on predicting subject-predicate-object triplets while mitigating long-tailed training biases. It probes zero-shot generalization and graph-level semantic coherence through sentence-to-graph retrieval. Use when the user wants to benchmark on Visual Genome (VG), MS-COCO Caption (VG Overlap), or asks about evaluating this task. Reports mR@K.
metadata:
  skill_kind: dataset_eval
  source_arxiv: 2002.11949
  bibtex_key: [REDACTED]
  confidence: high
---

# scene-graph-generation-eval

> Unbiased Scene Graph Generation from Biased Training — Tang et al. (2020) (arXiv:2002.11949, 2020)

## What this evaluates

Evaluates scene graph generation models on predicting subject-predicate-object triplets while mitigating long-tailed training biases. It probes zero-shot generalization and graph-level semantic coherence through sentence-to-graph retrieval.

## Datasets

- **Visual Genome (VG)** — total 108000; splits: train (-1), val (5000), test (-1); repo https://github.com/KaihuaTang/Scene-Graph-Benchmark.pytorch
- **MS-COCO Caption (VG Overlap)** — total 41859; splits: train (35859), test-1k (1000), test-5k (5000)

## Metrics

- `mR@K` **(primary)** — range: [0, 100] percent
  - Mean Recall@K. Computes Recall@K for each predicate category separately, then averages across all 50 predicate categories. mR@K = (1/|P|) * Σ_p Recall@K(p).
- `R@K / Med` — range: [0, 100] percent | rank
  - Recall@K for image retrieval and Median Ranking (Med) of retrieved results. R@K is the fraction of queries where the correct image appears in the top K retrieved results. Med is the median rank of the ground truth image in the ranked list.

## Input / output format

**Input**: Images with ground-truth bounding boxes and labels (PredCls), images with ground-truth boxes but no labels (SGCls), or raw images (SGDet). For S2GR, image captions paired with detected scene graphs.

**Output**: Predicted subject-predicate-object triplets per image, ranked by confidence score. For S2GR, a ranked list of retrieved images.

## Scoring recipe

```python
def compute_mR_at_K(predictions, ground_truth, K, predicates):
    recalls = []
    for p in predicates:
        gt_p = [g for g in ground_truth if g.predicate == p]
        pred_p = [pred for pred in predictions if pred.predicate == p]
        correct = sum(1 for g in gt_p if g.predicate in [pred.label for pred in pred_p[:K]])
        recalls.append(correct / len(gt_p) if gt_p else 0)
    return (sum(recalls) / len(predicates)) * 100
```

## Common pitfalls

- Standard Recall@K heavily favors head predicates and masks tail predicate failures; mR@K must be used to fairly evaluate long-tailed bias mitigation.
- Zero-shot evaluation strictly excludes any triplet observed during training, requiring careful dataset splitting and filtering.
- S2GR requires filtering low-confidence RoIs and removing background predicates to align heterogeneous image and text graphs before retrieval.

## Evidence (verbatim from paper)

> The conventional metric of RR is Recall@K (R@K), which was abandoned in this paper due to the reporting bias[[36]]. As illustrated in Figure[3](b), previous methods like [[72]] with good performance on R@K unfairly cater to “head” predicates, e.g., on, while neglect the “tail” ones, e.g., predicates like parked on, laying on have embarrassingly 0.0 Recall@100. To speak for the valuable “tail” rather than the trivial “head”, we adopted a recent replacement, mean Recall@K (mR@K), proposed by Tang et al.[[56]] and Chen et al.[[6]]. mR@K retrieves each predicate separately and then averages R@K for all predicates.

## Citation

```bibtex
@misc{tang2020unbiased,
  title={Unbiased Scene Graph Generation from Biased Training},
  author={Tang et al. (2020)},
  year={2020},
  note={arXiv:2002.11949}
}
```

- arXiv: 2002.11949

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.