RescueADI:基于自主智能体的遥感图像自适应灾害解译

摘要 ------目前用于遥感图像(RSI)灾害场景解译的方法大多聚焦于孤立任务,如语义分割、目标检测或视觉问答(VQA)。然而,现有解译方法在需要综合多种感知方法和专用工具的任务上往往表现不佳。为填补这一空白,本文提出了自适应灾害解译(ADI)这一新型任务,旨在通过规划和执行多个顺序相关的解译子任务来响应用户请求,从而对灾害场景进行综合分析。为促进该领域的研究与应用,我们构建了名为 RescueADI 的新数据集,该数据集包含高分辨率遥感图像,并从规划、感知和识别三个相互关联的维度提供标注。数据集包含 4,044 张遥感图像、16,949 个语义掩码、14,483 个目标边界框以及涵盖九种挑战性请求类型的 13,424 条解译请求。此外,我们提出了一种以大语言模型(LLM)驱动的自主智能体为核心的新型灾害解译方法,验证了其处理复杂灾害解译任务的有效性。所提出的基于智能体的方法无需人工干预即可解决多种复杂解译请求,如计数、面积计算和路径搜索,而传统单任务方法无法有效处理这些问题。在 RescueADI 上的实验结果验证了所提任务的可行性,表明我们的方法比现有 VQA 方法的准确率高出 9%9\%9%,突出了其相较于传统灾害解译方法的优势。数据集将公开发布。

关键词------遥感图像,灾害解译,大语言模型,自主智能体


1 引言

基于遥感图像(RSI)的灾害检测能够实现精准、高效、大范围的灾害评估与态势判断 [1]。随着遥感图像解译技术的发展,深度学习模型在土地资源统计 [2]、城市规划 [3]、灾害监测 [4] 等多种任务中发挥了重要作用。尤其在灾害损失评估方面,神经网络能够快速从遥感图像中提取灾害相关信息,并将其提供给救援人员用于分析,以协助后续的灾害评估与应急响应。

就任务形式而言,现有灾害监测模型大多聚焦于孤立任务,如语义分割 [5] 和场景分类 [6]。分割任务可进一步细分为语义分割 [5] 和变化检测 [7]。具体而言,语义分割以输入图像为基础,对每个像素预测损毁等级;变化检测则利用同一地点不同时期的两张图像,预测像素级掩码以指示语义变化。场景分类 [6] 旨在对图像级别的灾害类型或损毁程度进行分类。这些感知任务擅长从输入图像中提取信息,注意力机制 [4] 和金字塔池化 [8] 等多种技术已被开发用于提升感知系统的准确率。然而,提取的信息并非自然语言形式,需要进一步识别才能为救援任务提供有效指导。为应对更灵活的应用场景,视觉问答(VQA)应运而生,并成为灾害评估领域的热门研究方向 [9][10]。VQA 方法以自然语言响应用户输入,并以文本形式给出答案,提供高度抽象的反馈,降低理解成本。大语言模型(LLM)[11] 和视觉语言模型(VLM)[12] 的最新进展进一步拓展了 VQA 模型的边界。然而,VQA 任务并不显式生成中间感知结果,因而缺乏透明度。在涉及定量分析的问题上,即使是最大规模的 LLM 也无法避免幻觉问题 [13],使其难以输出真实准确的数字。此外,VQA 方法仍存在局限性------其任务形式仅支持回答问题,而不能响应用户关于执行特定任务的指令(如对给定图像执行分割)。

近年来,大语言模型(LLM)已逐渐接近人类水平的智能 [14]--[16]。由 LLM 驱动的自主智能体在以最小人工干预完成复杂任务方面的能力日益增强 [17][18]。LLM 驱动

图 1. 所提出的 ADI 集成了规划、感知和识别三个环节,无需人工干预,并能提供清晰的中间结果。

自主智能体的灵活性关键在于能够制定计划以利用多种工具。类似地,为系统地勘察和分析灾害现场,需要从多个维度对灾害遥感图像进行感知。在实践中,人类专家通常需要综合多个不同模型的结果,或依次运行多个模型,方能得到正确结果。受此启发,我们提出自适应灾害解译(ADI)这一新型任务形式------解译系统需根据用户关于灾害场景的请求进行规划,并调用一系列模块化子任务以获得准确而详细的答案。

如图 1 所示,ADI 统一了执行单项解译任务的需求与需要对灾害场景进行综合理解的视觉问答任务。与简单地将所有子任务合并为一个整体不同,ADI 通过规划对子任务间的关联关系进行建模。与现有任务不同,ADI 要求对灾害场景进行专业解译。例如,为判断救援人员能否到达受损房屋,需要依次执行多项解译任务:第一步是确定该区域内房屋的受损情况以及道路是否受阻,这是当前灾害检测算法关注的基础解译任务;第二步还需判断受损房屋是否可达,这属于高层规划任务;最后,将每个步骤的结果汇总为易于人类理解的结构化文本。

为支持新任务的研究,我们基于高分辨率遥感图像构建了 RescueADI 数据集。该数据集包含 9 个不同维度的 13,424 个问题,这些问题难以通过现有单模型方法完成。据我们所知,这是首个覆盖多种复杂灾害解译场景的面向自主智能体的灾害解译数据集。此外,我们提出了一种基于 LLM 自主智能体框架的有效方法来应对新型 ADI 任务,利用 LLM 的规划能力,实验结果验证了 ADI 任务的可行性,并为未来研究奠定了坚实基础。

