Use when you have a normalized matrix of feature attribution scores (microbes × metabolites) derived from a trained neural network, and you want to partition both microbes and metabolites simultaneously into co-clusters that share similar interaction patterns.
Installs into .claude/skills of the current project.
Are you the author of Biclustering For Omics Features?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/holobiomicslab-biclustering-for-omics-features)
---
name: biclustering-for-omics-features
description: Use when you have a normalized matrix of feature attribution scores (microbes × metabolites) derived from a trained neural network, and you want to partition both microbes and metabolites simultaneously into co-clusters that share similar interaction patterns.
license: CC-BY-4.0
metadata:
edam_operation: http://edamontology.org/operation_3432
edam_topics:
- http://edamontology.org/topic_3697
- http://edamontology.org/topic_3174
tools:
- WGCNA
- Seaborn clustermap
- Cytoscape
- Python scikit-learn
- scikit-learn consensus clustering
derived_from:
- doi: 10.1371/journal.pcbi.1009021
title: MiMeNet
evidence_spans:
- Weighted correlation network analysis (WGCNA) of microbial features was performed using the WGCNA library in R
- compared the microbial modules in the IBD (PRISM) dataset identified by MiMeNet to those identified by the Weighted Correlation Network Analysis (WGCNA)
- using Seaborn's clustermap function in Python
- using Cytoscape
- using Python's sci-kit-learn package
claims: []
provenance:
collection: https://w3id.org/holobiomicslab/asb-skill/collection/metabolomics/v1
assembled_by: scripts/collect_metabolomics_collection.py
sources:
- build: coll_mimenet
doi: 10.1371/journal.pcbi.1009021
title: MiMeNet
dedup_kept_from: coll_mimenet
schema_version: 0.2.0
---
# biclustering-for-omics-features
## Summary
Biclustering partitions rows (microbes) and columns (metabolites) of a normalized feature attribution score matrix into functional modules, grouping features with similar interaction patterns to illuminate the underlying structure of microbe-metabolite interaction networks.
## When to use
You have a normalized matrix of feature attribution scores (microbes × metabolites) derived from a trained neural network, and you want to partition both microbes and metabolites simultaneously into co-clusters that share similar interaction patterns. This is appropriate when you seek to discover modules of microbes and metabolites that interact together, rather than clustering features independently.
## When NOT to use
- Your input is a raw, un-normalized correlation matrix or distance matrix; attribution scores must first be filtered (97.5 percentile threshold) and normalized to [-1, 1].
- You have fewer than ~2 metabolites or microbes to cluster; consensus clustering requires sufficient features to estimate stable clustering structure.
- The feature attribution matrix is sparse (>50% zeros) and lacks sufficient co-variation patterns; biclustering may produce artifacts when co-occurrence is rare.
## Inputs
- Normalized feature attribution score matrix (microbes × metabolites, values in [-1, 1])
- Background distribution of attribution scores (for threshold calculation)
- List of well-predicted metabolites (those above 95th percentile correlation threshold)
## Outputs
- Microbe cluster assignments (k* clusters)
- Metabolite cluster assignments (k** clusters)
- Functional modules (bicluster membership assignments)
- Module interaction network edge list
## How to apply
First, normalize all significant feature attribution scores to the range [-1, 1] by dividing by the 97.5 percentile threshold from a background distribution. Perform hierarchical clustering on the normalized attribution scores using Euclidean distance and complete linkage, then apply consensus clustering with k ranging from 2 to 20, calculating the cumulative distribution function (CDF) area for each k and selecting k* as the largest k where Δk (proportional change in area) exceeds a 0.025 threshold. Repeat this consensus clustering procedure independently for metabolites to identify k**. Finally, bicluster the normalized score matrix using k* for rows (microbes) and k** for columns (metabolites) to partition the data into final functional modules. This approach ensures biologically meaningful co-clustering by identifying the optimal number of clusters separately for each dimension based on consensus stability.
## Related tools
- **scikit-learn consensus clustering** (Performs hierarchical clustering with Euclidean distance and complete linkage, calculates CDF area for k-selection)
- **WGCNA** (Alternative module detection method for comparison; groups features by correlation-based network analysis)
- **Seaborn clustermap** (Visualization of biclustered heatmaps showing module structure and interaction patterns)
- **Cytoscape** (Network visualization of module-based interaction networks and inter-module connections)
## Examples
```
# From MiMeNet README: performs biclustering on normalized attribution matrix via internal consensus clustering
python MiMeNet_train.py -micro microbiome.csv -metab metabolome.csv -output results/ -num_run_cv 10 -num_cv 10 -threshold 0.025
```
## Evaluation signals
- Δk threshold exceeded: verify that selected k* and k** correspond to the largest k value where Δk (proportional change in CDF area) exceeds 0.025, confirming consensus stability.
- Non-empty modules: all k* × k** bicluster partitions should be non-empty; if any module contains zero features, k values may be too large or data insufficiently structured.
- Score matrix coverage: module assignments should account for all microbes with ≥1 significant attribution score (|score| ≥ 97.5 percentile) and all well-predicted metabolites (SCC ≥ 95th percentile of background).
- Module interpretability: modules should show strong within-module correlation in attribution scores; mean |score| within modules should exceed mean |score| between modules.
- Consistency with network structure: module interaction network should reflect the directionality and magnitude of normalized attribution scores (positive vs. negative scores corresponding to distinct module types).
## Limitations
- Biclustering results depend critically on the choice of k range and Δk threshold (0.025); sensitivity analysis on this threshold is recommended, as different thresholds may yield different module counts.
- The method assumes that microbes and metabolites with similar attribution patterns are functionally related, but attribution scores are derived from a data-driven neural network and do not incorporate mechanistic or metabolic knowledge.
- Longitudinal or temporally structured datasets (e.g., soil wetting time-series) may exhibit higher consensus clustering thresholds, potentially inflating k values and fragmenting modules; biological context should guide interpretation.
- Modules derived from one dataset may not generalize to external cohorts; external validation is necessary to confirm module robustness across populations or environments.
## Evidence
- [other] Bicluster the normalized score matrix using k* and k** to partition rows (microbes) and columns (metabolites) into final functional modules.: "Bicluster the normalized score matrix using k* and k** to partition rows (microbes) and columns (metabolites) into final functional modules."
- [other] Apply consensus clustering with k ranging from 2 to 20; calculate cumulative distribution function area for each k and select k* as the largest k where Δk (proportional change in area) exceeds 0.025 threshold.: "apply consensus clustering with k ranging from 2 to 20; calculate cumulative distribution function area for each k and select k* as the largest k where Δk (proportional change in area) exceeds 0.025"
- [other] Perform hierarchical clustering on normalized attribution scores using Euclidean distance and complete linkage.: "Perform hierarchical clustering on normalized attribution scores using Euclidean distance and complete linkage"
- [abstract] MiMeNet can group microbes and metabolites with similar interaction patterns and functions to illuminate the underlying structure of the microbe-metabolite interaction network: "MiMeNet can group microbes and metabolites with similar interaction patterns and functions to illuminate the underlying structure of the microbe-metabolite interaction network"
- [abstract] trained models are then used to derive microbe-metabolite feature scores, which are used for clustering microbes and metabolites into functional modules: "trained models are then used to derive microbe-metabolite feature scores, which are used for clustering microbes and metabolites into functional modules"
- [discussion] We also observed a higher threshold value for the soil data, which may be due to the longitudinal observations: "We also observed a higher threshold value for the soil data, which may be due to the longitudinal observations"
- [discussion] Although the MiMeNet analysis is data-driven without incorporating mechanistic knowledge, these types of evidence obtained from the integrative analysis: "Although the MiMeNet analysis is data-driven without incorporating mechanistic knowledge, these types of evidence obtained from the integrative analysis"