AI::Perceptron - An implementation of a Perceptron


NAME

AI::Perceptron - An implementation of a Perceptron


SYNOPSIS

use AI::Perceptron;


DESCRIPTION

This module is meant to show how a single node of a neural network works to beginners in the field.

The only mode of training the weights supported at this point in time is the Stochastic Approximation of the Gradient-Descent model.


CONSTRUCTOR

new( [%args] )
Creates a new perceptron with the following properties:
    Inputs => number of inputs (scalar)
    N      => learning rate    (scalar)
    W      => array ref of weights (applied to the inputs)

The Number of elements in W must be equal to the number of inputs plus one. This is because W[0] is the Perceptron's threshold (so W[1] corresponds to the first input's weight).

Default values are: 1, 0.05, and [random], respectively.


METHODS

weights( [@W] )
Sets/gets the perceptron's weights. This is useful between training sessions to see if the weights are actually changing. Note again that W[0] is the Perceptron's threshold.

train( $n, $training_examples )
This uses the Stochastic Approximation of the Gradient-Descent model to adjust the perceptron's weights in such a way to achieve the desired outputs given in the training examples.

Note that this training method may undo previous trainings!


SEE ALSO

Statistics::LTU, the ASCII model contained in Perceptron.pm.


REFERENCES

U<Machine Learning>, by Tom M. Mitchell


AUTHOR

Steve Purkis <spurkis@epn.nu>


COPYRIGHT

Copyright (c) 1999, 2000 Steve Purkis. All rights reserved. This package is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

 AI::Perceptron - An implementation of a Perceptron