
卫星显示一座货运站被水淹没。那其实是一片云影,而参数化触发器差一点就自动赔付了 120 万美元。
一颗卫星观测了 Mesa Junction 货运站,在原本应为干燥地面的地方看到了一片暗斑,并将该地点标记为被淹。一份参数化洪水保单将该触发信号视为事实,并准备自动触发一笔 120 万美元的赔付,无需查勘员、无需电话确认、无需二次复核。那片暗斑其实是一片云影。六天后的卫星影像中它已不复存在,而其下方的地面从未湿润过。
我特意构建了这个具体案例,因为这是单张卫星影像帧永远无法捕获的情况。我是 Ashutosh,我运营 Veriprajna。TriggerProof 是我为了证明一个具体论点而构建的演示系统:参数化洪水保险中最危险的时刻不是检测,而是赔付决策。其中的每个地点、瓦片、河流测站和现场报告都是我编写的、符合物理真实性的合成替代数据,以便我能够清晰地展现失效模式。你可以打开它并亲自体验全过程,地址在 veriprajna.com/zh-Hans/demos/satellite-flood-intelligence。Mesa Junction 货运站是我想开始讲的地方,因为正是这个案例让我明白自己真正在构建什么。
四种不同的现象会让相同的像素变暗
直到我坐下来生成合成影像、必须让四种现象在单帧画面上看起来一模一样时,我才真正认识到问题的所在。参数化洪水保险用触发器取代了查勘定损员:卫星显示某个地点被水淹没,资金随即划拨。麻烦在于,在单张光学影像或单次雷达扫描中,真实的洪水、云影、雷达或地形阴影以及永久水库都会以同样的方式变暗。单张影像帧无法将它们区分开来,因为区分它们所需的信息并不存在于单张帧中。
这为我重新框定了整个演示。在这个行业里,灾难性的错误并不是触发器漏掉的洪水。而是触发器凭空捏造的洪水——在阴影上自信地自动赔付 200 万美元,而且一年后当再保险人过问这笔赔付时,没有任何证据链来为该决定辩护。TriggerProof 并不检测洪水,也不产生卫星数据。它接收一个已经触发的信号,并裁决是否真的应该赔付。
前一帧显示洪水,后一帧显示地面从未湿润
我依然记得 Mesa Junction 胶片条首次正确渲染时逐帧查看的情景。界面允许你打开一个被标记的地点,并逐帧查看采集影像,上方是光学影像,下方是雷达影像。在触发帧中,那片暗斑赫然在目,呈现为水体信号绿,正是它拉响了警报。切换到下一次采集,它就消失了。返回查看,同一暗斑下方的雷达后向散射在每一帧中都显示正常,因为雷达全程直接穿透云层看到了干燥的地面。

阴影移动了;而水体本应留存。你只有跨越时间并结合多传感器才能看清这一点,而在触发报警的单张影像帧上绝无可能看到。
一旦把这些影像帧并排放置,其物理原理并不深奥。云影是瞬态的,且以云速移动,因此在一次成像中呈暗色,而在下一次成像中就消失了。真正的洪水会在多次成像中持续存在,并在光学影像上呈暗色,同时在雷达影像上呈低后向散射。 两条规则恰恰对此进行了编码:时域持续性与雷达-光学一致性。在 Mesa Junction 案例中,这两项规则的结果都是 FAIL(未通过),分类器以 1.00 的置信度判定为云影。那笔 120 万美元的赔付根本就不应该进入队列。
由五条规则做出决策,而非语言模型
早期我曾尝试让语言模型来进行这项判断,我很庆幸自己做过这个尝试,因为它以最具启发性的方式失败了。我让一个智能体阅读同样的证据,实际上是询问它该地点是否真的发生了洪水。在一个模棱两可的案例中,它写了一段流畅且自信的段落论证发生了洪水,但它是错的,而且它的语气中没有任何迹象表明自己判断有误。那天下午促成了一项设计决策,自那以后我再未动摇过。
因此,决策直接存在于纯 Python 中,由五个可审查的判别器做出,在调拨资金的路径上的任何地方都没有模型。时域持续性(R1)将洪水与瞬态云影区分开来。雷达-光学一致性(R2)将洪水与云影及雷达阴影区分开来。DEM 坡度(R3)排除了必须在陡峭地形上积水的情况。永久水体掩膜(R4)排除了已知水库。水文连通性(R5)检查湿润区域是否真正连接到排水管网。验证器负责决策;语言模型仅提供建议。 顾问智能体基于 Pydantic AI 构建,模型可替换,默认使用 claude-opus-4-8,它对照独立的地面信号核验物理裁决结果,并返回证实(corroborates)、矛盾(contradicts)或不确定(inconclusive)。它可以被否决,当我拔掉 API 密钥时,演示完全可以在确定性回退方案上离线运行,因为我托付赔付决定的部分,绝不能是那个操着自信段落说话的部分。
当物理证据本身不确定时,系统会上报人工而非盲目猜测
相比于任何干脆利落的正确捕获,我更看重系统说「我不知道」的案例。Canal Street Hub 就是这样一个案例。光学和雷达特征处于临界状态,洪水信号在三帧中的两帧持续存在,而独立的河流测站从未超过漫滩水位。证据确实存在冲突。返回的置信度为 0.151,远低于我在标注集上拟定的 0.65 自动化门槛,并且地面智能体直接反驳了卫星分类结果。

