Skip to content

Introduction to Federated MaxFuse

The problem: weak linkage

Integrating single-cell data across modalities means aligning cells measured by different technologies (transcriptome, chromatin accessibility, protein abundance, spatial imaging) when no single technology captures all of them in the same cell.

Integration methods are usually classified by what they use as an anchor:

Approach Anchor Example methods
Horizontal shared features, different cells Harmony, LIGER, Seurat v3
Vertical shared cells, different features CCA, iNMF
Diagonal neither MATCHER, MaxFuse

Diagonal integration is the hard case, and it is the one that matters in practice: spatial proteomics and single-cell sequencing are almost never performed on the same cells.

MaxFuse's framing sharpens this further into linkage strength. A feature is linked if it is measured in, or predictable from, both modalities: a protein and its coding gene, an ATAC gene-activity score and its transcript. Linkage is:

  • Strong when many linked features exist and correlate well (scRNA ↔ scATAC). Most methods cope.
  • Weak when linked features are few and/or poorly correlated (a 30–50 marker antibody panel against a whole transcriptome). Existing methods degrade sharply or fail outright.

For the tonsil dataset used throughout these docs, 46 CODEX proteins map to 53 gene names, which falls to 32 usable shared features after variability filtering, against 5,000 genes on the RNA side. That is the weak-linkage regime.

The second problem: the data cannot be pooled

Even given a method that handles weak linkage, a practical obstacle remains. Datasets live in different institutions, and:

  • removing personally identifiable information is ineffective: re-identification risk from single-cell profiles is high;
  • GDPR and HIPAA restrict centralisation even of pseudonymised data;
  • secure multi-party computation is inefficient at single-cell scale and needs special hardware.

Federated learning is the remaining viable path: share derived representations, never raw data.

What MaxFuse does

MaxFuse overcomes weak linkage with two mechanisms.

1. Cross-applied smoothing. The nearest-neighbour graph is built from the all-feature matrix, and the smoothing derived from it is applied to the linked-feature matrix. Two cells that the full transcriptome says are the same type should have similar protein values; averaging over transcriptomically-similar neighbours recovers the consensus where the noisy shared columns disagree. The rich space corrects the poor space.

2. Bootstrapping. The initial matching computed from the shared features is only a seed. Each refinement round fits CCA on all features of the currently matched pairs, producing a joint space in which both modalities are comparable, then re-solves the matching. Information from every feature therefore reaches the final result, even though only a handful of features were ever directly comparable.

Because the seed only has to beat random, MaxFuse tolerates losing a substantial fraction of true correspondences, but it collapses if the shared features are random rather than merely incomplete. See Federated Matching.

What Fed-MaxFuse adds

Fed-MaxFuse asks whether that pipeline can run without pooling the data, and answers yes for the two-modality case.

The design rule is a single question, applied to every step:

Does this operation require both modalities simultaneously?

  • No → it stays on the node: shared-feature construction, meta-cells, k-NN graphs, fuzzy smoothing, pseudo-inverses, propagation, final embeddings.
  • Yes → it moves to the server: the linear sum assignment, and the coupled step inside CCA.

Applying that rule mechanically reproduces the entire node/server split. Two consequences follow:

  • Matching federates cleanly because Pearson correlation factorises. Each node ships mean-centred, L2-normalised data, and the server's correlation collapses to a plain dot product. See Federated Matching.
  • CCA does not federate cleanly, because it is a black box in the reference implementation. Fed-MaxFuse opens it: MaxFuse's "CCA" is really Two-block Mode B PLS, whose per-component work is almost entirely local. Only the singular-vector search couples the nodes, and that step can be run by exchanging latent score vectors. See Iterative Federated CCA.

Reading order

  1. Architecture & Data Flow: who computes what, and what crosses the wire
  2. Federated Design: the design rules and notation
  3. The pipeline in execution order: Local PreprocessingFederated MatchingIterative Federated CCAFinal Matching & Propagation
  4. Security & Privacy: the threat model and its limits
  5. Comparison with Centralized MaxFuse: does it cost accuracy?