面向武器装备领域的复杂三元组抽取方法

2024-03-05 01:41游新冬刘陌村葛昊杰吕学强
小型微型计算机系统 2024年3期
关键词:三元组知识库实体

游新冬,刘陌村,葛昊杰,肖 刚,吕学强

1(北京信息科技大学 网络文化与数字传播北京市重点实验室,北京 100101)

2(军事科学院 系统工程研究院复杂系统仿真总体重点实验室,北京 100101)

0 引 言

武器装备领域的三元组抽取是构建武器装备领域知识图谱的重要环节,是获取武器装备领域知识的重要手段[1].例如对非结构化文本“以总统名字命名的杰拉德R福特号航空母舰是美国下一代全新核动力航母,搭载F35C舰载机,耗资130亿美元.”而言,三元组抽取任务是获取到“<杰拉德R福特号,属于,美国>、<杰拉德R福特号,搭载,F35C舰载机>”等符合RDF(Resource Description Framework)技术框架的格式化三元组知识数据.三元组抽取可以帮助我国专家开展非结构化文本中包含的武器装备之间的关系挖掘工作,以提高对装备信息的掌握水平.

而复杂三元组抽取是关系抽取任务中的一个研究热点与难点,其抽取质量对知识图谱的知识覆盖能力有着很重要的作用.复杂三元组按照头实体、尾实体和关系的位置可以分为单实体重叠和实体对重叠.武器装备领域存在着大量的复杂三元组知识.

以“杰拉德R福特隶属于美国,搭载了F35C舰载机.”为例,单实体重叠三元组(Single Entity Overlap Triples)包含的三元组有:“<杰拉德R福特,属于,美国>、<杰拉德R福特,搭载,F35C舰载机>”,重叠的部分是头实体(杰拉德R福特”).以“1943年胡蜂号下水服役,并次年开始参与太平洋战争.”为例,头尾实体对完全重叠(Entity Pair Overlap Triples)包含的三元组有:“<胡蜂号,下水时间,1943年>、<胡蜂号,服役时间,1943年>”,重叠的部分是头实体(“胡蜂号”)和尾实体(“1943年”).

三元组抽取主要有两大流派方法:第1个是流水线式的抽取,是在命名实体识别与分类任务完成以后再开展对实体之间的关系进行抽取;第2个是联合式的抽取,是对实体和关系进行同时识别,源于神经网络的端到端模型.目前面临的问题有两点:1)非结构化信息的利用不足,未能从多个角度挖掘深层领域特征;2)方法对武器装备领域的样本标注依赖较为严重.为对非结构化信息挖掘更加充分,采用挂载维基百科知识库对头实体识别器的正确头实体进行类型解释对后续的抽取过程给予知识奖励;为缓解模型对样本标注的依赖使用多轮对抗攻击的方式对样本的多样性做了提升,提高了模型的鲁棒性.

针对武器装备领域数据特点,本文提出一种挂载武器装备领域知识结合多轮对抗攻击的复杂三元组抽取方法RDA(Relation extraction in Domain of weaponary combined with multi-round Adversarial),该方法主要为三阶段式的联合抽取模型:挂载维基百科外部知识库向模型传达武器装备领域知识,采用多层次的单层指针网络进行复杂三元组的联合抽取.在构建的5000条武器装备领域数据集上的实验表明:提出的RDA方法可更加充分地利用武器装备领域的信息,增加了样本的多样性,提升了模型的鲁棒性.为解决样本多样性缺乏的问题采用在嵌入层发动多轮对抗攻击的手段,使用单层指针网络对头实体进行识别,并挂载武器装备领域知识库对被正确识别出来的头实体进行知识奖励.F1值达到81.72%,取得了SOTA效果.

1 相关工作

关系抽取(Relation Extraction,RE),是知识获取的一个关键子任务,负责从非结构化的自然语言中抽取由本体设计确认的关系,并据此对知识图谱的节点与节点之间的线进行构建.依据关系的类型,可将关系分为两类;正常三元组(Normal Triple)、复杂三元组(Complex Triples),其中复杂三元组包含头实体或者尾实体重叠三元组和头尾实体完全重叠两个类别[2].