保单门控将那笔 80 万美元的案例连同所有证据一并发送给人工,并标记为「需要证明」,而不是抛硬币式决策还美其名曰自动化。一个将真正模棱两可的案例上报人工的洪水触发器,在某些买家看来是较弱的产品。我的看法恰恰相反。这是我唯一敢让其无人值守运行的版本,因为在这里,上报人工的替代方案就是在真金白银上进行快速猜测,并将其伪装成一项决策。
我反复提及的投资组合数据
我不断调出包含八个地点的资产组合账目,因为它以任何单一案例都无法比拟的方式将风险具象化。一场风暴席卷了由八个区域组成的资产组合。传统的单帧触发器在其中六个区域被触发,并将 800 万美元的自动赔付排入队列。TriggerProof 对该账目进行了裁决:确认两次真实洪水并在两笔中赔付 400 万美元,抑制了三个假阳性(云影 120 万美元、雷达阴影 100 万美元、永久水库 100 万美元)从而扣留了 320 万美元,并将一个模棱两可的案例上报人工(涉案 80 万美元)。

传统触发器原本会赔付的金额中有一半(800 万美元中的 400 万美元)要么被阻止,要么被留存等待证明。 这就是那个数字,我想准确界定其范围:这是演示的合成投资组合,是我为了符合物理真实性而构建的八个案例,而不是真实的理赔账目。该机制是真实且可审查的。理赔案例经过编排,以便你可以观察该机制的运作。
零次不安全决策,以及我绝不隐瞒的前提声明
我运行了一个严谨的基准测试,因为八个案例的组合只是一个故事,而不是证据。测试套件对 60 个已标注案例进行了评分,覆盖了从清晰特征到接近阈值的噪声。头条结果不是准确率分数,而是安全计数:零次不安全自动决策,而单帧基线为 48 次——后者会对每个标记的案例进行赔付。80% 的案例自动裁决,不确定的 20% 上报人工。在自动裁决的案例中,假阳性抑制率为 36/36,洪水召回率为 12/12,并且所有 12 个真正模棱两可的案例全部上报人工,而不是被自动裁决。

重点从来不是在我自己的测试集上获得满分。重点在于系统绝不会做出不安全的自动决策。当它不确定时,就会上报人工。
每一个数据都伴随着这项前提声明,我绝不容许将其剥离。它们是在包含 60 个符合物理规律的合成标注案例的固定数据集上测得的,不是开放世界的保证,也不是实地运行结果。坦诚的下一步不是做出更大的宣称,而是针对 Sen1Floods11 等真实存档数据以及 Sentinel 实时场景进行验证,这正是实际合作项目首先要交付的内容,而不是本演示已经完成的工作。把这一点坦白说清楚,才能让我底气十足地支持其余的数据。
事后无法辩护的赔付就是一项负债,即便当时它是正确的
起初我并未打算将证据链作为核心,但最终它成了我最确信保险公司能够真正赖以立足的部分。一笔事后无法复现重建的正确赔付依然是一项负债,因为「卫星是这么说的」并不是再保险人或审计员能够接受的抗辩理由。因此,每一项决策——无论是赔付还是抑制——都会生成一份取证卷宗:每一帧的数据血缘、包含每个判别器测量值的逐条规则证据、假阳性排除日志、独立的地面交叉核验记录,以及决策的 SHA-256 出处哈希。

我想严谨地说明该哈希是什么以及不是什么。它是一个内容哈希,使记录具备防篡改性,因此任何人都可以重新计算它并检查该决策事后未被篡改。它不是 PKI 数字签名,并且在本演示中,卫星数据检索、SAR 任务调度、地面数据源以及理赔平台集成均使用了桩实现(stubbed),经过模拟以便整个系统能在我的笔记本电脑上运行。真实存在的是记录的形式:对于每一项自动赔付决策,具体是哪条物理规则表达了什么、置信度是多少、对照了什么独立信号进行了核验。
参数化保险做出了真正的权衡,放弃了查勘定损员以实现即时且无争议的赔付。但它继承了一个在单张影像帧上无法看透的物理难题,而这种权衡让你面临的失效风险,是对着阴影进行快速、自信的赔付。持久的解决方案存在于模型之外:跨时域和跨传感器的确定性规则来区分这些相似物、将模棱两可的案例上报给人工的门控,以及使每项决策都可辩护的记录。更清晰的卫星解决不了裁决问题,而这正是一个裁决问题。
如果你更愿意亲眼观看而不是读我的文字描述,这里是整个系统端到端运行的过程。
Mesa Junction 是我不断回想的案例。只有第二次采集才知道阴影与洪水之间的区别,而触发器在第二次采集到达之前就已经触发了。你可以亲自单步浏览该胶片条,并探究你认为本应触发的赔付为何被阻断,地址在 veriprajna.com/zh-Hans/demos/satellite-flood-intelligence。我想向任何经营自动洪水理赔账目的人提出一个明确且可回答的问题:在上一季度你自动赔付的触发器中,有多少个你仍能证明那是水体而非阴影?


