{"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/mmd-fuse-learning-and-combining-kernels-for","title":"MMD-FUSE: Learning and Combining Kernels for Two-Sample Testing Without Data Splitting","arxiv_id":"2306.08777","date":"2023-06-14","proceeding":"NeurIPS 2023 11","authors":["Felix Biggs","Antonin Schrab","Arthur Gretton"],"abstract":"We propose novel statistics which maximise the power of a two-sample test based on the Maximum Mean Discrepancy (MMD), by adapting over the set of kernels used in defining it. For finite sets, this reduces to combining (normalised) MMD values under each of these kernels via a weighted soft maximum. Exponential concentration bounds are proved for our proposed statistics under the null and alternative. We further show how these kernels can be chosen in a data-dependent but permutation-independent way, in a well-calibrated test, avoiding data splitting. This technique applies more broadly to general permutation-based MMD testing, and includes the use of deep kernels with features learnt using unsupervised models such as auto-encoders. We highlight the applicability of our MMD-FUSE test on both synthetic low-dimensional and real-world high-dimensional data, and compare its performance in terms of power against current state-of-the-art kernel tests.","url_abs":"https://arxiv.org/abs/2306.08777v2","url_pdf":"https://arxiv.org/pdf/2306.08777v2.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":"mmd-fuse-learning-and-combining-kernels-for","repo_url":"https://github.com/antoninschrab/mmdfuse-paper","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"jax","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"hypothesis-testing","task_name":"Two-sample testing"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2306.08777","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2306.08777"}},"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/antoninschrab/mmdfuse-paper","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":1,"ran_fixture":1,"unverified":13},"by_repo_kind":{"official":{"samples":15,"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":0,"samples":[{"code_sha256_prefix":"b2fd0117a1785dcf","entry":"MMDu","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"other_tests/deep_mmd_not_image.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/other_tests/deep_mmd_not_image.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b2fd0117a1785dcf"}},{"code_sha256_prefix":"ada1992bbe1e1e8b","entry":"get_item","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"other_tests/deep_mmd_image.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/other_tests/deep_mmd_image.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ada1992bbe1e1e8b"}},{"code_sha256_prefix":"74f5342c2c79173c","entry":"G","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"sampler_perturbations.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/sampler_perturbations.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":"74f5342c2c79173c"}},{"code_sha256_prefix":"6a971acad70e55e1","entry":"MatConvert","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"other_tests/deep_mmd_image.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/other_tests/deep_mmd_image.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":"6a971acad70e55e1"}},{"code_sha256_prefix":"8dae3f1d2133e338","entry":"MatConvert","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"other_tests/deep_mmd_not_image.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/other_tests/deep_mmd_not_image.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":"8dae3f1d2133e338"}},{"code_sha256_prefix":"ff420ac5893b251d","entry":"compute_bandwidths","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"kernel.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/kernel.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":"ff420ac5893b251d"}},{"code_sha256_prefix":"0f5d8713d451077f","entry":"deep_mmd_image","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"other_tests/deep_mmd_image.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/other_tests/deep_mmd_image.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":"0f5d8713d451077f"}},{"code_sha256_prefix":"0b574a538a744679","entry":"deep_mmd_not_image","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"other_tests/deep_mmd_not_image.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/other_tests/deep_mmd_not_image.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":"0b574a538a744679"}},{"code_sha256_prefix":"3de090d02c055924","entry":"f0","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"sampler_perturbations.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/sampler_perturbations.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":"3de090d02c055924"}},{"code_sha256_prefix":"8f3b20cf3cb686c2","entry":"f_theta","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"sampler_perturbations.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/sampler_perturbations.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":"8f3b20cf3cb686c2"}},{"code_sha256_prefix":"96320bb32a7c4b9b","entry":"jax_distances","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"kernel.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/kernel.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":"96320bb32a7c4b9b"}},{"code_sha256_prefix":"dbcb6b687249d1a2","entry":"kernel_matrix","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"kernel.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/kernel.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":"dbcb6b687249d1a2"}},{"code_sha256_prefix":"e098ad70adbd383d","entry":"ratio_mmd_std","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"mmd_split.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/mmd_split.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":"e098ad70adbd383d"}},{"code_sha256_prefix":"1bd578f7d2dc6c47","entry":"sampler_galaxy","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"sampler_galaxy.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/sampler_galaxy.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":"1bd578f7d2dc6c47"}},{"code_sha256_prefix":"64efdbe02b940c75","entry":"sampler_mixture","repo":"antoninschrab/mmdfuse-paper","repo_kind":"official","path":"sampler_mixture.py","file_url":"https://github.com/antoninschrab/mmdfuse-paper/blob/HEAD/sampler_mixture.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":"64efdbe02b940c75"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}