Q:树形意图识别和逐层路由应该如何设计,并构造评测集避免误差级联?
来源:快手 AI 应用开发一面(2026-08-24)
新手答:“先识别一级意图,再逐层分类到叶子节点,用每层准确率评估。”
高手答:树形路由适合标签多、层级有稳定业务语义的场景,但父节点一旦选错,正确叶子就永远无法被看到。设计时应把 taxonomy 做成互斥性和覆盖性可检查的版本化契约;每个节点定义正例边界、易混淆兄弟、拒识条件和可用下游能力。路由器在每层输出校准后的 Top-K 与置信度,低置信或多意图请求进入澄清、并行候选或全局检索,而不是强制沿单一路径到底。
评测集不能从每个叶子随机抽几条即可,至少要覆盖:各层普通正例、兄弟节点困难负例、跨父节点语义相近样本、多意图组合、缺少关键信息、树外拒识,以及口语、省略、错别字和提示注入扰动。再加入从线上首错点回流的 badcase,并按用户或时间切分,防止同模板泄漏到训练集和测试集。
指标需要同时观察节点与路径:逐层 macro-F1 和校准误差定位单个分类器,路径准确率与叶子 Recall@K 衡量级联损失,拒识/澄清精度衡量安全出口,最终任务成功率衡量路由是否真的有用。报告应按深度和意图频次切片,并统计“第一个错误层”;还要用 oracle-parent 实验分别测量当前节点自身错误和上游传递错误。发布门槛基于完整路径和高风险叶子,不允许用一级节点的高准确率掩盖深层失败。
差距在哪:新手把它当多个分类器串联,高手同时设计 taxonomy、低置信逃生路径、级联敏感测试集和首错点指标。面试官考的是如何让层级路由既可扩展,又能量化并控制上游错误对最终任务的放大。