Crate sklears_linear

Crate sklears_linear 

Source
Expand description

Linear models for sklears

This crate provides implementations of linear models including:

  • Linear Regression (OLS, Ridge, Lasso)
  • Logistic Regression
  • Generalized Linear Models

These implementations leverage scirs2’s linear algebra and optimization capabilities.

Re-exports§

pub use builder_enhancements::EnhancedLinearRegressionBuilder;
pub use builder_enhancements::ModelPreset;
pub use builder_enhancements::ModelValidation;
pub use builder_enhancements::ValidationConfig;
pub use coordinate_descent::CoordinateDescentSolver;
pub use coordinate_descent::ValidationInfo;
pub use early_stopping::train_validation_split;
pub use early_stopping::EarlyStopping;
pub use early_stopping::EarlyStoppingCallback;
pub use early_stopping::EarlyStoppingConfig;
pub use early_stopping::StoppingCriterion;
pub use errors::ConfigurationError;
pub use errors::ConfigurationErrorKind;
pub use errors::ConvergenceInfo;
pub use errors::CrossValidationError;
pub use errors::CrossValidationErrorKind;
pub use errors::DataError;
pub use errors::DataErrorKind;
pub use errors::ErrorBuilder;
pub use errors::ErrorSeverity;
pub use errors::FeatureError;
pub use errors::FeatureErrorKind;
pub use errors::FoldInfo;
pub use errors::LinearModelError;
pub use errors::MatrixError;
pub use errors::MatrixErrorKind;
pub use errors::MatrixInfo;
pub use errors::NumericalError;
pub use errors::NumericalErrorKind;
pub use errors::OptimizationError;
pub use errors::OptimizationErrorKind;
pub use errors::ResourceError;
pub use errors::ResourceErrorKind;
pub use errors::ResourceInfo;
pub use errors::StateError;
pub use errors::StateErrorKind;
pub use lars::Lars;
pub use lars::LarsConfig;
pub use lasso_cv::LassoCV;
pub use lasso_cv::LassoCVConfig;
pub use lasso_lars::LassoLars;
pub use lasso_lars::LassoLarsConfig;
pub use linear_regression::LinearRegression;
pub use linear_regression::LinearRegressionConfig;
pub use omp::OrthogonalMatchingPursuit;
pub use omp::OrthogonalMatchingPursuitConfig;
pub use optimizer::FistaOptimizer;
pub use optimizer::LbfgsOptimizer;
pub use optimizer::NesterovAcceleratedGradient;
pub use optimizer::ProximalGradientOptimizer;
pub use optimizer::SagOptimizer;
pub use optimizer::SagaOptimizer;
pub use ridge_classifier::RidgeClassifier;
pub use ridge_classifier::RidgeClassifierConfig;
pub use ridge_cv::RidgeCV;
pub use ridge_cv::RidgeCVConfig;
pub use modular_framework::create_modular_linear_regression;
pub use modular_framework::BayesianPredictionProvider;
pub use modular_framework::CompositeObjective;
pub use modular_framework::LinearPredictionProvider;
pub use modular_framework::ModularConfig;
pub use modular_framework::ModularFramework;
pub use modular_framework::ModularLinearModel;
pub use modular_framework::Objective;
pub use modular_framework::ObjectiveData;
pub use modular_framework::ObjectiveMetadata;
pub use modular_framework::OptimizationResult;
pub use modular_framework::OptimizationSolver;
pub use modular_framework::PredictionProvider;
pub use modular_framework::PredictionWithConfidence;
pub use modular_framework::PredictionWithUncertainty;
pub use modular_framework::ProbabilisticPredictionProvider;
pub use modular_framework::SolverInfo;
pub use modular_framework::SolverRecommendations;
pub use solver::Solver;
pub use loss_functions::AbsoluteLoss;
pub use loss_functions::EpsilonInsensitiveLoss;
pub use loss_functions::HingeLoss;
pub use loss_functions::HuberLoss;
pub use loss_functions::LogisticLoss;
pub use loss_functions::LossFactory;
pub use loss_functions::QuantileLoss;
pub use loss_functions::SquaredHingeLoss;
pub use loss_functions::SquaredLoss;
pub use regularization_schemes::CompositeRegularization;
pub use regularization_schemes::ElasticNetRegularization;
pub use regularization_schemes::GroupLassoRegularization;
pub use regularization_schemes::L1Regularization;
pub use regularization_schemes::L2Regularization;
pub use regularization_schemes::RegularizationFactory;
pub use modular_framework::Regularization;
pub use solver_implementations::BacktrackingConfig;
pub use solver_implementations::CoordinateDescentConfig;
pub use solver_implementations::CoordinateDescentResult;
pub use solver_implementations::GradientDescentConfig;
pub use solver_implementations::GradientDescentResult;
pub use solver_implementations::GradientDescentSolver;
pub use solver_implementations::LineSearchConfig;
pub use solver_implementations::ProximalGradientConfig;
pub use solver_implementations::ProximalGradientResult;
pub use solver_implementations::ProximalGradientSolver;
pub use solver_implementations::SolverFactory;
pub use type_safety::problem_type;
pub use type_safety::solver_capability;
pub use type_safety::ComputationalComplexity;
pub use type_safety::ConfigurationHints;
pub use type_safety::ConfigurationValidator;
pub use type_safety::FeatureValidator;
pub use type_safety::FixedSizeOps;
pub use type_safety::L1Scheme;
pub use type_safety::L2Scheme;
pub use type_safety::LargeLinearRegression;
pub use type_safety::MediumLinearRegression;
pub use type_safety::MemoryRequirements;
pub use type_safety::RegularizationConstraint;
pub use type_safety::RegularizationScheme;
pub use type_safety::SmallLinearRegression;
pub use type_safety::SolverConstraint;
pub use type_safety::Trained;
pub use type_safety::TypeSafeConfig;
pub use type_safety::TypeSafeFit;
pub use type_safety::TypeSafeLinearModel;
pub use type_safety::TypeSafeModelBuilder;
pub use type_safety::TypeSafePredict;
pub use type_safety::TypeSafeSolverSelector;
pub use type_safety::Untrained;
pub use large_scale_variational_inference::ARDConfiguration;
pub use large_scale_variational_inference::LargeScaleVariationalConfig;
pub use large_scale_variational_inference::LargeScaleVariationalRegression;
pub use large_scale_variational_inference::LearningRateDecay;
pub use large_scale_variational_inference::PriorConfiguration;
pub use large_scale_variational_inference::VariationalPosterior;
pub use uncertainty_quantification::CalibrationMetrics;
pub use uncertainty_quantification::UncertaintyCapable;
pub use uncertainty_quantification::UncertaintyConfig;
pub use uncertainty_quantification::UncertaintyMethod;
pub use uncertainty_quantification::UncertaintyQuantifier;
pub use uncertainty_quantification::UncertaintyResult;
pub use crate::utils::accurate_condition_number;
pub use crate::utils::adaptive_least_squares;
pub use crate::utils::condition_number;
pub use crate::utils::diagnose_numerical_stability;
pub use crate::utils::enhanced_ridge_regression;
pub use crate::utils::orthogonal_mp;
pub use crate::utils::orthogonal_mp_gram;
pub use crate::utils::qr_ridge_regression;
pub use crate::utils::rank_revealing_qr;
pub use crate::utils::ridge_regression;
pub use crate::utils::solve_with_iterative_refinement;
pub use crate::utils::stable_normal_equations;
pub use crate::utils::stable_ridge_regression;
pub use crate::utils::svd_ridge_regression;
pub use crate::utils::NumericalDiagnostics;

