# 机器学习中的对照试验

> 原文： [https://machinelearningmastery.com/controlled-experiments-in-machine-learning/](https://machinelearningmastery.com/controlled-experiments-in-machine-learning/)

系统实验是应用机器学习的关键部分。

鉴于机器学习方法的复杂性，它们抵制正式的分析方法。因此，我们必须从经验上了解算法对我们特定问题的行为。我们使用对照实验来做到这一点

在本教程中，您将发现对照试验在应用机器学习中的重要作用。

完成本教程后，您将了解：

*   需要通过对照实验进行系统发现。
*   需要重复实验以控制方差的来源。
*   在机器学习中进行的实验示例以及它们所代表的挑战和机遇。

让我们开始吧。

![Controlled Experiments in Machine Learning](img/977cd3894fd506cfe11bb8b525683cc0.jpg)

机器学习中的对照试验
照片由 [Mike Baird](https://www.flickr.com/photos/mikebaird/1723372755/) 拍摄，保留一些权利。

## 教程概述

本教程分为3个部分;他们是：

1.  系统实验
2.  控制方差
3.  机器学习实验

## 系统实验

在应用机器学习中，您必须成为科学家并进行系统实验。

您关心的问题的答案，例如哪种算法最适合您的数据或使用哪些输入功能，只能通过实验试验的结果找到。

这主要是因为机器学习方法很复杂并且抵制正式的分析方法。

> [...]许多学习算法对于正式分析来说过于复杂，至少在大多数理论处理所假设的普遍性水平上都是如此。因此，机器学习算法行为的实证研究必须保持核心作用。

- [机器学习的实验研究](https://dl.acm.org/citation.cfm?id=637939)，1991。

在统计学中，一种实验的选择被称为[实验设计](https://en.wikipedia.org/wiki/Design_of_experiments)，并且有许多类型的实验可供选择。例如，您可能已经听说[随机双盲安慰剂对照实验](https://en.wikipedia.org/wiki/Blinded_experiment)作为评估医学治疗有效性的金标准。

应用机器学习的特殊之处在于我们可以完全控制实验，我们可以在计算机上运行尽可能少的试验。由于易于运行实验，因此我们运行正确类型的实验非常重要。

> 在自然科学中，人们永远无法控制所有可能的变量。 [...]作为人工科学，机器学习通常可以避免这种并发症。

- [机器学习作为实验科学](https://link.springer.com/article/10.1023%2FA%3A1022623814640?LI=true)，编辑，1998。

我们希望进行的实验类型称为[对照实验](https://en.wikipedia.org/wiki/Scientific_control)。

这些实验中所有已知的自变量保持不变并一次修改一个，以确定它们对因变量的影响。将结果与基线或无治疗进行比较，称为“_控制_。”这可能是基线方法（如持久性或零规则算法或方法的默认配置）的结果。

> 正如通常所定义的，实验涉及系统地改变一个或多个自变量并检查它们对某些因变量的影响。因此，机器学习实验需要不止一次学习;它需要在不同条件下进行多次运行。在每种情况下，必须测量系统行为的某些方面，以便在不同条件下进行比较。

— [Machine Learning as an Experimental Science](https://link.springer.com/article/10.1023%2FA%3A1022623814640?LI=true), Editorial, 1998.

## 控制方差

在许多方面，使用机器学习方法的实验与[模拟研究](https://en.wikipedia.org/wiki/Computer_experiment)（例如物理学中的那些）相比，与评估医学治疗相比具有更多共同点。

因此，单个实验的结果是概率性的，受到变化的影响。

在我们的对照实验中，我们试图理解两种主要的方差类型;他们是：

*   **数据**中的差异，例如用于训练学习算法的数据和用于评估其技能的数据。
*   **模型**中的方差，例如在学习算法中使用随机性，例如神经网络中的随机初始权重，套袋中切割点的选择，随机梯度下降中数据的随机排序等等。

鉴于这些方差来源，单次运行或对照试验的试验结果会产生误导。

实验必须控制这些方差来源。这是通过多次重复实验试验以引出方差范围来完成的，这样我们都可以报告预期结果和预期结果的方差，例如：平均值和置信区间。

在模拟研究中，例如蒙特卡罗方法，重复实验称为[方差减少](https://en.wikipedia.org/wiki/Variance_reduction)。

## 机器学习实验

实验是应用机器学习的关键部分。

这对于必须学习严谨的初学者和发现和贡献的令人兴奋的机会来说都是一个挑战。

让我们通过一些您可能需要执行的对照试验类型的示例来具体化：

*   **选择功能实验**。在确定哪些数据特征（输入变量）与模型最相关时，独立变量可以是输入特征，因变量可以是模型对未见数据的估计技能。
*   **调整模型实验**。在调整机器学习模型时，自变量可以是学习算法的超参数，因变量可以是模型对未见数据的估计技能。
*   **比较模型实验**。当比较机器学习模型的表现时，自变量可以是具有特定配置的学习算法本身，因变量是模型对未见数据的估计技能。

是什么让应用机器学习的实验焦点如此令人兴奋是两个方面：

*   **发现**。您可以发现哪种方法最适合您的特定问题和数据。挑战和机遇。
*   **贡献**。您可以在该领域进行更广泛的发现，除了严格和系统的实验之外，没有任何专业知识。

使用现成的工具和精心的实验方法，您可以发现和贡献。

> 总之，机器学习占据了一个幸运的位置，使系统实验变得容易和有利可图。 [...]虽然实验研究不是理解的唯一途径，但我们认为它们是机器学习对于快速科学进步最明智的希望之一，我们鼓励其他研究人员加入我们的领域，向实验科学发展。

— [The Experimental Study of Machine Learning](https://dl.acm.org/citation.cfm?id=637939), 1991.

## 进一步阅读

如果您希望深入了解，本节将提供有关该主题的更多资源。

### 图书

*   [计算机实验的设计与分析](https://amzn.to/2Ge4yAP)，2003。
*   [人工智能的经验方法](https://amzn.to/2GdUPut)，1995。

### 文件

*   [机器学习作为实验科学](https://link.springer.com/article/10.1023%2FA%3A1022623814640?LI=true)，编辑，1998。
*   [机器学习的实验研究](https://dl.acm.org/citation.cfm?id=637939)，1991。
*   [机器学习作为实验科学（重访）](http://www.aaai.org/Papers/Workshops/2006/WS-06-06/WS06-06-002.pdf)，2006。

### 用品

*   [维基百科上的科学控制](https://en.wikipedia.org/wiki/Scientific_control)
*   [维基百科上的实验设计](https://en.wikipedia.org/wiki/Design_of_experiments)
*   [维基百科上的盲目实验](https://en.wikipedia.org/wiki/Blinded_experiment)
*   [控制维基百科上的变量](https://en.wikipedia.org/wiki/Controlling_for_a_variable)
*   [维基百科上的计算机实验](https://en.wikipedia.org/wiki/Computer_experiment)
*   [维基百科上的方差减少](https://en.wikipedia.org/wiki/Variance_reduction)

### 摘要

在本教程中，您发现了对照试验在应用机器学习中的重要作用。

具体来说，你学到了：

*   需要通过对照实验进行系统发现。
*   需要重复实验以控制方差的来源。
*   在机器学习中进行的实验示例以及它们所代表的挑战和机遇。

你有任何问题吗？
在下面的评论中提出您的问题，我会尽力回答。