package classification
- Alphabetic
- Public
- Protected
Type Members
-   sealed  trait BinaryLogisticRegressionSummary extends LogisticRegressionSummary with BinaryClassificationSummaryAbstraction for binary logistic regression results for a given model. 
-   sealed  trait BinaryLogisticRegressionTrainingSummary extends BinaryLogisticRegressionSummary with LogisticRegressionTrainingSummaryAbstraction for binary logistic regression training results. 
-   sealed  trait BinaryRandomForestClassificationSummary extends BinaryClassificationSummaryAbstraction for BinaryRandomForestClassification results for a given model. 
-   sealed  trait BinaryRandomForestClassificationTrainingSummary extends BinaryRandomForestClassificationSummary with RandomForestClassificationTrainingSummaryAbstraction for BinaryRandomForestClassification training results. 
-   abstract  class ClassificationModel[FeaturesType, M <: ClassificationModel[FeaturesType, M]] extends PredictionModel[FeaturesType, M] with ClassifierParamsModel produced by a Classifier. Model produced by a Classifier. Classes are indexed {0, 1, ..., numClasses - 1}. - FeaturesType
- Type of input features. E.g., - Vector
- M
- Concrete Model type 
 
-   abstract  class Classifier[FeaturesType, E <: Classifier[FeaturesType, E, M], M <: ClassificationModel[FeaturesType, M]] extends Predictor[FeaturesType, E, M] with ClassifierParamsSingle-label binary or multiclass classification. Single-label binary or multiclass classification. Classes are indexed {0, 1, ..., numClasses - 1}. - FeaturesType
- Type of input features. E.g., - Vector
- E
- Concrete Estimator type 
- M
- Concrete Model type 
 
