ML Build: Regression Model using Feature Input¶
This Floe trains multiple ML(machine learning) Neural Network Regression models on physical properties of small molecules.
Every molecule in the input dataset needs to have a type Float physical property column to train on. In addition, every molecule needs a set of user input features as float vector to train the models on. The models train on these User provided Feature Vectors which are normalized pre-training. The molecule provided as input provides a basis for depiction against features.
It builds machine learning models on user input feature for all possible combinations of neural network hyperparameters provided in the Advanced sections. Read the documentation to learn more about these parameters and how they should be set for a given training data set.
Generates a Floe report containing details of the best models built. User can pick any model and use it to predict properties of other molecules in the Floe ML Regression using Feature Input. The Floe report presents detailed statistics on the hyperparameters, adjust them and rerun the Floe to build better models (See documentation).
In addition to prediction, the built models provide an explanation of predictions, a confidence interval, and the domain of application. The explainer picks the strongest features towards and against the prediction and reports as a histogram.
Warning: This Floe by default, builds about 1,000 machine learning models. On a large dataset, this may be expensive. Since multiple parameters lead to this cost, refer to documentation on how to build a cheaper version for practice. The dataset size to build decent models needs to be at least a ~200 molecules (barring exceptions). We have stress tested up to 50,000 molecules. It is recommended to increase the Memory and Disk Space requirements of the cubes to run on larger datasets.
Name |
Description |
Type |
---|---|---|
Input Small Molecules to train
machine learning models on.
|
Input dataset file with each record containing
molecule and response value(float) to train on
|
Molecule Dataset |
Name |
Description |
Type |
---|---|---|
Response Value Field |
Name of the field containing the primary data being trained on and predicted. |
Float |
Custom Feature
|
Field containing feature vector to train model on. Must be a float vector
|
FloatVec |
Number of Models to show in Floe report |
How many best models to provide in FloeReport. By default, keeps best
20 models (based on r2 score) such that it meet memory requirement
|
Int |
Preprocess Molecule |
For every molecule, stores only largest component, adjusts ionization to Neutral Ph |
Bool |
Apply Blockbuster filter |
Apply blockbuster filter |
Bool |
Negative Log |
Transform Learning Value to Negative Log.
Only for Regression. False: Build Tensorflow Neural Network Model
for prediction and explanation (Deterministic Model)
|
Bool |
Number of Top features to explain |
Number of top features to provide LIME votes results for.
These are the most important features that determine property prediction based on trained ML Model
|
List |
Name |
Description |
Type |
---|---|---|
Dropouts |
List of dropout hyperparameters. |
FloatVec |
Sets of Hidden Layers |
list(s) of hidden layers separated by -1. Input and output layer will be determined by data.
Eg: 150,100,50 will create NN with 3 hidden layers of size 150, 100, 50.
|
IntVec |
Sets of Regularisation Layers |
list(s) of regularisation layers separated by -1.
No regularisation on Input and output layer.
|
FloatVec |
Learning Rates |
List of all the learning rate hyperparameters to train model. |
FloatVec |
Max Epochs |
Maximum number of epochs to train model. |
Int |
Activation |
Activation Functions: ReLU, LeakyReLU, PReLU, tanh, SELU, ELU |
List |
Batch Size |
Batch size for training regressor |
Int |
Name |
Description |
Type |
---|---|---|
Models Built |
Output of Generated Models |
Dataset |
Failure Output |
Output of Failure |
Dataset |