楼层定位怎么验收:一份能被审计的判层测试方法
引子:99.2% 的准确率,抽检时露了底
一次验收会,乙方报“楼层准确率 99.2%”。甲方没急着签字,现场随机抽了 30 条历史记录逐条核对:其中 11 条是“在同一层内走动”被记为正确,真正跨层的样本只有 4 条,另外 15 条因各种原因无法确认。
重新按跨层样本单独统计,准确率是 78%。两个数字都没造假,只是分母不同。
这类分歧在楼层定位项目里非常普遍,原因不复杂:判层是一个离散状态判断,它的准确率高度依赖测试集怎么构造。层内样本天然容易对,跨层样本天然容易错,两者的比例决定最终数字。这篇文章讲怎么把这件事做成可审计的。
一、问题定义:三个口径陷阱
陷阱一:分层加权。层内样本与跨层样本的比例决定结果。一栋楼里,人绝大多数时间在同一层活动,随机抽样自然以层内样本为主。用这个比例算出 99%,再拿去做跨层派单,落差必然出现。正确做法是分场景分别报:层内准确率、相邻跨层准确率、多层跨层准确率,各给各自的样本数与结果。
陷阱二:判定时刻的定义。以“人真正跨过层边界那一刻”为基准,还是以“系统输出稳定下来的那一刻”为基准?两者差一个驻留时间。用前者算,任何带滞回的系统都会显得迟钝;用后者算,又掩盖了真实时延。这对指标必须一起报:首次判对时延与稳定判对时延。
陷阱三:分母是时间还是事件。按时间加权,长停留会主导结果(一个人在会议室坐两小时,正确率被这一段拉高);按事件加权,跨层次数少的样本权重会被放大。要报清楚用哪一种,最好两种都报。
二、技术原理:像电梯年检那样设计测试
电梯年检不是“坐一趟看看有没有异响”,而是按规程跑固定工况:空载、满载、限速、制动距离,逐项记录。判层验收也应该这样——固定路线、固定停留、固定点位,才能在不同轮次之间比较。
测试集怎么构造。一条覆盖性路线,必须包含:楼梯上行与下行、电梯(短行程与长行程各若干次)、自动扶梯、连廊(如果有多塔)、坡道(如果有地下层)、每层的典型点位(核心区、边界区、电梯厅、楼梯口)。每条路线重复多次,且在不同时段测(早晚人流差异会影响信号)。
真值从哪来。人工标注是最可靠的方式:一个人走、另一个人按秒打点,或用视频回放同步标注。事后凭记忆补录真值的做法很常见,但它引入的时间误差足以让跨层时延这项指标失真。
指标族怎么定。建议至少四项:跨层检出率(该跨层时是否跨了)、误翻转次数/小时(不该翻时翻了几次)、首次判对时延(从真实跨层到系统首次输出正确层号的秒数)、置信度校准(系统报 90% 置信时,实际正确率是否接近 90%)。

图 1 的关键在“按场景分层统计”这一步。把跨层样本和层内样本分开算,是这份测试方法能不能被审计的分水岭。
三、方案对比:四种验收方式
| 验收方式 | 代表性 | 成本 | 可重复性 | 可审计性 | 适用阶段 |
|---|---|---|---|---|---|
| 单点抽查 | 低 | 最低 | 差 | 差 | 演示、初验沟通 |
| 分段路线实测 | 中高 | 中 | 好(路线固定) | 好 | 交付验收 |
| 全量回放+标注比对 | 高 | 高(标注耗时) | 好 | 最好 | 争议项复核、整改后复验 |
| 长期在线监测+抽检 | 高(覆盖真实分布) | 中 | 中 | 中(缺真值) | 上线后持续评估 |
表里的“可审计性”指的是:第三方能否拿着同样数据复现你的结论。全量回放加标注比对最强,因为它把证据链留下来了。

图 2 的使用方式:交付验收用分段路线实测(成本可控、可重复);出现争议项用全量回放复核;上线后用长期监测看稳定性。
四、技术细节:把指标写成合同条款
样本量要够。跨层样本是最稀缺的,按经验量级,至少需要数百次跨层才具备统计意义。层高多、垂直交通频繁的楼比较容易凑;单层面积大、跨层少的楼,凑样本本身就是成本。这一点要在合同里写清楚,而不是等到验收时才发现样本不够。
指标定义要写到没有歧义。“跨层检出率”的分母是什么(所有真实跨层次数)?容差多少秒(比如真实跨层后 20 s 内输出正确即算检出)?这两句不写清楚,验收会上一定吵。
置信度校准要单独看。这是最容易被跳过、但对业务最有用的一项。系统输出的置信度如果不可靠(报 90% 实际只有 60%),下游任何按置信度做的降级、告警、人工复核策略都会失效。做法很朴素:把测试集的样本按置信度分桶,统计每桶的实际正确率,画一条可靠度曲线。
边界场景必须单列。楼梯间、电梯厅、连廊、坡道、夹层,这些是错误集中区。把它们混在总体样本里,会被大面积正确样本淹没。建议对每个边界场景单独给一行指标。
回归测试要能重跑。每次调参、每次布点调整、每次图纸更新,都应该用同一套测试集重跑一遍。这意味着测试集与真值必须存档,且能自动化比对。没有这一条,改进就无法证明。
几个踩过的坑:
- 只测同层,结果漂亮但对业务无用。
- 用系统自身日志当真值——这是循环论证,等于用被测对象证明被测对象正确。
- 忽略时间对齐,跨层时延被算多了或算少了十几秒。
- 把“没有输出”算作正确。降级态不输出层号,如果按“没有输出错误”来计分,系统越保守分数越高。
五、局限与边界
人工标注成本高。全量标注在大项目上不现实,只能抽样。抽样就要接受代表性误差,这一点应当如实写进报告。
长期在线监测没有真值。它能看稳定性(翻转频次、覆盖率),看不出正确性。别把稳定性数据当成准确率来用。
不同建筑之间的指标不可直接横向比较。层高、结构、人流、终端型号都不同。同一份测试集在同一栋楼的两次测试之间可比,跨楼比较意义有限。
验收通过不等于长期可用。布点被挪动、图纸更新、人员构成变化,都会让指标漂移。指标需要定期复测,而不是一次验收管三年。
六、结论
判层验收的核心不是算法多好,而是口径多清楚。同一套系统,换一种统计口径就能得出 78% 或 99% 两个结论,这两个数字都没有造假——差别在于分母里有没有跨层样本。
给一个可执行的判断标准:看验收报告里有没有这三个数——跨层样本数与跨层检出率、误翻转次数/小时、首次判对时延。三个都有,报告可以支撑判层能力结论;缺任何一个,这个准确率数字都不足以作为决策依据。
落地建议:把测试集、真值标注文件与指标定义写成合同附件,而不是只写一个准确率数字。这份附件在项目后半程的价值,往往比算法本身更高——它会逼着双方在开工前把“什么算对”说清楚。