Skip to content
/ fri Public

Python implementation of the feature relevance interval (FRI) algorithm

License

Notifications You must be signed in to change notification settings

lpfann/fri

Repository files navigation

Feature Relevance Intervals - FRI

Feature Relevance Intervals - FRI

Travis (.org) Coveralls github DOI Open In Colab PyPI PyPI - Python Version GitHub

FRI is a Python 3 package for analytical feature selection purposes. It allows superior feature selection in the sense that all important features are conserved. At the moment we support multiple linear models for solving Classification, Regression and Ordinal Regression Problems. We also support LUPI paradigm where at learning time, privileged information is available.

Usage

Please refer to the documentation for advice. For a quick start we provide a simple guide which leads through the main functions.

Installation

FRI requires Python 3.6+.

For a stable version from PyPI use

$ pip install fri

or with new versions of pip (>=19?) you can clone the repository and run

$ pip install .

in the folder on the master or dev branch.

Documentation

Check out our online documentation here. There you can find a quick start guide and more background information.

You can also run the guide directly online without setup here.

Development

For dependency management we use the newly released poetry tool.

If you have poetry installed, use

$ poetry install

inside the project folder to create a new venv and to install all dependencies. To enter the newly created venv use

$ poetry env

to open a new shell inside. Or alternatively run commands inside the venv with poetry run ....

Docs

The documentation is compiled using portray. If the dependencies are installed with poetry install you should be able to run

$ poetry run portray in_browser

to compile the files into html and launch a browser to preview changes.

(Be sure not to mix up poetry != portray.)

The documentation files are generated from Python docstrings inside the source files and from Markdown located in the docs folder.

References

[1] Göpfert C, Pfannschmidt L, Hammer B. Feature Relevance Bounds for Linear Classification. In: Proceedings of the ESANN. 25th European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning; https://pub.uni-bielefeld.de/publication/2908201

[2] Göpfert C, Pfannschmidt L, Göpfert JP, Hammer B. Interpretation of Linear Classifiers by Means of Feature Relevance Bounds. Neurocomputing. https://pub.uni-bielefeld.de/publication/2915273

[3] Lukas Pfannschmidt, Jonathan Jakob, Michael Biehl, Peter Tino, Barbara Hammer: Feature Relevance Bounds for Ordinal Regression. Proceedings of the ESANN. 27th European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning; Accepted. https://pub.uni-bielefeld.de/record/2933893

[4] Pfannschmidt L, Göpfert C, Neumann U, Heider D, Hammer B: FRI - Feature Relevance Intervals for Interpretable and Interactive Data Exploration. Presented at the 16th IEEE International Conference on Computational Intelligence in Bioinformatics and Computational Biology, Certosa di Pontignano, Siena - Tuscany, Italy. https://ieeexplore.ieee.org/document/8791489