Files
onion-dmp/workflow1.0.md
2026-04-08 14:52:09 +08:00

6.9 KiB
Raw Blame History

workflow1.0

1. 本次目标与已确认决策

1.1 目标

  • 清洗3.0.xlsx56列表头固定导入现有DMP系统。
  • 对数据执行可复用的清洗、规范化、标签生成、导入、验证流程。
  • 建立“自动处理 + 必要人工介入检查点”的长期工作流。

1.2 已确认决策(本轮执行)

  1. 参加指导最想解决 缺失约90%)采用 保守推断,并在面板标签上标注“(推断)”。
  2. 监护人2 相关字段整体删除(缺失高且当前模型不需要双监护人建模)。
  3. 删除 付费能力标签 分类,避免无依据推断造成误导。
  4. 导入模式为 完全替换(本次以新数据全量覆盖旧数据)。

2. 数据到标签的处理策略(本次)

2.1 列分层处理

A. 直接删除列(隐私/冗余/不再使用)

  • 监护人2相关H~N
  • 联系方式相关:G, N(如仍存在二次映射则一并移除)。
  • 明确隐私字段:O(孩子姓名), U(家庭地址)
  • 仅保留规范化版本时,原文字段将不入标签逻辑(如 _原文 列)。

B. 保留并参与标签生成列

  • 基础规范列:AN, AP, AR, AT, AV, AX, AZ, BB, BD
  • 关系与教养列:W, X, Y, Z, AA, AB, AC
  • 其他辅助列:C(文化程度)B(家庭角色)(仅当规范列不足时作为补充)。

C. 低质量列处理

  • 参加指导最想解决_扩展(BD)
    • 有值:直接入“核心问题标签”。
    • 无值:按保守规则推断,标签名称后缀 (推断)

D. 家庭角色专项清理(本次新增)

  • 仅保留真实家庭关系词,不保留职业、状态、描述、乱码、手机号、标点碎片。
  • 标准化后保留的家庭角色以“可解释、可复用、可前端展示”为准。
  • 第一轮收敛后统一为 18 个家庭角色标签;二次收敛后进一步压缩为 12 个标签。
  • 最终保留:妈妈爸爸奶奶外婆爷爷姑姑外公舅舅继母姨妈伯娘其他监护人
  • 规则:家长父母 归并到 其他监护人妻子女儿姐姐儿子 删除。

2.2 保守推断(核心问题标签)

推断原则

  • 仅在高置信线索存在时推断。
  • 无明显线索时宁可不贴标签,不做激进猜测。
  • 每个推断标签必须带后缀:(推断)

候选线索来源(多因素)

  1. 学习状态:学习成绩_规范(AX)
  2. 家庭与关系:家庭氛围(W), 亲子关系(X)
  3. 教养风险:Y/Z/AA/AB
  4. 重大事件:重大影响事件_扩展(BB)

推断样例(示意)

  • 学习成绩_规范=差亲子关系=紧张 -> 学习动力与执行(推断)
  • 有无打骂教育=是经常否定孩子=是 -> 教养方式调整(推断)
  • 家庭氛围=冲突紧张 -> 亲子沟通修复(推断)

2.3 规范化3类实现家庭氛围

目标分类

  • 温暖
  • 中立
  • 冷漠

实现方式

  1. 关键词词典匹配(主规则)。
  2. 冲突/负向词优先级高于一般正向词。
  3. 未命中规则时默认 中立(保守策略)。

最小规则集(可迭代)

  • 温暖词:和谐、支持、理解、亲密、关心、沟通良好。
  • 冷漠词:冷漠、疏离、冷战、回避、忽视、压抑。
  • 中立词:一般、还行、普通、尚可、平常。

3. 面板与后端联动改造

3.1 标签显示要求

  1. 推断得到的标签统一后缀:(推断)
  2. 推断标签在返回结构中增加 source: inferred
  3. 非推断标签 source: original
  4. 前端展示数据来源提示(例如 hover/说明文字):
    • 原始:来自原始/规范化字段。
    • 推断:由规则推断生成。

3.2 分类调整

  • 删除 付费能力标签 分类:
    • 不再生成该分类标签。
    • 不再写入该分类及其关系数据。
    • 前端自动按后端返回分类渲染列数减少1列。

4. 本次执行步骤(一次性落地)

Phase 0准备与备份

  1. 备份当前数据库(含可回滚版本号)。
  2. 固定输入文件名:清洗3.0.xlsx
  3. 运行预检查:表头完整性、行数、空值率、关键字段有效性。

Phase 1清洗与规范化

  1. 删除隐私/冗余字段含监护人2全量字段
  2. 统一空值表示(null)。
  3. 执行家庭氛围3类规范化。
  4. 执行关系字段规范化(是/否、强/中/弱等)。

Phase 2标签生成

  1. 生成原始可直接映射标签。
  2. 参加指导最想解决 缺失记录执行保守推断。
  3. 推断标签统一后缀 (推断)
  4. 删除 付费能力标签 整个分类输出。

Phase 3导入与覆盖

  1. 采用“完全替换”模式写入用户、标签、关系。
  2. 重新计算 coverage/coverage_rate。
  3. 清除服务缓存并重启服务。

Phase 4验证与放行

  1. 数据量核对:用户数、标签数、关系数。
  2. 分类核对:确认无 付费能力标签
  3. 推断核对:抽样检查 (推断) 标签合理性。
  4. 面板核对:标签显示、来源说明、计算功能正常。

5. 固化为“长期自动工作流”步骤

5.1 标准输入约束

  • 输入Excel表头固定当前56列
  • 若表头变动,流程自动中断并输出差异报告。

5.2 自动化流水线

  1. validate_headers:校验表头是否与模板一致。
  2. clean_data:删除列、空值处理、文本规范化。
  3. generate_tags:规则映射 + 保守推断。
  4. import_replace:全量替换导入。
  5. post_verify:统计、抽样、接口与前端校验。
  6. checkpoint_gate:人工确认后放行。

5.3 必要人工介入检查点(必须签字)

  1. 推断策略抽样检查至少50条推断样本
  2. 分类分布异常检查(某类占比异常波动报警)。
  3. 面板业务可解释性检查(“为何是该标签”可追溯)。

5.4 失败回滚机制

  • 导入前快照备份。
  • 任一检查点失败 -> 自动回滚到上一版本。
  • 记录失败原因和异常样本,进入规则修订队列。

6. 验收标准(本次)

  1. 成功导入 清洗3.0.xlsx 全量数据。
  2. 监护人2 数据不再参与模型与标签。
  3. 付费能力标签 分类从后端和面板完全消失。
  4. 参加指导最想解决 缺失场景产出的标签均带 (推断)
  5. 面板可区分 originalinferred 来源。
  6. 所有核心接口响应正常,且统计字段一致。

7. 命名规范已确认(已锁定)

  • 推断标签命名风格统一为:业务短语 + (推断)
  • 示例:学习动力不足(推断)亲子沟通修复(推断)教养方式调整(推断)
  • 执行要求:所有由规则补全生成的“核心问题标签”均必须带 (推断) 后缀,原始字段直接命中的标签不得带该后缀。

已进入脚本实现与执行阶段。