普通关系抽取的方法主要经历了4个阶段,第1个阶段是专家制定领域规则方法[3];第2个阶段是基于标注数据的有监督方法[4-6];在2007年,Giuliano等人[5]对SemEval-2007的评测数据,利用实体的上下文特征和实体之间的距离等特征,使用了支持向量机进行训练取得了71%的F1值.此类方法相对于规则阶段更加灵活,减少了一定的人力参与度.但是仍然存在两个缺点:第1点是特征选择工作需要有一定专业素养的人员来开展,第2点是对非结构化文本的上下文信息利用不足,未能多角度充分挖掘上下文信息.在2009年,庄成龙等人[6]在ACE-2004数据集上开展基于树核函数的关系抽取,采用了融入实体语义信息然后再对树进行剪裁,并去除掉修饰语的冗余信息,达到了71.9%的F1值.然而,基于标注数据的有监督方法也存在着缺陷,其一是需要大量的数据标注,这对人力物力的消耗是比较高的;其二是模型对数据的依赖性非常高.第3个阶段是基于少标注数据或者零标注数据的半监督或者无监督方法[7,8];第四个阶段是基于神经网络的方法[9,10].

针对武器装备领域的关系抽取,近年来也得到了关注.在2019年,李芊芊等人[11]使用句法分析的手段,获取到文本的谓词,然后针对谓词展开了依存分析,在SemEval-2010的基础上筛选出的数据集上取得了80.90%的F1值.在2020年,王乾铭等人[12]提出了一种将序列生成和位置注意力结合起来的实体关系联合抽取模型,将token的绝对位置和相对位置进行了结合,在作战文书上达到了83.35%的F1值.在2021年,田佳来等人[13]在NLPCC会议上提出采用膨胀卷积技术扩大感受野,以Word2Vec作向量化模型,使用分层标注的方法对军事领域的关系进行了识别,在军事语料上达到了79.17%的F1值.

基于以上的研究分析,可以发现在武器装备领域的复杂关系抽取中,目前面临的问题有两点:1)对于非结构化信息的利用不足,不能从多个角度挖掘深层领域特征;2)抽取方法对武器装备领域的样本标注依赖较为严重.为了更加充分地挖掘非结构化信息,本文采用挂载维基百科知识库对头实体识别器的正确头实体进行类型解释以对后续的抽取过程给予知识奖励;为缓解模型对样本标注的依赖,使用多轮对抗攻击的方式对样本的多样性做了提升,提高了模型的鲁棒性.据此,提出了一种挂载武器装备领域知识库并结合多轮对抗攻击的复杂三元组抽取方法.该方法为3阶段式的抽取方案:第1阶段是获取特征向量;第2阶段是使用单层指针网络对头实体进行识别并挂载武器装备领域知识库对被正确识别出来的头实体进行知识奖励,为解决样本多样性缺乏的问题采用在嵌入层发动多轮对抗攻击的手段;第3阶段是采用分层标注的框架以线性化的谓语为基准,采用单层指针网络对宾语的开始位置和结束位置进行判定,最终实现复杂三元组的抽取.提出的RDA方法将流水线式和联合学习式的抽取方法进行了一定的交叉融合,通过挂载武器装备的知识缓解分层标注的天然缺陷,实现对武器装备领域的复杂关系以及隐含关系进行抽取.

2 挂载武器装备领域知识结合多轮对抗攻击的复杂三元组抽取方法-RDA

提出的RDA方法的模型结构如图1所示.该模型主要由文本嵌入层模块、结合多轮对抗头实体识别器,武器装备知识库模块、关系尾实体识别模块4个部分组成.文本由文本嵌入层模块进行序列化之后投入结合多轮对抗攻击的头实体识别器将其识别为头实体或尾实体,再通过武器装备知识库模块,针对不同的头实体类型,根据维基百科中定义或者解释获取到描述该类型的句子解释向量.然后以字为最小粒度进行信息融合.最后进入到关系尾实体识别模块,同样是将任务细化为两个子任务:指定关系对应的尾实体头识别和尾识别.不同的是,本体设计中涵盖的所有关系将会与主语识别器的成果进行运算,挖掘主语与所有可能的关系.

图1 挂载武器装备领域知识结合多轮对抗攻击的复杂三元组模型结构Fig.1 Complex triplet model structure of mounted weapons and equipment domain knowledge combined with multiple rounds of counterattack

