Provided by: mlpack-bin_4.3.0-2build1_amd64 bug

NAME

       mlpack_logistic_regression - l2-regularized logistic regression and prediction

SYNOPSIS

        mlpack_logistic_regression [-b int] [-d double] [-m unknown] [-l unknown] [-L double] [-n int] [-O string] [-s double] [-T unknown] [-e double] [-t unknown] [-V bool] [-M unknown] [-P unknown] [-p unknown] [-h -v]

DESCRIPTION

       An  implementation  of  L2-regularized  logistic  regression  using  either  the  L-BFGS optimizer or SGD
       (stochastic gradient descent). This solves the regression problem

         y = (1 / 1 + e^-(X * b)).

       In this setting, y corresponds to class labels and X corresponds to data.

       This program allows loading a logistic regression model (via the ’--input_model_file (-m)' parameter)  or
       training  a  logistic  regression  model  given  training data (specified with the '--training_file (-t)'
       parameter), or both those things at once. In addition, this  program  allows  classification  on  a  test
       dataset  (specified  with  the  '--test_file (-T)' parameter) and the classification results may be saved
       with the '--predictions_file (-P)' output parameter. The trained logistic regression model may  be  saved
       using the ’--output_model_file (-M)' output parameter.

       The  training  data,  if  specified,  may  have  class  labels  as  its last dimension.  Alternately, the
       '--labels_file (-l)' parameter may be used to specify a separate matrix of labels.

       When a model is being trained, there are many options. L2 regularization (to prevent overfitting) can  be
       specified  with  the  '--lambda  (-L)' option, and the optimizer used to train the model can be specified
       with the '--optimizer (-O)' parameter. Available options are  'sgd'  (stochastic  gradient  descent)  and
       ’lbfgs'   (the   L-BFGS   optimizer).   There   are  also  various  parameters  for  the  optimizer;  the
       '--max_iterations  (-n)'  parameter  specifies  the  maximum  number  of  allowed  iterations,  and   the
       '--tolerance  (-e)'  parameter  specifies  the  tolerance  for  convergence.  For  the SGD optimizer, the
       '--step_size (-s)' parameter controls the step size taken at each iteration by the optimizer.  The  batch
       size  for  SGD  is controlled with the '--batch_size (-b)' parameter.  If the objective function for your
       data is oscillating between Inf and 0, the step size is probably too large. There are more parameters for
       the optimizers, but the C++ interface must be used to access these.

       For SGD, an iteration refers to a single point. So to take a single  pass  over  the  dataset  with  SGD,
       '--max_iterations (-n)' should be set to the number of points in the dataset.

       Optionally,  the  model  can  be  used  to  predict  the  responses for another matrix of data points, if
       '--test_file (-T)'  is  specified.  The  '--test_file  (-T)'  parameter  can  be  specified  without  the
       '--training_file  (-t)'  parameter,  so  long  as an existing logistic regression model is given with the
       ’--input_model_file (-m)' parameter. The output predictions from the logistic  regression  model  may  be
       saved with the '--predictions_file (-P)' parameter.

       This implementation of logistic regression does not support the general multi-class case but instead only
       the  two-class  case.  Any  labels  must  be  either 0 or 1. For more classes, see the softmax regression
       implementation.

       As an example, to train a logistic regression model on the data ''data.csv'' with  labels  ''labels.csv''
       with L2 regularization of 0.1, saving the model to ’'lr_model.bin'', the following command may be used:

       $   mlpack_logistic_regression   --training_file   data.csv   --labels_file   labels.csv   --lambda   0.1
       --output_model_file lr_model.bin

       Then, to use that model to predict classes for the dataset ''test.csv'', storing the  output  predictions
       in ''predictions.csv'', the following command may be used:

       $  mlpack_logistic_regression  --input_model_file  lr_model.bin  --test_file  test.csv --predictions_file
       predictions.csv

OPTIONAL INPUT OPTIONS

       --batch_size (-b) [int]
              Batch size for SGD. Default value 64.

       --decision_boundary (-d) [double]
              Decision boundary for prediction; if the logistic function for a point is less than the  boundary,
              the class is taken to be 0; otherwise, the class is 1. Default value 0.5.

       --help (-h) [bool]
              Default help info.

       --info [string]
              Print help on a specific option. Default value ''.

       --input_model_file (-m) [unknown]
              Existing model (parameters).  --labels_file (-l) [unknown] A matrix containing labels (0 or 1) for
              the points in the training set (y).

       --lambda (-L) [double]
              L2-regularization parameter for training.  Default value 0.

       --max_iterations (-n) [int]
              Maximum iterations for optimizer (0 indicates no limit). Default value 10000.

       --optimizer (-O) [string]
              Optimizer to use for training ('lbfgs' or 'sgd'). Default value 'lbfgs'.

       --step_size (-s) [double]
              Step size for SGD optimizer. Default value 0.01.

       --test_file (-T) [unknown]
              Matrix containing test dataset.

       --tolerance (-e) [double]
              Convergence tolerance for optimizer. Default value 1e-10.

       --training_file (-t) [unknown]
              A matrix containing the training set (the matrix of predictors, X).

       --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]
              Output for trained logistic regression model.

       --predictions_file (-P) [unknown]
              If test data is specified, this matrix is where the predictions for the test set will be saved.

       --probabilities_file (-p) [unknown]
              If  test  data is specified, this matrix is where the class probabilities for the test set will be
              saved.

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.

mlpack-4.3.0                                     19 January 2024                   mlpack_logistic_regression(1)