Feature Selection Toolbox
Feature Selection Toolbox (FST) is software primarily for feature selection in the machine learning domain,[1] written in C++, developed at the Institute of Information Theory and Automation (UTIA), of the Czech Academy of Sciences.
Developer(s) | UTIA, Czech Academy of Sciences |
---|---|
Stable release | 3.1.1
/ 9 September 2012 |
Written in | C++ |
Operating system | Cross-platform (v3) |
Type | Machine learning, pattern recognition |
License | Free for non-commercial use |
Website | fst |
Version 1
The first generation of Feature Selection Toolbox (FST1) was a Windows application with user interface allowing users to apply several sub-optimal, optimal and mixture-based feature selection methods on data stored in a trivial proprietary textual flat file format.[2]
Version 3
The third generation of Feature Selection Toolbox (FST3) was a library without user interface, written to be more efficient and versatile than the original FST1.[3]
FST3 supports several standard data mining tasks, more specifically, data preprocessing and classification, but its main focus is on feature selection. In feature selection context, it implements several common as well as less usual techniques, with particular emphasis put on threaded implementation of various sequential search methods (a form of hill-climbing). Implemented methods include individual feature ranking, floating search, oscillating search (suitable for very high-dimension problems) in randomized or deterministic form, optimal methods of branch and bound type, probabilistic class distance criteria, various classifier accuracy estimators, feature subset size optimization, feature selection with pre-specified feature weights, criteria ensembles, hybrid methods, detection of all equivalent solutions, or two-criterion optimization. FST3 is more narrowly specialized than popular software like the Waikato Environment for Knowledge Analysis Weka, RapidMiner or PRTools.[4]
By default, techniques implemented in the toolbox are predicated on the assumption that the data is available as a single flat file in a simple proprietary format or in Weka format ARFF, where each data point is described by a fixed number of numeric attributes. FST3 is provided without user interface, and is meant to be used by users familiar both with machine learning and C++ programming. The older FST1 software is more suitable for simple experimenting or educational purposes because it can be used with no need to code in C++.
History
- In 1999, development of the first Feature Selection Toolbox version started at UTIA as part of a PhD thesis. It was originally developed in Optima++ (later renamed Power++) RAD C++ environment.
- In 2002, the development of the first FST generation has been suspended, mainly due to end of Sybase's support of the then used development environment.
- In 2002–2008, FST kernel was recoded and used for research experimentation within UTIA only.
- In 2009, 3rd FST kernel recoding from scratch begun.
- In 2010, FST3 was made publicly available in form of a C++ library without GUI. The accompanying webpage collects feature selection related links, references, documentation and the original FST1 available for download.
- In 2011, an update of FST3 to version 3.1 included new methods (particularly a novel dependency-aware feature ranking suitable for very-high-dimension recognition problems) and core code improvements.
See also
- Feature selection
- Pattern recognition
- Machine learning
- Data mining
- OpenNN, Open neural networks library for predictive analytics
- Weka, comprehensive and popular Java open-source software from University of Waikato
- RapidMiner, formerly Yet Another Learning Environment (YALE) a commercial machine learning framework
- PRTools of the Delft University of Technology
- Infosel++ specialized in information theory based feature selection
- Tooldiag a C++ pattern recognition toolbox
- List of numerical analysis software
References
- Petr Somol; Jana Novovičová; Pavel Pudil (2010). "Efficient Feature Subset Selection and Subset Size Optimization" (PDF). Pattern Recognition Recent Advances, INTECH. pp. 75–97. ISBN 978-953-7619-90-9.
- Petr Somol; Pavel Pudil (2002). "Feature Selection toolbox" (PDF). Pattern Recognition vol.35, no.12, Elsevier. pp. 2749–2759.
- Petr Somol; Pavel Vácha; Stanislav Mikeš; Jan Hora; Pavel Pudil; Pavel Žid (2010). "Introduction to Feature Selection Toolbox 3 – The C++ Library for Subset Search, Data Modeling and Classification" (PDF). UTIA Tech. Report No. 2287. pp. 1–12. Retrieved 2 November 2010.
- PRTools