CN116662575A - 一种知识图谱的构建方法、构建系统、设备和存储介质 - Google Patents
一种知识图谱的构建方法、构建系统、设备和存储介质 Download PDFInfo
- Publication number
- CN116662575A CN116662575A CN202310919074.4A CN202310919074A CN116662575A CN 116662575 A CN116662575 A CN 116662575A CN 202310919074 A CN202310919074 A CN 202310919074A CN 116662575 A CN116662575 A CN 116662575A
- Authority
- CN
- China
- Prior art keywords
- data
- legal
- model
- knowledge graph
- security
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000010276 construction Methods 0.000 title claims abstract description 43
- 238000012549 training Methods 0.000 claims abstract description 49
- 238000001914 filtration Methods 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 30
- 230000008569 process Effects 0.000 claims description 19
- 230000000875 corresponding effect Effects 0.000 claims description 18
- 230000011218 segmentation Effects 0.000 claims description 15
- 239000013598 vector Substances 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 11
- 230000001105 regulatory effect Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 10
- 238000011176 pooling Methods 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 10
- 230000002596 correlated effect Effects 0.000 claims description 6
- 230000006870 function Effects 0.000 claims description 5
- 206010063385 Intellectualisation Diseases 0.000 abstract description 7
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/217—Validation; Performance evaluation; Active pattern learning techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
- G06N5/025—Extracting rules from data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Evolutionary Biology (AREA)
- Biophysics (AREA)
- Probability & Statistics with Applications (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Animal Behavior & Ethology (AREA)
Abstract
本发明公开了一种知识图谱的构建方法、构建系统、设备和存储介质,涉及网络安全技术领域,构建方法包括:收集法律法规数据和安全漏洞数据,进行结构化并过滤掉停用词,得到对应的数据集;采用基于孪生网络的Sentence‑Bert模型构建AI模型;以两类数据分别作为模型输入,以两类数据是否存在关联的二分类结果作为模型输出,对AI模型进行训练;将两类数据集进行笛卡尔积运算,并将每两条数据为一组输入至AI模型中,根据输出结果构建关联数据集,以此构建法律法规与安全漏洞之间关联关系的知识图谱。通过本发明的技术方案,在数据关联上实现了自动化和智能化,提高了效率和数据质量,提高了关联性的判断准确性,给查询和推理提供了极大的便利。
Description
技术领域
本发明涉及网络安全技术领域,尤其涉及一种知识图谱的构建方法、一种知识图谱的构建系统、一种计算机设备和一种计算机可读存储介质。
背景技术
随着全球信息化的快速发展,人类对网络空间的依赖程度越来越高,随着整个虚拟网络空间的不断扩大,暴露在网络空间中的重要资产越来越多,一些非常重要的关键基础设施也暴露在互联网上,有软件的地方就可能存在漏洞。截至目前累积爆出的历史漏洞已经超过50万,每年都会有新的法律法规和条例出台。
在攻击者视角管理平台对互联网攻击面管理的过程中,需要说明每一个漏洞如果不修复会触犯哪些法律法规以及关保等保条例,就需要一个漏洞和法律法规关联数据库,目前都是通过人工的方式或者使用模糊匹配的方式去得到这个数据库,工作量相当庞大。使用模糊匹配的方式进行关键词匹配,每一个漏洞能关联到大量的法律法规条目,同时由于法律法规条文和漏洞描述都有很多专业术语,简单的模糊匹配准确率不高,最终还需要人工审核一遍,效率低下。
发明内容
针对上述问题,本发明提供了一种知识图谱的构建方法、构建系统、设备和存储介质,通过基于孪生网络的Sentence-Bert模型构建的AI模型,来识别法律法规和漏洞是否有关联,在数据关联上实现了自动化和智能化,提高了效率和数据质量,Sentence-Bert模型在安全漏洞和法律法规关联场景中相比传统的文本相似度计算方法提高了关联性的判断准确性,并利用得到的具有关联关系的法律法规数据和安全漏洞数据构建知识图谱,而且知识图谱本身具有推理性和智能化,给查询和推理提供了极大的便利。
为实现上述目的,本发明提供了一种知识图谱的构建方法,包括:
收集法律法规数据和安全漏洞数据,对所述法律法规数据和所述安全漏洞数据进行结构化并过滤掉停用词,分别得到对应的数据集;
采用基于孪生网络的Sentence-Bert模型构建AI模型;
以法律法规数据和安全漏洞数据分别作为所述AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为所述AI模型的输出,对所述AI模型进行训练;
将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的所述AI模型中,根据输出结果构建关联数据集;
根据所述关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱。
在上述技术方案中,优选地,所述对所述法律法规数据和所述安全漏洞数据进行结构化并过滤掉停用词的具体过程包括:
针对下载的文本形式的所述法律法规数据,处理得到由法律法规名称、法律法规条目和法律法规内容构成的列表形式结构化表格;
针对不同渠道下载的所述安全漏洞数据,将不同渠道的数据进行关联,得到结构化的每个安全漏洞对应的中文描述文本;
构建停用词库,并对结构化的所述法律法规数据和所述安全漏洞数据遍历过滤停用词。
在上述技术方案中,优选地,所述采用基于孪生网络的Sentence-Bert模型构建AI模型的具体过程包括:
所述AI模型采用孪生网络的结构,encoder部分使用Bert处理,Bert连接一个平均池化层,以对Bert输出的向量进行特征提取和压缩,得到两个向量和两个向量拼接的组合;
所述平均池化层接入mlp网络,使用softmax进行分类输出,损失函数采用交叉熵。
在上述技术方案中,优选地,对所述AI模型进行训练的具体过程包括:
在所述法律法规数据和所述安全漏洞数据构成的训练样本中,以有关联的作为正样本,以无关联的作为负样本,并将所述训练样本划分为训练集和验证集;
以所述训练集中的法律法规数据和安全漏洞数据作为所述AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为所述AI模型的输出,对所述AI模型进行训练,得到模型参数;
利用所述验证集对所述AI模型进行评估以防止模型过拟合,完成所述AI模型的训练。
在上述技术方案中,优选地,所述将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的所述AI模型中,根据输出结果构建关联数据集的具体过程包括:
将所述法律法规数据集和所述安全漏洞数据集进行笛卡尔积运算,得到两个数据集中每条法律法规数据与每条安全漏洞数据的有序对;
将每个所述有序对中的两条数据作为一组,输入至训练完成的所述AI模型中,根据输出结果判断当前有序对中法律法规数据与安全漏洞数据的关联性;
将所有存在关联的法律法规数据与安全漏洞数据输出,构建得到关联数据集。
在上述技术方案中,优选地,所述根据所述关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱的具体过程包括:
将所述关联数据集中存在关联关系的法律法规与安全漏洞作为知识图谱的实体,两实体间的关系为关联,存入图数据库中,形成知识图谱;
其中,法律法规实体的属性包括法律法规名称、法律法规条目和法律法规内容,安全漏洞实体的属性包括CVE编号、CNNVD编号、CNVD编号、漏洞名称、漏洞类型、漏洞描述、厂商、参考网址、危害级别、漏洞解决方案和官方补丁;
其中,所述图数据库的类型为neo4j、janusGraph、memGraph、nebulaGraph、graphDB、tigerGraph、hugeGraph或giraph。
在上述技术方案中,优选地,所述停用词库的构建方法具体包括:
针对所述法律法规数据和所述安全漏洞数据进行分词;
计算每个分词的TF-IDF值,并将TF-IDF值小于预设阈值的分词作为初步停用词;
针对所述初步停用词进行人工审核,剔除所述初步停用词中具有信息量价值的分词,得到所述停用词库。
本发明还提出一种知识图谱的构建系统,应用如上述技术方案中任一项公开的知识图谱的构建方法,包括:
数据处理模块,用于收集法律法规数据和安全漏洞数据,对所述法律法规数据和所述安全漏洞数据进行结构化并过滤掉停用词,分别得到对应的数据集;
模型构建模块,用于采用基于孪生网络的Sentence-Bert模型构建AI模型;
模型训练模块,用于以法律法规数据和安全漏洞数据分别作为所述AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为所述AI模型的输出,对所述AI模型进行训练;
数据关联模块,用于将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的所述AI模型中,根据输出结果构建关联数据集;
图谱构建模块,用于根据所述关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱。
本发明还提出一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上述技术方案中任一项公开的知识图谱的构建方法。
本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序指令,该计算机程序指令被处理器执行时实现如上述技术方案中任一项公开的知识图谱的构建方法。
与现有技术相比,本发明的有益效果为:通过基于孪生网络的Sentence-Bert模型构建的AI模型,来识别法律法规和漏洞是否有关联,在数据关联上实现了自动化和智能化,提高了效率和数据质量,Sentence-Bert模型在安全漏洞和法律法规关联场景中相比传统的文本相似度计算方法提高了关联性的判断准确性,并利用得到的具有关联关系的法律法规数据和安全漏洞数据构建知识图谱,而且知识图谱本身具有推理性和智能化,给查询和推理提供了极大的便利。
附图说明
图1为本发明一种实施例公开的知识图谱的构建方法的流程框架示意图;
图2为本发明一种实施例公开的Sentence-Bert模型的结构原理示意图;
图3为本发明一种实施例公开的知识图谱的schema示意图;
图4为本发明一种实施例公开的知识图谱的构建系统的模块示意图。
图中,各组件与附图标记之间的对应关系为:
1.数据处理模块,2.模型构建模块,3.模型训练模块,4.数据关联模块,5.图谱构建模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明做进一步的详细描述:
如图1所示,根据本发明提供的一种知识图谱的构建方法,包括:
收集法律法规数据和安全漏洞数据,对法律法规数据和安全漏洞数据进行结构化并过滤掉停用词,分别得到对应的数据集;
采用基于孪生网络的Sentence-Bert模型构建AI模型;
以法律法规数据和安全漏洞数据分别作为AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为AI模型的输出,对AI模型进行训练;
将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的AI模型中,根据输出结果构建关联数据集;
根据关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱。
在该实施方式中,通过基于孪生网络的Sentence-Bert模型构建的AI模型,来识别法律法规和漏洞是否有关联,在数据关联上实现了自动化和智能化,提高了效率和数据质量,Sentence-Bert模型在安全漏洞和法律法规关联场景中相比传统的文本相似度计算方法提高了关联性的判断准确性,并利用得到的具有关联关系的法律法规数据和安全漏洞数据构建知识图谱,而且知识图谱本身具有推理性和智能化,给查询和推理提供了极大的便利。
具体地,相关的法律法规文件可以从国家法律法规数据库下载。另外,与网络安全相关的国家标准相关文件可以从国家标准全文公开系统和全国标准信息公共服务平台下载。
漏洞数据从通用漏洞披露、国家信息安全漏洞共享平台和国家信息安全漏洞库三个官网下载。
在上述实施方式中,优选地,对法律法规数据和安全漏洞数据进行结构化并过滤掉停用词的具体过程包括:
针对下载的文本形式的法律法规数据,处理得到由法律法规名称、法律法规条目和法律法规内容构成的列表形式结构化表格;
针对不同渠道下载的安全漏洞数据,将不同渠道的数据进行关联,得到结构化的每个安全漏洞对应的中文描述文本;
构建停用词库,并对结构化的法律法规数据和安全漏洞数据遍历过滤停用词。
具体地,法律法规数据库下载时可以选择格式,可优先选择下载.docx格式。本发明是要将安全漏洞和具体的法律法规条文关联起来,为了方便处理,先使用程序将world文档转换成结构化表格,表格包含三列:法律法规名称、法律法规条目和法律法规内容。下载的漏洞数据都是结构化的,通过CVE编号将通用漏洞披露、国家信息安全漏洞共享平台和国家信息安全漏洞库三个数据库进行关联,得到CVE编号、CNVD编号、CNNVD编号、漏洞名称、厂商、漏洞简介、参考网址、危害级别、漏洞解决方案和官方补丁等字段。
在上述实施方式中,优选地,停用词库的构建方法具体包括:
针对法律法规数据和安全漏洞数据进行分词;
计算每个分词的TF-IDF值,并将TF-IDF值小于预设阈值的分词作为初步停用词;
针对初步停用词进行人工审核,剔除初步停用词中具有信息量价值的分词,得到停用词库。
具体地,停用词库是自然语言处理领域的一个重要工具,通常被用来提升文本特征的质量,或者降低文本特征的维度主要包括。在本发明中,针对所有的法律法规数据和安全漏洞数据相关的文本,分词之后,挑选出其中“信息量少”的词来构建停用词库。通过计算每个分词的TF-IDF值,然后把TF-IDF值非常低的K个词语找出来,就是一个初步停用词表。接下来,人工把初步停用词表中有一定价值的分词剔除掉,这样就得到了一个质量水平比较高(精度高)、可能没有覆盖足够多停用词(召回率较低)的停用词库。
针对上述步骤得到的安全漏洞数据和法律法规数据,按照停用词库遍历剔除停用词,得到两个新的数据集。这样能减少噪音,使得模型对相同意思、不同长度的描述文本有较好的识别能力,同时减少了词向量的空间维度,可以提高计算效率。
在上述实施方式中,优选地,采用基于孪生网络的Sentence-Bert模型构建AI模型的具体过程包括:
AI模型采用孪生网络的结构,encoder部分使用Bert处理,Bert连接一个平均池化层,以对Bert输出的向量进行特征提取和压缩,得到两个向量和两个向量拼接的组合;
平均池化层接入mlp网络,使用softmax进行分类输出,损失函数采用交叉熵。
如图2所示,在构建得到的该AI模型中,分别将法律法规数据和安全漏洞数据作为模型的两个输入,均经过Bert和最大池化层,则得到两个向量u,v,然后对u和v以及|u-v|拼接组合,接入一个mlp网络,使用softmax进行分类输出,根据输出的Softmax classifier判断该法律法规数据和安全漏洞数据是否存在关联性。
在上述实施方式中,优选地,对AI模型进行训练的具体过程包括:
在法律法规数据和安全漏洞数据构成的训练样本中,以有关联的作为正样本,以无关联的作为负样本,并将训练样本划分为训练集和验证集;
以训练集中的法律法规数据和安全漏洞数据作为AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为AI模型的输出,对AI模型进行训练,得到模型参数;
利用验证集对AI模型进行评估以防止模型过拟合,完成AI模型的训练。
在实施过程中,假设人工关联法律法规和漏洞数据得到1万条训练样本,其中5000条有关联的作为正样本,5000条没关联的作为负样本。将训练样本按照二八分成训练集和验证集。将验证集的文本按长度排序,这样同一个mini-batch的文本长度更加统一,padding填充处理时能显著减少填充的token。然后使用训练集训练完成的AI模型,将安全漏洞数据文本和法律法规数据文本分别输入Bert进行特征提取和编码,然后进行池化、分类,训练得到模型参数。最后使用验证集来评估模型,防止模型过拟合。
在上述实施方式中,优选地,将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的AI模型中,根据输出结果构建关联数据集的具体过程包括:
将法律法规数据集和安全漏洞数据集进行笛卡尔积运算,得到两个数据集中每条法律法规数据与每条安全漏洞数据的有序对;
将每个有序对中的两条数据作为一组,输入至训练完成的AI模型中,根据输出结果判断当前有序对中法律法规数据与安全漏洞数据的关联性;
将所有存在关联的法律法规数据与安全漏洞数据输出,构建得到关联数据集。
如图3所示,在上述实施方式中,优选地,根据关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱的具体过程包括:
将关联数据集中存在关联关系的法律法规与安全漏洞作为知识图谱的实体,两实体间的关系为关联,存入图数据库中,形成知识图谱;
其中,法律法规实体的属性包括法律法规名称、法律法规条目和法律法规内容,安全漏洞实体的属性包括CVE编号、CNNVD编号、CNVD编号、漏洞名称、漏洞类型、漏洞描述、厂商、参考网址、危害级别、漏洞解决方案和官方补丁;
其中,图数据库的类型为neo4j、janusGraph、memGraph、nebulaGraph、graphDB、tigerGraph、hugeGraph或giraph。
具体地,知识图谱(knowledge graph)以结构化的形式描述客观世界中概念,实体及其关系,通常以“实体-关系-实体”或者“实体-属性-属性值”三元组作为基本表达方式,存储在图数据库中的所有数据将构成庞大的实体关系网络从而形成知识图谱。在本发明的实施例中,实体有两个:法律法规和安全漏洞,两个实体间的关系为“关联”。
如图4所示,本发明还提出一种知识图谱的构建系统,应用如上述实施方式中任一项公开的知识图谱的构建方法,包括:
数据处理模块1,用于收集法律法规数据和安全漏洞数据,对法律法规数据和安全漏洞数据进行结构化并过滤掉停用词,分别得到对应的数据集;
模型构建模块2,用于采用基于孪生网络的Sentence-Bert模型构建AI模型;
模型训练模块3,用于以法律法规数据和安全漏洞数据分别作为AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为AI模型的输出,对AI模型进行训练;
数据关联模块4,用于将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的AI模型中,根据输出结果构建关联数据集;
图谱构建模块5,用于根据关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱。
根据上述实施方式公开的知识图谱的构建系统,在实施过程中,各模块所要实现的功能与上述实施方式中知识图谱的构建方法的各步骤分别对应,实施过程中参照上述方法进行实施,在此不再赘述。
根据上述实施方式公开的知识图谱的构建方法和构建系统,以下述实施例对该构建方法和构建系统的实现进行具体说明。
(1)法律法规数据收集。相关的法律法规文件可以从国家法律法规数据库(https://flk.npc.gov.cn/index.html)下载国家标准相关文件可以从国家标准全文公开系统和全国标准信息公共服务平台(https://std.samr.gov.cn/)下载。
(2)漏洞数据收集。漏洞数据从通用漏洞披露(https://cve.mitre.org/)、国家信息安全漏洞共享平台(https://www.cnvd.org.cn/)和国家信息安全漏洞库(https://www.cnnvd.org.cn/home/childHome)三个官网下载。
(3)数据预处理。国家法律法规数据库下载时可以选择格式,在此统一选择下载.docx格式。本发明是要将漏洞个具体的法律法规条文关联起来,为了方便处理,先使用程序将world文档转换成结构化表格,表格包含三列:法律法规名称、法律法规条目和法律法规内容。下载的漏洞数据都是结构化的,通过CVE编号将通用漏洞披露,国家信息安全漏洞共享平台,国家信息安全漏洞库三个数据库进行关联,得到CVE编号、CNVD编号、CNNVD编号、漏洞名称、厂商、漏洞简介、参考网址、危害级别、漏洞解决方案和官方补丁等字段。
(4)去掉停用词。停用词库是自然语言处理领域的一个重要工具,通常被用来提升文本特征的质量,或者降低文本特征的维度主要包括。在本发明中针对所有的法律法规和漏洞相关的文本,分词之后,利用停用词库对结构化的法律法规数据和安全漏洞数据遍历过滤停用词。
(5)构建AI模型。在本发明中,首先将漏洞和法律法规关联问题转化为二分类问题(有关联/无关联),在此选择Sentence-Bert模型,该模型延用了孪生网络的结构,encoder部分使用Bert来处理,然后再接一个平均池化层,对Bert输出的向量进一步做特征提取和压缩,得到u,v,然后对u和v以及|u-v|拼接组合,再接入一个mlp网络,使用softmax进行分类输出,损失函数使用交叉熵。
(6)模型训练。首先人工关联法律法规和漏洞数据得到1万条训练样本,其中5000条有关联的作为正样本,5000条没关联的作为负样本。将样本按照二八分成训练集和验证集。然后使用训练集训练第(5)步构建的模型,漏洞文本和法律法规文本分别输入Bert进行特征提取和编码,然后进行池化,分类,训练得到模型参数。最后使用验证集来评估模型,防止模型过拟合。
(7)漏洞和法律法规关联。将第(4)步得到的法律法规数据集和漏洞数据集做笛卡尔积,然后每两条数据为一组输入到第(6)步训练好的模型中,使用模型判断该条法律法规和当前漏洞是否能有关联,最终输出漏洞和法律法规关联数据集。
(8)构建知识图谱。使用相关联的法律法规条文和安全漏洞构成的关联数据集作为知识构建知识图谱。法律法规和漏洞是两个实体。两个实体间的关系为“关联”。将上述知识存入图数据库hugeGraph,形成知识图谱。
本发明还提出一种计算机设备,计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现如上述实施方式中任一项公开的知识图谱的构建方法。
本发明还提出一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,该计算机程序指令被处理器执行时实现如上述实施方式中任一项公开的知识图谱的构建方法。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种知识图谱的构建方法,其特征在于,包括:
收集法律法规数据和安全漏洞数据,对所述法律法规数据和所述安全漏洞数据进行结构化并过滤掉停用词,分别得到对应的数据集;
采用基于孪生网络的Sentence-Bert模型构建AI模型;
以法律法规数据和安全漏洞数据分别作为所述AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为所述AI模型的输出,对所述AI模型进行训练;
将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的所述AI模型中,根据输出结果构建关联数据集;
根据所述关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱。
2.根据权利要求1所述的知识图谱的构建方法,其特征在于,所述对所述法律法规数据和所述安全漏洞数据进行结构化并过滤掉停用词的具体过程包括:
针对下载的文本形式的所述法律法规数据,处理得到由法律法规名称、法律法规条目和法律法规内容构成的列表形式结构化表格;
针对不同渠道下载的所述安全漏洞数据,将不同渠道的数据进行关联,得到结构化的每个安全漏洞对应的中文描述文本;
构建停用词库,并对结构化的所述法律法规数据和所述安全漏洞数据遍历过滤停用词。
3.根据权利要求2所述的知识图谱的构建方法,其特征在于,所述采用基于孪生网络的Sentence-Bert模型构建AI模型的具体过程包括:
所述AI模型采用孪生网络的结构,encoder部分使用Bert处理,Bert连接一个平均池化层,以对Bert输出的向量进行特征提取和压缩,得到两个向量和两个向量拼接的组合;
所述平均池化层接入mlp网络,使用softmax进行分类输出,损失函数采用交叉熵。
4.根据权利要求3所述的知识图谱的构建方法,其特征在于,对所述AI模型进行训练的具体过程包括:
在所述法律法规数据和所述安全漏洞数据构成的训练样本中,以有关联的作为正样本,以无关联的作为负样本,并将所述训练样本划分为训练集和验证集;
以所述训练集中的法律法规数据和安全漏洞数据作为所述AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为所述AI模型的输出,对所述AI模型进行训练,得到模型参数;
利用所述验证集对所述AI模型进行评估以防止模型过拟合,完成所述AI模型的训练。
5.根据权利要求4所述的知识图谱的构建方法,其特征在于,所述将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的所述AI模型中,根据输出结果构建关联数据集的具体过程包括:
将所述法律法规数据集和所述安全漏洞数据集进行笛卡尔积运算,得到两个数据集中每条法律法规数据与每条安全漏洞数据的有序对;
将每个所述有序对中的两条数据作为一组,输入至训练完成的所述AI模型中,根据输出结果判断当前有序对中法律法规数据与安全漏洞数据的关联性;
将所有存在关联的法律法规数据与安全漏洞数据输出,构建得到关联数据集。
6.根据权利要求5所述的知识图谱的构建方法,其特征在于,所述根据所述关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱的具体过程包括:
将所述关联数据集中存在关联关系的法律法规与安全漏洞作为知识图谱的实体,两实体间的关系为关联,存入图数据库中,形成知识图谱;
其中,法律法规实体的属性包括法律法规名称、法律法规条目和法律法规内容,安全漏洞实体的属性包括CVE编号、CNNVD编号、CNVD编号、漏洞名称、漏洞类型、漏洞描述、厂商、参考网址、危害级别、漏洞解决方案和官方补丁;
其中,所述图数据库的类型为neo4j、janusGraph、memGraph、nebulaGraph、graphDB、tigerGraph、hugeGraph或giraph。
7.根据权利要求2所述的知识图谱的构建方法,其特征在于,所述停用词库的构建方法具体包括:
针对所述法律法规数据和所述安全漏洞数据进行分词;
计算每个分词的TF-IDF值,并将TF-IDF值小于预设阈值的分词作为初步停用词;
针对所述初步停用词进行人工审核,剔除所述初步停用词中具有信息量价值的分词,得到所述停用词库。
8.一种知识图谱的构建系统,其特征在于,应用如权利要求1至7中任一项所述的知识图谱的构建方法,包括:
数据处理模块,用于收集法律法规数据和安全漏洞数据,对所述法律法规数据和所述安全漏洞数据进行结构化并过滤掉停用词,分别得到对应的数据集;
模型构建模块,用于采用基于孪生网络的Sentence-Bert模型构建AI模型;
模型训练模块,用于以法律法规数据和安全漏洞数据分别作为所述AI模型的输入,以对应的法律法规数据和安全漏洞数据是否存在关联的二分类结果作为所述AI模型的输出,对所述AI模型进行训练;
数据关联模块,用于将法律法规数据集与安全漏洞数据集进行笛卡尔积运算,并将每两条数据作为一组输入至训练完成的所述AI模型中,根据输出结果构建关联数据集;
图谱构建模块,用于根据所述关联数据集构建法律法规与安全漏洞之间关联关系的知识图谱。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的知识图谱的构建方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,该计算机程序指令被处理器执行时实现如权利要求1至7中任一项所述的知识图谱的构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310919074.4A CN116662575A (zh) | 2023-07-26 | 2023-07-26 | 一种知识图谱的构建方法、构建系统、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310919074.4A CN116662575A (zh) | 2023-07-26 | 2023-07-26 | 一种知识图谱的构建方法、构建系统、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116662575A true CN116662575A (zh) | 2023-08-29 |
Family
ID=87722693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310919074.4A Pending CN116662575A (zh) | 2023-07-26 | 2023-07-26 | 一种知识图谱的构建方法、构建系统、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116662575A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111666419A (zh) * | 2020-05-27 | 2020-09-15 | 北京北大软件工程股份有限公司 | 法律数据的知识图谱构建方法及装置 |
CN112613038A (zh) * | 2020-11-27 | 2021-04-06 | 中山大学 | 一种基于知识图谱的安全漏洞分析方法 |
US20230035121A1 (en) * | 2021-07-22 | 2023-02-02 | Yangzhou University | Automatic event graph construction method and device for multi-source vulnerability information |
CN115987570A (zh) * | 2022-12-02 | 2023-04-18 | 国网思极网安科技(北京)有限公司 | 一种供应链管理系统的安全检测方法及装置 |
-
2023
- 2023-07-26 CN CN202310919074.4A patent/CN116662575A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111666419A (zh) * | 2020-05-27 | 2020-09-15 | 北京北大软件工程股份有限公司 | 法律数据的知识图谱构建方法及装置 |
CN112613038A (zh) * | 2020-11-27 | 2021-04-06 | 中山大学 | 一种基于知识图谱的安全漏洞分析方法 |
US20230035121A1 (en) * | 2021-07-22 | 2023-02-02 | Yangzhou University | Automatic event graph construction method and device for multi-source vulnerability information |
CN115987570A (zh) * | 2022-12-02 | 2023-04-18 | 国网思极网安科技(北京)有限公司 | 一种供应链管理系统的安全检测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287292B (zh) | 一种裁判量刑偏离度预测方法及装置 | |
CN112989348B (zh) | 攻击检测方法、模型训练方法、装置、服务器及存储介质 | |
CN110909531B (zh) | 信息安全的甄别方法、装置、设备及存储介质 | |
CN113098887A (zh) | 一种基于网站联合特征的钓鱼网站检测方法 | |
CN113315789B (zh) | 一种基于多级联合网络的Web攻击检测方法及系统 | |
CN110569350A (zh) | 法条推荐方法、设备和存储介质 | |
CN113486664A (zh) | 文本数据可视化分析方法、装置、设备及存储介质 | |
CN115174250B (zh) | 网络资产安全评估方法、装置、电子设备及存储介质 | |
CN112839014A (zh) | 建立识别异常访问者模型的方法、系统、设备及介质 | |
CN115622738A (zh) | 一种基于rbf神经网络安全应急处置系统及应急处置方法 | |
CN112822121A (zh) | 流量识别方法、流量确定方法、知识图谱建立方法 | |
CN114610838A (zh) | 文本情感分析方法、装置、设备及存储介质 | |
CN113946823A (zh) | 一种基于url基线偏离度分析的sql注入检测方法及装置 | |
CN109672586A (zh) | 一种dpi业务流量识别方法、装置与计算机可读存储介质 | |
CN113971283A (zh) | 一种基于特征的恶意应用程序检测方法及设备 | |
CN116933075A (zh) | 网络安全领域的问答模型训练方法、智能问答方法及装置 | |
CN110888977B (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
CN116662575A (zh) | 一种知识图谱的构建方法、构建系统、设备和存储介质 | |
CN113378156B (zh) | 一种基于api的恶意文件检测方法和系统 | |
CN116108847A (zh) | 知识图谱构建方法、cwe社区描述方法以及存储介质 | |
CN112468444B (zh) | 互联网域名滥用识别方法和装置,电子设备,存储介质 | |
CN114528908A (zh) | 网络请求数据分类模型训练方法、分类方法及存储介质 | |
CN115599345A (zh) | 一种基于知识图谱的应用安全需求分析推荐方法 | |
CN107622201A (zh) | 一种抗加固的Android平台克隆应用程序快速检测方法 | |
CN113158686A (zh) | 网络文化经营合规检测方法、装置、可读介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230829 |