Page 334 - 《软件学报》2026年第2期
P. 334

梁志宇 等: 知识增强的时间序列异常检测算法自动选择                                                       813


                 实验采用    IOPS  数据集, 其时间序列记录的是一台机器存储设备的每秒                  I/O  操作 (input/output operations per
                 second, IOPS). 测试数据集包含   17  条记录, 其中  9  条记录中存在异常. 单条记录上异常数目最大为              63, 最小为  5.
                 其他  8  条记录无异常.
                    选择在   IOPS  上取得最高准确率的基准方法         CN  作为对照. 为便于比较, 对异常检测算法在测试数据集中每条
                 时间序列记录上的真实检测准确率及本文方法与对照方法的算法选择结果进行了可视化, 如图                               7  所示.

                             0.8                                                        IForest
                                                                                        IForest1
                             0.7
                                                                                        LOF
                                                                                        MP
                             0.6                                                        NormA
                             异常检测准确率  0.5                                               HBOS
                                                                                        PCA
                                                                                        POLY
                             0.4
                                                                                        OC-SVM
                                                                                        AE
                             0.3
                                                                                        CNN
                             0.2                                                        LSTM-AD
                                                                                        CN
                             0.1                                                        Ours
                              0
                                  0     2    4     6     8     10   12    14    16
                                                    时间序列索引序号
                     图 7 本文方法与基准方法为          IOPS  数据集中的时间序列选择的异常检测算法及其相应的检测准确率

                    结果显示, 12   个候选的异常检测算法在各个时间序列上的准确率表现参差不齐. 本文方法与对照方法分别在
                 7  和  8  条记录上精准选择了具有最高准确率的异常检测算法, 并且二者在                   13  条记录上选择了相同的算法. 然而,
                 对比两种方法做出不同选择的           4  条记录 (对应序号   7、8、14  和  16) 可以发现, 现有的   CN  方法可能选择准确率非
                 常低的算法, 如序号      7  和  8. 造成这一现象的主要原因是现有方法仅使用对应最佳算法的硬标签, 而将所有非最佳
                 算法不加区别地对待, 导致算法选择器难以从非最佳算法中辨别出较优的候选. 相比之下, 本文方法通过历史任务
                 准确率估算的软标签来强化不同异常检测算法的关系, 且异常检测外部知识的融入也有助于算法选择器捕获更多
                 算法选择相关的特征. 这使得本文方法更倾向于选择所有候选中准确率排名较高的算法, 因而能取得更高的检测
                 准确率.

                  5   总结与展望

                    时间序列异常检测算法的自动选择问题具有重要研究意义. 针对当前主流的基于标准时间序列分类的算法选
                 择器构建方法难以有效利用历史知识的问题, 本文提出知识增强的时间序列异常检测算法自动选择方法. 方法包
                 含两个模块. 基于历史任务的软标签分类模块利用历史时间序列对应的所有异常检测算法的准确率估计序列的真
                 实类别分布, 以此作为软标签, 为算法选择器的学习提供更多有关异常检测算法间关系的知识. 时间序列异常检测
                 外部知识融合模块利用预训练的大语言模型获取外部知识的通用表征, 并通过对比学习最大化时序表征与知识表
                 征间的互信息, 以此将外部知识融入算法选择器中. 本文在来自不同领域的多个时间序列数据集上进行了广泛实
                 验. 结果表明, 本文所提方法相较于现有的时间序列异常检测算法自动选择方法具有更高的检测准确率, 且带来的
                 额外计算时间可以忽略不计.
                    在本文研究的基础上, 未来研究可以从以下               3  个方向展开. 首先, 针对时间序列异常检测算法选择问题的特
                 点, 研究泛化能力更强的算法选择模型架构和训练方法, 进一步提升异常检测算法选择的精确性; 其次, 面向时间
                 序列数据的动态演化特性, 研究增量式元学习框架, 实现算法选择方法的在线动态演化; 最后, 面向海量时间序列
                 异常检测场景的需要, 研究适用于端侧的轻量化异常检测算法选择架构, 提升工业互联网等重要应用场景下的实
                 时检测效率.
   329   330   331   332   333   334   335   336   337   338   339