torchml.discriminant_analysis

Classes

torchml.discriminant_analysis.LinearDiscriminantAnalysis

[Source]

Description

Linear Discriminant Analysis is a classifier with a linear decision boundary, which is calculated by fitting class conditional densities to the data and using Bayes' rule. This model fits a Gaussian density to each class and it assumes that all classes share the same covariance matrix. This current implementation only includes "svd" solver.

References
  1. Linear discriminant analysis : a detailed tutorial tutorial
  2. The scikit-learn documentation page
Arguments
  • n_components (int, default=None) - Number of components (features) for dimensionality reduction. If None, will be set to min(n_classes - 1, n_features).
  • priors (torch.Tensor, default=None) - The class prior probabilities. By default, the class proportions are calculated from the input training data.
  • tol (float, default=1e-4) - Absolute threshold for a singular value of X to be considered significant, used to estimate the rank of X. Used only in "svd" solver.
  • solver (str, default="svd") - Solver to use. Currently only support "svd" solver.
Example
lda = LinearDiscriminantAnalysis()

fit(self, X: Tensor, y: Tensor)

Description

Fit the Linear Discriminant Analysis model.

Arguments
  • X (Tensor) - Input variates.
  • y (Tensor) - Target covariates.
Example
lda = LinearDiscriminantAnalysis()
lda.fit(X_train, y_train)

predict(self, X: Tensor)

Description

Predict using Linear Discriminant Analysis model.

Arguments
  • X (Tensor) - Input variates.
Example
lda = LinearDiscriminantAnalysis()
lda.fit(X_train, y_train)
lda.predict(X_test)

transform(self, X: Tensor)

Description

Transform and project data to maximize class separation.

Arguments
  • X (Tensor) - Input data.
Example
lda = LinearDiscriminantAnalysis()
lda.fit(X_train, y_train)
lda.transform(X_test)

torchml.discriminant_analysis.QuadraticDiscriminantAnalysis

[Source]

Description

Quadratic Discriminant Analysis is a classifier with a quadratic decision boundary, which is calculated by fitting class conditional densities to the data and using Bayes' rule. This model fits a Gaussian density to each class. This current implementation only includes "svd" solver.

References
  1. Carl J Huberty's Discriminant Analysis paper
  2. The scikit-learn documentation page
Arguments
  • priors (torch.Tensor, default=None) - The class prior probabilities. By default, the class proportions are calculated from the input training data.
  • reg_param (float, default=0.0) - Regularizes the per-class covariance estimates by transforming S2 as S2 = ((1 - reg_param) * S2) + reg_param, where S2 corresponds to the scaling_ attribute of a given class.
  • store_covariance (bool, default=False) - If True, the class covariance matrices will be explicitly computed and stored in the self.covariance_ attribute.
  • tol (float, default=1e-4) - Absolute threshold for a singular value to be considered significant. This parameter does not affect the predictions. It controls a warning that is raised when features are considered to be colinear.
Example
qda = QuadraticDiscriminantAnalysis()

decision_function(self, X: Tensor)

Description

Apply decision function to an array of samples.

Arguments
  • X (Tensor) - Input data.
Example
qda = QuadraticDiscriminantAnalysis()
qda.fit(X_train, y_train)
qda_dec_func = qda.decision_function(X_test)

fit(self, X: Tensor, y: Tensor)

Description

Fit the Quadratic Discriminant Analysis model.

Arguments
  • X (Tensor) - Input variates.
  • y (Tensor) - Target covariates.
Example
qda = QuadraticDiscriminantAnalysis()
qda.fit(X_train, y_train)

predict(self, X: Tensor)

Description

Predict using Quadratic Discriminant Analysis model.

Arguments
  • X (Tensor) - Input variates.
Example
qda = QuadraticDiscriminantAnalysis()
qda.fit(X_train, y_train)
qda_pred = qda.predict(X_test)

predict_log_proba(self, X: Tensor)

Description

Calculate and return log of posterior probabilities of classification.

Arguments
  • X (Tensor) - Input data.
Example
qda = QuadraticDiscriminantAnalysis()
qda.fit(X_train, y_train)
qda_predict_log_proba = qda.predict_log_proba(X_test)

predict_proba(self, X: Tensor)

Description

Calculate and return posterior probabilities of classification.

Arguments
  • X (Tensor) - Input data.
Example
qda = QuadraticDiscriminantAnalysis()
qda.fit(X_train, y_train)
qda_predict_proba = qda.predict_proba(X_test)