Skip to content
yilab edited this page Mar 31, 2026 · 43 revisions

Episcope - Integrative ATAC-RNA Framework for Condition-Specific Gene Regulatory Networks

Version License Bioconductor Maintenance publication


Introduction

Episcope is a modular framework for integrating chromatin accessibility (ATAC) and transcriptomic (RNA-seq) data to infer condition-specific TF binding sites (TFBS), and reconstruct dynamic gene regulatory networks (GRNs).

It enables users to:

  • Collapse overlapping, redundant TF motif footprints generated by standard pipelines into consensus, site- and motif-nonredundant footprint clusters based on genomic overlap and shared motif composition.
  • Infer condition-specific canonical and non-canonical TFBS by correlating changes in TF expression with footprint/chromatin accessibility scores across conditions.
  • Refine regulatory priors (e.g., GeneHancer, genomic proximity, or user-supplied 3D chromatin interaction data) by filtering TF→TFBS→gene links using concordant correlation between (i) TF expression and target expression and (ii) footprint/chromatin accessibility scores and target expression.
  • Extract active TF→TFBS→gene regulatory links within each condition and identify differential links between conditions.
  • Model dynamic GRNs using multilayer perceptron (MLP) and variational autoencoder (VAE)-based topic modeling to learns shared latent topics capturing joint transcriptional and regulatory programs.
  • Generate interactive visualizations of topic- and condition-specific GRNs, along with cross-topic and cross-condition summary plots of pathway enrichment, TF-target clustering, and top master TFs. pipeline_full

Installation

Episcope is a package can be installed via:

# Using remotes
remotes::install_github("oncologylab/episcope")

# or using pak
pak::pak("oncologylab/episcope")

Dependencies:

install.packages(c("visNetwork", "igraph", "ggplot2", "data.table", "BiocManager"))
BiocManager::install(c("DESeq2", "GenomicRanges", "SummarizedExperiment"))

Usage Overview

Episcope runs as a 3-module pipeline and each module contains 2-4 primary functions and optional auxiliary functions:

Primary functions

  • load_prep_multiomic_data() produces a combined multiomic data object from a *.yaml configuration file specifying: (i) paths to the merged, normalized ATAC master table and normalized RNA-seq master table, (ii) the directory containing per-condition TF motif footprint score files generated by TOBIAS or other similar tools, and (iii) a metadata table mapping samples to conditions, along with other configuration settings.
  • correlate_tf_to_fp() first aligns, collapses and filters overlapping, redundant TF footprints (FPs) into nonredundant consensus footprints, to compute consensus footprint clusters, and performs quantile normalization on the collapsed, non-redundant FPs. It then computes Pearson (linear) and Spearman (rank-based) correlations between TF expression and footprint scores across conditions using the combined multi-omic data object, retaining only FPs that pass correlation cutoffs specified in the *.yaml configuration file.

Auxiliary functions

Primary functions

  • link_tf_targets() links TF binding sites (TFBS; predicted by Module 1 or other methods or from user-supplied ChIPseq/CUT&Run/CUT&Tag) to candidate target genes within a user-defined genomic window. The TF->TFBS->target links that pass expression, footprint and peak filters specified in the *.yaml configuration file are subjected to sequential pairwise Spearman and Pearson correlations (i) between TF and candidate target gene expression and (ii) between footprint scores (or peak scores if footprints not available) and candidate target gene expression across all matching conditions, retaining only links that pass correlation cutoffs specified in the *.yaml configuration file.
  • extract_link_info_by_condition() generates condition-specific summary tables of TF->TFBS->target links that are active (link_status = 1) in at least one condition.

Auxiliary functions

  • pathway_enrichment_of_tf_targets() outputs a directory containing pathway enrichment summaries of predicted target genes for a list of user-specified TFs.
  • build_custom_grns() produces customizable, condition-specific interactive or static GRN visualizations for a list of user-specified TFs and/or target genes.

Primary functions

  • find_differential_links() performs pairwise comparisons and extracts differential TF->FP->target links based on a user-supplied comparison metadata table.
  • train_topic_models() constructs per–TF-cluster “documents” containing weighted, condition- and direction-specific differential TF→TFBS→target links combining RNA and footprint (or peak signal) data, fuses the two representations with a multilayer perceptron (MLP), and learns shared latent topics that capture joint transcriptional and regulatory programs using variational autoencoder (VAE) for a series of user-defined k values.
  • extract_regulatory_topics() computes term-topic and link-topic probabilities and automatically assigns terms/links to topics based on a user-selected k and probability cutoff, and generates topic summary and QC plots.
  • build_per_comparison_per_topic_differential_grns() produces interactive or static visualizations of differential GRNs per condition and per topic.

Auxiliary functions


Pipelines

episcope supports multiple orchestrated pipelines:

  • Snakemake - scalable, HPC-optimized
  • Nextflow - reproducible, cloud-ready
  • R scripts - local exploratory runs

👉 https://github.com/oncologylab/episcope_snakemake
👉 https://github.com/oncologylab/episcope_nextflow


Help and Documentation


How to Cite

Li, Y., Yi, C. et al. (in preparation).
Episcope: Integrative ATAC-RNA framework for condition-specific gene regulatory network analysis.


License

This project is licensed under the GNU General Public License v3.0.