Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

alt text

featsel is a framework especially designed for benchmarking of feature selection algorithms and cost functions. Through a clean object-oriented structure and coded in C++, this framework allows the user to easily include new algorithms and/or cost functions and to carry out fast computational experiments. Moreover, featsel allows the user to take advantage of the fact that the search space of a feature selection procedure can be organized into a Boolean lattice; to this end, several methods are included in this framework especially for Boolean manipulation of feature subsets. featsel is also accompanied by several scripts to assist the user in the inclusion and removal of algorithms and cost functions, to carry out benchmarking experiments and to create tables and graphs with the obtained results.

Please refer to our user's guide, which is continually improved, to get information on how to install and use featsel. If you use featsel in your publication, we kindly ask you to acknowledge our work by citing the paper that describes this framework:

M.S. Reis, G. Estrela, C.E. Ferreira and J. Barrera "featsel: A framework for benchmarking of feature selection algorithms and cost functions" SoftwareX 6 (2017) pp. 193-197. DOI: 10.1016/j.softx.2017.07.005.

We welcome new collaborators to this project; if you are interested, please don't hesitate to contact us!