# A Feature Selection Algorithm Performance Metric for Comparative Analysis
## 6 Materials and Methods
### Feature Selection Algorithms  
This section describes the feature selection algorithms and the parameters that were used per algorithm. The feature selection algorithms that were used as benchmarks are listed in Table 7.  
AMSO and GAFS are two population-based, global search wrapper techniques. SBFS and SFFS are two simple local search wrapper techniques. PCFS and IGFS are two filter methods that do not consider the model accuracy (except to decide on the best number of features to select). These six algorithms all have very different approaches to solving the feature selection algorithm. RAND, a control method that randomly selects features, is included. A description of the individual algorithms follows. Random Feature Selection (RAND)The random feature selection algorithm is not intended to work well. This feature selection algorithm is used as a control method. It is intended to be used as a sanity check to ensure that all other feature selection algorithms do indeed perform better than random. A binary string representation of a solution starts out with all features excluded. A random number between 0 and 1 is generated, drawn from a uniform distribution, for each feature in the set of all available features. A feature is included if the random number is greater than 0.5. Adaptive Multi-Swarm Optimisation for Feature Selection (AMSO)The adaptive multi-swarm optimisation for feature selection algorithm (AMSO) [24] was proposed for high-dimensional feature selection problems. AMSO starts by ranking available features in descending order, using any information theoretic criterion. This study also uses symmetrical uncertainty as an information theoretic criterion, as presented by [PERSON] et al. [24]. The ordered list of features is then split by length for each sub-swarm. The motivation behind this is that particle swarm optimisation (PSO) will perform better with smaller search spaces. AMSO uses a competitive swarm optimiser approach to particle velocity updating [25]. The number of features considered in this study is substantially less than in the study where the algorithm was proposed. Therefore, all parameters were set as presented by [PERSON] et al. [24], with the modification of the number of sub-swarms and population size. The population size was set to 50, and the number of sub-swarms to three. These parameters are more appropriate for problems with lower dimensions due to the particle lengths being significantly smaller for lower dimensionality problems. AMSO was chosen to be included due to its novelty and attention to dimensionality reduction. Since AMSO has a stochastic element, fitness is reported as the median over 30 independent runs of the algorithm. Genetic Algorithm for Feature Selection (GAFS)The genetic algorithm for feature selection uses the classic genetic algorithm as described by [PERSON] [26]. The Weka [22] implementation and default parameters were used. The parameters are:  
* Population size: 20
* Number of generations: 20
* Crossover probability: 0.6
* Mutation probability: 0.033  
Since the genetic algorithm has a stochastic element, fitness is reported as the median over 30 independent runs of the algorithm. \begin{table}
\begin{tabular}{c c c} \hline \hline
**Identifier** & **Algorithm Name** & **Algorithm Type** \\ \hline RAND & Random Feature Selection & Control Method \\ AMSO & Adaptive Multi-Swarm Optimisation & Filter and Wrapper Method \\ GAFS & Genetic Algorithm for Feature Selection & Wrapper Method \\ SBFS & Generalised Sequential Backward Selection & Wrapper Method \\ SFFS & Generalised Sequential Forward Selection & Wrapper Method \\ PCFS & Pearson Correlation Coefficient Ranker & Filter Method \\ IGFS & Information Gain Ranker & Filter Method \\ \hline \hline \end{tabular}
\end{table} 
Table 7: Feature selection algorithms. Generalised Sequential Backward Feature Selection (SBFS).The SBFS algorithm is used as implemented by the GreedyStepwise implementation in Weka [22].