{"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/pmaf-deep-declarative-layers-for-principal","title":"PMaF: Deep Declarative Layers for Principal Matrix Features","arxiv_id":"2306.14759","date":"2023-06-26","proceeding":null,"authors":["Zhiwei Xu","Hao Wang","Yanbin Liu","Stephen Gould"],"abstract":"We explore two differentiable deep declarative layers, namely least squares on sphere (LESS) and implicit eigen decomposition (IED), for learning the principal matrix features (PMaF). It can be used to represent data features with a low-dimensional vector containing dominant information from a high-dimensional matrix. We first solve the problems with iterative optimization in the forward pass and then backpropagate the solution for implicit gradients under a bi-level optimization framework. Particularly, adaptive descent steps with the backtracking line search method and descent decay in the tangent space are studied to improve the forward pass efficiency of LESS. Meanwhile, exploited data structures are used to greatly reduce the computational complexity in the backward pass of LESS and IED. Empirically, we demonstrate the superiority of our layers over the off-the-shelf baselines by comparing the solution optimality and computational requirements.","url_abs":"https://arxiv.org/abs/2306.14759v3","url_pdf":"https://arxiv.org/pdf/2306.14759v3.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":"pmaf-deep-declarative-layers-for-principal","repo_url":"https://github.com/anucvml/ddn","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2306.14759","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2306.14759"}},"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/anucvml/ddn","reach":null}],"summary":{"ran":1,"unverified":4},"by_repo_kind":{"official":{"samples":5,"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":0,"samples":[{"code_sha256_prefix":"cae2cf9b4b649523","entry":"BackpropBase","repo":"anucvml/ddn","repo_kind":"official","path":"apps/PMaF/IED/ied_backward.py","file_url":"https://github.com/anucvml/ddn/blob/HEAD/apps/PMaF/IED/ied_backward.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":"cae2cf9b4b649523"}},{"code_sha256_prefix":"ccbe9bca7a77b6ed","entry":"DDNBackprop","repo":"anucvml/ddn","repo_kind":"official","path":"apps/PMaF/IED/ied_backward.py","file_url":"https://github.com/anucvml/ddn/blob/HEAD/apps/PMaF/IED/ied_backward.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":"ccbe9bca7a77b6ed"}},{"code_sha256_prefix":"4ac3ff217b25d5e1","entry":"object_func","repo":"anucvml/ddn","repo_kind":"official","path":"apps/PMaF/LESS/test_least_squares_sphere.py","file_url":"https://github.com/anucvml/ddn/blob/HEAD/apps/PMaF/LESS/test_least_squares_sphere.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4ac3ff217b25d5e1"}},{"code_sha256_prefix":"2fafc86874264a03","entry":"objective_lagrange","repo":"anucvml/ddn","repo_kind":"official","path":"apps/PMaF/LESS/test_least_squares_sphere.py","file_url":"https://github.com/anucvml/ddn/blob/HEAD/apps/PMaF/LESS/test_least_squares_sphere.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":"2fafc86874264a03"}},{"code_sha256_prefix":"e464d5ca70a78e3a","entry":"solve_quadratic","repo":"anucvml/ddn","repo_kind":"official","path":"apps/PMaF/LESS/test_least_squares_sphere.py","file_url":"https://github.com/anucvml/ddn/blob/HEAD/apps/PMaF/LESS/test_least_squares_sphere.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e464d5ca70a78e3a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}