sklears_svm/
lib.rs

1#![allow(dead_code)]
2#![allow(non_snake_case)]
3#![allow(missing_docs)]
4#![recursion_limit = "1048576"]
5#![allow(deprecated)]
6#![allow(ambiguous_glob_reexports)]
7#![allow(clippy::needless_range_loop)]
8#![allow(clippy::needless_borrow)]
9//! Support Vector Machines for classification and regression
10//!
11//! This module provides Support Vector Machine implementations including:
12//! - SVC: Support Vector Classification
13//! - SVR: Support Vector Regression
14//! - LinearSVC: Linear Support Vector Classification (coordinate descent)
15//! - LinearSVR: Linear Support Vector Regression (coordinate descent)
16//! - SGDClassifier: Stochastic Gradient Descent SVM for large-scale learning
17//! - NuSVC: Nu Support Vector Classification with automatic parameter selection
18//! - NuSVR: Nu Support Vector Regression
19//! - LSSVM: Least Squares Support Vector Machine for efficient training
20//! - RobustSVM: Robust SVM with Huber and other robust loss functions
21//! - OutlierResistantSVM: Outlier-resistant SVM with automatic outlier detection and handling
22//! - FuzzySVM: Fuzzy SVM for handling noisy and uncertain data
23//! - RankingSVM: Ranking SVM for learning-to-rank and structured output problems
24//! - OrdinalRegressionSVM: Ordinal regression SVM for ordered categorical targets
25//! - BinaryRelevanceSVM: Multi-label SVM using binary relevance strategy
26//! - ClassifierChainsSVM: Multi-label SVM using classifier chains
27//! - LabelPowersetSVM: Multi-label SVM using label powerset transformation
28//! - StructuredSVM: Structured SVM for sequence labeling and structured prediction
29//! - MetricLearningSVM: Metric learning SVM for learning optimal distance metrics
30//! - TransductiveSVM: Transductive SVM for semi-supervised learning with unlabeled data
31//! - SelfTrainingSVM: Self-training SVM for iterative semi-supervised learning
32//! - CoTrainingSVM: Co-training SVM using multiple views for semi-supervised learning
33//! - KernelPCA: Kernel Principal Component Analysis for dimensionality reduction
34//! - OnlineSVM: Online learning for streaming data
35//! - OutOfCoreSVM: Out-of-core training for datasets larger than memory
36//! - DistributedSVM: Distributed training across multiple processes/machines
37//! - AdaptiveSVM: Adaptive regularization with automatic parameter selection
38//! - ADMMSVM: Alternating Direction Method of Multipliers for distributed optimization
39//! - NewtonSVM: Newton methods for fast second-order optimization
40//! - GridSearchCV: Grid search for hyperparameter optimization
41//! - RandomSearchCV: Random search for hyperparameter optimization
42//! - BayesianOptimizationCV: Bayesian optimization for efficient hyperparameter tuning
43//! - Various kernel functions (Linear, RBF, Polynomial, Graph kernels, etc.)
44//! - SMO algorithm for training
45
46// Re-export common types for all modules to use
47pub use sklears_core::prelude::*;
48
49pub mod adaptive_regularization;
50pub mod calibration;
51pub mod chunked_processing;
52pub mod compressed_kernels;
53pub mod computer_vision_kernels;
54pub mod crammer_singer;
55pub mod decomposition;
56pub mod distributed_svm;
57pub mod dual_coordinate_ascent;
58pub mod errors;
59pub mod fuzzy_svm;
60pub mod gpu_kernels;
61pub mod graph_semi_supervised;
62pub mod group_lasso_svm;
63pub mod hyperparameter_optimization;
64pub mod kernel_pca;
65pub mod kernels;
66pub mod linear_svc;
67pub mod linear_svr;
68pub mod ls_svm;
69pub mod memory_mapped_kernels;
70pub mod metric_learning_svm;
71pub mod multi_label_svm;
72pub mod multiclass;
73pub mod nusvc;
74pub mod nusvr;
75pub mod online_svm;
76pub mod ordinal_regression_svm;
77pub mod out_of_core_svm;
78pub mod outlier_resistant_svm;
79pub mod parallel_smo;
80pub mod primal_dual_methods;
81// TODO: Migrate to scirs2-linalg (uses nalgebra types)
82//pub mod property_tests;
83pub mod ranking_svm;
84pub mod regularization_path;
85pub mod robust_svm;
86// TODO: Migrate to scirs2-linalg (uses nalgebra types)
87//pub mod semi_supervised;
88pub mod sgd_svm;
89pub mod simd_kernels;
90pub mod smo;
91pub mod sparse_svm;
92pub mod structured_svm;
93pub mod svc;
94pub mod svr;
95pub mod text_classification;
96pub mod thread_safe_cache;
97pub mod time_series;
98pub mod topic_model_integration;
99pub mod visualization;
100
101#[allow(non_snake_case)]
102#[cfg(test)]
103mod elastic_net_tests;
104
105pub use adaptive_regularization::*;
106// TODO: Migrate to scirs2-linalg (uses nalgebra types)
107// pub use advanced_optimization::*;
108pub use calibration::*;
109pub use chunked_processing::*;
110pub use compressed_kernels::*;
111pub use computer_vision_kernels::*;
112pub use crammer_singer::*;
113pub use decomposition::*;
114pub use distributed_svm::*;
115pub use dual_coordinate_ascent::*;
116pub use errors::{ErrorSeverity, SVMError, SVMResult};
117pub use fuzzy_svm::*;
118pub use gpu_kernels::*;
119pub use graph_semi_supervised::*;
120pub use group_lasso_svm::*;
121pub use hyperparameter_optimization::{
122    BayesianOptimizationCV, EvolutionaryOptimizationCV, GridSearchCV, OptimizationConfig,
123    OptimizationResult, ParameterSet, ParameterSpec, RandomSearchCV, ScoringMetric, SearchSpace,
124};
125pub use kernel_pca::*;
126pub use kernels::*;
127pub use linear_svc::*;
128pub use linear_svr::*;
129pub use ls_svm::*;
130pub use memory_mapped_kernels::*;
131pub use metric_learning_svm::*;
132pub use multi_label_svm::*;
133pub use multiclass::*;
134pub use nusvc::*;
135pub use nusvr::*;
136pub use online_svm::*;
137pub use ordinal_regression_svm::*;
138pub use out_of_core_svm::*;
139pub use outlier_resistant_svm::*;
140pub use parallel_smo::*;
141pub use primal_dual_methods::*;
142// TODO: Migrate to scirs2-linalg (uses nalgebra types)
143// pub use property_tests::*;
144pub use ranking_svm::*;
145pub use regularization_path::*;
146pub use robust_svm::*;
147// TODO: Migrate to scirs2-linalg (uses nalgebra types)
148// pub use semi_supervised::*;
149pub use sgd_svm::*;
150pub use simd_kernels::*;
151pub use smo::*;
152pub use sparse_svm::*;
153pub use structured_svm::*;
154pub use svc::*;
155pub use svr::*;
156pub use text_classification::*;
157pub use thread_safe_cache::*;
158pub use time_series::*;
159pub use topic_model_integration::*;
160pub use visualization::*;