CN113886529B - 一种面向网络安全领域的信息抽取方法及其系统 - Google Patents

一种面向网络安全领域的信息抽取方法及其系统 Download PDF

Info

Publication number
CN113886529B
CN113886529B CN202111235748.6A CN202111235748A CN113886529B CN 113886529 B CN113886529 B CN 113886529B CN 202111235748 A CN202111235748 A CN 202111235748A CN 113886529 B CN113886529 B CN 113886529B
Authority
CN
China
Prior art keywords
entity
network security
head
tail
entities
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.)
Active
Application number
CN202111235748.6A
Other languages
English (en)
Other versions
CN113886529A (zh
Inventor
胡岩峰
郑杰
包兴
王迪
费涛
彭晨
顾爽
闵飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Aerospace Information Research Institute
Original Assignee
Suzhou Aerospace Information Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Aerospace Information Research Institute filed Critical Suzhou Aerospace Information Research Institute
Priority to CN202111235748.6A priority Critical patent/CN113886529B/zh
Publication of CN113886529A publication Critical patent/CN113886529A/zh
Application granted granted Critical
Publication of CN113886529B publication Critical patent/CN113886529B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3346Query execution using probabilistic model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Biophysics (AREA)
  • Databases & Information Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)

Abstract

本发明提出了一种面向网络安全领域的信息抽取方法及其系统,制定面向网络安全领域的实体和关系标注规范,构建实体和关系标签体系;使用半自动化标注策略生成训练数据,所述半自动化标注策略包括使用人工进行少量标注和使用基于知识库的远程监督方法进行补充标注;训练联合神经网络模型预测实体和关系,所述联合神经网络模型结合命名实体识别和关系抽取,在检测尾实体的位置时,同时对头实体和尾实体之间的关系进行判断。本发明针对网络安全领域实现实体和关系的抽取功能。

Description

