面向公路工程规范的多粒度知识提取与知识应用方法
2024-03-26孙克强张嘉鸿伍震胡振中
孙克强 张嘉鸿 伍震 胡振中
(1.广东省路桥建设发展有限公司,广州 510623;2.清华大学 土木工程系,北京 100084;3. 清华大学 深圳国际研究生院,深圳 518055)
引言
随着社会经济的高速发展以及设计施工水平的提升,我国公路工程建设项目数量不断增加、规模不断扩大。为了提高建设项目规范化水平、保证工程质量以及降低工程风险,国家与地方出台了一系列法律法规与规范标准,行业与企业也制定了相应的标准与规定。
这些规范类文件在公路工程的建设阶段起到重要的规范、指导与约束作用,为公路工程领域提供了大量的知识。随着近年来国家大力推进建筑产业的现代化进程,学界也对建筑信息化技术进行了大量研究[1],形成了数字化的工程数据与知识。而在公路工程规范类文件中,非结构化数据以自然语言的形式存储,目前行业对这类数据的获取、检索仍然处于较低水平,造成了知识的低效率应用。这种低效率的知识提取与应用方法阻碍了公路工程标准化、信息化与智能化水平的提升。因此,如何能够从大量文本中获取领域知识,并在公路工程项目建设管理过程中实现高效应用,成为了当前公路工程建设领域的一个重要课题。
针对上述问题,本研究以公路工程领域规范类文本为研究对象,对词语粒度、语段粒度以及语句粒度进行了多粒度特征分析,以此为基础提出基于规则的信息提取方法。本研究还面向中江高速改扩建工程的建设管理,建立了公路改扩建工程知识图谱,开发了公路工程安全信息检索与应用系统,实现了对规范文本的知识提取与应用。
1 文献综述
信息抽取(Information Extraction, IE)作为一种自然语言处理技术(Natural Language Processing, NLP)[2],是指从非结构化的自然语言文本中抽取所需要的信息,并形成结构化输出[3],主要包含三个子任务:命名实体识别(Named Entity Recognition,NER),关系抽取(Relation Extraction,RE)及事件抽取(Event Extraction,EE)。知识图谱(Knowledge Graph,KG)[4]是一种高效的知识结构化存储与知识表达方式,在识别命名实体、关系以及事件后,可以将知识储存于知识图谱中[5,6]。
IE 目前主要有两类解决方案:基于规则和基于学习的方法。基于规则的IE 一般是根据词法与句法特征设计信息抽取方法,这种方法的特点是先推理规则再进行信息抽取[7],抽取效果高度依赖规则设计,需要专家知识与规则支撑,在专业领域或语言特征突出的文本中效果较好。基于学习尤其是基于深度学习的IE是过去十年的热门研究课题,其中包括LSTM 模型[8]、GPT 模型[9]和BERT 模型[10]等,此类方法的效果高度依赖模型的设计与标注数据集的规模和质量。在建筑行业中,信息抽取技术也得到了一定的应用[11,12]。
对于公路工程领域信息抽取技术的研究,目前尚未提出较为完备的IE 方法,也没有实现领域大体量信息提取的案例。主要存在以下问题:
(1)基于规则的IE 需要根据文本特征设计抽取规则,目前尚未有研究对公路工程领域文本特征进行系统分析,也没有提出合理的抽取规则;
(2)基于学习的IE 需要大规模的标注数据集,目前公路工程领域内尚未有合适可用的数据集。
与一般文本相比,公路工程领域规范类文本篇章结构完整、语句逻辑规律,用词统一精确,适用基于规则的IE 方法。因此,对于公路工程领域规范类文本的IE,可以首先分析文本的结构特征,再以此为依据设计提取方法,以此提高IE 的效率与准确性。
对于IE 技术在工程领域规范文本中的应用,学者们在基于规则和基于学习的方法都取得了一定的进展。RASE 定义是Hjelseth 和Nisbet[13]提出的一种规范文本句子成分标记方法。此方法在英文规范文本的处理中卓有成效,但是在中文规范中,部分语句无法被RASE定义。姜韶华等[14]在中文规范中应用了RASE 方法,由研究人员使用RASE 对少量规范文本进行手动标记,并生成相应的用于合规性检查的规则。周育丞等[15]针对建筑设计规范,提出了一种基于深度学习的规范条文命名实体识别方法。Zheng 等[16]以本体为基础,提出了一种将规则自动转换为SPARQL 查询语句的算法。
也有部分学者对于可计算约束展开研究。Zhang 和El-Gohary[17]以及陈远等[18]提出了可计算约束的结构,并以此进行合规性自动检查。但是在实际的规范文本中,可计算约束的占比较低[19,20],此方法无法应用于规范信息的全文提取。
综上所述,虽然学界在信息抽取领域进行了很多研究,但是对于公路工程领域规范类文本的IE,目前的研究并不成熟。由于此类文本具有更规律的结构特征和语言特征,使用基于规则的IE 方法可以高效、准确地提取信息。国外学者提出的RASE 方法通过对句子成分先行定义,成功将规范类文本转换为结构化信息。但是由于语言的差异性,RASE 方法并不能直接应用在中文规范中。
2 公路工程规范类文本的来源与特征
公路工程的规范类文本主要包括:国家法律(如《中华人民共和国公路法》)、国家标准(如GB/T 18226-2015《公路交通工程钢构件防腐蚀技术条件》)、行业标准(如JTG/T F30—2014《公路水泥混凝土路面施工技术细则》)、地方标准(如《广东省高速公路工程施工安全标准化指南》)以及企业标准(如《省交通集团高速公路建设项目路面施工阶段交叉施工及交通安全指引》)等。主要介绍以下三部分内容。
2.1 公路规范文本的清单与数据获取
在对文本进行特征分析与知识提取等处理前,需要首先确定研究对象的范围,构造公路工程规范类文本清单,并形成项目数据源。
从知识来源的角度上看,应当包含国家法律、国家标准、行业标准、地方标准以及企业标准[21]。从知识边界的角度上看,不仅要涵盖狭义公路工程领域,还需要包含广义公路工程领域的规范类文本。比如,在国家规范GB 50545-2010《110kV ~750kV 架空输电线路设计规范》中,规定了输电线路与公路的交叉或接近的基本要求,这是公路工程与交叉行业的规范要求,属于广义公路工程领域。从知识应用的角度上看,本课题的研究成果将应用于广东省内的某项公路改扩建工程,因此应包括公路改扩建工程领域的相关规范类文本。
基于上述分析,本研究通过人工筛选并邀请专家校对的方式,最终确定规范类文本清单共967 本。根据清单获取对应的文本文件后,有部分文件为不可编辑文本,无法直接进行数据处理。因此,本研究采用光学字符识别(Optical Character Recognition,OCR)技术将文件转换为可编辑文本的形式。由于此类源文件多为印刷文本,因此OCR 识别结果通常较为准确,表格和图片也都能正常识别。但是对于文本中一些复杂公式,仍然需要进行人工审查和纠正。至此,完成了本研究的数据源获取。
2.2 公路规范文本的特征分析
对上述公路工程规范类文本进行分析,与一般文本相比,语言特征主要有以下几点:
(1)语言统一精确。公路工程规范类文本使用专业术语,如路基、路床及桥墩等,使用标准化语言,避免出现含糊不清或引起歧义的表达。遵循国家和行业的相关语言规定,不同文本中关于同一对象的表达大多相同,保证了语言的一致性和统一性,有助于文本命名实体与关系的识别;
(2)篇章结构完整。公路工程规范类文本按照一定的结构和格式组织内容,使之成为系统完整的技术文件。如规范JTG F90-2015《公路工程施工安全技术规范》,在章节结构上以总则、术语、基本规定以及各部分工程或作业的技术要求构成,并配有目录、附录以及条文说明等辅助材料;
(3)语句逻辑规律。在公路工程规范类文本中,子句内部遵循若干种句法构成,子句之间按一定的范式结合,并使用恰当的连接词或标点符号形成规律的语段。
经过上述分析,文本数据的信息抽取任务可以划分为两部分:结构信息抽取和语义信息抽取。其中,结构信息是指由特定的结构化标识方法表述的章节组织信息,语义信息是指由自然语言构成的具体描述。结构信息可以通过设计列表模式提取,并使用有序树结构进行存储。语义信息可以根据语段范式和子句句法设计语义提取与信息存储方法。
2.3 公路工程领域词库的构建
进行语义信息抽取前,需要首先构建公路工程领域词库,作为后续语段语句拆解和识别的基础。领域词库的生成主要基于以下两类来源:
(1)公路工程规范类文本。部分规范类文本中,有专门的篇幅对术语进行定义,如标准JTG B01—2014《公路工程技术标准》的第二章为术语部分,列举了“公路改扩建”、“公路功能”等领域术语及其释义。此外,还有专门介绍专业术语的规范类文本,如标准JTJ 002-87《公路工程名词术语》,共收录了924 条公路工程领域的名词术语及其释义。从公路工程规范类文本中获取的术语构成了基于文档的公路工程领域词库,该词库的特点是专业性高,且每个术语均有对应的释义;
(2)公开词库。从网络上可以获取公开词库,如搜狗细胞词库中收录了“公路工程专业术语”、“公路工程施工与监理词库”和“桥梁隧道”等领域词库。从网站获取源文件后,通过解码、合并等方式即可生成基于公开词库的公路工程领域词库,该词库的特点是词语覆盖面较广。
3 面向公路规范复杂语段的拆分与重构
公路工程规范类文本由一系列复杂语段构成,这些语段具有以下三个特征:
(1)语段可能由若干句子及段落构成,内部以句号或换行符等符号分割;
(2)部分句子结构复杂,由若干子句构成,并以分号或逗号等标点符号分割;
(3)子句之间一般以特定的范式结合。
因此,提出公路规范复杂语段的拆分与重构方法,即先提出子句之间的结合范式,再把复杂语段拆分为结构清晰、语义分明的简单子句,以便后续的语义抽取工作。以下主要介绍子句成分的定义方法TEARS,基于TEARS 进行子句成分识别并生成标准三元组。
3.1 公路规范复杂语段成分定义方法TEARS
对于规范文本的子句结合范式,Hjelseth 和Nisbet提出了RASE 定义方法[13],该方法通过定义规范语句的构成成分,实现从规范性语句向规则的转换,并被成功应用于BIM 模型的自动合规性检查中。在RASE定义中,规范语句被拆分为四个基础组成成分:约束要求、个并列或选择成分、应用范围及例外条件。
但是在中文公路工程规范类文本中,被标点符号分割的子句不一定能被RASE 的定义所描述。例如,在标准JTG B01-2014《公路工程技术标准》第10.2.4条“高速公路和作为干线的一级公路,整体式断面中间带宽度小于或等于12m 时,必须连续设置中央分隔带护栏”中,“高速公路和作为干线的一级公路”是规范的应用对象,无法被RASE的四个基础组成部分定义。
因此,本研究基于RASE 定义扩展提出TEARS的定义: 应用对象(T, Target)、 例外条件(E,Exception)、应用范围(A, Application)、约束要求(R,Requirement)及并列或选择成分(S, Selection)。应用于上述条文,可以对各子句进行成分识别:“高速公路和作为干线的一级公路”为T 成分,“整体式断面中间带宽度小于或等于12m 时”为A 成分,“必须连续设置中央分隔带护栏”为R 成分。
3.2 基于TEARS 的识别与重构算法
应用对象(T)的识别可以通过判定子句是否为名词性从句进行,即判定子句是否符合式(1),如“八车道及以上的高速公路”即为名词性从句。在式(1)中,“ATT(attribute)”指代定中关系,“HED(head)”指向句子核心,“n”表示名词节点。引入第2.3 节中构建的公路工程领域词库对名词节点进行识别,先使用规模较小但专业性较高的基于文档的公路工程领域词库,再使用覆盖面较广的基于公开词库的公路工程领域词库,以此提高识别的效率与准确率。
应用范围(A)与例外条件(E)的识别可以根据关键词进行正则匹配,例如在子句中匹配到“除”、“不”或“反之”等字词时,可以将此子句识别为例外条件(E),应用范围(A)的判定同理。表1 展示了二者的正则匹配模板及判定样例。
表1 成分识别正则表达表
TEAR 成分均可有对应的并列或选择成分(S),S成分在复杂语段中可能以显式或隐式的形式存在。对于隐式的S 成分,可以根据前述的TEA 识别方法获得,即得到相应的T(S)、E(S)或A(S)成分。例如,前序子句中已有E 成分,则后续符合E 成分识别方法的子句将判定为E(S)成分。若S 成分为显式形式,可以采用正则匹配方法识别,正则匹配模板如表1 所示。将子句判断为S 成分后,根据顺次前序子句的成分归属进行归类,如顺次前序子句为应用对象(T),则目标子句判定为T(S)。此时,语段中剩余的子句将被认定为R 或R(S)成分。至此,完成TEARS 框架下的成分识别。
在成分识别工作完成后,将TEAR 成分对S 成分做笛卡尔积,可以获得若干并列组合,将这些组合以形如式(2)的标准TEAR 三元组结构进行存储。
在标准三元组结构中,应用对象(T)、应用范围(A)与例外条件(E)是可以缺省的。例如,在语句 “不同形式的护栏相接时应进行过渡设计”中,由于单个子句成分完整,可以直接归为约束要求(R),其他成分缺省。在条文“整体拼接桥梁的桥下净空,不应小于原设计标准”中,两个子句可以分别归为应用对象(T)与约束要求(R)。TEARS 的识别与重构算法流程图如图1 所示。
图1 TEARS 成分识别与重构算法流程图
4 面向公路规范子句的语义抽取
将语段转换为标准三元组后,还需要提取各子句的语义信息。通过对公路规范的子句句法进行分析总结,本研究定义了四种基本句法结构:核心结构、修饰结构、协同结构及并列结构。在解析句法结构时,需要用到分词和词性标注等NLP 技术。目前,应用较为广泛的中文NLP 技术包括Jieba、HanLP 和LTP等。本项目应用的是由哈工大开发的语言技术平台(Language Technology Platform, LTP)。这是一套面向中文NLP 的开源基础技术平台,与其他常用的中文NLP技术包相比,此平台功能较全面,能够实现分词、词性标注、命名实体识别以及依存句法分析等任务。为了增强对公路工程领域术语的识别效率与准确性,本研究将第2.3 节中生成的领域词库以特征方式加入机器学习算法。四种结构的例句与对应的通用信息表达式如图2 所示,本章将详细介绍句法特征及语义信息提取方法。
图2 基本句法结构通用信息表达式与例句图
4.1 核心结构
核心结构是指忽略修饰成分后的句子主干,一般为“主谓宾”结构或“动宾”结构。图2 中的核心结构例句为“水泥混凝土面层应具有足够的强度”,属于“主谓宾”结构。
对于“主谓宾”结构,可以直接使用语义三元组存储信息;对于“动宾”结构,将主语部分设置为空(null)即可适用。对于有情态副词修饰的谓语,以列表的形式将情态副词顺序储存。此时,核心结构可由语义三元组及谓语的情态副词列表(若存在)共同表示。
4.2 修饰结构
修饰结构存在于对句子成分的修饰。在依存句法树中,修饰结构可以分为定语修饰结构与状语修饰结构。图2 中的修饰结构例句为“公路钢混组合桥梁的设计”,属于定语修饰结构。
修饰结构的获取需要对当前节点的所有依存句法子树进行遍历,并把所有符合修饰结构的通量以列表的形式以序号顺序储存。此时,修饰结构以当前节点及对应的修饰列表共同表示。
4.3 协同结构
协同结构用于表示两个或多个对象的共同作用,一个典型的协同结构是“甲与乙的间距”,在此结构中,在“甲”和“乙”的共同作用下间距的意义才能被准确表达。图2 中的协同结构例句为“沥青层与水泥混凝土路面之间的粘结”。
协同结构的获取同样通过遍历依存句法子树进行,把当前节点的协同关系依存子节点以列表的形式顺序储存,并获取作用对象。此时,协同结构以当前节点、作用对象以及协同节点列表共同表示。
4.4 并列结构
并列结构用于表示两个或多个对象的并列,与协同结构的区别在于并列结构的并列对象之间没有协同作用关系,与作用对象之间并非以定中关系连接。图2 中的并列结构例句为 “合理设置出入口、交叉和构造物”。类似于协同结构,获取当前节点对应的并列子节点列表。并列结构以当前节点与并列节点列表共同表示。
5 公路规范知识提取与应用案例验证
本研究提出的公路规范文本多粒度知识提取方法实现了从文本到知识的信息流转,依托于中江高速改扩建工程,本研究开发了公路工程安全信息检索与应用系统,可以实现知识生成与知识应用等功能。
5.1 项目概况
中江高速是广东省境内连接中山市与江门市的高速公路,建成于2005 年,原道路设计为双向四车道。随着社会经济的快速发展,中江高速的交通容量逐渐不能满足人民日益增长的需求,拥堵现象常有发生。为了解决交通承载量不足的问题,广东省政府提出了中江高速改扩建项目,由原有的双向四车道增至双向八车道。中江高速的扩建方案如图3 所示。
图3 中江高速扩建方案示意图
本项目为既有高速公路的改扩建工程,建设环境复杂、建设难度较高,在全生命周期中会涉及到大量与工程安全有关的法律、规范及标准。如何使项目各参与方更高效地获取需要的安全信息是本项目工程管理中面临的一个重大问题。
5.2 知识生成
基于本研究提出的方法,可以对项目相关的公路工程规范类文本进行信息的自动提取。其中,将核心结构中的关系标识为Predicate,将连接成分R 与成分A/E 的关系标识为Condition,将连接成分与成分T的关系标识为Target,将修饰结构的修饰关系标识为AttrOn,将协同结构与并列结构中的协同或等效关系标识为JoinOn。以967 本公路规范类文本为数据源,转换为标准三元组结构。以图结构存储上述三元组,图结构中的基本组成为“实体-关系-实体”或“实体-属性-属性值”。此时,便获得了能完整表示语义的知识子图。再对规范文本产生的所有知识子图进行知识融合,即可完成知识图谱的构建。
为了验证本研究所提出方法的正确性,以BERT+resCNN 方法为比较对象,对上述的五类关系进行评估。将原始语料切分为7:2:1 的比例,分别用作BERT+resCNN 方法训练集、验证集、测试集。最终,正确率对比结果如表2 所示。测试结果标识,在各类关系中,本研究提出的方法均优于BERT+resCNN 方法,且在Predicate,AttrOn 和JoinOn 关系中的表现较好。Condition 与Target 正确率较低的原因是部分语句复合关系过于复杂,在TEARS 成分识别中出错了。
表2 关系提取正确率对比表
知识图谱中公路桥梁工程的二级展开示意图如图4所示,其中的子节点可以继续展开,如“桥梁工程-下部结构-桥墩”继续展开,可以得到墩柱、盖梁、墩帽等子节点。对于存在于基于文档的公路工程领域词库中的实体节点,系统还提供了术语的释义。
图4 知识图谱示例图(以公路桥梁工程为例)
5.3 知识应用
在此系统中,用户可以通过知识图谱进行高效的语义化检索,并通过知识节点之间的关联寻找其他相关知识,也可以根据关键词查询规范文本,还可以根据关联路径快速定位至规范原文。用户可以通过检索知识图谱,获取对应的规范条文,还可以逐级展开查看规范原文。系统应用示例如图5 所示。
图5 系统应用示例图
在实际工程实践中,本系统可以服务于工程全过程中的多参与方。在设计阶段,设计人员可以通过语义检索,快速获取所需的规范条文,用于辅助指导设计;在施工阶段,对某一施工对象的技术要求不确定时,可以通过此系统进行快速检索,具有以下优势:
(1)保证现场的施工效率;
(2)检索结果可溯源,保障检索结果的准确性;
(3)基于知识图谱的关联特征,能够快速且较全面地获取关联知识,如可快速获取关于某一对象的跨规范、全专业的相关条文。
(4)在后续开发过程中,还可以考虑与物联网技术结合,将传感器的实时数据传输到系统中,以知识图谱为基础,实现工程隐患排查、风险评估、风险预警以及突发事件决策辅助等功能。
6 结论与展望
本研究提出了一种面向公路工程规范类文本的多粒度知识提取与知识应用方法。该方法以公路工程规范类文本为研究对象,在词语粒度、语段粒度和子句粒度进行多粒度特征分析。针对每个粒度的特征,设计了信息的提取与组织方法,形成了一套基于规则的IE 技术。对于词语粒度,基于公路工程规范类文本以及基于公开词库构建了公路工程领域词库;对于语段粒度,提出针对中文公路规范的TEARS 定义,并给出对应的识别与重构算法;对于子句粒度,总结了四种句法特征,并各自设计了语义信息的抽取方法。基于上述技术,本研究构建了公路工程建设领域知识图谱,开发了公路工程安全信息检索与应用系统,并成功应用于中江高速改扩建工程中,实现了对公路规范文本的知识提取与应用。
相较于前人的研究,本研究在多粒度上分析了公路规范的文本特征,准确且高效地对公路工程建设领域的知识进行提取与应用,与深度学习方法相比,本方法也有较高的正确率。对于大规模的规范文本数据,本方法依然有效且自动化程度高,极大地提升了知识利用效率。
本研究深入探讨了基于文本的知识提取方法,但是并没有针对规范中的公式、图片与表格等非纯文本内容的提取方法进行研究,导致了从规范到知识的转化过程中可能会发生歧义或缺失等情况。在知识应用方面,本研究主要聚焦于知识检索与知识表达。在未来的研究中,可以探索更丰富的知识应用,如自动合规性检查、智能知识问答等。