数据科学项目管理方法指南 - KDnuggets

数据科学项目管理方法指南 – KDnuggets

源节点: 2756610

数据科学项目管理方法指南
图片作者
 

数据科学项目有很多要素。 这个过程涉及到的人很多,过程中也面临很多挑战。 许多公司都看到了数据科学的需求,并且它已经在我们今天的生活中得到了应用。 然而,有些人却在如何利用数据分析以及使用哪种路径来实现这一目标方面遇到了困难。 

The biggest assumption that companies make when using data science, is to imply that due to their use of programming language, it imitates the same methodology as software engineering. However, the models’ built-in data science and software are different. 

数据科学需要其独特的生命周期和方法才能取得成功。 

数据科学生命周期可以分为 7 个步骤。 

业务理解

如果您为公司生产任何产品,您的第一个问题应该是“为什么?”。 为什么我们需要这样做? 为什么它对企业很重要? 为什么? 为什么? 为什么?

数据科学团队负责构建模型并根据业务需求进行数据分析。 在数据科学生命周期的这个阶段,数据科学团队和公司高管应该确定项目的中心目标,例如研究需要预测的变量。 

这是基于什么样的数据科学项目? 它是回归或分类任务、聚类还是异常检测? 一旦您了解了对象的总体目标,您就可以继续询问原因、内容、地点、时间和方式! 提出正确的问题是一门艺术,将为数据科学团队提供项目的深入背景。 

数据挖掘

一旦您了解了项目所需的所有业务,下一步将是通过收集数据来启动项目。 数据挖掘阶段包括从符合您的项目目标的各种来源收集数据。 

在此阶段您将提出的问题是:该项目需要哪些数据? 我可以从哪里获取这些数据? 这些数据有助于实现我的目标吗? 我将在哪里存储这些数据? 

数据清理

一些数据科学家选择将数据挖掘和数据清理阶段混合在一起。 但是,最好区分各个阶段以获得更好的工作流程。 

Data cleaning is the most time-consuming phase in the data science workflow. The bigger your data, the longer it takes. It can typically take up to 50-80% of a data scientist’s time to complete. The reason it takes so long is because data is never clean. You can be dealing with data that has inconsistencies, missing data,  incorrect labels, spelling mistakes, and more. 

在执行任何分析工作之前,您需要更正这些错误,以确保您计划使用的数据正确并产生准确的输出。 

数据探索

在花费大量时间和精力清理数据之后,您现在拥有可以使用的极其干净的数据。 数据探索时间! 此阶段是对总体项目目标进行集思广益。 您想要深入了解可以从数据中找到什么、隐藏的模式、创建可视化以找到进一步的见解等等。 

有了这些信息,您将能够创建一个符合您的业务目标的假设,并将其用作参考点,以确保您完成任务。 

特征工程

特征工程是从原始数据中开发和构建新的数据特征。 您获取原始数据并创建符合您的业务目标的信息功能。 特征工程阶段包括特征选择和特征构建。

特征选择是指减少特征的数量,这些特征会给数据带来更多的噪音,而不是实际有价值的信息。 拥有太多的特征可能会导致维数灾难,增加数据的复杂性,使模型无法轻松有效地学习。 

功能构建就在名称中。 这是新功能的构建。 使用您当前拥有的功能,您可以创建新功能,例如,如果您的目标集中于高级会员,您可以为您想要的年龄创建阈值。

此阶段非常重要,因为它将影响预测模型的准确性。 

预测建模

这就是乐趣的开始,您将看到是否已实现业务目标。 预测建模包括训练数据、测试数据以及使用综合统计方法来确保模型的结果对所创建的假设具有重要意义。 

根据您在“业务理解”阶段提出的所有问题,您将能够确定哪种模型适合您手头的任务。 您选择的模型可能是一个反复试验的过程,但这对于确保您创建一个能够产生准确输出的成功模型非常重要。 

构建模型后,您将需要在数据集上对其进行训练并评估其性能。 您可以使用不同的评估指标(例如 k 折交叉验证)来衡量准确性,并继续这样做,直到您对准确性值感到满意为止。 

使用测试和验证数据测试您的模型可确保准确性并确保您的模型表现良好。 向数据提供未见过的数据是了解模型如何使用之前未训练过的数据执行操作的好方法。 它使您的模型发挥作用!

数据可视化

Once you are happy with your model’s performance, you are ready to go back and explain it all to the executives in the company. Creating data visualizations is a good way to explain your findings to people who are not technical, and is also a good way to tell a story about the data.

数据可视化是通信、统计和艺术的结合。 您可以通过多种方式以美观的方式呈现数据发现。 您可以使用诸如 Matplotlib 文档, Seaborn 教程情节图书馆。 如果您使用 Python,请阅读以下内容: 使用 Python Graph Gallery 制作惊人的可视化效果

就像你处于生命周期的末尾一样,但请记住这是一个周期。 所以你必须回到起点:业务理解。 您将需要根据最初的业务理解和目标以及创建的假设来评估模型的成功。

