摘要
针对卫星领域命名实体语料匮乏、现有算法识别性能较低的问题,提出一种考虑模糊边界的卫星领域实体标注方法,构建包含8类常见卫星领域实体的语料库,与该领域现有语料库相比粒度更细、覆盖更广,并以此为基础提出迁移学习和多网络融合的卫星领域实体识别算法。该算法采用预训练双向编码器对语料语义平滑迁移获得子词级别特征,采用双向长短期记忆(bi-directional long-short term memory, BiLSTM)神经网络捕捉上下文信息确定边界,以条件随机场作为解码器实现标签预测。实验结果表明:相比于BiLSTM等传统模型具有更优的识别性能,算法在8种实体上的F1值均在92%以上,微平均F1值达到论文拓展 96.10%。
Abstract
Aiming at the lack of named entity corpus in the satellite domain and the low recognition performance of existing algorithms, a satellite domain entity labeling method considering fuzzy boundaries was proposed, constructed a corpus containing 8 common satellite domain entities where the granularity was finer and the coverage was wider in comparison with the existing corpora in this field. Based on this, a transfer learning and multi-network fusion satellite domain entity recognition algorithm was proposed. Algorithm used pretrained bidirectional encoder representations for transformers to smoothly transfer the semantics of the corpus for subword-level features, a BiLSTM (bi-directional long-short term memory) network for capturing contextual information to determine boundaries, and label prediction was achieved using a conditional random field as a decoder. Experimental results show that, compared with traditional models such as BiLSTM, the proposed algorithm has better recognition performance where the F1-score in 8 entities is all above 92% and the micro-average F1-score reaches 96.10%.
Keywords
卫星情报具有敏感性、隐蔽性、稀缺性[1-2],互联网公开数据蕴含丰富的高价值卫星情报。卫星领域命名实体识别(name entity recognition,NER)是从互联网公开数据中自动识别在轨卫星名称、发射机构、政府组织、有效载荷、频率轨道等实体,为卫星情报知识图谱构建[3]、频率轨道资源全球态势评估[4]、战略意图窥探[5]等提供实体基础的一项工作。
现有命名实体识别方法主要有3类。基于规则和字典的方法[6]识别召回率较高但必须依托大量人工成本来制作规则和词典;隐马尔可夫模型(hidden Markov model,HMM)和条件随机场(conditional random field,CRF)[7]等基于特征工程的方法可以减少对规则和词典的依赖,但领域知识和人工设计特征模板受限于特定领域,迁移效果不佳;近年来,基于数据驱动的深度学习方法以其无须大量人工投入就能自动发现隐藏特征的优势,在通用领域[8]和生物医药[9]、金融风险[10]、法律文书[11]等特定领域被广泛应用,此类方法的基础是获得用于模型训练的大规模领域语料库。
在SpaceX [12]、OneWeb[13]等公司推出的低轨互联网星座驱动下,卫星领域实体识别成为新的研究方向。Jafari等[14]于2021年提出端到端SatelliteNER模型,与现有NER工具相比,该模型在卫星数据集上的实体识别效果最好,F1值达到70%。SatelliteNER模型的缺点也比较明显:①实体类型有限、粒度过粗、标注未考虑卫星领域实体边界模糊等特征。其卫星数据集仅包含组织机构、火箭名称和卫星名称3类;卫星名称实体没有细化至编号,例如“Starlink-31”和“Starlink-32”两颗卫星被统一缩减为“Starlink”;实体标注未考虑边界模糊、实体嵌套等卫星领域实体特点。②模型识别性能尚存较大改进空间。在测试集上的F1值仅为70%,召回率比精度低约10%。
针对卫星领域命名实体语料库匮乏,现有命名实体识别算法性能较低问题,在分析卫星领域命名实体特点的基础上,制定模糊边界卫星领域实体标注规则,采用最大后向匹配方法实现数据集自动标注,构建卫星语料库SatCorpus,并以此为基础提出预训练双向编码器-双向长短期记忆神经-条件随机场(bidirectional encoder representations for transformers-bi-directional long short-term memory-conditional random field,BERT-BiLSTM-CRF)融合的卫星领域实体识别方法。实验结果表明,相比于BiLSTM、BiLSTM-CRF、卷积神经网络(convolutional neural network,CNN)-BiLSTM、双向门控循环单元(bi-gate recurrent unit,BiGRU)-CRF、BERT-BiGRU-CRF等传统方法,BERT-BiLSTM-CRF模型具有更优的实体识别性能。
1 卫星领域命名实体特点分析
与通用领域和规范化的医疗病例、司法文书等特定领域实体识别研究不同,卫星领域命名实体具有以下特点:
1)嵌套特征突出。例如,“U.S. Air Force”分开看“U.S.”属于来源地实体,“Air Force”属于政府组织实体,而整体词组属于政府组织实体。
2)专业名词符号化。由于卫星领域的独特性和专业性,语料中存在大量的符号化表述,例如发射场“Launch Complex 39A”由文字+数字+编号结合,“Soyuz-2.1b”和“Soyuz 2.1b”均表示联盟号2.1b型火箭。
3)实体隐蔽性强。卫星与军事领域相关度较高,执行任务和服务对象具有特殊性,实体指向性不明显。例如,通用领域命名实体识别方法从 “USA 148”中识别出美国(USA),实际上“USA 148”是军事卫星名称。
4)实体粗细粒度不统一。例如,针对同一发射地点,有语料为“Kennedy space center”,还有语料会具体到发射场的某一发射台,如“Kennedy space center launch complex 39A”。
5)实体表达多样性。存在实体简化表述现象,例如,不少语料会将政府组织“defense advanced research projects agency”缩写为“DARPA”。
6)实体分布稀疏。以卫星发射语料为例,一篇新闻的大部分单词和词组属于无效实体,卫星领域实体在整篇文章中分布稀疏。
以上6个特点除了“实体分布稀疏”属于卫星领域命名实体的统计特征外,其余5个特点导致卫星实体边界模糊、难以确定。在卫星领域,不仅命名实体复杂度高,还面临语料匮乏的难题。现有研究缺乏面向卫星领域的实体分类标准和公开数据集,阻碍深度学习方法的应用。
2 卫星领域语料库构建
针对卫星领域命名实体的特点,本节提出考虑模糊边界的实体标注规则和自动标注方法,基于航天新闻构建针对卫星领域8个类别共计20 110条句子的语料库SatCorpus。具体方法说明如下。
2.1 卫星领域命名实体与标注类别
卫星的生命周期大致可分为研制、发射、在轨、离轨四个阶段。论文主要聚焦于研制和发射阶段的卫星领域实体。
除卫星名称和通用的时间、来源地(地名)外,对运载火箭、航天机构、制造公司、政府组织、发射场所5类实体给出如下定义:将把卫星送入预定轨道的航天运载工具标注为运载火箭实体;将负责航空航天和深空探测等太空任务的研究院所和开发组织标注为航天机构实体;将生产与卫星相关的航天器制造商、推进器制造商、卫星发射器和航天原件制造商等企业标注为制造公司实体;将与卫星服务有关的作战部队、政府机关、行政单位等标注为政府组织实体;将与发射火箭相关的建筑、场地或设施标注为发射场所实体。
采用通用、高效的开始-内部-外部(begin,inside,outside,BIO)标注方法[15]对实体进行单词级别的序列标注,“B”表示实体的开始,“I”表示实体的内部,“O”表示非实体部分。实体示例与详细标注方式见表1,“teleport”“antenna”等领域外实体被标注为“O”。
表1卫星领域命名实体与标注类别
Tab.1 Satellite domain named entity label category
2.2 考虑模糊边界的卫星领域实体标注规则
不同实体标注规则会引发实体识别效果的差异[15]。对于卫星名称、时间、来源地、运载火箭、航天机构、制造公司、政府组织、发射场所8类命名实体,时间实体规则性强,来源地实体表示的全球国家及地区名称有限,制造公司和航天机构实体具有独立性和唯一性,因此模糊边界主要存在于卫星名称、运载火箭、政府组织、发射场所实体中。针对以上卫星领域实体边界模糊、嵌套严重、隐蔽性强等特征,结合领域专家的知识,给出考虑模糊边界的卫星领域实体标注规则。
规则1:短横线或空格键、数字与卫星名称相连,统一标注为卫星名称。例如“Starlink-61”。
规则2:短横线或空格键、数字与运载火箭相连,统一标注为运载火箭。例如“Long March 5”。
规则3:国家与政府组织相连,将相连的整体标注为政府组织。例如“U.S. Air Force”。
规则4:发射台与发射场所相连,如果发射台从属于发射场所,则认为发射台是发射场所实体的细粒度实体,标注为发射场所。例如 “Launch Complex 39A at the Kennedy Space Center”中的“Launch Complex 39A”。
规则5:国家与数字相连一般为军事卫星,标注为卫星名称。例如“USA 134”。
2.3 考虑模糊边界的卫星领域实体标注方法
基于考虑模糊边界的卫星领域实体标注规则构建各实体领域词典。若同一实体存在于多个词典中,模糊边界在实体的长度上表现最为直接,因此采用最大后向匹配方法将实体长度最大的领域词典对应的实体类型作为该实体标签,实现数据集自动标注。
定义(最大后向匹配法) 设w1,w2,···,wn是待标注的单词,D1,D2,···,Dk是k个实体类别Tag1,Tag2,···,Tagk对应的领域词典,以单词wi起始在D1,D2,···,Dk中匹配实体长度最大的领域词典所对应的实体类型标注为以wi开始的实体类型,记
(1)
式中,lj表示在词典Dj中匹配的实体长度。基于最大后向匹配法的数据集自动标注算法流程,见表2。
表2基于最大后向匹配法的数据集自动标注算法
Tab.2 Automatic labeling algorithm of datasets based on maximum backward matching method
2.4 SatCorpus语料库构建
卫星领域语料库SatCorpus的语料来源于SpaceNews卫星发射新闻网(https://spacenews.com/)。语料库构建分为新闻采集、数据清洗、自动标注、人工校对4个步骤,流程如图1所示。
1)新闻采集:选取SpaceNews“发射”栏目下2013年3月20日至2021年11月18日间的1 129篇新闻作为原始语料数据集。
2)数据清洗:删除图片、广告、网址等不包含卫星信息的文字,以 “,”“.”“?”“!”等标点符号作为标志对清洗后的数据进行句子级别的划分。
3)自动标注:确定面向卫星领域命名实体的划分类别,考虑实体的模糊边界和简化表达,采用最大后向匹配算法对未经标注的原始语料库进行标注,删除不包含实体的句子。
4)人工校对:人工核实并更正标注结果。
图1SatCorpus卫星语料库自动标注流程
Fig.1Satellite corpus SatCorpus automatically annotation process
论文从31 162条原始语料数据集中,构建包含20 110条句子、8个实体类别的语料库SatCorpus,每种类别的实体数量见表3。
表3SatCorpus语料库实体数量
Tab.3 Entity number in the SatCorpus corpus
相比于Jafari等[14]构造的只考虑3个实体类别的语料库,语料库SatCorpus实体覆盖度更广,粒度更细致,且考虑模糊边界和实体表达多样性,更符合卫星领域实体特点。
3 卫星领域实体识别模型
卫星领域实体分布稀疏,所构建语料库SatCorpus规模略小,论文采用适用于小数据集的迁移学习方法、多网络分层模型(BERT-BiLSTM-CRF)进行卫星领域命名实体识别。该模型由基于迁移学习的BERT输入表示层、基于BiLSTM的文本编码层、基于CRF 的标签解码层三部分组成。图2展示了实体识别模型的整体结构,矩形结构表示分词环节,正方形结构表示向量,圆角矩形结构表示子算法,圆形结构表示字符串,其中加粗圆形结构对应输入输出。
图2卫星领域命名实体识别模型结构
Fig.2Named entity recognition model structure in satellite domain
记S=(s1,s2,···,sn)表示包含n条句子的卫星语料库SatCorpus,对句子的每个单词进行子词分割,si=(wi1,wi2,···,wim)表示由m个子词构成的第i条句子,BERT模型将每个子词wij表示为单词特征、字符特征以及位置特征之和的特征向量cij;以句子为单位,句子si的特征向量序列ci=[ci1,ci2,···,cim]经过BERT中的Transformer层将转化为Ei=[ei1,ei2,···,eim];经过BiLSTM模型正向和反向传播提取上下文特征后形成发射矩阵Pi=[pi1,pi2,···,pim];CRF模型学习标签间的依赖关系,并结合发射矩阵Pi预测每个子词对应的标签,将实体所在的第一个子词的标签作为该实体最终标签。
3.1 基于BERT的输入表示层
卫星领域命名实体语料匮乏,通常考虑使用迁移学习将已有足够训练数据的其他领域知识迁移到标记数据匮乏的目标领域上进行领域适应来改进性能。参数共享是迁移学习的方法之一[16],它假设源任务和目标任务共享一些参数或模型超参数的先验分布,经过预训练的BERT模型即采用参数共享提高模型的适用度[17],其预训练语料来自BooksCorpus(8亿个单词)和英文维基百科(25亿个单词)[18]。BERT模型在卫星领域的迁移学习路径如图3所示。
图3BERT模型在卫星领域的迁移学习路径
Fig.3Transfer learning path of BERT model in satellite domain
基于迁移学习的BERT模型生成子词特征向量过程如下:对语料库第i条句子si的每个单词按照预训练模型的词汇表进行子词分割,例如单词“SpaceX”被划分为子词“space”和子词“##x”。固定特征向量长度为l,含有m个子词的句子si=(wi1,wi2,···,wim)以子词为单位计算3个特征:词特征C1=[c11,c12,···,c1m]∈Rl×m、句子特征C2=[c21,c22,···,c2m]∈Rl×m、位置特征C3=[c31,c32,···,c3m]∈Rl×m。基于BERT的输入表示层的输入为三者数值之和C0=C1+C2+C3,C0=[c01,c02,···,c0m]∈Rl×m经过多层Transformer[2]输出最终的特征向量矩阵Ei=[ei1,ei2,···,eim],Ei∈Rl×m。
3.2 基于BiLSTM的文本编码层
卫星领域命名实体识别同自然语言处理其他领域一样与上下文语境关联密切,具有长期依赖特点。长-短期记忆网络(long short-term memory,LSTM)凭借独特的记忆单元结构捕捉序列的长程依赖性。
对于第i条句子si=(wi1,wi2,···,wim),BERT的输出Ei=[ei1,ei2,···,eim],Ei∈Rl×m作为BiLSTM层的输入。整个句子经过前向LSTM和后向LSTM计算每个单词的前向特征Fi=[fi1,fi2,···,fim]和后向特征Bi=[bi1,bi2,···,bim],Fi,Bi∈Rd×m,二者拼接融合上下文特征,记为Qi=[Fi; Bi]∈R2d×m,最后经softmax层线性映射到标签空间Pi∈Rk×m,k为标签总数。
(2)
(3)
式中,pij∈Rk×1表示第i条句子的第j个词分别对应k个标签的概率矩阵,W表示权重矩阵,b表示偏置向量,激活函数为softmax函数。由式(3)可知,softmax层的输出是相互独立的,与相邻输出毫无影响,这与自然语言的连通性相违背,因此下一步引入CRF学习相邻标签的依赖关系。
3.3 基于CRF的文本解码层
卫星新闻中单词只与相邻的上下文有关,与其他内容无关,符合马尔可夫随机场的特征。条件随机场是给定一组输入随机变量对输出随机变量预测的条件概率模型,要求输出随机变量满足马尔可夫随机场。CRF充分考虑相邻实体标签的依赖关系,基于这些约束从统计方法上提高预测标签序列的准确概率。
对于句子s=(w1,w2,···,wm),BiLSTM层的输出P=[p1,p2,···,pm]作为CRF层的输入观测序列X=[p1,p2,···,pm],设CRF层的输出标签序列y=[y1,y2,···,ym],yi∈{1,2,···,k}表示k个标签,条件概率分布为线性链条随机场。
定义状态转移矩阵,aij表示标签i到标签j的转移概率,。定义特征函数:
(4)
特征函数s(X,y)第一项表示转移特征,第二项表示状态特征。
在观测序列X=[p1,p2,···,pm]的条件下,输出标记序列y=[y1,y2,···,ym]的条件概率具有如下形式:
(5)
训练时对条件概率P(y|X)取对数并最大化,最大值对应的标记序列y*即为输出最优标签序列。
4 实验设计及结果分析
为了验证卫星领域实体识别模型的有效性,分别采用多模型对比和领域内对比的分析方法。多模型对比指的是在同一数据集下,与BiLSTM、BiLSTM-CRF、BIGRU-CRF、CNN-BiLSTM-CRF等常用实体识别模型对比分析;领域内对比指的是与卫星领域其他命名实体识别方法进行比较,包括数据集对比和模型对比。
4.1 评价方法
命名实体识别是信息抽取的研究内容之一,评价指标采用在消息理解系列会议(message understanding conference,MUC)中规定的衡量信息抽取系统性能的两个指标:精确率(P)和召回率(R)。为了综合评价抽取系统的性能,通常还计算二者的调和平均数——F1值[19]。
(6)
微平均(micro-average)F1值将各类实体依据实体数目先统计汇总再计算相应指标,有效缓解语料库SatCorpus中8类实体数据不均衡的现象。
4.2 实验设置
按照6 ∶2 ∶2的比例将语料库SatCorpus划分为训练集、验证集、测试集,采用准确率、召回率、F1值作为评价指标。实际实验中预训练BERT模型采用含有12个Transformer隐藏层、12个多头注意力和768维隐藏层的BERT-base模型。由于BERT模型以子词为单位输出特征向量,在文本解码层取实体所含子词的第一个标签作为预测标签。实验基于TensorFlow2.3.0深度学习框架在单NVIDIA GeForce RTX 2080 Ti上训练模型,模型参数设置见表4。
表4BERT-BiLSTM-CRF模型实验参数
Tab.4 BERT-BiLSTM-CRF model experimental parameters
4.3 实验效果分析
BERT-BiLSTM-CRF模型对卫星领域不同实体的识别结果见表5。其中对于“制造公司”和“时间”两类实体的识别效果达到99%以上。由于“时间”实体的规则性强,与特定词(如“year”“month”等)存在很强的关联度,模型对这类实体的识别精度高。模型对“卫星名称”实体的识别性能相对较差,召回率比精确率下降接近4%,主要是由于该类实体结构较复杂,存在名称歧义性严重等问题,例如“First”卫星的名称易与常见英文单词“first”混淆,导致将其判别为非卫星实体而降低召回率。
表5基于BERT-BiLSTM-CRF的卫星领域实体识别结果
Tab.5 Entity recognition results in satellite domain based on BERT-BiLSTM-CRF
多模型对比:为了进一步验证BERT-BiLSTM-CRF模型在卫星领域实体识别效果的优异性,在同一语料库SatCorpus上分别对BiLSTM、BiLSTM-CRF、CNN-BiLSTM、BiGRU-CRF、BERT-BiGRU-CRF模型进行实验。对上述模型按照输入表示层、文本编码层、文本解码层进行网络结构划分,前四个模型均没有特定的输入表示层,而是随机初始化子词向量,BiLSTM模型没有明确地划分出文本编码层和标签解码层。各模型的微平均F1值见表6和图4。
表6命名实体识别模型效果对比
Tab.6 NER model effect comparison
由图4可知,BERT-BiLSTM-CRF模型F1值在8类实体的6类中均处于较高水平,对“卫星名称”实体识别精度超过92%,在“来源地”实体中几乎接近于最优值,说明该模型在卫星领域的实体识别性能高于其他模型。不同模型结合不同实体的对比分析如下:
1)相比于其他模型,BiLSTM缺少明确的输入表示层和文本解码层,不仅微平均F1值在最低水平,在不同实体的识别精度上也基本处于最低位,对“发射场所”实体的识别精度低于76%。即便只有单一结构,该模型在“时间”实体上的F1值也高达98%,这说明对于规则性强的实体,弱表达模型的识别能力不逊色于强表达模型。
图4不同实体在不同模型上的F1值
Fig.4F1-score for different entities on different models
2)相比于BiLSTM模型,BiLSTM-CRF模型的微平均F1值提高1.19%。由于CRF是基于单词特征和转移概率学习语料的特征,更易于抽取单词间的依赖关系,如“O”标签后的下一个实体只能以“B-”而不是“I-”开头。除了 “时间”实体外,其他实体的F1值均有明显提升,“发射场所”实体的F1值提升幅度最大,达到5.37%。
3)相比于BiLSTM-CRF模型,BERT-BiLSTM-CRF模型的微平均F1值提高1.74%,具体表现为“发射场所”和“政府组织”两类实体的F1值分别增加15.71%和9.34%。这两类实体如2.1节所述嵌套严重,且表达方式较为灵活,如“发射场所”实体有文字+数字+编号(Launch Complex 39A)结合和纯文字描述(Kennedy Space Center)两种表达方式,“政府组织”实体存在全称(defense advanced research projects agency)与缩写(DARPA)两种不同的描述方法。
4)BiGRU-CRF模型比BiLSTM-CRF模型的整体F1值提高1.06%,BERT-BiGRU-CRF模型反而比BERT-BiLSTM-CRF模型降低了0.57%。这是因为BiGRU简化了BiLSTM结构,在接入庞大的预训练模型后对基于BERT输入表示向量的上下文表征能力弱于BiLSTM。
5)不同模型在不同实体上的F1值在“发射场所”和“政府组织”两类实体上差异显著。对于上述两个实体类型,BERT-BiLSTM-CRF模型略高于BERT-BiGRU-CRF模型,领先BiGRU-CRF模型12.5%和7.54%,大幅领先BiLSTM模型21.11%和9.29%。
领域内对比:与基于spaCy库的一种使用线性统计学习方法的卫星领域命名实体识别模型SatelliteNER[14]相比,本方法应用迁移学习方法解决标注数据匮乏的问题,能够识别更多种类实体,召回率和精度实现均衡,见表7。
表7与现有卫星领域命名实体识别方法对比
Tab.7 Comparison with the existing satellite domain named entity recognition methods
在其他领域的命名实体识别研究上,BioBERT[20]将预训练模型BERT应用于生物医学语料库;BERT-BiGRU-Attention-CRF [21]在编码层与解码层之间添加注意力层增加对企业年报上下文本的表征能力;FMM-CAM[22]针对法律文书实体名称长、关联度大的特点,建立匹配词分区定位词的边界。本文模型相比于上述模型有如下特点:①除使用预训练BERT模型构建输入表示层外,还使用BiLSTM和CRF分别构建编码层和解码层,结构清晰,提升模型的可读性;②BERT是一种基于Transformer的预训练模型,Transformer的核心是多头注意力机制——以类似自相关和互相关的形式允许单词获得邻域单词的注意力分布从而储存长期记忆信息,鉴于BERT自带注意力机制,因此后续模型搭建中没有再过多添加注意力层,简化了模型结构;③通过构建模糊边界规则实现边界定位,识别效果更高,在三种领域方法中F1值最高。
综上所述,基于预训练BERT的输入表示层弥补了在小数据卫星领域中特征不足的缺陷,BERT的微调机制与后续BiLSTM和CRF层联动,提高对嵌套严重、边界模糊、表达方式多样的实体识别效果。
5 结论
针对开放域中卫星领域实体识别存在实体边界模糊、嵌套严重、实体种类丰富、规律性差、隐蔽性强等问题:
1)提出考虑模糊边界的卫星领域实体标注规则,结合领域专家知识构建卫星领域实体分类策略,实现数据集自动标注,建立了基于航天新闻的卫星领域语料库SatCorpus,与该领域现有语料库相比,粒度更细,覆盖更广。
2)提出基于BERT-BiLSTM-CRF的多神经网络融合的卫星领域实体识别模型,通过在语料库SatCorpus上的多模型对比及领域内对比,结果表明:提出的BERT-BiLSTM-CRF模型优于较成熟的5种模型,微平均F1值高达96.10%,在每类实体上的F1值均高于92%,尤其是在“发射场所”和“政府组织”两类实体上,BERT-BiLSTM-CRF模型领先BiGRU-CRF模型12.5%和7.54%;模型优于卫星领域其他命名实体识别方法,取得高精度的同时提高召回率,实现精度和召回率的均衡。
下一步工作计划对语料库SatCorpus进一步扩充,探索无监督或半监督方法,在保证实体识别效果的基础上对模型进行简化,并对卫星领域的关系抽取方法开展研究。