• 2025年第6期文章目次
    全 选
    显示方式: |
    • >大模型下的软件质量保障专题
    • 大模型下的软件质量保障专题前言

      2025, 36(6):2401-2403. DOI: 10.13328/j.cnki.jos.007331 CSTR: 32375.14.jos.007331

      摘要 (508) HTML (115) PDF 6.74 K (441) 评论 (0) 收藏

      摘要:

    • 基于大语言模型的模糊测试研究综述

      2025, 36(6):2404-2431. DOI: 10.13328/j.cnki.jos.007323 CSTR: 32375.14.jos.007323

      摘要 (1705) HTML (126) PDF 6.76 K (951) 评论 (0) 收藏

      摘要:模糊测试是一种自动化的软件测试方法, 通过向目标软件系统输入大量自动生成的测试数据, 以发现系统潜在的安全漏洞、软件缺陷或异常行为. 然而, 传统模糊测试技术受限于自动化程度低、测试效率低、代码覆盖率低等因素, 无法应对现代的大型软件系统. 近年来, 大语言模型的迅猛发展不仅为自然语言处理领域带来重大突破, 也为模糊测试领域带来了新的自动化方案. 因此, 为了更好地提升模糊测试技术的效果, 现有的工作提出了多种结合大语言模型的模糊测试方法, 涵盖了测试输入生成、缺陷检测、后模糊处理等模块. 但是现有工作缺乏对基于大语言模型的模糊测试技术的系统性调研和梳理讨论, 为了填补上述综述方面的空白, 对现有的基于大语言模型的模糊测试技术的研究发展现状进行全面的分析和总结. 主要内容包括: (1)概述模糊测试的整体流程和模糊测试研究中常用的大语言模型相关技术; (2)讨论大模型时代之前的基于深度学习的模糊测试方法的局限性; (3)分析大语言模型在模糊测试方法中不同环节的应用方式; (4)探讨大语言模型技术在模糊测试中的主要挑战和今后可能的发展方向.

    • Java程序资源泄露缺陷检测: 传统模型和语言模型的有效性分析

      2025, 36(6):2432-2452. DOI: 10.13328/j.cnki.jos.007327 CSTR: 32375.14.jos.007327

      摘要 (373) HTML (120) PDF 6.74 K (497) 评论 (0) 收藏

      摘要:资源泄露是由于有限的系统资源未能及时正确关闭所导致的缺陷, 广泛存在于各种语言程序中, 且具有一定的隐蔽性. 传统的缺陷检测方法通常基于规则和启发式搜索预测软件中的资源泄露. 近年来, 基于深度学习的缺陷检测方法通过不同的代码表征形式并使用循环神经网络、图神经网络等技术捕获代码中的语义信息. 最近的研究显示, 语言模型在代码理解和生成等任务中表现出色. 然而语言模型针对资源泄露检测这一特定任务上的优势和局限性尚未得到充分评估. 研究基于传统模型、小模型和大模型的检测方法在资源泄露检测任务中的有效性, 并探究小样本学习、微调以及静态分析与大模型结合的多种改进方式. 具体而言, 以JLeaks和DroidLeaks数据集为实验对象, 从资源泄露根本原因、资源种类、代码复杂度等多个维度分析不同模型的表现. 实验结果表明, 微调技术能够显著提升大模型在资源泄露检测领域的检测效果. 然而, 大部分模型在识别第三方库引发的资源泄露上仍需改进. 此外, 代码复杂度对基于传统模型的检测方法的影响更大.

    • 智能化芯片设计程序测试研究综述

      2025, 36(6):2453-2476. DOI: 10.13328/j.cnki.jos.007328 CSTR: 32375.14.jos.007328

      摘要 (801) HTML (73) PDF 6.71 K (432) 评论 (0) 收藏

      摘要:在当今智能化的时代背景下, 芯片作为智能电子设备的核心组件, 在人工智能、物联网、5G通信等诸多领域发挥着关键作用, 保障芯片的正确性、安全性和可靠性至关重要. 在芯片的开发流程中, 开发人员首先需要利用硬件描述语言, 将芯片设计实现成软件形式(即芯片设计程序), 然后再进行物理设计并最终流片(即生产制造). 作为芯片设计制造的基础, 芯片设计程序的质量直接影响了芯片的质量. 因此, 针对芯片设计程序的测试具有重要研究意义. 早期的芯片设计程序测试方法主要依赖开发人员人工设计测试用例来测试芯片设计程序, 往往需要大量的人工成本和时间代价. 随着芯片设计程序复杂度的日益增长, 诸多基于仿真的自动化芯片设计程序测试方法被提出, 提升了芯片设计程序测试效率及有效性. 近年来, 越来越多的研究者致力于将机器学习、深度学习和大语言模型(LLM)等智能化方法应用于芯片设计程序测试领域. 调研88篇智能化芯片设计程序测试相关的学术论文, 从测试输入生成、测试预言构造及测试执行优化这3个角度对智能化芯片设计程序测试已有成果进行整理归纳, 重点梳理芯片设计程序测试方法从机器学习阶段、深度学习阶段到大语言模型阶段的演化, 探讨不同阶段方法在提高测试效率和覆盖率、降低测试成本等方面的潜力. 同时, 介绍芯片设计程序测试领域的研究数据集和工具, 并展望未来的发展方向和挑战.

    • 大语言模型在代码优化任务中的能力探究及改进方法

      2025, 36(6):2477-2500. DOI: 10.13328/j.cnki.jos.007325 CSTR: 32375.14.jos.007325

      摘要 (1260) HTML (88) PDF 6.75 K (728) 评论 (0) 收藏

      摘要:代码优化任务作为自动化代码审查的关键环节, 有助于提高开发效率和代码质量. 随着大语言模型在软件工程领域中展现出远胜于传统小规模预训练模型的性能, 旨在探讨两类模型在自动代码优化任务的表现, 以评估大语言模型的综合优势. 通过使用传统代码质量评估指标(例如, BLEU, CodeBLEU, edit progress)对4种主流大语言模型和4种代表性小规模预训练模型在代码优化任务的表现进行评估, 发现大语言模型在审查前代码优化子任务的优化质量劣于小规模预训练模型. 由于现有代码质量评估指标难以解释上述现象, 提出基于Unidiff的代码优化评估指标, 量化优化过程中的变更操作, 以解释劣势原因并揭示模型执行变更操作的倾向性: (1)审查前代码优化任务难度较大, 模型执行正确变更操作的准确度极低, 且大语言模型比小规模预训练模型表现更为“激进”, 即倾向于执行更多的代码变更操作, 导致其表现不佳; (2)相比小规模预训练模型, 大语言模型在代码优化任务倾向于执行更多插入(ADD)和修改(MODIFY)变更操作且ADD变更操作平均插入的代码行数较多, 进一步证明其“激进”性. 为缓解大语言模型在审查前优化任务中的劣势, 基于大语言模型和集成学习提出LLM-Voter方法, 包含Inference-based (基于模型推理)和Confidence-based (基于置信度选择)两种子方案, 旨在集成不同基模型的优势以提升代码优化质量. 在此基础上, 进一步引入优化判定机制, 以增强模型的决策稳定性与可靠性. 实验证明: 基于置信度选择的LLM-Voter方法能够在大幅提高EM (exact match)值的同时获得优于所有基模型的优化质量, 从而有效缓解大语言模型的劣势.

    • 基于大语言模型的长方法分解

      2025, 36(6):2501-2514. DOI: 10.13328/j.cnki.jos.007329 CSTR: 32375.14.jos.007329

      摘要 (702) HTML (70) PDF 6.75 K (514) 评论 (0) 收藏

      摘要:长方法及其他类型的代码坏味阻碍了软件应用程序达到最佳的可读性、可重用性和可维护性. 因此, 人们对长方法的自动检测和分解进行了广泛的研究. 虽然这些方法极大地促进了分解, 但其解决方案往往与最优方案存在很大差异. 为此, 调研公开真实长方法数据集中的可自动化部分, 探讨了长方法的分解情况, 并基于调研结果, 提出了一种基于大语言模型的新方法(称为 Lsplitter), 用于自动分解长方法. 对于给定的长方法, Lsplitter会根据启发式规则和大语言模型将该方法分解为一系列短方法. 然而, 大语言模型经常会拆分出相似的方法, 针对大语言模型的分解结果, Lsplitter利用基于位置的算法, 将物理上连续且高度相似的方法合并成一个较长的方法. 最后对这些候选结果进行排序. 对真实Java项目中的2849个长方法进行了实验, 结果表明, 相较传统结合模块化矩阵的方法, Lsplitter的命中率提升了142%, 相较纯基于大语言模型的方法, 命中率提升了7.6%.

    • LLM赋能的Datalog代码翻译技术及增量程序分析框架

      2025, 36(6):2515-2534. DOI: 10.13328/j.cnki.jos.007330 CSTR: 32375.14.jos.007330

      摘要 (673) HTML (111) PDF 6.75 K (519) 评论 (0) 收藏

      摘要:Datalog是一种声明式逻辑编程语言, 在不同领域得到了广泛应用. 近年来, 学术界和工业界对Datalog的兴趣高涨, 设计并开发了多种Datalog引擎和相应方言. 然而, 多方言带来的一个问题是以一种Datalog方言实现的代码, 一般而言不能在另一种方言的引擎上执行. 因此, 当采用新Datalog引擎时, 需要将现有Datalog代码翻译到新方言上. 目前的Datalog代码翻译技术可分为人工重写代码和人工设计翻译规则两类, 存在耗时长、大量重复劳动、缺乏灵活性和可拓展性等问题. 提出了一种大语言模型(LLM)赋能的Datalog代码翻译技术, 利用LLM强大的代码理解和生成能力, 通过分治翻译策略、基于少样本提示和思维链提示的提示工程、基于检查-反馈-修复的迭代纠错机制, 可以在不同Datalog方言之间实现高精度代码翻译, 减轻开发人员重复开发翻译规则的工作量. 基于此代码翻译技术, 设计并实现了一种通用的基于Datalog的声明式增量程序分析框架. 在不同Datalog方言对上评估了所提出的LLM赋能的Datalog代码翻译技术的性能, 评估结果验证了所提代码翻译技术的有效性. 对通用声明式增量程序分析框架进行了实验评估, 验证了基于所提代码翻译技术的增量程序分析的加速效果.

    • 大模型生成代码的开源许可证违规风险洞察与分析

      2025, 36(6):2535-2557. DOI: 10.13328/j.cnki.jos.007324 CSTR: 32375.14.jos.007324

      摘要 (1233) HTML (42) PDF 6.74 K (374) 评论 (0) 收藏

      摘要:大型语言模型的快速发展极大地影响了软件工程领域. 这些模型利用大量开源仓库代码进行预训练, 能够高效完成诸如代码生成和代码补全等任务. 然而, 开源软件仓库中存在大量受开源许可证约束的代码, 这给大模型带来了潜在的开源许可证违规风险. 聚焦于大模型生成代码与开源仓库的许可证违规风险, 基于代码克隆技术开发一个支持大模型生成代码溯源与版权违规问题的检测框架. 针对9个主流代码大模型生成的135 000个Python代码, 利用该框架在开源社区中溯源并检测开源许可证兼容性. 通过实践调查3个研究问题来探究大模型代码生成对开源软件生态的影响: (1) 大模型生成的代码多大程度克隆于开源软件仓库? (2) 大模型生成的代码是否存在开源许可证违规风险? (3) 真实开源软件中包含的大模型生成代码是否存在开源许可证违规风险? 实验结果发现在使用功能描述和方法签名所生成的43 130和65 900个大于6行的Python代码中, 分别溯源到了68.5%和60.9%的代码存在克隆的开源代码片段. 其中CodeParrot和CodeGen系列模型的克隆比例最高, GPT-3.5-Turbo最低. 其次, 92.7%的通过功能描述生成的代码中没有开源许可证声明. 通过与溯源代码许可证进行对比, 81.8%的代码存在开源许可证违规风险. 此外, 在收集到的229个GitHub平台开发者使用大模型生成的代码中, 有136个代码溯源了到开源代码片段, 其中38个为Type1和Type2克隆类型, 有30个存在开源许可证违规风险. 以问题报告的形式提交给开发者, 到目前为止, 得到了8位开发者的反馈.

    • 基于大语言模型的多智能体协作代码评审人推荐

      2025, 36(6):2558-2575. DOI: 10.13328/j.cnki.jos.007326 CSTR: 32375.14.jos.007326

      摘要 (428) HTML (36) PDF 6.75 K (492) 评论 (0) 收藏

      摘要:基于拉取请求(pull request, PR)的软件开发机制是开源软件中的重要实践. 合适的代码评审人能够通过代码审查帮助贡献者及时发现PR中的潜在错误, 为持续开发和集成过程提供质量保障. 然而, 代码变更内容的复杂性以及评审行为固有的多样性增加了评审人推荐的难度. 现有方法主要聚焦于从PR中挖掘变更代码的语义信息, 或基于审查历史构建评审人画像, 并通过多种静态策略组合进行推荐. 这些研究受限于模型训练语料的丰富性以及交互类型的复杂性, 导致推荐性能不佳. 鉴于此, 提出一种基于智能体间相互协作的代码评审人推荐方法. 该方法利用先进的大语言模型, 精确捕捉PR和评审人丰富的文本语义信息. 此外, AI智能体强大的规划、协作和决策能力使其能够集成不同交互类型的信息, 具有高度的灵活性和适应性. 基于真实数据集进行实验分析, 与基线评审人推荐方法相比, 所提方法性能提升4.45%–26.04%. 此外, 案例研究证明, 所提方法在可解释性方面表现突出, 进一步验证了其在实际应用中的有效性和可靠性.

    • >理论计算机科学
    • 高维贝叶斯优化研究综述

      2025, 36(6):2576-2603. DOI: 10.13328/j.cnki.jos.007304 CSTR: 32375.14.jos.007304

      摘要 (306) HTML (43) PDF 6.76 K (222) 评论 (0) 收藏

      摘要:贝叶斯优化是一种优化黑盒函数的技术, 高效的样本利用率使其在众多科学和工程领域中得到了广泛应用, 如深度模型调参、化合物设计、药物开发和材料设计等. 然而, 当输入空间维度较高时, 贝叶斯优化的性能会显著下降. 为了克服这一限制, 许多研究对贝叶斯优化方法进行了高维扩展. 为了深入剖析高维贝叶斯优化的研究方法, 根据不同工作的假设与特征将高维贝叶斯优化方法分为3类: 基于有效低维度假设的方法、基于加性假设的方法以及基于局部搜索的方法, 并对这些方法进行阐述和分析. 首先着重分析这3类方法的研究进展, 然后比较各类方法在贝叶斯优化应用中的优劣势, 最后总结当前阶段高维贝叶斯优化的主要研究趋势, 并对未来发展方向展开讨论.

    • >系统软件与软件工程
    • 软件供应链 SBOM 关键技术研究

      2025, 36(6):2604-2642. DOI: 10.13328/j.cnki.jos.007308 CSTR: 32375.14.jos.007308

      摘要 (516) HTML (39) PDF 6.75 K (178) 评论 (0) 收藏

      摘要:供应链级别的开源软件及组件复用是当前软件开发的主流模式. 该模式避免了重复开发, 降低了研发成本, 提高了开发效率, 但是也不可避免地存在组件的来源未知, 成分不清, 漏洞不明, 许可证违规等问题. 为解决上述问题, 研究人员提出了软件物料清单(software bill of material, SBOM). SBOM详细列出了构成软件的组件及组件之间的关系, 揭示了潜在的和已知的威胁, 使软件透明化. 自提出以来, 国内外研究人员针对SBOM的研究主要聚焦在SBOM的现状、应用和工具上, 缺少理论化、体系化的研究. 综述SBOM的背景、基本概念、生成技术、工具及性能分析、应用、挑战与趋势, 并提出融合细粒度安全漏洞感知, 许可证冲突检测的SBOM+, 以期从概念、技术、工具、应用和发展等方面为SBOM、软件开发、供应链安全等研究人员提供支撑.

    • 软件设计模式检测技术: 现状、挑战和展望

      2025, 36(6):2643-2682. DOI: 10.13328/j.cnki.jos.007290 CSTR: 32375.14.jos.007290

      摘要 (276) HTML (40) PDF 6.75 K (256) 评论 (0) 收藏

      摘要:设计模式检测是软件工程领域中非常重要的研究课题. 国内外很多学者致力于设计模式检测问题的研究与解决, 取得了丰硕的研究成果. 对当前软件设计模式检测技术进行综述并展望了其前景. 首先, 简要介绍软件设计模式检测领域的发展历程, 讨论并总结了设计模式的检测对象和特征类型, 给出了设计模式检测评估指标. 然后, 总结了设计模式检测技术现有的分类方法, 引出了分类方法. 根据设计模式检测技术发展的时间线从非机器学习设计模式检测、机器学习设计模式检测、基于预训练语言模型的设计模式检测这3类方法出发探讨了当前软件设计模式检测技术的研究现状和最新进展, 并对当前成果进行了总结和比较. 最后, 分析了该领域存在的主要问题与挑战, 指出了今后值得进一步研究的方向以及可能的解决方案. 涵盖了从早期的非机器学习方法到利用机器学习技术, 再到现代预训练语言模型的应用, 全面系统地展现了该领域的发展历程、最新进展和未来发展前景, 对于该领域今后的研究方向和思路具有指导意义.

    • 安卓恶意软件对抗样本攻击技术综述

      2025, 36(6):2683-2712. DOI: 10.13328/j.cnki.jos.007312 CSTR: 32375.14.jos.007312

      摘要 (133) HTML (39) PDF 6.74 K (183) 评论 (0) 收藏

      摘要:面对Android恶意软件带来的严重的安全风险, 如何有效检测Android恶意软件已成为工业界与学术界共同关注的焦点. 然而随着Android对抗样本技术的出现, 现有的恶意软件检测系统面临着前所未有的挑战. Android恶意软件对抗样本攻击通过对恶意软件的源码或特征进行扰动, 使其在保持原始功能不受影响的条件下绕过恶意软件检测模型. 尽管目前已有大量针对恶意软件的对抗样本攻击研究, 但是现阶段仍缺乏针对Android系统对抗样本攻击的完备性综述, 且并未研究Android系统中对抗样本设计的独特要求, 因此首先介绍Android恶意软件检测的基本概念; 然后从不同角度对现有的Android对抗样本技术进行分类, 梳理Android对抗样本技术的发展脉络; 随后综述近年来的Android对抗样本技术, 介绍不同类别的代表性工作并分析其优缺点; 之后, 分类介绍常用的安卓对抗样本攻击所使用的代码扰动手段并分析其应用场景; 最后讨论Android恶意软件对抗样本技术面临的挑战, 展望该新兴领域的未来研究方向.

    • 移动应用GUI测试自动生成技术综述

      2025, 36(6):2713-2746. DOI: 10.13328/j.cnki.jos.007313 CSTR: 32375.14.jos.007313

      摘要 (170) HTML (43) PDF 6.76 K (322) 评论 (0) 收藏

      摘要:移动应用是近10年来兴起的新型计算模式, 深刻地影响人民的生活方式. 移动应用主要以图形用户界面(graphical user interface, GUI)方式交互, 而对其进行人工测试需要消耗大量人力和物力. 为此, 研究者提出针对移动应用GUI的测试自动生成技术以提升测试效率并检测潜在缺陷. 收集了145篇相关论文, 系统地梳理、分析和总结现有工作. 提出了“测试生成器-测试环境”研究框架, 将该领域的研究按照所属模块进行分类. 特别地, 依据测试生成器所基于的方法, 将现有方法大致分为基于随机、基于启发式搜索、基于模型、基于机器学习和基于测试迁移这5个类别. 此外, 还从缺陷类别和测试动作等其他分类维度梳理现有方法. 收集了该领域中较有影响力的数据集和开源工具. 最后, 总结当前面临的挑战并展望未来的研究方向.

    • 重新审视代码补全中的检索增强策略

      2025, 36(6):2747-2773. DOI: 10.13328/j.cnki.jos.007226 CSTR: 32375.14.jos.007226

      摘要 (596) HTML (62) PDF 6.74 K (1702) 评论 (0) 收藏

      摘要:软件开发者在编写代码时, 常常会参考项目中实现了相似功能的代码. 代码生成模型在生成代码时也具有类似特点, 会以输入中给出的代码上下文信息作为参考. 基于检索增强的代码补全技术与这一思想类似, 该技术从检索库中检索到外部代码作为额外信息, 对生成模型起到提示的作用, 从而生成目标代码. 现有的基于检索增强的代码补全方法将输入代码和检索结果直接拼接到一起作为生成模型的输入, 这种方法带来了一个风险, 即检索到的代码片段可能并不能对模型起到提示作用, 反而有可能会误导模型, 导致生成的代码结果不准确. 此外, 由于无论检索到的外部代码是否与输入代码完全相关, 都会被与输入代码拼接起来输入到模型, 这导致该方法的效果在很大程度上依赖于代码检索阶段的准确性. 如果检索阶段不能返回可用的代码片段, 那么后续的代码补全效果可能也会受到影响. 首先, 针对现有的代码补全方法中的检索增强策略进行了经验研究, 通过定性和定量实验分析检索增强的各个阶段对于代码补全效果的影响, 在经验研究中重点识别了代码粒度、代码检索方法、代码后处理方法这3种影响检索增强效果的因素. 接着, 基于经验研究的结论设计改进方法, 提出一种通过分阶段优化代码检索策略来改进检索增强的代码补全方法MAGIC (multi-stage optimization for retrieval augmented code completion), 设计了代码切分、二次检索精排、模板提示生成等改进策略, 可以有效地提升检索增强对代码补全模型的辅助生成作用, 并减少模型在代码生成阶段受到的噪声干扰, 提升生成代码的质量. 最后, 在Java代码数据集上的实验结果表明: 与现有的基于检索增强的代码补全方法相比, 该方法在编辑相似度和完全匹配指标上分别提升了6.76%和7.81%. 与6B参数量的代码大模型相比, 该方法能够在节省94.5%的显存和73.8%的推理时间的前提下, 在编辑相似度和完全匹配指标上分别提升5.62%和4.66%.

    • 基于代码克隆差异分析的函数模板挖掘和检索方法

      2025, 36(6):2774-2793. DOI: 10.13328/j.cnki.jos.007228 CSTR: 32375.14.jos.007228

      摘要 (164) HTML (46) PDF 6.74 K (1632) 评论 (0) 收藏

      摘要:在软件工程领域, 代码库承载着丰富的知识资源, 可以为开发者提供编程实践的案例参考. 源代码中频繁出现的模式化重复片段, 若能以代码模板的形式有效提炼, 就能显著提升编程效率. 当前实践中, 开发者常常通过源代码搜索复用现有解决方案, 然而此方法往往产生大量相似且冗余的结果, 增加了后续筛选工作的负担. 与此同时, 以克隆代码为基础的模板挖掘技术往往未能涵盖由分散小克隆片段构成的广泛模式, 进而限制了模板的实用性. 提出了一种基于代码克隆检测的代码模板提取和检索方法, 通过拼接多个片段级克隆以及提取和聚合方法级克隆的共享部分, 实现了更高效的函数级代码模板提取, 并解决了模板质量问题. 基于所挖掘的代码模板, 提出了一种代码结构特征的三元组表示法, 有效地对纯文本特征进行补充, 并实现了高效而简洁的结构表示. 此外, 提出了一种结构和文本检索相结合的模板特征检索方法, 以便通过匹配编程上下文的特征来检索这些模板. 基于该方法实现的工具CodeSculptor, 在包含45个高质量Java开源项目的代码库测试中展现了其提取高质量代码模板的显著能力. 结果表明, 该工具挖掘的模板平均可实现减少60.87%的代码量, 且有92.09%是通过拼接片段级克隆产生的, 这一比例的模板在传统方法中是无法识别出来的, 这印证了该方法在识别和构建代码模板方面的卓越性能. 在代码模板检索和推荐的实验中, Top-5检索结果精确度达到了96.87%. 通过对随机选择的9600个模板进行的初步案例研究, 讨论了模板的实用性, 并发现大多数抽样代码模板在语义上是完整的, 少数无意义的模板表明该模板提取工作未来的潜力. 用户研究进一步表明, 使用CodeSculptor能够更有效率地完成代码开发任务.

    • >模式识别与人工智能
    • 异质图表征学习综述

      2025, 36(6):2794-2826. DOI: 10.13328/j.cnki.jos.007319 CSTR: 32375.14.jos.007319

      摘要 (193) HTML (40) PDF 6.71 K (275) 评论 (0) 收藏

      摘要:异质图因其能够反映现实世界中实体及其复杂多样的关系, 而在诸多领域中扮演着至关重要的角色. 异质图表征学习技术, 旨在将图中的信息有效地映射到低维空间中, 以便捕获和利用节点间深层的语义关联, 进而支持节点分类、聚类等下游分析任务. 深入调研异质图表征学习的最新研究进展, 涵盖方法论和应用实践. 首先对异质图的基本概念进行形式化定义, 并讨论异质图表征学习的挑战. 此外, 从浅层模型和深度模型两个角度, 系统地回顾当前主流的异质图表征学习方法, 特别是深度模型, 从异质图转换的视角出发进行分类并分析, 进而对多种方法的优势、局限和适用场景进行详尽分析, 旨在为读者提供一个全面的研究视角. 此外, 还介绍异质图表征学习研究中常用的数据集和工具, 并探讨其在现实世界中的典型应用. 最后, 总结主要贡献, 并对异质图表征学习领域的未来研究方向展望. 本综述旨在为研究者提供一个关于异质图表征学习领域的全面认识, 为未来的研究和应用奠定坚实的基础.

    • 基于双语依存关联图的跨语言情感分类

      2025, 36(6):2827-2843. DOI: 10.13328/j.cnki.jos.007246 CSTR: 32375.14.jos.007246

      摘要 (88) HTML (49) PDF 6.73 K (779) 评论 (0) 收藏

      摘要:跨语言情感分类在自然语言处理领域非常重要并且已经得到广泛的研究, 因为它可以利用源语言的标签信息构建目标语言的情感分类系统, 从而大大减少目标语言中费时而耗力的标注工作. 不同语言的表达方式存在明显差异是跨语言情感分类的基本挑战, 提出基于双语依存关联图模型的跨语言情感分类方法. 虽然不同语言的表达存在差异, 但是内部的句法依存关系是相似的. 通过在不同语言的词节点之间建边表示双语评论实例的语义相关性, 双语依存关联图能够对不同语言词之间依存关系的相似性进行显式建模, 从而使图神经网络可以在语言内和语言间整合句法结构信息, 进行跨语言情感分类. 利用英文和中文两种语言的数据集进行实验, 实验结果相较于基线方法提高了3%. 研究表明, 利用双语依存关联图能够对不同语言评论实例之间的关联性进行有效建模, 从而显著提升跨语言情感分类的准确率.

    • >数据库技术
    • 浮点时序数据压缩综述

      2025, 36(6):2844-2874. DOI: 10.13328/j.cnki.jos.007317 CSTR: 32375.14.jos.007317

      摘要 (129) HTML (37) PDF 6.74 K (192) 评论 (0) 收藏

      摘要:物联网技术的发展产生了海量的浮点时序数据, 这给数据存储和传输带来了巨大挑战. 为此, 浮点时序数据压缩变得至关重要, 其按数据可逆性分为有损压缩和无损压缩. 有损压缩方法通过舍弃部分数据信息以实现较好的压缩率, 适用于对精确性要求较低的应用. 无损压缩方法在减小数据大小的同时保留了所有数据信息, 这对于需要保持数据完整性和准确性的应用至关重要. 此外为满足边缘设备的实时监控需求, 流式压缩算法应运而生. 当前时序压缩综述论文存在梳理不全面、脉络不清晰、分类标准单一、未归纳较新的具有代表性算法等问题. 对历年来的时序数据压缩算法按有损压缩和无损压缩进行划分, 并进一步区分不同的算法框架, 包括基于数据表示、基于预测、基于机器学习、基于变换等, 同时对流式与批式的压缩特征进行归纳. 然后对各种压缩算法的设计思路进行深入分析, 并给出各算法的发展脉络图. 接着结合实验比较各类算法的优势与不足. 最后总结算法常见的应用场景, 并对未来研究进行展望.

    • >计算机网络与信息安全
    • PKI技术研究与进展

      2025, 36(6):2875-2899. DOI: 10.13328/j.cnki.jos.007305 CSTR: 32375.14.jos.007305

      摘要 (149) HTML (49) PDF 6.74 K (361) 评论 (0) 收藏

      摘要:PKI系统是目前用户进行安全访问基础资源的重要设施, 通过公共的第三方认证来保障用户访问资源的安全. 随着PKI技术的逐步部署应用, 各类在部署应用中的安全问题也随之而来, 攻击者可以通过攻击PKI系统窃取用户信息和破坏用户访问. 从PKI的基本工作原理出发, 全面介绍PKI系统在实际部署应用中涉及的各个要素, 包括PKI架构、工作流程、证书、证书链、证书撤销、CI日志服务. 在PKI基本工作原理的基础上, 重点从PKI系统安全角度全面梳理和总结PKI系统工作过程中面临的安全问题, 包括PKI系统应用过程中面临的运营风险和技术风险、PKI系统的测量、风险检测及各类PKI系统的风险防范技术, 并对未来PKI领域的研究方向进行展望.

    • 动态信息网中持续扩展k-truss社区序列查找算法

      2025, 36(6):2900-2926. DOI: 10.13328/j.cnki.jos.007243 CSTR: 32375.14.jos.007243

      摘要 (168) HTML (40) PDF 6.75 K (924) 评论 (0) 收藏

      摘要:动态信息网(DIN)包含了真实世界中随时间推移不断发生变化的对象以及对象间的联系, 常常被刻画为一系列静态无向图快照. 社区, 由信息网中一些内部联系紧密的对象组成. 动态信息网中常常存在这样的社区: 在一段时间内, 随着时间的推移, 社区成员规模不断扩大, 并且社区内部成员间始终保持紧密的联系. 这样的社区在相应时间段内的演化轨迹在动态信息网的多张图快照上形成了一个社区序列, 称为持续扩展社区序列. 在动态信息网中查找持续扩展社区序列有重要的实用价值, 但是以前的工作并未对此进行研究. 结合集合的包含关系和三角连通$k$-truss模型, 提出动态信息网中基于查询点$q$的持续扩展社区序列(qLEC)模型, 设计了一个正向计算社区候选顶点集-反向回溯查找社区序列的持续扩展社区序列两阶段查找算法, 并给出基于提早终止策略的时间优化和基于TCP索引压缩技术的空间优化方法. 通过充分的实验证明: 相比于现有动态社区模型, qLEC模型具有特定的实际意义; 两阶段查找算法能够有效找到qLEC模型所刻画的持续扩展社区序列; 优化策略显著降低了两阶段查找算法的时间和空间开销.

当期目录


文章目录

过刊浏览

年份

刊期

联系方式
  • 《软件学报 》
  • 主办单位:中国科学院软件研究所
                     中国计算机学会
  • 邮编:100190
  • 电话:010-62562563
  • 电子邮箱:jos@iscas.ac.cn
  • 网址:https://www.jos.org.cn
  • 刊号:ISSN 1000-9825
  •           CN 11-2560/TP
  • 国内定价:70元
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号