RDA方法采用的文本向量化的技术是BERT模型,通过在海量文本上进行无监督预训练(Pre-training),然后在特定的下游任务数据上进行微调(Fine-Tuning),BERT在多项自然语言处理任务中都表现突出.内部采用多层Transformer作为其编码结构,相比基于时间序列的循环神经网络,BERT具有更强的上下文语义信息捕获能力,蕴含了更为丰富的句法、语义和上下文信息.

2.1 文本嵌入层模块

如图1所示首先对token进行嵌入(Embedding),其中包含了3部分:第1部分标记嵌入(Token Embedding)是词向量或者字向量,使用CLS标记以更为公平地融合句子中的每个token语义,用于后续的分类任务;第2部分句段嵌入(Segment Embedding)是因自编码的语言模型的下一句预测(Next Sentence Prediction)子任务需要区别两个句子,在RDA方法的模型中默认为零;第3部分位置嵌入(Position Embedding)是为保证脱离了RNN时序系列模型的位置约束后,引入位置嵌入信息以适应自然语言的时序性.为规避三角函数的对偶性无法区分方向的缺陷,并非采用Transformer的位置嵌入信息方式,而是通过学习参数获取.然后经过12层的Transformer模块,使用自编码方式结合自注意力机制对文本的双向上下文以获取向量.

文本嵌入层的字符输入视为字符向量化,X=(x0,x1,x2,…,xn-1),从输入token序列到向量序列的过程如公式(1)所示:

(1)

2.2 结合多轮对抗攻击的头实体识别器

提出了将多轮对抗攻击.融入到头实体识别器中的方法,可以提高头识别器投喂在下阶段的信息困惑度,以此提高模型的识别能力.

2.2.1 多轮对抗攻击

RDA的对抗攻击的生成方式为Fast Gradient Method(FGM)[14],其原理如公式(2)、公式(3)所示:

g=∇xL(θ,x,y)

(2)

其中,θ代表模型参数,x代表原始的输入样本,y代表gold label,L代表损失函数,∇x代表对x求梯度.

FGM:radv=ε*g/‖g‖2

(3)

其中,radv代表攻击扰动样本,ε代表对抗攻击强度系数,g代表梯度.FGM为更加严格地对梯度的方向进行保留,采取使用L2归一化技术对梯度进行修正.多轮对抗攻击流程伪代码如表1所示.

表1 多轮对抗攻击算法伪代码Table 1 Multiple rounds of anti-attack algorithm pseudocode

2.2.2 头实体识别器

一般的头实体识别任务是使用一个线性层分类器获取到实体的开头和结尾,再结合最近原则进行匹配.如图1所示,提出的RDA方法采用在嵌入层然后接入由S、E两个识别层构成的头实体识别器,将其任务分开:一个只处理当前token是实体头的概率(S识别层);另一个只处理当前token是实体尾的概率(E识别层).采用与正态分布关联密切且计算量较小的Sigmoid激活函数对每个识别层的概率进行激活,数值代表该token在S识别层或者E识别层中被判定为实体头或者实体尾的概率,阈值设定为0.5.头实体识别器原理如公式(4)、公式(5)所示:

(4)

(5)

其中,tokenstart和tokenend分别代表了S识别层和E识别层的输出序列,对应了token序列成为实体头、实体尾的概率,radv代表由嵌入层的多层Transformer Block叠加层运算获取到的向量并经过多轮对抗攻击后生成的样本.

2.3 武器装备知识库模块

在本模块,使用维基百科作为武器装备类型的外部知识库.针对不同的头实体类型,根据维基百科中定义或者解释获取到描述该类型的句子解释向量.然后以字为最小粒度进行信息融合.Type信息融合模块工作原理如公式(6)、公式(7)所示:

sent_vecentity=Wiki(Typeentity)

(6)

其中,sent_vecentity代表类别Type对应的句子解释向量,Wiki表示维基百科,entity表示上节的结合多轮对抗攻击的头实体识别器的成果.

(7)

2.4 关系尾实体识别模块

如图1所示,关系尾实体识别模块同时识别尾实体和与其归属的本体设计中包含的关系.其结构与头实体识别器类似,同样是将任务细化为两个子任务:指定关系对应的尾实体头识别和尾识别.不同的是,本体设计中涵盖的所有关系将会与主语识别器的成果进行运算,以获取主语与所有可能的关系的挖掘.本模块的运作原理如公式(8)和公式(9)所示:

