验证
概述
验证(檢證,verification)是以客观依据确认某一主张、系统或产物实际上是否满足事先约定的标准或规范的核查程序。科学实验、软件测试、新闻事实核查、法庭证据审查,虽然对象与手段不同,却共享同一结构:缩小主张与事实之间差距的工作。验证的可信度往往并非取决于结论本身,而是由程序的透明度、可复现性与可证伪性决定。
主要内容
验证与确认的区分
软件工程区分验证(verification)与确认(validation)。验证追问的是“我们是否在正确地构建产品”,确认追问的是“我们是否在构建正确的产品”。换言之,验证检查与规范的一致性,确认检查对用户需求的适用性。这一区分在制造业质量管理、医疗器械审批、合规审查中几乎同样适用。
科学验证
科学验证的核心是可证伪性与可复现性。卡尔·波普尔认为,不可能被证伪的主张不能成为科学验证的对象。在现代科学中,预注册、样本量估算、多重比较校正、独立复现、同行评审已成为标准程序。相反,p值操纵(p-hacking)、选择性报告、发表偏倚被视为损害验证可信度的典型失败类型。
软件验证
软件验证分为静态验证与动态验证。静态验证包括代码审查、静态分析、类型检查、形式验证(模型检测、定理证明)等,无需运行即可发现缺陷。动态验证则通过单元测试、集成测试、验收测试、模糊测试、负载测试等实际执行来确认行为。在实践中,通常组合使用测试金字塔、代码覆盖率、变异测试(mutation testing)与CI/CD流水线门禁来抑制回归。安全关键系统(航空、铁路、医疗)须依据DO-178C、IEC 61508等标准,以文档形式留存验证产物与可追溯性(traceability)。
数据与AI验证
在机器学习中,训练数据与评估数据的分离是基本原则,并通过交叉验证与留出验证(holdout)来估计泛化性能。近来,随着“仅凭基准分数难以代表真实性能”的问题意识增强,业界同时要求进行基准数据污染(benchmark contamination)检查、分布偏移(shift)验证、偏见与有害性评估、红队测试以及模型卡公开。对生成式AI而言,事实性(幻觉)验证与出处引用验证已成为独立的评估项目。
社会验证
新闻事实核查、学术期刊同行评审、法庭证据能力审查、会计审计、公共机构的政策评估,都是社会制度层面的验证装置。它们与技术性验证的区别在于,程序正当性与利益冲突管理决定结果的可信度。
最新动向
2024—2025年的变化大致可分为四个方面。第一,监管正在将验证义务化。欧盟《人工智能法案》(EU AI Act)要求高风险AI进行符合性评估、风险管理、技术文档化与事后监测,各国也在建立AI验证与认证体系。第二,形式验证正在向产业现场扩散。像TLA+、Coq/Lean、Rust的类型系统以及seL4案例那样,基于数学证明的验证正被应用于内核、分布式系统与智能合约。第三,供应链安全验证变得重要。软件物料清单(SBOM)、可复现构建、签名与来源证明(attestation)已成为标准做法,SLSA等框架得到推广。第四,AI既是验证的主体也是验证的对象。基于大语言模型(LLM)的评估与验证智能体被用于测试生成和代码审查,同时深度伪造与合成内容检测、来源标注(C2PA)成为事实核查的新课题。与此同时,应对基准饱和与可复现性危机、确保开放评估数据集的透明度,正作为学界与产业界的共同议题被讨论。
相关主题
- [[测试]]
- [[事实核查]]
- [[形式验证]]
- [[可复现性]]
- [[人工智能]]