一种面向网络安全领域的信息抽取方法及其系统
技术领域
本发明涉及自然语言处理领域,具体涉及一种面向网络安全领域的实体和关系抽取方法及其系统。
背景技术
随着互联网的飞速发展,我国网络的普及率越来越高,各种类型的网络设备层出不穷。互联网给人民生活带来极大的便利,但同时也暴露出许多漏洞信息,威胁人民的生命和财产安全。为了从这些漏洞信息中查询有价值的线索,还原网络安全事件的来龙去脉,为网络安全从业人员提供分析依据,因此需要对网络安全领域中海量非结构化文本进行信息抽取。
信息抽取,具体是指命名实体识别以及关系抽取。目前,面向通用领域的命名实体识别和关系抽取技术相对成熟,有完善的标注体系。但面向网络安全领域的实体和关系抽取方法和传统的通用类型实体和关系抽取方法并不完全相同,区别主要体现在数据和方法这两个层面:在数据层面上,面向网络安全领域的数据内容相较于一般数据具有较强的领域性和专业性,并且实体和关系种类与通用类型的实体和关系类别也有较大的区别,需要根据使用场景单独设计。在方法层面上,面向网络安全领域的实体与通用类型实体相比,中英文、数字、符号混杂现象更加频繁,同一实体存在多种表述形式的问题也更加严重,需要使用特定的方法做单独分析和处理。因此,面向网络安全领域的实体和关系抽取方法无法照搬现有通用领域的信息抽取框架,需要依据具体场景具体定制。
为开展面向网络安全领域的信息抽取工作,对该领域内现有的研究工作进行调研。目前,针对网络安全领域的信息抽取,现有工作仅从模型层面上介绍了命名实体识别或者关系抽取的方法原理,缺乏一套面向网络安全领域的标注体系以及一种数据标注方法。
发明内容
本发明的目的在于提出一种面向网络安全领域的实体和关系抽取方法及其系统。
实现本发明目的的技术解决方案为:一种面向网络安全领域的信息抽取方法,包括如下步骤:
步骤1:制定面向网络安全领域的实体和关系标注规范,构建实体和关系标签体系;
步骤2:使用半自动化标注策略生成训练数据,所述半自动化标注策略包括使用人工进行少量标注和使用基于知识库的远程监督方法进行补充标注;
步骤3:训练联合神经网络模型预测实体和关系,所述联合神经网络模型结合命名实体识别和关系抽取,在检测尾实体的位置时,同时对头实体和尾实体之间的关系进行判断。
进一步的,步骤1中,面向网络安全领域的实体和关系标注规范,构建实体和关系标签体系,具体方法为:
定义实体类别标签,包括“人员”、“组织机构”、“时间”、“位置”、“漏洞”、“系统”、“IP”、“电话号码”和“电子邮箱地址”;
定义实体关系,如表1所示;
表1.实体关系对应表
Figure BDA0003317441110000021
进一步的,步骤2中,使用半自动化标注策略生成训练数据,具体方法为:
步骤2.1,标注实体和关系数据,并将标注的实体加入实体词典,所述实体词典通过预先搜集外部数据构建;
步骤2.2,利用外部开源知识库Wikidata,通过将外部知识库对齐到无标注的外部数据对语料进行标注,具体过程如下:
首先,根据实体词典从Wikidata知识库中筛选出包括在词典中的实体的属性页面。(这一步骤的意思是,实体词典中包含了若干实体,我们把这些实体在Wikidata知识库中进行搜索,得到若干个关于这些实体的属性介绍页面。)
然后,根据实体属性页面中的实体项性质,对实体的类别进行归类;根据实体属性页面中的属性值,对实体关系类别进行识别。(这一步骤的意思是,实体属性页面,是对这一实体的各个方面进行介绍。包含了性质和其他的属性信息。根据性质,我们可以推断出实体的类别标签,根据一些其他的属性,我们可以推断出实体存在的关系类别。)
最后,将得到的实体和关系在未标注的外部数据上进行匹配,若实体对同时存在于同一个句子中则匹配成功,作为一个自动标注实例。
进一步的,步骤3中,所述联合神经网络模型预测实体和关系的过程,具体分为三个子步骤:
步骤3.1:使用预训练语言模型BERT对短句进行语义编码;
步骤3.2:识别输入短句中所有候选头实体;
采用两个全连接网络分别检测头实体的开始位置和结束位置,输入为第i个字的BERT编码语义向量hi,输出分别是第i个字为头实体开始位置概率
Figure BDA0003317441110000031
和结束位置的概率
Figure BDA0003317441110000032
开始和结束位置概率的具体计算方式如下:
Figure BDA0003317441110000033
Figure BDA0003317441110000034
其中σ是sigmoid函数;Wstart、Wend、bstart、bend分别是可训练参数;Wstart和Wend矩阵的第一个维度为1,第二个维度为BERT向量的维度;
在识别头实体开始位置时,短句中所有头实体开始位置概率大于设定阈值的位置被确定为候选开始位置,同理确定候选头实体结束位置;
步骤3.3:识别尾实体以及头实体和尾实体之间的关系;
采用两个全连接网络分别检测尾实体的开始位置和结束位置,输入为第i个字的BERT编码向量hi和头实体均值向量vsub,输出分别是第i个字是尾实体开始位置概率
Figure BDA0003317441110000035
和结束位置概率
Figure BDA0003317441110000036
其中头实体均值向量vsub是将头实体开始位置和结束位置之间的BERT向量进行累加求平均,用来表示头实体语义信息,计算方法如下:
Figure BDA0003317441110000041
其中sub_start、sub_end分别是头实体的开始位置和结束位置,尾实体开始和结束位置概率计算方法如下:
Figure BDA0003317441110000042
Figure BDA0003317441110000043
其中
Figure BDA0003317441110000044
为模型可训练参数;
Figure BDA0003317441110000045
Figure BDA0003317441110000046
矩阵的第一个维度为关系类别个数,第二个维度为BERT向量维度;经过计算得到的输出概率
Figure BDA0003317441110000047
Figure BDA0003317441110000048
维度也是关系类别个数;
在识别尾实体开始位置时,针对短句中的每一个位置,若该位置上存在关系类别概率
Figure BDA0003317441110000049
中某些类别大于设定阈值的情况,则选择该位置作为尾实体的开始位置,并选择该位置上概率大于设定阈值的类别作为开始位置的关系类别;同理,得到尾实体的结束位置和关系类别,若开始位置的关系类别与结束位置的关系类别相同,则成功识别尾实体;
步骤3.4:预测头实体和尾实体的实体类型标签;
采用开始位置和结束位置之间的BERT向量进行累加求平均,具体计算方式如下:
Figure BDA00033174411100000410
psub=soft max(Wsubvsub+bsub) (7)
pobj=soft max(Wobjvobj+bobj) (8)
其中vobj是尾实体的语义表示向量;obj_start、obj_end分别是尾实体在输入短句中的开始位置和结束位置;Wsub、Wobj、bsub、bobj分别为可训练参数;Wsub和Wobj的第一维是实体标签类别个数,第二维是BERT向量维度;psub和pobj分别是头实体和尾实体的实体类型标签概率分布;
选择psub和pobj中概率最大的类别分别作为头实体和尾实体的实体标签,至此,实体和关系抽取步骤完成。
一种面向网络安全领域的信息抽取系统,基于所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,基于所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,基于所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
本发明与现有技术相比,其显著优点为:1)针对网络安全领域提出了一套信息抽取标注体系,填补现有技术空白,为网络安全领域的学术研究以及工程项目提供借鉴。2)依据网络安全领域的信息抽取标注体系,使用基于知识库的远程监督方法针对性地从知识库中筛选信息,过滤噪音数据,并结合人工标注构建网络安全领域的实体和关系标注数据,搭建了一个实体、关系联合抽取模型,针对网络安全领域实现了实体和关系的抽取功能。
附图说明
图1是面向网络安全领域的信息抽取框架流程图;
图2是命名实体和关系的联合抽取模型结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本发明面向网络安全领域的信息抽取方法,提出了一种面向网络安全领域的标注规范以及半自动化的数据标注方法,并依据该标注规范搭建了一个实体、关系联合抽取模型,使用得到的标注数据训练该信息抽取模型,针对网络安全领域实现实体和关系的抽取功能。具体步骤如下:
步骤1:制定面向网络安全领域的实体和关系标注规范。
标注规范包括实体和关系标签体系以及标注方法。标签体系根据具体应用场景自定义设计,本发明的实体类别标签定义为“人员”、“组织机构”、“时间”、“位置”、“漏洞”、“系统”、“IP”、“电话号码”和“电子邮箱地址”。其中,“人员”、“组织机构”、“时间”、“位置”标签与通用的命名实体标签一致,“漏洞”、“系统”、“IP”、“电话号码”和“电子邮箱地址”实体则是网络安全领域特有的实体标签,多为一些长难复杂的实体。“漏洞”类型实体是指软件或者协议层面上存在的缺陷,容易被攻击者能够在未授权的情况下访问或破坏。“系统”类型实体是指虚拟计算机技术、软件或者操作系统,并不包括实体武器装备系统。例如,“幽灵漏洞CVE-2017-5753”、“沙虫漏洞CVE-2014-4114”等属于“漏洞”类标签,“密码破解工具JohnThe Ripper”、“漏洞扫描器Nikto”属于“系统”类型。同样地,实体关系标签的定义参照了通用类型的关系标签,同时也增加了面向网络安全领域的特有关系,具体关系参考表1。
表1.实体关系对应表
Figure BDA0003317441110000061
步骤2:使用人工标注结合远程监督构建半自动化标注数据。
现阶段无法完全实现自动标注,虽然人工标注成本高,但是少量的人工标注必不可少。首先,人工标注实体和关系数据,并将标注的实体加入实体词典,实体词典可以预先搜集外部数据构建。接着,为了进一步扩充数据量,利用外部开源知识库Wikidata,通过将外部知识库对齐到无标注语料库,让知识库代替人对语料进行标注,从而可以低成本地获得大量有标注的数据。由于Wikidata中的数据量非常大,并且不相关的噪音数据很多,因此为了提高搜索效率和过滤噪音数据,本发明使用实体词典中的实体关键词作为筛选条件在Wikidata中搜索实体项属性页面。在实体项属性页面中,根据标注体系进一步筛选出需要的属性信息,具体做法为:
(1)根据关系类型标签筛选属性。Wikidata知识库中每一个实体项都有一个属性页面,页面中包含了各种各样的属性内容,属性内容可以映射到关系类别标签上,因此根据具体应用场景需求选择合适的属性。例如,以通用实体类型为例,“组织机构”实体项中的“拥有人”属性则可以映射到关系标签“属于”。
(2)根据实体类型标签对实体项的性质进行归类。Wikidata知识库中,每一个实体项都存在一个性质属性,性质属性可以映射到实体类型标签上,从而实现自动为实体打标签。例如,实体项性质“公司”可以映射到实体类型标签“组织机构”上。Wikidata中的实体项性质种类繁多,需要预先筛选后按照实体类型标签进行归类。
(3)将得到的实体和关系在生语料库中进行匹配。整理从Wikidata知识库得到的实体和关系,并在未标注的外部数据上进行匹配,若实体对同时存在于同一个句子中则匹配成功,作为一个自动标注实例。在匹配时,为了能够查全实体对,需要同时考虑实体的别名。
步骤3:将实例输入已经训练好的模型进行预测。
该步骤使用了一种结合命名实体识别和关系抽取的联合神经网络模型来预测实体对和关系。结合的方式是在检测尾实体的位置时,同时对头实体和尾实体之间的关系进行判断,具体的模型的结构如图2所示。模型预测实体和关系的过程具体分为三个子步骤:
步骤3.1:使用预训练语言模型BERT对短句进行语义编码。
考虑到本发明不仅有网络安全领域专有实体类别,也存在通用实体类别,因此本发明使用在外部大规模数据上进行训练后的语言模型BERT作为语义编码器,这对通用类型的实体有很好的语义表征。然后使用网络安全领域的专有数据进行训练微调,提高专有实体类型的语义表示能力。
步骤3.2:识别输入短句中所有候选头实体(Subject)。
联合模型在识别实体和关系时,首先会定位短句中的头实体位置,头实体的选择对后续尾实体的定位以及关系的分类有重要影响。本发明中,头实体识别采用两个全连接网络分别检测头实体的开始位置和结束位置。以输入短句中第i个字为例,输入为第i个字的BERT编码语义向量hi,输出分别是第i个字为头实体开始位置概率
Figure BDA0003317441110000071
和结束位置的概率
Figure BDA0003317441110000072
开始和结束位置概率的具体计算方式如下:
Figure BDA0003317441110000081
Figure BDA0003317441110000082
其中,σ是sigmoid函数,Wstart、Wend、bstart、bend分别是可训练参数,Wstart和Wend矩阵的第一个维度为1,第二个维度为BERT向量的维度。短句中所有头实体开始位置概率大于设定阈值的位置被确定为候选开始位置,同理确定候选头实体结束位置。
步骤3.3:识别尾实体(object)以及头实体和尾实体之间的关系。
与头实体识别类似,尾实体识别仍然采用了两个全连接网络分别检测尾实体的开始位置和结束位置,不同点在于尾实体识别还需要确定头实体和尾实体之间的关系类别。以短句中第i个字为例,输入为第i个字的BERT编码向量hi和头实体均值向量vsub,输出分别是第i个字是尾实体开始位置概率
Figure BDA0003317441110000083
和结束位置概率
Figure BDA0003317441110000084
其中,头实体均值向量vsub是将头实体开始位置和结束位置之间的BERT向量进行累加求平均,用来表示头实体语义信息,计算方法如下:
Figure BDA0003317441110000085
sub_start、sub_end分别时头实体的开始位置和结束位置。尾实体开始和结束位置概率计算方法如下:
Figure BDA0003317441110000086
Figure BDA0003317441110000087
Figure BDA0003317441110000088
为模型可训练参数,
Figure BDA0003317441110000089
Figure BDA00033174411100000810
矩阵的第一个维度为关系类别个数,第二个维度为BERT向量维度,经过计算得到的输出概率
Figure BDA00033174411100000811
Figure BDA00033174411100000812
维度也是关系类别个数,如图2中的尾实体识别(Object Detection)部分。在识别尾实体开始位置时,针对短句中的每一个位置,若该位置上存在关系类别概率
Figure BDA00033174411100000813
中某些类别大于设定阈值的情况,则选择该位置作为尾实体的开始位置,并选择该位置上概率大于设定阈值的类别作为开始位置的关系类别。同理,得到尾实体的结束位置和关系类别。若开始位置的关系类别与结束位置的关系类别相同,则成功识别尾实体。
步骤3.4:预测头实体和尾实体的实体类型标签。
为了方便计算,同公式3,尾实体表示方式同样采用开始位置和结束位置之间的BERT向量进行累加求平均。具体计算方式如下:
Figure BDA0003317441110000091
psub=soft max(Wsubvsub+bsub) (7)
pobj=soft max(Wobjvobj+bobj) (8)
其中vobj是尾实体的语义表示向量,obj_start、obj_end分别是尾实体在输入短句中的开始位置和结束位置。Wsub、Wobj、bsub、bobj分别为可训练参数,Wsub和Wobj的第一维是实体标签类别个数,第二维是BERT向量维度,psub和pobj分别是头实体和尾实体的实体类型标签概率分布。psub和pobj中概率最大的类别分别作为头实体和尾实体的实体标签。至此,实体和关系抽取步骤完成。
本发明还提出一种面向网络安全领域的信息抽取系统,基于所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,基于所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,基于所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
实施例
为了验证本发明方案的有效性,进行如下实施例。
输入:待提取文本“据美第五域网站2018年3月8日反映,洛克希德马丁公司近日称,该公司正在为美军研发网络战平台Henosis(又称为网络航母)”。
步骤1:确定标注体系。根据应用场景需要,确定实体标签类型为“人员”、“组织机构”、“时间”、“位置”、“漏洞”、“系统”、“IP”、“电话号码”和“电子邮箱地址”,关系标签类型为“上下级”、“亲属”、“属于”、“关联”、“侵入”、“攻击”和“防御”。
步骤2:数据标注。以“惠普公司(HPE)允许俄罗斯政府审查其ArcSight网络安全软件的源代码”为例,人工标注的格式如下:
Figure BDA0003317441110000104
以“玛丽莲·休森”这个人名为例,通过远程监督的方式,从Wikidata知识库中,获取描述该实体的属性页面。从属性页面中的实体项性质(instance of)的值为“human”推断实体类型属于“人员”,再通过属性“所属组织”(member of)的值为“洛克希德马丁公司”,得到“洛克希德马丁公司”实体类型为组织机构,“玛丽莲·休森”与“洛克希德马丁公司”之间存在“属于”关系。
步骤3:模型预测。这里以待提取文本“据美第五域网站2018年3月8日反映,洛克希德马丁公司近日称,该公司正在为美军研发网络战平台Henosis(又称为网络航母)”为例。
步骤3.1:使用BERT对短句进行语义编码,得到短句的语义向量[[-0.1316,0.5841,-1.5989,…,1.4223,-0.8906,-0.5057],[0.0568,0.7411,-0.8346,…,1.7605,-1.0221,-0.6126],…,[-0.1316,0.5841,-1.5989,…,1.4223,-0.8906,-0.5057]]。
步骤3.2:识别短句中所有候选头实体,计算得到头实体开始位置概率
Figure BDA0003317441110000101
和结束位置的概率
Figure BDA0003317441110000102
Figure BDA0003317441110000103
的数值为[4.7926e-06,1.4829e-06,1.1425e-06,9.1016e-07,3.4248e-06,1.1032e-06,9.3007e-06,2.6790e-06,…,7.4591e-07,2.5319e-06,3.2536e-06,7.2337e-07,4.7926e-06],
Figure BDA0003317441110000111
的数值为[1.2251e-05,8.5993e-07,1.2550e-06,9.0423e-06,1.7787e-06,1.1209e-05,3.1647e-06,6.2475e-06,…,6.5405e-07,5.3345e-03,1.5769e-06,8.9505e-07,1.2251e-05]。因此,根据开始和结束位置的概率分布以及设定的概率阈值0.5,选择大于概率阈值的开始和结束位置,得到候选头实体为“洛克希德马丁公司”。
步骤3.3:识别尾实体以及头实体和尾实体之间的关系。根据候选头实体“洛克希德马丁公司”和“Henosis”,计算得到头实体均值向量vsub分别为[0.3524,0.2968,-0.8862,…,0.2260,-0.2697,-0.3641]和[-0.2380,0.2958,-1.4530,…,0.3162,-0.0910,-0.3344],进一步得到尾实体开始和结束位置的概率分布
Figure BDA0003317441110000112
Figure BDA0003317441110000113
为[[[7.3756e-09,1.2368e-08,9.2279e-09,…,5.3285e-06,6.8014e-08,9.5471e-07],[5.0016e-09,1.2295e-08,8.2818e-08,…,1.8527e-06,9.4826e-08,4.0468e-07],[5.3162e-09,1.1261e-08,6.9934e-09,…,1.6888e-06,1.0152e-07,4.0089e-07],…,[8.5059e-09,1.8772e-08,1.7659e-08,…,3.5306e-06,7.9498e-08,9.0601e-07],[4.6161e-09,8.8943e-09,6.6492e-09,…,1.0838e-06,5.9052e-08,2.4088e-07],[7.3756e-09,1.2368e-08,9.2279e-09,…,5.3285e-06,6.8014e-08,9.5471e-07]],[[3.2689e-09,4.6057e-09,3.6333e-09,…,1.4396e-06,2.9442e-08,3.0584e-06],[2.2167e-09,4.5787e-09,3.2608e-09,…,5.0057e-07,4.1048e-08,1.2964e-06],[2.3562e-09,4.1936e-09,2.7535e-09,…,4.5628e-07,4.3948e-08,1.2843e-06],…,[3.7698e-09,6.9908e-09,6.9530e-09,…,9.5388e-07,3.4413e-08,2.9024e-06],[2.0459e-09,3.3122e-09,2.6180e-09,…,2.9282e-07,2.5562e-08,7.7167e-07],[3.2689e-09,4.6057e-09,3.6333e-09,…,1.4396e-06,2.9442e-08,3.0584e-06]]]和[[[4.7896e-09,6.1716e-09,8.0860e-08,…,2.0523e-05,9.4209e-08,1.1288e-06],[4.8665e-09,4.2795e-09,2.8675e-08,…,2.4676e-06,6.6118e-08,2.8225e-07],[5.1897e-09,4.5075e-09,2.6545e-08,…,2.6835e-06,9.5107e-08,3.6168e-07],…,[1.0385e-08,8.0937e-09,7.6031e-08,…,5.5338e-06,5.2835e-08,7.4612e-07],[5.2732e-09,3.7027e-09,2.7212e-08,…,2.2435e-06,6.4007e-08,2.8553e-07],[4.7896e-09,6.1716e-09,8.0861e-08,…,2.0523e-05,9.4210e-08,1.1288e-06]],[[3.6967e-09,2.6765e-09,4.4943e-08,…,4.5483e-06,5.5170e-08,6.4263e-06],[3.7560e-09,1.8559e-09,1.5938e-08,…,5.4684e-07,3.8720e-08,1.6069e-06],[4.0055e-09,1.9548e-09,1.4754e-08,…,5.9469e-07,5.5696e-08,2.0590e-06],…,[8.0153e-09,3.5101e-09,4.4.2259e-08,…,1.2264e-06,3.0941e-08,4.2477e-06],[4.0699e-09,1.6058e-09,1.5125e-08,…,4.9720e-07,3.7483e-08,1.6255e-06],[3.6967e-09,2.6765e-09,4.4944e-08,…,4.5483e-06,5.5171e-08,6.4263e-06]]]。根据尾实体的开始位置和结束位置的概率分布以及阈值0.5,选择概率大于阈值的开始和结束位置,可以得到尾实体为“Henosis”以及对应的关系“关联”。
步骤3.4:预测头实体和尾实体的实体类型标签。头实体均值向量vsub和尾实体均值向量vobj之前计算的结果分别为[0.3524,0.2968,-0.8862,…,0.2260,-0.2697,-0.3641]和[-0.2380,0.2958,-1.4530,…,0.3162,-0.0910,-0.3344]。根据头实体的均值向量,计算得到头实体的标签分值为[-0.1316,0.5841,-1.5989,…],从而得到预测的头实体标签为“组织机构”。同理,计算得到尾实体的标签分值为[-2.5372,-1.0466,0.9954,…],预测的尾实体标签为“系统”。
输出:实体:“洛克希德马丁公司”、“henosis”和“2018年3月8日”;关系:(“洛克希德马丁公司”,“henosis”,“关联”)。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (6)

