CN115587594A - 网络安全的非结构化文本数据抽取模型训练方法及系统 - Google Patents
网络安全的非结构化文本数据抽取模型训练方法及系统 Download PDFInfo
- Publication number
- CN115587594A CN115587594A CN202211143694.5A CN202211143694A CN115587594A CN 115587594 A CN115587594 A CN 115587594A CN 202211143694 A CN202211143694 A CN 202211143694A CN 115587594 A CN115587594 A CN 115587594A
- Authority
- CN
- China
- Prior art keywords
- data
- label
- sentence
- extraction model
- training
- 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.)
- Granted
Links
Images
Classifications
-
- 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/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- 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/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Probability & Statistics with Applications (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
本发明提供网络安全的非结构化文本数据抽取模型训练方法,包括:根据网络安全的特性预定义应用于网络安全的文本标签集,文本标签集中包括若干个标签;获取非结构化文本数据形成以句子为单位的语料数据样本集;基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集;将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集;将语料数据样本集和人工标注数据集对应的数字矩阵集均对应地分为训练集和测试集;将训练集输入到利用神经网络构建的数据抽取模型中进行训练,得到收敛的数据抽取模型,并利用测试集对抽取模型进行验证。本发明训练的模型能对网络安全领域复杂的非结构化文本数据进行高效、准确的抽取。
Description
技术领域
本发明涉及网络安全领域,更具体地,涉及一种网络安全的非结构化文本数据抽取模型训练方法及系统。
背景技术
网络安全的非结构化数据抽取,即从不同来源、不同结构的网络安全数据中进行知识提取,形成结构化数据存入到知识图谱中。数据抽取技术把蕴含于网络安全信息源中的知识经过识别、理解、筛选、归纳等过程抽取出来,存储形成知识元库。目前研究较多的是自然语言文本数据抽取,已经出现了一些工具或系统用于抽取自然语言文本,数据抽取已经成为自然语言处理领域一个重要的研究分支。数据抽取的难点在于对数据源中的数据进行处理,因为知识并不是以某种现成的形式存在于数据源中的,只有对数据源中的数据经过分析、识别、理解、关联等一系列处理之后,才能发现其中有用的知识。在上述的数据抽取技术中,常用的是基于深度学习的方法对文本数据序列进行标注进而实现数据抽取,常用的神经网络模型是BERT模型,面对复杂的非结构化文本数据,传统的方法无法训练出满足抽取识别精确率以及效率要求的非结构化文本数据抽取模型,无法对复杂繁多的网络安全的非结构化数据进行有效抽取,无法达到对网络安全的非结构化数据进行进一步分析的效果。
发明内容
本发明旨在克服上述现有技术的至少一种缺陷(不足),提供一种网络安全的非结构化文本数据抽取方法及系统,用于解决现有的网络安全领域非结构化文本数据抽取模型无法对网络安全领域复杂的非结构化文本数据进行高效、准确的抽取的问题。
本发明采取的技术方案是:一种网络安全的非结构化文本数据抽取模型训练方法,包括:
根据网络安全的特性预定义应用于网络安全的文本标签集,文本标签集中包括若干个标签;
获取非结构化文本数据形成以句子为单位的语料数据样本集;
基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集;
将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集;
将语料数据样本集和人工标注数据集对应的数字矩阵集均对应地分为训练集和测试集;
将训练集输入到利用神经网络构建的数据抽取模型中进行训练,得到收敛的数据抽取模型,并利用测试集对非结构化文本数据抽取模型进行验证。
根据网络安全的特性预定义应用于网络安全的文本标签集,文本标签集中包括若干个标签;本发明充分考虑了网络安全领域主体与主体之间的关系,增加了反映主体关系的标签,在标签集中,可以包括但不仅限于用has代表“拥有”或“存在”,例如计算机存在漏洞;exploit代表“利用”,例如黑客利用SQL注入漏洞;belong代表“属于”,例如TCP洪水攻击属于DDOS攻击类型;threat代表“威胁”或“攻击”,例如黑客组织攻击邮件系统。本发明通过预定义文本标签集,从逻辑上考虑了网络安全领域的文本信息中的含义,有利于后续利用深度学习的方法,根据标签对网络安全领域的非结构化文本进行标注,进而可以训练出能充分考虑网络安全领域主体与主体之间的关系的非结构化文本数据抽取模型,进而可以对网络安全领域复杂的非结构化文本数据进行高效、准确的抽取。
获取非结构化文本数据形成以句子为单位的语料数据样本集;
进一步,所述文本标签集表示为:
CyberTag,
CyberTag = { O , BS1 , IS1 , ES1 , SS1 , BS2 , IS2 , ES2 , SS2 , has , exploit , belong , threat },
文本标签集中代表网络安全中的其他非实体,BS代表命名实体的开始位置,IS代
表命名实体的中间位置,ES代表命名实体的结尾位置,SS代表单个的命名实体;命名实体角
色标签由数字“1”和“2”表示,代表命名实体在所抽取的三元组中的先后顺序,1表示三元组
中排第一的命名实体,2表示三元组中排第二的命名实体;代表网络安全中的拥有或存
在;代表网络安全中的利用,代表网络安全中的属于,代表网络安全中的威胁
和攻击。本发明的文本标签集可以定义为
CyberTag,
CyberTag = { O , BS1 , IS1 , ES1 , SS1 , BS2 , IS2 , ES2 , SS2 , has , exploit , belong , threat },
的形式,从逻辑上对网络安全的非数据化文本的语义信息进行了定义,抓住了网络安全领域主体与主体之间的关系,在网络安全领域,主体与主体之间的关系是研究人员需要重视的,例如“计算机存在漏洞”、“黑客利用SQL注入漏洞”、“TCP洪水攻击属于DDoS攻击类型”、“黑客组织攻击邮件系统”等非数据化文本的“存在”、“利用”、“属于”“攻击”等就是主体与主体之间的关系,通过关注这些关系,利于后续利用网络安全知识图谱等技术对网络安全的技术手段等方面进行研究,达到训练一个能高效、准确地抽取主体与主体之间关系的非结构化文本数据抽取模型。
进一步,所述基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集,根据预定义的文本标签集
对语料数据样本集进行人工标注,进而可以得到人工标注数据集,有利于后续非结构化文本数据抽取模型对数据的处理。
人工标注具体包括:根据文本标签集中的标签判定语料数据样本集中的每个句子汉字、英语单词和符号所对应的标签,得到每个句子对应的标注结果;
根据每个句子对应的标注结果,每个句子中的汉字、英语单词和符号单词按照文本标签集中标签的顺序进行存储生成标签数组,其中文本标签集中的标签在句子中没有出现则在标签数组中所述标签对应的位置填上预设符号,文本标签集中的标签O对应的汉字和/或英语单词在标签数组中标签O对应的位置填上所述预设符号;对句子中的汉字、英语单词和符号按照标签的顺序进行存储,标注预设符号,将非结构化文本数据转化成了非结构化文本数据抽取模型可以处理的标签数据。对文本标签集中的标签在句子中没有出现则在标签数组中所述标签对应的位置填上预设符号,可以节省存储空间,同时有利于快速生成标签数组,建立汉字、英语单词和符号与标签的关系。
语料数据样本集中句子对应的标签数组组成人工标注数据集。组成人工标注数据集后可以达到形成可供非结构化文本数据抽取模型处理的数据的效果。
进一步,所述将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集,具体包括:
初始化步骤:
设置语料数据样本集的最大句子长度,设置句子列表DataList、
LabelList、AttMaskList、TokenTypeList均为空序列;通过设置最大句子长度可以避免句
子过长,影响非结构化文本数据抽取模型的处理效率,本方案初始化阶段使最大句子长度,在整个预处理阶段,最大句子长度会动态发生变化调整,实现自动化初始化数字矩
阵集的效果。设置句子列表DataList、LabelList、AttMaskList、TokenTypeList均为空序
列,初始化建立了空序列,用于自动化存储数据。
根据文本标签集预定义对应的标签字典LabDic,所述标签字典LabDic将文本标签集中的每个标签映射成对应的数字;所述标签字典LabDic增加“[CLS]”和“[SEP]”两个标签和对应的数字;通过预定义对应的标签字典,将标签转化为数字的形式,进而使非结构化文本数据抽取模型可以处理。
读取步骤:
读取语料数据样本集CyberData.txt中的一个句子和所述一个句子在人工标注数
据集中对应的标注数据,设读取的句子,表示句子中的汉字或英语
单词或符号,n表示句子中的汉字或英语单词或符号的总数,设句子对应的标注数据,表示标签;
数字化步骤:
利用中文词字典中汉字、英语单词、符号对应的ID,对句子按逐个汉字、英语单
词、符号进行分割,将分割后的汉字、英语单词、符号转换成中文词库字典中的ID,得到数组 , K是分割后字符的数量,表示中文词库字典中的
ID值;
数字化步骤通过字典使非结构化文本数据转化成模型可以处理的数字。
矩阵组建步骤:
判断步骤:判断是否完成语料数据样本集的最后一个句子的处理,若不是则对下一个句子循环执行读取步骤、数字化步骤和矩阵组件步骤,若是则执行数据补齐步骤;矩阵组建步骤通过判断和更新规则自动化处理句子,实现矩阵的组建。
数据补齐步骤:
遍历,如果长度小于,则在尾部用整数‘0’补
齐,使得的长度等于,对应的标签用‘-1’补齐,对应的补
‘0’,对应的补‘-1’,使得长度均等于。通过统一的长度,有利于
后续非结构化文本数据抽取模型的抽取效率。
进一步,所述利用神经网络构建的数据抽取模型包括:顺次连接的BERT层、BiGRU层和CRF层;
所述将训练集输入到利用神经网络构建的数据抽取模型中进行训练,得到收敛的数据抽取模型,并利用测试集对抽取模型进行验证,具体包括:
训练集输入到BERT层进行行字嵌入,将句子中的汉字、英语单词和符号转化成向量,并对转化后的向量进行特征提取,输出BERT层特征矩阵;
BiGRU层对所述BERT层特征矩阵进行特征提取,得到每个汉字、英语单词和符号对各类标签的非归一化概率分布,并根据权重调整BiGRU层的隐藏状态,输出BiGRU层特征向量;
所述CRF层根据所述BiGRU层特征向量和人工标签数组进行训练,求解所述数据抽取模型最优参数,得到收敛后的数据抽取模型;根据自动化标签数组和人工标签数组计算CRF层的损失函数值,按照最小化损失函数原则,通过反向传播结合梯度下降,求解所述数据抽取模型最优参数,得到收敛后的数据抽取模型。本发明结合BERT层的语义表示能力、BiGRU层对上下文的理解能力以及CRF层对状态序列之间联系的学习能力训练出能对复杂文本数据进行高效并精准抽取的非结构化文本数据抽取模型。
进一步,所述BiGRU层特征向量在输入CRF层之前还进行如下处理:
其中,表示第个字符不同特征所对应的注意力分数,表示BiGRU层特征向量,
为第个字符的隐藏层状态,是激活函数,是预设的权重系数矩阵, 表示随机初始
化的注意力矩阵,是偏移向量;表示第i个字符的注意力权重,是注意力向量,是
BiGRU层中当前输入对应的句子的字符数;表示BiGRU层特征向量与注意力权重值合并
计算得到考虑权重后的隐藏层状态值;
进一步,所述CRF层根据所述BiGRU层特征向量和人工标签数组进行训练,求解所述数据抽取模型最优参数,得到收敛后的数据抽取模型,具体包括:
其中是概率矩阵P中的值,表示第i个字符预测为标签的发射概率;是转
移矩阵的值,表示标签转移到标签的转移概率,;k句子中汉字、英语单
词和符号的总数,表示输入句子序列W的标签序列为l的分数,等于各个位置的发射
概率和转移概率之和;
在进行CRF层训练时,目标是最小化损失函数,采用负对数似然函数作为损失函数,如公式(9)所示:
在训练过程中,按照最小化损失函数原则,通过反向传播结合梯度下降,求解数据模型最优参数。在模型的测试和使用过程,采用Viterbi算法求动态规划的分数最大标注序列,公式如下:
本发明还提供一种网络安全的非结构化文本数据抽取方法,包括:
获取待处理的非结构化数据,将所述非结构化文本数据进行处理形成以句子为单位的语料数据;
基于文本标签集对所述语料数据进行人工标注得到对应的人工标注数据;
将所述语料数据和对应的人工标注数据进行预处理分别转化成对应的数字矩阵;
将转化得到的数字矩阵输入到收敛的非结构化文本数据抽取模型中,输出得到所述非结构化文本数据对应的自动化标注数据。
通过利用收敛的非结构化文本数据抽取模型,对非结构化文本数据进行处理,达到高效、准确对非结构化文本数据进行抽取的技术效果。
与现有技术相比,本发明的有益效果为:
(1)高效、准确对非结构化文本数据进行抽取。
(2)从逻辑上考虑了网络安全领域的文本信息中的含义,考虑主体与主体的关系,可以更有效地标注非结构化文本数据的信息。
(3)结合BERT层的语义表示能力、BiGRU层对上下文的理解能力以及CRF层对状态序列之间联系的学习能力训练出能对复杂文本数据进行高效并精准抽取的非结构化文本数据抽取模型。
附图说明
图1为本发明实施的方法流程图。
图2为本发明的非结构化文本数据抽取模型的结构示意图。
图3为本发明的BiGRU层神经网络结构图。
图4为本发明的网络安全的非结构化文本数据抽取方法的流程图。
具体实施方式
本发明附图仅用于示例性说明,不能理解为对本发明的限制。为了更好说明以下实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
实施例1
如图1所示,本实施例提供一种网络安全的非结构化文本数据抽取模型训练方法,包括:
S1、根据网络安全的特性预定义应用于网络安全的文本标签集,文本标签集中包括若干个标签;在现有技术中,使用的标签集通常只考虑了网络安全领域的名词不同,本发明充分考虑了网络安全领域主体与主体之间的关系,增加了反映主体关系的标签,在标签集中,可以包括但不仅限于用has代表“拥有”或“存在”,例如计算机存在漏洞;exploit代表“利用”,例如黑客利用SQL注入漏洞;belong代表“属于”,例如TCP洪水攻击属于DDOS攻击类型;threat代表“威胁”或“攻击”,例如黑客组织攻击邮件系统。本发明通过预定义文本标签集,从逻辑上考虑了网络安全领域的文本信息中的含义,有利于后续利用深度学习的方法,根据标签对网络安全领域的非结构化文本进行标注,进而可以训练出能充分考虑网络安全领域主体与主体之间的关系的非结构化文本数据抽取模型,进而可以对网络安全领域复杂的非结构化文本数据进行高效、准确的抽取。
优选的,所述文本标签集表示为:
CyberTag,
CyberTag = { O , BS1 , IS1 , ES1 , SS1 , BS2 , IS2 , ES2 , SS2 , has , exploit , belong , threat },
文本标签集中O代表网络安全中的其他非实体,BS代表命名实体的开始位置,IS代
表命名实体的中间位置,ES代表命名实体的结尾位置,SS代表单个的命名实体;命名实体角
色标签由数字“1”和“2”表示,代表命名实体在所抽取的三元组中的先后顺序,1表示三元组
中排第一的命名实体,2表示三元组中排第二的命名实体;代表网络安全中的拥有或存在;代表网络安全中的利用,代表网络安全中的属于,代表网络安全中的威
胁和攻击。
与传统的标签集只考虑名词不同,本发明充分考虑了网络安全领域主体与主体之间的关系,增加了反映主体关系的标签。在标签集中,has代表拥有或存在,例如计算机存在漏洞;exploit代表利用,例如黑客利用SQL注入漏洞;belong代表属于,例如TCP洪水攻击属于DDoS攻击类型;threat代表威胁和攻击,例如黑客组织攻击邮件系统。
S2、获取非结构化文本数据形成以句子为单位的语料数据样本集;通过获取非结构化文本数据形成以句子为单位的语料数据样本集,为本发明的非结构化文本数据抽取模型提供训练和验证的样本集,以句子为单位,有利于在模型的训练过程中,提高训练的效率。
S3、基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集;根据预定义的网络安全文本标签集,对语料数据样本集进行人工标注,具体为:以句子为单位,采用标签集中的标签对语料数据中的每个句子的汉字、英语单词和符号进行标注,生成标注数据,语料数据中的句子可以通过编号在标注数据中找到对应的句子标注。本发明可以通过人工标注限定字数,避免语料数据过大,影响非结构化文本数据抽取模型的处理效率,进而提高训练的效率。通过对语料数据样本集进行人工标注,按单词或汉字的位置进行标注,便于后续非结构化文本数据抽取模型的处理;对非实体进行排除,减少冗余数据;当语料数据样本集的某个句子中没有出现标签集的标签类型的汉字或单词时,对所述汉字或单词进行留空的标注。经过人工标注得到对应的人工标注数据集,有利于非结构化文本数据抽取模型的训练和验证,进而得到对网络安全领域复杂的非结构化文本数据进行高效、准确的抽取的非结构化文本数据抽取模型。
优选的,所述基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集,具体包括:
根据文本标签集中的标签判定语料数据样本集中的每个句子的汉字、英语单词和符号所对应的标签,得到每个句子对应的标注结果;
根据每个句子对应的标注结果,每个句子中的汉字、英语单词和符号按照文本标签集中标签的顺序进行存储生成标签数组,其中文本标签集中的标签在句子中没有出现则在标签数组中所述标签对应的位置填上预设符号,文本标签集中的标签O对应的汉字和/或英语单词在标签数组中标签O对应的位置填上所述预设符号;
本实施例通过网络安全内容相关的互联网网站、论坛获取网页HTML页面数据,提取非结构化文本数据,形成由4000个句子组成的语料数据,命名为CyberData.txt,在CyberData.txt中每个句子有唯一编号SNum;接着以句子为单位,采用CyberTag标签集中的标签对语料数据中的每个句子的汉字、英语单词和符号进行标注,生成标注数据,命名为CyberLabel.txt。语料数据中的句子通过编号SNum在标注数据找到对应的句子标注。例如,一个语料句子“黑客已经开始利用MicrosoftTeams”,进行人工标注后得到的标注数据如下表1所示:
表1
在CyberData.txt中,每个句子按照“<SNum>句子文本</SNum>”的格式进行存储。为避免由于少量句子超长,影响数据抽取模型的处理效率,在人工标志阶段本发明限定每个句子的汉字、英语单词和符号数量不超过500个,如果超过500个,人工将其划分为两个句子。CyberData.txt中文本存储如下:
<DOC0001>黑客已经开始利用MicrosoftTeams,并在聊天里传播恶意可执行文件。</DOC0001>
在CyberLabel.txt中,标注数据按以下规则进行存储:
(1)根据人工标注结果,将每个句子的汉字、英语单词和符号,按“BS1,IS1,ES1,SS1,BS2,IS2,ES2,SS2,has,exploit,belong,threat”的顺序进行存储,也就是说在CyberLabel.txt中,每个句子标注文本的第1个位置是标注为BS1的汉字或英语单词;第2个位置是标注为IS1的汉字或英语单词,依次类推,第9个位置是标注为SS2的汉字或英语单词。
(2)不存储标注为其他非实体O的汉字、英语单词和符号。
(3)标签集CyberTag中的某个标签在句子中没有出现时,在标签的对应位置填上NULL。
根据上述规则,句子“<DOC0001>黑客已经开始利用MicrosoftTeams,并在聊天里传播恶意可执行文件。</DOC0001>”,它的标注结果存储如下:
<DOC0001>黑 NULL 客 NULL NULL NULL NULL MicrosoftTeams NULL 利用 NULLNULL</DOC0001>
本实施例标注时只存储标签集中标签对应的汉语或英语单词,可以节省存储空间,同时有利于快速生成标签数组,建立汉字、英语单词和符号与标签的关系。
S4、将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集;通过预处理将语料数据样本集和人工标注数据集转化成数字矩阵集,即适合非结构化文本数据抽取模型处理的数据类型,有利于后续非结构化文本数据抽取模型的训练和验证。预处理还可以对数据进行增强,提高训练出来的非结构化文本数据抽取模型的鲁棒性和泛化性。
优选的,所述将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集,具体包括:
初始化步骤:
设置语料数据样本集的最大句子长度SeqLength=0,设置句子列表DataList、LabelList、AttMaskList、TokenTypeList均为空序列;
根据文本标签集预定义对应的标签字典LabDic,所述标签字典LabDic将文本标签集中的每个标签映射成对应的数字;所述标签字典LabDic增加“[CLS]”和“[SEP]”两个标签和对应的数字;
读取步骤:
读取语料数据样本集CyberData.txt中的一个句子和所述一个句子在人工标注数
据集中对应的标注数据,设读取的句子,表示句子中的汉字或英语单
词或符号,n表示句子中的汉字或英语单词或符号的总数,设句子对应的标注数据,表示标签;
数字化步骤:
利用中文词字典中汉字、英语单词、符号对应的ID,对句子按逐个汉字、英语单
词、符号进行分割,将分割后的汉字、英语单词、符号转换成中文词库字典中的ID,得到数组, K是分割后字符的数量,表示中文词库字典中的
ID值;
矩阵组建步骤:
判断步骤:判断是否完成语料数据样本集的最后一个句子的处理,若不是则对下一个句子循环执行读取步骤、数字化步骤和矩阵组件步骤,若是则执行数据补齐步骤;
数据补齐步骤:
遍历,如果长度小于,则在尾部用整数‘0’补齐,使得
的长度等于,对应的标签用‘-1’补齐,对应的补‘0’,对应的补‘-
1’,使得长度均等于。通过统一的长度,有利于后续非结构化文本数据抽取模型
的抽取效率。本实施例应用VocabDic中文词库字典,将分割好的汉字字符、英语单词和符号
映射为对应的ID。本发明VocabDic中文词库字典采用Google Bert-Base-Chinese预训练模
型中自带的中文词库字典,建立汉字字符、英语单词、符号和对应ID的关系,它包含了21128
个符号、汉字、英语单词,涵盖了大部分汉字、英语单词和符号。以下是一些常用字符和ID的
对应关系,‘[PAD]’=0,‘[UNK]’=100,‘[CLS]’=101,‘[SEP]’=102等。
本实施例应用标签字典LabDic将标签数据转换成标签对应的ID。本实施例定义了15种标签,例如,定义 LabDic={‘[O]’=0,‘[BS1]’=1,‘[IS1]’=2,‘[ES1]’=3,‘[SS1]’=4,‘[BS2]’=5,‘[IS2]’=6,‘[ES2]’=7,‘[SS2]’=8,‘[has]’=9,‘[exploit]’=10,‘[belong]’=11,‘[threat]’=12,‘[CLS]’=13,‘[SEP]’=14}。
在本实施例中,以句子=“[CLS]黑客已经开始利用MicrosoftTeams[SEP]”为例,
经过预处理后变成数组=[101, 3527, 100, 2158, 5756, 100, 2185, 4095, 2086,
100, 100, 378, 8317, 12409, 10150, 9786, 8608, 8118, 100, 100, 5732, 100,
665, 100, 100, 100, 100, 100, 100, 100, 100, 5666, 100, 100, 100, 4422, 100,
100, 100, 6719, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
S5、将语料数据样本集和人工标注数据集对应的数字矩阵集均对应地分为训练集和测试集;通过划分训练集和测试集,达到对非结构化文本数据抽取模型进行科学的处理的效果,训练集用于训练模型使其收敛,测试集用于对收敛的模型进行测试,进而可以对模型的参数进行调优,提高模型的泛化性,提高非结构化文本数据抽取模型的适用性,还可以避免由于数据集较为单一,模型发生过拟合,影响模型的效果。
本实施例所用的数据集共有4000个句子,分割后的句子最大字符长度为SeqLength=99,因此经过预处理后,形成4个长度为4000的List,分别为DataList、LabelList、AttMaskList、 TokenTypeList, List中的每个元素长度为SeqLength=99。DataList其中80%作为训练集将用作模型训练,20%作为测试集用作模型测试。
CyberData.txt和CyberLabel.txt组成本实施例的数据集。在数据集中随机选择3200个句子作为训练集,将剩余的800个句子作为测试集。
训练集将作为本发明非结构化文本数据抽取模型的输入,用于训练数据抽取模型的参数,使其达到收敛。测试集用于对模型准确率进行测试,检验模型的效果。
如图2所示,本实施例的网络安全领域非结构化文本数据抽取模型的神经网络由BERT层、BiGRU层、CRF三层组成。第一层是BERT层,用于将预处理后的文本序列进行字嵌入,把句子中的汉字、英语单词和符号转换成向量,一个句子由多个字符组成,因此在此层输入句子文本序列,输出特征矩阵;第二层是BiGRU层,用于将BERT层输出的特征向量输入到BiGRU层进行特征提取,得到每个汉字、英语单词和符号对于各类标签的非归一化概率分布,根据权重调整BiGRU层的隐藏状态,然后再输出特征向量;第三层是CRF层,结合字符与标签的发射概率以及标签与标签转移概率,通过CRF层输出全局最优的标签序列。
本实施例的非结构化文本数据抽取模型的神经网络由BERT(BidirectionalEncoder Representation from Transformers,BERT)层、BiGRU(Bidirectional GatedRecurrent Unit,BiGRU)层和CRF(Conditional random field,CRF)层三层组成。网络安全领域文本抽取与其他领域文本抽取相比较,主要特点是中英文文本混合现象非常普遍,给文本抽取带来难度。本发明BERT层采用Google BERT-Base-Chinese模型和工具,对网络安全领域文本的中文汉字、英语单词和符号进行分割,并表示成向量;BiGRU层提取了句子汉字、英语单词和符号的语义特征,与传统BiGRU模型不同的是,本实施例的BiGRU层输出时在句子级别对隐藏特征权重进行自动计算,并根据权重调整了BiGRU层输出结果,这种调整提高了句子中重要汉字、英语单词和符号的权重,提高了模型文本数据抽取的准确率;BiGRU模型提取到文本序列中汉字、英语单词和符号的特征结果,但可能会存在标签标注不合理的现象,比如连续的2个字符,输出如BS1,BS1这种组合,因此本实施例加入CRF层,通过CRF模型对BiGRU层输出的序列进行条件约束,通过模型训练自动调整CRF层的参数,达到限制BiGRU层输出无效序列的效果,提高模型的识别精确度,从而提高网络安全的非结构化文本数据抽取的准确率。
本实施例的BERT层包括字嵌入和Transformer两层。字嵌入用于将对输入字符、位置进行编码,生成向量,并输入到Transformer进行特征提取。
读取DataList中的,,本数据集中
分割后句子的最大字符数为,即,利用Pytorch的nn模块对进行Word
Embedding操作,将自动转换成词向量,是r维列向量,当采用Google BERT-
Base-Chinese模型进行嵌入操作,,即是768维列向量,转换成矩阵,
利用Pytorch的nn模块对进行Word Embedding操作,将自动转换成词向量,是r维列向量,当采用Google BERT-Base-Chinese模型进行嵌入操作时,,
即是768维列向量,对应的位置矩阵,维度
与的大小一致,是一个矩阵,在本发明中是矩阵。
将矩阵和矩阵相加,得到句子的词嵌入。采用pytorch
nn.LayerNorm对矩阵进行归一化处理,对归一化处理的结果执行Dropout操作,输出。
至此,完成文本序列的嵌入操作,下面介绍Transformer。
每个Encoder层包括3个子层,第1子层是自注意力层,第2子层是中间层,第3子层是输出层。下面分别介绍每个子层的组成。
第1子层自注意力层。首先进行初始化,通过nn.Linear创建3个输入为维列向量、
输出为r维列向量的线性全连接层,分别为Query、Key和Value,本发明中。将每个
Encoder的输入作为Query、Key和Value层的输入,相当于分别创建三个矩阵,每个矩
阵的大小均为,本发明为。第1层Encoder的自注意力层的初始
值为。对矩阵根据公式执行计算,得到注意力:
将自注意力层输出时,与下一层建立Dense全连接,并执行Dropout和LayerNorm操作,最后将自注意力输出到下一层。
第2子层中间层。中间层执行一个全连接Dense和激活函数tanh。
第3子层输出层。与下一层建立Dense全连接,并执行Dropout和LayerNorm 操作,最后将Encoder结果输出。
每层Encoder的输出是下一层Encoder的输入,但第12层Encoder的输出是
Transformer模型的输出,输出是通过PyTorch的nn.Linear()函数与BiGRU层建立线性连
接,建立线性连接时输入为r维,输出为q维,在本发明中,。因此,经过BERT模
型层处理后,输出字向量特征矩阵为
本实施例通过pytorch_pretrained_bert工具包的BertModel工具创建Bert模型,
将Dropout参数设置为0.1,将DataList、AttMaskList、 TokenTypeList作为Bert模型,计算
得到Transformer的第12个encoder输出结果,是一个的矩阵。
本实施例的BiGRU层基于门控制循环单元神经网络。门控制循环单元(Gated
Recurrent Unit, GRU)是一种特殊循环神经网络,由长短记忆神经网络(Long Short-Term
Memory,LSTM)简化而来的,通过将LSTM模型的输入门、遗忘门和输出门合并成更新门和重
置门,使用更新门和重置门两个门控决定那些信息可以最终作为门控循环单元的输出。GRU
单元模型结构如图2所示。图2中表示GRU单元t时刻的输入;是GRU单元t时刻的输出,也
是当前时刻的隐藏状态;是当前时刻候选隐藏状态;表示 GRU单元更新门,用于控制前
一时刻的隐藏状态输出及当前时刻t的输入有多少流入当前时刻的隐藏状态中,
更新门的值越大,流入信息越多。是重置门,用于控制前一时刻的隐藏状态输出有
多少进入当前时刻t的候选隐藏状态中,决定前一时刻的状态信息有多少需要被遗忘,重
置门的值越小,进入的信息越少,先前信息遗忘得越多。
是sigmoid函数,是矩阵乘法,是矩阵Hadamard积。、和是更新门的
参数;、和是重置门参数;、和是候选隐藏状态参数。在训练过程中得到,、、、、、、、和共9个参数均为num_inputsnum_hiddens的矩阵,通
过torch.nn.Parameter进行创建,在本发明中num_inputs为文本序列的长度,即num_
inputs=sq=99,num_hiddens为隐藏状态的维度,在本发明中num_hiddens=40。
由公式可以看出,当前时刻置门与时
刻隐藏状态按Hadamard积计算时(矩阵元素与元素相乘),若重置门中的元素值接近‘0’,
那么意味着重置对应隐藏状态元素为‘0’,即大部分丢弃上一时间步的隐藏状态;若重
置门中的元素值接近‘1’,那么表示大部分保留上一时间步的隐藏状态。然后,将
Hadamard积的结果与当前时间步的隐藏状态输入相加,再通过含激活函数tanh的全连接
层计算出候选隐藏状态。
在序列处理中,时刻t代表文本序列第个位置字符。单向GRU模型只能获取前向时
刻的信息,在非结构化文本数据抽取识别任务中,要求模型能充分学习上下文信息,提取文
本深层次的特征。BiGRU模型由两个单向的、方向相反的GRU构成,前向GRU用于捕捉上文信
息,反向GRU用于捕捉下文信息,两个方向相反的GRU同时处理输入,共同决定当前位置的输
出。如图3所示,i位置字符为x i ,对应的向量为,把BiGRU看作两个单向的GRU,则前向隐
层状态和反向隐层状态进行拼接,得到位置字符的隐藏状态,如下述公式所示
其中GRU()函数表示对输入向量进行非线性变换、编码,得到对应的隐层状态,作
为下一个字符特征提取的隐藏状态,是字符双向的前向隐层状态的权重,是字符双
向的反向隐层状态的权重,是时刻隐层状态的偏置,、和通过神经网络训练获
得。
传统BiGRU模型在特征抽取时,所有字符对文本抽取作用相同,然而,实际应用中不同的词对文本数据抽取起着不同的作用,例如名称、动词对网络安全命名实体和关系抽取至关重要,但地点状语、时间状语对网络安全实体识别来说,重要程度极小。为了突出不同字符对文本数据抽取的重要度,本发明对BiGRU的输出层进行改进,对与网络安全实体相关的语义增加特征权重,提升局部特征提取效果。权重的调整过程如下述公式所示:
其中,表示第个字符不同特征所对应的注意力分数,表示BiGRU层特征向量,
为第个字符的隐藏层状态,是激活函数,是预设的权重系数矩阵, 表示随机初始化
的注意力矩阵,是偏移向量;表示第个字符的注意力权重,是注意力向量,是BiGRU
层中当前输入对应的句子的字符数;表示BiGRU层特征向量与注意力权重值合并计算得
到考虑权重后的隐藏层状态值。
,其中,为BiGRU输出结果,是大小为的矩阵。将Pytorch 的
nn.GRU函数bidirectional 参数设置为true, GRU层数设置为1,调整输出权重,计算可得
BiGRU网络层输出结果。
本实施例的CRF层的输入是BiGRU层输出的概率矩阵,其大小为, 为句
子的长度,即句子中汉字或单词个数,为标签种类,代表句子中第i个字符为第j个标签
的发射概率。在CRF层计算一个转移矩阵,其大小为,转移矩阵表示标签与标签之间
的关系,表示从第个标签到第个标签之间的转移概率。对于每一个输入句子序列,可能的标签标注序列
其中是概率矩阵中的值,表示第i个字符预测为标签的发
射概率;是转移矩阵的值,表示标签转移到标签的转移概率;句子中汉字、英语单
词和符号的总数,表示输入句子序列的标签序列为的分数,等于各个位置的发射概
率和转移概率之和。
在进行CRF层训练时,目标是最小化损失函数,采用负对数似然函数作为损失函数,如下式所示:
在训练过程中,按照最小化损失函数原则,通过反向传播结合梯度下降,求解数据模型最优参数。在模型的测试和使用过程,采用Viterbi算法求动态规划的分数最大标注序列,公式如下:
S6、将训练集输入到利用神经网络构建的数据抽取模型中进行训练,得到收敛的数据抽取模型,并利用测试集对抽取模型进行验证。
CyberData.txt和CyberLabel.txt组成本发明的数据集。在数据集中随机选择3200个句子作为训练集,将剩余的800个句子作为测试集。
训练集将作为本发明非结构化文本数据抽取模型的输入,用于训练数据抽取模型的参数,使其达到收敛。测试集用于对模型准确率进行测试,检验模型的效果。
将模型输出的序列与训练集标注序列进行比对,并计算损失函数值,按照最小化损失函数原则,通过反向传播结合梯度下降,求解所述数据抽取模型最优参数,得到收敛后的数据抽取模型,则此时该模型为最优。通过训练的模型,进而高效、准确地对网络安全的非结构化文本数据进行抽取。
本实施例采用Python3.9+pytorch1.11的实验环境进行模型训练与测试。引入Google Bert-Base-Chinese基础架构,它包括12个Transformer层,768维隐藏层和12头多头注意力机制。
在数据集中随机选择3200个句子作为训练集,将剩余的800个句子作为测试集,将训练集和测试集输入模型进行训练和测试。
本实施例采用分类准确率 (Precision)、召回率(Recall)和综合评价指标(F-Measure)判断模型分类效果。
Precision表示被分为攻击类的网络数据中实际为攻击类的比例,计算公式为:
Recall表示被分为攻击类的网络数据占所有攻击类数据的比例,召回率是覆盖面的度量,计算公式为:
F-Measure是Precision和Recall加权平均,用于综合Precision和Recall的评分,本实施例采用F1,计算公式为:
经过测试,得到模型的测试结果如下:
本实施例各标签标注测试结果如下:
实施例2
本实施例提供一种网络安全的非结构化文本数据抽取方法,如图4所示,包括:
T1、获取待处理的非结构化数据,将所述非结构化文本数据进行处理形成以句子为单位的语料数据;
T2、基于文本标签集对所述语料数据进行人工标注得到对应的人工标注数据;
T3、将所述语料数据和对应的人工标注数据进行预处理分别转化成对应的数字矩阵;
T4、将转化得到的数字矩阵输入到收敛的数据抽取模型中,输出得到所述非结构化文本数据对应的自动化标注数据。
在本实施例中,将需要处理的非结构化数据文本文件输入系统,系统以句号作为断句标识,将所述文本文件转换为句子数组,即将所述非结构化文本数据进行处理形成以句子为单位的语料数据;
本实施例将句子数组中的句子逐一输入收敛的数据抽取模型中进行自动标注,输出得到所述非结构化文本数据对应的自动化标注数据。
优选地,本实施例的数据抽取模型的神经网络由BERT(Bidirectional EncoderRepresentation from Transformers,BERT)层、BiGRU(Bidirectional Gated RecurrentUnit,BiGRU)层和CRF(Conditional random field,CRF)层三层组成。第一层是BERT层,用于将预处理后的文本序列进行字嵌入,把句子中的汉字、英语单词和符号转换成向量,一个句子由多个字符组成,因此在此层输入句子文本序列,输出特征矩阵;第二层是BiGRU层,用于将BERT层输出的特征向量输入到BiGRU层进行特征提取,得到每个汉字、英语单词和符号对于各类标签的非归一化概率分布,根据权重调整BiGRU层的隐藏状态,然后再输出特征向量;第三层是CRF层,结合字符与标签的发射概率以及标签与标签转移概率,通过CRF层输出全局最优的标签序列。
网络安全领域文本抽取与其他领域文本抽取相比较,主要特点是中英文文本混合现象非常普遍,给文本抽取带来难度。本发明的BERT层采用Google BERT-Base-Chinese模型和工具,对网络安全领域文本的中文汉字、英语单词和符号进行分割,并表示成向量;BiGRU层提取了句子汉字、英语单词和符号的语义特征,与传统BiGRU模型不同的是,本实施例的BiGRU层输出时在句子级别对隐藏特征权重进行自动计算,并根据权重调整了BiGRU层输出结果,这种调整提高了句子中重要汉字、英语单词和符号的权重,提高了模型文本数据抽取的准确率;BiGRU模型提取到文本序列中汉字、英语单词和符号的特征结果,但可能会存在标签标注不合理的现象,比如连续的2个字符,输出如BS1,BS1这种组合,因此本实施例加入CRF层,通过CRF模型对BiGRU层输出的序列进行条件约束,通过模型训练自动调整CRF层的参数,达到限制BiGRU层输出无效序列的效果,提高模型的识别精确度,从而提高网络安全的非结构化文本数据抽取的准确率。
实施例3
本实施例提供一种网络安全的非结构化文本数据抽取模型训练系统,包括:
标签集预设模块,用于根据网络安全的特性预定义应用于网络安全的文本标签集,文本标签集中包括若干个标签;
样本集获取模块,用于获取非结构化文本数据形成以句子为单位的语料数据样本集;
标注模块,用于基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集;
转化模块,用于将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集;
划分模块,用于将语料数据样本集和人工标注数据集对应的数字矩阵集均对应地分为训练集和测试集;
训练模块,用于将训练集输入到利用神经网络构建的数据抽取模型中进行训练,得到收敛的数据抽取模型,并利用测试集对抽取模型进行验证。
显然,本发明的上述实施例仅仅是为清楚地说明本发明技术方案所作的举例,而并非是对本发明的具体实施方式的限定。凡在本发明权利要求书的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种网络安全的非结构化文本数据抽取模型训练方法,其特征在于,包括:
根据网络安全的特性预定义应用于网络安全的文本标签集,文本标签集中包括若干个标签;
获取非结构化文本数据形成以句子为单位的语料数据样本集;
基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集;
将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集;
将语料数据样本集和人工标注数据集对应的数字矩阵集均对应地分为训练集和测试集;
将训练集输入到利用神经网络构建的数据抽取模型中进行训练,得到收敛的数据抽取模型,并利用测试集对抽取模型进行验证;
所述利用神经网络构建的数据抽取模型包括:顺次连接的BERT层、BiGRU层和CRF层。
2.根据权利要求1所述的一种网络安全的非结构化文本数据抽取模型训练方法,其特征在于,所述文本标签集表示为:
CyberTag,
CyberTag = { O , BS1 , IS1 , ES1 , SS1 , BS2 , IS2 , ES2 , SS2 , has , exploit , belong , threat },
文本标签集中O代表网络安全中的其他非实体,BS代表命名实体的开始位置,IS代表命名实体的中间位置,ES代表命名实体的结尾位置,SS代表单个的命名实体;命名实体角色标签由数字“1”和“2”表示,代表命名实体在所抽取的三元组中的先后顺序,1表示三元组中排第一的命名实体,2表示三元组中排第二的命名实体;has代表网络安全中的拥有或存在;exploit代表网络安全中的利用,belong代表网络安全中的属于,threat代表网络安全中的威胁和攻击。
3.根据权利要求2所述的一种网络安全的非结构化文本数据抽取模型训练方法,其特征在于,所述基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集,具体包括:
根据文本标签集中的标签判定语料数据样本集中的每个句子的汉字、英语单词和符号所对应的标签,得到每个句子对应的标注结果;
根据每个句子对应的标注结果,每个句子中的汉字、英语单词和符号按照文本标签集中标签的顺序进行存储生成标签数组,其中文本标签集中的标签在句子中没有出现则在标签数组中所述标签对应的位置填上预设符号,文本标签集中的标签O对应的汉字和/或英语单词在标签数组中标签O对应的位置填上所述预设符号;
语料数据样本集中句子对应的标签数组组成人工标注数据集。
4.根据权利要求1所述的一种网络安全的非结构化文本数据抽取模型训练方法,其特征在于,所述将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集,具体包括:
初始化步骤:
设置语料数据样本集的最大句子长度SeqLenth=0,设置句子列表DataList、LabelList、AttMaskList、TokenTypeList均为空序列;
根据文本标签集预定义对应的标签字典LabDic,所述标签字典LabDic将文本标签集中的每个标签映射成对应的数字;所述标签字典LabDic增加“[CLS]”和“[SEP]”两个标签和对应的数字;
读取步骤:
读取语料数据样本集CyberData.txt中的一个句子和所述一个句子在人工标注数据集
中对应的标注数据,设读取的句子,表示句子中的汉字或英
语单词或符号,n表示句子中的汉字或英语单词或符号的总数,设句子对应的标注数据,表示标签;
数字化步骤:
利用中文词库字典中汉字、英语单词和符号对应的ID,对句子按逐个汉字、英语单词
和符号进行分割,将分割后的汉字、英语单词和符号转换成中文词库字典中的ID,得到数组 , 是分割后字符的数量,表示中文词库字典中
的ID值;
矩阵组建步骤:
判断步骤:判断是否完成语料数据样本集的最后一个句子的处理,若不是则对下一个句子循环执行读取步骤、数字化步骤和矩阵组建步骤,若是则执行数据补齐步骤;
数据补齐步骤:
5.根据权利要求1至4任一项所述的一种网络安全的非结构化文本数据抽取模型训练方法,其特征在于,
所述将训练集输入到利用神经网络构建的数据抽取模型中进行训练,得到收敛的数据抽取模型,并利用测试集对抽取模型进行验证,具体包括:
训练集输入到BERT层进行字嵌入,将句子中的汉字、英语单词和符号转化成向量,并对转化后的向量进行特征提取,输出BERT层特征矩阵;
BiGRU层对所述BERT层特征矩阵进行特征提取,得到每个汉字、英语单词和符号对各类标签的非归一化概率分布,并根据权重调整BiGRU层的隐藏状态,输出BiGRU层特征向量;
所述CRF层根据所述BiGRU层特征向量和人工标签数组进行训练,求解所述数据抽取模型最优参数,得到收敛后的数据抽取模型;
将自动化标签数组和人工标签数组进行比对,根据比对结果自动调整所述数据抽取模型参数,得到收敛后的数据抽取模型。
6.根据权利要求5所述的一种网络安全的非结构化文本数据抽取模型训练方法,其特征在于,所述BiGRU层特征向量在输入CRF层之前还进行如下处理:
其中,表示第个字符不同特征所对应的注意力分数,表示BiGRU层特征向量,为第
个字符的隐藏层状态,是激活函数,是预设的权重系数矩阵, 表示随机初始化的
注意力矩阵,是偏移向量;表示第个字符不同特征所对应的注意力权重,是注意
力向量,是BiGRU层中当前输入对应的句子的字符数;表示BiGRU层特征向量与注意力
权重值合并计算得到考虑权重后的隐藏层状态值;
7.根据权利要求5~6任一项所述的一种网络安全的非结构化文本数据抽取模型训练方法,其特征在于,所述CRF层根据所述BiGRU层特征向量和人工标签数组进行训练,求解所述数据抽取模型最优参数,得到收敛后的数据抽取模型,具体包括:
其中是概率矩阵P中的值,表示第个字符预测为标签的发射概率;是转移矩
阵的值,表示标签转移到标签的转移概率,;k句子中汉字、英语单词
和符号的总数,表示输入句子序列W的标签序列为l的分数,等于各个位置的发射概率
和转移概率之和;
在训练过程中,按照最小化损失函数原则,通过反向传播结合梯度下降,求解数据模型最优参数;在模型的测试和使用过程,采用Viterbi算法求动态规划的分数最大标注序列,公式如下:
8.一种网络安全的非结构化文本数据抽取模型训练系统,其特征在于,包括:
标签集预设模块,用于根据网络安全的特性预定义应用于网络安全的文本标签集,文本标签集中包括若干个标签;
样本集获取模块,用于获取非结构化文本数据形成以句子为单位的语料数据样本集;
标注模块,用于基于文本标签集对语料数据样本集进行人工标注得到对应的人工标注数据集;
转化模块,用于将语料数据样本集和人工标注数据集进行预处理分别转化成数字矩阵集;
划分模块,用于将语料数据样本集和人工标注数据集对应的数据矩阵集均对应地分为训练集和测试集;
训练模块,用于将训练集输入到利用神经网络构建的数据抽取模型中进行训练,得到收敛的数据抽取模型,并利用测试集对抽取模型进行验证。
9.一种网络安全的非结构化文本数据抽取方法,其特征在于,
获取待处理的非结构化数据,将所述非结构化文本数据进行处理形成以句子为单位的语料数据;
基于文本标签集对所述语料数据进行人工标注得到对应的人工标注数据;
将所述语料数据和对应的人工标注数据进行预处理分别转化成对应的数字矩阵;
将转化得到的数字矩阵输入到权利要求1-7任一项所述的收敛的数据抽取模型中,输出得到所述非结构化文本数据对应的自动化标注数据。
10.一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,其特征在于,所述处理器执行计算机程序时实现权利要求1至7任一项所述的网络安全的非结构化文本数据抽取模型训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211143694.5A CN115587594B (zh) | 2022-09-20 | 2022-09-20 | 网络安全的非结构化文本数据抽取模型训练方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211143694.5A CN115587594B (zh) | 2022-09-20 | 2022-09-20 | 网络安全的非结构化文本数据抽取模型训练方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115587594A true CN115587594A (zh) | 2023-01-10 |
CN115587594B CN115587594B (zh) | 2023-06-30 |
Family
ID=84773422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211143694.5A Active CN115587594B (zh) | 2022-09-20 | 2022-09-20 | 网络安全的非结构化文本数据抽取模型训练方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115587594B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116341554A (zh) * | 2023-05-22 | 2023-06-27 | 中国科学技术大学 | 面向生物医学文本的命名实体识别模型的训练方法 |
CN116542241A (zh) * | 2023-06-25 | 2023-08-04 | 四川蔚丰云联信息科技有限公司 | 应急预案的匹配方法及紧急医学救援协同指挥平台系统 |
CN117422061A (zh) * | 2023-12-19 | 2024-01-19 | 中南大学 | 一种文本词项多重分割结果合并标注方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018218705A1 (zh) * | 2017-05-27 | 2018-12-06 | 中国矿业大学 | 一种基于神经网络概率消歧的网络文本命名实体识别方法 |
US20190122145A1 (en) * | 2017-10-23 | 2019-04-25 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method, apparatus and device for extracting information |
CN111694924A (zh) * | 2020-06-17 | 2020-09-22 | 合肥中科类脑智能技术有限公司 | 一种事件抽取方法和系统 |
CN111709241A (zh) * | 2020-05-27 | 2020-09-25 | 西安交通大学 | 一种面向网络安全领域的命名实体识别方法 |
CN112733541A (zh) * | 2021-01-06 | 2021-04-30 | 重庆邮电大学 | 基于注意力机制的BERT-BiGRU-IDCNN-CRF的命名实体识别方法 |
CN112989831A (zh) * | 2021-03-29 | 2021-06-18 | 华南理工大学 | 一种应用在网络安全领域的实体抽取方法 |
CN113408288A (zh) * | 2021-06-29 | 2021-09-17 | 广东工业大学 | 一种基于BERT与BiGRU-CRF的命名实体识别方法 |
-
2022
- 2022-09-20 CN CN202211143694.5A patent/CN115587594B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018218705A1 (zh) * | 2017-05-27 | 2018-12-06 | 中国矿业大学 | 一种基于神经网络概率消歧的网络文本命名实体识别方法 |
US20190122145A1 (en) * | 2017-10-23 | 2019-04-25 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method, apparatus and device for extracting information |
CN111709241A (zh) * | 2020-05-27 | 2020-09-25 | 西安交通大学 | 一种面向网络安全领域的命名实体识别方法 |
CN111694924A (zh) * | 2020-06-17 | 2020-09-22 | 合肥中科类脑智能技术有限公司 | 一种事件抽取方法和系统 |
CN112733541A (zh) * | 2021-01-06 | 2021-04-30 | 重庆邮电大学 | 基于注意力机制的BERT-BiGRU-IDCNN-CRF的命名实体识别方法 |
CN112989831A (zh) * | 2021-03-29 | 2021-06-18 | 华南理工大学 | 一种应用在网络安全领域的实体抽取方法 |
CN113408288A (zh) * | 2021-06-29 | 2021-09-17 | 广东工业大学 | 一种基于BERT与BiGRU-CRF的命名实体识别方法 |
Non-Patent Citations (2)
Title |
---|
崔雨萌: "《基于深度学习的警情记录关键信息自动抽取》", pages 127 * |
牛勇: "《网络安全知识图谱构建的关键技术研究》", pages 20 - 50 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116341554A (zh) * | 2023-05-22 | 2023-06-27 | 中国科学技术大学 | 面向生物医学文本的命名实体识别模型的训练方法 |
CN116341554B (zh) * | 2023-05-22 | 2023-08-29 | 中国科学技术大学 | 面向生物医学文本的命名实体识别模型的训练方法 |
CN116542241A (zh) * | 2023-06-25 | 2023-08-04 | 四川蔚丰云联信息科技有限公司 | 应急预案的匹配方法及紧急医学救援协同指挥平台系统 |
CN116542241B (zh) * | 2023-06-25 | 2023-09-08 | 四川蔚丰云联信息科技有限公司 | 应急预案的匹配方法及紧急医学救援协同指挥平台系统 |
CN117422061A (zh) * | 2023-12-19 | 2024-01-19 | 中南大学 | 一种文本词项多重分割结果合并标注方法及装置 |
CN117422061B (zh) * | 2023-12-19 | 2024-03-08 | 中南大学 | 一种文本词项多重分割结果合并标注方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115587594B (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111709241B (zh) | 一种面向网络安全领域的命名实体识别方法 | |
Yao et al. | Bi-directional LSTM recurrent neural network for Chinese word segmentation | |
CN111738003B (zh) | 命名实体识别模型训练方法、命名实体识别方法和介质 | |
CN110532353B (zh) | 基于深度学习的文本实体匹配方法、系统、装置 | |
CN115587594B (zh) | 网络安全的非结构化文本数据抽取模型训练方法及系统 | |
CN111160031A (zh) | 一种基于词缀感知的社交媒体命名实体识别方法 | |
CN111666758B (zh) | 中文分词方法、训练设备以及计算机可读存储介质 | |
Jiang et al. | An LSTM-CNN attention approach for aspect-level sentiment classification | |
CN115759092A (zh) | 一种基于albert的网络威胁情报命名实体识别方法 | |
Han et al. | An attention-based neural framework for uncertainty identification on social media texts | |
Ayifu et al. | Multilingual named entity recognition based on the BiGRU-CNN-CRF hybrid model | |
Li et al. | Multi-task deep learning model based on hierarchical relations of address elements for semantic address matching | |
Han et al. | Text adversarial attacks and defenses: Issues, taxonomy, and perspectives | |
Zhang et al. | Description-enhanced label embedding contrastive learning for text classification | |
Shan | Social Network Text Sentiment Analysis Method Based on CNN‐BiGRU in Big Data Environment | |
CN113434698B (zh) | 基于全层级注意力的关系抽取模型建立方法及其应用 | |
CN114722818A (zh) | 一种基于对抗迁移学习的命名实体识别模型 | |
CN113822018A (zh) | 实体关系联合抽取方法 | |
Zhu et al. | A named entity recognition model based on ensemble learning | |
CN113919351A (zh) | 基于迁移学习的网络安全命名实体和关系联合抽取方法及装置 | |
CN113378571A (zh) | 一种文本数据的实体数据关系抽取方法 | |
Liu | Research on literary translation based on the improved optimization model | |
Kashihara et al. | Automated corpus annotation for cybersecurity named entity recognition with small keyword dictionary | |
Im et al. | Cross-active connection for image-text multimodal feature fusion | |
Zhang et al. | Bi-directional capsule network model for chinese biomedical community question answering |
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 |