本文的贡献可概括如下:

  • 我们提出了 ADI,这是一种新型任务形式,自主智能体利用顺序化模块工具来解译用户关于灾害场景的复杂查询,并提供更易于理解的响应。该任务形式支持根据不同请求进行自适应解译,而现有单任务框架无法处理此类情况。
  • 为应对 ADI,我们提出了一个新数据集 RescueADI。据我们所知,这是首次将多种遥感图像标注整合在一起,以挑战和增强面向自主智能体的灾害解译任务。
  • 我们引入了一种基于自主智能体的框架来解决 ADI 问题。

表 1 RescueADI 所覆盖的能力。

任务 规划 像素级感知 实例级感知 目标感知 细粒度损毁 救援路径
xBD [7]
FloodNet [19]
ISBDA [20]
RescueNet [5]
RSVQA [21]
RescueADI(本文)

所提方法利用大语言模型进行规划,验证了 ADI 在复杂灾害场景下的可行性,与传统 VQA 方法相比准确率提升了 9%9\%9%。


2 相关工作

2.1 自然灾害场景中的遥感图像解译

目前,大量灾害场景数据集以语义分割、实例分割、变化检测和场景分类等基础计算机视觉任务的形式存在。

最常见的方式是将灾后图像中受损区域的检测视为分割任务,即为图像中每个像素分配类别标签。语义分割是通用遥感图像领域研究较为成熟的任务,已有许多可用数据集 [22]--[24]。与通用语义分割数据集不同,灾害检测数据集以灾害场景图像为来源,并提供受影响区域更为详细的标注。RescueNet [5] 提供了飓风迈克尔过后拍摄的详细灾后图像数据集,聚焦于语义分割任务,包含涵盖细粒度建筑物损毁等级、道路、水体和植被等各类别的完整像素级标注。ISBDA [20] 数据集提供了来自社交媒体用户生成的无人机航拍视频中的实例级建筑物损毁掩码,专注于定量模型评估,为灾后场景建筑物损毁评估中航拍视频分析的应用提供了新视角。

利用灾前和灾后图像检测受损区域可视为变化检测任务。变化检测涉及对地表语义随时间变化的监测,常用于土地调查和环境监测研究 [25]。在自然灾害场景中,xBD 数据集 [7] 提供了独特的灾前和灾后卫星图像集合,旨在支持灾后恢复的变化检测和建筑物损毁评估。

场景分类也是灾后评估的可行选择。在场景分类数据集中,每幅图像被分配一个标签以指示图像类别。与专注于图像前景目标的自然图像目标分类数据集 [26]--[29] 不同,遥感图像中的场景分类需要综合考虑背景信息。大多数用于遥感图像的场景分类数据集聚焦于正常场景 [30]--[32],而专为各类灾害场景设计的 AIDER [6] 数据集则为灾害响应和恢复工作提供了宝贵参考。

尽管灾害场景遥感数据集发展迅速,但上述数据集均针对特定任务设计,缺乏灵活性。专家仍需额外工作来执行这些任务,并将每项任务的输出转化为能够指导灾后救援的信息。因此,一个能够制定任务执行计划并综合不同任务信息的更集成化系统,对于增强灾后决策能力至关重要。

2.2 面向遥感的视觉问答

视觉问答(VQA)[9][33]--[36] 是一项旨在弥合视觉信息与自然语言理解之间差距的挑战性任务。具体而言,VQA 的目标是以精确的文本响应来回答关于图像视觉内容的问题。随着 LLM 的发展,研究人员将视觉模型与语言模型相结合,构建了视觉语言模型(VLM),如 VisualGLM [37] 和 LLaVA [38],在各数据集上的表现超越了传统 VQA 模型。将 VQA 适配到遥感图像方面也已有研究。RSVQA [21] 提出了一个系统及相应数据集,用于从遥感图像中提取文本答案。Prompt-RSVQA [39] 通过向语言模型提供上下文提示来提升答案准确性。GeoChat [40] 对 LLaVA [38] 进行微调以回答遥感图像相关问题。在灾害检测方面,FloodNet [19] 和 FloodNet+ [41] 将语义分割、场景分类和 VQA 任务整合到一个数据集中,提供了对灾害场景更全面的理解。该数据集为每张图像提供了多个问答对和分割图。然而,任务与问题之间的关系仍缺乏建模------这些任务被视为独立部分,分开处理。此外,端到端模型对遥感图像中数值型问题的答案预测仍是一项困难任务,因为这类模型并不显式执行基础感知任务。

当人类专家解决遥感灾害场景问题时,不仅需要回答问题,还会根据问题的性质制定不同计划来执行子任务。受此启发,我们将 VQA 框架从简单地回答问题扩展为规划子任务以解决问题。在本文中,我们建立了 ADI 这一具备规划和问答能力的新型任务形式,并构建了一个新数据集以支持我们的研究。

2.3 基于自主智能体的行动规划

