mlpack_softmax_regression

NAME

mlpack_softmax_regression - softmax regression

SYNOPSIS

mlpack_softmax_regression [-m unknown] [-l string] [-r double] [-n int] [-N bool] [-c int] [-T string] [-L string] [-t string] [-V bool] [-M unknown] [-p string] [-h -v]

DESCRIPTION

This program performs softmax regression, a generalization of logistic regression to the multiclass case, and has support for L2 regularization. The program is able to train a model, load an existing model, and give predictions (and optionally their accuracy) for test data.

Training a softmax regression model is done by giving a file of training points with the ’--training_file (-t)’ parameter and their corresponding labels with the ’--labels_file (-l)’ parameter. The number of classes can be manually specified with the ’--number_of_classes (-c)’ parameter, and the maximum number of iterations of the L-BFGS optimizer can be specified with the ’--max_iterations (-n)’ parameter. The L2 regularization constant can be specified with the ’--lambda (-r)’ parameter and if an intercept term is not desired in the model, the ’--no_intercept (-N)’ parameter can be specified.

The trained model can be saved with the ’--output_model_file (-M)’ output parameter. If training is not desired, but only testing is, a model can be loaded with the ’--input_model_file (-m)’ parameter. At the current time, a loaded model cannot be trained further, so specifying both ’--input_model_file (-m)’ and ’--training_file (-t)’ is not allowed.

The program is also able to evaluate a model on test data. A test dataset can be specified with the ’--test_file (-T)’ parameter. Class predictions can be saved with the ’--predictions_file (-p)’ output parameter. If labels are specified for the test data with the ’--test_labels_file (-L)’ parameter, then the program will print the accuracy of the predictions on the given test set and its corresponding labels.

For example, to train a softmax regression model on the data ’dataset.csv’ with labels ’labels.csv’ with a maximum of 1000 iterations for training, saving the trained model to ’sr_model.bin’, the following command can be used:

$ softmax_regression --training_file dataset.csv --labels_file labels.csv --output_model_file sr_model.bin

Then, to use ’sr_model.bin’ to classify the test points in ’test_points.csv’, saving the output predictions to ’predictions.csv’, the following command can be used:

$ softmax_regression --input_model_file sr_model.bin --test_file test_points.csv --predictions_file predictions.csv

OPTIONAL INPUT OPTIONS

--help (-h) [bool]

Default help info.

--info [string]

Get help on a specific module or option. Default value ’’.

--input_model_file (-m) [unknown]

File containing existing model (parameters). Default value ’’.

--labels_file (-l) [string]

A matrix containing labels (0 or 1) for the points in the training set (y). The labels must order as a row. Default value ’’.

--lambda (-r) [double]

L2-regularization constant Default value 0.0001.

--max_iterations (-n) [int]

Maximum number of iterations before termination. Default value 400.

--no_intercept (-N) [bool]

Do not add the intercept term to the model.

--number_of_classes (-c) [int]

Number of classes for classification; if unspecified (or 0), the number of classes found in the labels will be used. Default value 0.

--test_file (-T) [string]

Matrix containing test dataset. Default value ’’.

--test_labels_file (-L) [string]

Matrix containing test labels. Default value ’’.

--training_file (-t) [string]

A matrix containing the training set (the matrix of predictors, X). Default value ’’.

--verbose (-v) [bool]

Display informational messages and the full list of parameters and timers at the end of execution.

--version (-V) [bool]

Display the version of mlpack.

OPTIONAL OUTPUT OPTIONS

--output_model_file (-M) [unknown]

File to save trained softmax regression model to. Default value ’’.

--predictions_file (-p) [string]

Matrix to save predictions for test dataset into. Default value ’’.

ADDITIONAL INFORMATION

For further information, including relevant papers, citations, and theory, consult the documentation found at http://www.mlpack.org or included with your distribution of mlpack.