Algorithm 1. ClassifyByCluster(scores, iters)

Inputs: scores - anomaly scores, iters - number of iterations

Output: anomaly class centers

1. center0 = min(scores)

2. center1 = max(scores)

3. labels [scores.length]

4. for n = 1 to iters

5. initialization cnt0,cnt1

6. fori =1 to scores.length

7. diff0 = Math.abs(scores [i]-center0)

8. diff1 = Math.abs(scores [i]-center1)

9. diff0 < diff1? labels [i] = 0&cnt0++:labels [i]=1&cnt1++

10. end

11. diffs = centers

12. initialization centers

13. update centers

14. if ΔJ<δ

15. break

16. end

17. returncenter0,center1