Skip to content

Latest commit

 

History

History
67 lines (34 loc) · 6.71 KB

problem-framing-the-most-difficult-stage-of-machine-learning-1a7f208ea414.md

File metadata and controls

67 lines (34 loc) · 6.71 KB

问题框架:机器学习项目工作流程中最困难的阶段

原文:https://pub.towardsai.net/problem-framing-the-most-difficult-stage-of-machine-learning-1a7f208ea414?source=collection_archive---------0-----------------------

在现实世界的项目中,构建正确的问题来处理数据并不容易

You X VenturesUnsplash 上拍摄的照片

在这篇文章中,我将讨论为什么问题框架是机器学习项目工作流程中最重要的阶段。有些人会认为数据争论(根据定义,这是将数据从原始形式转换为干净整洁的形式以供分析的过程)是机器学习项目最重要的阶段。虽然数据争论(属于机器学习工作流中的数据分析)可能被认为是最耗时和乏味的过程,但它肯定不是机器学习工作中最重要的阶段。

在检查为什么问题框架是机器学习中最重要、也是最困难的阶段的一些原因之前,让我们首先讨论机器学习项目框架。

举例说明机器学习项目的工作流程。本杰明·欧·塔约的图片

机器学习项目工作流程

机器学习项目工作流程包括 4 个主要阶段:问题框架、数据分析、模型构建和应用。

1.问题框架

明确你的项目目标。你想知道什么?有数据可以分析吗?

在这里,您可以决定您试图解决的问题类型,例如,将电子邮件分类为垃圾邮件或非垃圾邮件的模型,将肿瘤细胞分类为恶性或良性的模型,通过将呼叫路由到不同类别来改善客户体验的模型,以便呼叫可以由具有适当专业知识的人员接听的模型,预测贷款在贷款期限结束后是否会取消的模型,基于不同特征或预测因素预测房价的模型,等等。

2.数据分析

收集和提炼你的数据。准备一个存储库来存储您的数据

这是您处理可用于构建模型的数据的地方。它包括特征的数据可视化、缺失数据的处理、分类数据的处理、分类标签的编码、特征的规范化和标准化、特征工程、降维、数据划分为训练集、验证集和测试集等。

3.模型结构

挑选与你的数据和想要的结果相匹配的机器学习工具。在自动化流程、图形编辑器或编码您自己的模型之间进行选择。用可用数据训练模型。

在这里,您可以选择想要使用的模型,例如线性回归、逻辑回归、KNN、SVM、k 均值、蒙特卡洛模拟、时间序列分析等。数据集必须分为训练集、验证集和测试集。超参数调整用于微调模型,以防止过度拟合。执行交叉验证是为了确保模型在验证集上表现良好。在微调模型参数之后,将模型应用于测试数据集。该模型在测试数据集上的性能大约等于该模型用于对未知数据进行预测时的预期性能。

4.应用

给你的模型打分生成预测。使您的模型可用于生产。根据需要重新训练你的模型

在这个阶段,最终的机器学习模型被投入生产,以开始改善客户体验或提高生产率,或者决定银行是否应该批准向借款人提供信贷,等等。该模型在生产环境中进行评估,以评估其性能。这可以通过使用诸如 A/B 测试的方法将机器学习解决方案的性能与基线或控制解决方案进行比较来完成。从实验模型转换到生产线上的实际性能时遇到的任何错误都必须进行分析。然后,这可以用于微调原始模型。

为什么项目框架是机器学习项目中最困难的阶段

a)公司可能还不是数据驱动的

一些组织拥有大量数据,但却不知道如何利用数据的力量来改善日常业务运营或提高销售额和利润。对于还不是数据驱动的公司来说尤其如此。对于这样的公司,由数据科学家来确定如何利用数据解决正确的问题。这可能会给未来的数据科学家带来巨大的挑战。

b)高度复杂的数据集

在学术培训项目中,我们经常使用非常简单的数据集,要解决的问题是明确定义的。例如,一个家庭作业问题可以为您提供一些干净的数据集,它可能会要求您使用一组特定的要素作为预测要素,并使用一个要素作为目标。问题可以更进一步,告诉你建立什么样的模型。

在现实世界的数据科学项目中,数据集通常非常复杂。例如,数据集可能包含数千个要素,也可能包含数十万甚至数百万个观测值。除此之外,数据集还可能依赖于空间和时间。因此,弄清楚要构建什么样的模型,以及使用什么特性来构建模型可能是非常具有挑战性的。

c)缺乏领域知识

问题框架会带来巨大挑战的另一个原因是,数据科学家可能不具备感兴趣的系统领域知识。例如,根据您工作的组织,您可能需要与工程师(工业数据集)、医生(医疗数据集)等团队合作。,以确定要在模型中使用的预测要素和目标要素。例如,一个工业系统可能有实时生成数据的传感器,在这种情况下,作为一名数据科学家,您可能不具备有关该系统的技术知识。因此,你必须与工程师和技术人员合作,让他们指导你决定什么是感兴趣的特征,什么是预测变量和目标变量。

d)数据可能完全不可用

一家仍在尝试进入数据科学的公司可能没有可供分析的数据。在这种情况下,作为数据科学家,您可能需要与您的公司一起决定如何设计可用于收集数据的实验或调查。例如,一家在线销售公司可能对使用数据来改善客户服务感兴趣。在这种情况下,数据科学家必须与一组客户服务人员、管理员、软件工程师、技术人员、管理人员等进行讨论。,以便在提出正确的问题之前弄清楚组织的需求。一旦确定了问题,就可以设计调查来收集样本数据。

总之,我们已经讨论了为什么在现实世界的数据科学项目中构建正确的问题可能不是非常简单的几个原因。数据科学家的角色因组织而异。作为一名入门级的数据科学家,请记住,与已经建立了完善的数据科学团队的公司相比,在一家尚未实现数据驱动的公司接受数据科学家角色可能更具挑战性。因此,一定要在面试过程中问公司尽可能多的问题,以确保你的工作角色得到很好的界定。否则,您可能需要处理所有与数据相关的事情,这可能会很有挑战性。