{"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/biological-sequence-design-with-gflownets","title":"Biological Sequence Design with GFlowNets","arxiv_id":"2203.04115","date":"2022-03-02","proceeding":null,"authors":["Moksh Jain","Emmanuel Bengio","Alex-Hernandez Garcia","Jarrid Rector-Brooks","Bonaventure F. P. Dossou","Chanakya Ekbote","Jie Fu","Tianyu Zhang","Micheal Kilgour","Dinghuai Zhang","Lena Simine","Payel Das","Yoshua Bengio"],"abstract":"Design of de novo biological sequences with desired properties, like protein and DNA sequences, often involves an active loop with several rounds of molecule ideation and expensive wet-lab evaluations. These experiments can consist of multiple stages, with increasing levels of precision and cost of evaluation, where candidates are filtered. This makes the diversity of proposed candidates a key consideration in the ideation phase. In this work, we propose an active learning algorithm leveraging epistemic uncertainty estimation and the recently proposed GFlowNets as a generator of diverse candidate solutions, with the objective to obtain a diverse batch of useful (as defined by some utility function, for example, the predicted anti-microbial activity of a peptide) and informative candidates after each round. We also propose a scheme to incorporate existing labeled datasets of candidates, in addition to a reward function, to speed up learning in GFlowNets. We present empirical results on several biological sequence design tasks, and we find that our method generates more diverse and novel batches with high scoring candidates compared to existing approaches.","url_abs":"https://arxiv.org/abs/2203.04115v3","url_pdf":"https://arxiv.org/pdf/2203.04115v3.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":"biological-sequence-design-with-gflownets","repo_url":"https://github.com/mj10/bioseq-gfn-al","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"active-learning","task_name":"Active Learning"},{"task_slug":"diversity","task_name":"Diversity"}],"methods":[{"method_slug":"speed","method_name":"SPEED"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2203.04115","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2203.04115"}},"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/mj10/bioseq-gfn-al","reach":null}],"summary":{"ran":3,"ran_draft_wrong":1,"unverified":3},"by_repo_kind":{"official":{"samples":7,"ran":4,"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":"982fd8c1bc8287aa","entry":"FMGFlowNetGenerator","repo":"mj10/bioseq-gfn-al","repo_kind":"official","path":"lib/generator/gfn.py","file_url":"https://github.com/mj10/bioseq-gfn-al/blob/HEAD/lib/generator/gfn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"982fd8c1bc8287aa"}},{"code_sha256_prefix":"690ecad4c3558658","entry":"GeneratorBase","repo":"mj10/bioseq-gfn-al","repo_kind":"official","path":"lib/generator/gfn.py","file_url":"https://github.com/mj10/bioseq-gfn-al/blob/HEAD/lib/generator/gfn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"690ecad4c3558658"}},{"code_sha256_prefix":"3f794953e6f4df1a","entry":"MLP","repo":"mj10/bioseq-gfn-al","repo_kind":"official","path":"lib/generator/gfn.py","file_url":"https://github.com/mj10/bioseq-gfn-al/blob/HEAD/lib/generator/gfn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3f794953e6f4df1a"}},{"code_sha256_prefix":"a0962a1a5631fcc1","entry":"filter_len","repo":"mj10/bioseq-gfn-al","repo_kind":"official","path":"run_amp.py","file_url":"https://github.com/mj10/bioseq-gfn-al/blob/HEAD/run_amp.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":"a0962a1a5631fcc1"}},{"code_sha256_prefix":"c86a415a1e59ead4","entry":"train_generator","repo":"mj10/bioseq-gfn-al","repo_kind":"official","path":"run_amp.py","file_url":"https://github.com/mj10/bioseq-gfn-al/blob/HEAD/run_amp.py","link_basis":"first_harvest_node","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":"c86a415a1e59ead4"}},{"code_sha256_prefix":"b59d7eff5b869917","entry":"train_generator","repo":"mj10/bioseq-gfn-al","repo_kind":"official","path":"run_gfp.py","file_url":"https://github.com/mj10/bioseq-gfn-al/blob/HEAD/run_gfp.py","link_basis":"first_harvest_node","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":"b59d7eff5b869917"}},{"code_sha256_prefix":"ca5a7a447c10afc0","entry":"train_generator","repo":"mj10/bioseq-gfn-al","repo_kind":"official","path":"run_tfbind.py","file_url":"https://github.com/mj10/bioseq-gfn-al/blob/HEAD/run_tfbind.py","link_basis":"first_harvest_node","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":"ca5a7a447c10afc0"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}