Skip to main content
. 2025 May 30;47(6):408. doi: 10.3390/cimb47060408
Algorithm 1 f-divergence-based dynamic gene regulatory network inference algorithm.
Input: Time-series scRNA-seq data matrix X; percentage of randomly sampled single cells p=80%; number of samples n=100; f-divergence measures; regularization methods {LASSO,MCP,SCAD}.
Output: Time-varying gene regulatory networks.
Step 1: Random sampling and temporal variation calculation of genes using f-divergence
  • Randomly sample a percentage of single cells from the data at different time points.

  • Apply f-divergence to compute the temporal variation, Dfj(tl), for each gene j’s expression levels across all single cells between two consecutive time points, tl and tl+1, l=1,2,...,n.

  • Normalize the temporal variation, Dfj(tl) with respect to time interval between consecutive time points (Δtl): D^fj(tl)=Dfj(tl)Δtl.

  • Repeat the above process n times to generate multiple temporal variation vectors.

Step 2: Network structure learning using VAR(1) model with regularization
  • Construct sliding windows that contain Dfj(tl) of two consecutive time points.

  • In each window,
    • -
      build a first-order VAR(1) model for each gene j:
      D^fj(tl+1)=D^f(tl)αj+ϵt,
    • -
      Solve the optimization problem using different regularization methods
      minαj12D^fj(tl+1)D^fj(tl)αj2+λp(αj),
  • Output a sparse matrix α that represents the inferred connectivity structure at different stages.

Step 3: Calculate signed adjacency matrix using partial correlation to identify regulatory relationship
  • In each window, calculate the Spearman rank partial correlation Pij between two genes, and obtain the sign matrix Sij=sign(Pij).

  • Construct a signed adjacency matrix A by performing element-wise multiplication of α and S: Aij=αij·Sij.

  • Reconstruct time-varying regulatory networks based on the matrix A.