{"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/zorb-a-derivative-free-backpropagation","title":"ZORB: A Derivative-Free Backpropagation Algorithm for Neural Networks","arxiv_id":"2011.08895","date":"2020-11-17","proceeding":null,"authors":["Varun Ranganathan","Alex Lewandowski"],"abstract":"Gradient descent and backpropagation have enabled neural networks to achieve remarkable results in many real-world applications. Despite ongoing success, training a neural network with gradient descent can be a slow and strenuous affair. We present a simple yet faster training algorithm called Zeroth-Order Relaxed Backpropagation (ZORB). Instead of calculating gradients, ZORB uses the pseudoinverse of targets to backpropagate information. ZORB is designed to reduce the time required to train deep neural networks without penalizing performance. To illustrate the speed up, we trained a feed-forward neural network with 11 layers on MNIST and observed that ZORB converged 300 times faster than Adam while achieving a comparable error rate, without any hyperparameter tuning. We also broaden the scope of ZORB to convolutional neural networks, and apply it to subsamples of the CIFAR-10 dataset. Experiments on standard classification and regression benchmarks demonstrate ZORB's advantage over traditional backpropagation with Gradient Descent.","url_abs":"https://arxiv.org/abs/2011.08895v1","url_pdf":"https://arxiv.org/pdf/2011.08895v1.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":"zorb-a-derivative-free-backpropagation","repo_url":"https://github.com/varunranga/zorb-numpy","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"none","reach":null},{"paper_slug":"zorb-a-derivative-free-backpropagation","repo_url":"https://github.com/varunranga/zorb","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"jax","reach":null}],"tasks":[],"methods":[{"method_slug":"adam","method_name":"Adam"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2011.08895","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2011.08895"}},"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/varunranga/zorb-numpy","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/varunranga/zorb","reach":null}],"summary":{"ran":1,"unverified":2},"by_repo_kind":{"official":{"samples":1,"ran":0,"repositories":1},"listed":{"samples":2,"ran":1,"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":1,"samples":[{"code_sha256_prefix":"674777236e4702ac","entry":"Sequential","repo":"varunranga/zorb","repo_kind":"listed","path":"src/zorb/models/Sequential.py","file_url":"https://github.com/varunranga/zorb/blob/HEAD/src/zorb/models/Sequential.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":"674777236e4702ac"}},{"code_sha256_prefix":"f765b1bf6f5447a3","entry":"Network","repo":"varunranga/zorb-numpy","repo_kind":"official","path":"zorb/ZORB.py","file_url":"https://github.com/varunranga/zorb-numpy/blob/HEAD/zorb/ZORB.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f765b1bf6f5447a3"}},{"code_sha256_prefix":"ed7a1e45004776c8","entry":"enum","repo":"varunranga/zorb","repo_kind":"listed","path":"src/zorb/models/Sequential.py","file_url":"https://github.com/varunranga/zorb/blob/HEAD/src/zorb/models/Sequential.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":"ed7a1e45004776c8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}