Project details for Waffles

Screenshot JMLR Waffles 2014-07-05

by mgashler - July 20, 2014, 04:53:54 CET [ Project Homepage BibTeX BibTeX for corresponding Paper Download ]

view (18 today), download ( 2 today ), 0 subscriptions


A collection of command-line tools for machine learning and data mining tasks. These tools are well-suited for script-automated experiments. These tools cover a wide diversity of tasks, including supervised learning, dimensionality reduction, collaborative filtering, optimization, visualization, etc.

A GUI wizard tool is also included to assist the user to construct a command that will perform the desired task.

Each command-line tool is a thin wrapper around functionality in an object-oriented C++ class library. So, if you find one of the tools to be useful, you can also link its functionality into your code. The command-line tools may serve as demos for how to use the class library. Also, a collection of additional demo apps is included to exhibit some of the classes that are not exposed by the command-line tools.

The code is public domain (CC0). Builds on 32 and 64 bit Linux, Windows, OSX, etc. Builds in g++, clang, VC++, etc.

Full documentation at

Changes to previous version:

Added support for CUDA GPU-parallelized neural network layers, and several other new features. Full list of changes at

BibTeX Entry: Download
Corresponding Paper BibTeX Entry: Download
Supported Operating Systems: Linux, Macosx, Windows, Unix, Agnostic
Data Formats: Arff, Csv
Tags: Classification, Ensembles, Dimensionality Reduction, Neural Networks, Decision Trees, Genetic Algorithms, Bayesian Networks, Data Mining, K Nearest Neighbor Classifica, Collaborative Filtering, Visual
Archive: download here

Other available revisons

Version Changelog Date

Added support for CUDA GPU-parallelized neural network layers, and several other new features. Full list of changes at

July 20, 2014, 04:53:54

Changed the license from LGPL to CC0. Added classes for stackable autoencoders and restricted boltzmann machines. Polished up the GBayesianNetwork class and add examples and unit tests. Added support for CMake. Made the build process also support clang, and be more mac-friendly. Simplified some important classes, including GMatrix and GNeuralNet. Enforced const correctness in more places. Nixed most uses of smart pointers. Made all learning algorithms thread-safe. Added thread-parallelism to several ensemble methods. Added support for binary division trees. Added some common activation functions. Added a tool to generate a vector of meta statistics about a dataset. Added several small-but-useful tools. Simplified the docs and web site.

December 9, 2013, 18:04:03

See the change log at

April 7, 2013, 02:04:10

See the change log at

October 8, 2012, 17:44:05

See the change log at

August 26, 2011, 04:02:59

See the change log at

March 18, 2011, 17:12:07

See the change log at

November 5, 2010, 16:31:01

See the change log at

June 9, 2010, 23:08:38

Initial Announcement on

June 4, 2008, 00:19:36


No one has posted any comments yet. Perhaps you'd like to be the first?

Leave a comment

You must be logged in to post comments.