1.一种面向网络安全领域的信息抽取方法,其特征在于,包括如下步骤:
步骤1:制定面向网络安全领域的实体和关系标注规范,构建实体和关系标签体系;
步骤2:使用半自动化标注策略生成训练数据,所述半自动化标注策略包括使用人工进行少量标注和使用基于知识库的远程监督方法进行补充标注;
步骤3:训练联合神经网络模型预测实体和关系,所述联合神经网络模型结合命名实体识别和关系抽取,在检测尾实体的位置时,同时对头实体和尾实体之间的关系进行判断;
步骤3中,所述联合神经网络模型预测实体和关系的过程,具体分为四个子步骤:
步骤3.1:使用预训练语言模型BERT对短句进行语义编码;
步骤3.2:识别输入短句中所有候选头实体;
采用两个全连接网络分别检测头实体的开始位置和结束位置,输入为第i个字的BERT编码语义向量hi,输出分别是第i个字为头实体开始位置概率
Figure FDA0003812179600000011
和结束位置的概率
Figure FDA0003812179600000012
开始和结束位置概率的具体计算方式如下:
Figure FDA0003812179600000013
Figure FDA0003812179600000014
其中σ是sigmoid函数;Wstart、Wend、bstart、bend分别是可训练参数;Wstart和Wend矩阵的第一个维度为1,第二个维度为BERT向量的维度;
在识别头实体开始位置时,短句中所有头实体开始位置概率大于设定阈值的位置被确定为候选开始位置,同理确定候选头实体结束位置;
步骤3.3:识别尾实体以及头实体和尾实体之间的关系;
采用两个全连接网络分别检测尾实体的开始位置和结束位置,输入为第i个字的BERT编码向量hi和头实体均值向量vsub,输出分别是第i个字是尾实体开始位置概率
Figure FDA0003812179600000015
和结束位置概率
Figure FDA0003812179600000016
其中头实体均值向量vsub是将头实体开始位置和结束位置之间的BERT向量进行累加求平均,用来表示头实体语义信息,计算方法如下:
Figure FDA0003812179600000021
其中sub_start、sub_end分别是头实体的开始位置和结束位置,尾实体开始和结束位置概率计算方法如下:
Figure FDA0003812179600000022
Figure FDA0003812179600000023
其中
Figure FDA0003812179600000024
为模型可训练参数;
Figure FDA0003812179600000025
Figure FDA0003812179600000026
矩阵的第一个维度为关系类别个数,第二个维度为BERT向量维度;经过计算得到的输出概率
Figure FDA0003812179600000027
Figure FDA0003812179600000028
维度也是关系类别个数;
在识别尾实体开始位置时,针对短句中的每一个位置,若该位置上存在关系类别概率
Figure FDA0003812179600000029
中某些类别大于设定阈值的情况,则选择该位置作为尾实体的开始位置,并选择该位置上概率大于设定阈值的类别作为开始位置的关系类别;同理,得到尾实体的结束位置和关系类别,若开始位置的关系类别与结束位置的关系类别相同,则成功识别尾实体;
步骤3.4:预测头实体和尾实体的实体类型标签;
采用开始位置和结束位置之间的BERT向量进行累加求平均,具体计算方式如下:
Figure FDA00038121796000000210
psub=softmax(Wsubvsub+bsub) (7)
pobj=softmax(Wobjvobj+bobj) (8)
其中vobj是尾实体的语义表示向量;obj_start、obj_end分别是尾实体在输入短句中的开始位置和结束位置;Wsub、Wobj、bsub、bobj分别为可训练参数;Wsub和Wobj的第一维是实体标签类别个数,第二维是BERT向量维度;psub和pobj分别是头实体和尾实体的实体类型标签概率分布;
选择psub和pobj中概率最大的类别分别作为头实体和尾实体的实体标签,至此,实体和关系抽取步骤完成。
2.根据权利要求1所述的面向网络安全领域的信息抽取方法,其特征在于,步骤1中,面向网络安全领域的实体和关系标注规范,构建实体和关系标签体系,具体方法为:
定义实体类别标签,包括“人员”、“组织机构”、“时间”、“位置”、“漏洞”、“系统”、“IP”、“电话号码”和“电子邮箱地址”;
定义实体关系,如表1所示;
表1.实体关系对应表
Figure FDA0003812179600000031
3.根据权利要求1所述的面向网络安全领域的信息抽取方法,其特征在于,步骤2中,使用半自动化标注策略生成训练数据,具体方法为:
步骤2.1,标注实体和关系数据,并将标注的实体加入实体词典,所述实体词典通过预先搜集外部数据构建;
步骤2.2,利用外部开源知识库Wikidata,通过将外部知识库对齐到无标注的外部数据对语料进行标注,具体过程如下:
首先,根据实体词典从Wikidata知识库中筛选出包括在词典中的实体的属性页面;
然后,根据实体属性页面中的实体项性质对实体的类别进行归类,根据实体属性页面中的属性值对实体关系进行识别;
最后,将得到的实体和关系在未标注的外部数据上进行匹配,若实体对同时存在于同一个句子中则匹配成功,作为一个自动标注实例。
4.一种面向网络安全领域的信息抽取系统,其特征在于,基于权利要求1-3任一项所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
5.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,基于权利要求1-3任一项所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
6.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,基于权利要求1-3任一项所述的面向网络安全领域的信息抽取方法,实现面向网络安全领域的信息抽取。
CN202111235748.6A 2021-10-22 2021-10-22 一种面向网络安全领域的信息抽取方法及其系统 Active CN113886529B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111235748.6A CN113886529B (zh) 2021-10-22 2021-10-22 一种面向网络安全领域的信息抽取方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111235748.6A CN113886529B (zh) 2021-10-22 2021-10-22 一种面向网络安全领域的信息抽取方法及其系统