自主智能体是指能够根据特定规则或策略函数与环境交互并完成特定任务的程序 [42][43]。LLM 的最新发展为自主智能体研究提供了新的思路。在大量文本上预训练后,LLM 学习到大量逻辑规则和常识,能够驱动智能体执行更复杂的任务规划和外部交互 [18]。Camel [44] 提出让大语言模型进行角色扮演和多智能体协作,可以增强其解决复杂问题的能力。ChatDev [45] 利用多个 LLM 扮演游戏开发公司中不同岗位的角色,实现了复杂开发需求的自动化、稳定可靠的落地。DEPS [46] 提出了一种交互式任务规划框架,能够在开放世界游戏模拟中达成困难的任务目标。GITM [47] 提出了一种基于递归树的任务规划系统,逐步将复杂任务分解为简单任务。WebGPT [48] 使用 GPT-3 作为规划器,持续与搜索引擎交互并回答用户问题。ToolFormer [49] 提出将外部工具集成到 LLM 中。VisualChatGPT [50] 将 GroundingDINO [51] 和 SAM [52] 作为外部工具供 LLM 调用,实现了根据用户需求对输入图像进行识别和编辑。HuggingGPT [53] 将开源模型平台上的大量模型封装为自主智能体可调用的工具,能够完成需要多模型协同的复杂任务流程。

在遥感领域,已有开创性工作探索了 LLM 在图像解译中的应用潜力 [54]。然而,现有方法局限于自然场景,缺乏专用于灾害解译的专业工具。

尽管行动规划研究取得了快速进展,但大多数进展针对特定应用场景定制。专门针对灾害解译的努力仍然有限,而灾害解译需要专业模型、工具和专业知识。在本文中,我们提出了 ADI 的标准化表述,引入了一个新数据集来验证灾害场景中的行动规划,并开发了一种基准方法,利用大语言模型的规划能力并融入专用工具,以增强其对遥感图像灾害场景解译的适应性。


3 ADI 任务定义

本文提出了一种名为 ADI 的新型任务,旨在通过基于智能体的方法加深对灾害场景的理解。如图 2 所示,我们的框架与传统任务不同,它集成了子任务规划和问答能力。与仅限于特定形式(如语义分割或视觉问答)的传统任务不同,ADI 要求智能体能够根据输入请求的需求动态调整。例如,在需要时可对受影响区域执行详细的语义分割,同时也能够回答关于灾害的上下文问题,如损毁程度或受影响建筑物的数量。

ADI 的输入由一张输入图像和一条文本请求构成。输入图像提供灾害场景的视觉信息,请求则提供解译任务的目标------可以是执行特定子任务的请求、需要回答的问题,或两者兼有。ADI 的输出可从三个相互关联的维度定义,如图 3 所示。

  1. 规划维度要求智能体根据输入请求的需求创建计划。计划中的每个步骤属于数据集预定义的子任务集合。智能体应执行所有必要的子任务,同时避免规划不需要的子任务。
  2. 感知维度要求每个被选中的子任务输出准确的预测结果。例如,分割子任务需要对输入图像中的每个像素分配类别,目标检测子任务需要对输入图像中的目标进行识别和定位。
  3. 识别维度要求智能体理解和分析感知结果,并以自然语言生成对请求的直接响应。

图 3. ADI 的定义与示例。该任务分为三个阶段:规划、感知和识别。规划阶段动态调度后续的感知和识别,实现灾害场景的灵活解译。

基于上述三个维度,ADI 的更具体定义如下。任务的一般输入定义为元组 (I,Q)(I, Q)(I,Q),其中 I∈RC×H×WI \in \mathbb{R}^{C \times H \times W}I∈RC×H×W 为输入图像,QQQ 为自然语言形式的输入请求。CCC 表示图像的通道数,HHH 为高度,WWW 为宽度。ADI 的输出是综合了规划、感知和识别三个维度结果的结构化响应。形式上,输出也可表示为元组 (P,R,A)(P, R, A)(P,R,A),其中:

  1. PPP 是规划子任务的序列,P={p1,p2,...,pn}P = \{p_1, p_2, \ldots, p_n\}P={p1,p2,...,pn},每个 pip_ipi 属于预定义的子任务集合 P\mathcal{P}P。智能体必须根据输入请求 QQQ 选择并规划这些子任务。
  2. RRR 是已执行子任务的结果集合,R={r1,r2,...,rn}R = \{r_1, r_2, \ldots, r_n\}R={r1,r2,...,rn},与 PPP 中的子任务一一对应。每个 rir_iri 是子任务 pip_ipi 的输出,可能包括分割图、目标检测边界框或其他形式的基础感知任务结果。
  3. AAA 是针对输入请求 QQQ 生成的最终自然语言答案。该答案应连贯、符合上下文,并从请求 QQQ 和感知结果 RRR 中推导得出。

ADI 的总体目标是在给定输入元组 (I,Q)(I, Q)(I,Q) 的情况下,最大化 PPP、RRR 和 AAA 的准确性。

采用以下指标来评估智能体在 ADI 上的性能:

  1. 规划准确率 :为衡量规划子任务 PPP 与真值子任务序列 P∗P^*P∗ 的正确性,将每个子任务的存在与否视为二分类问题,并采用精确率和召回率指标。
  2. 感知准确率:采用基础感知任务中常用的指标来衡量选定子任务的感知准确率。对于语义分割子任务,使用交并比(IoU)来表示分割输出的准确率;对于目标检测子任务,采用平均精度均值(mAP)来验证边界框的质量。
  3. 识别准确率 :通过与真值答案 A∗A^*A∗ 进行比较,使用精确匹配准确率和 GPTScore [53] 来评估生成答案 AAA 的质量。前者检查答案是否完全一致,后者评估语义相似性以捕捉细微差异。

