WEKA Classification Algorithms

A WEKA Plug-in

This project provides implementation for a number of artificial neural network (ANN) and artificial immune system (AIS) based classification algorithms for the WEKA (Waikato Environment for Knowledge Analysis) machine learning workbench. The WEKA platform was selected for the implementation of the selected algorithms because I think its an excellent piece of free software. The WEKA project is required to run the algorithms provided in this project, and is included in the download. This is an open source project (released under the GPL) so the source code is available.

Download: Download the software here
The algorithm implementations are extensible and easily support modification and application to varied problem domains. Please report any bugs, feature requests or include your own algorithms by accessing the services on the project website.

Javadoc API documentation for the project is available here
Access this project's website on sourceforge to log bug reports, feature requests, and contact the developer.


The following provides a list of implemented Algorithms:

Learning Vector Quantization (LVQ)

I love the LVQ algorithm. It was the first algorithm I implemented for the WEKA platform. This section contains some notes regarding the implementation of the LVQ algorithm in WEKA, taken from the initial release of the plug-in (back in 2002-2003). LVQ Weka Formally here (defunct), and here (defunct, see internet archive backup)

What is Learning Vector Quantization?

What are some advantages of the Learning Vector Quantization algorithm?

What are some disadvantages of the Learning Vector Quantization algorithm?

Algorithm Notes

Supports 7 implementations of the LVQ algorithm
Supports 2 implementations of the Self-Organizing Map (SOM) algorithm
The Self-Organizing Map (SOM) algorithm is not a classification algorithm, though it can be used for classification tasks. An implementation of the unsupervised SOM algorithm is provided that can apply labels to the map so that it can be used for classification. The SOM implementation also supports supervised learning known as LVQ-SOM where codebook vectors in the neighbourhood of the best matching unit (BMU) that do not match the class of the data instance are pushed further away rather than closer to the data instance. No map visualisation techniques have been provided, but the vectors can be retrieved (debug mode in the GUI, or API call) and displayed using Kohonen's SOM_PAK, in MathLab or your visualisation application of choice. Supports 4 Feed-Forward Neural Network algorithms
The default MultilayerPerceptron implementation provided with Weka is good, but did not meet my needs. I have added feed-forward neural network algorithms that provide a clean implementation, a simpler interface and more readable/maintainable source code. I believe that the back propagation implementation is also faster, though requires explicit specification of neurons at each layer. Supports 1 new Filter
Algorithm Usage Notes and Heuristics
Algorithm Parameter Recommendations
Multi-Pass LVQ General

SourceForge.net Logo   Support This Project