{"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/ff-nsl-feed-forward-neural-symbolic-learner","title":"FF-NSL: Feed-Forward Neural-Symbolic Learner","arxiv_id":"2106.13103","date":"2021-06-24","proceeding":null,"authors":["Daniel Cunnington","Mark Law","Alessandra Russo","Jorge Lobo"],"abstract":"Logic-based machine learning aims to learn general, interpretable knowledge in a data-efficient manner. However, labelled data must be specified in a structured logical form. To address this limitation, we propose a neural-symbolic learning framework, called Feed-Forward Neural-Symbolic Learner (FFNSL), that integrates a logic-based machine learning system capable of learning from noisy examples, with neural networks, in order to learn interpretable knowledge from labelled unstructured data. We demonstrate the generality of FFNSL on four neural-symbolic classification problems, where different pre-trained neural network models and logic-based machine learning systems are integrated to learn interpretable knowledge from sequences of images. We evaluate the robustness of our framework by using images subject to distributional shifts, for which the pre-trained neural networks may predict incorrectly and with high confidence. We analyse the impact that these shifts have on the accuracy of the learned knowledge and run-time performance, comparing FFNSL to tree-based and pure neural approaches. Our experimental results show that FFNSL outperforms the baselines by learning more accurate and interpretable knowledge with fewer examples.","url_abs":"https://arxiv.org/abs/2106.13103v3","url_pdf":"https://arxiv.org/pdf/2106.13103v3.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":"ff-nsl-feed-forward-neural-symbolic-learner","repo_url":"https://github.com/dancunnington/ffnsl","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"inductive-logic-programming","task_name":"Inductive logic programming"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2106.13103","atlas_url":"https://app.syntology.ai/?focus=2106.13103","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2106.13103"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/dancunnington/ffnsl","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":3},"by_repo_kind":{"official":{"samples":3,"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":"1bce656d8bdd0dbe","entry":"add_cmd_line_args","repo":"dancunnington/ffnsl","repo_kind":"official","path":"nsl/utils.py","file_url":"https://github.com/dancunnington/ffnsl/blob/HEAD/nsl/utils.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":"1bce656d8bdd0dbe"}},{"code_sha256_prefix":"7403c165b9f1f522","entry":"luk_t_norm","repo":"dancunnington/ffnsl","repo_kind":"official","path":"nsl/utils.py","file_url":"https://github.com/dancunnington/ffnsl/blob/HEAD/nsl/utils.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":"7403c165b9f1f522"}},{"code_sha256_prefix":"d4e8c9dba7122444","entry":"recursive_luk_t_norm","repo":"dancunnington/ffnsl","repo_kind":"official","path":"nsl/utils.py","file_url":"https://github.com/dancunnington/ffnsl/blob/HEAD/nsl/utils.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":"d4e8c9dba7122444"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}