Diverse In-Context Example Selection After Decomposing Programs and Aligned Utterances Improves Semantic Parsing

TL;DR

提出SCUD4ICL,通过分解程序和对齐话语提升语义解析精度。

cs.CL 🔴 高级 2025-04-04 52 次浏览
Mayank Kothyari Sunita Sarawagi Soumen Chakrabarti Gaurav Arora Srujana Merugu
语义解析 大规模语言模型 示例选择 程序分解 多样性

核心发现

方法论

该方法将训练样本中的程序树分解为子片段,利用LLM自动映射子片段与话语,结合多样性选择策略,从而优化在上下文中的示例选择。具体包括:一是对训练实例进行一次性分解,生成丰富的子程序池;二是用带语法约束的LLM自动生成对应子话语;三是扩展多样性示例选择算法,结合完整和分解的示例,有效减少干扰。实验证明,SCUD4ICL在SMCalFlow、GeoQuery和MTOP等基准上均优于现有方法,尤其在小模型、大树结构和低资源语言中表现突出。

关键结果

  • 在SMCalFlow T= T5训练集上,SCUD4ICL提升准确率达4.4%,在GeoQuery的多种拆分下,平均提升约3-5个百分点,显著优于CoverLS和DPP等基线。特别是在较小模型(如Llama3-8B)和低资源语言中,效果更为明显。
  • 在MTOP任务中,采用M=5和M=10示例数,SCUD4ICL在英语和法语上的准确率分别提升了2-4个百分点,显示出其在多语种和复杂查询中的适应性。
  • 消融实验表明,子程序分解和对话对齐显著减少了干扰,提高了模型的泛化能力,验证了示范多样性和相关性的重要性。

研究意义

该研究突破了传统示例选择的局限,通过程序分解与对齐提升LLM在结构化任务中的表现,特别适用于低资源环境和小模型,推动语义解析向更高精度和更广泛应用迈进。其创新的分解策略和多样性选择机制,为未来基于结构的任务提供了新思路,具有重要的学术和工业价值。

技术贡献

提出SCUD4ICL系统,结合程序分解、对齐生成和多样性示例选择,创新性地将结构化程序的子片段引入示例选择流程。算法层面,扩展了Levy等的多样性选择方法,融合了子程序的结构关系,有效减少干扰。技术实现上,利用带语法约束的LLM自动映射子片段与话语,提升了分解的自动化和准确性。整体架构显著优于传统全例选择和静态分解方法,为结构化语义解析提供了新工具。

新颖性

首次将程序树的子片段作为示例候选,结合自动映射和多样性筛选,显著改善示例相关性和多样性。不同于以往仅选择完整示例的方法,本研究通过分解增强示范池,有效降低干扰,提升模型性能,特别在低资源场景中表现优异。

局限性

  • 当前分解依赖预定义的语法规则和LLM生成,可能在复杂或模糊的程序结构中出现误差,影响效果。
  • 示例选择策略虽减少干扰,但在极端复杂或噪声较多的任务中仍存在干扰风险,需进一步优化筛选机制。
  • 模型训练和推理成本较高,尤其在大规模分解和多样性筛选时,可能限制实际应用规模。

未来方向

未来将探索更鲁棒的分解和映射机制,结合自监督学习优化示例生成与筛选策略,提升在多任务、多语言环境下的适应性。同时,考虑引入强化学习或元学习框架,进一步增强模型的泛化能力和效率。

AI 总览摘要

随着大规模语言模型(LLMs)在语义解析中的广泛应用,如何有效选择上下文示例(ICEs)成为提升模型性能的关键。传统方法多关注完整示例,忽视程序结构的复杂性和潜在干扰。本文提出SCUD4ICL,通过将程序树分解为子片段,结合自动映射与多样性筛选,显著改善示例的相关性和多样性。该系统利用带语法约束的LLM自动生成子话语,减少干扰,提升泛化能力。在SMCalFlow、GeoQuery和MTOP等基准测试中,SCUD4ICL均优于现有方法,尤其在小模型和低资源语言中表现突出。实验结果显示,子程序分解和对齐机制有效缓解了示例干扰问题,推动结构化语义解析向更高精度发展。这一创新方法不仅丰富了示例选择的理论体系,也为工业中复杂语义任务的应用提供了新思路。未来,结合自监督和强化学习,将进一步提升系统的鲁棒性和适应性,推动语义理解技术的持续进步。

