4. Descripción de la metodología empleada
4.1. Aplicación informática (Python y MongoDB)
4.1.1. Transformación de datos iniciales
Table 3.3 shows the experimental results of PSO using the traditional ini- tialisation strategy (random initialisation) and differentpbsetandgbestup- dating mechanisms for feature selection. ‘T1” shows the results of the sig- nificance tests between the classification performance of “All” and that of a PSO based feature selection algorithm. “T2” shows the results of the significance tests between PSOFS and another algorithm.
Results of PSOPG1. PSOPG1 treats the classification performance as the first priority when updatingpbestandgbest. As can be seen from Table 3.3, PSOPG1 selected less than half or even less than one third of the available features and achieved similar or significantly better classification than us- ing all features on 13 of the 14 datasets. The only exception is the MoveLib dataset, where PSOPG1 selected around one third of the available features, achieved slightly worse average classification performance (94.57%) than using all features (94.81%), but the best classification performance (95.19%) of PSOPG1 is better than using all features.
PSOPG1 outperformed PSOFS in terms of the classification performance and the number of features on almost all datasets. The main reason is that PSOPG1 takes the classification performance as the first priority, which can firstly guarantee PSOPG1 achieves at least as good classification per- formance as PSOFS. PSOPG1 also considers the number of features if the classification performance is the same, which can further remove redun- dant or irrelevant features to reduce the number of features and may fur- ther improve the classification performance on the unseen test set.
Results of PSOPG2. PSOPG2 aims to improve both the number of fea- tures and the classification performance when updating pbest and gbest. According to Table 3.3, PSOPG2 selected around a quarter (or less) of the available features and achieved significantly better or similar classification performance than using all features on almost all datasets. The number
Table 3.3: Results of New Updating Mechanisms. *T1: Significance tests against “All”. The more “+”, the better the PSO based algorithm. *T2: Significance tests against PSOFS. The more “+”, the better PSOPG1 or PSOPG2 or PSOPG3. Dataset Method Size Best Mean StdDev T1 T2 Dataset Method Size Best Mean StdDev T1 T2
Wine
All 13 76.54
Australian
All 14 70.05
PSOFS 8 100 95.96 1.83E0 + PSOFS 3.88 87.44 85.48 3.6E0 +
PSOPG1 5.95 98.77 95.37 2.01E0 + = PSOPG1 3.82 87.44 85.79 3.71E0 + = PSOPG2 4.7 100 96.79 2.77E0 + = PSOPG2 2.85 87.44 78.31 10.2E0 + - PSOPG3 4.65 100 96.79 2.72E0 + = PSOPG3 2.58 87.44 77.15 9.9E0 + -
Zoo
All 17 80.95
Vehicle
All 18 83.86
PSOFS 9.18 97.14 95.5 90.1E-2 + PSOFS 9.52 87.01 84.99 79E-2 +
PSOPG1 5.02 97.14 95.36 57E-2 + = PSOPG1 9.35 87.01 85.17 84.6E-2 + = PSOPG2 4.1 96.19 95.19 42.2E-2 + = PSOPG2 5.48 86.02 84.13 1.27E0 = - PSOPG3 4.35 96.19 95.24 47.5E-2 + = PSOPG3 4.45 86.02 83.66 1.26E0 = -
German
All 24 68.0
WBCD
All 30 92.98
PSOFS 13.48 72 69.41 1.33E0 + PSOFS 13.42 94.74 93.39 55.8E-2 +
PSOPG1 11.48 72.33 68.66 2.17E0 = = PSOPG1 4.12 94.74 93.74 86.2E-2 + +
PSOPG2 6.4 72 68.87 2.06E0 + = PSOPG2 3.08 94.74 93.96 1.34E0 + +
PSOPG3 4.5 72 68.73 2.05E0 + = PSOPG3 2.58 94.74 93.73 1.78E0 + =
Ionosp
All 34 83.81
Lung
All 56 70.0
PSOFS 12.58 93.33 88.4 2.14E0 + PSOFS 27.35 80 72 6E0 +
PSOPG1 8.38 92.38 88.74 2.17E0 + = PSOPG1 12.55 90 75.75 7.71E0 + + PSOPG2 3.35 95.24 88.24 2.78E0 + = PSOPG2 5.32 90 78.75 5.99E0 + +
PSOPG3 3.28 91.43 87.95 2.16E0 + = PSOPG3 5.8 90 78.5 6.14E0 + +
Sonar
All 60 76.19
MoveLib
All 90 94.81
PSOFS 25.82 85.71 77.98 3.97E0 + PSOFS 42.6 95.06 94.49 29.2E-2 - PSOPG1 17.85 85.71 77.42 3.28E0 + = PSOPG1 36.65 95.19 94.57 30.7E-2 - = PSOPG2 8.85 87.3 77.82 3.85E0 + = PSOPG2 18.4 95.19 94.47 38.7E-2 - = PSOPG3 7.52 87.3 77.03 3.35E0 = = PSOPG3 12.35 95.19 94.47 34E-2 - =
Hillvalley
All 100 56.59
Musk1
All 166 83.92
PSOFS 47.32 61.81 57.54 1.52E0 + PSOFS 86.48 88.81 84.58 2.04E0 = PSOPG1 40.5 59.89 58 1.23E0 + = PSOPG1 72.58 88.81 84.37 2.06E0 = = PSOPG2 18.52 60.16 57.94 1.49E0 + = PSOPG2 38.78 88.11 83.1 2.78E0 = - PSOPG3 4.52 60.16 56.21 1.85E0 = - PSOPG3 30.45 88.11 83.09 2.86E0 = -
Madelon
All 500 70.9
Isolet5
All 617 98.45
PSOFS 258.1 79.49 76.55 1.22E0 + PSOFS 318.7 98.77 98.57 9.98E-2 + PSOPG1 234.5 80.64 77.1 1.79E0 + = PSOPG1 281.85 98.85 98.6 9.01E-2 + = PSOPG2 102.3 85.77 80.15 2.48E0 + + PSOPG2 150.88 98.95 98.55 12.8E-2 + = PSOPG3 74.15 86.41 81.71 2.05E0 + + PSOPG3 98.98 98.8 98.59 11.6E-2 + =
of features selected by PSOPG2 is much smaller than that of PSOFS and PSOPG1. The classification performance of PSOPG2 is similar to that of PSOFS on eight of the 14 datasets, slightly worse on three datasets and slightly better on three datasets. This might be because in PSOFS and
3.4. RESULTS AND DISCUSSIONS 97 PSOPG1, if the classification performance was increased, the number of features was ignored. PSOPG2 aims to ensure that neither the classifica- tion error rate nor the number of features is increased when updatingpbest
orgbest. This can further reduce the number of features without decreas- ing the classification performance in most cases, but it might also cause the algorithm missing the feature subsets with high classification performance and a large number of features.
Results of PSOPG3. In PSOPG3, the classification performance compro- mises the number of features. According to Table 3.3, on most datasets, PSOPG3 selected around one fifth (or less) of the available features and achieved similar or even better classification performance than using all features. PSOPG3 further reduced the number of features selected by PSOFS, PSOPG1, and PSOPG2. PSOPG3 achieved similar classification performance to PSOFS in most cases, but worse in three cases. The reason is that when updating pbest or gbest, the number of features in PSOPG3 was treated as more important than in PSOFS, PSOPG1 and PSOPG2, which guides PSOPG3 to search for the feature subsets with a small num- ber of features. Meanwhile, the classification performance in PSOPG3 compromises the number of features to a very small extent. Therefore, the classification performance of PSOPG3 was slightly worse than PSOFS, PSOPG1 and PSOPG2 in some cases.
Generally, all these four methods using differentpbsetandgbestupdat- ing mechanisms can select a smaller number of features and achieve bet- ter classification performance than using all features. PSOPG1 achieved at least as good classification performance as PSOFS, but selected a smaller number of features. The results and comparisons show that thepbsetand
gbest updating mechanism can significantly influence the performance of PSO for feature selection in terms of both the classification performance and the number of features. The results also show that the updating mech- anism is more important than the initialisation strategy in PSO for feature selection. Therefore, to improve the performance of PSO for feature selec-
tion, thepbsetandgbestupdating mechanism should be naturally consid- ered first. Meanwhile, since the initialisation strategy is simple and easy to implement, we should combine them together to further improve the feature selection performance and reduce the computational cost.