我正在学习一些统计和机器学习课程,我意识到在进行一些模型比较时,统计使用假设检验,而机器学习使用度量。所以,我想知道,这是为什么呢?
为什么机器学习有准确度、精确度或召回率等指标来证明最佳模型,而统计学使用假设检验?
原则上,假设检验和机器学习之间不一定有任何紧张关系。例如,如果您训练 2 个模型,那么询问模型是否具有相同或不同的准确度(或其他感兴趣的统计数据)并执行假设检验是完全合理的。
但实际上,研究人员并不总是这样做。我只能推测原因,但我想有几个非排他性的原因:
- 数据收集的规模如此之大,以至于统计量的方差非常小。具有几乎相同分数的两个模型将被检测为“统计学上不同”,即使该差异的大小对其实际操作并不重要。在稍微不同的情况下,如果部署模型 A 的成本大于提高的准确性所暗示的边际回报,那么在统计上确定模型 A 比模型 B 准确度高 0.001% 只是琐事。
- 这些模型的训练成本很高。根据要统计测试的数量和方式,这可能需要重新训练模型,因此该测试可能会令人望而却步。例如,交叉验证涉及重新训练相同的模型,通常是 3 到 10 次。为一个花费数百万美元训练一次的模型这样做的模型执行此操作可能会使交叉验证不可行。
- 关于机器学习模型泛化的更相关问题实际上并不是关于在实验室的受控环境中重复建模过程的结果,实验室的数据收集和模型解释由专家进行。机器学习的许多更令人担忧的失败源于在不受控制的环境中部署机器学习模型,其中数据可能以不同的方式收集,模型应用超出其预期范围,或者用户能够制作恶意输入以获得具体结果。
- 研究人员根本不知道如何对他们的模型或感兴趣的统计数据进行统计假设检验。
这通常是因为统计中假设检验的用例(至少从历史上看)通常是简单地进行概括。机器学习的用例是建立一个有用的模型,通常是在相应的泛化假设下。
以Fisher 的 Iris Flower Dataset为例。有人可能会问的一个问题是“ setosa、virginica和versicolor的萼片长度平均不同吗?” 我们可以用科学的方法来解决这个问题:
- 假设它们具有相同的萼片长度。(公元前这是可证伪的)
- 试图收集相反的证据。
- 证据有力吗?如果是这样,丢弃相同萼片长度的假设。
这- 假设检验中的值试图帮助回答“证据是否强大?” 这个过程中的问题。
在 ML 设置中,通常假设这些物种的不同之处在于,例如,萼片长度。要问的问题可能是“我们能预测 { setosa , virginica , versicolor} 从萼片长度?” 建立了一个模型,它从萼片长度预测物种的能力是通过精度、召回率、准确率等来衡量的。请注意,由于有许多可能的模型,精度、召回率和准确率可能会或可能不会首先向您提供有关那里是否存在关系的信息。因此,例如,我们建立一个决策树来根据萼片长度区分这些物种,它报告的准确率为 33%(即没有比猜测好)——这是否意味着没有关系,或者只是你选择了错误的模型?
当然,从某种意义上说,假设检验过程还涉及建立和评估模型。然而,该模型通常甚至没有被明确使用:它只是告知我们用来获得“物种是否因萼片长度而不同?”的特定方程。
任何东西都可以被视为“指标”,统计学家和机器学习者都使用大量这些指标:准确性、平均值、模型的估计参数等。假设检验是在这些“指标”之上进行的为了衡量他们的不确定性。
例如,如果您有 5 名男学生和 5 名女学生,您可以测量他们的身高并获得男女平均身高差的“度量标准”。但是你得到的数字并不能反映所有男性和所有女性之间的真正平均差异。假设检验试图检查关于总体的假设是否与观察到的“度量”一致。
机器学习中的精度测量也是如此。你建立一个模型,使用一个包含 100 个样本的测试集,你会得到 88% 的准确率。但这只是衡量 100 个样本的准确度,而不是真正的准确度。如果你使用另外 100 个样本,你会得到一个稍微不同的数字。因此,鉴于一组 100 个样本的准确度——我们能说一下这个分类器的真实准确度吗?这就是假设检验的用武之地。它允许我们回答诸如“如果模型的真实准确度为 75%,在我的 100 个样本上获得 88% 的准确度会有多令人惊讶”之类的问题。