RBF_LNK(1)

NAME
rbf_lnk - Radial Basis Function Classifier

SYNOPSIS
A program for training and testing a radial basis function classifier using Gaussian hidden nodes initialized using a clustering program (usually kmeans or em_clus). A weighted sum of Gaussian hidden node outputs is calculated for each class. The weights are trained to minimize the squared error between desired outputs of zero and one and actual outputs.

rbf_lnk [ -minvar x ] [ -max_ratio x ] [ -hspread x ]
[ -exhspread x ] [ -bias ] [ -fclparam file ]
[ -no_norm_outputs ] [ -classifier_options ]

EXAMPLE
kmeans -train -ncenters 16 -fparam kmeans.param \
-pathdata $LNKHOME/data/class -fdescribe vowel.defaults \
-finput vowel.train -npatterns 338

rbf_lnk -fclparam kmeans.param -train -create \
-pathdata $LNKHOME/data/class -finput vowel.train \
-fdescribe vowel.defaults -npatterns 338 -fparam rbf.param

rbf_lnk -fparam rbf.param -pathdata $LNKHOME/data/class \
-finput vowel.eval -fdescribe vowel.defaults

DESCRIPTION
Hidden node mean locations and variances are determined using clustering. Output layer weights are then trained using a single pass through the data. Correlations between the outputs of all Gaussian hidden node outputs and between hidden node outputs and output nodes for each training pattern are summed and used to form a matrix which is inverted to find the weights from each center to each output node. These weights minimize squared error between desired and actual outputs of the training data. During testing, outputs are found by forming weighted sums of hidden node outputs.

Hidden node outputs can optionally be normalized to sum to one during training and testing. In addition, the variances of hidden nodes can be multiplied by fixed factors during training and testing. Matrix inversion is performed using singular value decomposition. Although this is a robust method for performing matrix inversion, numerical problems can prevent inversion of ill-conditioned matrices created when there are many hidden nodes and hidden node outputs are highly correlated. These types of problems are generally reduced when hidden node outputs are normalized to sum to one.

OPTIONS
-- Prints a list of all flags and arguments.

-minvar x
    x is the minimum value of the variances.

-max_ratio x
    x is the maximum allowable ratio of the largest eigenvalue to each of the others when inverting the weight matrix using singular value decomposition.

-hspread x
    The variances of the clusters are multiplied by x in training.

-exhspread x
    The variances of the clusters are multiplied by x in testing.

-bias
    Add a bias hidden node which has a constant output.

-fclparam filename
    The file in pathexp with the initial centers.

-no_norm_outputs
    Do not normalize hidden node outputs to sum to one.

-classifier_options
    rbf_lnk accepts the general classifier arguments described on the classifier(1) manual page. Certain arguments are not used by the program, and so are not available.

    Unavailable arguments from general list:

    -ninputs, -features, -normalize, -fnorm
        The settings for these flags are read from the cluster file used to initialize the centers.

    -log_outputs
        Not yet available.

    -random
        This flag only has an effect when adjust_train_priors is set.

REFERENCE
Kenney Ng, A Comparative Study of the Practical Characteristics of Neural Network and Conventional Pattern Classifiers, Bachelor's and Master's Thesis, Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, Cambridge, MA, May 1990. Pages 16-23.

SEE ALSO
classifier(1) rbf2c(1), rbf_feat_sel(1), plot_rbf(1), rbf_plot_bound(1), kmeans_lnk(1), em_clus_lnk(1), ran_clus_lnk(1), lead_clus_lnk(1)

HISTORY
First written 20 May 1992 by Linda Kukolich

BUGS
Send bug reports to Linda Kukolich (kukolich@sst.ll.mit.edu)