内镜AI的边界在哪里:从一个检测框,到完整的视频系统
屏幕上多了一个检测框,演示视频便显得聪明了很多。但对研发而言,真正的问题还没开始:这个框对应哪一帧,出现多久才有意义,反光会不会反复触发,模型没有响应时用户是否知道,以及更换处理器或图像模式后它还能不能工作。
这篇文章讨论的是内窥镜图像相关AI的产品化边界。文中示意数据与情景用于解释评价方法,不是患者诊断建议,不宣称任何自建模型具备临床使用能力。
先把三种能力分开
辅助检测通常提示可能需要关注的区域;辅助分类或诊断承担不同的信息解释;图像增强则改变可见信息的呈现方式。三者输入输出可能相似,风险与证据并不相同。一个框能指出某区域,不等于能够判断病理性质,更不等于可以决定处理方案。
自主功能还需要单独界定。算法帮助观察与算法独立作出临床决策,不能只靠修改一行界面文字区分。预期使用者、使用环境、输入条件、输出用途、是否需要人工复核和失败后响应,都应在产品定义中清楚。功能命名不能掩盖实际承担的责任。
FDA 的GI Genius公开De Novo记录提供了一个已有辅助检测器械的监管实例。它可说明此类产品存在明确的适用范围与审查对象,但不能把一个产品的许可扩展为所有内镜AI、所有模式或所有部位的通用认可。文章不借其个案数据为新模型背书。FDA 公开记录
立项时可以先写一段“模型合同”:接收什么来源、什么模式的图像;输出什么结果;不支持哪些场景;什么时候不输出;结果由谁解释。这个合同同时约束数据、训练、接口、验证和用户说明。没有边界的“提升诊断准确率”,几乎无法转成可完成的开发任务。
图1:原创算法边界地图。检测、解释、显示与人的决定分层表达,示意框不是真实临床结果。
数据多,不等于信息独立
视频连续帧之间高度相似。把同一次检查的相邻帧随机分到训练与测试,可能让测试看起来很好,却不能说明对新患者、新设备或新机构的能力。数据拆分应按研究目的采用患者、检查、机构或设备等适当层级,并避免同源信息泄漏。
标注也不是一个固定真值按钮。目标边界、短暂可见、遮挡、模糊和负样本判定可能存在分歧。需要说明标注者资质、规则、复核与分歧处理,保留必要版本。把疑难样本全部丢掉,会使任务比真实输入容易;把所有分歧强行平均,也可能掩盖本来就不确定的情况。
数据代表性需要围绕声明范围展开。设备型号、图像模式、采集流程、显示裁切、压缩、不同机构与用户等因素都可能改变输入。不能只列出图片总数和类别比例,就认为覆盖已经充分。需要识别哪些变化与任务表现相关,并安排适当独立验证。
负样本尤其重要。反光、气泡、褶皱、器械、文字叠加和画面边缘都可能触发提示。模型如果只在精选目标图上评价,无法说明持续视频中的误报负担。数据管理应保留合适的连续背景与困难情况,同时遵循授权、伦理、隐私和安全要求,不能为了数量无目的收集敏感信息。
每帧准确率很高,为什么仍然不好用
视频任务中的错误与时间有关。短暂闪框、持续误报、同一目标多次重复提示和出现太晚,影响不同。仅报告逐帧指标可能被大量相似背景帧或长时间目标帧支配。应结合预期用途定义事件、目标、检查等层级的评价,并说明单位与分母。
例如“每分钟误报次数”和“误报持续时间”回答不同问题。一次误报如果持续很久,次数很少也可能打扰使用;很多极短闪框可能形成另一种负担。检测灵敏度、首次提示时间、持续性与可用性可以共同评价,但不能随意合成一个没有解释的总分。
阈值应在适当开发阶段确定,再用独立数据评价。反复查看测试集并调整阈值,会让测试逐渐变成开发数据。若需要更新模型,应记录数据、训练、参数与评价版本,并重新安排能够支持主张的验证。不能只展示新版本在旧失败样本上的改善。
统计解释还应考虑聚类。同一患者、同一检查中的样本并非完全独立,简单把帧数当作独立样本数,可能产生过窄的不确定区间。具体分析需要与研究设计匹配。文章不提供一套适用于所有模型的样本量和评价阈值。
检测框属于某一帧,而不是永远属于屏幕
模型接收输入后需要一定时间推理,结果回来时显示可能已经更新。必须管理采集帧身份、缩放裁切、畸变校正和叠加坐标的对应。若输入区域与显示区域不一致,框可能被放错位置;若结果过期,坐标即使正确也可能不再对应当前内容。
可以设计结果有效期和匹配规则,但规则必须基于任务、时序与风险,而不是随意给出一个毫秒数。输入中断、模式切换、视频重连或分辨率改变时,应清理或失效相应结果。不能因为模型线程没有退出,就让最后一次框长期停留。
显示还要避免过度遮挡与错误暗示。提示的颜色、尺寸、动画与声音可能影响注意力,结果置信度也不一定是可直接解释的临床概率。是否显示数字、怎样表达不确定性、何时提示算法不可用,需要可用性研究。一个漂亮的演示界面不代表使用者能正确理解。
AI故障不应无声改变基础观察链。如果推理资源不足,系统需要按设计管理负载、降级与提示,并保持对基础功能影响可控。反之,基础输入已经异常时,算法也不能继续用旧数据输出看似正常的结论。两个模块之间需要明确状态契约。
图2:原创帧与推理结果配对时序。示意过期结果失效,具体策略应由产品需求与验证确定。
从训练环境搬到嵌入式平台,会改变什么
模型转换、算子实现、浮点精度、量化、输入预处理和后处理都可能改变输出。部署验证应比较代表性输入与边界情况,而不是只确认文件能够加载。若使用量化,还应分析误差对不同目标和场景的影响,不能只看平均速度提升。
ONNX Runtime 通过Execution Providers对接不同执行后端。模型可能按支持情况分配到不同子图和设备,实际行为需要根据版本、后端与配置确认。因此,指定了GPU并不等于所有运算都在GPU上,也不自动保证固定延迟。应记录实际提供程序、回退、同步与资源情况。官方执行后端说明
输入预处理需要与训练一致:颜色顺序、范围、缩放、填充、归一化与几何变换都应明确。后处理的阈值、去重与坐标还原也属于算法产品的一部分。模型权重没变,预处理改了,表现仍可能改变。发布身份应覆盖完整管线,而不是只记录模型文件名。
性能研究应在整机功能组合下进行。单独推理很快,打开录像、增强与外部显示后可能出现竞争。还要研究长时间运行、热状态和资源异常。应把尾部延迟、输入年龄与结果可用状态纳入观察,不只报告模型基准测试中的平均每秒帧数。
增强图像的AI,也需要说明“没有增加什么”
学习型去噪、超分辨或增强可能改善视觉效果,也可能改变纹理、边界和时间连续性。研发不能把视觉锐利直接写成真实分辨能力提高。应在适当对照与任务条件下研究信息保留、伪影和失败情形,明确输出的用途。
如果增强被用于持续观察,应特别关注运动、低信号、器械、高反光和模式切换。不同输入域可能导致非预期结果。是否保留可比较的基础图像、怎样提示模式、异常时如何处理,都需要设计与验证。不能只选几张最明显改善的图作为全部证据。
对生成式方法,更应避免把“合理外观”误当作真实组织结构。模型输出符合常见纹理,并不保证对应输入中的实际信息。是否可以使用、用于什么功能与怎样评价,需要严格围绕预期用途和风险。本文不提供临床部署建议,也不声称这类方法普遍适合或普遍不适合所有内镜场景。
给连续视频设计一张结果卡
结果卡可以从声明范围开始:设备、图像模式、部位、使用条件与输入限制。随后分别报告数据来源、独立拆分、标注、算法版本、评价单位和不确定性。模型分数只占其中一部分,覆盖缺口与失败类型同样应被看见。
对于提示型功能,卡片可以区分目标被识别、首次提示、持续提示、短暂闪烁与误报负担。若某类目标在清晰静止时表现好、快速运动时下降,应解释条件,而不是只给汇总均值。这里没有统一最优指标组合,选择应与实际用途一致。
还要报告算法不可用与拒绝情况。输入质量不足、模式不支持、资源故障和结果超时都可能导致无结果。若这些片段被全部排除,剩下的准确率可能很高,却不能说明完整视频的可用帮助。应明确排除规则与覆盖率,并分析拒绝是否集中在某类困难场景。
两个很像的指标,可能讲述不同故事
设想一段仅作方法说明的视频中,算法对同一处背景反复闪框十次。按连续时间事件合并,可能计为一个事件;按每次出现计数,则是十次。两种口径不是简单谁对谁错,需要预先定义并说明与任务负担的关系,避免为了好看而事后改事件规则。
同样,逐帧灵敏度可能被目标出现很久的片段主导,逐目标评价则关注每个目标是否获得足够提示。首次提示时间需要明确从何时开始计时,遮挡与重新出现如何处理。评价方案越清楚,结果越容易被独立复核,也越不容易被演示视频误导。
训练之前先做一次泄漏审查
检查患者与检查身份、视频来源、截帧规则、数据增强副本、重复文件和机构关系。文件名不相同不代表内容独立,同一视频重新编码也可能躲过简单哈希检查。可以结合来源管理与适当相似性检查,但自动工具不能完全替代数据谱系。
外部验证集也应说明为什么外部。来自另一文件夹不是外部,来自同一来源的另一时间段也只覆盖部分变化。研究目的是新机构、新设备还是新用户,应分别选择。若数据无法支持声明范围,就缩小主张或补研究,不要仅通过更换“泛化”一词掩盖不足。
算法版本更新的一次桌面演练
假设新模型减少某种反光误报,却在低信号场景降低灵敏度。先比较完整评价集与相关亚组,再分析变化与数据、阈值或预处理的关系。不能只展示新模型修好了旧例子。是否接受取舍应回到用途、风险与人机任务,必要时补充相应研究。
若仅更换推理后端,也应比较输出与时序。数值近似、算子支持和回退可能改变结果,长时间资源行为也可能不同。对最终部署硬件进行验证,保留环境与版本,才知道变化发生在哪里。训练机上的测试结果不能直接覆盖所有边缘设备。
回退计划也不等于随时恢复旧模型。旧版是否仍兼容当前主机与配置,现场是否保留正确文件,状态和日志怎样标识,都需要考虑。更新包校验、权限与安装失败处理属于产品工程责任,不只是算法人员的附加工作。
可解释性应该服务什么问题
热图、注意力图或高亮区域可以帮助研究,但不能自动证明模型使用了正确的临床依据。解释输出需要与真实功能和用户理解相匹配,避免让一张颜色漂亮的图带来额外信任。对使用者而言,知道支持范围、何时不可用、提示是什么意思,可能比展示复杂内部可视化更有价值。
对研发而言,可以系统整理失败样本:哪些是输入质量问题,哪些是分布变化,哪些是标注分歧,哪些是模型本身的限制。分类应有证据,并允许多因素。把所有错误归为“数据不够”通常无法指导下一步,补什么数据、怎样改变评价才是具体问题。
不要让算法宣传超过证据层级
离线检测指标、模型任务研究、人机组合研究和真实临床结果属于不同证据。一个层级改善,不自动推出下一个层级的收益。文章与产品材料应使用与证据一致的措辞,明确比较、条件与限制。真实功能即使范围较窄,也比宽泛而无支持的承诺更有价值。
AI产品化的困难并不只在模型精度,而在让数据、实时系统、用户与更新过程始终围绕同一项明确能力。把这些基础做好,才有条件讨论进一步扩展。
数据质量问题如何影响模型结论
视频可能包含模糊、过曝、遮挡、压缩与模式变化,应决定哪些属于支持范围内的困难输入,哪些确实不支持。前者应进入评价,后者需要可靠识别或明确限制。不能在结果不好时才把困难输入重新定义为范围外,否则声明范围就失去稳定性。
标注也应保持时间一致。目标在连续帧中时隐时现,规则需要说明可见性、遮挡与事件边界。不同标注者对一段视频的理解可能比对单张图差异更大,需适当复核。保存分歧有时比强行得到一致标签更有助于理解任务不确定性。
看见一个框后,使用者做了什么
可用性研究应观察注意转移、确认与忽略,而不只问是否喜欢提示。错误提示可能增加负担,无提示也可能使人误以为没有目标。需要用与用途匹配的方法研究人机协作,明确算法的帮助和限制如何被理解,避免让模型分数替代任务结果。
现场监测不能变成未经授权的持续学习
收集问题样本、分析分布与更新模型是不同活动。实际数据需要授权、安全与适当治理,模型更新还需验证和相应法规判断。不能默认产品连接网络后就可以自动把患者图像用于训练,也不能把持续学习当作绕过发布管理的理由。
现场发现新失败类型,可以先形成受控问题单,分析输入、版本和配置,再决定是否补充数据与研究。保持当前模型身份稳定,有助于理解事件;若模型不断无记录变化,后续就很难解释某次输出究竟来自什么能力。
一项克制的AI主张可能更有价值
清楚限定某设备、模式与任务,在独立条件下展示可复核结果,并如实说明失败与不可用,比用一个很高的总准确率宣称无所不能更有参考价值。算法研发的深度,体现在能否解释边界与维护责任,而不是检测框画得多显眼。
人与算法共同工作,评价对象也应该包括两者
一个模型离线表现良好,使用者可能因为提示过多而忽略,也可能过度信任并减少自主观察。需要研究提示被看见、理解与响应的过程,以及错误提示和无提示时的行为。人工复核不是写在说明里的免责句子,而是一项需要被支持的任务。
研究设计应明确比较的是算法独立性能,还是人机组合对任务的影响。两者可以互补,不能互相替代。经验差异、学习、顺序与观察时间可能影响结果,应在设计中考虑。不能用一组非临床模型测试直接推导并发症、长期预后或所有用户的诊断收益。
对使用者解释限制也很重要。支持的设备、模式、输入质量与场景之外,算法可能不提供可靠帮助。拒绝输出或提示不可用可以是合理设计,但要评价其发生频率与后果,避免通过拒绝困难输入让指标表面变好。覆盖率、失败模式和任务影响应一起报告。
更新不是把新权重覆盖旧文件
更新应管理主张、数据、模型、预处理、后端、界面和受支持配置的变化。根据影响安排验证、确认和法规判断,明确版本兼容、回退、安装校验与日志。现场出现表现变化时,需要能定位到底是哪一个组件版本。
FDA关于AI器械全生命周期的2025年文件,截至本次检索的官方页面仍标记为草案,不能写成已经生效的强制规则。它可作为研究视角参考,具体市场还需独立确定适用要求。国内相关文件可以从官方软件指导原则汇总入口定位。FDA 草案状态;国内官方文件入口
一个检测框看似只是几条线,背后却连接着数据、实时性、人机交互与更新责任。把这些边界写清楚,模型才有机会从演示能力变成可评价的产品功能。
学不可以已。——荀子《劝学》