一种工业信息安全知识图谱构建方法和系统与流程

文档序号:22833844发布日期:2020-11-06 16:24阅读:250来源:国知局
一种工业信息安全知识图谱构建方法和系统与流程

本发明涉及工业信息安全领域,尤其涉及了一种工业信息安全知识图谱构建方法和系统。



背景技术:

近年来,随着大数据分析技术和自然语言处理的快速发展,知识图谱的构建技术也随之得到了快速的发展。

通过构建工业信息安全领域的知识图谱,可以将工业信息安全大数据进行融合,消除数据孤岛,将工控设备、厂商、漏洞、脚本等多项实体进行有机的结合。

现有技术中构建的工业信息安全知识图谱,其构建方式繁琐,不能够高效直观的进行工业信息安全信息的检索与查询。

专利标题:基于工业领域构建知识图谱的方法、装置及存储介质,申请号:cn201910185451.x,申请日:2019-03-12的专利申请中记载一种基于工业领域构建知识图谱的方法、装置及存储介质。其中该方法,包括:获取与工业领域相关的文本信息;基于预设的深度置信网络,识别所述文本信息中包含的命名实体,其中所述命名实体用于指示所述文本信息中包含的以名称为标识的实体;基于所述预设的深度置信网络,识别所述命名实体之间的命名实体关系;以及根据所述命名实体以及所述命名实体关系,构建基于工业领域的知识图谱。达到了基于工业领域的非结构化的文本信息,利用深度置信网络,有效的进行命名实体以及命名实体关系的识别,从而构建出适用于工业领域的知识

图谱。

现有技术中,构建的工业信息安全知识图谱,其构建方式繁琐,不能够高效直观的进行工业信息安全信息的检索与查询。



技术实现要素:

本发明针对现有技术中构建的工业信息安全知识图谱,其构建方式繁琐,不能够高效直观的进行工业信息安全信息的检索与查询的问题,提供了一种工业信息安全知识图谱构建方法和系统。

为了解决上述技术问题,本发明通过下述技术方案得以解决:

一种工业信息安全知识图谱构建方法,包括如下步骤:

信息的采集与整理,通过爬虫方式,对信息进行采集和整理;信息包括工控设备数据、工业信息安全漏洞数据、攻击较低数据、工业信息安全数据和建立工业信息安全相关的数据;

知识抽取,对采集和整理后的数据进行抽取,知识抽取包括实体抽取、关系抽取和工业信息安全事件抽取;

知识对齐,通过对抽取后的知识进行对齐;

构建知识图谱,将对齐后的知识存入数据库中构建知识图谱。

作为优选,实体抽取包括结构化数据实体抽取和非结构化数据实体抽取;

结构化数据实体抽取通过正则匹配的方式进行实体的抽取;

非结构化数据实体抽取包括模板法和/或命名实体识别法的方式进行实体的抽取。

作为优选,模板法为通过词性分析和关系关键词匹配,从语句中抽取实体的方法。

作为优选,命名实体识别法包括:

通过stanford的corenlp工具对英文文本进行处理,使用哈工大的ltp工具对中文文本进行处理,并对非结构化的设备文本、漏洞文本以及新闻文本等文本进行分词和人工标注;

通过ner工具和ltp工具对英文文本和中文文本分别进行模型的训练,从而得到中英文分开的命名实体识别模型;

使用训练好的命名实体识别模型在未标注的数据上进行分词和命名实体的识别,自动抽取一些粗粒度的实体;

获取粗粒度的实体,使用word2vec工具将实体名转化为词向量,并筛选出少量工业信息相关的实体,通过相关实体的词向量,计算其他实体的词向量与这些词向量的距离的均值,不断迭代从而从中选取相关实体。

作为优选,关系抽取包括结构化数据关系抽取和非结构化数据关系抽取;

结构化数据关系抽取包括实体间的关系抽取和部分实体的属性关系抽取;

非结构化数据关系抽取采用基于词向量卷积神经网络的抽取方式进行关系抽取。

作为优选,基于词向量卷积神经网络的抽取方式进行关系抽取的方法为,

google开源的word2vec工具将所有训练语料中的词语进行向量化处理,将每一个词汇都转化为固定长度的词向量;

使用实体及其句式结构附近的词汇的词向量作为基本特征,将这些特征组合成特征向量,并根据词语在句式结构中的位置进行非线性的加权变换,得到根据词语向量信息和词语位置信息组合生成的特征向量;

特征向量经过不同卷积核的卷积运算后会抽取到更多的特征,将最后生成的特征向量集合应用于分类器中,得到训练分类模型,从而进行关系抽取。

作为优选,工业信息安全事件抽取包括时间识别和时间关键信息抽取;

事件识别通过触发词词典进行匹配,触发词词典包括事件核心词词典和事件相关词词典;关键信息抽取依据候选属性词设有筛选机制。

