Statistics::LTU is an implementation of Linear Threshold Units.
SYNOPSIS
use Statistics::LTU;
my $acr_ltu = new Statistics::LTU::ACR(3, 1); # 3 attributes, scaled
$ltu->train([1,3,2], $LTU_PLUS);
$ltu->train([-1,3,0], $LTU_MINUS);
...
print "LTU looks like this:n";
$ltu->print;
print "[1,5,2] is in class ";
if ($ltu->test([1,5,2]) > $LTU_THRESHOLD) { print "PLUS" }
else { print "MINUS" };
$ltu->save("ACR.saved") or die "Save failed!";
$ltu2 = restore Statistics::LTU("ACR.saved");
EXPORTS
For readability, LTU.pm exports three scalar constants: $LTU_PLUS (+1), $LTU_MINUS (-1) and $LTU_THRESHOLD (0).
Statistics::LTU defines methods for creating, destroying, training and testing Linear Threshold Units. A linear threshold unit is a 1-layer neural network, also called a perceptron. LTU's are used to learn classifications from examples.
An LTU learns to distinguish between two classes based on the data given to it. After training on a number of examples, the LTU can then be used to classify new (unseen) examples. Technically, LTU's learn to distinguish two classes by fitting a hyperplane between examples; if the examples have n features, the hyperplane will have n dimensions. In general, the LTU's weights will converge to a define the separating hyperplane.
The LTU.pm file defines an uninstantiable base class, LTU, and four other instantiable classes built on top of LTU. The four individual classes differs in the training rules used:
ACR - Absolute Correction Rule
TACR - Thermal Absolute Correction Rule (thermal annealing)
LMS - Least Mean Squares rule
RLS - Recursive Least Squares rule
Each of these training rules behaves somewhat differently. Exact details of how these work are beyond the scope of this document; see the additional documentation file (ltu.doc) for discussion.
Requirements:
· Perl
Product's homepage
Requirements:
· Perl