Nested cross-validated supervised learning classifier.
Predicts a categorical sample metadata column using a supervised learning
classifier. Uses nested stratified k-fold cross validation for automated
hyperparameter optimization and sample prediction. Outputs predicted values
for each input sample, and relative importance of each feature for model
accuracy.
Parameters
- table : FeatureTable[Frequency]
- Feature table containing all features that should be used for target
prediction.
- metadata : MetadataColumn[Categorical]
- Categorical metadata column to use as prediction target.
- cv : Int % Range(1, None), optional
- Number of k-fold cross-validations to perform.
- random_state : Int, optional
- Seed used by random number generator.
- n_estimators : Int % Range(1, None), optional
- Number of trees to grow for estimation. More trees will improve
predictive accuracy up to a threshold level, but will also increase
time and memory requirements. This parameter only affects ensemble
estimators, such as Random Forest, AdaBoost, ExtraTrees, and
GradientBoosting.
- estimator : Str % Choices('RandomForestClassifier', 'ExtraTreesClassifier', 'GradientBoostingClassifier', 'AdaBoostClassifier', 'KNeighborsClassifier', 'LinearSVC', 'SVC'), optional
- Estimator method to use for sample prediction.
- parameter_tuning : Bool, optional
- Automatically tune hyperparameters using random grid search.
- missing_samples : Str % Choices('error', 'ignore'), optional
- How to handle missing samples in metadata. "error" will fail if missing
samples are detected. "ignore" will cause the feature table and
metadata to be filtered, so that only samples found in both files are
retained.
Returns
- predictions : SampleData[ClassifierPredictions]
- Predicted target values for each input sample.
- feature_importance : FeatureData[Importance]
- Importance of each input feature to model accuracy.