3D Diverse Subset
Category Paths
Follow one of these paths in the Orion user interface, to find the floe.
Role-based/Medicinal Chemist
Task-based/Data Science/Clustering
Solution-based/Virtual-screening/Analysis/Clustering
Description
This floe generates a diverse subset of the input dataset based on OEShape 3D similarity calculations.
If the parameter Use Large Scale Version is set to True, the floe will use sphere exclusion clustering to find the diverse subset. Otherwise, the floe will use k-medoids clustering. It is imperative to not attempt to cluster datasets larger than 25,000 records using k-medoids clustering!
You must provide 3D molecules on the input records, or the floe will fail. If multiple conformers are provided, only the active conformer will be used in the floe.
Promoted Parameters
Title in user interface (promoted name)
Outputs
Diverse Subset Name (subset): Name of output diverse subset file.
Required
Type: dataset_out
Default: 3D_diverse_subset
Failed Records (failed): Dataset with failed records.
Required
Type: dataset_out
Default: 3D_diverse_subset_failed
Advanced: Memory, Optimization, and Matrix File Output or Input
Output Distance Matrix (output_similarity_matrix): If True, writes distance matrix used in clustering to a file.
Type: boolean
Default: False
Choices: [True, False]
Distance Matrix Filename (similarity_matrix_filename): Filename of distance matrix.
Type: string
Default: clustering_distance_matrix.txt
Memory for Clustering Cubes (clustering_memory): For large datasets, try increasing the memory limit.
Type: decimal
Default: 8000
Similarity Tile Size (tile_size): Advanced parameter for tuning parallel speed.
Type: integer
Default: 5
Advanced: Large Scale Clustering Cubes
Memory (MB) for Cluster Head Generation (gen_heads_memory_mb): Memory (in MB) allocated to serial cube that generates cluster heads.
Type: decimal
Default: 8000
Memory (MB) for Parallel Sphere Exclusion (dse_memory_mb): Memory (in MB) allocated to parallel sphere exclusion cube that assigns members to clusters.
Type: decimal
Default: 8000
Sphere Exclusion Item Count (dse_item_count): Number of records processed at a time, by parallel sphere exclusion cube. Each record creates a unit of work, which is comparing similarity of all cluster heads found so far to a single member to be assigned.
Type: integer
Default: 10
Cluster Head Percentage (head_percentage): Ratio of cluster heads per cycle, to batch size
Type: decimal
Default: 0.01
Minimum Batch Size (batch_size_floor): Minimum batch size for generate heads cube.
Type: integer
Default: 20
Minimum Cluster Heads Per Cycle (num_clusters_per_cycle_floor): Minimum cluster heads found per cycle, for generate heads cube.
Type: integer
Default: 1
Batch Size Percentage (starting_batch_percentage): Starting ratio of batch size to total input size
Type: decimal
Default: 0.01
3D Similarity Calculation
3D Similarity Score Function (score_type):
Type: string
Default: Tanimoto Combo
Choices: [‘Shape Tanimoto’, ‘Color Tanimoto’, ‘Tanimoto Combo’]
Align Molecules (use_align): If set to True, molecules will be aligned before similarity calculation; otherwise, they will retain input coordinates.
Type: boolean
Default: True
Choices: [True, False]
Similarity Score Cutoff (sim_cutoff): Similarity scores below this value will be calculated as 0
Type: decimal
Default: 0.05
Sphere Exclusion Radius (sphere_exclusion_radius): Radius from cluster head, used to determine that head’s cluster members. This corresponds to a distance metric, or 1.0 - similarity_score. Scores are normalized from 0 to 1. For example, a TanimotoCombo similarity score of 1.5 is normalized to a score of 0.75 and a distance of 0.25. A larger radius will generally result in fewer clusters with more members, and a smaller radius will result in more clusters with fewer members.
Required
Type: decimal
Default: 0.5
Advanced: Sort Input Dataset By Score
Use Score (use_rank): Use rank to sort hits in directed sphere exclusion algorithm and include rank information in clustering report. YOU MUST SELECT A SCORE FIELD IN THE SCORE FIELD PARAMETER, BELOW, IF THIS IS SET TO TRUE.
Type: boolean
Default: False
Choices: [True, False]
Score Field (rank_field): Score field to be used for sorting during sphere exclusion and analyzed in floe report.
Type: field_parameter
Score Sort Order (sort_order): Sort order for scores. Descending means higher scores are more desirable. Ascending means lower scores are more desirable.
Type: string
Default: Descending
Choices: [‘Descending’, ‘Ascending’]
Inputs
Input Dataset (data_in): The dataset(s) to read records from
Required
Type: data_source
Default: data_in
Cluster Batch Size (batch_size): Batch size for clustering. Set to 1% of the number of input records for optimal results.
Required
Type: integer
Diverse Subset
Number in Subset (n_subset):
The number of records in the resulting subset. If Use Large Scale is set to True, the number of records output may be below the number requested. In this case, try adjusting the sphere exclusion radius. If Large Scale is set to False, the number of records output should match this parameter exactly.
Required
Type: integer
Use Large Scale Version (use_large): Set to True, if running clustering on a dataset with more than 10,000 records. Large scale clustering uses directed sphere exclusion, which is much more suitable for large datasets.
Required
Type: boolean
Default: True
Choices: [True, False]
Advanced: K-Medoids
Medoid Initialization Method (init_method): From scikit-learn-extra docs: Specify medoid initialization method. ‘random’ selects n_clusters elements from the dataset. ‘heuristic’ picks the n_clusters points with the smallest sum distance to every other point. ‘k-medoids++’ follows an approach based on k-means++_, and in general, gives initial medoids which are more separated than those generated by the other methods. ‘build’ is a greedy initialization of the medoids used in the original PAM algorithm. Often ‘build’ is more efficient but slower than other initializations on big datasets and it is also very non-robust, if there are outliers in the dataset, use another initialization.
Required
Type: string
Default: heuristic
Choices: [‘random’, ‘heuristic’, ‘k-medoids++’, ‘build’]
Algorithm (method): Alternate is faster, pam is more accurate
Required
Type: string
Default: pam
Choices: [‘alternate’, ‘pam’]
Maximum K-Medoids Iterations (max_iter):
Required
Type: integer
Default: 100000