Algorithm 1 Informative gene selection (Dateset, GRank) |
Require: Dateset is a binary-class training dataset with n samples |
Require: GRank is the order of all p genes {GRank1, GRank2,…, GRankj,…, GRankp} |
Ensure: Returns the binary-discriminative informative genes subset of Dateset |
1: ture_Y ← class lable of training samples |
2: j ← 1; MCCbenchmark ← 0; B ← 100 |
3: repeat |
4: S ← GRankj # introducing GRankj
|
5: if |S| ≤ 1 then |
6: for i = 1 to n do # leave-one-out cross-validation |
7: Y
i ← + |
8: get RS
GRankj(+) |
9: Y
i ← − |
10: get RS
GRankj(−) |
11: if RS
GRankj(+) > RS
GRankj(−) then pred_Y
i ← + |
12: else pred_Y
i ← − |
13: end for |
14: MCCbenchmark ← get MCC (true_Y, pred_Y) from formula (14) |
15: else |
16: for i = 1 to n do # leave-one-out cross-validation |
17: Y
i ← + |
18: get RS-net(+) from formula (15) |
19: Y
i ← − |
20: get RS-net(−) from formula (15) |
21: if RS-net(+) > RS-net (−) then pred_Y
i ← + |
22: else pred_Y
i ← − |
23: end for |
24: MCC ← get MCC (true_Y, pred_Y) from formula (14) |
25: end if |
26: if MCC > MCCbenchmark then MCCbenchmark ← MCC |
27: else delete GRankj
|
28: until j > B |
29: retrun S
|