该项目需要使用Cython
生成Python扩展模块
pip install -r requirements.txt
python setup.py build_ext --inplace
SR
输入的是一条kpi曲线,输出经过显著性变换的显著性图和异常分数,将显著性图的每个点的异常分数求和作为该条kpi曲线的异常分数;再结合标注计算best F1-score,pr和roc以及AUC
需要将每台机器的第8天的kpi单独拆出来
# 在data_yidong目录下
python data_load.py
运行SR
,对所有机器的kpi曲线进行显著性变换,输出kpi曲线每个点的异常分数,并将每个点的异常分数求和作为整条kpi曲线的异常分数保存到score_statistics.csv
;参数(窗口大小等)设置见msanomalydetector/util.py
# 在项目根目录下
python main.py > score_statistics.csv
运行evaluate.ipynb
里的所有代码块即可得到best F1-score,PR和ROC以及AUC
等实验结果;roc_evaluate.csv
和pr_evaluate.csv
分别为绘制ROC和PR曲线所需要的结果
item | result |
---|---|
best precision | 0.1071 |
best recall | 0.5100 |
best f1 | 0.1771 |
AUC | 0.7272 |