综上,ADI 是一项综合性和动态性的任务,要求智能体整合规划、感知和识别能力,以有效解译复杂灾害场景并做出响应。这一方法旨在突破当前 AI 系统的边界,推动灾害响应技术的进步。


4 数据集

现有单任务数据集无法提供完成 ADI 任务所需的对灾害场景的全面理解。因此,我们构建了 RescueADI 这一新型数据集,旨在支持子任务规划、感知和识别的集成任务。本节将详细说明 RescueADI 的构建过程。

4.1 RescueADI 数据集

所提出的 RescueADI 数据集专为面向自主智能体的遥感图像灾害场景而设计,其独特的任务格式和对灾害解译任务的全面覆盖使其有别于现有数据集。数据集中的灾害场景图像主要来源于 RescueNet 数据集,但我们进行了额外的数据清洗,并基于原始数据集开发了生成高质量"请求-规划-答案"标注的方法。RescueADI 数据集旨在支持灾害解译请求,聚焦于六类语义类别和四种细粒度建筑物损毁等级,包含九种不同类型的请求,涵盖遥感灾害解译中基本需求和挑战性场景。

图 4. RescueADI 中不同请求类型的分布情况。

如表 1 所示,与现有数据集相比,本数据集是首个覆盖规划、感知和识别全谱系的数据集。具体而言,RescueADI 包含 4,044 张灾害场景遥感图像上的 13,424 条请求和答案,以及 16,949 个语义掩码和 14,483 个目标边界框。细粒度损毁等级从无损毁到完全毁坏不等,其他语义类别包括水体、车辆、通畅道路、受阻道路、水池和树木。请求类型包括目标检测、语义分割、目标存在性、目标计数、目标面积计算、损毁存在性、损毁计数、损毁面积计算和救援路径搜索。图 4 展示了本数据集所覆盖任务的数量分布。数据集划分为 12,426 条训练请求和 998 条验证请求。

4.2 请求构建

在真实灾害场景中,对准确且可操作信息的需求尤为迫切。救援人员需要快速精确的数据来做出可挽救生命、减轻损失的明智决策。这些需求可归纳为以下几个关键领域:

基础任务执行:灾害响应的基础任务包括识别图像中的关键目标(如车辆、建筑物)或特定区域(如受阻道路和通畅道路)。这些基础识别对于初步评估和资源分配至关重要。

目标感知:在灾害现场,救援人员需要识别和分类场景中的各类元素,包括确定目标的存在性、统计目标数量以及计算目标占据的面积。准确的目标感知有助于理解场景的复杂性并规划适当的响应措施。

细粒度损毁评估:对损毁程度和严重性的详细分析对于优先安排响应工作和资源至关重要,包括确定损毁的存在性、统计损毁实例数量以及计算损毁面积。细粒度损毁评估能够深入了解灾害影响,有助于制定有效的恢复策略。

救援路径搜索:在混乱危险的环境中,为救援人员识别安全高效的路线至关重要。这涉及分析地形、碎石和潜在危险,以寻找最小化风险、最大化响应效率的路径。有效的救援路径搜索能够显著提升救援行动的速度和安全性。

基于上述关键需求,我们构建的数据集请求与这四种通用类型相对应。这一系统性方法源于对真实灾害场景的深入分析,并考虑了现有算法的当前局限性和能力。通过针对这些特定需求,本数据集为改进灾害响应和管理提供了综合工具。

如图 5 所示,从这四种通用类型衍生出九种子类型。基础任务执行包括对给定图像执行语义分割或目标检测的需求。目标感知包括确定目标存在性、计数和计算面积等任务。例如,目标存在性请求需要回答关于特定目标是否存在的"是/否"问题,而目标计数和面积计算请求则需要精确的数值答案。细粒度损毁评估涉及类似任务,但专注于损毁相关细节,包括确定损毁的存在性、统计损毁实例数量以及计算损毁面积。这种详细分析有助于理解灾害影响的严重程度和范围。最后,救援路径搜索在灾害响应中至关重要,涉及发现给定点之间安全高效的路径,这一任务解决了在复杂多变环境中导航的挑战,而现有数据集对此覆盖不足。

为确保请求文本的多样性,避免模型过拟合于特定输入模式,请求以三步流程创建:首先,对每张图像利用固定模板生成不同类型的请求,称为"种子请求";然后,利用预训练 LLM 的能力扩展请求的多样性。对于每条请求,提示 LLM 生成并随机采样 3 种不同形式的请求,同时保持请求含义不变。由于 LLM 并非总能产生准确的答案,我们对数据集进行人工筛查,过滤掉被错误改写的请求。在人工筛查过程中,仔细审查每条生成的请求,确保改写内容忠实于原始意图。

救援路径搜索

用户:从 A 到 B 是否存在路径?

智能体:是

目标感知

存在性:用户:图像中是否有车辆?

智能体:是

计数:用户:图中有多少辆车辆?

智能体:共有 3 辆车辆

面积:用户:道路的面积是多少?

