{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/stacked-hybrid-attention-and-group","title":"Stacked Hybrid-Attention and Group Collaborative Learning for Unbiased Scene Graph Generation","arxiv_id":"2203.09811","date":"2022-03-18","proceeding":"CVPR 2022 1","authors":["Xingning Dong","Tian Gan","Xuemeng Song","Jianlong Wu","Yuan Cheng","Liqiang Nie"],"abstract":"Scene Graph Generation, which generally follows a regular encoder-decoder pipeline, aims to first encode the visual contents within the given image and then parse them into a compact summary graph. Existing SGG approaches generally not only neglect the insufficient modality fusion between vision and language, but also fail to provide informative predicates due to the biased relationship predictions, leading SGG far from practical. Towards this end, in this paper, we first present a novel Stacked Hybrid-Attention network, which facilitates the intra-modal refinement as well as the inter-modal interaction, to serve as the encoder. We then devise an innovative Group Collaborative Learning strategy to optimize the decoder. Particularly, based upon the observation that the recognition capability of one classifier is limited towards an extremely unbalanced dataset, we first deploy a group of classifiers that are expert in distinguishing different subsets of classes, and then cooperatively optimize them from two aspects to promote the unbiased SGG. Experiments conducted on VG and GQA datasets demonstrate that, we not only establish a new state-of-the-art in the unbiased metric, but also nearly double the performance compared with two baselines.","url_abs":"https://arxiv.org/abs/2203.09811v2","url_pdf":"https://arxiv.org/pdf/2203.09811v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"stacked-hybrid-attention-and-group","repo_url":"https://github.com/dongxingning/sha-gcl-for-sgg","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"decoder","task_name":"Decoder"},{"task_slug":"graph-generation","task_name":"Graph Generation"},{"task_slug":"scene-graph-generation","task_name":"Scene Graph Generation"},{"task_slug":"unbiased-scene-graph-generation","task_name":"Unbiased Scene Graph Generation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/unbiased-scene-graph-generation-on-visual","task":"Unbiased Scene Graph Generation","dataset":"Visual Genome","model":"SHA-GCL (MOTIFS-ResNeXt-101-FPN backbone; PredCls mode)","rank_in_archive_order":25,"of":31,"metrics":{"mR@20":"35.6"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2203.09811","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2203.09811"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/dongxingning/sha-gcl-for-sgg","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/dongxingning/SHA-GCL-for-SGG","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":3,"unverified":4},"by_repo_kind":{"official":{"samples":7,"ran":3,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":7,"samples":[{"code_sha256_prefix":"a7dd305afad6384a","entry":"KL_divergence","repo":"dongxingning/SHA-GCL-for-SGG","repo_kind":"official","path":"SHA_GCL_extra/kl_divergence.py","file_url":"https://github.com/dongxingning/SHA-GCL-for-SGG/blob/HEAD/SHA_GCL_extra/kl_divergence.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"a7dd305afad6384a"}},{"code_sha256_prefix":"34e6a1c47d6e4439","entry":"generate_current_predicate_set","repo":"dongxingning/SHA-GCL-for-SGG","repo_kind":"official","path":"SHA_GCL_extra/extra_function_utils.py","file_url":"https://github.com/dongxingning/SHA-GCL-for-SGG/blob/HEAD/SHA_GCL_extra/extra_function_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"34e6a1c47d6e4439"}},{"code_sha256_prefix":"10d0263db1bc534b","entry":"generate_num_stage_vector","repo":"dongxingning/SHA-GCL-for-SGG","repo_kind":"official","path":"SHA_GCL_extra/extra_function_utils.py","file_url":"https://github.com/dongxingning/SHA-GCL-for-SGG/blob/HEAD/SHA_GCL_extra/extra_function_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"10d0263db1bc534b"}},{"code_sha256_prefix":"2d943c0c96e61f16","entry":"entropy_loss","repo":"dongxingning/SHA-GCL-for-SGG","repo_kind":"official","path":"maskrcnn_benchmark/layers/entropy_loss.py","file_url":"https://github.com/dongxingning/SHA-GCL-for-SGG/blob/HEAD/maskrcnn_benchmark/layers/entropy_loss.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"2d943c0c96e61f16"}},{"code_sha256_prefix":"f6c74916e495b24c","entry":"generate_groups_by_n_times_GQA","repo":"dongxingning/SHA-GCL-for-SGG","repo_kind":"official","path":"SHA_GCL_extra/get_your_own_group/get_group_splits.py","file_url":"https://github.com/dongxingning/SHA-GCL-for-SGG/blob/HEAD/SHA_GCL_extra/get_your_own_group/get_group_splits.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"f6c74916e495b24c"}},{"code_sha256_prefix":"7e87355f75eed0c8","entry":"get_current_predicate_idx","repo":"dongxingning/SHA-GCL-for-SGG","repo_kind":"official","path":"SHA_GCL_extra/extra_function_utils.py","file_url":"https://github.com/dongxingning/SHA-GCL-for-SGG/blob/HEAD/SHA_GCL_extra/extra_function_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"7e87355f75eed0c8"}},{"code_sha256_prefix":"ce76bee1690bd7b4","entry":"get_group_splits","repo":"dongxingning/SHA-GCL-for-SGG","repo_kind":"official","path":"SHA_GCL_extra/group_chosen_function.py","file_url":"https://github.com/dongxingning/SHA-GCL-for-SGG/blob/HEAD/SHA_GCL_extra/group_chosen_function.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":false,"mcp_get_code":{"code_sha256":"ce76bee1690bd7b4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}