README

sklearn

Partial port of scikit-learn to go

License MIT Build Status Code Coverage Go Report Card GoDoc twitter codewars

Examples

cluster

DBSCAN KMeans

datasets

LoadIris LoadBreastCancer LoadDiabetes LoadBoston LoadExamScore LoadMicroChipTest LoadMnist LoadMnistWeights MakeRegression MakeBlobs

interpolate

CubicSpline Interp1d Interp2d

gaussian_process/kernels

ConstantKernel WhiteKernel RBF DotProduct

linear_model

LinearRegression BayesianRidge MultiTaskElasticNet MultiTaskLasso ElasticNet Lasso LassoPath LogisticRegression Ridge

metrics

AccuracyScore ConfusionMatrix PrecisionScore RecallScore F1Score FBetaScore PrecisionRecallFScoreSupport ROCCurve AUC ROCAUCScore PrecisionRecallCurve AveragePrecisionScore R2Score

model_selection

KFold CrossValidate

neighbors

KNeighborsClassifier MinkowskiDistance EuclideanDistance KDTree NearestCentroid KNeighborsRegressor NearestNeighbors NearestNeighbors.KNeighborsGraph NearestNeighbors.Tree

neural_network

MLPClassifier.Unmarshal MLPClassifier.Fit.mnist MLPClassifier.Predict.mnist MLPClassifier.Fit.breast.cancer MLPRegressor.Fit.boston

pipeline

Pipeline

preprocessing

MinMaxScaler StandardScaler RobustScaler AddDummyFeature OneHotEncoder Shuffler MaxAbsScaler Binarizer Normalizer Scale KernelCenterer QuantileTransformer PowerTransformer PowerTransformer.boxcox KBinsDiscretizer FunctionTransformer Imputer LabelBinarizer MultiLabelBinarizer LabelEncoder PCA

svm

SVC SVR

This is a personal project to get a deeper understanding of how all of this magic works

  • linted with gofmt, golint, go vet revive

  • unit tested but coverage should reach 90%

  • underdocumented but scikit-learn doc is your friend

Many thanks to gonum and scikit-learn authors and contributors

PRs are welcome

Expand ▾ Collapse ▴

Documentation

Overview

Package sklearn is a partial port of scikit-learn in go

Source Files

Directories

Path Synopsis
base Package base contains miscellaneous utilities common to other packages
cluster Package cluster gathers popular unsupervised clustering algorithms.
datasets Package datasets includes utilities to load datasets, including methods to load and fetch popular reference datasets.
datasets/data Package data is a dummy package for folder of data files used in tests
gaussian_process
gaussian_process/kernels
gaussian_process/tensor Package tensor ...
interpolate
linear_model Package linearmodel implements generalized linear models.
metrics Package metrics includes score functions, performance metrics and pairwise metrics and distance computations.
model_selection Package modelselection contains KFold, GridSearchCV, CrossValidate
naive_bayes
neighbors Package neighbors implements the k-nearest neighbors algorithm.
neural_network Package neuralnetwork reproduces multilayer perceptron based on Andreas Mueller implementation + float 32 implementation + weight decay + batch normalization
pipeline
preprocessing Package preprocessing includes scaling, centering, normalization, binarization and imputation methods.
svm Package svm includes Support Vector Machine algorithms.