Waikato Environment for Knowledge Analysis (Weka) is a collection of machine learning and data analysis
free software licensed under the
GNU General Public License. It was developed at the
University of Waikato,
New Zealand and is the companion software to the book "Data Mining: Practical Machine Learning Tools and Techniques".[1]
Description
Weka contains a collection of visualization tools and algorithms for
data analysis and
predictive modeling, together with graphical user interfaces for easy access to these functions.[1] The original non-Java version of Weka was a
Tcl/
Tk front-end to (mostly third-party) modeling algorithms implemented in other programming languages, plus
data preprocessing utilities in
C, and a
makefile-based system for running machine learning experiments. This original version was primarily designed as a tool for analyzing data from agricultural domains,[2][3] but the more recent fully
Java-based version (Weka 3), for which development started in 1997, is now used in many different application areas, in particular for educational purposes and research. Advantages of Weka include:
Portability, since it is fully implemented in the
Java programming language and thus runs on almost any modern computing platform.
A comprehensive collection of data preprocessing and modeling techniques.
Ease of use due to its graphical user interfaces.
Weka supports several standard
data mining tasks, more specifically, data preprocessing,
clustering,
classification,
regression,
visualization, and
feature selection. Input to Weka is expected to be formatted according the Attribute-Relational File Format and with the filename bearing the .arff extension. All of Weka's techniques are predicated on the assumption that the data is available as one flat file or relation, where each data point is described by a fixed number of attributes (normally, numeric or nominal attributes, but some other attribute types are also supported). Weka provides access to
SQLdatabases using
Java Database Connectivity and can process the result returned by a database query. Weka provides access to
deep learning with
Deeplearning4j.[4] It is not capable of multi-relational data mining, but there is separate software for converting a collection of linked database tables into a single table that is suitable for processing using Weka.[5] Another important area that is currently not covered by the algorithms included in the Weka distribution is sequence modeling.
Extension packages
In version 3.7.2, a package manager was added to allow the easier installation of extension packages.[6]
Some functionality that used to be included with Weka prior to this version has since been moved into such extension packages, but this change also makes it easier for others to contribute extensions to Weka and to maintain the software, as this modular architecture allows independent updates of the Weka core and individual extensions.
History
In 1993, the
University of Waikato in
New Zealand began development of the original version of Weka, which became a mix of Tcl/Tk, C, and makefiles.
In 1997, the decision was made to redevelop Weka from scratch in Java, including implementations of modeling algorithms.[7]
In 2005, Weka received the
SIGKDD Data Mining and Knowledge Discovery Service Award.[8][9]
In 2006,
Pentaho Corporation acquired an exclusive licence to use Weka for
business intelligence.[10] It forms the data mining and
predictive analytics component of the Pentaho business intelligence suite. Pentaho has since been acquired by Hitachi Vantara, and Weka now underpins the PMI (Plugin for Machine Intelligence) open source component.[11]
Environment for DeveLoping KDD-Applications Supported by Index-Structures (
ELKI) is a similar project to Weka with a focus on
cluster analysis, i.e., unsupervised methods.
H2O.ai is an open-source data science and machine learning platform
KNIME is a machine learning and data mining software implemented in
Java.
^Holmes, Geoffrey; Donkin, Andrew; Witten, Ian H. (1994).
Weka: A machine learning workbench(PDF). Proceedings of the Second Australia and New Zealand Conference on Intelligent Information Systems, Brisbane, Australia. Retrieved 2007-06-25.
^Reutemann, Peter; Pfahringer, Bernhard; Frank, Eibe (2004). "Proper: A Toolbox for Learning from Relational Data with Propositional and Multi-Instance Learners". 17th Australian Joint Conference on Artificial Intelligence (AI2004). Springer-Verlag.
CiteSeerX10.1.1.459.8443.
^Witten, Ian H.; Frank, Eibe; Trigg, Len; Hall, Mark A.; Holmes, Geoffrey; Cunningham, Sally Jo (1999).
Weka: Practical Machine Learning Tools and Techniques with Java Implementations(PDF). Proceedings of the ICONIP/ANZIIS/ANNES'99 Workshop on Emerging Knowledge Engineering and Connectionist-Based Information Systems. pp. 192–196. Retrieved 2007-06-26.