Page 67 - 《软件学报》2026年第2期
P. 67

546                                                        软件学报  2026  年第  37  卷第  2  期


                 答系统的缺陷检测. 根据测试用例的来源, 现有的研究工作可分为基于参考答案的测试技术和基于蜕变关系的测
                                                                                                [4]
                 试技术. 基于参考答案的测试技术依赖于人工标记的测试输入来构建数据集. 典型的数据集包括                              BoolQ 、BoolQ-
                   [25]      [26]        [19]       [27]      [28]     [29]     [20]     [30]     [31]
                 NP  、MultiRC  、SQuAD1.1   、SQuAD2   、NewsQA    、Quoref  、NarQA   、NatQA   和  DROP  等. 然
                 而, 这种技术的局限性包括高昂的人工标注成本、无法支持智能问答系统上线后的实时缺陷检测以及测试充分性
                 的不足. 此外, 每个数据集通常只针对特定格式的问答数据, 如判断型、提取型、抽象型等. 根据                            Chen  等人  [16] 的
                 研究, 仅在这些数据集上进行基于参考答案的测试扩展性差且测试结果存在偏差.
                    基于蜕变关系的测试技术          [27] 是一种高效的自动测试方法, 它根据待测程序的领域知识来构造蜕变关系, 并通
                 过判断测试输入组是否满足这些蜕变关系来检测程序中的缺陷. Chen                     等人  [16] 首次提出了针对智能问答的蜕变测
                 试技术   QAAskeR, 该方法摆脱了传统方法需要人工标注问题答案的限制. 具体而言, QAAskeR                    首先根据一个给定
                 问题及其由被测智能问答系统产生的答案, 合成一个假设的事实. 接着, 基于这个假设的事实, QAAskeR                           会生成一
                 个全新的问题及其对应的预期答案. 如果这个新问题的实际预测答案与预期答案不符, 则认为检测到智能问答系
                 统中的一个缺陷. 此外, Tu     等人  [32] 针对智能问答系统提出了      4  种与问题本身直接相关的蜕变关系和            5  种与上下文
                 相关的蜕变关系. 前者包括对问题中字母大小写转换、语义等价转述、反义词替换以及更换问题的主语. 而后者
                 则涉及对上下文进行大小写转换、句子顺序重新排列、插入或删除不影响答案的句子以及替换与答案相关的单
                 词. 这些蜕变关系的设计旨在评估智能问答系统的准确性. Shen                 等人  [17] 提出了一种先进的自动化智能问答系统测
                 试技术   QAQA, 该方法通过在数据集中检索与测试输入最相似的语料, 将其作为冗余信息插入原始问题或上下文
                 中, 从而生成语义等价的高保真测试用例. 这一方法避免了直接修改原始内容, 实现了对系统语义理解能力的精准
                 测试. 目前, QAAskeR  和  QAQA  是智能问答系统测试领域中的前沿技术.
                    本文提出了一种逻辑引导的蜕变测试技术                QALT. 与已有方法不同, QALT      设计了   3  种逻辑推理相关的蜕变
                 关系, 实现对智能问答系统逻辑推理能力的测试. 相比之下, QAQA                  和  QAAskeR  则主要关注测试智能问答系统的
                 语义理解能力, 且迁移到基于大型语言模型的智能问答系统时存在一定的局限性, 威胁生成测试用例的合法性或
                 自然性. QALT  摆脱了对回答范式和数据集的依赖, 具备更强的泛化能力.

                  3   背景知识: 智能问答系统
                    智能问答系统是一种基于人工智能技术的应用, 致力于理解和回答用户提出的自然语言问题. 该系统不仅能
                 够分析和理解问题, 还能从信息库或者上下文中提取有用信息并给出答案                         [33] . 根据其信息源的不同, 智能问答系
                 统可以划分为封闭世界        (closed-world) 和开放世界  (open-world) 两种类型  [16] . 封闭世界智能问答系统以问题及其
                 上下文作为输入, 专注于特定领域或主题, 限定了问答的范围. 这种系统通常通过深入理解特定领域的语境来提供
                 更准确的答案. 而开放世界智能问答系统则仅以问题为输入, 并依赖开放知识库作为其知识源. 开放世界问答系统
                 旨在处理各种主题和领域的问题, 不受特定领域的限制. 这种系统通常需要具备更广泛的知识储备和理解能力, 以
                 便回答用户提出的任何问题. 开放世界问答系统的挑战在于涉及多领域知识、语义理解和推理, 因此其设计和实
                 现更为复杂. 相较于开放世界问答系统, 封闭世界问答系统更容易实现和优化, 并有着更高的可用性. 同时, 封闭世
                 界智能问答系统是开放世界智能问答系统的核心组成部分. 此外, 封闭世界智能问答系统有众多公开可用的模型
                 和数据集, 便于进行研究. 因此, 本文与对比方法             QAAskeR  以及  QAQA  的研究对象一致, 专注于对封闭世界智能
                 问答系统的测试.
                    近年来, 多种    QA  数据集的构建促进了       QA  算法的发展. 这些数据集覆盖了多种问答类型, 如布尔型                 QA (答
                 案为“Yes”或“No”) 、提取型     QA (答案为上下文中的子字符串)         [27] 、抽象型  QA (答案为基于上下文推理的自由格
                               [4]
                 式文本)  [30] . 针对这些数据集, 多种  QA  算法已被提出, 例如     MultiQA [34] 和  DOCQA [35] , 这些算法通常针对特定类型
                 的  QA  任务设计. Khashabi 等人  [36] 首次提出在单一模型上处理不同类型的封闭世界            QA  任务. 此后, 随着大型语言
                 模型的崛起, 研究人员在人工智能领域取得了显著进展. 他们不再局限于训练专门针对单一问题的模型, 而是转向
                 开发能够处理多种不同类型问答任务的通用模型. 这种方法的优势在于, 一个模型可以灵活应对多种情况, 从而提
                 高效率和泛用性.
   62   63   64   65   66   67   68   69   70   71   72