Waikato Meka Versions Save

Multi-label classifiers and evaluation procedures using the Weka machine learning framework.

meka-1.9.7

1 year ago
  • upgraded multisearch-weka-package to 2021.2.17
  • upgraded maven-compiler-plugin to 3.10.1
  • dropped jide-oss since not compatible with Java 17 (using simple JFileChooser-based directory chooser again)
  • upgraded jshell-scripting to 0.1.2

meka-1.9.6

2 years ago
  • upgraded Weka to 3.9.6
  • updated URLs in Tutorial

meka-1.9.5

2 years ago
  • fixed java.lang.Exception: Illegal options: ... exception, which affected all general options when executing algorithms from the command-line. This was due to a recent change in Weka, which now always performs a check for remaining options. See https://github.com/Waikato/meka/issues/74.

meka-1.9.4

3 years ago
  • upgraded Weka to 3.9.5

meka-1.9.3

3 years ago
  • MULAN classifier now has an renamedAttributes property which determines whether to rename attributes (for avoiding invalid characters); on by default (as it was current behavior); command-line flag -no-rename turns it off
  • using updated jide-oss library to avoid problems on Macs
  • added ability to change look'n'feel with new flat look'n'feel the default
  • .props files are now read from the MEKA home directory as well ($HOME/.meka or %USERPROFILE%\mekafiles)
  • now based on Weka 3.9.4
  • added -x-out-dir command-line option for storing the per-fold data of a cross-validation run
  • MultiSearch algorithms now show up in the GOE
  • Support for scripting via JShell

meka-1.9.2

3 years ago

meka-1.9.1

3 years ago

Meka

The MEKA project provides an open source implementation of methods for multi-label learning and evaluation.

http://meka.sourceforge.net/

Documentation

See http://meka.sourceforge.net/#documentation for sources of documentation regarding MEKA.

In particular,

If you have a specific question, ask on Meka's mailing list

Changes in Version 1.9.1

  • Added a folder mekaexamples with examples of how to use Meka from Java code
  • Evaluation can handle missing values
  • BR now runs faster on large datasets
  • PCC now outputs probabilistic info (as it should)
  • Bug fix with labelset print-outs in evaluation at particular verbosity levels
  • Classifier BaggingMLUpdateableADWIN removed to free dependence of MOA
  • -T option is now available for incremental classifiers, evaluating the classifier in its current state (or after training with -t finished) on the test set provided with this option.
  • The loading of the test test in the Classify tab got moved into the menu, to make it more obvious.
  • The Classify tab now allows the loading of serialized models and their evaluation against the loaded test set.
  • The Classify tab now allows to make predictions on a loaded test set using the selected model from the result history.
  • The Arff Viewer got renamed to Data Viewer as it is a customized version of Weka's Arff Viewer, with correct visualization of the class attributes (also sports support for recent files and filechooser with directory shortcuts).
  • New classifiers (Boolean Matrix Factorization, Neurofuzzy methods)
  • Added -predictions option to evaluation (batch and incremental) to allow output of predictions generated on test set to a file. Using the -no-eval option, the evaluation can be skipped, e.g., when there are no class labels in the test set.
  • Added an 'Export Predictions (CSV)' plugin option to the GUI to save all predictions along with true label relevances to a CSV file
  • Moved issues in the TODO section of this README to github as Issues

Bugs, and Future Enhancements

A list of current Issues in Meka (known bugs, planned improvements, feature wishlist) can be found at https://github.com/Waikato/meka/issues

The Meka developers never have enough time to implement everything that should be in Meka. If you have made some Meka-related code you would like to see in Meka, or would like to help with any of the existing issues, please get in touch with the developers.

meka-1.9.0

3 years ago

Meka

See the Tutorial.pdf for detailed information on obtaining, using and extending MEKA. For a list of included methods and 'quick-start' command line examples, see: http://meka.sourceforge.net/methods.html

Improvements since the last version are as follows.

