机器学习的视觉介绍

在机器学习中,计算机应用统计学习技术来自动识别数据中的模式。这些技术可用于进行高度准确的预测。

继续向下滑。使用有关家庭的数据集,我们将创建一个机器学习模型,以区分纽约的家庭和旧金山的家庭。

首先,一些直觉

假设你必须确定一个家是在旧金山(图中绿色部分)还是在纽约(图中蓝色部分)。在机器学习术语中,分类数据点是分类任务。

由于旧金山比较崎岖,房屋的高度可能是区分这两个城市的好方法。

根据下面的住宅高程数据,您可以争辩说,73米(即239.5ft)以上的住宅应归类为旧金山的住宅。

增加细微差别

添加另一个维度可以带来更多细微差别。例如,纽约的公寓每平方英尺可能非常昂贵。

因此,在散点图中可视化每平方英尺的高程和价格有助于我们区分低海拔的房屋。

数据表明,在73米或以下的房屋中,每平方米成本超过19,116.7美元的房屋位于纽约市。

数据集中的尺寸被称为特征预测变量

绘制边界

您可以将海拔高度(> 73 m)和每平方英尺价格(> $ 19,116.7)观测值视为散点图中区域的边界。在绿色和蓝色区域绘制的房屋将分别位于旧金山和纽约。

使用数学识别数据边界是统计学习的本质。

当然,您需要额外的信息来区分较低海拔和较低每平方英尺价格的房屋。

我们用于创建模型的数据集有7个不同的维度。创建模型也称为训练模型。

在下图,我们可以在散点图矩阵中可视化变量,以显示每对维度之间的关系。

数据中有明显的模式,但描述它们的界限并不明显。

现在,机器学习

在数据中寻找模式是机器学习的用武之地。机器学习方法使用统计学习来识别边界。

机器学习方法的一个示例是决策树。决策树一次查看一个变量,并且是一种合理可访问(尽管是基本的)机器学习方法。

寻找更好的界限

让我们重新审视之前提出的73米高程边界,看看我们如何改进我们的直觉。

显然,这需要一个不同的视角。

通过将我们的可视化转换为直方图,我们可以更好地了解房屋在每个高程出现的频率。

虽然纽约最高的住宅是73米,但大多数住宅的高程似乎都要低得多。

你的第一个叉子

决策树使用if-then语句来定义数据中的模式。

例如,如果房屋的海拔高于某个数字,那么房屋可能位于旧金山。

在机器学习中,这些语句称为forks,它们根据某些值将数据拆分为两个分支

分支之间的值称为分裂点。这一点左侧的房屋以一种方式分类,而右边的房屋则分类为另一种方式。分裂点是决策树的边界版本。

权衡

选择分裂点需要权衡。我们最初的拆分(约73米)错误地将旧金山的一些房屋归类为纽约房屋。

看看下图饼图中的那片大片绿色,这些都是错误分类的旧金山房屋。这些被称为假阴性

然而,分裂点意味着占领旧金山的每个家庭也将包括许多纽约的家。这些被称为误报

最好的分裂

最佳分割时,每个分支的结果应尽可能均匀(或纯)。您可以选择几种数学方法来计算最佳分割。

正如我们在这里看到的那样,即使是单一功能上的最佳分割也不能将旧金山的房屋与纽约房屋完全分开。

递归

要添加另一个分割点,算法会在数据子集上重复上述过程。这种重复称为递归,它是一种在训练模型中经常出现的概念。

上边的直方图显示了每个子集的分布,对每个变量重复。

最佳分割将根据您正在查看的树的哪个分支而有所不同。

对于低海拔住宅,每平方英尺的价格为每平方英尺1061美元,是下一个if-then声明的最佳变量。对于较高海拔的房屋,价格为514,500美元

生长一棵树

额外的叉子将添加可以提高树的预测准确性的新信息。

更深一层,树的精度提高到84%

再添加几层,我们得到96%

您甚至可以继续添加分支,直到树的预测100%准确,这样在每个分支的末尾,这些房屋纯粹在旧金山或纯粹在纽约。

树的这些最终分支称为叶节点。我们的决策树模型将根据哪个类别的家庭占多数来对每个叶子节点中的家庭进行分类。

做出预测

新训练的决策树模型通过在分支中运行每个数据点来确定家庭是在旧金山还是纽约。

在这里,您可以看到用于训练树流过树的数据。

此数据称为训练数据,因为它用于训练模型。

因为我们将树生长到100%准确,所以这棵树将每个训练数据点完美地映射到它所在的城市。

现实检查

当然,更重要的是树如何对以前看不见的数据执行。

要测试树在新数据上的性能,我们需要将它应用于以前从未见过的数据点。此先前未使用的数据称为测试数据

理想情况下,树应该对已知和未知数据执行类似操作。

所以这个不太理想。

这些错误是由于过度拟合造成的。我们的模型已经学会将训练数据中的每个细节都视为重要,甚至是细节,这些细节都是无关紧要的。

概括

机器学习通过挖掘数据集中的边界,使用统计学习和计算机识别模式。您可以使用它来进行预测。

一种进行预测的方法称为决策树,它使用一系列if-then语句来识别边界并定义数据中的模式。

当一些边界基于没有区别的区别时,会发生过度拟合。您可以通过让测试数据流过模型来查看模型是否过度拟合

过度拟合是机器学习基本概念的一部分。


返回课程:《Google广告投放指南》