RBFClassifier (3.7)

Class implementing radial basis function networks for classification, trained in a fully supervised manner using WEKA's Optimization class by minimizing squared error with the BFGS method

Note that all attributes are normalized into the [0,1] scale.The initial centers for the Gaussian radial basis functions are found using WEKA's SimpleKMeans.

The initial sigma values are set to the maximum distance between any center and its nearest neighbour in the set of centers.There are several parameters.

The ridge parameter is used to penalize the size of the weights in the output layer.The number of basis functions can also be specified.

Note that large numbers produce long training times.Another option determines whether one global sigma value is used for all units (fastest), whether one value is used per unit (common practice, it seems, and set as the default), or a different value is learned for every unit/attribute combination.

It is also possible to learn attribute weights for the distance function.(The square of the value shown in the output is used.) Finally, it is possible to use conjugate gradient descent rather than BFGS updates, which can be faster for cases with many parameters, and to use normalized basis functions instead of unnormalized ones.

To improve speed, an approximate version of the logistic function is used as the activation function in the output layer.Also, if delta values in the backpropagation step are within the user-specified tolerance, the gradient is not updated for that particular instance, which saves some additional time.

Paralled calculation of squared error and gradient is possible when multiple CPU cores are present.Data is split into batches and processed in separate threads in this case.

Note that this only improves runtime for larger datasets.Nominal attributes are processed using the unsupervised NominalToBinary filter and missing values are replaced globally using ReplaceMissingValues.

(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

RBFClassifier Options

N: Number of Gaussian basis functions (default is 2).

R: Ridge factor for quadratic penalty on output weights (default is 0.01).

L: Tolerance parameter for delta values (default is 1.0e-6).

C: The scale optimization option: global scale (1), one scale per unit (2), scale per unit and attribute (3) (default is 2).

G: Use conjugate gradient descent (recommended for many attributes).

O: Use normalized basis functions.

A: Use attribute weights.

P: The size of the thread pool, for example, the number of cores in the CPU. (default 1)

E: The number of threads to use, which should be >= size of thread pool. (default 1)

S: Random number seed. (default 1)

D: If set, classifier is run in debug mode and may output additional info to the console

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, Date attributes, Missing values, Nominal class, Binary class, Missing class values] Dependencies: [] min # Instance: 1

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.