SGD (3.7)

Implements stochastic gradient descent for learning various linear models (binary class SVM, binary class logistic regression, squared loss, Huber loss and epsilon-insensitive loss linear regression)

Globally replaces all missing values and transforms nominal attributes into binary ones.It also normalizes all attributes, so the coefficients in the output are based on the normalized data.

For numeric class attributes, the squared, Huber or epsilon-insensitve loss function must be used.Epsilon-insensitive and Huber loss may require a much higher learning rate.

(based on WEKA 3.7)

For further options, click the 'More' - button in the dialog.

All weka dialogs have a panel where you can specify classifier-specific parameters.

Options

SGD Options

F: Set the loss function to minimize. 0 = hinge loss (SVM), 1 = log loss (logistic regression), 2 = squared loss (regression), 3 = epsilon insensitive loss (regression), 4 = Huber loss (regression). (default = 0)

L: The learning rate. If normalization is turned off (as it is automatically for streaming data), then the default learning rate will need to be reduced (try 0.0001). (default = 0.01).

R: The lambda regularization constant (default = 0.0001)

E: The number of epochs to perform (batch learning only, default = 500)

C: The epsilon threshold (epsilon-insenstive and Huber loss only, default = 1e-3)

N: Don't normalize the data

M: Don't replace missing values

Select target column
Choose the column that contains the target variable.
Preliminary Attribute Check

The Preliminary Attribute Check tests the underlying classifier against the DataTable specification at the inport of the node. Columns that are compatible with the classifier are marked with a green 'ok'. Columns which are potentially not compatible are assigned a red error message.

Important: If a column is marked as 'incompatible', it does not necessarily mean that the classifier cannot be executed! Sometimes, the error message 'Cannot handle String class' simply means that no nominal values are available (yet). This may change during execution of the predecessor nodes.

Capabilities: [Nominal attributes, Binary attributes, Unary attributes, Empty nominal attributes, Numeric attributes, Missing values, Binary class, Missing class values] Dependencies: [] min # Instance: 0

Command line options

It shows the command line options according to the current classifier configuration and mainly serves to support the node's configuration via flow variables.

Additional Options

Select optional vector column
If the input table contains vector columns (e.g. double vector), the one to use can be selected here. This vector column will be used as attributes only and all other columns, except the target column, will be ignored.
Keep training instances
If checked, all training instances will be kept and stored with the classifier model. It is useful to calculate additional evaluation measures (see Weka Predictor) that make use of class prior probabilities. If no evaluation is performed or those measures are not required, it is advisable to NOT keep the training instances.

Input Ports

Icon
Training data

Output Ports

Icon
Trained model

Popular Predecessors

  • No recommendations found

Popular Successors

  • No recommendations found

Views

Weka Node View
Each Weka node provides a summary view that provides information about the classification. If the test data contains a class column, an evaluation is generated.

Workflows

  • No workflows found

Links

Developers

You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.