(8)

(9)

3 实 验

3.1 实验数据

实验数据来源于互联网的公开数据,通过数据采集技术对环球军事网的舰船、飞机等信息进行了自动化地采集并持久化至容器.经过数据筛查、数据清洗,最终标注数据5000条,经过署名式交叉方法对数据质量进行了检查.对最终的数据进行了数据划分,划分比例为7:2:1,分别作为训练集、验证集、测试集.关系分布统计情况如表2所示.实验数据的统计如表3所示.

表2 关系分布统计表Table 2 Relational distribution statistics

表3 实验数据的统计信息Table 3 Statistical information on experimental data

从表2可以发现,数据集中包含关系最多的是“装备”和“属于”,分别占比为29.68%、24.80%;包含关系最少的是“舰宽”和“吃水”,分被占比0.55%和0.25%.根据关系分布的观察可以发现此数据集具有很强的领域特性.

从表3可以发现,头实体或者尾实体重叠三元组和头尾实体完全重叠在数据中的比例是有一定比例的,条数分别是5435条和68条,占比分别为69.26%和0.87%.数据标注的样例如表4所示.第1条样本内容包含的是SPO三元组,“杰拉德R福特号”作为共享的头实体参与3个三元组.第2条样本内容包含的是EPO三元组,“胡蜂号”和“1943年”分别作为头实体和尾实体参与了两个三元组.

表4 实验数据的标记样例信息Table 4 Label sample information of experimental data

3.2 评价指标

提出RDA方法的评价指标和以前的评价方法一致[15].为确保评价的公平,采用忽略掉次序约束的基于片段实体粒度的精确度(P)、召回率(R)和F1值进行计算.基于片段实体粒度的计算方法如公式(10)~公式(12)所示:

(10)

(11)

(12)

其中,TP表示正确被识别出的头实体、关系和尾实体的组合个数(以实体或者关系片段作为最小粒度),FP表示被错误地识别为头实体、关系和尾实体的组合个数,FN表示未被识别出的头实体、关系和尾实体的组合个数.

3.3 对比实验设置

为验证提出的挂载武器装备领域知识结合多轮对抗攻击的复杂三元组方法RDA的有效性,实验采用了目前在三元组抽取任务中效果最好的4个模型进行比较.第1个模型是2017年Zheng Suncong[16]在ACL会议上提出的NovelTagging;第2个模型是2018年Zeng Xiangrong[17]在ACL会议上提出的CopyR;第3个模型是2019年Fu Tsu-Jui[18]在ACL会议上提出的GraphRel;第4个模型是2019年的苏剑林[19]提出的百度三元组抽取方法(称为SJL);第5个是2020年田佳来等人[20]在NLPCC2020会议上提出的HSL方法.对比实验的设置与对比实验所对应的特点说明情况如表5所示.

表5 对比实验信息表Table 5 Comparative experimental information

其中,NovelTagging方法采用端到端模型思想,使用Bi-LSTM进行语义信息捕获,设计了全新的数据标注策略,用阿拉伯数字1和2分别代表了头尾实体的相对位置,将关系抽取任务转化为了横向上的序列标注问题.CopyR方法将翻译领域常用的复制机制引入了关系抽取任务,是典型的联合学习架构.采用两种策略解码,一种是联合解码器,另一种是多个分离解码器,采用LSTM进行语义捕获,通过多个分离解码器开展复杂三元组的抽取.GraphRel方法在Glove训练词向量的基础上使用LSTM网络捕获上下文信息,然后利用Bi-GCN网络构建了依存结构多跳信息进行捕获完成两个阶段的任务.第1阶段的任务是对实体对进行所属关系的判断;第2阶段的任务是使用Bi-GCN对入边和出边的词特征进行加强学习,使GCN具有方向特性更加适应关系的有向性的特点.SJL方法首先开展了对实体的识别工作,然后将主语的信息和采用Bi-LSTM对句子的上下文信息进行捕获输入至模型中进行0、1序列标注,对复杂三元组拥有一定的处理能力.HSL方法使用具有残差连接的膨胀卷积技术,扩大了模型的感受野,对信息的遗漏问题进行了缓解,利用自注意力机制对关系进行抽取,对复杂三元组有较好的抽取能力.

3.4 消融实验设置

