Disambiguate distances. Implement Fastpair. (#220)
This commit is contained in:
+23
-16
@@ -10,34 +10,30 @@
|
||||
|
||||
//! # SmartCore
|
||||
//!
|
||||
//! Welcome to SmartCore, the most advanced machine learning library in Rust!
|
||||
//! Welcome to SmartCore, machine learning in Rust!
|
||||
//!
|
||||
//! SmartCore features various classification, regression and clustering algorithms including support vector machines, random forests, k-means and DBSCAN,
|
||||
//! as well as tools for model selection and model evaluation.
|
||||
//!
|
||||
//! SmartCore is well integrated with a with wide variaty of libraries that provide support for large, multi-dimensional arrays and matrices. At this moment,
|
||||
//! all Smartcore's algorithms work with ordinary Rust vectors, as well as matrices and vectors defined in these packages:
|
||||
//! * [ndarray](https://docs.rs/ndarray)
|
||||
//! SmartCore provides its own traits system that extends Rust standard library, to deal with linear algebra and common
|
||||
//! computational models. Its API is designed using well recognizable patterns. Extra features (like support for [ndarray](https://docs.rs/ndarray)
|
||||
//! structures) is available via optional features.
|
||||
//!
|
||||
//! ## Getting Started
|
||||
//!
|
||||
//! To start using SmartCore simply add the following to your Cargo.toml file:
|
||||
//! ```ignore
|
||||
//! [dependencies]
|
||||
//! smartcore = { git = "https://github.com/smartcorelib/smartcore", branch = "v0.5-wip" }
|
||||
//! smartcore = { git = "https://github.com/smartcorelib/smartcore", branch = "development" }
|
||||
//! ```
|
||||
//!
|
||||
//! All machine learning algorithms in SmartCore are grouped into these broad categories:
|
||||
//! * [Clustering](cluster/index.html), unsupervised clustering of unlabeled data.
|
||||
//! * [Matrix Decomposition](decomposition/index.html), various methods for matrix decomposition.
|
||||
//! * [Linear Models](linear/index.html), regression and classification methods where output is assumed to have linear relation to explanatory variables
|
||||
//! * [Ensemble Models](ensemble/index.html), variety of regression and classification ensemble models
|
||||
//! * [Tree-based Models](tree/index.html), classification and regression trees
|
||||
//! * [Nearest Neighbors](neighbors/index.html), K Nearest Neighbors for classification and regression
|
||||
//! * [Naive Bayes](naive_bayes/index.html), statistical classification technique based on Bayes Theorem
|
||||
//! * [SVM](svm/index.html), support vector machines
|
||||
//! ## Using Jupyter
|
||||
//! For quick introduction, Jupyter Notebooks are available [here](https://github.com/smartcorelib/smartcore-jupyter/tree/main/notebooks).
|
||||
//! You can set up a local environment to run Rust notebooks using [EVCXR](https://github.com/google/evcxr)
|
||||
//! following [these instructions](https://depth-first.com/articles/2020/09/21/interactive-rust-in-a-repl-and-jupyter-notebook-with-evcxr/).
|
||||
//!
|
||||
//!
|
||||
//! ## First Example
|
||||
//! For example, you can use this code to fit a [K Nearest Neighbors classifier](neighbors/knn_classifier/index.html) to a dataset that is defined as standard Rust vector:
|
||||
//!
|
||||
//! ```
|
||||
@@ -48,14 +44,14 @@
|
||||
//! // Various distance metrics
|
||||
//! use smartcore::metrics::distance::*;
|
||||
//!
|
||||
//! // Turn Rust vectors with samples into a matrix
|
||||
//! // Turn Rust vector-slices with samples into a matrix
|
||||
//! let x = DenseMatrix::from_2d_array(&[
|
||||
//! &[1., 2.],
|
||||
//! &[3., 4.],
|
||||
//! &[5., 6.],
|
||||
//! &[7., 8.],
|
||||
//! &[9., 10.]]);
|
||||
//! // Our classes are defined as a Vector
|
||||
//! // Our classes are defined as a vector
|
||||
//! let y = vec![2, 2, 2, 3, 3];
|
||||
//!
|
||||
//! // Train classifier
|
||||
@@ -64,6 +60,17 @@
|
||||
//! // Predict classes
|
||||
//! let y_hat = knn.predict(&x).unwrap();
|
||||
//! ```
|
||||
//!
|
||||
//! ## Overview
|
||||
//! All machine learning algorithms in SmartCore are grouped into these broad categories:
|
||||
//! * [Clustering](cluster/index.html), unsupervised clustering of unlabeled data.
|
||||
//! * [Matrix Decomposition](decomposition/index.html), various methods for matrix decomposition.
|
||||
//! * [Linear Models](linear/index.html), regression and classification methods where output is assumed to have linear relation to explanatory variables
|
||||
//! * [Ensemble Models](ensemble/index.html), variety of regression and classification ensemble models
|
||||
//! * [Tree-based Models](tree/index.html), classification and regression trees
|
||||
//! * [Nearest Neighbors](neighbors/index.html), K Nearest Neighbors for classification and regression
|
||||
//! * [Naive Bayes](naive_bayes/index.html), statistical classification technique based on Bayes Theorem
|
||||
//! * [SVM](svm/index.html), support vector machines
|
||||
|
||||
/// Foundamental numbers traits
|
||||
pub mod numbers;
|
||||
|
||||
Reference in New Issue
Block a user