深度分析

研究背景

近年来,LLMs在自然语言处理中的表现不断突破,尤其在语义解析、代码生成等任务中展现出强大能力。早期工作如Seq2Seq模型和基于模板的方法,受限于数据稀缺和泛化能力不足。随着Transformer架构的引入,模型规模不断扩大,预训练语料丰富,极大提升了性能。代表性研究如GPT系列、T5、CodeX等,推动了结构化任务的自动化。然而,示范样本的选择仍是瓶颈,尤其在复杂程序和多样化场景中,如何有效筛选示例以引导模型学习,成为研究热点。现有方法多采用相似度排序或随机采样,难以兼顾相关性和多样性,导致干扰和泛化不足。因此,如何结合程序结构特性,设计更智能的示例筛选策略,成为推动行业发展的关键。

核心问题

核心问题在于示例选择的相关性和多样性不足,导致模型在复杂结构化任务中表现不佳。传统方法多依赖全例匹配或随机采样,忽视程序结构的层次性和话语的细节差异,容易引入干扰。尤其在低资源场景或小模型中,示例的干扰更为明显,影响模型的泛化能力。如何设计一种既能保持示例相关性,又能丰富多样性的筛选机制,是提升语义解析性能的关键难题。此外,程序树的复杂性和话语的多样性也增加了示例匹配的难度,亟需结合结构信息进行优化。

核心创新

本研究提出了程序分解与对齐结合的示范增强策略。第一,利用一次性分解,将完整程序树拆解为有意义的子片段,丰富示例池;第二,采用带语法约束的LLM自动生成子话语,确保话语与子程序对应且自然;第三,扩展多样性筛选算法,结合结构关系和语义相似性,筛选出相关且多样的示例。此方法突破了以往只选完整示例的局限,有效减少干扰,提升模型的泛化能力。通过结构化的子片段和对齐机制,增强示范的相关性和多样性,为低资源和复杂场景提供了新思路。

方法详解

  • �� 训练集中的每个程序树通过预定义语法规则进行一次性分解,生成多个子程序和对应子话语。• 利用带语法约束的LLM,基于原始话语和程序树,自动生成子话语,确保其自然且与子程序对应。• 构建扩展的示范池,包含完整和分解的示例。• 采用改进的多样性筛选算法,结合BM25相似度和结构关系,逐步选择最相关且多样的示例,确保覆盖关键结构和话语特征。• 在测试时,根据目标话语,动态筛选示例,减少干扰,提升模型推理准确性。• 结合多模型、多语言环境,验证方法的普适性和鲁棒性。

实验设计

在SMCalFlow、GeoQuery和MTOP三个公开数据集上进行评估,比较SCUD4ICL与CoverLS、DPP等基线的性能。采用不同训练集规模和拆分策略,测试模型在不同场景下的准确率和泛化能力。通过消融实验验证子程序分解、话语对齐和多样性筛选的贡献。参数设置包括示范数量(M=5或10),模型为GPT-3.5、GPT-4、Llama3-8B等。指标主要为执行准确率和精确匹配率,统计多次实验的平均值,确保结果的可靠性。

结果分析

SCUD4ICL在所有数据集上均优于传统示范选择方法,提升准确率约4-6个百分点。特别是在小模型和低资源语言中效果更显著,例如Llama3-8B在SMCalFlow中的准确率由44%提升至48%。在GeoQuery的不同拆分中,平均提升3-5个百分点,验证了结构化子片段的有效性。消融实验显示,子程序分解和对齐机制是性能提升的关键因素,减少了示例干扰,增强了模型的泛化能力。

应用场景

该方法适用于企业级语义解析、代码生成、知识图谱问答等场景,尤其在私有数据和低资源环境中表现优异。通过自动化示例筛选和结构化分解,降低了人工标注成本,提升了模型的适应性。未来可结合自动化数据增强和迁移学习,推动行业智能化升级。

