第9章 Anaconda中的监督学习

由于大多数读者都能够理解函数y=f(x)的格式,因此本书使用它来解释监督学习。当yx同时存在时,我们可以运行不同的回归来识别正确的函数形式,这就是监督学习的精髓。对于监督学习,我们有两个数据集:训练数据和测试数据。通常,训练集有一组输入变量x,和一个相关的输出值y(即监督信号)。监督学习算法会分析训练数据并生成一个推断的函数形式。然后,我们应用这个推断的函数来映射测试数据集。

在本章中,我们将讨论以下主题:

  • 监督学习概览
  • 分类
  • 监督学习的R、Python、Julia及Octave实现
  • R中机器学习的任务视图

在上一章中,我们讨论了无监督学习,其中仅仅存在输入数据,即对函数y=f(x)而言,只有输入数据x。与无监督学习不同,对于监督学习来说我们既有输入x又有对应的输出y。我们的任务是根据训练数据集,找到最佳的函数来将xy联系起来。在监督学习中,训练数据集由一个输入对象和一个期望的输出值组成,其中输入值通常是一个向量,而输出值可以是二进制值、分类值、离散值或连续值。监督学习算法会检查给定的训练数据集,并生成一个推导的最佳拟合函数。为了验证这个推导函数的准确性,我们使用第二个数据集,即测试集。

理想情况下,样本尺寸应该很大。然而,很多情况下并非如此,这时我们可以使用bootstrap方法从样本中估计统计量。Bootstrap Aggregation算法用于从单个训练数据集创建多个不同的模型。事实上,随机森林是通过bagging对决策树集成的一种名称,它最终成为一个非常强大的分类器。

我们以著名的泰坦尼克号悲剧为例。1912年,在它的处女航中泰坦尼克号撞上冰山之后沉没了,船上的乘客和船员共1500多人丧生。首先,我们看一下这个简单的数据集。读者可以从作者的网站下载R代码: ...

Get Anaconda数据科学实战 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.