{"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/composite-feature-selection-using-deep","title":"Composite Feature Selection using Deep Ensembles","arxiv_id":"2211.00631","date":"2022-11-01","proceeding":null,"authors":["Fergus Imrie","Alexander Norcliffe","Pietro Lio","Mihaela van der Schaar"],"abstract":"In many real world problems, features do not act alone but in combination with each other. For example, in genomics, diseases might not be caused by any single mutation but require the presence of multiple mutations. Prior work on feature selection either seeks to identify individual features or can only determine relevant groups from a predefined set. We investigate the problem of discovering groups of predictive features without predefined grouping. To do so, we define predictive groups in terms of linear and non-linear interactions between features. We introduce a novel deep learning architecture that uses an ensemble of feature selection models to find predictive groups, without requiring candidate groups to be provided. The selected groups are sparse and exhibit minimum overlap. Furthermore, we propose a new metric to measure similarity between discovered groups and the ground truth. We demonstrate the utility of our model on multiple synthetic tasks and semi-synthetic chemistry datasets, where the ground truth structure is known, as well as an image dataset and a real-world cancer dataset.","url_abs":"https://arxiv.org/abs/2211.00631v2","url_pdf":"https://arxiv.org/pdf/2211.00631v2.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":"composite-feature-selection-using-deep","repo_url":"https://github.com/a-norcliffe/composite-feature-selection","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"composite-feature-selection-using-deep","repo_url":"https://github.com/vanderschaarlab/composite-feature-selection","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"feature-selection","task_name":"feature selection"}],"methods":[{"method_slug":"feature-selection","method_name":"Feature Selection"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2211.00631","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2211.00631"}},"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":"deterministic:regex_extraction","url":"https://github.com/a-norcliffe/Composite-Feature-Selection","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/vanderschaarlab/Composite-Feature-Selection","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vanderschaarlab/composite-feature-selection","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/a-norcliffe/composite-feature-selection","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":4,"ran_violates":1,"ran_draft_wrong":1,"unverified":7},"by_repo_kind":{"official":{"samples":13,"ran":6,"repositories":2}},"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":0,"samples":[{"code_sha256_prefix":"bb117b596f431931","entry":"CompFS","repo":"a-norcliffe/composite-feature-selection","repo_kind":"official","path":"compfs/models/compfs.py","file_url":"https://github.com/a-norcliffe/composite-feature-selection/blob/HEAD/compfs/models/compfs.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bb117b596f431931"}},{"code_sha256_prefix":"8ae878fd4771f41b","entry":"FullyConnected","repo":"a-norcliffe/composite-feature-selection","repo_kind":"official","path":"compfs/models/compfs.py","file_url":"https://github.com/a-norcliffe/composite-feature-selection/blob/HEAD/compfs/models/compfs.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8ae878fd4771f41b"}},{"code_sha256_prefix":"55b31ad1b5c1ab68","entry":"Gate","repo":"a-norcliffe/composite-feature-selection","repo_kind":"official","path":"compfs/models/compfs.py","file_url":"https://github.com/a-norcliffe/composite-feature-selection/blob/HEAD/compfs/models/compfs.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"55b31ad1b5c1ab68"}},{"code_sha256_prefix":"0df3c850588a3e59","entry":"SingleFeatureSelector","repo":"a-norcliffe/composite-feature-selection","repo_kind":"official","path":"compfs/models/compfs.py","file_url":"https://github.com/a-norcliffe/composite-feature-selection/blob/HEAD/compfs/models/compfs.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0df3c850588a3e59"}},{"code_sha256_prefix":"dfd24b81d29918ff","entry":"is_array_in_list","repo":"a-norcliffe/composite-feature-selection","repo_kind":"official","path":"compfs/models/compfs.py","file_url":"https://github.com/a-norcliffe/composite-feature-selection/blob/HEAD/compfs/models/compfs.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"dfd24b81d29918ff"}},{"code_sha256_prefix":"4321a42df5ef22c5","entry":"set_device","repo":"a-norcliffe/composite-feature-selection","repo_kind":"official","path":"experiments/run_experiment.py","file_url":"https://github.com/a-norcliffe/composite-feature-selection/blob/HEAD/experiments/run_experiment.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4321a42df5ef22c5"}},{"code_sha256_prefix":"96774edcbdcbf02f","entry":"accuracy","repo":"vanderschaarlab/Composite-Feature-Selection","repo_kind":"official","path":"compfs/metrics.py","file_url":"https://github.com/vanderschaarlab/Composite-Feature-Selection/blob/HEAD/compfs/metrics.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":true,"mcp_get_code":{"code_sha256":"96774edcbdcbf02f"}},{"code_sha256_prefix":"d4dd30aec90c6ea3","entry":"featurise_mols","repo":"vanderschaarlab/Composite-Feature-Selection","repo_kind":"official","path":"compfs/datasets/chem_featuriser.py","file_url":"https://github.com/vanderschaarlab/Composite-Feature-Selection/blob/HEAD/compfs/datasets/chem_featuriser.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":true,"mcp_get_code":{"code_sha256":"d4dd30aec90c6ea3"}},{"code_sha256_prefix":"fbf0f537e8971813","entry":"lasso_accuracy","repo":"vanderschaarlab/Composite-Feature-Selection","repo_kind":"official","path":"compfs/metrics.py","file_url":"https://github.com/vanderschaarlab/Composite-Feature-Selection/blob/HEAD/compfs/metrics.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":true,"mcp_get_code":{"code_sha256":"fbf0f537e8971813"}},{"code_sha256_prefix":"9237a86cdc2f1959","entry":"make_lambda_threshold","repo":"vanderschaarlab/Composite-Feature-Selection","repo_kind":"official","path":"compfs/thresholding_functions.py","file_url":"https://github.com/vanderschaarlab/Composite-Feature-Selection/blob/HEAD/compfs/thresholding_functions.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":true,"mcp_get_code":{"code_sha256":"9237a86cdc2f1959"}},{"code_sha256_prefix":"c9a3fee6017301d1","entry":"make_std_threshold","repo":"vanderschaarlab/Composite-Feature-Selection","repo_kind":"official","path":"compfs/thresholding_functions.py","file_url":"https://github.com/vanderschaarlab/Composite-Feature-Selection/blob/HEAD/compfs/thresholding_functions.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":true,"mcp_get_code":{"code_sha256":"c9a3fee6017301d1"}},{"code_sha256_prefix":"94abfde144bc8d32","entry":"make_top_k_threshold","repo":"vanderschaarlab/Composite-Feature-Selection","repo_kind":"official","path":"compfs/thresholding_functions.py","file_url":"https://github.com/vanderschaarlab/Composite-Feature-Selection/blob/HEAD/compfs/thresholding_functions.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":true,"mcp_get_code":{"code_sha256":"94abfde144bc8d32"}},{"code_sha256_prefix":"8ee3d6095cd6cdc9","entry":"sklearn_accuracy","repo":"vanderschaarlab/Composite-Feature-Selection","repo_kind":"official","path":"compfs/metrics.py","file_url":"https://github.com/vanderschaarlab/Composite-Feature-Selection/blob/HEAD/compfs/metrics.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":true,"mcp_get_code":{"code_sha256":"8ee3d6095cd6cdc9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}