作为优选,事件核心词词典的确定步骤包括:

第一步,利用词性标注方法,当一个句子中出现的事件核心词在该句中的词性为动词时,则执行第二步;

第二步,利用依存句法分析中的依存距离来判定关键词;

第三步,事件相关词词典中的词语用于协助判断句子描述工控安全事件。

作为优选,事件相关词词典包括工业信息安全事件发生的时间和地点,组织和人物相关的事件相关词词典;

时间相关词词典采用正则匹配的方法来匹配,并与命名实体识别的结果相结合来修正正则匹配的结果;

地点相关词词典采用ltp抽取句子表示地点的词语;

组织和人物相关的事件相关词词典句子中出现的与触发词相关的其他依存关系,结合词性标注和命名实体识别的结果,从中抽取出具有动宾关系和定中关系的属性集合。

作为优选,知识对齐的步骤包括,

设置近义词典;

对每个实体利用其所有属性的词向量进行线性变换,得到该实体的属性向量;

将实体的属性向量与实体的词向量进行线性变换,得到实体的特征向量;

依据实体的特征向量得到实体之间的相似度,从而依据实体之间的相似度进行对齐。

一种工业信息安全知识图谱构建系统,包括采集模块、抽取模块、对齐模块和图谱构建模块,

采集模块对工业安全信息进行采集和整理;并将采集和整理后的数据传送至知识抽取模块;

知识抽取模块,通过数据库结构对采集和整理后的数据进行抽取,包括实体抽取、关系抽取和工业信息安全事件抽取;

对齐模块,对抽取后的知识进行对齐;

图谱构建模块,将对齐后的知识存入数据库中进行构建知识图谱。

本发明由于采用了以上技术方案,具有显著的技术效果:本发明通过从大量数据中抽取出有用的知识支撑工业信息安全知识库建设;对于结构化和半结构化数据使用模板匹配的方法对实体和关系进行抽取;对于非结构化数据则利用命名实体识别技术进行实体抽取,利用基于词向量的卷积神经网络进行关系抽取,对工业信息安全事件进行抽取,最后构建工业信息安全的知识图谱,实现工业信息多源大数据的融合;为工业信息安全行业领域提供一个大数据整合的方法,便于更加高效且直观地进行工业信息安全信息的检索与查询。

附图说明

图1是本发明流程图。

图2是本发明的关系抽取结构图。

图3是本发明的知识图谱。

具体实施方式

下面结合附图与实施例对本发明作进一步详细描述。

实施例1

一种工业信息安全知识图谱构建方法,包括如下步骤:

信息的采集与整理,通过爬虫方式,对信息进行采集和整理;信息包括工控设备数据、工业信息安全漏洞数据、攻击较低数据、工业信息安全数据和建立工业信息安全相关的数据;

知识抽取,对采集和整理后的数据进行抽取,知识抽取包括实体抽取、关系抽取和工业信息安全事件抽取;

知识对齐,通过对抽取后的知识进行对齐;

构建知识图谱,将对齐后的知识存入数据库中构建知识图谱。

信息的采集与整理是知识图谱构建的基础,数据质量的好坏决定了知识图谱中知识质量的高低,同时知识图谱数据结构决定了信息抽取过程采用的方法。

通过爬虫的方式获取厂商工控设备数据,其包括厂商、设备、型号、功能等数据;工业信息安全漏洞信息通过爬取cve与cnvd两个漏洞库获得质量较高的半结构化的漏洞信息,并利用在ics-cert中获取的漏洞公告(非结构化的数据),为后续的漏洞实体的自动化抽取提供数据资源。

攻击脚本数据这算是利用与工业信息安全和攻击高相关的关键词对github上存在的大量的工控漏洞攻击脚本进行爬取,并形成一个<漏洞,脚本,链接>的三元组进行结构化存储。

工业信息安全事件数据的获取目的是将包括设备、协议、行业、漏洞等在内的信息及实体之间建立联系。利用自然语言处理的方法将网络上的一些结构化的能够完整描述若干攻击的事件的记录进行处理获取这些事件的知识。此外,将获得的事件信息存储在数据库中,作为事件抽取的重要的语料库。

实体抽取包括结构化数据实体抽取和非结构化数据实体抽取;知识图谱的schema(实体类别),然后采用自上而下的方式构建工控安全知识图谱,具体的schema设计如表1所示;

表1知识图谱schema设计表

实体之间的关系根据实体的类别分别定义,比如厂商与设备之间的关系为<生产>,设备与漏洞之间的关系为<具有>,设备与协议之间的关系为<使用>,事件与时间之间的关系为<发生>等,详细知识图谱实体关系设计表如表2所示。

表2知识图谱实体关系设计表

结构化数据实体抽取通过正则匹配的方式进行实体的抽取;

非结构化数据实体抽取包括模板法和/或命名实体识别法的方式进行实体的抽取。

