Geek 指南:使用 Python 进行机器学习

几年前我第一次听到“机器学习”这个词,说实话,当时我基本上忽略了它。我知道这是一种强大的技术,我也知道它很流行,但我不知道它到底是什么——它旨在解决什么问题,它如何解决这些问题,以及它与我在职业生涯(咨询)和研究生研究中处理的其他类型的问题有什么关系。

但在过去的几年里,机器学习已成为大多数人为了职业发展而不得不关注的话题。尽管名字听起来有点吓人,但机器学习背后的思想并不难理解。此外,大量的开源软件使得任何人都可以在自己的工作或研究中使用机器学习。我认为说机器学习已经对计算机行业和我们的日常生活产生了巨大影响,这并不夸张。

在这本电子书中,我介绍了机器学习背后的基本思想,并展示了如何使用 Python 将机器学习的思想应用于许多不同的问题。我希望当您读完本指南时,您不仅会了解机器学习旨在做什么,还会了解如何将其应用于您自己的工作和研究。

什么是机器学习?

在做任何其他事情之前,让我们先定义一下术语:“机器学习”听起来有点不祥,让人联想到一个类似《黑客帝国》的世界,机器已经接管了一切。但是,至少在我们当前的世界看来,机器学习是一种计算机可以将输入分类的机制。

等等,就这些?不,但这对于思考机器学习来说是一个非常好的起点。

人类的大脑基本上是模式匹配机器,擅长在不同类型的输入中寻找共性;让计算机执行这种分类任务不仅仅是一个令人印象深刻的技巧。这意味着计算机可以查看大量的输入,并尝试对这些输入进行分类。

而且,当然,如果有什么是计算机比人做得更好的,那就是查看大量的数据。

机器学习的相关用途是以某种程度的确定性根据输入预测输出。因此,如果我向您展示一个输入值——例如,一个孩子的年龄——那么您可以预测这个孩子的身高。您的预测会准确吗?不会,但这没关系;机器学习使用统计推理。因此,您正在寻找可能的Outcome,而不是确定的Outcome。

因为这是统计学家多年来一直在做的事情,所以肯定有人会问机器学习与仅仅是统计学有什么不同。一种可能的答案是,回归,统计学的基石之一,只是机器学习中使用的一种模型。

例如,假设您是一家信用卡公司,您正在尝试确定购买是合法的还是欺诈性的。误报太多,您的客户会生气。误报太少,您很快就会破产。机器学习使得分析某人的购买历史并确定购买可能是好的还是坏的成为可能。

另一个常见且著名的例子是识别电子邮件垃圾邮件。过去,垃圾邮件不仅令人讨厌,而且很容易识别。今天,垃圾邮件发送者使用各种技术使他们的电子邮件看起来合法。机器学习允许计算机随着时间的推移积累信息,从而越来越清楚地了解什么是被认为是合法的消息。

当然,如果您在过去十年中在网上购买过任何东西,您可能已经被告知“购买此产品的人也购买了...”,后面跟着一长串东西,当您仔细想想时,这些东西实际上是您感兴趣的。这种分类也可以使用机器学习来解决。随着更多信息被输入到系统中,它可以越来越准确地预测某人可能想要购买(或已经从另一家商店购买)的东西。

如您所见,可以使用机器学习解决的问题的数量和类型是庞大且多样的。回想一下克劳德·香农和其他人第一次提出人们可以将布尔逻辑编码到电路中的时候。您会想到今天我们会将强大的计算机(手机)放在口袋里,毫不费力地在全球范围内分享视频和电子邮件消息吗?同样,我们才刚刚开始一场机器学习的革命,它最终会发展到什么程度还有待观察。

获取完整 Geek 指南

Reuven Lerner 在世界各地的公司教授 Python、数据科学和 Git。您可以订阅他的免费每周“更好的开发者”电子邮件列表,并从他的书籍和课程中学习,网址为 http://lerner.co.il。Reuven 与他的妻子和孩子住在以色列的莫迪因。

加载 Disqus 评论