feat(#68): [Ti-1] 氯化车间质量预测特征工程(基于点位字典)

新增 templates/ti-cl4/quality-forecast/features.py:
- PointDict:解析 point_dict CSV(9 列,对齐 core/edge-gateway),检索/存在性校验
- FeatureSpec:声明式特征(source/transform/window/meaning),换行业只改清单
- FeatureExtractor:按清单从时序样本抽取特征矩阵,缺失值 NaN 占位
- 9 算子:raw/mean/std/min/max/range/diff/slope/ratio
- 零依赖 YAML 子集加载(与 recipe-optim/data-bus 同款)
- config/features.template.yaml:7 个默认特征(炉温/配比/CO波动/炉层/TiCl₄纯度)
- 22 用例全通过;纯标准库零运行时依赖。
This commit is contained in:
2026-08-05 05:14:39 +08:00
parent 6899a2977d
commit c6dc7d2344
7 changed files with 1054 additions and 0 deletions
@@ -0,0 +1,63 @@
# -*- coding: utf-8 -*-
# Ti-1 氯化车间质量预测 · 特征清单模板(Issue #68 / PRD §5.3 ①)。
#
# 模板化技术路径(PRD §5.3):特征清单外置,换行业/换模板只改本文件 + 点位字典,
# 特征工程代码零改动。本清单基于 templates/ti-cl4/point-dict/point_dict.default.csv
# 的默认点位集(CLF-01 沸腾氯化炉 / RF-01 精制还原)。
#
# 算子说明:
# raw 取窗口内最新值
# mean 窗口均值
# std 窗口标准差(样本无偏)
# min/max 窗口极值
# range 窗口极差
# diff 最近两点差分
# slope 最小二乘斜率(值/秒)
# ratio source/denominator 比值(需 denominator)
#
# 缺省窗口 60s;meaning 字段供 #69 模型可解释性引用。
features:
- name: clf_temp_mean
source: CLF-01.TEMP
transform: mean
window: 60
unit: "℃"
meaning: 沸腾氯化炉炉温窗口均值(反应强度主控变量)
- name: clf_temp_slope
source: CLF-01.TEMP
transform: slope
window: 120
unit: "℃/s"
meaning: 炉温变化趋势(升温过快影响 TiCl₄纯度)
- name: clf_cl2_feed_ratio
source: CLF-01.CL2
transform: ratio
denominator: CLF-01.FEED
window: 60
unit: "m³/t"
meaning: 氯气/进料配比(配比偏离是杂质主因)
- name: clf_co_std
source: CLF-01.CO
transform: std
window: 120
unit: "%"
meaning: CO 含量波动(燃烧不稳信号)
- name: clf_bed_range
source: CLF-01.BED
transform: range
window: 300
unit: "%"
meaning: 炉层状态波动范围(偏钛酸铁预警信号)
- name: rf_purity_last
source: RF-01.PURITY
transform: raw
window: 60
unit: "%"
meaning: TiCl₄ 纯度最新读数(LIMS 低频,质量标签候选)
- name: rf_imp_mean
source: RF-01.IMP
transform: mean
window: 60
unit: "%"
meaning: 杂质含量窗口均值(质量标签候选)