ab_fep_active_learning.py screen Command Help
Command: $SCHRODINGER/run -FROM scisol ab_fep_active_learning.py screen
Using Any for unsupported type: typing.Sequence[~T]
No module named google.cloud.bigquery_storage_v1. As a result, the ReadFromBigQuery transform *CANNOT* be used with `method=DIRECT_READ`.
Converting string literal type hint to Any: "T"
Converting string literal type hint to Any: "T"
Converting string literal type hint to Any: "T"
usage: ab_fep_active_learning.py screen [-h]
[-infile_list_file <infile_path_list>]
[-block_size <num_lig_per_block>]
[-smi_index <smiles_column_index>]
[-name_index <title_column_index>]
[-no_header]
[-result_prefix <output_file_prefix>]
[-remote_input_ligands]
[-restart_file <restart_pkl_file>]
[-avoid_splitting_csv_files]
[-infile INFILE]
[-props_filter_file <file>]
[-receptor <receptor>]
[-grid <gridfile>]
[-glide_ws_model <glide_ws_model_file>]
[-jobname <jobname>]
[-stop_after <stop_workflow_after_stage>]
[-max_ml_eval_cpu <maximum_ml_evaluation_cpu>]
[-eval_with_mq] [-use_autoqsar]
[-fep_gpu_host <FEP_JOBS_GPU_HOST>]
[-max_fep_subjob_restarts <maximum_number_retries_fep_subjob>]
[-max_ligprep_cpu <maximum_ligprep_cpu>]
[-max_ffbuilder_cpu <maximum_ffbuilder_cpu>]
[-max_fep_subjobs <maximum_fep_subjobs>]
[-max_concurrent_fep_subjobs <maximum_concurrent_fep_subjobs>]
[-train_size <num_ligands_per_iteration>]
[-selection_rule <training_ligands_selection_protocol>]
[-dise_similarity_threshold <frac>]
[-num_iter <num_of_iteration>]
[-train_time <hours>]
[-train_host <ligand_ml_training_host>]
[-num_train_core <ligand_ml_training_core>]
[-chosen_models <ligand_ml_chosen_models>]
[-force_single_model]
[-pilot_score_file PILOT_SCORE_FILE]
[-only_final_rescore]
[-discard_error_cutoff <dG_error_discard_cutoff>]
[-training_discard_cutoff <ml_training_discard_cutoff>]
[-known_fep_dg <known_fep_dg_csv_file>]
[-random_seed <random_seed_number>]
[-overwrite_args] [-force_restart]
[-ligprep_args <ligprep_arguments>]
[-need_ligprep]
[-fep_job_batch_size <ligands_per_fep_job>]
[-opls_dir <opls_ff_dir>]
[-fep_restraints_file <fep_restraints_file>]
[-optimization_target ml_optimization_property]
[-use_graphdb]
[-graphdb_proj <graphdb_project_name>]
[-standalone_ffbuilder]
[-max_docking_cpu <maximum_docking_cpu>]
[-train_with_glide_feature]
[-feature_options <feature_apply_options>]
[-glide_mq]
[-extra_docking_inputs <input_file_of_extra_docking_inputs>]
[-need_dock]
[-poses_per_lig <docking_poses_per_lig>]
[-abfep_args <abfep_arguments>]
[-abfep_charged_ppj <abfep_charged_ppj>]
[-abfep_json_args_file]
[-final_rescore_abfep_args <final_rescore_job_abfep_arguments>]
[-final_rescore_abfep_json_args_file]
[-final_rescore_abfep_charged_ppj <final_rescore_abfep_charged_ppj>]
[-num_final_rescore_ligand <num_final_rescore_ligand>]
[-keep <num_returned_ligand> | -keep_fraction <fraction_of_returned_ligand>]
[-num_rescore_ligand <num_rescore_ligand> | -rescore_ligand_fraction <fraction_of_rescore_ligand>]
options:
-h, --help show this help message and exit
-random_seed <random_seed_number>
Random seed number for shuffling all the ligands
and seeding ligand_ml training.
-overwrite_args Overwrite previous arguments, Default is False.
-force_restart Force the workflow to restart when some restarting files are missing.
-ligprep_args <ligprep_arguments>
Arguments for using ligprep to prepare the ligands. Default is '-pht 1.0 -epik -s16'.
-need_ligprep Run ligprep on input ligands.
-fep_job_batch_size <ligands_per_fep_job>
Number of ligands per FEP job. Default is 100.
-opls_dir <opls_ff_dir>
Path of the OPLS force field directory.
-fep_restraints_file <fep_restraints_file>
Apply positional restraints to the receptor as specified
in the provided file. Only available for AL-FEP+ and AL-ABFEP.
The file should give the restraints in Ark format,
e.g., a file could contain: restraints={existing=ignore
new=[{atoms='asl:(protein and backbone and not a.ele H)'
force_constants=[1.0 2.0 3.0] name=posre_harm}]}
-optimization_target ml_optimization_property
Optimization target of the workflow.
Supported target:
*dG -> Optimize dG value
*LE -> Optimize ligand efficiency
*LLE -> Optimize ligand lipophilicity efficiency
*AEI -> Optimize ADME efficiency index
Default value is dG.
-use_graphdb Run FEP on GraphDB.
-graphdb_proj <graphdb_project_name>
Name of the GraphDB project for running FEP plus job.
-standalone_ffbuilder
Do not use graphdb's ffbuilder to run forcefield calculations.
Uses standalone ffbuilder. Default is False.
-max_docking_cpu <maximum_docking_cpu>
Maximum number of CPUs for Glide SIP jobs.
-train_with_glide_feature
Include Glide per residual score as additional features in ML model building.
Ligands supplied by -known_fep_dg will not be included in the initial training
if this flag is on. Residue interactions are obtained using Glide's score-in-place method.
-feature_options <feature_apply_options>
A space-separated string that configures the set of features used during training.
Trains separate models for each specified option and selects the best
performing model based on R2 score,
no_feature -> Train using only default ligand features.
additionally derived features will not be used.
only_feature -> Train using only additionally derived features.
ligand features will not be used.
with_feature -> Train using both additionally derived features and
ligand features.
Example:
-feature_options with_feature no_feature only_feature
Default value is no_feature.
-glide_mq Turn on Glide execution with ZMQ.
-extra_docking_inputs <input_file_of_extra_docking_inputs>
a file with additional Glide keywords and values for generating input poses.
-need_dock Generate input pose with Glide docking or Glide WS docking.
-poses_per_lig <docking_poses_per_lig>
Number of poses generated from Glide docking.
Glide WS docking only supports single docking pose.
Default value is 1.
-abfep_args <abfep_arguments>
Arguments string for ABFEP jobs.
Default is '-ppj 1 -md-sim-time 1000 -fep-sim-time 5000 -time-complex 5000 -time-solvent 5000'
-abfep_charged_ppj <abfep_charged_ppj>
'-ppj' value used only for charged compounds
when running ABFEP with job control. Neutral
compounds use '-ppj' from -abfep_args. Allows charged
compounds to use more processors per job.
If unset, all compounds use the '-ppj' from -abfep_args.
-abfep_json_args_file
.json file that contains the ABFEP running arguments.
The .json file should be parsable by json.load() as:
{
"arg": "value",
}
The arguments specified in this file will override the args string specified in command line.
-final_rescore_abfep_args <final_rescore_job_abfep_arguments>
Arguments string for ABFEP jobs in final rescore stage. Final
rescore stage picks top num_final_rescore_ligand ligands from
the initial ABFEP runs to run another round of ABFEP with
these arguments for potentially more accurate results.
This or final_rescore_abfep_json_args_file must be specified
if num_final_rescore_ligand > 0.
-final_rescore_abfep_json_args_file
.json file that contains the ABFEP running arguments for
rescore stage. The .json file should parsable by json.load() as
{
"arg": "value",
}
The arguments specified in this file will override the args string specified in command line.
Default is the same value as final_rescore_abfep_args.
-final_rescore_abfep_charged_ppj <final_rescore_abfep_charged_ppj>
'-ppj' value used only for charged compounds in the final
rescore stage when running ABFEP with job control. Neutral
compounds use '-ppj' from -final_rescore_abfep_args.
If unset, all final rescore compounds use the '-ppj' from
-final_rescore_abfep_args.
-num_final_rescore_ligand <num_final_rescore_ligand>
Select number of the top ligands to run based on results of -abfep_args.
Default is 0.
-keep <num_returned_ligand>
Number of best ligands to be returned. Default is 100000.
-keep_fraction <fraction_of_returned_ligand>
Fraction of the ligands to be returned.
-num_rescore_ligand <num_rescore_ligand>
Number of the best ligands predicted by the last
ML model to run rescore with FEP+ single edge or
AB-FEP. Default is 1000
-rescore_ligand_fraction <fraction_of_rescore_ligand>
Fraction of the best ligands to run FEP rescore (single edge for small molecule FEP).
file options:
-infile_list_file <infile_path_list>
A file that contains a list of infile paths.
-block_size <num_lig_per_block>
Number of ligands in each sub input ligands file. Default is
15000 for AL-FEP+/AL-ABFEP and 100,000 for AL-Glide.
-smi_index <smiles_column_index>
1-based column index of ligand's SMILES.
Default is 1.
-name_index <title_column_index>
1-based column index of ligand's title.
Default is 2.
-no_header Whether the input file(s) has header in the first line.
-result_prefix <output_file_prefix>
prefix of the .csv result files. Default is -jobname.
-remote_input_ligands
Whether input ligand files are located at remote. Absolute
paths of input ligand files are required if this flag is
provided.
-restart_file <restart_pkl_file>
.pkl file for restarting or continuing the active learning
workflow.
-avoid_splitting_csv_files
Enable this option to use pre-split ligand CSV files, avoiding redundancy.
Requirements:
- Reorder columns: 'SMILES' first, 'Title' second.
- Each split CSV must have the same header: 'SMILES, Title'.
- Remove any additional columns.
- Optionally gzip compress each split CSV file.
- Archive all pre-split CSV files into one directory and zip compress it.
Pass the zipped directory to '-infile'.
-infile INFILE .csv, .smi or .mae file(s) that contains all the ligand
SMILES. Multiple files can be included by specifying
multiple -infile options.
-props_filter_file <file>
Path to a file containing property and / or smarts filters.
Each line defines a filter a hit must satisfy. Filters are specified as:
<property>,<operator>,<value1>,<value2>...
<property>: Name of a property. Available properties include:
• Physicochemical: ALOGP, MW, PSA, HBA, HBD
• Structural: TOTAL_RINGS, STEREO_CENTERS, FORMAL_CHARGE
• Classification: PROPERTY_CLASS
• Substructure: SMARTS (for substructure matching)
<operator>: SQL logical operator: =, <, >, <=, >=, <>, BETWEEN, LIKE, IN.
<value(s)>: Target value(s). Use exactly 2 values for BETWEEN,
1 or more for IN, and 1 for all other operators.
Examples:
AlogP,BETWEEN,2.0,5.0 # Lipophilicity range
MW,<,500 # Molecular weight limit
HBD,<=,5 # Hydrogen bond donors
STEREO_CENTERS,<,3 # Stereochemical complexity
SMARTS,IN,c1[nX2][nX3]cc1 # Substructure matching
Note: Physicochemical properties are computed and stored automatically.
-receptor <receptor> Protein receptor .mae file.
-grid <gridfile> Glide grid file for docking.
-glide_ws_model <glide_ws_model_file>
Glide WS model file for running docking jobs.
job options:
-jobname <jobname> Job name of the active learning workflow run.
-stop_after <stop_workflow_after_stage>
Terminate the workflow after the specified stage finished.
Specify FinishAll (case-insensitive) to run all the remaining stages.
For convenience, you can also specify 'iter_X' to stop after
iteration X (e.g., 'iter_1', 'iter_2', etc.).
-max_ml_eval_cpu <maximum_ml_evaluation_cpu>
Allowed maximum number of CPU for
machine learning evaluation subjobs.
-eval_with_mq Enables ligand_ml evaluation using zeroMQ.
Specify the number of evaluation jobs with -max_ml_eval_cpu.
If running a screen or pilot, the -chosen_models flag will
automatically set to TorchGraphConv models.
-use_autoqsar Use AutoQSAR instead of DeepAutoQSAR for ML model building and evaluation. Only supports AL-FEP+ and AL-ABFEP+
-fep_gpu_host <FEP_JOBS_GPU_HOST>
GPU host name for running FEP jobs. Default is the same as -train_host.
-max_fep_subjob_restarts <maximum_number_retries_fep_subjob>
Maximum number of restart attempts for per FEP job.
Default is 1estart. This option does not impact the
graphdb or FEP+ web service runs which are restarted automatically.
-max_ligprep_cpu <maximum_ligprep_cpu>
Allowed maximum number of CPUs for ligprep subjobs.
-max_ffbuilder_cpu <maximum_ffbuilder_cpu>
Allowed maximum number of CPUs for force field builder subjobs.
-max_fep_subjobs <maximum_fep_subjobs>
Allowed maximum number of FEP jobs.
-max_concurrent_fep_subjobs <maximum_concurrent_fep_subjobs>
Allowed maximum number of concurrently running FEP jobs.
screen options:
-train_size <num_ligands_per_iteration>
Number of training ligands for each active learning round.
A minimal number of 40 is required.
User can also specify the selection rule for each iteration by providing
a list of selection rules separated by space such as '500 200 200'.
Default value is 250.
-selection_rule <training_ligands_selection_protocol>
Protocol for selecting training set ligands. Supported selection protocols:
random most_uncertain greedy diversity dise distinct_scaffolds
User can also specify the selection protocol for each iteration by providing
a list of selection protocols separated by space. For example, 'diversity greedy greedy'
Note that dise has only been tested for AL-FEP and AL-ABFEP.
Default value is dise.
-dise_similarity_threshold <frac>
Threshold similarity score (between 0 and 1) for DISE selection
of training data. Default is 0.5. Lower values increase
diversity within training data
-num_iter <num_of_iteration>
Number of active learning iteration. Default is 3.
-train_time <hours> Floating point time limit in hours for training deep learning models.
Default value is 4.0.
-train_host <ligand_ml_training_host>
ligand_ml training host name. Default is the same as -HOST.
-num_train_core <ligand_ml_training_core>
Number of cpu or gpu for ligand_ml training.
Default is 1.
-chosen_models <ligand_ml_chosen_models>
Type of model architecture(s) to consider in ligand_ml.
chosen_models should be contained in a string and separated by space.
Default is all available models in ligand_ml.
-force_single_model Force the screen mode to train with only
one model (graph convolutional network). Cannot be combined
with -chosen_models. Ideal for training 1 million+ compounds.
-pilot_score_file PILOT_SCORE_FILE
This argument has been deprecated.
Use -known_fep_dg option to use previously calculated scores for initial training.
-only_final_rescore Only execute final rescore in the rescore stage.
-discard_error_cutoff <dG_error_discard_cutoff>
Discard ligands from training set if their dG error
is larger than the specified value. Default is no cutoff.
-training_discard_cutoff <ml_training_discard_cutoff>
Exclude the ligand from the training set if its score is
higher or lower than the cutoff depending on whether lower or
higher value is better. Default is no cutoff.
-known_fep_dg <known_fep_dg_csv_file>
CSV or FMP file that contains ligands with known FEP predicted dG.
The data from this file will be used to seed the ML models directly and
skip the first (random) round of compound selection and single edge
FEP calculations. CSV file should have following columns:
SMILES, Title, dG and dG_error.
dG error will be set to 0 if dG_error column is missing.