2025, 36(4):1413-1434. DOI: 10.13328/j.cnki.jos.007223 CSTR: 32375.14.jos.007223
摘要:形式化方法在需求一致性验证领域已经取得了显著的成就. 然而, 随着嵌入式系统需求复杂度的不断提升, 需求一致性验证面临着状态空间过大的挑战. 为了有效约减验证的状态空间, 同时考虑到嵌入式系统需求所涉及的设备强依赖性, 提出一种复杂嵌入式系统需求一致性的组合验证方法. 它基于需求分解, 识别需求间的依赖关系, 通过这些依赖关系组装验证子系统, 从而实现对复杂嵌入式系统需求的组合验证, 并能初步定位到不一致的需求. 具体而言, 采用问题框架方法对需求进行建模和分解, 并预设领域设备知识库对设备的物理特性进行建模. 在验证子系统的组装过程中, 生成预期软件的行为模型, 并结合物理设备的模型进行动态组装. 最后, 采用航空领域机载侦查系统进行了实例研究, 验证了方法的可行性和有效性, 并通过5个案例评估证实了验证状态空间的显著减小. 此方法为复杂嵌入式系统需求的验证提供了一种切实可行的解决方案.
2025, 36(4):1435-1460. DOI: 10.13328/j.cnki.jos.007224 CSTR: 32375.14.jos.007224
摘要:Python丰富的开发生态提供了多种多样的第三方库, 极大地提高了开发者的开发效率和质量. 第三方库开发者通过对代码底层的封装, 使得上层应用开发者只需调用API就可以使用相关功能, 从而快速完成开发任务. 然而, 第三方库API不会保持恒定不变. 由于缺陷修复、代码重构、功能新增等, 第三方库代码会不断更新. 更新后部分API发生了不兼容的更改, 从而导致上层应用运行异常终止或者产生不一致的结果. 因此, Python第三方库API的兼容性问题已成为目前开源生态中亟需解决的问题之一. 目前已有相关研究工作对Python第三方库API兼容性问题展开研究, 但兼容性问题原因的分类覆盖不够完全, 无法输出兼容性问题的细粒度原因. 为此, 对Python第三方库API兼容性问题的表现形式和产生原因开展了实证研究, 并针对性提出了Python不兼容API的静态检测方法. 首先, 针对flask库和pandas库的总共6个版本对, 通过收集版本更新日志、运行回归测试相结合的方法, 共收集108个不兼容API对. 接着, 对收集到的数据开展实证研究, 总结了Python第三方库API兼容性问题的表现形式和产生原因. 最后, 提出了一种基于静态分析技术的Python不兼容API的检测方法, 输出句法层面的不兼容API问题产生原因. 在4个常用Python第三方库的共计12个版本对上进行了实验评估, 结果表明检测方法具有良好的有效性、泛化性、时间性能、空间性能以及易用性.
孙伟松,陈宇琛,赵梓含,陈宏,葛一飞,韩廷旭,黄胜寒,李佳讯,房春荣,陈振宇
2025, 36(4):1461-1488. DOI: 10.13328/j.cnki.jos.007254 CSTR: 32375.14.jos.007254
摘要:随着深度学习技术在计算机视觉与自然语言处理等领域取得巨大成功, 软件工程研究者开始尝试将其引入到软件工程任务求解当中. 已有研究结果显示, 深度学习技术在各种代码相关任务(例如代码检索与代码摘要)上具有传统方法与机器学习方法无法比拟的优势. 这些面向代码相关任务训练的深度学习模型统称为深度代码模型. 然而, 由于神经网络的脆弱性和不可解释性, 与自然语言处理模型与图像处理模型一样, 深度代码模型安全也面临众多挑战, 已经成为软件工程领域的焦点. 近年来, 研究者提出了众多针对深度代码模型的攻击与防御方法. 然而, 目前仍缺乏对深度代码模型安全研究的系统性综述, 不利于后续研究者对该领域进行快速的了解. 因此, 为了总结该领域研究现状、挑战及时跟进该领域的最新研究成果, 搜集32篇该领域相关论文, 并将现有的研究成果主要分为后门攻击与防御技术和对抗攻击与防御技术两类. 按照不同技术类别对所收集的论文进行系统地梳理和总结. 随后, 总结该领域中常用的实验数据集和评估指标. 最后, 分析该领域所面临的关键挑战以及未来可行的研究方向, 旨在为后续研究者进一步推动深度代码模型安全的发展提供有益指导.
2025, 36(4):1489-1529. DOI: 10.13328/j.cnki.jos.007268 CSTR: 32375.14.jos.007268
摘要:随着信息化的深入, 大量应用程序的开发和功能迭代不可避免引入软件缺陷, 并潜在地对程序可靠性和安全性造成了严重的威胁. 检测与修复软件漏洞, 已经成为开发者维护软件质量必要的任务, 同时也是沉重的负担. 对此, 软件工程的研究者在过去的数十年中提出大量相关技术, 帮助开发者解决缺陷相关问题. 然而这些技术都面对着一些严峻的挑战, 在工业实践落地上鲜有进展. 大模型, 如代码大模型CodeX和对话大模型ChatGPT, 通过在海量数据集上进行训练, 能够捕捉代码中的复杂模式和结构, 处理大量上下文信息并灵活地适应各种任务, 以其优秀的性能吸引了大量研究人员的关注. 在诸多软件工程任务中, 基于大模型的技术展现出显著的优势, 有望解决不同领域过去所面对的关键挑战. 因此, 尝试对目前已经存在基于大模型相关成熟技术的3个缺陷检测领域: 深度学习库的缺陷检测、GUI自动化测试、测试用例的自动生成, 与软件缺陷修复的成熟领域: 缺陷自动化修复, 进行分析和探究, 在阐述其发展脉络的同时对不同技术流派的特性和挑战进行深入的探讨. 最后, 基于对已有研究的分析, 总结这些领域和技术所面临的关键挑战及对未来研究的启示.
2025, 36(4):1530-1556. DOI: 10.13328/j.cnki.jos.007288 CSTR: 32375.14.jos.007288
摘要:缺陷自动定位方法可以极大程度减轻开发人员调试和维护软件程序的负担. 基于信息检索的缺陷定位方法是广泛研究的缺陷自动定位方法之一, 并已取得了较好的成果. 随着深度学习的普及, 将深度学习应用于基于信息检索的缺陷定位成为近年来的研究趋势之一. 系统梳理和总结了52篇近年来将深度学习引入基于信息检索缺陷定位的工作. 首先, 总结该类缺陷定位的数据集和评价指标, 接着从不同粒度和可迁移性分析了该类技术的定位效果, 随后着重梳理了相关工作中信息编码表征方法和特征提取方法. 最后总结对比分析了各领域最先进的定位方法, 并展望了使用深度学习的基于信息检索的缺陷定位方法的未来发展方向.
2025, 36(4):1557-1569. DOI: 10.13328/j.cnki.jos.007189 CSTR: 32375.14.jos.007189
摘要:作为任务型对话系统的一个核心部分, 槽填充任务通过识别话语中存在的特定槽实体来服务于后续的下游任务. 但是, 针对一个特定领域, 需要大量有标记的数据作为支撑, 收集成本较高. 在此背景下, 跨领域槽填充任务出现, 该任务通过迁移学习的方式高效地解决了数据稀缺问题. 已有的跨领域槽填充方法都忽视了槽类型之间在话语中存在的依赖, 导致现有的模型在迁移到新领域时性能欠佳. 为了弥补这个缺陷, 提出基于槽依赖建模的跨领域槽填充方法. 基于生成式预训练模型的提示学习方法, 设计一种融入槽依赖信息的提示模板, 该模板建立了不同槽类型之间的隐式依赖关系, 充分挖掘预训练模型的实体预测性能. 此外, 为了进一步提高槽类型和槽实体与话语文本之间的语义依赖, 增加了话语填充子任务, 通过反向填充的方式增强话语与槽实体的内在联系. 通过对多个领域的迁移实验表明, 所提模型在零样本和少样本的设置上取得了较大的性能提升. 此外, 对模型中的主要结构进行了详细地分析和消融实验.
2025, 36(4):1570-1589. DOI: 10.13328/j.cnki.jos.007202 CSTR: 32375.14.jos.007202
摘要:近年来, 深度学习研究成果在全球范围内得到广泛应用. 为了提高大规模深度学习模型的训练效率, 业界通常采用建设GPU集群并配置高效的任务调度器的策略. 然而, 深度学习训练任务具有性能异构性和放置拓扑敏感性等复杂性能特性. 对性能无感知的调度容易导致资源利用率低下、训练效率差等问题. 为了应对这一挑战, 近期涌现出大量基于性能建模的深度学习训练任务调度器. 这些调度器通过构建精确的性能模型, 深入了解任务的复杂性能特性, 并据此设计更优化的调度算法, 从而形成更高效的调度方案. 首先基于建模设计思路, 对目前调度器使用的性能建模方法进行分类综述. 随后, 根据调度器利用性能建模的调度优化途径, 对现有的任务调度工作进行系统性分析. 最后, 对性能建模与调度在未来的研究方向进行展望.
2025, 36(4):1590-1603. DOI: 10.13328/j.cnki.jos.007213 CSTR: 32375.14.jos.007213
摘要:知识图谱补全任务旨在根据已有的事实三元组(头实体、关系、尾实体)来挖掘知识图谱中缺失的事实三元组. 现有的研究工作主要致力于利用知识图谱中的结构信息来进行知识图谱补全任务. 然而, 这些工作忽略了知识图谱中蕴含的其他模态的信息也可能对知识图谱补全有帮助. 并且, 由于基于特定任务的知识通常没有被注入通用的预训练模型, 因而如何在抽取模态信息的过程中融合任务的相关知识变得至关重要. 此外, 因为不同模态特征对于知识图谱补全的贡献不一样, 所以如何有效地保留有用的多模态信息也是一大挑战. 为了解决上述问题, 提出一种融合任务知识的多模态知识图谱补全方法. 利用在当前任务上微调过的多模态编码器, 来获取不同模态下的实体向量表示. 并且, 通过一个基于循环神经网络的模态融合过滤模块, 去除与任务无关的多模态特征. 最后, 利用同构图网络表征并更新所有特征, 从而有效地完成多模态知识图谱补全任务. 实验结果表明, 所提出的方法能有效地抽取不同模态的信息, 并且能够通过进一步的多模态过滤融合来增强实体的表征能力, 进而提高多模态知识图谱补全任务的性能.
2025, 36(4):1604-1619. DOI: 10.13328/j.cnki.jos.007215 CSTR: 32375.14.jos.007215
摘要:先前的预训练语言模型已在众多自然语言理解任务中展现了其卓越的性能. 然而, 它们常表现出捷径学习的问题, 即学习了非鲁棒性特征与标签之间的虚假关联, 导致模型在不同于训练分布的测试场景中的泛化能力不佳. 近期, 生成式预训练大模型在理解任务中的出色表现引起了广泛的关注, 但它们是否受到捷径学习的影响尚未被充分研究. 以LLaMA系列模型与FLAN-T5模型为代表, 探究生成式预训练大模型在多个自然语言理解任务中的捷径学习现象. 研究结果表明, 近期流行的生成式大模型仍然存在捷径学习的问题. 进而, 提出针对生成式预训练大模型的捷径学习问题的缓解策略——基于可控性解释的混合数据增强框架. 该框架以数据为中心, 基于模型生成的可控性解释数据与部分原始提示性数据构造小规模混合数据集, 开展模型微调. 在3个具有代表性的自然语言理解任务中的大量实验结果表明, 使用该框架所构造的数据集训练模型能够有效缓解模型的捷径学习问题, 提升模型在分布外测试场景中的鲁棒性与泛化能力, 同时不牺牲甚至提升模型在分布内测试场景中的性能. 代码已公开发布在https://github.com/Mint9996/HEDA.
2025, 36(4):1620-1636. DOI: 10.13328/j.cnki.jos.007219 CSTR: 32375.14.jos.007219
摘要:自训练是缓解标注数据不足问题的常见方法, 其通常做法是利用教师模型去获取高置信度的自动标注数据作为可靠数据. 然而在低资源场景关系抽取任务上, 该方法不仅存在教师模型泛化能力差的问题, 而且受到关系抽取任务中易混淆关系类别的影响, 导致难以从自动标注数据中有效地识别出可靠数据, 同时产生大量难以利用的低置信度噪音数据. 因此, 提出一种有效利用低置信度数据的自训练方法ST-LRE (self-training approach for low-resource relation extraction). 该方法一方面基于复述增强的预测方法来加强教师模型筛选可靠数据的能力; 另一方面, 基于部分标注模式从低置信度数据中提炼出可利用的模糊数据. 基于模糊数据的候选类别集合, 提出了基于负标签集合的负向训练方法. 最后, 为了支持可靠数据和模糊数据的融合训练, 提出一种支持正负向训练的联合方法. 在两个广泛使用的关系抽取数据集SemEval2010 Task-8和Re-TACRED的低资源场景上进行实验, ST-LRE方法取得显著且一致的提升.
2025, 36(4):1637-1664. DOI: 10.13328/j.cnki.jos.007237 CSTR: 32375.14.jos.007237
摘要:近年来, 机器学习在人们日常生活中应用愈发广泛, 这些模型在历史数据上进行训练, 预测未来行为, 极大地便利了人们生活. 然而, 机器学习存在隐私泄露隐患: 当用户不希望个人数据被使用时, 单纯地把其数据从训练集中删去并不够, 已训练好的模型仍包含用户信息, 可能造成隐私泄露. 为了解决这一问题, 让机器学习模型“遗忘”该用户个人数据, 最简单的方法是在不包含其数据的训练集上重新训练, 此时得到的新模型必定不包含个人数据的信息. 然而, 重新训练往往代价较大, 成本较高, 由此产生“机器遗忘”的关键问题: 能否以更低的代价, 获取与重新训练模型尽可能相似的模型. 对研究这一问题的文献进行梳理归纳, 将已有机器遗忘方法分为基于训练的方法、基于编辑的方法和基于生成的方法这3类, 介绍机器遗忘的度量指标, 并对已有方法进行测试和评估, 最后对机器遗忘作未来展望.
2025, 36(4):1665-1691. DOI: 10.13328/j.cnki.jos.007245 CSTR: 32375.14.jos.007245
摘要:多模态信息抽取任务是指从非结构化或半结构化的多模态数据(包含文本和图像等)中提取结构化知识. 其研究内容主要包含多模态命名实体识别、多模态实体关系抽取和多模态事件抽取. 首先对多模态信息抽取任务进行分析, 然后对多模态命名实体识别、多模态实体关系抽取和多模态事件抽取这3个子任务的共同部分, 即多模态表示和融合模块进行归纳和总结. 随后梳理上述3个子任务的常用数据集和主流研究方法. 最后总结多模态信息抽取的研究趋势并分析该研究存在的问题和挑战, 为后续相关研究提供参考.
2025, 36(4):1692-1714. DOI: 10.13328/j.cnki.jos.007248 CSTR: 32375.14.jos.007248
摘要:多视图立体视觉在自动驾驶、增强现实、遗产保护和生物医学等领域得到广泛应用. 为了弥补传统多视图立体视觉方法对低纹理区域不敏感、重建完整度差等不足, 基于深度学习的多视图立体视觉方法应运而生. 对基于深度学习的多视图立体视觉方法的开创性工作和发展现状进行综述, 重点关注基于深度学习的多视图立体视觉局部功能改进和整体架构改进方法, 深入分析代表性模型. 同时, 阐述目前广泛使用的数据集及评价指标, 并对比现有方法在数据集上的测试性能. 最后对多视图立体视觉未来有前景的研究发展方向进行展望.
2025, 36(4):1715-1757. DOI: 10.13328/j.cnki.jos.007250 CSTR: 32375.14.jos.007250
摘要:近年来随着计算机视觉和人工智能领域的不断发展, 具身人工智能(embodied AI)受到国内外学术界和工业界的广泛关注. 具身人工智能强调具身智能体通过与环境进行情景化的交互来主动获取物理世界的真实反馈, 并通过对反馈进行学习使具身智能体更加智能. 作为具身人工智能具体化的任务之一, 物体目标导航要求具身智能体在事先未知的、复杂且语义丰富的场景中搜寻并导航至指定的物体目标(例如: 找到水槽). 物体目标导航在辅助人类日常活动的智能助手方面有着巨大的应用潜力, 是其他基于交互的具身智能研究的基础和前置任务. 系统地分类和梳理当前物体目标导航相关工作, 首先介绍环境表示和视觉自主探索相关知识, 从3种不同的角度对现有的物体目标导航方法进行分类和分析, 其次介绍两类更高层次的物体重排布任务, 描述逼真的室内仿真环境数据集、评价指标和通用的导航策略训练范式, 最后比较和分析现有的物体目标导航策略在不同数据集上的性能, 总结该领域所面临的挑战, 并对发展前景作出展望.
2025, 36(4):1758-1795. DOI: 10.13328/j.cnki.jos.007298 CSTR: 32375.14.jos.007298
摘要:受生物神经系统启发, 神经形态计算的概念于20世纪80年代被提出, 旨在模拟生物大脑的结构和功能, 实现更高效、更具生物合理性的计算方式. 作为神经形态计算的代表模型, 脉冲神经网络(SNN)因其脉冲稀疏性, 事件驱动性、生物可解释性以及硬件契合性等优势, 在资源严格受限的边缘智能任务中得到了广泛应用. 针对脉冲神经网络的边缘部署情况进行梳理和汇总, 首先从脉冲神经网络模型自身的原理出发, 论述脉冲神经网络的高能效计算方式以及巨大的边缘部署潜力. 然后介绍当下常见的脉冲神经网络硬件实现工具链, 并重点对脉冲神经网络在各类神经形态硬件平台的部署情况做详细的整理与分析. 最后, 考虑到硬件故障行为已发展为当下研究中不可避免的问题, 对脉冲神经网络边缘部署时的故障与容错研究进行概述. 从软件模型原理到硬件平台实现, 全面系统地介绍神经形态计算的最新进展, 分析脉冲神经网络边缘部署时遇到的困难与挑战, 并针对这些挑战给出未来可能的解决方向.
2025, 36(4):1796-1810. DOI: 10.13328/j.cnki.jos.007270 CSTR: 32375.14.jos.007270
摘要:极大二团枚举问题是二部图分析中的一个基本研究问题. 然而, 在实际应用中, 传统二团模型要求子图必须为完全二部图的约束往往过于严格, 因此需要一些更为宽松的二团模型作为代替. 为此, 提出一种新的称之为k-缺陷二团的松弛二团模型. 该模型允许二部图子图与完全子图二团最多相差k条边. 由于极大k-缺陷二团枚举问题属于NP-难问题, 设计高效的枚举算法是一项极具挑战性的任务. 为解决此问题, 提出一种基于对称集合枚举的算法. 该算法的思想是通过k-缺陷二团中缺失边的数量约束来控制子分支的数量. 为进一步提高计算效率, 还提出一系列优化技术, 包括基于排序的子图划分方法、基于上界的剪枝方法、基于线性时间的更新技术以及分支的优化方法. 此外, 提出的优化算法的时间复杂度与${\mathrm{O}}(\gamma _k^n) $有关, 其中${\gamma _k} \lt 2 $, 突破了传统${\mathrm{O}}({2^n}) $的时间复杂度. 最后, 大量的实验结果表明, 在大部分参数条件下所提方法的效率相较于传统分支定界方法提高了100倍以上.
2025, 36(4):1811-1843. DOI: 10.13328/j.cnki.jos.007275 CSTR: 32375.14.jos.007275
摘要:随着传感技术的发展, 不同领域产生了大量时空数据. 时空图是其中一种主要的时空数据类型, 具有复杂的结构、时空特征和时空关系. 如何从复杂的时空图数据中挖掘关键模式, 并应用于不同的下游任务成为复杂时空数据挖掘任务的主要问题. 目前, 日渐成熟的时序图神经网络为该研究领域的发展提供了有力的工具. 此外, 新兴的时空大模型在现有时空图神经网络方法的基础上提供了新的研究视角. 然而, 现有的大多数综述对该领域方法的分类框架较为粗略, 对复杂数据类型(如动态异质图和动态超图)缺乏全面和深入的介绍, 并且没有对时空图大模型相关的最新研究进展进行详细总结. 因此, 基于图神经网络的复杂时空数据挖掘方法分成时空融合架构和时空大模型, 旨在从传统和新兴两个角度进行介绍. 将时空融合架构根据具体的复杂数据类型划分成动态图、动态异质图和动态超图. 将时空大模型根据时间维度和空间维度划分成时间序列和图, 并在基于图的大模型中列举时空图相关的最新研究. 详细介绍不同关键算法的核心细节并对比不同方法的优缺点, 列举基于图神经网络的复杂时空数据挖掘的应用领域和常用数据集, 并对未来可能的研究方向进行展望.
2025, 36(4):1844-1858. DOI: 10.13328/j.cnki.jos.007208 CSTR: 32375.14.jos.007208
摘要:众包是一种分布式解决问题的方式, 可以降低成本并有效利用资源. 区块链技术的引入解决了传统众包平台集中化程度过高的问题, 但它的透明性却带来了隐私泄露的风险. 传统的匿名认证虽然可以隐藏用户身份, 但存在匿名滥用的问题, 同时还增加了对工作者筛选的难度. 提出一种去中心化可问责属性认证方案, 并将其与区块链结合设计一种新型众包方案. 该方案利用去中心化属性加密与非交互式零知识证明技术, 在保护用户身份隐私的同时实现可链接性和可追踪性, 并且请求者可以制定访问策略来筛选工作者. 此外, 该方案通过门限秘密分享技术实现了属性授权机构和追踪组, 提高系统的安全性. 通过实验仿真和分析证明该方案在时间和存储开销上符合实际应用需求.
2025, 36(4):1859-1880. DOI: 10.13328/j.cnki.jos.007272 CSTR: 32375.14.jos.007272
摘要:智能网联汽车在国家发展战略中占有重要地位, 是关系汽车产业革新、大国核心竞争力的关键技术, 自动驾驶是智能网联汽车发展的最终目标, 智能网联汽车自动驾驶(以下称“自动驾驶汽车”)的安全问题直接影响人民生命财产安全、国家公共安全, 但目前还缺少对其的系统性研究. 深度剖析自动驾驶面临的安全威胁能对其安全防护和保障提供指导, 促进其大规模应用. 通过整理学术界与工业界对自动驾驶安全的相关研究工作, 分析和总结自动驾驶所面临的安全问题. 首先介绍自动驾驶汽车架构、安全的特殊性, 其次从模型视角出发, 全过程地梳理自动驾驶的物理域输入、信息域输入和驾驶模型这3个方面可能存在的9个攻击作用点及其攻击方式与安全防护手段, 最后通过对近7年相关研究论文数据的统计分析, 总结自动驾驶安全研究的现状, 讨论未来的研究方向.
2025, 36(4):1881-1905. DOI: 10.13328/j.cnki.jos.007273 CSTR: 32375.14.jos.007273
摘要:随着相关技术的快速发展, 无人机所搭载的传感器愈发精确和多样, 赋予了无人机强大的感知能力, 也使得多传感器数据的处理分析成为无人机应用的一大挑战. 数据融合是解决这一问题的关键技术, 其通过检测、关联、组合、估计的流程实现多传感器数据的融合利用, 获取准确的无人机状态和目标信息为决策提供支撑. 对无人机的多传感器数据融合研究展开综述: 介绍无人机系统组成; 回顾并分类无人机多传感器数据融合方法, 在此基础上分析比较各类方法的特点; 归纳概述无人机多传感器数据融合在不同领域中的应用现状; 最后展望无人机多传感器数据融合的未来发展方向.