《Python机器学习实践指南》——1.1 数据科学/机器学习的工作流程

1.1 数据科学/机器学习的工作流程

打造机器学习的应用程序,与标准的工程范例在许多方面都是类似的,不过有一个非常重要的方法有所不同:需要将数据作为原材料来处理。数据项目成功与否,很大程度上依赖于你所获数据的质量,以及它是如何被处理的。由于数据的使用属于数据科学的领域,理解数据科学的工作流程对于我们也有所帮助:整个过程要按照图1-1中的顺序,完成六个步骤:获取,检查和探索,清理和准备,建模,评估和最后的部署。

在这个过程中,还经常需要绕回到之前的步骤,例如检查和准备数据,或者是评估和建模,但图1-1所示的内容可以描述该过程较高层次的抽象。

现在让我们详细讨论每一个步骤。

1.1.1 获取

机器学习应用中的数据,可以来自不同的数据源,它可能是通过电子邮件发送的CSV文件,也可能是从服务器中拉取出来的日志,或者它可能需要构建自己的Web爬虫。数据也可能存在不同的格式。在大多数情况下,它是基于文本的数据,但稍后将看到,构建处理图像甚至视频文件的机器学习应用,也是很容易的。不管是什么格式,一旦锁定了某种数据,那么了解该数据中有什么以及没有什么,就变得非常重要了。

1.1.2 检查和探索

一旦获得了数据,下一步就是检查和探索它们。在这个阶段中,主要的目标是合理地检查数据,而实现这一点的最好办法是发现不可能或几乎不可能的事情。举个例子,如果数据具有唯一的标识符,检查是否真的只有一个;如果数据是基于价格的,检查是否总为正数;无论数据是何种类型,检查最极端的情况。它们是否有意义?一个良好的实践是在数据上运行一些简单的统计测试,并将数据可视化。此外,可能还有一些数据是缺失的或不完整的。在本阶段注意到这些是很关键的,因为需要在稍后的清洗和准备阶段中处理它。只有进入模型的数据质量好了,模型的质量才能有保障,所以将这一步做对是非常关键的。

1.1.3 清理和准备

当所有的数据准备就绪,下一步是将它转化为适合于模型使用的格式。这个阶段包括若干过程,例如过滤、聚集、输入和转化。所需的操作类型将很大程度上取决于数据的类型,以及所使用的库和算法的类型。例如,对于基于自然语言的文本,其所需的转换和时间序列数据所需的转换是非常不同的。全书中,我们将会看到一些转换的的例子。

1.1.4 建模

一旦数据的准备完成后,下一阶段就是建模了。在这个阶段中,我们将选择适当的算法,并在数据上训练出一个模型。在这个阶段,有许多最佳实践可以遵循,我们将详细讨论它们,但是基本的步骤包括将数据分割为训练、测试和验证的集合。这种数据的分割可能看上去不合逻辑——尤其是在更多的数据通常会产生更好的模型这种情况下——但正如我们将看到的,这样做可以让我们获得更好的反馈,理解该模型在现实世界中会表现得如何,并避免建模的大忌:过拟合。

1.1.5 评估

一旦模型构建完成并开始进行预测,下一步是了解模型做得有多好。这是评估阶段试图回答的问题。有很多的方式来衡量模型的表现,同样,这在很大程度上依赖于所用数据和模型的类型,不过就整体而言,我们试图回答这样的问题:模型的预测和实际值到底有多接近。有一堆听上去令人混淆的名词,例如根均方误差、欧几里德距离,以及F1得分,但最终,它们还是实际值与预估值之间的距离量度。

1.1.6 部署

一旦模型的表现令人满意,那么下一个步骤就是部署了。根据具体的使用情况,这个阶段可能有不同的形式,但常见的场景包括将其作为另一个大型应用程序中的某个功能特性,一个定制的Web应用程序,甚至只是一个简单的cron作业。

时间: 2024-12-04 00:24:01

《Python机器学习实践指南》——1.1 数据科学/机器学习的工作流程的相关文章

《Python机器学习实践指南》——导读

前言 Python机器学习实践指南 机器学习正在迅速成为数据驱动型世界的一个必备模块.许多不同的领域如机器人.医学.零售和出版等,都需要依赖这门技术.在这本书中,你将学习如何一步步构建真实的机器学习应用程序. 通过易于理解的项目,你将学习如何处理各种类型的数据,如何以及何时应用不同的机器学习技术,包括监督学习和无监督学习. 本书中的每个项目都同时提供了教学和实践.例如,你将学习如何使用聚类技术来发现低价的机票,以及如何使用线性回归找到一间便宜的公寓.本书以通俗易懂.简洁明了的方式,教你如何使用机

《Python机器学习实践指南》——第1章 Python机器学习的生态系统

