{"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/2408-01536","title":"Active Learning for Neural PDE Solvers","arxiv_id":"2408.01536","date":"2024-08-02","proceeding":null,"authors":["Daniel Musekamp","Marimuthu Kalimuthu","David Holzmüller","Makoto Takamoto","Mathias Niepert"],"abstract":"Solving partial differential equations (PDEs) is a fundamental problem in science and engineering. While neural PDE solvers can be more efficient than established numerical solvers, they often require large amounts of training data that is costly to obtain. Active learning (AL) could help surrogate models reach the same accuracy with smaller training sets by querying classical solvers with more informative initial conditions and PDE parameters. While AL is more common in other domains, it has yet to be studied extensively for neural PDE solvers. To bridge this gap, we introduce AL4PDE, a modular and extensible active learning benchmark. It provides multiple parametric PDEs and state-of-the-art surrogate models for the solver-in-the-loop setting, enabling the evaluation of existing and the development of new AL methods for neural PDE solving. We use the benchmark to evaluate batch active learning algorithms such as uncertainty- and feature-based methods. We show that AL reduces the average error by up to 71% compared to random sampling and significantly reduces worst-case errors. Moreover, AL generates similar datasets across repeated runs, with consistent distributions over the PDE parameters and initial conditions. The acquired datasets are reusable, providing benefits for surrogate models not involved in the data generation.","url_abs":"https://arxiv.org/abs/2408.01536v2","url_pdf":"https://arxiv.org/pdf/2408.01536v2.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":"2408-01536","repo_url":"https://github.com/dmusekamp/al4pde","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"jax","reach":{"status":"ok","spdx":"NOASSERTION"}},{"paper_slug":"2408-01536","repo_url":"https://github.com/pdebench/pdebench","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"jax","reach":{"status":"ok","spdx":"NOASSERTION"}}],"tasks":[{"task_slug":"active-learning","task_name":"Active Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2408.01536","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2408.01536"}},"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/dmusekamp/al4pde","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/pdebench/pdebench","reach":{"status":"ok","spdx":"NOASSERTION"}}],"summary":{"ran":2,"unverified":2},"by_repo_kind":{"official":{"samples":4,"ran":2,"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":4,"samples":[{"code_sha256_prefix":"fea47842e6fb3089","entry":"get_loss","repo":"dmusekamp/al4pde","repo_kind":"official","path":"al4pde/models/pdebench_loss.py","file_url":"https://github.com/dmusekamp/al4pde/blob/HEAD/al4pde/models/pdebench_loss.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"fea47842e6fb3089"}},{"code_sha256_prefix":"2e8591c731ee495c","entry":"load_fdata","repo":"dmusekamp/al4pde","repo_kind":"official","path":"al4pde/models/dataloader.py","file_url":"https://github.com/dmusekamp/al4pde/blob/HEAD/al4pde/models/dataloader.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"2e8591c731ee495c"}},{"code_sha256_prefix":"5991e0e4316eecef","entry":"build_arena_model_factory","repo":"dmusekamp/al4pde","repo_kind":"official","path":"al4pde/models/arena_wrapper.py","file_url":"https://github.com/dmusekamp/al4pde/blob/HEAD/al4pde/models/arena_wrapper.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"5991e0e4316eecef"}},{"code_sha256_prefix":"50d1fe1033446c95","entry":"build_wrapper","repo":"dmusekamp/al4pde","repo_kind":"official","path":"al4pde/models/build_wrapper.py","file_url":"https://github.com/dmusekamp/al4pde/blob/HEAD/al4pde/models/build_wrapper.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"50d1fe1033446c95"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}