智能体:面积为 100 m²

基础任务执行

检测

用户:你能定位图像中的建筑物吗?智能体:

分割

用户:你能生成建筑物的掩码吗?智能体:

细粒度损毁评估

存在性

用户:是否有被完全摧毁的建筑物?

智能体:是

计数

用户:统计轻微受损的房屋数量。

智能体:有 1 栋轻微受损的房屋。

面积

用户:受损建筑物的面积是多少?

智能体:为 20 m²

图 5. RescueADI 中不同类型标注请求的示例展示。

4.3 标注

ADI 任务的独特结构要求采用全面的标注方法。每条请求被标注为三元素元组 (P,R,A)(P, R, A)(P,R,A),分别代表规划、感知和识别。规划标注通过完成请求所需的子任务列表详细描述;感知标注包含场景中目标的语义分割图和边界框;识别标注提供对输入请求的文本响应。为构建具有上述标注的数据集,我们综合采用人工标注、自动化流程和现有数据集,确保标注结果的高质量。

规划标注在请求生成阶段根据请求类型进行分配。尽管每条请求的文本在改写过程中有所改变,但核心意图与其种子请求保持一致。因此,同类型请求所需的子任务是统一的,我们识别这些子任务以准确分配规划标注。

感知标注流程包括分割和目标检测标注。RescueNet 数据集提供了 10 个类别的分割标注,包含四种不同的建筑物损毁等级,满足分割任务的需求。然而,原始数据集未提供目标检测标注。为解决这一问题,我们首先识别分割图中前景目标各连通分量的外接边界框,生成初步目标检测标注,然后对这些标注进行可视化检查,并手动调整不准确之处,为每张输入图像生成精确的目标检测标签。这一流程共生成了 14,483 个高质量的灾害场景前景目标标注。

对于识别标注,由于为每张图像和请求手动标注文本答案的成本较高,我们开发了一个半自动流程,从现有标签合成所需标注。对每种请求类型的自动化部分采用不同方法,详细说明如下:

目标存在性/损毁等级存在性:目标存在性请求要求识别场景中是否存在给定类别的目标,因此利用分割标签生成目标存在性请求的真值。若给定类别的分割图不为空,则答案为"是",否则为"否"。

目标计数/损毁等级计数:计数请求要求智能体给出场景中给定类别目标的确切数量。使用目标检测标签生成计数请求的识别真值。

面积计算:在面积计算任务中,智能体需要估计场景中指定类别的面积。为实现这一目标,结合使用分割标签和原始图像的地面采样距离(GSD),计算指定类别掩码对应的实际面积。

救援路径搜索:在救援路径搜索请求中,智能体需要判断给定点之间是否存在无障碍路线。起点和终点通过人工标注。为生成该任务的标签,利用通畅道路的分割标签,并执行 A* 寻路算法以判断目标点是否可达。

RescueADI 数据集的标注流程综合运用人工和自动化方法,确保标注的高质量和全面性。这种多步骤方法满足了规划、感知和识别标注的独特需求,从而支持 ADI 任务的多样化需求。


5 基于智能体的灾害解译

如图 6 所示,我们介绍了一种新型的基于智能体的 ADI 框架。该方法通过与一组专用工具的交互,覆盖了规划、感知和识别功能。智能体由三部分组成:规划模块、感知模块和识别模块,分别负责预测完成请求的最佳计划、提供支持计划的感知结果以及基于感知结果生成响应。与现有端到端 VQA 模型不同,自主智能体范式为智能体的每个部分采用独立的神经网络,训练过程中各部分之间不通过梯度流相连。这种设计能更高效地利用预训练大模型,并在决策过程中提供更高的透明度。此外,专用工具的使用增强了解决数值任务的能力,而这对传统端到端模型而言十分困难。

图 6. 所提出的基于智能体的 ADI 整体架构。

5.1 规划模块

为指示 LLM 输出可自动执行的有效计划,我们使用以下部分构建输入提示:

任务定义:要求规划智能体根据用户请求创建行动计划。

格式约束:展示 LLM 所需的 JSON 格式,使 LLM 的输出能被自动解析。期望格式为 JSON 对象数组,每个对象代表一个单独的动作。一个动作包含所用工具的 ID 以及工具的输入和输出。

工具描述:包含可用工具列表。对于每种工具,提供简短描述并给出工具输入和输出的数量和类型。

输入描述:输入图像的描述,包括其标识符和分辨率。

用户请求:请求拼接在提示末尾。

规划智能体使用 LLM 处理上述提示作为输入,生成格式化的 JSON------即要执行的动作列表。LLM 还为每个输入和输出分配唯一标识符,用作字典中存储中间结果的键,以供后续引用。

在实践中,LLM 并非总能生成格式正确的响应。我们设计了一种基于拒绝采样的方法来处理这一问题:提示 LLM 将所需的 JSON 放在响应末尾,然后使用逆向搜索算法查找有效的 JSON 结构。搜索范围从响应字符串的最后一个字符开始,若响应末尾的子串不是有效 JSON,则搜索范围的起始位置向前移动,直到到达响应开头。若搜索结束后仍未找到有效 JSON,则以更高的温度重新生成响应,直到找到有效 JSON 为止。

