审校 | 孙淑娟
1. 计划
在构建任何机器学习模型之前,有必要先坐下来,计划一下您希望模型完成的任务。在实际编代码之前,重要的是了解要解决的问题、数据集的性质、要构建的模型类型,以及训练、测试和评估模型的方式。
可以先列出简短的概要,然后制定一项分步走的计划,表明想要完成什么样的任务。比如在构建模型之前,您可以问自己:
- 什么是预测变量?
- 什么是目标变量?我的目标变量是离散的还是连续的?
- 该使用分类还是回归分析?
- 如何处理数据集中的缺失值?
- 按照同一种尺度对变量度量时,该使用规范化还是标准化?
- 该不该使用主成分分析(PCA)?
- 如何调整模型中的超参数?
- 如何评估模型以检测数据集中的偏差?
- 是否应该在使用不同模型进行训练时使用集成(ensemble)方法,然后执行集成平均?比如使用SVM、KNN或逻辑回归等分类器,然后对三个模型求平均?
- 如何选择最终的模型?
2. 准备
在执行之前,重要的是提前准备如何处理该项目。可以问自己以下问题:项目的规模怎样?是个人项目吗?我需要有队友吗?什么平台最适合构建模型?应该使用R Studio还是Jupyter笔记本?项目是否需要使用先进的生产力工具,比如高性能计算资源,还是AWS或Azure之类的云服务?项目完成的时间表是什么?
3. 生产(设计、构建和执行模型)
可以在这个环节选择要使用的模型,比如线性回归、逻辑回归、KNN、SVM、朴素贝叶斯、决策树、深度学习、K-means、蒙特卡洛模拟或时间序列分析等。而且,数据集必须分成训练集、验证集和测试集。超参数调整用于微调模型以防止过拟合。执行交叉验证以确保模型在验证集上表现良好。在对模型参数进行微调后,将模型应用于测试数据集。模型在测试数据集上的性能大致相当于模型用于对看不见的数据进行预测时的预期性能。
4. 发布(实施、部署或展示您的成果)
在这个阶段,最终的机器学习模型被投入到生产环境,开始改善客户体验、提高生产力或决定银行是否应批准借款人贷款等。在生产环境中评估模型,以评估其性能。这可以通过使用A/B测试等方法将机器学习解决方案的性能与基准或控制解决方案进行对比来完成。必须分析从实验模型转入到生产线上的实际性能时遇到的任何错误。然后可以将其用于微调原始模型。在一些大规模项目中,数据科学家必须与公司的其他工作人员、软件工程师或机器学习工程师合作,才能部署模型(比如构建可以实时读取数据的基于Web的界面),将数据输入到模型,然后使用最终模型进行预测。
总之,我们已讨论了管理数据科学项目的四个基本步骤:计划、准备、生产和发布。合理的计划和准备不仅可以提高生产力,还有助于避免项目执行过程中可能碰到的潜在陷阱和障碍。
原文4 Steps for Managing a Data Science Project,作者:Benjamin Obi Tayo