-    class DecisionTreeClassificationModel extends ProbabilisticClassificationModel[Vector, DecisionTreeClassificationModel] with DecisionTreeModel with DecisionTreeClassifierParams with MLWritable with SerializableDecision tree model (http://en.wikipedia.org/wiki/Decision_tree_learning) for classification. Decision tree model (http://en.wikipedia.org/wiki/Decision_tree_learning) for classification. It supports both binary and multiclass labels, as well as both continuous and categorical features. - Annotations
- @Since("1.4.0")
 
-    class DecisionTreeClassifier extends ProbabilisticClassifier[Vector, DecisionTreeClassifier, DecisionTreeClassificationModel] with DecisionTreeClassifierParams with DefaultParamsWritableDecision tree learning algorithm (http://en.wikipedia.org/wiki/Decision_tree_learning) for classification. Decision tree learning algorithm (http://en.wikipedia.org/wiki/Decision_tree_learning) for classification. It supports both binary and multiclass labels, as well as both continuous and categorical features. - Annotations
- @Since("1.4.0")
 
-    class FMClassificationModel extends ProbabilisticClassificationModel[Vector, FMClassificationModel] with FMClassifierParams with MLWritable with HasTrainingSummary[FMClassificationTrainingSummary]Model produced by FMClassifier Model produced by FMClassifier - Annotations
- @Since("3.0.0")
 
-   sealed  trait FMClassificationSummary extends BinaryClassificationSummaryAbstraction for FMClassifier results for a given model. 
-   sealed  trait FMClassificationTrainingSummary extends FMClassificationSummary with TrainingSummaryAbstraction for FMClassifier training results. 
-    class FMClassifier extends ProbabilisticClassifier[Vector, FMClassifier, FMClassificationModel] with FactorizationMachines with FMClassifierParams with DefaultParamsWritable with LoggingFactorization Machines learning algorithm for classification. Factorization Machines learning algorithm for classification. It supports normal gradient descent and AdamW solver. The implementation is based on: S. Rendle. "Factorization machines" 2010. FM is able to estimate interactions even in problems with huge sparsity (like advertising and recommendation system). FM formula is: $$ \begin{align} y = \sigma\left( w_0 + \sum\limits^n_{i-1} w_i x_i + \sum\limits^n_{i=1} \sum\limits^n_{j=i+1} \langle v_i, v_j \rangle x_i x_j \right) \end{align} $$ First two terms denote global bias and linear term (as same as linear regression), and last term denotes pairwise interactions term. v_i describes the i-th variable with k factors.FM classification model uses logistic loss which can be solved by gradient descent method, and regularization terms like L2 are usually added to the loss function to prevent overfitting. - Annotations
- @Since("3.0.0")
- Note
- Multiclass labels are not currently supported. 
 
-    class GBTClassificationModel extends ProbabilisticClassificationModel[Vector, GBTClassificationModel] with GBTClassifierParams with TreeEnsembleModel[DecisionTreeRegressionModel] with MLWritable with SerializableGradient-Boosted Trees (GBTs) (http://en.wikipedia.org/wiki/Gradient_boosting) model for classification. Gradient-Boosted Trees (GBTs) (http://en.wikipedia.org/wiki/Gradient_boosting) model for classification. It supports binary labels, as well as both continuous and categorical features. - Annotations
- @Since("1.6.0")
- Note
- Multiclass labels are not currently supported. 
 
-    class GBTClassifier extends ProbabilisticClassifier[Vector, GBTClassifier, GBTClassificationModel] with GBTClassifierParams with DefaultParamsWritable with LoggingGradient-Boosted Trees (GBTs) (http://en.wikipedia.org/wiki/Gradient_boosting) learning algorithm for classification. Gradient-Boosted Trees (GBTs) (http://en.wikipedia.org/wiki/Gradient_boosting) learning algorithm for classification. It supports binary labels, as well as both continuous and categorical features. The implementation is based upon: J.H. Friedman. "Stochastic Gradient Boosting." 1999. Notes on Gradient Boosting vs. TreeBoost: - This implementation is for Stochastic Gradient Boosting, not for TreeBoost.
- Both algorithms learn tree ensembles by minimizing loss functions.
- TreeBoost (Friedman, 1999) additionally modifies the outputs at tree leaf nodes based on the loss function, whereas the original gradient boosting method does not.
- We expect to implement TreeBoost in the future: [https://issues.apache.org/jira/browse/SPARK-4240]
 - Annotations
- @Since("1.4.0")
- Note
- Multiclass labels are not currently supported. 
 
-    class LinearSVC extends Classifier[Vector, LinearSVC, LinearSVCModel] with LinearSVCParams with DefaultParamsWritableThis binary classifier optimizes the Hinge Loss using the OWLQN optimizer. Only supports L2 regularization currently. Since 3.1.0, it supports stacking instances into blocks and using GEMV for better performance. The block size will be 1.0 MB, if param maxBlockSizeInMB is set 0.0 by default. - Annotations
- @Since("2.2.0")
 
-    class LinearSVCModel extends ClassificationModel[Vector, LinearSVCModel] with LinearSVCParams with MLWritable with HasTrainingSummary[LinearSVCTrainingSummary]Linear SVM Model trained by LinearSVC Linear SVM Model trained by LinearSVC - Annotations
- @Since("2.2.0")
 
-   sealed  trait LinearSVCSummary extends BinaryClassificationSummaryAbstraction for LinearSVC results for a given model. 
-   sealed  trait LinearSVCTrainingSummary extends LinearSVCSummary with TrainingSummaryAbstraction for LinearSVC training results. 
-    class LogisticRegression extends ProbabilisticClassifier[Vector, LogisticRegression, LogisticRegressionModel] with LogisticRegressionParams with DefaultParamsWritable with LoggingLogistic regression. Logistic regression. Supports: - Multinomial logistic (softmax) regression.
- Binomial logistic regression.
 This class supports fitting traditional logistic regression model by LBFGS/OWLQN and bound (box) constrained logistic regression model by LBFGSB. Since 3.1.0, it supports stacking instances into blocks and using GEMV/GEMM for better performance. The block size will be 1.0 MB, if param maxBlockSizeInMB is set 0.0 by default. - Annotations
- @Since("1.2.0")
 
-    class LogisticRegressionModel extends ProbabilisticClassificationModel[Vector, LogisticRegressionModel] with MLWritable with LogisticRegressionParams with HasTrainingSummary[LogisticRegressionTrainingSummary]Model produced by LogisticRegression. Model produced by LogisticRegression. - Annotations
- @Since("1.4.0")
 
-   sealed  trait LogisticRegressionSummary extends ClassificationSummaryAbstraction for logistic regression results for a given model. 
-   sealed  trait LogisticRegressionTrainingSummary extends LogisticRegressionSummary with TrainingSummaryAbstraction for multiclass logistic regression training results. 
-    class MultilayerPerceptronClassificationModel extends ProbabilisticClassificationModel[Vector, MultilayerPerceptronClassificationModel] with MultilayerPerceptronParams with Serializable with MLWritable with HasTrainingSummary[MultilayerPerceptronClassificationTrainingSummary]Classification model based on the Multilayer Perceptron. Classification model based on the Multilayer Perceptron. Each layer has sigmoid activation function, output layer has softmax. - Annotations
- @Since("1.5.0")
 
-   sealed  trait MultilayerPerceptronClassificationSummary extends ClassificationSummaryAbstraction for MultilayerPerceptronClassification results for a given model. 
-   sealed  trait MultilayerPerceptronClassificationTrainingSummary extends MultilayerPerceptronClassificationSummary with TrainingSummaryAbstraction for MultilayerPerceptronClassification training results. 
-    class MultilayerPerceptronClassifier extends ProbabilisticClassifier[Vector, MultilayerPerceptronClassifier, MultilayerPerceptronClassificationModel] with MultilayerPerceptronParams with DefaultParamsWritableClassifier trainer based on the Multilayer Perceptron. Classifier trainer based on the Multilayer Perceptron. Each layer has sigmoid activation function, output layer has softmax. Number of inputs has to be equal to the size of feature vectors. Number of outputs has to be equal to the total number of labels. - Annotations
- @Since("1.5.0")
 
-    class NaiveBayes extends ProbabilisticClassifier[Vector, NaiveBayes, NaiveBayesModel] with NaiveBayesParams with DefaultParamsWritableNaive Bayes Classifiers. Naive Bayes Classifiers. It supports Multinomial NB (see here) which can handle finitely supported discrete data. For example, by converting documents into TF-IDF vectors, it can be used for document classification. By making every vector a binary (0/1) data, it can also be used as Bernoulli NB (see here). The input feature values for Multinomial NB and Bernoulli NB must be nonnegative. Since 3.0.0, it supports Complement NB which is an adaptation of the Multinomial NB. Specifically, Complement NB uses statistics from the complement of each class to compute the model's coefficients The inventors of Complement NB show empirically that the parameter estimates for CNB are more stable than those for Multinomial NB. Like Multinomial NB, the input feature values for Complement NB must be nonnegative. Since 3.0.0, it also supports Gaussian NB (see here) which can handle continuous data. - Annotations
- @Since("1.5.0")
 
-    class NaiveBayesModel extends ProbabilisticClassificationModel[Vector, NaiveBayesModel] with NaiveBayesParams with MLWritableModel produced by NaiveBayes Model produced by NaiveBayes - Annotations
- @Since("1.5.0")
 
-   final  class OneVsRest extends Estimator[OneVsRestModel] with OneVsRestParams with HasParallelism with MLWritableReduction of Multiclass Classification to Binary Classification. Reduction of Multiclass Classification to Binary Classification. Performs reduction using one against all strategy. For a multiclass classification with k classes, train k models (one per class). Each example is scored against all k models and the model with highest score is picked to label the example. - Annotations
- @Since("1.4.0")
 
-   final  class OneVsRestModel extends Model[OneVsRestModel] with OneVsRestParams with MLWritableModel produced by OneVsRest. Model produced by OneVsRest. This stores the models resulting from training k binary classifiers: one for each class. Each example is scored against all k models, and the model with the highest score is picked to label the example. - Annotations
- @Since("1.4.0")
 
-   abstract  class ProbabilisticClassificationModel[FeaturesType, M <: ProbabilisticClassificationModel[FeaturesType, M]] extends ClassificationModel[FeaturesType, M] with ProbabilisticClassifierParamsModel produced by a ProbabilisticClassifier. Model produced by a ProbabilisticClassifier. Classes are indexed {0, 1, ..., numClasses - 1}. - FeaturesType
- Type of input features. E.g., - Vector
- M
- Concrete Model type 
 
-   abstract  class ProbabilisticClassifier[FeaturesType, E <: ProbabilisticClassifier[FeaturesType, E, M], M <: ProbabilisticClassificationModel[FeaturesType, M]] extends Classifier[FeaturesType, E, M] with ProbabilisticClassifierParamsSingle-label binary or multiclass classifier which can output class conditional probabilities. Single-label binary or multiclass classifier which can output class conditional probabilities. - FeaturesType
- Type of input features. E.g., - Vector
- E
- Concrete Estimator type 
- M
- Concrete Model type 
 
-    class RandomForestClassificationModel extends ProbabilisticClassificationModel[Vector, RandomForestClassificationModel] with RandomForestClassifierParams with TreeEnsembleModel[DecisionTreeClassificationModel] with MLWritable with Serializable with HasTrainingSummary[RandomForestClassificationTrainingSummary]Random Forest model for classification. Random Forest model for classification. It supports both binary and multiclass labels, as well as both continuous and categorical features. - Annotations
- @Since("1.4.0")
 
-   sealed  trait RandomForestClassificationSummary extends ClassificationSummaryAbstraction for multiclass RandomForestClassification results for a given model. 
-   sealed  trait RandomForestClassificationTrainingSummary extends RandomForestClassificationSummary with TrainingSummaryAbstraction for multiclass RandomForestClassification training results. 
-    class RandomForestClassifier extends ProbabilisticClassifier[Vector, RandomForestClassifier, RandomForestClassificationModel] with RandomForestClassifierParams with DefaultParamsWritableRandom Forest learning algorithm for classification. Random Forest learning algorithm for classification. It supports both binary and multiclass labels, as well as both continuous and categorical features. - Annotations
- @Since("1.4.0")
 
Value Members
-    object DecisionTreeClassificationModel extends MLReadable[DecisionTreeClassificationModel] with Serializable- Annotations
- @Since("2.0.0")
 
-    object DecisionTreeClassifier extends DefaultParamsReadable[DecisionTreeClassifier] with Serializable- Annotations
- @Since("1.4.0")
 
-    object FMClassificationModel extends MLReadable[FMClassificationModel] with Serializable- Annotations
- @Since("3.0.0")
 
-    object FMClassifier extends DefaultParamsReadable[FMClassifier] with Serializable- Annotations
- @Since("3.0.0")
 
-    object GBTClassificationModel extends MLReadable[GBTClassificationModel] with Serializable- Annotations
- @Since("2.0.0")
 
-    object GBTClassifier extends DefaultParamsReadable[GBTClassifier] with Serializable- Annotations
- @Since("1.4.0")
 
-    object LinearSVC extends DefaultParamsReadable[LinearSVC] with Serializable- Annotations
- @Since("2.2.0")
 
-    object LinearSVCModel extends MLReadable[LinearSVCModel] with Serializable- Annotations
- @Since("2.2.0")
 
-    object LogisticRegression extends DefaultParamsReadable[LogisticRegression] with Serializable- Annotations
- @Since("1.6.0")
 
-    object LogisticRegressionModel extends MLReadable[LogisticRegressionModel] with Serializable- Annotations
- @Since("1.6.0")
 
-    object MultilayerPerceptronClassificationModel extends MLReadable[MultilayerPerceptronClassificationModel] with Serializable- Annotations
- @Since("2.0.0")
 
-    object MultilayerPerceptronClassifier extends DefaultParamsReadable[MultilayerPerceptronClassifier] with Serializable- Annotations
- @Since("2.0.0")
 
-    object NaiveBayes extends DefaultParamsReadable[NaiveBayes] with Serializable- Annotations
- @Since("1.6.0")
 
-    object NaiveBayesModel extends MLReadable[NaiveBayesModel] with Serializable- Annotations
- @Since("1.6.0")
 
-    object OneVsRest extends MLReadable[OneVsRest] with Serializable- Annotations
- @Since("2.0.0")
 
-    object OneVsRestModel extends MLReadable[OneVsRestModel] with Serializable- Annotations
- @Since("2.0.0")
 
-    object RandomForestClassificationModel extends MLReadable[RandomForestClassificationModel] with Serializable- Annotations
- @Since("2.0.0")
 
-    object RandomForestClassifier extends DefaultParamsReadable[RandomForestClassifier] with Serializable- Annotations
- @Since("1.4.0")