| Input: data set , (minimum ), and |
| Output: Feature Sets (FS) |
| (1) Set FS = |
| (2) Count support of 1-features in every class |
| (3) Generate 1-feature set() |
| (4) Count support of 1-features in different class |
| (5) Select 1-features respectively and add them to FS |
| (6) new feature set Generate(2-feature set()) |
| (7) while new feature set is not empty do |
| (8) Count () of candidates in new feature set |
| (9) For each feature in ()-feature set |
| (10) Applying pruning 1: IF ( |
| (11) remove feature ; |
| (12) Else if there is a superset a of feature in -feature set |
| (13) Applying pruning 2: that or |
| (14) Applying pruning 3: |
| (15) Then remove feature ; |
| (16) Select optimal features to FS; |
| (17) ENDIF |
| (18) end while |
| (19) new feature set Generate(next level features sets) |
| (20) Return FS; |
| Function 1 Generate -feature Set |
| (21) Let ()-feature set be empty set |
| (22) (Note: Obey by the * Method to Merge) |
| (23) for each pair of features and in -feature set do |
| (24) Insert candidate · in ()-feature set; |
| (25) for all do |
| (26) if does not exist in -feature set then |
| (27) Then remove candidate |
| (28) end if |
| (29) Return ()-feature set |
| (30) end for |
| (31) end for |