7.0 KiB
F3 横轴量化方法 PRD v1.0
子项目交付物 · 看板分析升级 状态:v1.0 已锁(2026-06-12 通哥审过 §2/§3/§4 决策) 起草时间:2026-06-12 顾问:Claude Opus 4.7 | 制片人:刘通 类型:薄 PRD(只解 v2 之后留下的开放点,已锁部分仅引用)
§1 引用已锁结论(不重述)
本 PRD 是对已有结论的补丁/收敛,不替换。已锁部分直接参见以下来源:
| 来源 | 已锁内容 |
|---|---|
| 续接快照 v2 §3 | 横轴公式 X = 该题材在分析窗口内的均值份额 − 栏目均值份额,零点 = 栏目均值,单位 = 收视份额绝对差 |
| 续接快照 v2 §4 | 双引擎象限图视觉规格:气泡大小 = 收视份额、气泡颜色 = 收视判定三色、气泡边框 = 开篇钩子三档、重叠用 jitter 解 |
| 主 project Claude 示意图(2026-06-10) | 23 期实际数据 + 模拟纵轴/钩子已可视化,制片人认可"不挤、不堆叠" |
| 续接快照 v3 §1.1 / v4 §3 | 纵轴从 3 档收为 2 档(主线演进 / 并列结构),Prompt 2 v0.2 + ground-truth v0.2.1 M3 100% 锁定 |
| 续接快照 v2 §2 字段二 | equipment_domain 多选 9 类:陆战装备 / 海军舰船 / 航空航天 / 导弹与反导 / 信息化 / 后勤保障 / 轻武器 / 跨域 / 其他 |
本 PRD 解决 v2 之后留下的三个开放点:多标签横轴取值规则、小样本兜底、视觉规格刷新到 2 档纵轴。
§2 决策一:多标签 → 横轴单点取值规则(Path A 全额法)
equipment_domain 字段为多选(至少 1 项),但横轴一期只能落一个点。
2.1 规则
每个 equipment_domain 标签独立维护自己的累计均值;一期节目标了 N 个标签,就把该期完整 share 直接记进每一个沾上的标签的均值池(全额、不瓜分、不加权)。
2.2 数学定义
对每个 equipment_domain 标签 i:
base_i = 所有沾标签 i 的节目的 share 的算术平均
= Σ(share_j, ∀ j 沾标签 i) / count(j 沾标签 i)
栏目均值:
base_全栏目 = 所有节目的 share 的算术平均(单期单算)
每期 ep 的横轴位置:
X(ep) = mean(base_i, ∀ i ∈ ep.equipment_domain) − base_全栏目
2.3 示例
设当前 海军舰船 桶均值 = 0.69,跨域 桶均值 = 0.79,栏目均值 = 0.72。
- 一期标
海军舰船 + 跨域,share = 0.71 - 该期 X 位置 = (0.69 + 0.79) / 2 − 0.72 = +0.02(略偏热)
- 这期 share = 0.71 同时记入
海军舰船均值池(下次 base 重算用)和跨域均值池
两点说明:
- 均值更新方向自洽:0.71 < 0.72(栏目均值),也低于"跨域 0.79"。记入两个桶后,两个桶的均值都会被这期略往下拉,符合"低于均值的样本拉低均值"的直觉。
- 不存在 ×N 放大:之前讨论过的"按基值加权 × 标签数"方案因方向 bug(低于均值的样本可能反向拉高均值)被否决,详见 2026-06-12 续接讨论。
2.4 适用范围
本规则仅用于横轴 X 值计算。其他统计(能力地图、编导对比、scene_tags 分布等)的多标签处理另议。
§3 决策二:小样本兜底规则
某 equipment_domain 桶若在当前分析窗口内样本量 n 较小,均值统计意义弱。视觉上需可辨。
3.1 兜底分档
| 桶样本量 | 视觉处理 |
|---|---|
| n ≥ 3 | 正常显示,base 值直接入横轴坐标 |
| n = 1 或 2 | 桶名右侧显示 (n=X) 灰色小字;桶内气泡描边改为虚线浅灰;tooltip 警示"样本不足,横轴位置参考价值有限" |
| n = 0 | 桶不出现在横轴坐标系上(如 陆战装备 在 21 期场景下属此类,预留枚举值但暂不画) |
3.2 阈值出处
n = 3 阈值的取法:统计上方差估计起码需 2 自由度,记录方便取 3。这是初值,后续看实际分布可调。
3.3 当前 21 期场景的小样本桶预测
按 v2 §2 九类 + 我对 21 期的初步映射(见配套回填提案表):
导弹与反导n=1(ep15 一期),小样本桶信息化n=1 或 2(取决于 ep03 是否归这里 vs 跨域),可能小样本陆战装备n=0,不出现在坐标系后勤保障n=0,不出现在坐标系其他n=0,不出现在坐标系
其余 4 个桶(海军舰船 / 航空航天 / 轻武器 / 跨域)预计 n ≥ 3,正常显示。
§4 决策三:视觉规格刷新(纵轴 3 档 → 2 档)
v2 §4 视觉规格除以下差异外,全部沿用:
| 元素 | v2 §4(3 档,旧) | 本版(2 档,新) |
|---|---|---|
| 纵轴档位 | 强主线悬念 / 主线演进 / 并列结构 | 主线演进 / 并列结构(v3 §1.1 收为 2 档) |
| 纵轴坐标 | 三个水平基线 | 两个水平基线 |
| 同档内 jitter | ±0.3 | ±0.4(档少了,jitter 可适当加大避免聚拢) |
| 中线视觉 | 两条次级分隔 | 一条主分隔线显著加粗,强调"主线 vs 并列"对照 |
| 上下区视觉重点 | 三层等权 | 两区中性等权——纵轴不暗示偏好方向,呈现客观对照(2026-06-12 通哥拍板) |
横轴部分全部沿用 v2 §4,无变化。
§5 配套交付清单(子项目本轮其余产出)
- [✅ 本文件]
F3_横轴量化方法_PRD_v1.0草稿.md - [⏳ 下批]
双引擎象限图_HTML_mock_v1.0.html——基于本 PRD 的纵轴 2 档版可视化,可浏览器直开看交互 - [⏳ 下批]
F3_算法验证脚本.py——在子项目沙盒里跑通完整计算流程,输入 23 期 equipment_domain 多选 + share,输出各桶 base + 23 期 X 值表 + 数据校验报告 - [⏳ 下批]
equipment_domain_字段定义文档.md——按 Brief §6.1 格式,主 project Cline 拿去做 schema 迁移 - [⏳ 下批]
23期_equipment_domain_回填提案表.md——给制片人审,或转 Prompt 1a 的 ground-truth 输入
§6 落地依赖(主 project Cline 工作清单)
子项目这边的 5 份交付物全部锁定后,主 project Cline 可接手以下工作(均需切 Plan + Opus 审):
- Schema 迁移:
backend/sql/00X_add_equipment_domain.sql(基于字段定义文档) - 23 期回填:Prompt 1a 跑批结果落库 + 制片人审过的 8 期标题推断低置信度样本
- 后端 API endpoint:横轴聚合数据接口
GET /api/v1/episodes/quadrant-data(或类似) - 前端 React/ECharts 组件:基于本 PRD 的 HTML mock 1:1 翻译
§7 后续可能调整项(本版不解,留入 backlog)
- 时间窗口选择:滚动窗口 vs 全部历史 vs 季度,默认设"全部历史",后续 UI 加切换器
- n ≥ 3 阈值的实际验证:用 23 期 + 新片陆续入库 6 个月后看分布,必要时调阈值
- 多标签规则是否升级:本版用全额路 A,运行半年若发现不妥(如某桶均值长期被高频跨域期数刷高)再议升级到带权或 1/N 守恒版
- n=1/2 视觉表达细节:虚线浅灰 vs 描边淡化 vs 加图例,等 HTML mock 出来后定
§8 修订规则
本 PRD 锁定 v1.0 后:
- v1.x 微调(视觉细节、阈值小动)在本子项目内修改
- v2.0 重大变更(规则换路 B、取消纵轴 2 档等)需主 project 同步审,通过新一版续接快照固化
修订必留 changelog,谁、何时、改了什么、为什么改。