Publications (2)

Publication Number Publication Date
CN113886529A CN113886529A (zh) 2022-01-04
CN113886529B true CN113886529B (zh) 2022-12-02

Family

ID=79013442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111235748.6A Active CN113886529B (zh) 2021-10-22 2021-10-22 一种面向网络安全领域的信息抽取方法及其系统

Country Status (1)

Country Link
CN (1) CN113886529B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115169351B (zh) * 2022-09-05 2023-05-09 白杨时代(北京)科技有限公司 一种安全威胁信息分层提取的方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165385A (zh) * 2018-08-29 2019-01-08 中国人民解放军国防科技大学 一种基于实体关系联合抽取模型的多三元组抽取方法
CN111476023A (zh) * 2020-05-22 2020-07-31 北京明朝万达科技股份有限公司 识别实体关系的方法及装置
CN111709241A (zh) * 2020-05-27 2020-09-25 西安交通大学 一种面向网络安全领域的命名实体识别方法
WO2020211756A1 (zh) * 2019-04-15 2020-10-22 深圳数字生命研究院 语义识别方法、装置、计算机可读存储介质和计算机设备
CN112560475A (zh) * 2020-11-16 2021-03-26 和美(深圳)信息技术股份有限公司 三元组抽取方法及系统
CN113468888A (zh) * 2021-06-25 2021-10-01 浙江华巽科技有限公司 基于神经网络的实体关系联合抽取方法与装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165385A (zh) * 2018-08-29 2019-01-08 中国人民解放军国防科技大学 一种基于实体关系联合抽取模型的多三元组抽取方法
WO2020211756A1 (zh) * 2019-04-15 2020-10-22 深圳数字生命研究院 语义识别方法、装置、计算机可读存储介质和计算机设备
CN111476023A (zh) * 2020-05-22 2020-07-31 北京明朝万达科技股份有限公司 识别实体关系的方法及装置
CN111709241A (zh) * 2020-05-27 2020-09-25 西安交通大学 一种面向网络安全领域的命名实体识别方法
CN112560475A (zh) * 2020-11-16 2021-03-26 和美(深圳)信息技术股份有限公司 三元组抽取方法及系统
CN113468888A (zh) * 2021-06-25 2021-10-01 浙江华巽科技有限公司 基于神经网络的实体关系联合抽取方法与装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Joint Learning of Entity Semantics and Relation Pattern for relation Extraction;S Zheng 等;《Joint European Conference on Machine Learning and Knowledge Discovery in Databases》;20161231;443-458 *
一种用于实体关系三元组抽取的位置辅助分;王媛 等;《数据分析与知识发现》;20210606;第5卷(第10期);71-80 *
面向裁判文书的司法知识;刘明伟 等;《信息技术》;20210625(第06期);51-57 *
面向领域知识图谱的实体关系联;付瑞 等;《华东师范大学学报(自然科学版)》;20210925(第05期);24-36 *