现在我们已经经历了数据科学的生命周期,您一定认为这看起来很简单。 这只是一步接着一步。 但我们都知道事情并不是那么简单。 为了使其尽可能简单有效,需要制定管理方法。 

Data science projects are not solely under the data scientists’ responsibility anymore – it is a team effort. Therefore, standardizing project management is imperative, and there are methods that you can use to ensure this. Let’s look into them.

瀑布方法论

就像瀑布一样,瀑布方法是一个连续的开发过程,贯穿项目的所有阶段。 每个阶段都需要完成才能开始下一阶段。 阶段之间没有重叠,因此不存在冲突,因此是一种有效的方法。 如果你必须重新审视之前的阶段,那就意味着团队计划得很糟糕。 

它由五个阶段组成:

  1. 岗位要求
  2. 设计
  3. SAP系统集成计划实施
  4. 验证(测试)
  5. 维护(部署)

那么什么时候应该使用瀑布方法呢? 水流如水,一切都要清清楚楚。 这意味着目标已定义,团队对技术堆栈了如指掌,项目要素也已就位,以确保流程顺利有效。 

但让我们回到现实。 数据科学项目是否像水一样容易流动? 不。它们需要大量的实验、需求变更等等。 但是,这并不意味着您不能使用瀑布方法的元素。 瀑布方法需要大量规划。 如果你计划好一切,是的,你可能仍然会遇到一两个问题,但过程中的挑战会更少,也不会那么严峻。 

敏捷方法论

敏捷方法 诞生于 2001 年初,当时 17 个人聚集在一起讨论软件开发的未来。 它建立在 4 项核心价值观和 12 条原则的基础上。

The agile methodology is more in line with today’s technology, as it works in a fast-paced, ever-changing technology industry. If you are a tech professional, you know that the requirements in a data science or software project change all the time. Therefore, having the right method in place which allows you to quickly adapt to these changes is important.

The agile methodology is a perfect data science project management method as it allows the team to continuously review the requirements of the project as it grows. Executives and data science managers can make decisions about changes that need to be made during the development process, rather than at the end once it’s all complete. 

随着模型不断发展以反映以用户为中心的输出,这已被证明是非常有效的,从而节省了时间、金钱和精力。 

敏捷方法的一个例子是 争球。 Scrum 方法使用一个框架,该框架有助于使用一组价值观、原则和实践在团队中创建结构。 例如,使用 Scrum,数据科学项目可以将其较大的项目分解为一系列较小的项目。 这些小型项目中的每一个都将被称为冲刺,并包含冲刺计划,以定义目标、要求、责任等。 

混合方法论

为什么不一起使用两种不同的方法呢? 这称为混合方法,其中使用两种或多种方法来创建对业务完全独特的方法。 公司可以对所有类型的项目使用混合方法,但是,其背后的原因取决于产品交付。 

For example, if a customer requires a product but is not happy with the timeframe of production based on using sprints in an Agile method. So it seems like the company needs to do a bit more planning right? What method has a lot of planning? Yes, that’s right, Waterfall. The company can adopt waterfall into their method to cater specifically for the customer’s requirement. 

Some companies may have mixed emotions about combining an agile method with a non-agile method such as Waterfall. These two methods can co-exist, however, it is the company’s responsibility to ensure a simple approach that makes sense, measure the success of the hybrid method, and provide productivity. 

研究和开发

有些人可能认为这是一种方法论,但是,我相信这是数据科学项目过程的重要基础。 就像瀑布方法一样,计划和准备尽可能多的信息没有什么坏处。

但这不是我在这里谈论的。 是的,在开始一个项目之前研究一切是很棒的。 但确保有效项目管理的一个好方法是将您的项目视为研发项目。 它是数据科学团队协作的有效工具。

在运行和操作你的数据科学项目之前,你需要先走路,就像它是一篇研究论文一样。 一些数据科学项目的截止日期很严格,这使得这个过程变得困难,但是,匆忙完成最终产品总是会带来进一步的挑战。 您希望构建一个有效且成功的模型来满足您的初始数据科学生命周期阶段:业务理解。 

数据科学项目的研究和开发为创新敞开了大门,增加了创造力,并且不限制团队接受可能更伟大的东西!

尽管有不同的方法可供选择,但最终还是取决于企业的运营。 有些方法在一家公司流行,但对于另一家公司来说可能不是最好的方法。 

每个人可能有不同的工作方式,因此最好的方法是创建一种适合每个人的方法。 

想要了解如何自动化数据科学工作流程,请阅读以下内容: 数据科学工作流程中的自动化.
 
 
妮莎·艾莉亚 是 KDnuggets 的数据科学家、自由技术作家和社区经理。 她对提供数据科学职业建议或教程以及围绕数据科学的理论知识特别感兴趣。 她还希望探索人工智能是/可以有益于人类长寿的不同方式。 一个敏锐的学习者,寻求拓宽她的技术知识和写作技巧,同时帮助指导他人。
 

时间戳记:

更多来自 掘金队