Releases: Waikato/meka
Release v1.9.8
- added edge case handling in case of really low label cardinality, removed unnecessary double casts, fixed bracketing (#80) - thanks to @lorsbach
- additional multi-label classifiers: ERFH, HOMER, MLRF (#81 and #84) - thanks to @agkphysics
- updated flatlaf look'n'feel
- switched to simple-directory-chooser
Release v1.9.7
- 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
Release v1.9.6
- upgraded Weka to 3.9.6
- updated URLs in Tutorial
Release v1.9.5
- 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 #74.
Release v1.9.4
- upgraded Weka to 3.9.5
Release v1.9.3
MULAN
classifier now has anrenamedAttributes
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
Release v1.9.2
meka-1.9.2 [maven-release-plugin] copy for tag meka-1.9.2
Release v1.9.1
Meka
The MEKA project provides an open source implementation of methods for multi-label learning and evaluation.
Documentation
See http://meka.sourceforge.net/#documentation for sources of documentation regarding MEKA.
In particular,
- See the
Tutorial.pdf
for detailed information on obtaining, using and extending MEKA. - For a list of included methods and command line examples for them, see: http://meka.sourceforge.net/methods.html
- For examples on how to use MEKA in your Java code: https://github.com/Waikato/meka/tree/master/src/main/java/mekaexamples
If you have a specific question, ask on Meka's mailing list
- Check if it is already answered: http://sourceforge.net/mailarchive/forum.php?forum_name=meka-list
- Write it to meka-list@lists.sourceforge.net
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 datasetsPCC
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.
Release v1.9.0
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 inResults
, rather than justStrings
andDoubles
. - 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).
- This means that the results of the
-
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 themeka.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 themeka.gui.explorer
package.
- This makes it easy for other people to add more tabs (i.e., meka packages), simply derived from
-
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 packagemeka.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.
- They need to be derived from
-
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) renamedProblemTransformationMethod
, and there is now aMultiLabelClassifier
Interface.- Methods like
MajorityLabelsetClassifier
now implementMultilabelClassifier
. Most others areProblemTransformationMethod
s
- Methods like
-
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
- bug fixed in
Release v1.7.7
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