R 异常检测入门
Alastair Rushworth
Data Scientist
选择一个高阈值
high_score <- quantile(sat$score, probs = 0.99)
high_score
99%
0.6228078
将分数二值化
sat$binary_score <- as.numeric(score >= high_score)
比较真实标签与二值化分数
table(sat$label, sat$binary_score)
0 1
0 5729 3
1 15 56
正确识别的异常 $\div$ 异常总数
table(sat$label, sat$binary_score)
0 1
0 5729 3
1 15 56
recall <- 56 / (15 + 56)
recall
0.7887324
正确识别的异常 $\mathbf{\div}$ 被判为异常的总数
table(sat$label, sat$binary_score)
0 1
0 5729 3
1 15 56
precision <- 56 / (56 + 3)
precision
0.9491525
R 异常检测入门