{
 "val": {
  "n_perts": 50,
  "mean_cells_per_pert": 1215.02,
  "n_ctrl_cells": 38176,
  "metrics": {
   "control_mean (predict non-targeting mean)": {
    "mae": 0.02551930893194573,
    "mse": 0.0037779577458988962,
    "mae_delta": 0.02551930893194573,
    "mse_delta": 0.0037779577458988962,
    "pearson_delta": null,
    "pds_l1": 0.512,
    "pds_l2": 0.5660000000000001,
    "pds_cosine": 0.51
   },
   "train_mean (cell-eval baseline: mean of 150 train pert means)": {
    "mae": 0.026594701730241053,
    "mse": 0.003666963411993343,
    "mae_delta": 0.026594701730241053,
    "mse_delta": 0.003666963411993343,
    "pearson_delta": 0.1636738824484047,
    "pds_l1": 0.5144,
    "pds_l2": 0.5712,
    "pds_cosine": 0.5236
   },
   "train_cell_weighted_mean (Systema-style perturbed mean)": {
    "mae": 0.025848302161574535,
    "mse": 0.0036808888217665977,
    "mae_delta": 0.025848302161574535,
    "mse_delta": 0.0036808888217665977,
    "pearson_delta": 0.1498867699889974,
    "pds_l1": 0.5139999999999999,
    "pds_l2": 0.5684,
    "pds_cosine": 0.5284
   },
   "control + train_mean_delta": {
    "mae": 0.0262833218714853,
    "mse": 0.00365727148435639,
    "mae_delta": 0.0262833218714853,
    "mse_delta": 0.00365727148435639,
    "pearson_delta": 0.16566433814388376,
    "pds_l1": 0.514,
    "pds_l2": 0.5712,
    "pds_cosine": 0.5272
   },
   "control + train_mean_delta + target-gene knockdown": {
    "mae": 0.026203580914822756,
    "mse": 0.0034915421492217364,
    "mae_delta": 0.026203580914822756,
    "mse_delta": 0.0034915421492217364,
    "pearson_delta": 0.3954390045633993,
    "pds_l1": 0.514,
    "pds_l2": 0.5712,
    "pds_cosine": 0.5272
   },
   "LOO mean of OTHER eval perts (uses eval labels; NOT a valid predictor)": {
    "mae": 0.026635926184339142,
    "mse": 0.0037367130528320053,
    "mae_delta": 0.026635926184339142,
    "mse_delta": 0.0037367130528320053,
    "pearson_delta": 0.13121140471202727,
    "pds_l1": 0.506,
    "pds_l2": 0.5648000000000001,
    "pds_cosine": 0.4176
   },
   "split-half noise ceiling (pred=half1, real=half0)": {
    "mae": 0.01756806680000474,
    "mse": 0.0008006107610599697,
    "mae_delta": 0.017792074517297907,
    "mse_delta": 0.0008156907556874049,
    "pearson_delta": 0.742822280701209,
    "pds_l1": 0.9652,
    "pds_l2": 1.0,
    "pds_cosine": 0.9996
   }
  },
  "score_vs_train_mean": {
   "control_mean (predict non-targeting mean)": {
    "mae_score": 0.0404363549252551,
    "pds_l1_score": 0,
    "mean_of_two": 0.02021817746262755
   },
   "train_mean (cell-eval baseline: mean of 150 train pert means)": {
    "mae_score": 0,
    "pds_l1_score": 0,
    "mean_of_two": 0.0
   },
   "train_cell_weighted_mean (Systema-style perturbed mean)": {
    "mae_score": 0.028065724377640988,
    "pds_l1_score": 0,
    "mean_of_two": 0.014032862188820494
   },
   "control + train_mean_delta": {
    "mae_score": 0.011708341831173197,
    "pds_l1_score": 0,
    "mean_of_two": 0.005854170915586598
   },
   "control + train_mean_delta + target-gene knockdown": {
    "mae_score": 0.014706719382889366,
    "pds_l1_score": 0,
    "mean_of_two": 0.007353359691444683
   },
   "LOO mean of OTHER eval perts (uses eval labels; NOT a valid predictor)": {
    "mae_score": 0,
    "pds_l1_score": 0,
    "mean_of_two": 0.0
   },
   "split-half noise ceiling (pred=half1, real=half0)": {
    "mae_score": 0.3394147835082525,
    "pds_l1_score": 0.9283360790774299,
    "mean_of_two": 0.6338754312928412
   }
  },
  "scale_sensitivity_halfsplit": {
   "0.1": {
    "mae": 0.02575422308506611,
    "mse": 0.003259266167717705,
    "mae_delta": 0.02575422308506611,
    "mse_delta": 0.003259266167717705,
    "pearson_delta": 0.742822280701209,
    "pds_l1": 0.5307999999999999,
    "pds_l2": 0.5868000000000001,
    "pds_cosine": 0.9996
   },
   "0.25": {
    "mae": 0.023116285328646437,
    "mse": 0.0023982063472228056,
    "mae_delta": 0.023116285328646437,
    "mse_delta": 0.0023982063472228056,
    "pearson_delta": 0.742822280701209,
    "pds_l1": 0.5688,
    "pds_l2": 0.6356,
    "pds_cosine": 0.9996
   },
   "0.5": {
    "mae": 0.01952890869837636,
    "mse": 0.0013664819813519135,
    "mae_delta": 0.01952890869837636,
    "mse_delta": 0.0013664819813519135,
    "pearson_delta": 0.742822280701209,
    "pds_l1": 0.7447999999999999,
    "pds_l2": 0.8916,
    "pds_cosine": 0.9996
   },
   "1": {
    "mae": 0.017792074517297907,
    "mse": 0.0008156907556874049,
    "mae_delta": 0.017792074517297907,
    "mse_delta": 0.0008156907556874049,
    "pearson_delta": 0.742822280701209,
    "pds_l1": 0.9652,
    "pds_l2": 1.0,
    "pds_cosine": 0.9996
   },
   "2": {
    "mae": 0.039370354152546076,
    "mse": 0.005764738328667488,
    "mae_delta": 0.039370354152546076,
    "mse_delta": 0.005764738328667488,
    "pearson_delta": 0.742822280701209,
    "pds_l1": 0.986,
    "pds_l2": 1.0,
    "pds_cosine": 0.9996
   },
   "4": {
    "mae": 0.09299511139391477,
    "mse": 0.03986535357186406,
    "mae_delta": 0.09299511139391477,
    "mse_delta": 0.03986535357186406,
    "pearson_delta": 0.742822280701209,
    "pds_l1": 0.992,
    "pds_l2": 0.9987999999999999,
    "pds_cosine": 0.9996
   },
   "8": {
    "mae": 0.20329869809975867,
    "mse": 0.2048766644472028,
    "mae_delta": 0.20329869809975867,
    "mse_delta": 0.2048766644472028,
    "pearson_delta": 0.742822280701209,
    "pds_l1": 0.99,
    "pds_l2": 0.9968,
    "pds_cosine": 0.9996
   }
  },
  "systematic_variation": {
   "mean_cos_vs_train_mean_delta": 0.16591785150635854,
   "mean_cos_vs_eval_mean_delta": 0.1983448107902919,
   "mean_cos_vs_eval_mean_delta_LOO": 0.13156309841160843,
   "share_of_delta_sq_norm_on_train_mean_delta_direction": 0.053675103911003996,
   "split_half_pearson_delta_control_reference": 0.742822280701209,
   "split_half_pearson_delta_perturbed_centroid_reference": 0.7893177741324829,
   "train_mean_pearson_delta_median": 0.15075200576403375,
   "train_mean_pearson_delta_q25_q75": [
    0.04563799782816062,
    0.2620210588691675
   ]
  }
 },
 "test": {
  "n_perts": 100,
  "mean_cells_per_pert": 1326.7,
  "n_ctrl_cells": 38176,
  "metrics": {
   "control_mean (predict non-targeting mean)": {
    "mae": 0.02403636571112537,
    "mse": 0.0032610185560524784,
    "mae_delta": 0.02403636571112537,
    "mse_delta": 0.0032610185560524784,
    "pearson_delta": null,
    "pds_l1": 0.5073,
    "pds_l2": 0.5575,
    "pds_cosine": 0.505
   },
   "train_mean (cell-eval baseline: mean of 150 train pert means)": {
    "mae": 0.024974434187399867,
    "mse": 0.00314520815774128,
    "mae_delta": 0.024974434187399867,
    "mse_delta": 0.00314520815774128,
    "pearson_delta": 0.1681788658305102,
    "pds_l1": 0.509,
    "pds_l2": 0.5650000000000001,
    "pds_cosine": 0.5156000000000001
   },
   "train_cell_weighted_mean (Systema-style perturbed mean)": {
    "mae": 0.02424331208645407,
    "mse": 0.0031522268504349544,
    "mae_delta": 0.02424331208645407,
    "mse_delta": 0.0031522268504349544,
    "pearson_delta": 0.16118372189119648,
    "pds_l1": 0.5081000000000001,
    "pds_l2": 0.5619999999999999,
    "pds_cosine": 0.5179
   },
   "control + train_mean_delta": {
    "mae": 0.024842957709864635,
    "mse": 0.0031420733055628858,
    "mae_delta": 0.024842957709864635,
    "mse_delta": 0.0031420733055628858,
    "pearson_delta": 0.16952834846354795,
    "pds_l1": 0.5082,
    "pds_l2": 0.5654,
    "pds_cosine": 0.5168
   },
   "control + train_mean_delta + target-gene knockdown": {
    "mae": 0.024769594401955346,
    "mse": 0.0030025557245291186,
    "mae_delta": 0.024769594401955346,
    "mse_delta": 0.0030025557245291186,
    "pearson_delta": 0.3782919193409455,
    "pds_l1": 0.5082,
    "pds_l2": 0.5654,
    "pds_cosine": 0.5168
   },
   "LOO mean of OTHER eval perts (uses eval labels; NOT a valid predictor)": {
    "mae": 0.024721572022390684,
    "mse": 0.003164587819927434,
    "mae_delta": 0.024721572022390684,
    "mse_delta": 0.003164587819927434,
    "pearson_delta": 0.15689008805086793,
    "pds_l1": 0.5051,
    "pds_l2": 0.5599999999999999,
    "pds_cosine": 0.46370000000000006
   },
   "split-half noise ceiling (pred=half1, real=half0)": {
    "mae": 0.018722694665728234,
    "mse": 0.001073400047798419,
    "mae_delta": 0.018969252059464304,
    "mse_delta": 0.001088985670997118,
    "pearson_delta": 0.7255800896301012,
    "pds_l1": 0.9611,
    "pds_l2": 0.9982000000000001,
    "pds_cosine": 0.9949000000000001
   }
  },
  "score_vs_train_mean": {
   "control_mean (predict non-targeting mean)": {
    "mae_score": 0.03756115030416873,
    "pds_l1_score": 0,
    "mean_of_two": 0.018780575152084367
   },
   "train_mean (cell-eval baseline: mean of 150 train pert means)": {
    "mae_score": 0,
    "pds_l1_score": 0,
    "mean_of_two": 0.0
   },
   "train_cell_weighted_mean (Systema-style perturbed mean)": {
    "mae_score": 0.02927482142176674,
    "pds_l1_score": 0,
    "mean_of_two": 0.01463741071088337
   },
   "control + train_mean_delta": {
    "mae_score": 0.005264442691621185,
    "pds_l1_score": 0,
    "mean_of_two": 0.0026322213458105925
   },
   "control + train_mean_delta + target-gene knockdown": {
    "mae_score": 0.008201979028132134,
    "pds_l1_score": 0,
    "mean_of_two": 0.004100989514066067
   },
   "LOO mean of OTHER eval perts (uses eval labels; NOT a valid predictor)": {
    "mae_score": 0.01012484059145402,
    "pds_l1_score": 0,
    "mean_of_two": 0.00506242029572701
   },
   "split-half noise ceiling (pred=half1, real=half0)": {
    "mae_score": 0.25032557193330807,
    "pds_l1_score": 0.9207739307535641,
    "mean_of_two": 0.585549751343436
   }
  },
  "scale_sensitivity_halfsplit": {
   "0.1": {
    "mae": 0.024854329489060217,
    "mse": 0.003004959021540088,
    "mae_delta": 0.024854329489060217,
    "mse_delta": 0.003004959021540088,
    "pearson_delta": 0.7255800896301012,
    "pds_l1": 0.5260999999999999,
    "pds_l2": 0.5810000000000001,
    "pds_cosine": 0.9949000000000001
   },
   "0.25": {
    "mae": 0.022589312554818747,
    "mse": 0.0022915813837471968,
    "mae_delta": 0.022589312554818747,
    "mse_delta": 0.0022915813837471968,
    "pearson_delta": 0.7255800896301012,
    "pds_l1": 0.5637000000000001,
    "pds_l2": 0.6357,
    "pds_cosine": 0.9949000000000001
   },
   "0.5": {
    "mae": 0.01968754330799587,
    "mse": 0.0014528842061241381,
    "mae_delta": 0.01968754330799587,
    "mse_delta": 0.0014528842061241381,
    "pearson_delta": 0.7255800896301012,
    "pds_l1": 0.7369000000000001,
    "pds_l2": 0.8687999999999998,
    "pds_cosine": 0.9949000000000001
   },
   "1": {
    "mae": 0.018969252059464304,
    "mse": 0.001088985670997118,
    "mae_delta": 0.018969252059464304,
    "mse_delta": 0.001088985670997118,
    "pearson_delta": 0.7255800896301012,
    "pds_l1": 0.9611,
    "pds_l2": 0.9982000000000001,
    "pds_cosine": 0.9949000000000001
   },
   "2": {
    "mae": 0.03922048193092845,
    "mse": 0.005615171881219466,
    "mae_delta": 0.03922048193092845,
    "mse_delta": 0.005615171881219466,
    "pearson_delta": 0.7255800896301012,
    "pds_l1": 0.9815999999999999,
    "pds_l2": 0.9998,
    "pds_cosine": 0.9949000000000001
   },
   "4": {
    "mae": 0.09004200998507564,
    "mse": 0.03568347742356972,
    "mae_delta": 0.09004200998507564,
    "mse_delta": 0.03568347742356972,
    "pearson_delta": 0.7255800896301012,
    "pds_l1": 0.9867,
    "pds_l2": 0.9981,
    "pds_cosine": 0.9949000000000001
   },
   "8": {
    "mae": 0.19503682169067602,
    "mse": 0.17988382099589242,
    "mae_delta": 0.19503682169067602,
    "mse_delta": 0.17988382099589242,
    "pearson_delta": 0.7255800896301012,
    "pds_l1": 0.9862000000000001,
    "pds_l2": 0.996,
    "pds_cosine": 0.9949000000000001
   }
  },
  "systematic_variation": {
   "mean_cos_vs_train_mean_delta": 0.1695930955555282,
   "mean_cos_vs_eval_mean_delta": 0.19130034235490234,
   "mean_cos_vs_eval_mean_delta_LOO": 0.156989042069076,
   "share_of_delta_sq_norm_on_train_mean_delta_direction": 0.056194823052300384,
   "split_half_pearson_delta_control_reference": 0.7255800896301012,
   "split_half_pearson_delta_perturbed_centroid_reference": 0.7679811772591943,
   "train_mean_pearson_delta_median": 0.13050145844234368,
   "train_mean_pearson_delta_q25_q75": [
    0.034420200322273505,
    0.3060243506290933
   ]
  }
 },
 "meta": {
  "cellw_vs_pertw_mean": {
   "l1_per_gene": 0.0037750742551032838,
   "cos_of_deltas": 0.9208042414915449,
   "cells_per_pert_min": 33.0,
   "cells_per_pert_max": 4760.0,
   "cells_per_pert_median": 1045.0
  },
  "train_perts": 150,
  "median_knockdown_ratio_train": 0.09485313486284326,
  "genes": 18080,
  "target_sum": {
   "train": 53912.0,
   "val": 54312.0,
   "test": 54125.5
  }
 }
}