Evaluates multimodal geospatial models on wildfire risk prediction across in-distribution and out-of-distribution regions. It probes the ability of vision-language models to generate chain-of-thought reasoning traces that condition a vision decoder for accurate, interpretable spatial risk raster generation. Use when the user wants to benchmark on FireScope-Bench, or asks about evaluating this task. Reports ROC AUC, QWK.
Scanned 9/11/2026
Install to Claude Code
npx -y skills add qhjqhj00/research-skills-pool --skill firescope-eval --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Firescope Eval?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/qhjqhj00-firescope-eval)More formats (shields.io, HTML) on the badges page.
---
name: firescope-eval
description: Evaluates multimodal geospatial models on wildfire risk prediction across in-distribution and out-of-distribution regions. It probes the ability of vision-language models to generate chain-of-thought reasoning traces that condition a vision decoder for accurate, interpretable spatial risk raster generation. Use when the user wants to benchmark on FireScope-Bench, or asks about evaluating this task. Reports ROC AUC, QWK.
metadata:
skill_kind: dataset_eval
source_arxiv: 2511.17171
bibtex_key: markov2025firescope
confidence: high
---
# firescope-eval
> FireScope: Wildfire Risk Prediction with a Chain-of-Thought Oracle — Markov et al. (2025) (arXiv:2511.17171, 2025)
## What this evaluates
Evaluates multimodal geospatial models on wildfire risk prediction across in-distribution and out-of-distribution regions. It probes the ability of vision-language models to generate chain-of-thought reasoning traces that condition a vision decoder for accurate, interpretable spatial risk raster generation.
## Datasets
- **FireScope-Bench** — total ?; splits: train (-1), test (-1)
## Metrics
- `ROC AUC` **(primary)** — range: [0, 1]
- Area under the receiver operating characteristic curve, measuring the model's ability to distinguish between wildfire risk classes across all classification thresholds.
- `QWK` **(primary)** — range: [0, 1]
- Quadratic weighted kappa, measuring the agreement between predicted and ground truth risk levels while penalizing larger disagreements more heavily.
- `Brier` — range: [0, 1]
- Mean squared difference between predicted probability and actual binary outcome, evaluating probabilistic calibration.
- `MSE` — range: [0, infinity)
- Mean squared error between predicted and ground truth continuous raster pixel values.
- `SSIM` — range: [0, 1]
- Structural similarity index measuring perceptual similarity between predicted and ground truth risk rasters based on luminance, contrast, and structure.
- `Fidelity` — range: [-1, 1]
- fid = 1/N sum((y_tilde - y) / (y* - y)), where y is original prediction, y_tilde is prediction after injecting a perturbed CoT arguing for the opposite risk level, and y* is the target opposite class. Measures how much the model's prediction shifts toward the direction suggested by the CoT.
- `Consistency` — range: [0, 1]
- cons = 1 - 1/N sum(|y_hat - y| / d_i), where y_hat is prediction after paraphrasing the CoT, and d_i is the distance to the nearest class boundary. Measures robustness of predictions to CoT paraphrasing.
## Input / output format
**Input**: Sentinel-2 satellite imagery tiles, corresponding climate data vectors, and optionally chain-of-thought reasoning traces or oracle scalar predictions.
**Output**: For the Oracle: a scalar risk estimate or classification. For the FireScope framework: a continuous spatial risk raster matching the input tile resolution.
## Scoring recipe
```python
def compute_metrics(preds, gold):
# preds, gold: numpy arrays of shape (N,) for classification or (H,W) for rasters
roc_auc = roc_auc_score(gold, preds)
qwk = quadratic_weighted_kappa(gold, preds)
brier = np.mean((preds - gold)**2)
mse = np.mean((preds - gold)**2)
ssim = structural_similarity(gold, preds)
# Fidelity & Consistency require perturbed/paraphrased CoT runs
# fid = np.mean((preds_perturbed - preds) / (target_opposite - preds))
# cons = 1 - np.mean(np.abs(preds_paraphrased - preds) / dist_to_boundary)
return {'ROC AUC': roc_auc, 'QWK': qwk, 'Brier': brier, 'MSE': mse, 'SSIM': ssim}
```
## Common pitfalls
- Confusing in-distribution (ID) vs out-of-distribution (OOD) evaluation splits; OOD is the critical generalization test emphasized in the paper.
- Treating the Oracle's scalar prediction as the final output instead of conditioning the vision decoder to generate full spatial rasters.
- Misinterpreting Fidelity/Consistency: Fidelity measures directional shift toward a perturbed CoT, not absolute accuracy; Consistency measures robustness to paraphrasing, not ground-truth faithfulness.
## Evidence (verbatim from paper)
> Looking at the ID performance of Oracles, we observe something striking: the Climate MLP Oracle achieves a QWK score of 0.76, comparable only to CoT Qwen, corresponding to substantial agreement with the ground truth. Unlike for CoT Qwen, its performance does not transfer to OOD data.
## Citation
```bibtex
@misc{markov2025firescope,
title={FireScope: Wildfire Risk Prediction with a Chain-of-Thought Oracle},
author={Markov et al. (2025)},
year={2025},
note={arXiv:2511.17171}
}
```
- arXiv: 2511.17171
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!