局限与展望

目前分解和映射依赖预定义规则和LLM生成,可能在复杂或模糊场景中出现误差。示范筛选策略虽减少干扰,但在极端复杂任务中仍存在干扰风险。模型训练和推理成本较高,限制大规模应用。未来需优化算法效率和鲁棒性,以适应更复杂的任务需求。

通俗解读 非专业人士也能看懂

想象你在准备一场盛大的派对,邀请不同的朋友。每个人都带来不同的礼物和建议,但如果你只听一个朋友的建议,可能会错过其他更好的点子。为了让派对更精彩,你会把每个人的建议拆开,挑选出最有用的部分,再结合多样的建议,确保每个环节都丰富多彩。这就像论文中的方法,把复杂的程序拆成小块,挑选最相关的建议,让模型更聪明地理解和生成内容。这样做可以避免被无关信息干扰,让派对(任务)变得更完美。

简单解释 像给14岁少年讲一样

想象你在组织一个学校活动,你需要安排很多细节,比如时间、地点、参加人等。有时候,信息太多,难以全部记住。于是你把大任务拆成几个小任务,比如先确定时间,再安排地点,然后邀请朋友。每个小任务都简单明了,不会搞混。这样一来,你就能更轻松地完成整个活动。论文里的方法也是这样,把复杂的程序拆成小部分,逐个处理,然后用多样的建议帮助模型理解。这样,模型就能更准确地完成任务,就像你组织活动一样顺利。

术语表

Abstract Syntax Tree (AST) (抽象语法树)

一种程序结构的树状表示,描述程序的语法层次关系,便于分析和分解。

用于将程序转化为结构化的树形表示,便于分解和匹配子程序。

示范示例(In-Context Examples, ICEs)

在模型推理中提供的示例,用于引导模型理解任务和结构。

选择相关多样的ICEs能显著提升模型性能。

多样性筛选(Diversity Selection)

在示例中选择既相关又多样的样本,以减少干扰并提高泛化。

本文扩展了Levy等的多样性筛选算法,结合结构关系优化示例池。

程序分解(Program Decomposition)

将复杂程序拆解为子程序或子树,便于理解和匹配。

通过分解提升示范的相关性和多样性,减少干扰。

开放问题 这项研究留下的未解疑问

  • 1 如何在极端复杂或模糊的程序结构中保证分解的准确性?未来需要研究更鲁棒的自动分解和映射机制。
  • 2 示范筛选在大规模多任务环境中的效率和效果仍需优化,特别是在多模态、多语言场景下。
  • 3 如何结合自监督学习和强化学习进一步提升示范选择的智能化和适应性?

应用场景

近期应用

企业私有数据的结构化语义解析

利用SCUD4ICL提升企业内部数据的自动理解和处理能力,减少人工标注,增强数据隐私保护。

低资源语言的语义理解

在低资源环境中,通过子程序分解和多样示例,改善模型在少量数据下的表现,支持多语种应用。

远期愿景

智能化人机交互系统

实现更自然、更准确的语义理解,推动智能助手、自动问答等应用的普及,提升用户体验。

原文摘要

LLMs are increasingly used as seq2seq translators from natural language utterances to structured programs, a process called semantic interpretation. Unlike atomic labels or token sequences, programs are naturally represented as abstract syntax trees (ASTs). Such structured representation raises novel issues related to the design and selection of in-context examples (ICEs) presented to the LLM. We focus on decomposing the pool of available ICE trees into fragments, some of which may be better suited to solving the test instance. Next, we propose how to use (additional invocations of) an LLM with prompted syntax constraints to automatically map the fragments to corresponding utterances. Finally, we adapt and extend a recent method for diverse ICE selection to work with whole and fragmented ICE instances. We evaluate our system, SCUD4ICL, on popular diverse semantic parsing benchmarks, showing visible accuracy gains from our proposed decomposed diverse demonstration method. Benefits are particularly notable for smaller LLMs, ICE pools having larger labeled trees, and programs in lower resource languages.

cs.CL