一旦生成有效的 JSON 格式行动计划,便检查计划中每个动作的有效性。若工具 ID 不存在或输入资源 ID 不可用,则该动作被视为无效。我们发现无效动作可分为两类:拼写错误和幻觉。当规划智能体尝试使用现有工具但因失误生成了错误的工具 ID 时,就会发生拼写错误;而幻觉则是指 LLM 虚构了一个不存在的工具。我们通过计算 LLM 生成的标识符与每个现有标识符之间的编辑距离来区分这两种情况:若最近的编辑距离小于 8,则将该标识符更正为最近的匹配;不满足此标准的动作被归类为幻觉并予以丢弃。

5.2 感知模块

感知模块提供视觉感知工具,弥合了 LLM 与灾害场景图像模态之间的差距。该模块提供两种视觉动作从输入图像中提取信息。检测工具以图像为输入,生成 JSON 格式的检测目标结构化表示;分割工具以图像为输入,输出场景中现有类别的掩码。

目标检测和语义分割是计算机视觉中研究较为成熟的任务。由于基于智能体的方法具有模块化结构,可以利用现有最先进的模型来实现这些工具。为实现目标检测工具,我们采用 GroundingDINO [51] 的模型结构,并在 RescueADI 数据集上训练模型,获得能够检测灾害场景中感兴趣细粒度类别的标准目标检测模型,然后将检测输出转换为结构化 JSON 以连接到智能体框架。每个检测到的目标由数组中的一个条目表示,条目包含描述目标类型和边界框坐标的属性。

为实现语义分割工具,我们使用 PSPNet 并在 RescueADI 数据集上进行训练。为将模型适配到智能体框架,我们在 RescueADI 上训练模型,并将输出转换为二值掩码字典,其中键表示类别,值表示对应类别的掩码。

5.3 识别模块

识别模块提供专用工具对感知结果进行识别,并利用基于 LLM 的智能体执行分析并生成最终结果。

在数值任务方面,由于基于词元的数字预测特性,LLM 容易出错。为解决这一问题,我们引入了计数工具,基于目标检测输出提供准确的计数结果。该工具接受检测结果和目标对象类型作为输入,返回该类型对象的确切数量。

对于分割等密集预测任务,语言模型难以直接利用分割掩码。因此,我们为智能体提供了分割面积工具,用于计算分割结果中给定类别所覆盖的总面积。该工具以分割图和目标类别名称作为输入,输出指定类别的总面积。

为解决路径搜索问题,我们将 A* 算法集成到智能体框架中作为可调用工具。该工具接受两个点和一个二值掩码作为输入,判断两点之间是否存在路径。通过调用路径搜索工具,智能体可以获得准确的结果,以判断救援人员是否能够到达特定目的地。

在识别感知结果之后,汇总智能体将这些工具的输出整合到最终答案中。汇总智能体的提示包含以下部分:

  • 任务定义:要求智能体根据用户请求提供最终答案。
  • 行动历史:详述已执行的动作序列及其结果。
  • 用户请求:用户提出的原始请求。

通过这些模块的协同配合,智能体能够利用专用工具为灾害响应任务生成准确、透明且可靠的输出。


6 实验

本节在 RescueADI 数据集上使用所提出的基于智能体的方法进行实验,以验证任务的有效性。我们还对现有方法进行实验,以展示新型任务形式的独特能力。

6.1 评估指标

ADI 上的方法性能从规划、感知和识别三个维度进行评估。我们使用有效率、召回率和精确率评估规划结果。规划智能体可能完全无法生成有效计划,因此将有效率定义为有效计划数量除以验证集中请求的总数:

VR=∣valid∣N(1)\text{VR} = \frac{|\text{valid}|}{N} \tag{1}VR=N∣valid∣(1)

其中 ∣valid∣|\text{valid}|∣valid∣ 为有效计划的数量,NNN 为请求的数量。对于有效计划,将计划视为二分类问题来定义精确率和召回率:

P=CACA+UA(2)P = \frac{CA}{CA + UA} \tag{2}P=CA+UACA(2)

R=CACA+MA(3)R = \frac{CA}{CA + MA} \tag{3}R=CA+MACA(3)

其中 CA 表示预测正确的动作数量,UA 表示预测的不必要动作数量,MA 表示缺失的(必要但未预测的)动作数量。

为评估感知和识别性能,按请求类型将请求分为两组。对于涉及视觉感知任务的请求,智能体输出目标检测或分割结果,使用平均交并比(mIoU)和平均精度均值(mAP)进行评估。

对于问答结果,采用两种不同指标进行更全面的评估。匹配率通过将真值与预测结果进行严格匹配来计算。对于需要数值答案的面积计算请求,匹配生成数字和真值;若差值小于一平方米或相对差值小于 2%,则认为答案正确。对于其他类型的请求,答案必须与真值完全匹配才被视为正确。然而,在自然语言上下文中,这种严格匹配规则可能会排除语义正确但形式不同的答案。因此,参照 HuggingGPT [53] 采用 GPTScore 为答案提供更灵活的判断。GPTScore 要求 LLM 根据真值判断答案的正确性,该指标考虑答案的语义并产生更接近人类判断的结果。

6.2 实验细节

6.2.1 大语言模型

