{"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/matrix-normal-models-for-fmri-analysis","title":"Matrix-normal models for fMRI analysis","arxiv_id":"1711.03058","date":"2017-11-08","proceeding":null,"authors":["Michael Shvartsman","Narayanan Sundaram","Mikio C. Aoi","Adam Charles","Theodore C. Wilke","Jonathan D. Cohen"],"abstract":"Multivariate analysis of fMRI data has benefited substantially from advances\nin machine learning. Most recently, a range of probabilistic latent variable\nmodels applied to fMRI data have been successful in a variety of tasks,\nincluding identifying similarity patterns in neural data (Representational\nSimilarity Analysis and its empirical Bayes variant, RSA and BRSA; Intersubject\nFunctional Connectivity, ISFC), combining multi-subject datasets (Shared\nResponse Mapping; SRM), and mapping between brain and behavior (Joint\nModeling). Although these methods share some underpinnings, they have been\ndeveloped as distinct methods, with distinct algorithms and software tools. We\nshow how the matrix-variate normal (MN) formalism can unify some of these\nmethods into a single framework. In doing so, we gain the ability to reuse\nnoise modeling assumptions, algorithms, and code across models. Our primary\ntheoretical contribution shows how some of these methods can be written as\ninstantiations of the same model, allowing us to generalize them to flexibly\nmodeling structured noise covariances. Our formalism permits novel model\nvariants and improved estimation strategies: in contrast to SRM, the number of\nparameters for MN-SRM does not scale with the number of voxels or subjects; in\ncontrast to BRSA, the number of parameters for MN-RSA scales additively rather\nthan multiplicatively in the number of voxels. We empirically demonstrate\nadvantages of two new methods derived in the formalism: for MN-RSA, we show up\nto 10x improvement in runtime, up to 6x improvement in RMSE, and more\nconservative behavior under the null. For MN-SRM, our method grants a modest\nimprovement to out-of-sample reconstruction while relaxing an orthonormality\nconstraint of SRM. We also provide a software prototyping tool for MN models\nthat can flexibly reuse noise covariance assumptions and algorithms across\nmodels.","url_abs":"http://arxiv.org/abs/1711.03058v2","url_pdf":"http://arxiv.org/pdf/1711.03058v2.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":"matrix-normal-models-for-fmri-analysis","repo_url":"https://github.com/brainiak/brainiak","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":null,"task_name":"Functional Connectivity"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1711.03058","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1711.03058"}},"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/brainiak/brainiak","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":7},"by_repo_kind":{"official":{"samples":7,"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":"071d25088ed91789","entry":"compute_correlation","repo":"brainiak/brainiak","repo_kind":"official","path":"src/brainiak/fcma/util.py","file_url":"https://github.com/brainiak/brainiak/blob/HEAD/src/brainiak/fcma/util.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"071d25088ed91789"}},{"code_sha256_prefix":"e25c20d377f10141","entry":"compute_summary_statistic","repo":"brainiak/brainiak","repo_kind":"official","path":"src/brainiak/isc.py","file_url":"https://github.com/brainiak/brainiak/blob/HEAD/src/brainiak/isc.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e25c20d377f10141"}},{"code_sha256_prefix":"c447138fa0bdb504","entry":"generate_epochs_info","repo":"brainiak/brainiak","repo_kind":"official","path":"src/brainiak/fcma/preprocessing.py","file_url":"https://github.com/brainiak/brainiak/blob/HEAD/src/brainiak/fcma/preprocessing.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c447138fa0bdb504"}},{"code_sha256_prefix":"3221b6c442f0d561","entry":"get_shape","repo":"brainiak/brainiak","repo_kind":"official","path":"src/brainiak/funcalign/fastsrm.py","file_url":"https://github.com/brainiak/brainiak/blob/HEAD/src/brainiak/funcalign/fastsrm.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3221b6c442f0d561"}},{"code_sha256_prefix":"0e9ac6ecf4120f97","entry":"prepare_mvpa_data","repo":"brainiak/brainiak","repo_kind":"official","path":"src/brainiak/fcma/preprocessing.py","file_url":"https://github.com/brainiak/brainiak/blob/HEAD/src/brainiak/fcma/preprocessing.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"0e9ac6ecf4120f97"}},{"code_sha256_prefix":"4677ef03ca7cc389","entry":"safe_encode","repo":"brainiak/brainiak","repo_kind":"official","path":"src/brainiak/funcalign/fastsrm.py","file_url":"https://github.com/brainiak/brainiak/blob/HEAD/src/brainiak/funcalign/fastsrm.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"4677ef03ca7cc389"}},{"code_sha256_prefix":"84b77ea8b8d1ce73","entry":"safe_load","repo":"brainiak/brainiak","repo_kind":"official","path":"src/brainiak/funcalign/fastsrm.py","file_url":"https://github.com/brainiak/brainiak/blob/HEAD/src/brainiak/funcalign/fastsrm.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"84b77ea8b8d1ce73"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}