mlpack_perceptron(26 December 2016) | mlpack_perceptron(26 December 2016) |
NAME¶
mlpack_perceptron - perceptronSYNOPSIS¶
mlpack_perceptron [-h] [-v]
DESCRIPTION¶
This program implements a perceptron, which is a single level neural network. The perceptron makes its predictions based on a linear predictor function combining a set of weights with the feature vector. The perceptron learning rule is able to converge, given enough iterations using the --max_iterations (-n) parameter, if the data supplied is linearly separable. The perceptron is parameterized by a matrix of weight vectors that denote the numerical weights of the neural network.This program allows loading a perceptron from a model (-m) or training a perceptron given training data (-t), or both those things at once. In addition, this program allows classification on a test dataset (-T) and will save the classification results to the given output file (-o). The perceptron model itself may be saved with a file specified using the -M option.
The training data given with the -t option should have class labels as its last dimension (so, if the training data is in CSV format, labels should be the last column). Alternately, the -l (--labels_file) option may be used to specify a separate file of labels.
All these options make it easy to train a perceptron, and then re-use that perceptron for later classification. The invocation below trains a perceptron on 'training_data.csv' (and 'training_labels.csv)' and saves the model to ’perceptron.xml'.
$ perceptron -t training_data.csv -l training_labels.csv -m perceptron.csv
Then, this model can be re-used for classification on 'test_data.csv'. The example below does precisely that, saving the predicted classes to ’predictions.csv'.
$ perceptron -i perceptron.xml -T test_data.csv -o predictions.csv
Note that all of the options may be specified at once: predictions may be calculated right after training a model, and model training can occur even if an existing perceptron model is passed with -m (--input_model_file). However, note that the number of classes and the dimensionality of all data must match. So you cannot pass a perceptron model trained on 2 classes and then re-train with a 4-class dataset. Similarly, attempting classification on a 3-dimensional dataset with a perceptron that has been trained on 8 dimensions will cause an error.
OPTIONAL INPUT OPTIONS¶
- --help (-h)
- Default help info.
- --info [string]
- Get help on a specific module or option. Default value ''. --input_model_file (-m) [string] File containing input perceptron model. Default value ''.
- --labels_file (-l) [string]
- A file containing labels for the training set. Default value ''.
- --max_iterations (-n) [int]
- The maximum number of iterations the perceptron is to be run Default value 1000.
- --test_file (-T) [string]
- A file containing the test set. Default value ’'. --training_file (-t) [string] A file containing the training set. Default value ''.
- --verbose (-v)
- Display informational messages and the full list of parameters and timers at the end of execution.
- --version (-V)
- Display the version of mlpack.
OPTIONAL OUTPUT OPTIONS¶
- --output_file (-o) [string]
- The file in which the predicted labels for the test set will be written. Default value ''. --output_model_file (-M) [string] File to save trained perceptron model to. Default value ''.