为验证提出的RDA方法中模型组件的效果,以分析多轮对抗攻击和武器装备领域知识对实验结果的贡献情况,设定了4组实验进行消融分析.第1组是去除掉多轮对抗攻击和武器装备知识库;第2组是去除对轮对抗攻击,保留武器装备知识库;第3组是去除武器装备知识库,保留多轮对抗攻击;第4组是都保留多轮对抗攻击并挂载武器装备知识库.消融实验如表6所示.

表6 消融实验信息表Table 6 Ablation test information

3.5 实验参数设置

实验运行在Linux Ubuntu操作系统上,编程语言为Python 3.6.9,使用Pytorch框架搭建神经网络.依据服务器的GPU大小设定Batch_size 设置为32.本文中的武器装备知识库采用Word2Vec模型挂载,向量维度设置为300,滑动窗口设置为5,低频词阈值设为1.多轮对抗攻击的干扰强度系数为1.0.采用早停法对训练进行控制优化,容忍度设置为20,波动变化的阈值设置为0.00002.本实验相关的参数如表7所示.

表7 模型参数设置信息Table 7 Model parameter setting information

3.6 实验结果与分析

3.6.1 对比实验结果分析

提出的RDA方法运行在Linux Ubuntu操作系统下,使用GPU进行矩阵化加速.训练过程中对数据进行了7:2:1的比例进行划分.经过多轮的调参训练,对学习率、干扰强度系数、变化阈值、容忍度等参数进行了多次的尝试,最后得到模型参数设置信息表中的最佳参数组合.最终对比实验的表现对比如表8所示.

表8 对比实验结果Table 8 Comparative experimental results

经过对表8中的数据分析,可以看出采用单层序列标注的编号为0的NovelTagging与采用分层序列标注的编号为3的SJL方法相比F1值表现分别为23.65%和74.24%,原因可能是两个方面:一个原因是前者的语义捕获相对欠佳;另一个原因可能是前者单一的横向序列标注任务无法解决复杂三元组的存在的标签重叠问题,而后者的纵向分层可以缓解标签堆叠的问题.编号为2的采用单一联合解码器和采用多个分离解码器的模型实验结果取得了18.24%和25.57%的F1值,据此可看出后者多个分离解码器可缓解复杂三元组遇到的两大问题:SEO和EPO,获得了7.33%的表现提升.采用两阶段的标号为3的SJL方法和采用膨胀卷积技术的HSL方法在数据集上的F1值表现分别为74.24%和79.17%,获得了4.93%的表现提升,可以看出后者采用的膨胀卷积技术将感受野扩大是对关系抽取任务是有利的.上述方法没有将知识提示融合到模型抽取中,并且鲁棒性因为数据有限的原因受到了一定的限制.提出的RDA方法通过挂载武器装备领域知识,对实体的类型解释作为新的知识提示融入到模型中,作为第1阶段的奖励,然后结合多轮对抗攻击提高了样本多样性,在有限度的条件下给与模型最大化的困惑增强了模型的鲁棒性,最终获得了最佳表现:81.72%的F1值,与NLPCC2020提出的HSL相比获得了2.55%的表现提升.

NovelTagging方法的单一的序列标注任务、CopyROneDecoder的单个联合解码器和GraphRel1p方法的无Bi-GCN分支,表现均不佳,原因可能是SEO和EPO导致的标签层次堆叠、分类结果多样、共享片段的强关联问题导致的.然后SJL方法采用分层标注的思想,较以前的方法得到了显著地提升,然后HSL方法使用膨胀卷积技术扩大了感受野,将召回率进行了提升,获取到了一个更佳的表现.RDA一方面在模型训练中通过发动多轮对抗攻击,提升困惑度的方法增强了模型的鲁棒性;另一方面利用武器装备领域知识库扩充了头实体类型表述的知识提示,奖励了结合多轮对抗攻击的主语识别器的正确样本,最终获得了SOTA.

3.6.2 消融实验结果分析

为了验证本文提出的组件对实验效果的影响.通过剥离掉不同的组件,对实验进行分析对比,实验结果如表9所示.

表9 消融实验结果Table 9 Ablation results

