行为
Sprint 5¶
第 4 阶段:S5 - 标准化与 Spearman 降维¶
融合“截面数学推导”与“内存防爆累加”。
Step 4.1: 截面聚合与双形态参数物理时序隔离¶
-
纯横截面聚合:按
net_value_date分组计算 38 维的mean, std, median, mad,推导 MAD 上下界,生成is_production_ready哨兵。 -
路径 A (训练宽表):宽表上
.shift(1)实现 T-1 对齐,按日期排序落盘。 -
路径 B (推理长表):Unpivot 为长表,动态生成自然日历
forward_fill至每日,按["feature_name", "date"]绝对物理排序落盘。
Step 4.2: 标准化 Apply 与 IEEE 754 拦截¶
- 实体表
.collect()后与几百行宽表参数 Join(零内存膨胀广播)。 - 遍历 38 列构建
when(std==0).then(None).otherwise(...)表达式,封杀除零产生Inf。
Step 4.3: 训练 Join 三键死锁与毒样本截断¶
- 三键强锁 Join:
["fund_id", "net_value_date", "segment_id"]。 - 哨兵覆写:
is_feature_complete == False的行,标签强制覆写为0。
Step 4.4: Spearman 秩相关内存防爆防线¶
- 按年流式加载标准化特征。
- 截面内
rankdata(method="average")锁定平均秩,算秩后立即减均值。 - Pearson 展开项
np.dot联合累加sum_xy,利用对称性减半算力。 - 跨年累加后执行
(matrix + matrix.T) / 2.0强制对称化截断。 - 剔除
>= 0.90的冗余特征,输出final_feature_list。
由 Huarui Lin 更新于 5 个月 之前 · 5 修订