Tutorials › Multi-Omics Data Integration › Interpreting NMF Components Across Omics Blocks

Non-Negative Matrix Factorization · Tutorial 209 of 597

Interpreting NMF Components Across Omics Blocks

Translate fitted joint NMF factors into interpretable feature summaries and sample-score plots while preserving the distinctions between shared and block-specific patterns.

Advanced 10 min read

What You'll Learn

  • Identify the basis and score matrices in a joint NMF representation.
  • Summarize a component’s feature weights within each omics block.
  • Interpret shared and modality-specific component scores across samples.
  • Calculate component reconstruction mass and its within-block proportion.
  • Recognize scale, preprocessing, and interpretation pitfalls in cross-block comparisons.

From Fitted Factors to Scientific Summaries

A fitted nonnegative matrix factorization is not yet an interpretation. The factor matrices describe how features and samples combine to reconstruct each data block, but their numerical values depend on the model, its scaling convention, and the preprocessing used for each omics assay. Interpretation therefore starts by identifying what each matrix represents and then summarizing it in a way that preserves those distinctions.

Consider \(M\) omics blocks measured on the same \(n\) samples. Block \(m\) has \(p_m\) features and a nonnegative data matrix \(X^{(m)}\), with features in rows and samples in columns. A joint factorization may include shared components, whose sample scores are common to the blocks, and block-specific components, whose scores are restricted to one block.

Definition: In a joint NMF representation, \(W_s^{(m)}\) is the block-\(m\) basis matrix for shared components and \(H_s\) is their shared sample-score matrix. \(W_m\) and \(H_m\) are the basis and score matrices for block-\(m\)-specific components. A fitted reconstruction has the form $$ \widehat{X}^{(m)} = W_s^{(m)}H_s + W_mH_m, $$ where all factor entries are nonnegative. If the fitted model contains no block-specific components, the term \(W_mH_m\) is omitted. Each basis column describes a component’s feature weights; the corresponding score row describes its strength across samples.

For example, if there are \(K_s\) shared components and \(K_m\) specific components for block \(m\), then \(W_s^{(m)}\) has \(p_m\) rows and \(K_s\) columns, \(H_s\) has \(K_s\) rows and \(n\) columns, and \(W_m\) and \(H_m\) have \(p_m\)-by-\(K_m\) and \(K_m\)-by-\(n\) dimensions, respectively. These dimensions are a useful first check: a score column must refer to the same sample in every block.

The interpretation is conditional on the fitted representation. The matrices must be nonnegative, the features and samples must be correctly aligned, and the preprocessing and chosen NMF objective must be appropriate for the data being represented. A shared score indicates a common fitted sample coordinate; it does not, by itself, establish that the same biological mechanism generated the measurements in each assay.

Reading Feature Weights and Sample Scores

A basis column is a nonnegative pattern over features. Large entries identify features that contribute more strongly to that component’s reconstruction in that block, subject to the fitted scale convention. A score row is a nonnegative pattern over samples. A large entry indicates that the component is more strongly expressed in the reconstruction of that sample than in samples with smaller entries on the same score row.

Raw basis entries are often useful for ranking features within one block, but they are not automatically comparable across blocks. Blocks can have different feature counts, measurement units, transformations, or normalization. A convenient within-block summary is the relative weight

$$ q_{ik}^{(m)} = \frac{W_{ik}^{(m)}}{\sum_{i=1}^{p_m} W_{ik}^{(m)}} , $$

for a shared component \(k\), provided the denominator is positive. The \(q_{ik}^{(m)}\) values sum to one within that component and block. They show how the component’s basis weight is distributed across that block’s features; they are not percentages of variance explained or probabilities that features are biologically involved. The same summary can be formed for a block-specific basis column.

A loading table can report each feature’s raw basis weight, its relative weight, and its rank within the block. Reporting the block and the units or transformation of its measurements helps readers interpret the table. A short list of the largest weights is useful for inspection, but it is worth checking whether a longer tail of features carries a substantial fraction of the total relative weight.

Worked Example: Summarizing a Shared Feature Signature