第1章 Python机器学习的生态系统 Python机器学习实践指南 机器学习正在迅速改变我们的世界.作为人工智能的核心,我们几乎每天都会读到机器学习如何改变日常的生活.一些人认为它会带领我们进入一个风格奇异的高科技乌托邦:而另一些人认为我们正迈向一个高科技天启时代,将与窃取我们工作机会的机器人和无人机敢死队进行持久的战争.不过,虽然权威专家们可能会喜欢讨论这些夸张的未来,但更为平凡的现实是,机器学习正在快速成为我们日常生活的固定装备.随着我们微小但循序渐进地改进自身与计算机以及周围世界之间的互

《Python机器学习实践指南》——1.4 小结

1.4 小结 在本章中,我们介绍了数据科学/机器学习的工作流程.我们学习了如何让数据一步步地通过流水线的每个阶段,从最初的获取一直到最终的部署.本章还涵盖了Python科学栈中最重要的一些功能库及其关键特性. 现在,我们将利用这方面的知识和经验,开始创造独特的.有价值的机器学习应用程序.在下一章,你将看到如何运用回归模型来发现一个便宜的公寓,让我们开始吧!

Python赶超R语言,成为数据科学、机器学习平台中最热门的语言?

近日,kdnuggets做了一个关于数据科学.机器学习语言使用情况的问卷调查,他们分析了954个回答,得出结论--Python已经打败R语言,成为分析.数据科学和机器学习平台中使用频率最高的语言.有关此次问卷更具体的情况如何?笔者将kdnuggets上发表的总结文编译整理如下: 之前我们在kdnuggets上做了这样一个问卷调查,2016.2017两年,在分析.数据科学和机器学习的工作中,你用R语言,还是Python,或两者都用,或选择其他的语言? 通过分析954个回答,我们得出了这样的结论:虽

《Python机器学习实践指南》——1.2 Python库和功能

1.2 Python库和功能 现在,我们已经对数据科学工作流的每一步有了初步的理解,下面来看看在每一步中,存在哪些有用的Python库和功能可供选择. 1.2.1 获取 访问数据常见的方式之一是通过REST风格的API接口,需要知道的库是Python Request库.它被称为给人类使用的HTTP,为API的交互提供了一个整洁和简单的方式. 让我们来看一个使用Requests进行交互的例子,它从GitHub的API中拉取数据.在这里,我们将对该API进行调用,并请求某个用户的starred库列表

13招神技 让你在数据科学和数据分析工作中脱颖而出

然而,可悲的是,只有不到30%的数据科学项目最终实施了.我备受打击的意识到我的努力被浪费了.但是,我不是唯一的一个.几乎,每一个分析家都有同样失望的感觉. 即使在今天,数据科学行业面临的真正挑战是企业和分析人员之间缺乏协调.令我惊讶的是,我甚至注意到,这些人更喜欢坐在同一个办公室里坐在一起. 如果这两种技能的专业人士很普遍,我们就可以看到一个实施可能性更高的项目.在过去的四年里,我花了很多时间思考使一个项目成功的最佳实践. 我发现,如果有个对症的人坐在你的办公室,他能明确定义业务问题,并且诱导你

《Python机器学习实践指南》——1.3 设置机器学习的环境

1.3 设置机器学习的环境 本章已经介绍了一些可以通过pip(Python的包管理器)单独安装的库.不过,我强烈建议你安装预打包的解决方案,例如Continuum's Anaconda Python发行版.这是一个单一的可执行程序,包含几乎所有需要的软件包和依赖者.而且,因为这个发行版是针对Python科学栈的用户,它本质上是一个一劳永逸的解决方案. Anaconda也包括软件包管理器,使得包的更新变得如此简单. 只需简单地键入conda update ,那么库就会被更新到最近的稳定版本.

《Python数据科学实践指南》——0.3 为什么是Python

0.3 为什么是Python 通过书名,各位读者就应该知道这是一本讲解Python编程的书了.数据科学只是个引子,我希望能通过相关的例子和练习激发出读者的兴趣,帮助读者除掉编程这条拦路虎.在很多非计算机相关专业的人的概念里,编程是要归为玄学分类的,通过一堆意义不明的符号就能驱动计算机完成各种各样的任务,是不是有点像魔法师口中所念的咒语.但事实上,计算机只能做两件事情,执行计算并记录结果,只不过它的这两项能力远远超过人类大脑的能力(读者可能看过一些文章,其中有些研究声称尝试估算过人类大脑的计算能力

《Python数据科学实践指南》一0.3 为什么是Python

0.3 为什么是Python 通过书名,各位读者就应该知道这是一本讲解Python编程的书了.数据科学只是个引子,我希望能通过相关的例子和练习激发出读者的兴趣,帮助读者除掉编程这条拦路虎.在很多非计算机相关专业的人的概念里,编程是要归为玄学分类的,通过一堆意义不明的符号就能驱动计算机完成各种各样的任务,是不是有点像魔法师口中所念的咒语.但事实上,计算机只能做两件事情,执行计算并记录结果,只不过它的这两项能力远远超过人类大脑的能力(读者可能看过一些文章,其中有些研究声称尝试估算过人类大脑的计算能力