Also Published As

Publication number Publication date
CN113886529A (zh) 2022-01-04

Similar Documents

Publication Publication Date Title
Jacovi et al. Understanding convolutional neural networks for text classification
CN109918505B (zh) 一种基于文本处理的网络安全事件可视化方法
CN104268160A (zh) 一种基于领域词典和语义角色的评价对象抽取方法
Lee et al. CATBERT: Context-aware tiny BERT for detecting social engineering emails
AU2020272235A1 (en) Methods, systems and computer program products for implementing neural network based optimization of database search functionality
CN107943514A (zh) 一种软件文档中核心代码元素的挖掘方法及系统
CN111866004A (zh) 安全评估方法、装置、计算机系统和介质
Rokon et al. Repo2vec: A comprehensive embedding approach for determining repository similarity
CN114756675A (zh) 文本分类方法、相关设备及可读存储介质
CN113742733A (zh) 阅读理解漏洞事件触发词抽取和漏洞类型识别方法及装置
Hina et al. Email classification and forensics analysis using machine learning
Kroon et al. Beyond counting words: Assessing performance of dictionaries, supervised machine learning, and embeddings in topic and frame classification
CN112667813A (zh) 用于裁判文书的敏感身份信息的识别方法
CN112257444A (zh) 金融信息负面实体发现方法、装置、电子设备及存储介质
CN113886529B (zh) 一种面向网络安全领域的信息抽取方法及其系统
Yang et al. Semantic-preserving adversarial text attacks
CN112966507A (zh) 构建识别模型及攻击识别方法、装置、设备及存储介质
CN112784601A (zh) 关键信息提取方法、装置、电子设备和存储介质
CN112445862A (zh) 物联网设备数据集构建方法、装置、电子设备和存储介质
CN116599726A (zh) 一种基于漏洞利用网的工控安全事件识别响应方法及系统
CN115618085B (zh) 一种基于动态标签的接口数据暴露探测方法
Shalini et al. Designing A Model for Fake News Detection in Social Media Using Machine Learning Techniques
CN114707508A (zh) 基于图结构的多跳邻居信息融合的事件检测方法
CN111538893A (zh) 一种从非结构化数据中提取网络安全新词的方法
CN111159360A (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
GR01 Patent grant
GR01 Patent grant