Crate tangram_linear[][src]

Expand description

Tangram Linear

This crate implements linear machine learning models for regression and classification. There are three model types, Regressor, BinaryClassifier, and MulticlassClassifier. BinaryClassifier uses the sigmoid activation function, and MulticlassClassifier trains n_classes linear models whose outputs are combined with the softmax function.

To make training faster on multicore processors, we allow simultaneous read/write access to the model parameters from multiple threads. This means each thread will be reading weights partially updated by other threads and the weights it writes may be clobbered by other threads. This makes training nondeterministic, but in practice we observe little variation in the outcome, because there is feedback control: the change in loss is monitored after each epoch, and training terminates when the loss has stabilized.

Modules

Structs

This struct describes a linear binary classifier model. You can train one by calling BinaryClassifier::train.

The parameters in this struct control how to determine whether training should stop early after each round or epoch.

This struct describes a linear multiclass classifier model. You can train one by calling MulticlassClassifier::train.

This struct describes a linear regressor model. You can train one by calling Regressor::train.

These are the options passed to Regressor::train, BinaryClassifier::train, and MulticlassClassifier::train.

Enums

This is the training progress, which tracks the current epoch.