{"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/batchgfn-generative-flow-networks-for-batch","title":"BatchGFN: Generative Flow Networks for Batch Active Learning","arxiv_id":"2306.15058","date":"2023-06-26","proceeding":null,"authors":["Shreshth A. Malik","Salem Lahlou","Andrew Jesson","Moksh Jain","Nikolay Malkin","Tristan Deleu","Yoshua Bengio","Yarin Gal"],"abstract":"We introduce BatchGFN -- a novel approach for pool-based active learning that uses generative flow networks to sample sets of data points proportional to a batch reward. With an appropriate reward function to quantify the utility of acquiring a batch, such as the joint mutual information between the batch and the model parameters, BatchGFN is able to construct highly informative batches for active learning in a principled way. We show our approach enables sampling near-optimal utility batches at inference time with a single forward pass per point in the batch in toy regression problems. This alleviates the computational complexity of batch-aware algorithms and removes the need for greedy approximations to find maximizers for the batch reward. We also present early results for amortizing training across acquisition steps, which will enable scaling to real-world tasks.","url_abs":"https://arxiv.org/abs/2306.15058v1","url_pdf":"https://arxiv.org/pdf/2306.15058v1.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":"batchgfn-generative-flow-networks-for-batch","repo_url":"https://github.com/s-a-malik/batchgfn","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"active-learning","task_name":"Active Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2306.15058","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2306.15058"}},"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/s-a-malik/batchgfn","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":11},"by_repo_kind":{"official":{"samples":11,"ran":0,"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":0,"samples":[{"code_sha256_prefix":"63867a6cb73957ca","entry":"bald_gp","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/acquisitions/topk.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/acquisitions/topk.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"63867a6cb73957ca"}},{"code_sha256_prefix":"1875bd5b1d33cc98","entry":"batch_bald_cov_gp","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/acquisitions/batch.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/acquisitions/batch.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1875bd5b1d33cc98"}},{"code_sha256_prefix":"fe0600be139265b3","entry":"compute_conv_output_size","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/models/cnn.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/models/cnn.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"fe0600be139265b3"}},{"code_sha256_prefix":"1d5704b89450d8d8","entry":"compute_conv_output_width","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/models/cnn.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/models/cnn.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1d5704b89450d8d8"}},{"code_sha256_prefix":"3092e8e91236224b","entry":"f","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/datasets/simulated_reg.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/datasets/simulated_reg.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3092e8e91236224b"}},{"code_sha256_prefix":"ec55ece28b1426d0","entry":"get_data","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/datasets/mnist.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/datasets/mnist.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ec55ece28b1426d0"}},{"code_sha256_prefix":"f2e9f3a12311134e","entry":"get_targets","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/datasets/mnist.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/datasets/mnist.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f2e9f3a12311134e"}},{"code_sha256_prefix":"3c67c417b22467c5","entry":"plot_acquisition","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/evaluation/plotting.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/evaluation/plotting.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3c67c417b22467c5"}},{"code_sha256_prefix":"75033c8b7ef1f00c","entry":"plot_acquisition_2d_cls","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/evaluation/plotting.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/evaluation/plotting.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"75033c8b7ef1f00c"}},{"code_sha256_prefix":"a4f7d78be6c6ca4f","entry":"random","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/acquisitions/topk.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/acquisitions/topk.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a4f7d78be6c6ca4f"}},{"code_sha256_prefix":"2b3c3e9f45c4af4f","entry":"stochastic_batch_bald_gp","repo":"s-a-malik/batchgfn","repo_kind":"official","path":"batchgfn/acquisitions/stochastic.py","file_url":"https://github.com/s-a-malik/batchgfn/blob/HEAD/batchgfn/acquisitions/stochastic.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"2b3c3e9f45c4af4f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}