从表9可以看出,在不加任何组件,只使用BERT模型作为预训练模型引入通用领域知识后,表现达到了80.18%的F1值.将实验编号0和1进行对比,能够发现挂载的武器装备领域外部知识库对表现的提高做出较大贡献,F1值提高了0.98%.将实验标号0和2进行对比可以发现,在训练时发动多轮对抗攻击是有效的,提高样本多样性,在一定程度上增大了模型的困惑度,F1值提升了0.25%.将实验标号0和3进行对比可以发现,在训练时发动多轮对抗攻击并挂载武器装备领域外部知识库后效果得到显著提升,二者结合后F1值提高了1.54%.在不加任何组件的时候,实验结果的召回率是最低的,通过增加多轮对抗攻击组件、武器装备领域外部知识库组件召回率都得到一定量的提升;实验的精准率在加入武器装备领域外部知识库组件后得到了提高,但是在发动多轮对抗攻击后却下滑了,原因可能是多轮对抗攻击的强度稍微高了,模型的困惑度提高了.在加上多轮对抗攻击和武器装备领域外部知识库以后,实验结果的精准率得到了进一步的提高,召回率略微下滑,最终F1的表现总体提高了.原因可能是在多轮对抗攻击后,部分头实体无法获得正向的武器装备领域知识库的知识提示,没有获取到知识奖励.

为更加直观地说明对比实验的表现差异,设定了包含SEO和EPO两类三元组的例句进行进一步具体的对比分析.例句的实验结果如表10所示.

表10 三元组抽取样例表Table 10 Example of the extracting triple

如表10所示,通过对比实验的样例可以看出0号实验的NovelTagging方法的抽取缺失了三元组,没有完成复杂三元组的抽取,可能是因为只是在标注层面设计了全新的标注策略,并未针对SEO和EPO三元组的问题进行针对性设计.1号实验的CopyR方法将复制机制应用到了关系抽取的任务中,通过样例可以发现对SEO类型的三元组抽取效果相较于0号实验的NovelTagging方法有所提高,但是仍然没有发现隐含的三元组知识;对EPO三元组的抽取效果仍然不佳,可能是复制机制对头尾实体没有进行有效的复制并成功匹配导致的;2号实验的GraphRel方法虽然使用RNN和GCN增强了编码能力,但是针对武器装备领域的抽取结果表现不佳;3号实验的SJL方法将主语的先验信息融入了模型,在SEO三元组文本上相较于0号实验的NovelTagging抽取出更多的三元组,但是还是没有抽取出隐含的三元组知识;4号实验的HSL方法使用残差连接的膨胀卷积技术对3号实验的SJL方法进行了改进,相较于0、1、2实验而言保持了SEO三元组的良好抽取表现外还对EPO三元组的效果进行了提升.RDA对3号实验和4号实验所采用的两阶段式抽取框架进行了改进提升,取得了最佳的抽取效果.

4 结 语

为解决武器装备领域中存在的大量单实体重叠(SEO)和实体对完全重叠(EPO)问题,提高复杂三元组的抽取效果,提出了一种挂载武器装备领域知识结合多轮对抗攻击的复杂三元组抽取方法(RDA).该方法在以BERT模型作为预训练模型,在引入通用领域知识的基础上,使用结合多轮对抗攻击的头实体识别器利用指针网络实现了头实体的识别,尽最大可能地将数据发动干扰提高了数据的样本多样性,增大了模型的困惑度,提高模型的鲁棒性.通过挂载武器装备领域外部知识库,对类别信息作为知识提示融入模型,进一步地丰富了信息表示.经过对比实验验证,提出的RDA方法优于现有方法,有效解决了武器装备领域的复杂三元组的抽取问题.然而,提出的RDA方法在知识提示部分利用武器装备领域外部知识库的资源实现对正确地头实体进行知识奖励,本质上还是以提高非结构化文本底层特征的丰富度为切入点.在以后的研究中,可以考虑对多模态知识提示,从而进一步地对现有知识进行充分挖掘.

猜你喜欢
三元组知识库实体
基于带噪声数据集的强鲁棒性隐含三元组质检算法*
特征标三元组的本原诱导子
前海自贸区:金融服务实体
关于余挠三元组的periodic-模
基于TRIZ与知识库的创新模型构建及在注塑机设计中的应用
实体的可感部分与实体——兼论亚里士多德分析实体的两种模式
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
高速公路信息系统维护知识库的建立和应用
基于Drupal发布学者知识库关联数据的研究