(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202211131264.1
(22)申请日 2022.09.16
(71)申请人 上海交通大 学宁波人工智能研究院
地址 315012 浙江省宁波市海曙区南门街
道南站西路2 9号
申请人 浙江国利网安科技有限公司
(72)发明人 夏武 还约辉 杨根科 褚健
(74)专利代理 机构 上海剑秋知识产权代理有限
公司 31382
专利代理师 徐海兵
(51)Int.Cl.
H04L 9/40(2022.01)
H04L 67/125(2022.01)
H04L 41/16(2022.01)
G06N 3/04(2006.01)G06N 3/08(2006.01)
(54)发明名称
一种面向工业控制系统的异常检测系统和
方法
(57)摘要
本发明公开了一种面向工业控制系统的异
常检测系统和方法,涉及异常检测领域, 所述系
统包括: 数据采集模块、 数据预处理模块、 异常检
测模型训练模块、 阈值设定模块、 异常检测模块
和结果输出模块。 所述方法包括: 步骤1、 采集训
练数据; 步骤2、 进行数据预处理; 步骤3、 学习时
间维特征; 步骤4、 学习时间序列相关性; 步骤5、
重构所述多维时间序列数据; 步骤6、 设置异常阈
值; 步骤7、 实时在线检测; 步骤8、 输 出检测结果。
本发明能够有效的对时间序列进行建模, 学习正
常序列的周期规律, 且能够 有效对异常污染的时
间序列数据进行鲁棒性建模; 采用极值定理对训
练过程中的重构误差进行学习, 自动化设定阈
值, 避免按照经验值设定的不便 。
权利要求书3页 说明书8页 附图2页
CN 115484102 A
2022.12.16
CN 115484102 A
1.一种面向工业控制系统的多维时间序列异常检测系统, 其特 征在于, 包括:
数据采集模块, 所述数据采集模块记录 工业控制系统的多维时间序列数据;
数据预处理模块, 所述数据预处理模块连接所述数据采集模块, 对采集到的所述多维
时间序列数据进行 预处理, 得到若干 批次的多维时间序列子序列;
异常检测模型训练模块, 所述异常检测模型训练模块连接所述数据预处理模块, 接收
所述若干批次的多维时间序列子序列, 构建和训练用于异常检测的神经网络模型, 称为异
常检测模型, 所述异常检测模型训练模块的输出为输入的所述多维时间序列数据的重构数
据;
阈值设定模块, 所述阈值设定模块连接所述异常检测模型训练模块, 计算所述重构数
据与输入的所述多维时间序列数据之间的误差, 称为重构误差, 以所述重构误差作为样本
数据, 采用极值定理进行 学习, 自动设定异常阈值;
异常检测模块, 将实时采集的时间序列数据经过所述数据预处理模块后, 输入到训练
好的所述异常检测模型中计算所述重构误差, 将所述重构误差作为异常分数, 比较所述异
常分数与所述异常阈值; 当所述异常分数小于所述异常阈值时, 则认为所述实时采集的时
间序列数据存在异常;
结果输出模块, 所述结果输出模块连接所述异常检测模块, 对于检测到的异常的所述
实时采集的时间序列数据, 输出异常检测结果。
2.如权利要求1所述的面向工业控制系统 的多维时间序列异常检测系统, 其特征在于,
所述实时采集的时间序列数据也由所述数据采集模块进行采集。
3.如权利要求1所述的面向工业控制系统 的多维时间序列异常检测系统, 其特征在于,
在所述数据预处理模块中, 数据预处理先采用滑动窗口技术进行分割, 再将分割后的子序
列进行分批次和归一 化的处理。
4.如权利要求1所述的面向工业控制系统 的多维时间序列异常检测系统, 其特征在于,
在所述异常检测模型训练模块中, 所述异常检测模型采用一 维卷积神经网络学习时间序列
的时序特征, 采用随机循环神经网络学习时序之间的相关性, 通过变分自编码器的思想对
输入的所述多维时间序列数据进行重构; 通过所述重构误差、 隐空间向量的后验分布和假
设先验分布的KL散度来构造损失函数; 通过优化所述损失函数进行模型训练, 当所述损失
函数达到最小时, 保存所述异常检测模型的参数。
5.如权利要求1所述的面向工业控制系统 的多维时间序列异常检测系统, 其特征在于,
在所述结果输出模块中, 所述异常检测结果包括异常发生 位置、 发生时间、 持续时间长度。
6.如权利要求1所述的面向工业控制系统 的多维时间序列异常检测方法, 其特征在于,
所述方法包括以下步骤:
步骤1、 对工业控制系 统的a个传感器和b个执行器按照预先设定的频率f连续采样, 采
样时间长度为T, 得到多维时间序列数据的样本X, 大小为X∈RN×M, 其中, N为采样数据长度,
由所述频率f和所述采样时间长度T计算得 出; M为采样数据维度, M=a+b;
步骤2、 进行数据预处理, 设置滑动时间窗口, 包括起始时间st和终止时间et; 所述滑动
时间窗口的长度为w=et‑st, 宽度为所述多维时间序列数据的所述采样数据维度M; 将所述
滑动时间窗口在所述多维时间序列数据上滑动, 直至序列数据结束; 设定每次滑动的步长
大小为s, 将所述多维时间序列数据分割成若干个采样时间长度为w、 采样数据维度为M的子权 利 要 求 书 1/3 页
2
CN 115484102 A
2序列片段x, x∈Rw×M; 当采样时间长度小于所述滑动时间窗口的长度时, 则直接将该片段作
为子序列; 选定批次大小为bs, 分割后的子序列片段分为多个大小为bs的批次, 每一批次的
子序列大小为(bs,w,M);
步骤3、 学习时间维特征, 首先, 使用若干个一维卷积神经网络对输入的所述多维时间
序列数据沿其时间维度进行一维卷积, 学习得到时序特征的低维表示z1, 然后, 对所述时序
特征的低维表示z1进行反卷积, 输出为d;
步骤4、 学习时间序列相 关性, 首先, 将d输入随机循环神经网络的变分编码网络, 学习
时间序列之间的相关性, 得到低维表示z2, 然后, 将z2经过realNVP flow得到增强的低维表
示; 所述步骤3和所述 步骤4构成变分自编码器的结构中的近似推理网络:
具体为:
其中:
f(·)和f‑1(·)代表一维卷积 操作及反卷积 操作,
表示门控循环单 元GRU;
步骤5、 重构所述多维时间序列数据;
步骤6、 设置异常阈值;
步骤7、 实时在线检测;
步骤8、 输出检测结果。
7.如权利要求6所述的面向工业控制系统 的多维时间序列异常检测方法, 其特征在于,
在所述步骤5中, 对所述时序特征的所述低维表示z1进行反卷积得到解码网络的输入e, 将e
包含的时序信息作为外部输入, 输入到所述 随机循环神经网络中, 构建和训练用于异常检
测的神经网络模型, 称为异 常检测模型, 同时, 结合时间序列之间的所述低维表示z2来实现
对原始输入的所述多维时间序列数据的重构, 得到 重构数据, 可表示 为:
pθ(x,z1,z2)=pθ(x|z1,z2)pθ(z2|z1)
具体为:
其中: g(·)表示对z1进行反卷积操作, 构造损失函数来对近似模型与生成模型联合优
化;
根据所述变分自编码器的优化 函数:
的形式,
构造优化 函数为:
优化方式包括采用蒙特卡洛采样、 SGVB估计 器和重参数技巧。
8.如权利要求7所述的面向工业控制系统 的多维时间序列异常检测方法, 其特征在于,
在所述步骤6中, 计算所述重构数据与 原始输入的所述多维时间序列数据之 间的误差, 得到
一系列的重构误差er ror={er1,er2…};权 利 要 求 书 2/3 页
3
CN 115484102 A
3
专利 一种面向工业控制系统的异常检测系统和方法
文档预览
中文文档
14 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共14页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 16:41:45上传分享