Suppose one fitted shared component has the following basis weights in two hypothetical blocks. The protein block has weights \(8, 4, 2\) for features P1, P2, and P3. The transcript block has weights \(1, 3, 6, 2\) for features T1 through T4. Compute each feature’s relative weight.

For the protein block, the column sum is \(8+4+2=14\). The relative weights are \(8/14=0.5714\), \(4/14=0.2857\), and \(2/14=0.1429\). P1 and P2 together account for \(0.5714+0.2857=0.8571\), or about 85.71% of the basis weight in this block.

For the transcript block, the column sum is \(1+3+6+2=12\). The relative weights are \(1/12=0.0833\), \(3/12=0.2500\), \(6/12=0.5000\), and \(2/12=0.1667\). T3 has the largest relative weight in this block.

The summaries show that the same shared component is represented by different feature patterns in the two blocks. They do not show that a protein weight of 8 is larger in a biological or measurement sense than a transcript weight of 6: the blocks have different features and may use different scales.

A score plot displays sample columns using two or more rows of a score matrix as coordinates. For example, plotting shared component 1 against shared component 2 gives sample \(j\) the coordinates \((H_{s,1j},H_{s,2j})\). Points close together have similar values on those plotted scores, but may differ on components not shown. Coloring or labeling points by a measured covariate can help describe patterns; it does not turn a visual pattern into a causal result.

Worked Example: Interpreting a Component-Score Plot

Suppose a fitted model has two shared score rows for four hypothetical samples. The component 1 scores are \(0.2, 1.8, 2.1, 0.4\), and the component 2 scores are \(1.5, 0.3, 0.2, 1.7\), in sample order A, B, C, D. A score plot uses component 1 on the horizontal axis and component 2 on the vertical axis.

The plotted coordinates are A \((0.2,1.5)\), B \((1.8,0.3)\), C \((2.1,0.2)\), and D \((0.4,1.7)\). B and C have the larger component 1 scores, while A and D have the larger component 2 scores. The plot therefore separates these four samples along the displayed score patterns: B and C lie toward the component 1 direction, and A and D toward the component 2 direction.

This is a description of the fitted coordinates, not evidence that the samples belong to distinct biological classes. If an external label is available, one can describe whether it aligns with the plotted pattern, while avoiding a claim that the component caused the label. The plot also omits any components not shown, so apparent similarity in two dimensions need not imply similarity in the full score representation.

Scale, Component Mass, and Cross-Block Comparison

NMF factors have a scale indeterminacy: multiplying a basis column by a positive constant and dividing its matching score row by that constant leaves their product unchanged. In a shared-component model, the same score row is used across blocks, so its reciprocal rescaling must be applied to the corresponding basis column in every block.

$$ W_s^{(m)}[:,k]H_s[k,:] = \left(\frac{W_s^{(m)}[:,k]}{c}\right) \left(cH_s[k,:]\right), \qquad c>0 . $$

The equality follows by cancellation of \(c\) in every matrix-product entry. Thus, the fitted reconstruction alone does not determine whether a component’s numerical magnitude is expressed mainly in its basis or its score. A scale convention is needed for raw-value comparisons. The relative feature weights \(q_{ik}^{(m)}\) are unchanged by this rescaling, since both their numerator and denominator are divided by the same \(c\).

For a shared component, one useful descriptive quantity is its total reconstructed mass in block \(m\):

$$ M_{mk} = \sum_{i=1}^{p_m}\sum_{j=1}^{n} W_{s,ik}^{(m)}H_{s,kj} = \left(\sum_{i=1}^{p_m}W_{s,ik}^{(m)}\right) \left(\sum_{j=1}^{n}H_{s,kj}\right). $$

The second equality follows by expanding the product of the two sums. This quantity is unchanged by reciprocal rescaling of the basis and score. It can be compared with the total fitted mass in the same block to describe the component’s share of that block’s nonnegative reconstruction. It is not automatically comparable across blocks with different scales, feature counts, or preprocessing, and it is not a measure of variance explained.

Worked Example: Calculating Within-Block Component Contributions

In a hypothetical two-block fit, suppose a shared component has a basis-column sum of 10 in block A and 4 in block B. Its shared score row sums to 6 across the samples. Suppose the total fitted mass, summed over all components, is 100 in block A and 80 in block B. Calculate the component mass and its fraction of fitted mass in each block.

