第4章 核心指标设计:定义指标口径(分子分母)、明确统计属性(均值/比率/分位数)、记录口径文档

指标口径是实验度量的“宪法条款”——分子分母定义不清、统计属性混淆,会导致实验结论不可复现、团队间争议不断。本章提供一套标准化的口径设计流程,从业务目标拆解到文档归档,确保每个指标可追溯、可计算、可审计。

核心原则:口径定义必须同时满足“业务语义一致”与“计算逻辑可执行”,二者缺一不可。

4.1 适用场景

以下三类场景必须启动正式的口径定义流程:

  • 新实验指标首次定义——例如上线“首单转化率”指标前,需明确首单时窗、用户归属、成功事件定义。
  • 实验指标体系重构——旧口径存在歧义或数据源变更时,需整体刷新。
  • 跨团队协作——数据工程、产品、算法团队共用同一指标时,必须通过文档对齐理解。

4.2 前置条件

  • 业务目标已拆解为可量化的核心概念(如“用户活跃”→“7日内登录天数≥3天”)。
  • 数据源可用性已确认(埋点表、离线数仓、实时流表至少一方就绪)。
  • 团队已对齐基础统计概念(均值、比率、分位数的含义与计算方式)。

4.3 操作步骤

遵循“拆解→定属性→定口径→归档→验收”五步流程,每一步均需输出中间产物。

  1. 拆解业务目标为核心概念——将模糊的业务语言翻译为可观测的事件/实体。例如“提升用户付费意愿”拆解为“支付事件次数”“付费用户占比”“ARPU”。
  2. 明确统计属性——为每个核心概念选择均值、比率或分位数,并说明选择依据。
  3. 定义分子分母——用“事件+过滤条件+时间窗口”精确描述分子集合与分母集合。
  4. 记录口径文档——按标准化模板填写,包含口径ID、公式、数据源、过滤条件、变更历史。
  5. 评审验收——利益相关方签字确认,口径进入受控状态。
最佳实践:步骤2与步骤3可并行迭代。建议先在SQL中写出分子分母的查询语句,再用自然语言反向验证业务语义是否一致。
指标口径定义流程 阶段一:定义阶段 1. 业务目标拆解 2. 确定统计属性 3. 定义分子分母 阶段二:文档阶段 4. 记录口径文档 阶段三:验收阶段 5. 评审验收 6. 异常处理机制 说明:每个阶段产出物需经下阶段确认,异常处理机制贯穿全流程。

4.4 输入输出物

类型 名称 内容说明 责任方
输入 业务需求文档 原始业务目标、核心概念描述、验收场景 产品经理 / 业务方
输入 数据字典 v2.3+ 现有事件表、字段定义、分区规范 数据工程师
输出 指标口径文档 v1.0 口径ID、分子分母公式、统计属性、过滤条件、变更日志 数据分析师
输出 口径查询验证脚本 至少3条SQL用例,覆盖边界值 数据分析师

4.5 责任边界

角色 职责范围 否决权
数据分析师 主导口径定义、编写文档、制作验证脚本 无(需评审确认)
数据工程师 提供数据源访问、确认计算可行性、执行ETL 若数据不可达可一票否决
产品经理 / 业务方 确认业务语义、审批口径文档 业务语义不符可一票否决
实验科学团队 审核统计属性选择、校验指标敏感性 统计方法错误可一票否决
常见越界行为:数据分析师跳过业务方直接定口径,或数据工程师擅自修改口径中的过滤条件。任何变更必须触发“记录口径文档→评审验收”循环。

4.6 记录材料:口径文档模板

所有指标口径必须按以下JSON模板记录,并存于版本受控的仓库(如Git)中。

{
  "metric_id": "purchase_conversion_rate_v2",
  "metric_name": "购买转化率(v2)",
  "statistical_property": "比率",
  "formula": {
    "numerator": {
      "event": "purchase_success",
      "filters": ["amount > 0", "is_test_user = false"],
      "time_window": "进入实验后7日内"
    },
    "denominator": {
      "entity": "user_id",
      "filters": ["exposure_time >= '2025-01-01'", "platform IN ('iOS','Android')"]
    }
  },
  "data_source": "clickhouse.event_log_2025",
  "version": "1.0",
  "owner": "analyst_zhang",
  "reviewers": ["pm_li", "eng_wang"],
  "changelog": [
    {"date": "2025-02-10", "change": "初始定义", "author": "analyst_zhang"}
  ]
}

每个字段必须填写,不允许空值。changelog 数组记录每次变更原因与前后对照。

4.7 异常处理

异常场景 判定标准 处理方式
口径歧义 同一指标在不同团队口中的分子/分母不一致 召开口径对齐会,以业务需求文档为基准裁决,更新文档并重新评审
数据源缺失 口径依赖的事件表或字段在数仓中不存在 回退到前置条件检查,推动数据工程师补埋点或使用代理指标
统计属性争议 均值 vs 中位数 vs 分位数选择无法达成一致 实验科学团队出具敏感性分析报告,选择统计功效更高的属性
口径文档与代码不一致 文档中的过滤条件与SQL查询语句存在差异 立即冻结指标使用,修复文档或代码,两者必须严格同步

4.8 验收标准

口径定义是否合格,须逐条检查以下项:

  • 语义无歧义——随机抽取3位团队成员,对口径描述的理解完全一致。
  • 分子分母可追溯——每条过滤条件都能在数据字典中找到对应字段与合法值域。
  • 统计属性明确——均值/比率/分位数已注明,且分母边界清晰。
  • 文档完整——口径ID、版本、owner、changelog 均已填写,无空字段。
  • 查询可复现——提供的SQL验证脚本在测试环境执行结果与文档描述一致。
  • 已通过评审——至少1位业务方 + 1位数据工程师在口径文档上签字确认。
自检工具:创建一份“口径验收 Checklist”,包含上述6项。每次新指标上线前,由非owner的数据分析师逐项打勾,未通过不得进入实验配置。