53 lines
1.4 KiB
Rust
53 lines
1.4 KiB
Rust
//! # RustyTorch++ Classical ML Library
|
|
//!
|
|
//! GPU-accelerated classical machine learning algorithms with sklearn-compatible APIs.
|
|
//!
|
|
//! ## Features
|
|
//! - GPU-accelerated implementations using CUDA kernels
|
|
//! - sklearn-compatible APIs for easy migration
|
|
//! - Zero-copy tensor operations via rtx-tensor
|
|
//! - Parallel training with rayon
|
|
//!
|
|
//! ## Modules
|
|
//! - `trees`: Decision trees, random forests, gradient boosting
|
|
//! - `linear`: Linear models with various regularization
|
|
//! - `clustering`: K-means, DBSCAN clustering algorithms
|
|
//! - `bayesian`: Naive Bayes, Gaussian Process models
|
|
//! - `neighbors`: K-nearest neighbors implementations
|
|
//!
|
|
//! ## Example
|
|
//! ```rust
|
|
//! # use rtx_ml_classic::trees::DecisionTree;
|
|
//! # use rtx_tensor::{Tensor, Device};
|
|
//! let device = Device::cuda(0).unwrap();
|
|
//! let x = Tensor::randn([100, 4], &device);
|
|
//! let y = Tensor::randint(0, 2, [100], &device);
|
|
//!
|
|
//! let mut tree = DecisionTree::new()
|
|
//! .max_depth(5)
|
|
//! .criterion("gini");
|
|
//! tree.fit(&x, &y).unwrap();
|
|
//! let predictions = tree.predict(&x).unwrap();
|
|
//! ```
|
|
|
|
pub mod bayesian;
|
|
pub mod clustering;
|
|
pub mod error;
|
|
pub mod linear;
|
|
pub mod neighbors;
|
|
pub mod trees;
|
|
|
|
// Re-export main error types
|
|
pub use error::{MLError, Result};
|
|
|
|
#[cfg(test)]
|
|
mod tests {
|
|
use super::*;
|
|
|
|
/// Smoke test: ensure basic module structure works
|
|
#[test]
|
|
fn test_crate_compiles() {
|
|
assert!(true);
|
|
}
|
|
}
|