Page 58 - 《软件学报》2025年第12期
P. 58

李春奕 等: 基于时序逻辑的需求文本隐含语义解析与推理                                                     5439


                    时序逻辑    (TL) 是一种用于描述和推理系统状态随时间变化的逻辑语言, 用于明确指定时序扩展任务, 通过时
                 序运算符增强了标准命题逻辑的传统概念, 这些运算符能够表达系统在不同时间点上的性质和行为. 根据时间模
                                                                         [1]
                                                                                          [2]
                 型和语法特性的不同, TL       可以被更加详细地划分为线性时序逻辑              (LTL) 、计算树逻辑     (CTL) 和命题投影时序
                 逻辑  (PPTL) 等形式语言. 得益于其强大的表达能力, 时序逻辑已被广泛应用于多个计算机科学和工程领域, 确保
                          [3]
                 动态系统在整个运行过程中满足某种特定的时序约束和行为要求, 尤其在形式化验证                             [4−7] 、机器人系统控制   [8−10]
                 和需求规范化定义       [11] 等方向. 其中  PPTL  较其他时序逻辑具有     3  个方面优势, 首先   PPTL  的表达能力完全正则等
                 价于µ-演算, 且强于    LTL、CTL, 目前已证明     PPTL  是可判定的. 其次    PPTL  可以应用于多核系统建模, 其表达监控
                 语义的投影结构与其他时序逻辑语言相比更直观, 也更易于处理多核并行计算实例. PPTL                          也能够对监控系统中的
                 多级中断需求进行建模. 最后, PPTL        长期以来一直面向安全关键系统建模, 特别是针对监控需求建模和多核并行
                 计算分析, 其在业界得到广泛的应用, 如货币交易系统、安全关键任务调度系统、区块链系统、交通信号灯控制
                 系统、社交网络监控、网络入侵检测等              [12−14] .
                    尽管  PPTL  在刻画复杂任务行为方面具有优势, 但对于非专家用户来说难以掌握使用                        [15] . 以形式化验证在工
                 业场景下的实际应用为例, 待验证的性质规约通常来源于软件系统的需求描述文档. 一方面, 缺乏数学背景的领域
                 工程师难以准确理解        PPTL  复杂的时序逻辑语义; 另一方面, 人工将需求文档中的需求描述语句改写为时序逻辑
                 任务的效率低下, 阻碍了形式化规约在工业领域的推广应用. 因此, 研究一个可以将                         PPTL  转化为时序逻辑公式的
                 方法具有重要意义, 但隐含时序语义无法识别造成转化成功率低的问题还未解决, 如                           Zhang  等人  [16] 提取的针对智
                 能家庭物联网的生成        LTL  规范方法和   ICON  [17] 等方法均出现难以推断隐含时间约束, 而导致生成            LTL  规范准确
                 率变低的问题. 因此识别自然语言时序语义是重要的, 其可以辅助和推动生成时序规范生成工作进行.
                    早期的语义解析工作大多采用基于规则和模板的方法                   [18] , 难以识别文本中隐含的时序关系, 缺乏灵活性和泛
                 化能力, 实际应用效果较差. 后续基于统计的方法被研究出来, 如隐马尔可夫模型                         [19] , 通过隐状态建模文本结构,
                 利用统计概率解析文本语义, 然而其准确性仍受限于需求样本规模. 目前神经网络及大模型的发展                                [20] , 可以更好
                 地捕捉文本潜在的语义信息, 这推动了隐含语义识别工作, 然而基于神经网络的方法应用于时序逻辑语义分析仍
                 然存在着诸多局限性, 本文技术面临如现有需求文本数据集规模不足, 语义分析不够准确等一般性问题, 具体在时
                 序逻辑语义研究中体现的主要难点如下.
                    1) 部分需求文本存在时序逻辑语义模糊性的问题, 准确识别其隐含语义是困难的.
                    2) 需求文档的冷启动问题, 需要应对需求样本中存在的时序标签样本稀疏和不平衡的问题.
                    3) 面对监控语义分析      [21] 准确率较低的问题.
                    但又区别于一般的基于神经网络的语义解析任务, 本文在识别                     PPTL  的语法和语义具有其独特技术挑战. 在
                 数据预处理上, 其需要采用特定技术来突出具有时序依赖关系的特征信息. 在网络结构设计上, PPTL                             公式的严格
                 性要求网络结构更倾向于保留句子的完整时序逻辑信息, 而非只强调文本局部特征信息. 同时逻辑公式中复杂时
                 序标签通常由多种简单时序逻辑关系排列组合构成, 这就要求网络结构必须能捕捉并强调不同网络层和神经元之
                 间的特征信息的相关性. 此外, 语义分析结果的评估计算必须精确量化时序依赖和逻辑一致性, 以确保标签分类的
                 正确性. 在复杂稀疏的语义识别上, 需要引入能保持语义一致性、保留时序结构的数据增强模块, 保障其语义识别
                 准确率. 这些特殊性符合       PPTL  时序逻辑的严格要求, 保障网络结构设计严谨有效.
                    针对上述问题, 本文提出了基于小样本学习的神经网络                  (FSLNets-TLSA) 来实现时序逻辑语义分析方法. 虽然
                 以  PPTL  为对象开展语义分析工作, 但该工作对         LTL、CTL  等时序逻辑语义分析工作存在迁移性和泛用性. FSLNets-
                 TLSA  由  3  个功能模块组成. 在数据预处理模块, 对需求文本进行数据清洗降低噪声, 并使用命名体识别和依存关
                 系分析提取特征信息向量, 用来突出文本时序逻辑语义和应对自然语言文本描述模糊性问题. 在小样本神经网络
                 模块, 其输入由文本向量串联特征信息向量组成, 其网络结构由编码器, 归纳模块和关系模块堆叠构成, 用来捕捉
                 文本中隐含的时序逻辑语义信息, 同时在编码器中引入自注意力机制增加对长文本语义的理解能力. 在模型增强
                 模块, 为了适应更复杂语义识别, 又结合同义词替换和回译的数据增强方法和对抗训练方法, 用来提高时序逻辑分
                 析的准确率, 以及增强神经网络模型鲁棒性. 在公开数据集上的实验结果和相似工具的对比结果证明了本文方法
   53   54   55   56   57   58   59   60   61   62   63