分群自主探索 (portable)
在用户指定或 AI 自主发现的分群策略下,拆分客群训练子模型,自动探索最优分群方案。
核心理念:
探索空间(策略 × 参数 × 组合)
│
▼
Try → Measure → Keep/Discard → Repeat
│
▼
最优分群方案 + 子模型
三种分群策略
| 策略 |
说明 |
适用场景 |
| 规则分群 |
用户指定规则(如 age < 30) |
有业务先验知识 |
| 聚类分群 |
K-Means 等无监督自动发现 |
探索数据内在结构 |
| 决策树分群 |
有监督找最优分割点 |
直接优化目标变量 |
参数说明
| 参数 |
必选 |
默认值 |
说明 |
--data_path |
✅ |
- |
数据文件路径(parquet/csv) |
--target |
✅ |
- |
目标变量列名(0/1 二分类) |
--mode |
|
auto |
模式: auto(自主探索) / manual(指定策略) |
--max_rounds |
|
5 |
自主探索最大轮数 |
--segment_rules |
|
- |
规则分群,JSON格式 |
--segment_col |
|
- |
直接指定分群列名 |
--n_clusters |
|
3 |
聚类分群数 |
--tree_depth |
|
2 |
决策树分群深度 |
--tree_features |
|
- |
决策树使用的特征,逗号分隔 |
--min_segment_ratio |
|
0.05 |
最小分群占比(<5%会警告) |
--merge_strategy |
|
route |
汇总策略: route / stacking |
--metric |
|
ks |
优化指标(auc/ks) |
--significance |
|
2.0 |
显著性阈值(MAD倍数) |
--time_col |
|
busi_dt |
时间列名 |
--train_filter |
|
- |
训练集筛选条件 |
--val_filter |
|
- |
验证集筛选条件 |
--output_dir |
|
./outputs/<ts> |
产物输出目录 |
--config |
|
- |
JSON 配置文件 |
执行方式
自主探索最优分群
python scripts/run_segment.py \
--data_path ./data.parquet --target y_label \
--mode auto --max_rounds 5 \
--output_dir ./outputs/seg
用户规则分群
python scripts/run_segment.py \
--data_path ./data.parquet --target y_label \
--mode manual \
--segment_rules '{"年轻": "age < 30", "中年": "age >= 30 and age < 50", "高龄": "age >= 50"}' \
--output_dir ./outputs/seg
聚类自动分群
python scripts/run_segment.py \
--data_path ./data.parquet --target y_label \
--mode manual --n_clusters 4 \
--output_dir ./outputs/seg
决策树分群
python scripts/run_segment.py \
--data_path ./data.parquet --target y_label \
--mode manual \
--tree_depth 3 --tree_features "age,income,credit_score" \
--output_dir ./outputs/seg
输出内容
实时进度(流式输出)
━━━ Round 1/5: 基线(不分群)━━━
单一模型 AUC: 0.742
━━━ Round 2/5: 用户规则分群 ━━━
规则: age < 30 | 30-50 | > 50
分群样本: [12,340 | 18,560 | 14,288]
子模型 AUC: [0.71 | 0.75 | 0.78]
汇总 AUC: 0.758 (+2.2%)
决策: ✅ KEEP
━━━ Round 3/5: 决策树分群 (depth=2) ━━━
自动分割: income < 5000 → ...
汇总 AUC: 0.772 (+1.8%)
决策: ✅ KEEP (新最佳!)
最终报告
- 最优分群方案详情
- 各策略对比表
- 子模型列表及指标
- vs 基线提升幅度
- 分群稳定性分析(PSI)
评估标准
| 指标 |
说明 |
阈值 |
| 整体 AUC |
分群模型汇总后效果 |
越高越好 |
| vs 基线 |
相比不分群的提升 |
> 0 |
| 分群稳定性 |
OOT分群比例变化 |
PSI < 0.1 |
| 最小覆盖率 |
最小群占比 |
> 5% |
与其他技能的关系
| 技能 |
职责 |
关系 |
xgb-modeling |
单模型训练 |
被复用训练子模型 |
auto-experiment |
特征探索 |
可在分群后对各群独立优化 |
feature-analysis |
特征分析 |
辅助选择分群特征 |
注意事项
- 分群数量:建议 2-5 群,太多易过拟合
- 最小样本量:每群建议 > 5% 总样本
- 稳定性:关注 OOT 分群比例是否稳定
- 业务可解释:决策树分群规则更易解释
- 组合使用:可先分群再对各群做特征探索