每年一度的华为杯研究生数学竞赛可谓“凤凰涅槃”,四天三夜的大战,得奖可获得上海落户积分,每年参与人数众多~,处理建模问题时,笔者的一般流程:明确目标——数据采集——数据清洗——选择特征——训练模型——评估模型(验证模型),使用工具是MATLAB和EXCEL,针对不同的模型的流程有不同的调整 PS:有时序影响的特征甚至要进行OTV(out time verification)后续发例子。
问题描述:
PS:原题有5问,此处指针对前三问解答,如需原题请私信或官网下载。
技术路线图是图形化展示我们解决问题思路的有效方法,在竞赛、研究和实际项目中都有一定意义,针对该问题的技术路线如下:
明确目标:建立预测模型,输入若干X(367个中筛选),输出Y(RON损失预测值),问题定位回归预测问题;
数据采集:大赛举办方已给出,样本数量325条,特征数量367个(原始样本);
数据清洗:对样本的饱和度进行分析,少部分缺失值进行补充,异常值进行剔除,为后续建模做准备工作;
选择特征:举办方提示的很明确,筛选不超过30个变量,采用Relief-F算法等快速选择有效变量,通过查看变量的相关系数矩阵、IV值评估变量的有效性。
训练模型:回归预测的模型比较多,随机森林回归和BP神经网络是比较常用的方法,但神经网络算法的调参过程又十分复杂且重要,在此提出了基于遗传算法的BP神经网络,对神经网络的权重和阈值进行优化。
评估模型:训练完成模型之后验证模型是必不可少的步骤,回归问题和分类问题有不同的评估指标(后续专门分析),此处回归模型选择 预测值和真实值之间的R方、运行时间作为评估指标,最终得出基于遗传算法的BP算法效果较好