1.本发明属于人工智能与数据安全技术领域,特别涉及一种工业系统公开数据保护方法和系统。
背景技术:
2.现代工业系统是一种规模庞大的、结构复杂的信息物理融合系统,其中包含着大量的数据信息,例如系统化控制参数、状态估计模型参数、工业系统实时量测数据、用户级终端数据等。以电力系统为例,大量的电力系统相关数据需要面向不同的社会群体进行公开。但另一方面,由于工业系统信息物理融合的特性,工业系统的部分关键数据在其他相关数据公开时面临泄漏或二次泄漏的风险。
3.传统的数据保护手段通常包括数据加密和数据脱敏。加密方案一般被用于保护面向特定人员的秘密数据,其高密级和强针对性的特点并不适用于公开数据。因此目前对于公开数据通常采用脱敏方法进行保护,即通过删改一些数据中的敏感信息(例如个人信息、企业运营等隐私信息)或添加一些数据噪声(例如人脸打码)来实现敏感信息的脱离。但是这些方法只能阻止外部环境对数据敏感信息的直接利用,而无法避免一些间接的、二次的技术手段获取数据中隐含的敏感信息。例如,对于工业系统数据中的网络参数,一般认为是不应公开的关键数据,一旦泄漏将可能造成严重后果,然而目前已有一些技术手段可以实现从工业系统公开数据中推断网络参数。此时传统的脱敏方法就会面临两个失效问题:1.如果对原始数据进行删改或盲目加躁,会造成数据损失导致工业系统本身的一些功能如状态估计、潮流计算等产生严重错误;2.如果只隐去系统参数而不对公开数据进行处理,又会面临被推断的风险。
4.因此,需要新的数据保护方法,在确保不影响数据正常用途的同时,能够具备一定的反推断、反泄漏能力。
技术实现要素:
5.为了克服上述现有技术的缺点,本发明的目的在于提供一种工业系统公开数据保护方法和系统,结合对抗自编码器算法,使用原始公开数据训练一组对抗网络中的生成器和判别器。生成器产生与真实数据格式相同内容相似的“伪数据”,判别器用于受信方“剔除”伪数据。面向低密级对象,公开加入“伪数据”噪声的数据集,使工业系统关键参数免于被推断的风险;面向高密级受信方,则给予判别器对加噪的公开数据集进行去噪处理,保证了工业系统相关数据在特定用途的正常利用,实现了公开数据分级保护的目的。其优点在于:相比于脱敏方法,其加躁策略是基于规则的(生成网络产生的);应用于工业系统数据,可以通过加入先验信息提高“噪声”与真实数据的相似程度,且该程度可控。本发明通过基于深度学习训练的生成规则实现了可控的、可逆的数据加噪方法,不仅保证了工业系统公开数据的安全性,也确保了公开数据的可用性,具有数据易获取、模型训练简单、覆盖用户广、后期部署易,系统运行计算消耗低等优点,使得本技术与传统的方法和系统相比,具有
明显优势。
6.为了实现上述目的,本发明采用的技术方案是:
7.一种工业系统公开数据保护方法,其特征在于,包括:
8.步骤1,以多组列向量的格式获取需保护的工业系统公开数据的多组历史数据{x};
9.步骤2,基于工业系统相关先验知识确定步骤1中选取的公开数据的生成机理模型及对应的隐含关键参数;
10.步骤3,基于自编码器构建用于生成步骤1中选取的公开数据的伪数据的生成网络g,并根据步骤2获取的生成机理模型和隐含关键参数的数学特性,确定生成网络g中编码器层的激活函数及部分网络结构参数设置,然后输入步骤1获取的数据集{x}训练该自编码器,直至解码器层输出原始数据的重建结果,且满足训练终止条件。具体地:
11.步骤3.1,根据生成机理模型确定合适的自编码器网络激活函数fa;
12.步骤3.2,基于隐含关键参数数学特性设置自编码器网络结构参数{α},并设置网络训练参数{β},选取适当的网络损失函数f
l
;
13.步骤3.3,将原始数据集{x1,x2,...,xm}输入自编码器网络g进行训练,直至样本的总误差值小于设置的阈值或达到最大训练次数,同时对网络训练参数{β}进行调整已获取更优的训练结果,其中m是原始数据的组数;
14.步骤4,根据步骤2获取的先验知识选取适当的概率分布p(z
′
)生成伪编码z
′
,然后基于对抗网络训练框架,以步骤3中由真实数据输入生成网络g编码层所得真实编码z为负样本、伪编码z
′
为正样本训练判别网络d,并同步训练生成网络g以使真实编码z的概率分布更接近预定义的分布p(z
′
)。具体地:
15.步骤4.1,基于公开数据的生成机理,选取适当的伪编码概率分布p(z
′
);
16.步骤4.2,通过采样在概率分布p(z
′
)上生成足量的伪编码向量集{z
′
};
17.步骤4.3,构建判别网络d,设置网络的结构参数{αd}和训练参数{βd},以伪编码向量集{z
′
}为正样本,以步骤3训练所得生成网络g的编码层输出的真实数据的编码集{z}为负样本,训练判别网络d,直至总误差值小于设置的阈值或达到最大训练次数;
18.步骤4.4,在步骤4.3中训练判别网络d的同时,基于与判别网络训练误差相关的损失函数f
gd
同步训练生成网络g的网络参数,以使生成网络编码器层输出更接近伪编码的真实数据编码;
19.步骤5,在步骤3、4中生成网络g和判别网络d训练结束后,使用生成网络g的产生足量伪数据集{x
′
},然后以混杂比例γ将伪数据加入真实数据集,获得加噪处理后的公开数据集。具体地:
20.步骤5.1,在概率分布p(z
′
)上重新采样生成足量的伪编码{z
″
};
21.步骤5.2,将伪编码集{z
″
}输入训练完成的生成网络g的解码层,输出伪数据集{x
′
};
22.步骤5.3,设混杂比例为γ,则将γm组伪数据加入真实数据集,获得加噪处理后的公开数据集;
23.步骤6,以安全分级策略将不同密级数据集向对应对象进行公开。具体地:
24.步骤6.1,将步骤5中加噪处理后的公开数据集向低密级对象进行直接公开;
25.步骤6.2,将步骤4中训练完成的判别网络d的网络模型部署于高密级对象的数据接收端,并将加噪处理后的公开数据集进行公开;
26.步骤6.3,使用判别器d对公开数据集做去噪处理,从而获得面向高密级对象的完整真实数据集。
27.进一步,本发明中需保护的工业系统公开数据是指工业系统中待公开的低密级数据如电力系统中的发电、用电、输电、电价部分相关数据等。具体的,需保护的数据是指该类数据受一部分数学模型的约束,且攻击者可能基于这部分模型或数据进行推断、反演等计算,从而获取一些不可公开的高密级数据。多组历史数据{x}是指取该公开数据一段时间内的多组数据断面,每组数据以n维列向量形式储存(n由该类数据自身性质决定),从而形成的用于模型训练的原始数据集。
28.进一步,步骤2中提到的数据生成机理模型是指根据产生该类公开数据的物理模型及相应物理约束建立的数学模型,决定了数据的结构和数学性质,可用做构建伪数据生成器的先验知识;对应的隐含关键参数是指某些数学模型中与该类数据有直接关系的,存在被推断、反演估计等计算方法非法获取的可能的一些高密级工业系统参数。
29.进一步,步骤3中提到的自编码器是一种用于学习输入数据编码表示的一种人工神经网络算法。通过具有输入-隐层-输出结构的深度学习网络,自编码器可以实现输入数据的复制输出,同时隐层输出的编码可以看作输入数据的一种低维高效表示,从而可以通过更多编码产生原始数据的相似数据。因此自编码器也经常被作为一种生成模型使用。
30.进一步,步骤3.2中提到的网络结构参数是指人工神经网络的构建方案,具体包括网络层级深度的设置(主要指隐层数),各层神经元节点的数量(本发明中神经网络主要用于生成模型,故输入层与输出层节点数均与原始数据维数相同;隐层按经验设置,一般比输入层节点数少,起到编码的效果),神经元激活函数设置等。网络训练参数则是指人工神经网络训练过程中的一系列设置值,如节点的初始权值、批处理大小(batch size)、数据集迭代次数(epoch)、损失函数(loss function),允许误差(满足条件时迭代终止)等。
31.进一步,步骤4中提到的对抗网络训练框架是指对抗生成网络(gan,generative adversarial network),一种用于训练能够生成和真实样本极为相似的伪样本的生成网络以及可以判别原始样本与伪样本的判别网络的人工神经网络训练框架。通过生成网络与判别网络的对抗训练,生成网络尽可能生成足以骗过判别网络的伪样本,而判别网络则尽可能分辨出真实样本与伪样本。
32.本发明还提供了一种工业系统公开数据保护系统,包括数据获取模块、模型训练模块、噪声混杂模块、噪声筛除模块四个模块,可实现公开数据的分级保护,通过加噪和去噪策略实现对不同密级对象的数据公开,其特征在于,包括:
33.数据获取模块,从工业系统数据管理中心获取需保护的工业系统公开数据的多组历史数据{x},从预设定的概率分布p(z
′
)生成足量伪编码;
34.模型训练模块,基于自编码器构建生成网络g,输入多组历史数据{x}训练该网络输出原始数据重建结果;然后构建神经网络d作为判别网络,基于p(z
′
)生成的伪编码和生成网络g产生的真实编码,使用对抗网络框架协同训练生成网络g与判别网络d,使得生成网络g编码层输出的真实编码近似服从概率分布p(z
′
)的同时判别网络d可以实现真实编码与伪编码的判别;
35.噪声混杂模块,使用预先设定的概率分布p(z
′
)生成足量的伪编码,然后通过生成网络g解码层产生伪数据,以比例系数γ与原始数据进行混杂,产生加噪后的公开数据集;
36.噪声筛除模块,使用判别网络d对加噪数据集进行判别,筛除伪数据,从而获得面向高密级对象的完整真实数据集。
37.与现有技术相比,本发明的有益效果是:
38.1.在建立数据加噪模型的过程中,计算消耗主要集中在前期训练生成网络及判别网络过程中,实际后期使用过程中用于数据加噪和去噪的计算资源消耗远低于传统方法。
39.2.训练完成后的系统模型结构简单,体量较小,较易实现轻量化的应用级部署。
40.3.通过一次训练产生模型完成对公开数据的分级别保护,且实现数据的可控化加噪与去噪还原。
附图说明
41.图1是本发明的基于工业系统公开数据保护方法框图。
42.图2是本发明的工业系统公开数据保护系统框架图。
具体实施方式
43.下面结合附图和实施例详细说明本发明的实施方式。
44.本发明中的工业系统公开数据保护方法,具体包括数据获取过程、模型训练过程、噪声混杂过程、噪声筛除过程,可实现公开数据的分级保护,通过加噪和去噪策略实现对不同密级对象的数据公开。图1是本发明的工业系统公开数据保护方法框图。本发明中的系统以框图形式予以说明。图2是本发明的工业系统公开数据保护系统框架图。
45.数据获取过程
46.表1是一个30节点电力系统的节点注入功率数据实例。表2是从一个预设10维标准正态分布p(z
′
)采样所得的20组伪编码数据实例。
47.表1
[0048][0049]
表2
[0050][0051][0052]
数据获取具体过程如下:
[0053]
(1)通过工业系统原始数据源(如本例中电力系统的发电、售电、用电各相关部门的数据中心)获取需公开的工业系统公开数据。本实例中以电力系统节点注入功率数据为例进行后续实施过程展示,该数据是一种用于实时监测和估计计算的电网量测数据,通常较易获得;
[0054]
(2)根据工业系统公开数据的机理模型确定多维概率分布p(z
′
)的分布函数,维度应与生成网络g中的编码层一致;
[0055]
(3)基于p(z
′
)生成足量伪编码z
′
。
[0056]
模型训练过程
[0057]
基于自编码器构建生成网络g,输入多组历史数据训练该网络输出原始数据重建结果;然后构建神经网络d作为判别网络,基于p(z
′
)生成的伪编码和生成网络g产生的真实编码,使用对抗网络框架协同训练网络g与网络d,使得网络g编码层输出的真实编码近似服从分布p(z
′
)的同时网络d可以实现真实编码与伪编码的判别。具体过程如下:
[0058]
(1)基于自编码器构建用于生成该类公开数据的伪数据的自编码器网络g,根据生成机理模型确定合适的激活函数fa,并基于隐含关键参数数学特性设置自编码器网络结构参数{α}以及网络训练参数{β},选取适当的损失函数f
l
;
[0059]
(2)将原始数据集{x1,x2,...,xm}输入自编码器网络g进行训练,直至样本的总误差值小于设置的阈值或达到最大训练次数,同时对网络训练参数{β}进行调整已获取更优的训练结果;
[0060]
(3)构建判别网络d,设置网络的结构参数{αd}和训练参数{βd},以部分伪编码向量集{z
′
}为正样本,以步骤3训练所得生成网络g的编码层输出的真实数据的编码集{z}为负样本,训练判别网络d,直至总误差值小于设置的阈值或达到最大训练次数;
[0061]
(4)在训练判别网络d的同时,基于与判别网络训练误差相关的损失函数f
gd
同步训练生成网络g的网络参数,以使生成网络编码器层输出更接近伪编码的真实数据编码。
[0062]
噪声混杂过程
[0063]
用预先设定的概率分布p(z
′
)生成足量的伪编码,然后通过生成网络g解码层产生伪数据,以比例系数γ与原始数据进行混杂,产生加噪后的公开数据集。具体实施过程如下:
[0064]
(1)获取概率分布p(z
′
)上采样生成的足量伪编码中的另一部分数据集{z
″
};
[0065]
(2)将伪编码集{z
″
}输入训练完成的生成网络g的解码层,输出伪数据集{x
′
};
[0066]
(3)设混杂比例为γ,则将γm组伪数据加入真实数据集(m为真实数据集组数),获得加噪处理后的公开数据集。
[0067]
表3是以比例系数为0.5加噪后的混杂数据实例,序号11-20均为伪数据。
[0068]
表3
[0069][0070]
可以看出其中混杂的伪数据与真实数据的数值分布近似,不存在人工筛选的可行性。同时,数据获得者在不具备其他可靠的同源工业系统相关数据的前提下也无法通过状态估计、错误辨识等技术方法对噪声数据进行剔除。
[0071]
噪声筛除过程
[0072]
使用判别网络d对加噪数据集进行判别,筛除伪数据,从而获得面向高密级对象的完整真实数据集。具体实施过程如下:
[0073]
(1)将模型训练过程中训练完成的判别网络d的网络模型部署于高密级对象的数据接收端,并给予加噪数据集;
[0074]
(2)使用判别器d对公开数据集做去噪处理,从而获得面向高密级对象的完整真实数据集。
[0075]
表4是将表3中数据集序号打乱,然后经判别网络去噪判别后的混杂数据集实例。
[0076]
表4
[0077][0078]
其中普通字体列为正确判别的真实数据,加粗字体(不可以颜色区分,建议以斜体区分)列为正确判别的伪数据,斜体列为错判为真实数据的伪数据。在本例的测试实验中,去噪数据与真实数据结果的相对误差低于0.15%,即每一千组注入功率量测公开数据中,真实数据因误判而丢失或伪数据被误判为真实数据的组数不超过两组。这一误差在实际的应用场景中是可忽略的。
技术特征:
1.一种工业系统公开数据保护方法,其特征在于,包括如下步骤:步骤1,以多组列向量的格式获取需保护的工业系统公开数据的多组历史数据{x};步骤2,基于工业系统相关先验知识确定步骤1中选取的公开数据的生成机理模型及对应的隐含关键参数;步骤3,基于自编码器构建用于生成步骤1中选取的公开数据的伪数据的生成网络g,并根据步骤2获取的生成机理模型和隐含关键参数的数学特性,确定生成网络g中编码器层的激活函数及部分网络结构参数设置,然后输入步骤1获取的数据集{x}训练该自编码器,直至解码器层输出原始数据的重建结果,且满足训练终止条件;步骤4,根据步骤2获取的先验知识选取概率分布p(z
′
)生成伪编码z
′
,然后基于对抗网络训练框架,以步骤3中由真实数据输入生成网络g编码层所得真实编码z为负样本、伪编码z
′
为正样本训练判别网络d,并同步训练生成网络g以使真实编码z的概率分布更接近预定义的分布p(z
′
);步骤5,在生成网络g和判别网络d训练结束后,使用生成网络g产生足量伪数据集{x
′
},然后以混杂比例γ将伪数据加入真实数据集,获得加噪处理后的公开数据集;步骤6,以安全分级策略将不同密级数据集向对应对象进行公开。2.根据权利要求1所述工业系统公开数据保护方法,其特征在于,所述步骤1中,需保护的工业系统公开数据是指工业系统中待公开的低密级数据,该类数据受一部分数学模型的约束,且存在可能使得攻击者基于这部分模型或数据获取一些不可公开的高密级数据。3.根据权利要求1所述工业系统公开数据保护方法,其特征在于,所述步骤1中,所述多组历史数据{x}是指取该公开数据一段时间内的多组数据断面,每组数据以n维列向量形式储存,从而形成的用于模型训练的原始数据集。4.根据权利要求1所述工业系统公开数据保护方法,其特征在于,所述步骤2中,数据的生成机理模型是指根据产生公开数据的物理模型及相应物理约束建立的数学模型,决定了数据的结构和数学性质,能够用做构建伪数据生成器的先验知识;对应的隐含关键参数是指数学模型中与数据有直接关系的,存在被非法获取可能的一些高密级工业系统参数。5.根据权利要求1所述工业系统公开数据保护方法,其特征在于,所述步骤3具体包括:步骤3.1,根据生成机理模型确定自编码器网络激活函数f
a
;步骤3.2,基于隐含关键参数数学特性设置自编码器网络结构参数{α},并设置网络训练参数{β},选取网络损失函数f
l
;步骤3.3,将原始数据集{x}={x1,x2,...,x
m
}输入生成网络g进行训练,直至样本的总误差值小于设置的阈值或达到最大训练次数,同时对网络训练参数{β}进行调整已获取更优的训练结果,其中m是原始数据的组数。6.根据权利要求1所述工业系统公开数据保护方法,其特征在于,所述步骤4具体包括:步骤4.1,基于公开数据的生成机理,选取伪编码概率分布p(z
′
);步骤4.2,通过采样在概率分布p(z
′
)上生成足量的伪编码向量集{z
′
};步骤4.3,构建判别网络d,设置网络的初始化结构参数{α
d
}和训练参数{β
d
},以伪编码向量集{z
′
}为正样本,以步骤3训练所得生成网络g的编码层输出的真实数据的编码集{z}为负样本,训练判别网络d,直至总误差值小于设置的阈值或达到最大训练次数;步骤4.4,在步骤4.3中训练判别网络d的同时,基于与判别网络训练误差相关的损失函
数f
gd
同步训练生成网络g的网络参数,以使生成网络编码器层输出更接近伪编码的真实数据编码。7.根据权利要求1所述工业系统公开数据保护方法,其特征在于,所述步骤5具体包括:步骤5.1,在概率分布p(z
′
)上重新采样生成足量的伪编码{z
″
};步骤5.2,将伪编码集{z
″
}输入训练完成的生成网络g的解码层,输出伪数据集{x
′
};步骤5.3,设混杂比例为γ,则将γm组伪数据加入真实数据集,获得加噪处理后的公开数据集,其中m是原始数据的组数。8.根据权利要求7所述工业系统公开数据保护方法,其特征在于,所述混杂比例γ决定了加噪数据集中伪数据和真实数据的比例,该值取(0,1)范围内的小数,且取值越大,数据集抗推断、反演攻击的能力越强,但还原真实数据集的难度更高。9.根据权利要求1所述工业系统公开数据保护方法,其特征在于,所述步骤6具体包括:步骤6.1,将步骤5中加噪处理后的公开数据集向低密级对象进行直接公开;步骤6.2,将步骤4中训练完成的判别网络d的网络模型部署于高密级对象的数据接收端,并将加噪处理后的公开数据集进行公开;步骤6.3,使用判别网络d对公开数据集做去噪处理,从而获得面向高密级对象的完整真实数据集。10.一种工业系统公开数据保护系统,其特征在于,包括:数据获取模块,从工业系统数据管理中心获取需保护的工业系统公开数据的多组历史数据{x},从预设定的概率分布p(z
′
)生成足量伪编码;模型训练模块,基于自编码器构建生成网络g,输入多组历史数据{x}训练该网络输出原始数据重建结果;然后构建神经网络作为判别网络d,基于p(z
′
)生成的伪编码和生成网络g产生的真实编码,使用对抗网络框架协同训练生成网络g与判别网络d,使得生成网络g编码层输出的真实编码近似服从概率分布p(z
′
)的同时判别网络d可以实现真实编码与伪编码的判别;噪声混杂模块,使用预先设定的概率分布p(z
′
)生成足量的伪编码,然后通过生成网络g解码层产生伪数据,以比例系数γ与原始数据进行混杂,产生加噪后的公开数据集;噪声筛除模块,使用判别网络d对加噪数据集进行判别,筛除伪数据,从而获得面向高密级对象的完整真实数据集。
技术总结
本发明公开了一种工业系统公开数据保护方法和系统,包括:工业系统公开数据的整理和选取;基于原始公开数据集训练伪数据生成器;基于原始公开数据集和对抗生成网络训练数据判别器;基于加噪策略设计针对不同密级对象的公开数据分级保护方法,并基于该方法实现公开数据不同密级对象的平等发放及后续针对高密级对象的内容恢复;本发明实现简单、计算复杂度低,通过模型的前期训练有效减少后期模型使用时的计算资源开销。本发明实现了在公开数据的同时可阻止未受信第三方通过推断反演等手段获取更高密级信息,使得被公开数据中隐含的关键信息不被泄漏,且通过差异化的分级保护方法保证了受信方对真实数据内容的完整获取。法保证了受信方对真实数据内容的完整获取。法保证了受信方对真实数据内容的完整获取。
技术研发人员:周亚东 胡博文 刘烃 吴江 管晓宏
受保护的技术使用者:西安交通大学
技术研发日:2021.12.03
技术公布日:2022/3/8