Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Algorithms

The catalog mirrors the complete scikit-learn taxonomy. Every item enters the roadmap with a mandatory four-stage evolution — naive → tests → performance → out-of-core — and receives a Python binding as soon as it is validated on CPU.

39+ algorithms
  • Preprocessing5
  • Imputation2
  • Linear models7
  • Nearest neighbors4
  • SVM3
  • Trees2
  • Ensembles3
  • Clustering3
  • Decomposition2
  • Outliers1+
  • Model selection3
  • Metrics4+

Preprocessing · sciencekit_preprocessing

EstimatorDescriptionStatus
SKStandardScalerStandardizes by removing the mean and scaling to unit variancePlanned
SKMinMaxScalerScales each feature to a fixed rangePlanned
SKRobustScalerScaling robust to outliers through quartile statisticsPlanned
SKOneHotEncoderOne-hot encoding of categoriesPlanned
SKPolynomialFeaturesPolynomial and interaction featuresPlanned

Imputation · sciencekit_impute

EstimatorDescriptionStatus
Simple strategiesMean, median, most frequent and constantPlanned
SKKNNImputerMultivariate imputation via nearest neighborsPlanned

Linear models · sciencekit_linear_model

EstimatorDescriptionStatus
SKLinearRegressionOrdinary least squaresPlanned
SKRidgeRegression with L2 regularizationPlanned
SKLassoRegression with L1 regularization (sparse support)Planned
SKElasticNetCombined L1 + L2 regularizationPlanned
SKLogisticRegressionRegularized logistic classificationPlanned
SKSGDClassifierIncremental classification via SGD · streaming (SKLazySource)Planned
SKSGDRegressorIncremental regression via SGD · streaming (SKLazySource)Planned

Nearest neighbors · sciencekit_neighbors

Structure/EstimatorDescriptionStatus
SKKNeighborsClassifierClassification by k nearest neighborsPlanned
SKKNeighborsRegressorRegression by k nearest neighborsPlanned
SKKDTreekd-tree for fast spatial searchPlanned
SKBallTreeBall tree for arbitrary metricsPlanned

Support vector machines · sciencekit_svm

EstimatorDescriptionStatus
SKSVCKernel-based support vector classificationPlanned
SKSVRSupport vector regressionPlanned
SKLinearSVCScalable linear SVM (dense and sparse)Planned

Trees and ensembles · sciencekit_tree + sciencekit_ensemble

EstimatorDescriptionStatus
SKDecisionTreeClassifierDecision tree for classificationPlanned
SKDecisionTreeRegressorDecision tree for regressionPlanned
SKRandomForestRandom forest aggregated in parallel with rayonPlanned
SKBaggingParallel bootstrap aggregationPlanned
SKGradientBoostingSequential gradient boostingPlanned

Unsupervised · sciencekit_cluster, sciencekit_decomposition, sciencekit_outlier

EstimatorDescriptionStatus
SKKMeansK-means with O(1) random access via memmapPlanned
SKMiniBatchKMeansMini-batch k-means with streaming (SKLazySource)Planned
SKDBSCANDensity-based clusteringPlanned
SKPCAPrincipal component analysisPlanned
SKTruncatedSVDTruncated SVD for sparse dataPlanned
Anomaly detectionOutlier estimators from the scikit-learn familyPlanned

Model selection, pipelines and metrics

ItemCrateDescriptionStatus
sk_train_test_splitsciencekit_model_selectionDeterministic data partitioningPlanned
SKKFoldsciencekit_model_selectionk-fold cross-validationPlanned
SKGridSearchCVsciencekit_model_selectionGrid search with cross-validationPlanned
SKPipelinesciencekit_pipelineType-safe pipeline (associated types) and DAGsPlanned
Full metricssciencekit_metricsaccuracy, f1, MSE, confusion matrix and the remaining sklearn metricsPlanned
Continuous acceleration: every completed algorithm receives, in separate changes, a Python binding (sciencekit_python) and GPU backends (OpenCL → CUDA → ROCm) behind SKComputeBackend. The CPU is the default backend, always present.