For block A, \(M_{A,k}=10\times6=60\), and the fraction is \(60/100=0.60\), or 60%. For block B, \(M_{B,k}=4\times6=24\), and the fraction is \(24/80=0.30\), or 30%.

Under this calculation, the component contributes 60% of block A’s total fitted mass and 30% of block B’s. These are within-block summaries. They do not mean the component is twice as biologically important in block A, because the two blocks can have different scales and preprocessing. If objective weights were used during fitting, those weights describe the fitting criterion; they do not, by themselves, convert these mass fractions into biological importance.

Why the Interpretation Matters—and Where It Can Fail

The combination of a loading table and a score plot gives two complementary views: which features define a component in each block, and which samples have high scores on it. For shared components, that paired view can make cross-block structure easier to describe. For a block-specific component, its scores summarize sample variation in that block only; they should not be presented as a shared cross-omics profile.

SummaryWhat it describesMain caution
Raw basis weightsFeature weights under the fitted scale conventionScale and measurement units affect raw magnitudes
Relative basis weightsDistribution of a component’s basis weight within one blockDoes not measure variance explained or feature probability
Component scoresFitted component strength across samplesScores are not labels, effects, or causal estimates
Within-block mass fractionA component’s share of that block’s fitted massDoes not make fractions across differently scaled blocks biologically equivalent

These summaries differ from principal component analysis loadings, which can be signed and describe directions in a linear projection. NMF basis weights and scores are nonnegative and describe additive reconstruction. They also differ from fitting separate NMF models to each block: separate fits do not automatically put their scores on a common sample coordinate system or align their components. Joint fitting supplies that structure according to the chosen model, but does not guarantee that every component is equally interpretable in every block.

A practical interpretation should be checked against the data representation and the fitted reconstruction. Confirm that sample ordering is consistent across blocks; inspect whether top features are stable to reasonable changes in preprocessing or model specification; and check that the named features and sample patterns make sense in context. Poor reconstruction of an important feature pattern can mislead a feature summary, so interpretation should be revisited alongside model fit. Formal assessment of residual patterns and component stability requires additional diagnostics.

  • Comparing raw weights across blocks. A larger raw entry may reflect a different scale, not a stronger cross-omics signal. Use within-block summaries for feature ranking, and state the scale limitations.
  • Calling relative weights probabilities. The weights sum to one only because they have been normalized for a descriptive summary. They are not probabilities of biological involvement.
  • Treating a score plot as a clustering result. A plotted separation describes the displayed fitted scores; it does not establish distinct populations or validate a class assignment.
  • Ignoring the factorization’s non-uniqueness. Component labels and raw factor scales are not inherently fixed. State the scaling convention and avoid interpreting the component number itself as meaningful.
Key takeaway: Interpret basis columns within their own omics blocks, interpret score rows across samples according to whether they are shared or block-specific, and report cross-block comparisons with their scale and preprocessing limitations.

Check Your Understanding

Use the definitions above to answer each question. Short solutions follow the questions.

  1. A basis column in one block has weights \(2, 3, 5\). What are its relative weights, and what do they summarize?
  2. One score row is multiplied by 4 and its matching basis columns are divided by 4. What happens to the fitted shared-component reconstruction?
  3. A sample has a high score on a block-specific component. What can be concluded about its cross-omics score profile?
  4. A component contributes 30 of 120 units of total fitted mass in one block. What is its within-block mass fraction, and what should not be inferred from it?

Solutions. (1) The column sum is \(2+3+5=10\), so the relative weights are \(0.20, 0.30, 0.50\). They describe the distribution of basis weight within that block, not probabilities or variance explained. (2) The reconstruction is unchanged because \((W/4)(4H)=WH\), with the reciprocal scaling applied to every block using that shared score row. (3) Only a high score on that block-specific component is established; it does not give a shared score across the other blocks. (4) The fraction is \(30/120=0.25\), or 25%. It is a within-block fitted-mass summary, not a measure of causal or biological importance and not automatically comparable with another block’s fraction.

Clinical Biostats