MALLET Software Toolkit
A MALLET Software Toolkit is a Java-based machine learning toolkit that is designed for solving natural language processing tasks.
- AKA: MAchine Learning for LanguagE Toolkit.
- Context:
- It can be composed of:
- a MALLET Tokenization System.
- a MALLET POS System.
- a MALLET Sequence Tagging System (that can be used to develop an Supervised Sequence Tagging System).
- It can be used to develop:
- It can be used as:
- a Conditional Random Field Toolkit.
- a ...
- It makes use of: a modified Trove Java Library.
- It can be composed of:
- Example(s):
- Counter-Example(s):
- See: Andrew McCallum.
References
2011
- http://mallet.cs.umass.edu/
- MALLET is a Java-based package for statistical natural language processing, document classification, clustering, topic modeling, information extraction, and other machine learning applications to text.
MALLET includes sophisticated tools for document classification: efficient routines for converting text to "features", a wide variety of algorithms (including Naïve Bayes, Maximum Entropy, and Decision Trees), and code for evaluating classifier performance using several commonly used metrics. Quick Start Developer's Guide
In addition to classification, MALLET includes tools for sequence tagging for applications such as named-entity extraction from text. Algorithms include Hidden Markov Models, Maximum Entropy Markov Models, and Conditional Random Fields. These methods are implemented in an extensible system for finite state transducers. Quick Start Developer's Guide
Topic models are useful for analyzing large collections of unlabeled text. The MALLET topic modeling toolkit contains efficient, sampling-based implementations of Latent Dirichlet Allocation, Pachinko Allocation, and Hierarchical LDA. Quick Start
Many of the algorithms in MALLET depend on numerical optimization. MALLET includes an efficient implementation of Limited Memory BFGS, among many other optimization methods. Developer's Guide
In addition to sophisticated Machine Learning applications, MALLET includes routines for transforming text documents into numerical representations that can then be processed efficiently. This process is implemented through a flexible system of "pipes", which handle distinct tasks such as tokenizing strings, removing stopwords, and converting sequences into count vectors. Quick Start Developer's Guide
An add-on package to MALLET, called GRMM, contains support for inference in general graphical models, and training of CRFs with arbitrary graphical structure. About GRMM
- MALLET is a Java-based package for statistical natural language processing, document classification, clustering, topic modeling, information extraction, and other machine learning applications to text.
2002
- (McCallum, 2002) ⇒ Andrew McCallum. (2002). “MALLET: A Machine Learning for Language Toolkit." http://www.cs.umass.edu/~mccallum/mallet.