Class DropoutZeroDeletionStudy

java.lang.Object
edu.cmu.tetrad.study.missingness.DropoutZeroDeletionStudy

public final class DropoutZeroDeletionStudy extends Object
Replication harness for the zero-deletion ("testwise deletion of zeros") proposal of Dai, Ng, Luo, Spirtes, Stojanov and Zhang, "Gene Regulatory Network Inference in the Presence of Dropouts: A Causal View" (ICLR 2024).

The paper's setting differs from Tetrad's NaN-marked missing-data machinery in two ways. First, missingness is not located: zeros ARE the data, and a zero may be a true (biological) zero or a dropout; nothing is marked NaN. Second, the deletion rule of their Theorem 1 removes, for each conditional-independence estimate of X _||_ Y | S, only the rows in which some CONDITIONING variable in S is zero -- rows in which X or Y themselves are zero are KEPT. Their Definition 2 variant deletes rows with zeros in all involved variables (X, Y, and S), which under their self-masking assumption (A3) is asymptotically equivalent but finite-sample hungrier.

For greedy score-based search the paper does NOT sum a zero-deleted objective. It reframes each GES insert/delete decision as a CI test: compute the partial correlation on the zero-deleted rows, rescale it so the Fisher-Z statistic is preserved at the full sample size, and take the BIC change from that. That is a per-decision use of deletion, the same boundary our October NaN studies found: per-decision deletion is sound (PC tests, FGES diffs), per-objective summed deletion is incoherent (BOSS, GRaSP).

Arms, per dropout mechanism and rate:

  • ORACLE PC / FGES / BOSS on the clean data Z (upper bound);
  • FULL PC / FGES / BOSS on the zero-contaminated data X, dropouts ignored -- the paper's Proposition 1 predicts these are biased toward DENSER graphs;
  • PC 0DEL-COND: PC with the Theorem 1 test (delete rows with zeros in the conditioning set only);
  • PC 0DEL-ALL: PC with the Definition 2 test (delete rows with zeros in any involved variable);
  • FGES 0DEL: FGES with the per-decision zero-deleted, rescaled BIC diff (the paper's GES integration);
  • BOSS 0DEL: BOSS with a SUMMED zero-deleted BIC -- each family scored on its own all-nonzero rows. The paper never proposes this; it is included to test the prediction that summed-objective deletion fails in the zero regime as it did in the NaN regime.
  • MICE-PMM + IMaGES BOSS: all zeros recoded as missing, multiple imputation by predictive mean matching, and one BOSS run on the IMaGES score over the completed datasets -- the arm that won our NaN-marked studies, now tested on the paper's own mechanisms, where self-masking should bias it.

Dropout mechanisms follow the paper's Examples 1-3: fixed-rate Bernoulli dropout; truncation of the lowest values to zero; and logistic self-masking dropout, where higher expression means less dropout. Data are linear Gaussian SEMs, with an optional lognormal phase (exp transform) matching the paper's second case. Note a limitation inherited from the paper's own linear-SEM design: continuous data has no true zeros (exact zeros have probability zero), so every observed zero is technical, and the biological-versus-technical ambiguity that motivates the model is not actually exercised here. That ambiguity needs a count or zero-inflated regime and is left for a later phase.

Run from IntelliJ; it streams a line per condition. Nothing outside this file is touched.

Author:
josephramsey
  • Method Details

    • main

      public static void main(String[] args) throws Exception
      Entry point. Streams one block per (phase, mechanism, rate) condition with mean adjacency and arrowhead precision and recall, SHD, and seconds per arm.
      Parameters:
      args - Unused.
      Throws:
      Exception - If a phase fails irrecoverably.