Expand description
Dimensionality Reduction Transformers
This module provides dimensionality reduction techniques for preprocessing pipelines:
- Principal Component Analysis (PCA)
- Linear Discriminant Analysis (LDA)
- Independent Component Analysis (ICA)
- Non-negative Matrix Factorization (NMF)
- t-SNE (t-distributed Stochastic Neighbor Embedding)
§Examples
ⓘ
use sklears_preprocessing::dimensionality_reduction::{PCA, PCAConfig};
use scirs2_core::ndarray::Array2;
fn example() -> Result<(), Box<dyn std::error::Error>> {
let config = PCAConfig::new(2); // Reduce to 2 components
let mut pca = PCA::new(config);
let data = Array2::from_shape_vec((4, 3), vec![
1.0, 2.0, 3.0,
2.0, 4.0, 6.0,
3.0, 6.0, 9.0,
4.0, 8.0, 12.0,
])?;
let pca_fitted = pca.fit(&data, &())?;
let transformed = pca_fitted.transform(&data)?;
println!("Reduced data shape: {:?}", transformed.dim());
Ok(())
}Structs§
- ICA
- Independent Component Analysis transformer
- ICAConfig
- Configuration for Independent Component Analysis
- ICAFitted
- Fitted ICA with learned parameters
- LDA
- Linear Discriminant Analysis transformer
- LDAConfig
- Configuration for Linear Discriminant Analysis
- LDAFitted
- Fitted LDA with learned parameters
- NMF
- Non-negative Matrix Factorization transformer
- NMFConfig
- Configuration for Non-negative Matrix Factorization
- NMFFitted
- Fitted NMF with learned parameters
- PCA
- Principal Component Analysis transformer
- PCAConfig
- Configuration for Principal Component Analysis
- PCAFitted
- Fitted PCA with learned parameters
Enums§
- IcaAlgorithm
- ICA algorithms
- IcaFunction
- Non-linearity functions for ICA
- LdaSolver
- Solver algorithms for LDA
- NmfInit
- Initialization methods for NMF
- NmfSolver
- Solver algorithms for NMF
- PcaSolver
- Solver algorithms for PCA