Release Notes, Version 1.9.0

  • MEKA's build has been switched over from Apache Ant to Apache Maven.

    • Note: this change affects people working with the source code.
    • It makes life easier with deploying artifacts to Maven Central automatically
    • Better execution of unit tests.
  • The Evaluation framework has been heavily reworked

    • Evaluation output has been improved, as much in the code as the visual text output (now prettier!).
    • Macro and Micro Precision and Recall are added as evaluation metrics
    • AUPRC and AUROC are added as evaluation metrics
    • AUPRC and AUROC can be visualised with the 'Show ...' options under the right-click menu of the History panel.
    • Objects like doubles[] can be stored in Results, rather than just Strings and Doubles.
    • In particular there are improvements to cross validation and incremental validation.
    • Cross-fold evaluation now combines all predictions together and then evaluates it (rather than averaging the statistics afterwards).
    • Incremental evaluation is basic prequential (interleaved train then test) with a GUI option for the number of samples
    • Incremental validation displays metrics in the GUI sampled over time in addition to those overall. These can be plotted with by selecting 'Incremental Performance' from the right-click menu in the History panel.
    • Note the earlier incremental evaluation scheme (which was window-based prequential) is also still available.
  • The seed used to randomize a dataset is no longer passed on to Randomizeable classifiers -- they must use their own.

    • This means that the results of the Randomizeable classifiers will be different to earlier versions of MEKA when a dataset is randomized (of course, the result should not be statistically significant).
  • It is easier now to add new functionality to Result History objects.

    • The Classify tab now automatically discovers its result history plugins at runtime.
    • These have to be derived from meka.gui.explorer.classify.AbstractClassifyResultHistoryPlugin and placed in the meka.gui.explorer.classify package.
    • New functionality (Show Graph, Save Graph, Save Model, Save CSV, Incremental Performance, Show ROC, Show PRC, etc.) is using this architecture
  • The Explorer tabs are now plugins and get discovered dynamically at runtime.

    • This makes it easy for other people to add more tabs (i.e., meka packages), simply derived from meka.gui.explorer.AbstractExplorerTab and placed in the meka.gui.explorer package.
  • A GUIChooser class is now available: meka.gui.guichooser.GUIChooser

    • This allows the selection of either the Explorer (the interface which has existed until now) and the new Experimenter interface.
    • It features dynamic discovery of menu items as well:
      • They need to be derived from meka.gui.guichooser.AbstractMenuItemDefinition and placed in package meka.gui.guichooser.
      • If you want a "shortcut" button like the Explorer menu definition has, simply let the isShortcutButton() method return true.
      • See the code for examples.
  • Meka now has an Experimenter

    • The experimenter is still 'experimental' at the moment.
    • It is not based directly on WEKA's experimenter, but should be relatively intuitive to people that have used it.
    • See ExperimentExample.java for an example of how to do this on the command line.
    • New documentation on how to use it is in the Tutorial
  • The MultilabelClassifier class has been (more appropriately) renamed ProblemTransformationMethod, and there is now a MultiLabelClassifier Interface.

    • Methods like MajorityLabelsetClassifier now implement MultilabelClassifier. Most others are ProblemTransformationMethods
  • Tool tips and get/set options thoroughly elabourated throughout classifiers, and respective javadoc comments cleaned up

  • Tutorial updated to reflect changes

  • A number of minor bug fixes, e.g.,

    • bug fixed in PSt when empty labelset appears
    • some related issues in SNN where also fixed

release-1.7.7

3 years ago

See the Tutorial.pdf for detailed information on obtaining, using and extending MEKA. For a list of included methods and 'quick-start' command line examples, see: http://meka.sourceforge.net/methods.html

Release Notes, Version 1.7.7

This is a minor release, adding new features and fixing some bugs, including:

- Fixed a bug which caused Meka to crash when using RandomForest as a base classifier
- Can now visualize certain base classifiers, for example, J48. Just right-click 'Show Graphs' in the GUI results History
- Other improvements to the GUI such as 
	- an Open Recent option
	- a Save Model option to the GUI results History
- MCC classifier (and derivatives) now run faster in the case that no chain-search is made
- OS-specific Meka home directories
- Recent changes are reflected in the tutorial

release-1.7.6

3 years ago

See the Tutorial.pdf for detailed information on obtaining, using and extending MEKA. For a list of included methods and 'quick-start' command line examples, see: http://meka.sourceforge.net/methods.html

Release Notes, Version 1.7.6

This is a minor release, fixing a few minor issues.

- Updateable classifiers are now moved to subfolders incremental/ and incremental/meta
- Updateable classifiers are now set with a sensible default classifier (HoeffdingTree), and BRUpdateable in the case of meta incremental classifiers
- Javadoc comments are cleaned up
- Some unused branches of weka/ and moa/ were removed
- Some overly stringent unit tests were changed
- Recent changes are reflected in the tutorial