我们的方法采用模块化框架,无需重新训练智能体的其他部分即可使用不同的 LLM 后端进行实验。在我们的实验中,使用闭源的 GPT-4o-mini 作为规划和汇总智能体的后端。在消融研究中,我们还实验了最先进的开源 LLM。使用 LLM 生成输出时,采用温度为 0.7 的贪婪解码策略。

表 2 ADI 与现有任务在 RescueADI 上的定性对比。

任务 模型 VR P R mIoU mAP₅₀ Exact GPTScore
语义分割 SAN - - - 0.6802 - - -
语义分割 PSPNet - - - 0.6828 - - -
目标检测 FasterRCNN - - - - 0.7640 - -
目标检测 GroundingDINO - - - - 0.8010 - -
VQA GeoChat - - - - - 0.2263 0.2975
VQA VisualGLM - - - - - 0.6535 0.6915
ADI 本文(PSPNet + GroundingDINO) 0.9960 0.9105 0.9728 0.6828 0.8010 0.7563 0.7896

表 3 按请求类型的答案准确率详细对比。表中 dmg 表示细粒度损毁等级识别准确率,obj 表示其他目标的准确率。

存在性-obj 存在性-dmg 计数-obj 计数-dmg 面积-obj 面积-dmg 路径 全部
GeoChat 0.4192 0.3265 0.0345 0.1453 0.2222 0.3000 0.4744 0.2975
VisualGLM 0.6527 0.6633 0.8103 0.7436 0.3333 0.3500 0.8462 0.6535
本文方法 0.8024 0.8367 0.8621 0.8462 0.7222 0.4333 0.8846 0.7896

问:图中有多少建筑物,各自的损毁等级是多少?

答:

  • 1 栋无损毁建筑物
  • 2 栋轻微受损建筑物
  • 0 栋严重受损建筑物
  • 0 栋完全毁坏建筑物

问:被完全摧毁的房屋的平均面积是多少?

答: 为计算被完全摧毁房屋的平均面积,将所有被毁建筑物的总面积(567.62 平方米)除以被毁建筑物数量(3 栋):

平均面积=被毁建筑物总面积被毁建筑物数量=567.62 m23≈189.21 m2\text{平均面积} = \frac{\text{被毁建筑物总面积}}{\text{被毁建筑物数量}} = \frac{567.62 \text{ m}^2}{3} \approx 189.21 \text{ m}^2平均面积=被毁建筑物数量被毁建筑物总面积=3567.62 m2≈189.21 m2

因此,被完全摧毁房屋的平均面积约为 189.21 平方米。

图 7. 所提方法在复杂请求上的规划、感知和识别结果可视化。(a) 复合请求。(b) 需要高级推理的请求。

6.2.2 感知模型

感知模型在四块 RTX 3090 显卡上训练。PSPNet 和 FasterRCNN 以预训练的 ResNet-50 [55] 骨干网络初始化,使用 SGD 优化器训练;SAN 和 GroundingDINO 以预训练的 ViT-B [56] 骨干网络初始化,使用 AdamW 优化器训练。

6.3 定量分析

我们在 RescueADI 数据集上评估所提方法。如表 2 所总结,我们从规划、感知和识别三个关键维度将基于智能体的方法与现有模型进行比较。值得注意的是,传统目标检测和语义分割方法仅产生感知结果,而 VQA 方法仅专注于产生识别结果。相比之下,我们的方法解决了所有三个维度,展示了其综合能力。

6.3.1 规划性能

规划是 ADI 中最重要的阶段,因为工具的正确使用对解译结果至关重要。在所有相关任务中,我们的框架是唯一产生显式规划输出的框架。规划阶段的质量使用有效率、精确率和召回率进行评估。高有效率表明所提智能体能产生可靠的规划格式,而非输出损坏的文本。

以 GPT-4o-mini 作为 LLM 后端,我们基于智能体的方法在超过 99% 的情况下能持续产生有效计划。规划精确率达到 90.51%,召回率达到 97.24%,展示了基于智能体框架的鲁棒性和有效性。

6.3.2 感知性能

由于我们的方法将最先进的感知模型作为工具库的一部分,最终答案的准确性与这些模型的性能密切相关。因此,我们在 RescueADI 数据集上对不同检测和分割模型进行实验,选择 PSPNet [57] 和 GroundingDINO [51] 作为最准确可靠的工具。

为评估感知性能,我们直接在原始分割和检测标签上计算指标以获得更全面的结果。在我们的框架中,感知模型由规划模块调度,感知输出直接输送到识别模型。因此,我们的方法继承了所用分割模型和检测模型的准确性,分割的 mIoU 达到 68.28%,目标检测的平均精度达到 80.10%。

6.3.3 识别性能

识别指标展示了基于智能体的方法相较于端到端 LLM VQA 方法的优势。通过将显式感知模型作为工具使用,智能体能产生更准确的答案,提供图像分割和目标检测等中间输出以增强决策过程。我们将基于智能体的方法与两种基准方法 VisualGLM [37] 和 GeoChat [40] 进行比较。由于 VisualGLM 主要针对自然场景而非遥感场景开发,我们使用 LoRA [58] 进行额外微调以使其符合 RescueADI 数据集的识别要求。我们的方法达到 73.74% 的精确匹配准确率和 80.90% 的 GPTScore,优于经微调的 VisualGLM 和 GeoChat。

