SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2505.13910 · IJCAI · 2025

ShortcutProbe: Probing Prediction Shortcuts for Learning Robust Models

Guangtao Zheng, Wenqian Ye, Aidong Zhang

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 27 functions out of this paper's own repositories and ran 21 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
gtzheng/ShortcutProbe — 21 of 27
FunctionStatusWhere it lives
ClassBalancedSampler Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("6e663667ba7ed3f2")
EmbedDataset Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("a87713c5b6ae5b15")
GroupBalancedSampler Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("c468389298284a04")
IdxDataset Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("4711b44eb7381e64")
JointDataset Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("fa1c55aa70701d1e")
JointRandomSampler Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("a5207b840e3096a2")
MisDataset Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("52fb87f5341104be")
PredDataset Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("2ee64f5afd17a5a3")
RandomSampler Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("36087249bd727695")
RunningVariance Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("4a0b5cf2bf60d9e7")
ShortcutSampler Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("f6cdc99333d7ac0c")
SpuriousVectors Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("b3e59759edda6308")
SubsetDataset Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("3be6f85f9a2c50c3")
bert_adamw_optimizer Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("abb051ad54c04456")
disentangle_pca Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("227d71f4a9526c48")
extract_feature_info Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("ffd024417d2e0ee9")
get_split_indexes Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("24df1f39ca418afa")
init_optimizer Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("ad87b4581c72eb68")
init_scheduler Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("97a6fbbb8298e7a0")
load_embeddings Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("2a04614f7104524c")
register_algorithm Ran gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("6f906e5668960d23")
Algorithm Not yet run gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("9c581ceeab1e7194")
Classifier Not yet run gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("aa528f9aa86d7413")
Scaler Not yet run gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("6a3dd1d39f936e97")
get_backbone Not yet run gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("3db8286f1e2584d6")
prepare_data Not yet run gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("0d22a2219be7c189")
shortcutprobe Not yet run gtzheng/ShortcutProbe/algorithms/shortcut_probe.py
pointer only (licence: NONE) · get_code("d99a2ddd28ee9061")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Deep learning models often achieve high performance by inadvertently learning spurious correlations between targets and non-essential features. For example, an image classifier may identify an object via its background that spuriously correlates with it. This prediction behavior, known as spurious bias, severely degrades model performance on data that lacks the learned spurious correlations. Existing methods on spurious bias mitigation typically require a variety of data groups with spurious correlation annotations called group labels. However, group labels require costly human annotations and often fail to capture subtle spurious biases such as relying on specific pixels for predictions. In this paper, we propose a novel post hoc spurious bias mitigation framework without requiring group labels. Our framework, termed ShortcutProbe, identifies prediction shortcuts that reflect potential nonrobustness in predictions in a given model's latent space. The model is then retrained to be invariant to the identified prediction shortcuts for improved robustness. We theoretically analyze the effectiveness of the framework and empirically demonstrate that it is an efficient and practical tool for improving a model's robustness to spurious bias on diverse datasets.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2505.13910")
get_code_for_paper("2505.13910")
have("2505.13910")

Connect an agent — have() is free.