Skip to content

naotoo1/Prototype-based-feature-selection-with-the-Nafes-Package

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Prototype-based Feature Selection with the Nafes Package

Nana A. Otoo

This repository contains the code for the paper Prototype-based Feature Selection with the Nafes Package

Abstract

This paper introduces Nafes as a prototype-based feature selection package designed as a wrapper centered on the highly interpretable and powerful Generalized Matrix Learning Vector Quantization (GMLVQ) classification algorithm and its local variant (LGMLVQ). Nafes utilizes the learned Relevance evaluated by the mutation validation scheme for Learning Vector quantization (LVQ) which iteratively converges to selected features that relevantly contribute to the prototype-based classifier decisions

https://vixra.org/abs/2309.0076

The implementation requires Python 3.11.5 and above. The author recommends to use a virtual environment or Docker image. The details of the implementation and results evaluation can be found in the paper.

To install the Python requirements use the following command:

pip install -r requirements.txt 

To replicate results for WDBC in the paper run the default parameters:

python train.py --dataset wdbc --model gmlvq --eval_type ho
python train.py --dataset wdbc --model gmlvq --eval_type mv
python train.py --dataset wdbc --model lgmlvq --eval_type ho --reject_option
python train.py --dataset wdbc --model lgmlvq --eval_type mv --reject_option

To replicate results for Ozone Layer in the paper run the default parameter:

python train.py --dataset ozone --model gmlvq --eval_type ho
python train.py --dataset ozone --model gmlvq --eval_type mv
python train.py --dataset ozone --model lgmlvq --eval_type ho --reject_option
python train.py --dataset ozone --model lgmlvq --eval_type mv --reject_option