为更好地理解基于智能体框架的优势,我们检查了每种请求类型的规划和识别准确率。如表 3 所示,端到端 VQA 模型在数值型请求(如计数和面积计算)上容易出错,因为它们不显式执行图像的基础感知任务。配备专用感知模块后,我们基于智能体的方法在数值答案上表现出强劲的准确率。我们的方法自动确定要使用的感知模型,然后选择专用工具准确执行计数和面积计算任务。对于救援路径搜索请求,优势更为明显,因为该任务对专用工具而言容易解决,但对端到端神经网络而言难以建模。

6.4 消融研究

LLM 后端:所提基于智能体的框架设计上兼容不同 LLM 后端,只要 LLM 能够遵循输入指令即可。为更好地理解不同 LLM 后端的影响,我们对多种最先进的指令遵循 LLM 进行实验:GPT-4o-mini、DeepSeek 7B、Qwen1.5 7B、Qwen2.5 7B 和 Llama 3.1 8B。这些 LLM 被嵌入框架,作为规划智能体和汇总智能体的文本生成器。表 4 的结果显示,LLM 后端的能力与智能体的规划质量高度相关,进而影响后续的感知和识别。闭源 LLM GPT-4o-mini 表现最佳,而最适合该任务的开源 LLM 是 Qwen2.5 7B。Qwen2.5 7B 的规划精确率略高于 GPT-4o-mini,但召回率明显偏低,导致总体准确率有所下降。因此,我们得出结论:强大的 LLM 后端在所提基于智能体的框架中至关重要。

表 4 LLM 后端消融研究。

模型 VR P R Exact GPTScore
本文(GPT-4o-mini) 0.9960 0.9105 0.9728 0.7563 0.7848
本文(DeepSeek 7B) 0.2615 0.5781 0.6667 0.0728 0.1297
本文(Qwen1.5 7B) 0.6603 0.7932 0.8558 0.3006 0.3861
本文(Qwen2.5 7B) 0.9890 0.9573 0.6586 0.5411 0.6867
本文(Llama3.1 8B) 0.8537 0.6629 0.9554 0.5269 0.4937

专用工具:在所提方法中,我们在识别模块中使用专用工具来辅助分析感知结果,这些工具涵盖计数、面积计算和路径搜索。为研究这些工具的贡献,我们进行了去除专用工具的对比实验,如表 5 所示。去除专用工具后,识别准确率显著下降------精确匹配分数和 GPTScore 均下降超过 15%,表明专用工具在 ADI 中发挥了重要作用。

表 5 专用工具消融研究。

模型 VR P R Exact GPTScore
本文(含专用工具) 0.9960 0.9105 0.9728 0.7563 0.7848
本文(不含专用工具) 0.9990 0.8556 0.9448 0.5332 0.6092

性能边界:得益于预训练 LLM 的支持,所提基于智能体的方法能够泛化到更复杂的请求上。如图 7(a) 所示,智能体可以处理需要感知多个类别的复合问题------请求要求统计不同损毁等级的建筑物数量,规划智能体成功给出了合理的计划,使用计数工具处理每种损毁等级。图 7(b) 展示了一个需要高级推理的请求,智能体同时执行分割和检测,获取被毁建筑物的总面积和数量,并利用这些数字计算出正确答案。


7 结论

本文提出了一种新型的自适应灾害解译任务,以解决当前灾害解译流程中需要额外人工干预、准确性不足的问题。在此基础上,我们构建了 RescueADI 数据集------首个用于 ADI 的数据集,集成了灾害场景的规划、感知和识别,作为稳健的基准。我们提出了首个配备专用工具的基于自主智能体的方法,以解决具有挑战性的灾害解译任务。实验结果证明了基于智能体框架在 ADI 任务上的有效性,与现有 VQA 方法相比准确率提升超过 9%。然而,实验也表明 LLM 后端的能力对整体结果至关重要。我们未来的工作将致力于提高整体框架的鲁棒性,并进一步扩充数据集的多样性。

相关推荐
fof9202 小时前
Base LLM | 从 NLP 到 LLM 的算法全栈教程 第六天
人工智能·自然语言处理
Godspeed Zhao2 小时前
科技信息最前沿——TurboQuant:以极致压缩重新定义人工智能效率
人工智能·科技
AI医影跨模态组学2 小时前
Radiology子刊(IF=6.3)复旦大学附属金山医院强金伟教授等团队:基于多参数MRI的深度学习和影像组学评估早期宫颈癌淋巴结转移
人工智能·深度学习·论文·医学·医学影像
Ln5x9qZC22 小时前
Laravel AI SDK 正式发布
android·人工智能·laravel
nimadan122 小时前
生成剧本杀软件2025推荐,创新剧情设计工具引领潮流
人工智能·python
嵌入式小企鹅2 小时前
阿里编程模型赶超、半导体涨价蔓延、RISC-V新品密集上线
人工智能·学习·ai·程序员·risc-v·芯片
Benjamin Liang2 小时前
无数据/零样本量化3——Zero-shot Adversarial Quantization
人工智能·机器学习
MediaTea2 小时前
Pandas 操作指南(二):数据选取与条件筛选
人工智能·python·机器学习·数据挖掘·pandas
萤萤七悬2 小时前
【人工智能训练师3级】考试准备(2026)四、简答题 1.2.1-1.2.5
人工智能