SuperAPI AI 工具集

dnn-modeling

数据与分析

查看项目

更新于 10-15 19:55

技能介绍

用途:基于 PyTorch 实现 MLP(多层全连接网络)进行二分类建模,流程为特征标准化 → MLP 训练(BatchNorm + Dropout + Early Stopping)→ 概率预测 → 三段式评估。适用高维特征交互建模、特征间存在复杂非线性关系、数据量充足(>10k 样本)以及对模型性能有较高追求(可与 XGBoost 做 ensemble)的场景。

主要参数:--data_path/-d 数据路径(parquet/csv,必选);--target/-t 目标变量列名(0/1 二分类,必选);--time_col 时间列名(默认 busi_dt);--train_filter 训练集筛选条件;--oot_filter OOT 跨时间测试集条件;--oot_ratio 按时间切 OOT 比例(默认 0.20);--val_ratio 从 train_full 切 val 比例(默认 0.25);--random_seed(42);--exclude_cols 排除列;--features 指定特征,不传则自动推断;--hidden_dims 隐藏层维度(默认 128,64,32);--dropout(0.3);--learning_rate(0.001);--batch_size(512);--epochs(100);--patience 早停耐心轮数(10);--weight_decay(1e-4);--pos_weight 正样本权重(默认 auto);--model_name;--report_output;--output_dir(默认 ./outputs/<ts>);--config JSON 配置文件路径。

执行方式示例:python scripts/modeling.py --data_path ./data.parquet --target y_label --output_dir ./outputs/dnn_run;自定义网络结构可加 --hidden_dims "256,128,64" --dropout 0.4 --learning_rate 0.0005 --epochs 200。

输出产物:建模报告(Markdown,含数据切分、网络结构、训练曲线、三段式评估指标、稳定性分析)、模型文件(.pt,PyTorch state_dict + 模型配置,保存到 <output_dir>/models/)、训练日志(JSON,每 epoch 的 loss/AUC/KS)、result.json 结构化产物清单。

限制:目标变量必须为 0/1 二分类;建议训练样本 > 10k,小样本易过拟合;脚本自动中位数填充缺失值并添加缺失指示列,自动对数值特征做 StandardScaler;val loss 连续 patience 轮不下降即早停;本技能不提供调参,调参需切换到 dnn-tuning;自动检测 CUDA,无 GPU 时回退 CPU。上下游:前置 data-profiling → feature-analysis;后续 dnn-tuning、model-comparison;可与 xgb-modeling / lr-modeling 横向对比。