| 8 | from .prepare_data import * |
| 9 | from .seeding import get_seed, seed_everything |
| 10 | from .select_features import * |
| 11 | from .pipeline import * |
| 12 | |
| 13 | |
| 14 | |
| 15 | def arg_parse(): |
| 16 | parser = argparse.ArgumentParser() |
| 17 | |
| 18 | parser.add_argument('--seed', type=int, default=42, |
| 19 | help='seed') |
| 20 | parser.add_argument('--synergy_thres', type=int, default=0, |
| 21 | help='synergy threshold (default: loewe score)') |
| 22 | parser.add_argument('--ri_thres', type=int, default=10, |
| 23 | help='percentage inhibition') |
| 24 | parser.add_argument('--batch_size', type=int, default=256, |
| 25 | help='batch size (default: 256)') |
| 26 | parser.add_argument('--lr', type=float, default=1e-4, |
| 27 | help='learning rate for Adam (default: 1e-4, matching the manuscript)') |
| 28 | parser.add_argument('--weight_decay', type=float, default=0.0, |
| 29 | help='weight decay for Adam (default: 0.0)') |
| 30 | parser.add_argument('--epochs', type=int, default=50, |
| 31 | help='maximum number of epochs (default: 10)') |
| 32 | parser.add_argument('--cv_folds', type=int, default=5, |
| 33 | help='K-fold CV folds (default: 5; use 2 for smoke tests)') |
| 34 | parser.add_argument('--custom_split', type=str, default=None, |
| 35 | help='split tag (e.g. scaffold, lineage); suffixes checkpoints and predictions') |
| 36 | parser.add_argument('--suffix_threshold', action='store_true', |
| 37 | help='also suffix outputs with synergy_thres, for threshold sweeps') |
| 38 | parser.add_argument('--gpu', type=int, default=0, |
| 39 | help='CUDA device index; ignored when no GPU is visible') |
| 40 | parser.add_argument('--train_test_mode', type=str, default='test', |
| 41 | help='train or test or fine_tune') |
| 42 | parser.add_argument('--SHAP_analysis', type=bool, default=False) |
| 43 | parser.add_argument('--model', type=str, default='pairwise', |
| 44 | help='model name (pairwise, transynergy_liu, ...)') |
| 45 | |
| 46 | # --------------- Parse configuration --------------- # |
| 47 | |
| 48 | parser.add_argument('--synergy_df', type=str, default='p13', |
| 49 | help = 'p13 or Customized') |
| 50 | parser.add_argument('--external_validation', type=bool, default=False, |
| 51 | required=False, help = 'True for Customized') |
| 52 | parser.add_argument('--drug_omics', nargs="+", default=None, |
| 53 | required=False, help='overridden by pairwise/configs/config_<model>.json unless set') |
| 54 | parser.add_argument('--cell_df', type=str, default=None, |
| 55 | help='"CCLE","Customized"; default from config JSON') |
| 56 | parser.add_argument('--cell_omics', nargs="+", default=None, |
| 57 | required=False, help='"exp","cn","mut","GNN_cell') |