Modules§

builder_enhancements
Enhanced builder patterns for linear models
coordinate_descent
Coordinate Descent solver for Lasso and ElasticNet regression
early_stopping
Early stopping utilities for linear models
errors
Domain-specific error types for linear models
irls
Iteratively Reweighted Least Squares (IRLS) for robust regression
large_scale_variational_inference
Large-Scale Variational Inference for Linear Models
lars
Least Angle Regression (LARS) implementation
lasso_cv
Lasso regression with built-in cross-validation
lasso_lars
Lasso LARS (Least Angle Regression with Lasso modification) implementation
linear_regression
Linear Regression implementation
loss_functions
Pluggable Loss Functions for Linear Models
modular_framework
Modular Framework for Linear Models
omp
Orthogonal Matching Pursuit (OMP) implementation
optimizer
Optimization algorithms for linear models
regularization_schemes
Composable Regularization Schemes for Linear Models
ridge_classifier
Ridge Classifier
ridge_cv
Ridge regression with built-in cross-validation
solver
Solver types for linear models
solver_implementations
Trait-based Solver Implementations
type_safety
Type Safety Enhancements for Linear Models
uncertainty_quantification
Uncertainty Quantification for Linear Models
utils
Utility functions for linear models

Enums§

Penalty
Penalty types for regularized models

Functions§

sparse_feature_disabled_error
sparse_linear_regression_disabled_error
sparse_regularized_disabled_error