模板法为通过词性分析和关系关键词匹配,从语句中抽取实体的方法。

命名实体识别法包括:

通过stanford的corenlp工具对英文文本进行处理,使用哈工大的ltp工具对中文文本进行处理,并对非结构化的设备文本、漏洞文本以及新闻文本等文本进行分词和人工标注;

通过ner工具和ltp工具对英文文本和中文文本分别进行模型的训练,从而得到中英文分开的命名实体识别模型;

使用训练好的命名实体识别模型在未标注的数据上进行分词和命名实体的识别,自动抽取一些粗粒度的实体;

获取粗粒度的实体,使用word2vec工具将实体名转化为词向量,并筛选出少量工业信息相关的实体,通过相关实体的词向量,计算其他实体的词向量与这些词向量的距离的均值,不断迭代从而从中选取相关实体。

关系抽取包括结构化数据关系抽取和非结构化数据关系抽取;

结构化数据关系抽取包括实体间的关系抽取和部分实体的属性关系抽取;

非结构化数据关系抽取采用基于词向量卷积神经网络的抽取方式进行关系抽取。

基于词向量卷积神经网络的抽取方式进行关系抽取的方法为,

google开源的word2vec工具将所有训练语料中的词语进行向量化处理,将每一个词汇都转化为固定长度的词向量;

使用实体及其句式结构附近的词汇的词向量作为基本特征,将这些特征组合成特征向量,并根据词语在句式结构中的位置进行非线性的加权变换,得到根据词语向量信息和词语位置信息组合生成的特征向量;

特征向量经过不同卷积核的卷积运算后会抽取到更多的特征,将最后生成的特征向量集合应用于分类器中,得到训练分类模型,从而进行关系抽取。

工业信息安全事件抽取包括时间识别和时间关键信息抽取;

事件识别通过触发词词典进行匹配,触发词词典包括事件核心词词典和事件相关词词典;关键信息抽取依据候选属性词设有筛选机制。

事件核心词词典的确定步骤包括:

第一步,利用词性标注方法,当一个句子中出现的事件核心词在该句中的词性为动词时,则执行第二步;

第二步,利用依存句法分析中的依存距离来判定关键词;

第三步,事件相关词词典中的词语用于协助判断句子描述工控安全事件。

事件相关词词典包括工业信息安全事件发生的时间和地点,组织和人物相关的事件相关词词典;

时间相关词词典采用正则匹配的方法来匹配,并与命名实体识别的结果相结合来修正正则匹配的结果;

地点相关词词典采用ltp抽取句子表示地点的词语;

组织和人物相关的事件相关词词典句子中出现的与触发词相关的其他依存关系,结合词性标注和命名实体识别的结果,从中抽取出具有动宾关系和定中关系的属性集合。

知识对齐的步骤包括,

设置近义词典;

对每个实体利用其所有属性的词向量进行线性变换,得到该实体的属性向量;

将实体的属性向量与实体的词向量进行线性变换,得到实体的特征向量;

依据实体的特征向量得到实体之间的相似度,从而依据实体之间的相似度进行对齐。

实施例2

在实施例1基础上,基于实施例1的方法构建的一种工业信息安全知识图谱构建系统,其包括采集模块、抽取模块、对齐模块和图谱构建模块,

采集模块对工业安全信息进行采集和整理;并将采集和整理后的数据传送至知识抽取模块;

知识抽取模块,通过数据库结构对采集和整理后的数据进行抽取,包括实体抽取、关系抽取和工业信息安全事件抽取;

对齐模块,对抽取后的知识进行对齐;

图谱构建模块,将对齐后的知识存入数据库中进行构建知识图谱。

实施例3

在实施例1基础上,在进行关键信息抽取过程中,为避免在一个句子中能够抽取出若干个相同种类的属性词的情况,增添一下筛选机制:只有当抽取出的关键词在满足以下三个条件之一的子树上时,才能判定为候选属性词:子树以触发词为根节点;子树以触发词的父节点为根节点;子树以触发词的二级父结点为根节点;

考虑抽取出的属性候选词到子树根节点的依存关系的类型,并做出如下四种限制,选取抽取出的属性候选词中与根节点依存距离最近的词语作为属性候选词组的代表:依存路径为“主谓”关系”;依存路径为“动宾关系”;依存路径为“动补—介宾关系”;依存路径为“状中—介宾关系”;

如果通过上述筛选条件仍然存在多个同类型的属性候选词,则选取距离触发词依存距离最近的属性候选词作为该工业信息安全事件的属性。

实施例4

在上述实施例基础上,本实施例利用neo4j图数据库作为可视化工具,该数据库使用独立的命令行代码对数据库中元素进行操作。对于每一个三元组中的实体,通过create命令为其在数据库中创建一个节点;对于三元组中的关系,在数据库中找到其主语和宾语后,通过match命令链接对应的两个节点。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1