当前位置: 首页 > 科技观察

统计学和机器学习有什么区别?_0

时间:2023-03-19 17:04:14 科技观察

大数据文摘来源:媒体编译:周家乐、苟小白、蒋宝尚统计学和机器学习的界限一直很模糊。业界和学术界一直认为,机器学习只是统计学的一件光鲜亮丽的外衣。机器学习支持的人工智能也被称为“统计学的延伸”。比如诺贝尔奖获得者托马斯·萨金特曾经说过,人工智能其实就是统计学,但是他用了一个非常华丽的辞藻。萨金特在世界科技创新论坛上表示,人工智能其实就是统计,当然也有一些不同的声音。然而,这种观点的优劣之争充斥着一堆看似高深却含糊不清的争论,着实令人费解。哈佛大学博士生MatthewStewart从统计学和机器学习的区别论证了机器学习和统计学不是同义词;统计模型和机器学习之间的区别。机器学习和统计学之间的主要区别在于它们的目的与大多数人的想法相反,而机器学习实际上已经存在了几十年。一开始,由于当时的计算能力无法满足其大量计算的需求,逐渐被废弃。但近年来,由于信息爆炸带来的数据优势和计算能力优势,机器学习正在迅速复苏。言归正传,如果机器学习和统计是彼此的同义词,为什么我们没有看到每所大学的统计系都关门大吉,改用“机器学习”系呢?因为他们不一样!我经常听到一些关于该主题的模棱两可的陈述,最常见的是这样的陈述:“机器学习和统计学之间的主要区别在于它们的目的。机器学习模型旨在做出最准确的预测。统计模型旨在推断变量之间的关系。虽然这在技术上是正确的,但这样的说法并没有给出特别明确和令人满意的答案。机器学习和统计之间的主要区别确实是它们的目的。但是,说机器学习是关于准确的预测,而统计模型是为推理而设计几乎没有意义,除非你真的精通这些概念。首先,我们必须明白统计和统计建模是不一样的。统计是对数据的数学研究。没有数据就无法进行统计。统计模型是数据模型,主要用于推断不同事物之间的关系s在数据中,或创建可以预测未来值的模型。通常,这两个因此,实际上我们需要从两个方面来讨论:第一,统计与机器学习有何不同;第二,统计模型与机器学习有何不同?说得直白一点,有很多统计模型可以做出预测,但只能做出很差的预测,而机器学习往往会牺牲可解释性来换取强大的预测能力。例如,从线性回归到神经网络,尽管可解释性很差,但预测能力却有了显着提高。从宏观角度来看,这是一个很好的答案。足够好,至少对大多数人来说是这样。然而,在某些情况下,这种说法可能会导致对机器学习和统计建模之间差异的误解。让我们看一个线性回归的例子。统计建模和机器学习在线性回归中的区别可能是由于统计建模和机器学习使用的方法相似,使人们认为它们是一回事。我能理解,但事实并非如此。最明显的例子是线性回归,这可能是造成这种误解的主要原因。线性回归是一种统计方法,通过它我们可以训练线性回归器并通过最小二乘法拟合统计回归模型。可以看出,在这种情况下,前者所做的是所谓的“训练”模型,它只使用数据的一个子集,而训练好的模型表现如何需要通过另一个数据子集来测试。知道。在这个例子中,机器学习的最终目标是在测试集上取得最好的性能。对于后者,我们事先假设数据是具有高斯噪声的线性回归量,然后尝试找到一条最小化所有数据的均方误差的直线。不需要训练或测试集,并且在许多情况下,尤其是在研究中(如下面的传感器示例),建模的目的是描述数据和输出变量之间的关系,而不是对未来数据进行预测。我们称这个过程为统计推断,而不是预测。虽然我们可以用这个模型做预测,这可能是你想的那样,但是评估模型的方式不再是测试集,而是模型参数的显着性和鲁棒性。机器学习(这里特指监督学习)的目的是获得可重复的预测模型。我们通常不关心模型是否可解释。机器学习只关心结果。就像对公司来说,你的价值只用你的表现来衡量。统计建模更多的是寻找变量之间的关系,并确定关系的显着性,这恰好迎合了预测。让我举一个我自己的例子来说明两者之间的区别。我是一名环境科学家。工作的主要内容是处理传感器数据。如果我试图证明传感器对特定刺激(例如气体浓度)有反应,那么我会使用统计模型来确定信号响应是否具有统计显着性。我会尝试理解这种关系并测试其可重复性,以便我可以准确地描述传感器响应并从这些数据中做出推论。我也可以测试,响应是线性的吗?响应是由于气体浓度而不是传感器中的随机噪声引起的吗?ETC。同时,我还可以从20个不同的传感器中获取数据,并尝试预测可以用它们表征的传感器的响应。如果你不太了解传感器,这可能看起来很奇怪,但它是目前环境科学的一个重要研究领域。使用包含20个不同变量的模型来表征传感器的输出显然具有预测性,我不希望该模型具有可解释性。请注意,由于化学动力学的非线性以及物理变量与气体浓度之间的关系等因素,该模型可能非常深奥,难以解释为神经网络。尽管我希望模型具有可读性,但只要它做出准确的预测,我就非常高兴。如果我试图证明数据变量之间的关系在某种程度上具有统计显着性,以便我可以在科学论文中发表它,我会使用统计模型而不是机器学习。这是因为我更关心变量之间的关系而不是做出预测。做出预测可能仍然很重要,但大多数机器学习算法缺乏可解释性,因此很难证明数据中存在的关系。显然,这两种方法的目标不同,尽管使用相似的方法来实现它们。机器学习算法的评估使用测试集来验证其准确性。然而,对于统计模型,可以使用置信区间回归参数分析、显着性检验和其他检验来评估模型的合法性。因为这些方法产生相同的结果,所以很容易理解为什么人们会认为它们是相同的。关于线性回归的统计学和机器学习之间的区别,存在一个长达10年的误解:仅仅因为这两个术语都使用相同的概率基本概念这一事实而混淆这两个术语是不合理的。但是,仅仅因为这两个术语都使用相同的概率基本概念这一事实就将这两个术语混淆是不合理的。就像,如果我们只是把机器学习看作是披着光鲜外衣的统计学,我们也可以这样说:物理学只是数学的一种更好的表达方式。动物学只是集邮的一个更好的词。建筑只是沙堡建筑的一个更好的词。这些说法(尤其是最后一个)是荒谬的,完全混淆了两个相似想法的术语。事实上,物理学是以数学为基础的,理解现实中的物理现象就是数学的应用。物理学还包括统计学的各个方面,现代统计学通常建立在Zermelo-Frankel集合论与测量论相结合的框架内,以产生概率空间。他们有很多共同点,因为他们来自相似的起源,并使用相似的思想得出合乎逻辑的结论。同样,建筑和沙堡建筑可能有很多共同点,但即使我不是建筑师也无法给出明确的解释,但很明显它们是不一样的。在我们继续之前,需要简要澄清另外两个与机器学习和统计相关的常见误解。这就是人工智能与机器学习的不同之处,以及数据科学与统计学的不同之处。这些都是没有争议的问题,所以很快就会清楚。数据科学本质上是应用于数据的计算和统计方法,无论是小型数据集还是大型数据集。它还包括诸如探索性数据分析之类的内容,例如检查和可视化数据以帮助科学家更好地理解数据并从中得出推论。数据科学还包括数据打包和预处理等内容,因此涉及一定程度的计算机科学,因为它涉及编码和构建数据库、网络服务器之间的连接和流水线等。做统计,不一定要依赖电脑,但是如果是数据科学,就离不开电脑。这再次说明,数据科学虽然用到了统计学,但这两者并不是一个概念。同样,机器学习不是人工智能;事实上,机器学习是人工智能的一个分支。这是显而易见的,因为我们“教”(训练)机器根据过去的数据对特定类型的数据进行一般预测。机器学习是基于统计学的在我们讨论统计学和机器学习之间的差异之前,让我们谈谈相似之处,这些在文章的前半部分已经讨论过了。机器学习基于统计框架,这是显而易见的,因为机器学习涉及数据,而数据必须用统计框架来描述。然而,扩展到大量粒子热力学的统计机制也建立在统计框架内。压力的概念其实就是数据,温度也是一种数据。您可能认为这听起来不合理,但这是事实。这就是为什么你不能描述分子的温度或压力,这是没有意义的。温度是分子碰撞产生的平均能量的指标。比如房子或者室外,分子数量很多,我们可以用温度来描述也是合理的。您认为热力学和统计学是一回事吗?当然不是,热力学使用统计数据来帮助我们理解传递现象中产生的运动和热量的相互作用。事实上,热力学基于许多学科,而不仅仅是统计学。同样,机器学习基于许多其他领域的内容,例如数学和计算机科学。例如:机器学习的理论来源于数学和统计学机器学习算法基于优化理论、矩阵代数和微积分机器学习的实现来源于计算机科学和工程的概念,如内核映射、特征哈希等。当一个人开始用Python编程,突然从Sklearn库中发现并使用这些算法时,上面的很多概念都比较抽象,所以很难看出区别。在这种情况下,这种抽象的定义也会在一定程度上导致人们对机器学习的真正组成部分一无所知。统计学习理论——机器学习的统计基础统计和机器学习的主要区别在于统计完全基于概率空间。你可以从集合论中推导出整个统计数据,它讨论了我们如何将数据分组到类别中(这些类别称为“集合”),然后对该集合执行一些测量,总和为1。我们称这种方法为概率空间.除了定义这些集合和度量之外,统计数据不做任何假设。这就是为什么我们对概率空间的定义非常严格。概率空间,其数学符号为(Ω,F,P),由三部分组成:样本空间,Ω,它是所有可能结果的集合。事件集合F,每个事件包含0或其他一些值。每个事件的概率被分配一个概率P,它是事件到概率的函数。机器学习基于统计学习理论,该理论仍然基于概率空间的公理化语言。该理论基于传统统计理论,于1860年代发展起来。机器学习分为几类,在这篇文章中我将只关注监督学习理论,因为它最容易解释(尽管仍然深奥,因为它充满了数学概念)。统计学习理论中的监督学习给了我们一个数据集,我们标记为S={(x?,y?)},也就是说,我们有一个包含N个数据点的数据集,每个数据点由其他值描述称为“特征”,这些特征用x来描述,这些特征的特征是通过特定的函数来返回我们想要的y值。给定这个数据集,问如何找到将x值映射到y值的函数。我们将描述映射过程的所有可能函数的集合称为假设空间。为了找到这个函数,我们需要给算法一些方法来“学习”如何最好地解决问题,这是由一个叫做“损失函数”的概念提供的。因此,对于我们的每一个假设(即提议的函数),我们都希望通过比较其在所有数据下的预期风险值来衡量该函数的性能。预期风险本质上是损失函数乘以数据概率分布的总和。如果我们知道这个映射的联合概率分布,找到***函数就很简单了。但是这个联合概率分布通常是未知的,所以我们最好的办法是猜测一个最优函数,然后凭经验验证损失函数是否优化。我们将此称为经验风险。然后我们可以比较不同的函数以找到具有最小预期风险的假设,即产生所有函数中最小下确界的假设。然而,算法倾向于通过过度拟合来作弊以最小化损失函数。这就是为什么需要通过训练集“学习”函数,然后在训练集外的数据集和测试集中验证函数。我们如何定义机器学习的本质提出了过度拟合的问题,并解释了将训练集和测试集分开的必要性。虽然我们不需要尝试最小化统计中的经验风险,但过度拟合并不是统计的固有特征。统计中的最小化不需要查看过程。从函数选择中最小化经验风险的学习算法称为经验风险最小化。以线性回归为例。在传统的概念中,我们试图最小化数据中的误差,以找到一个可以描述数据的函数。在这种情况下,我们通常使用均值方差。使用平方数是为了使正值和负值不会相互抵消。然后我们可以使用封闭表达式来找到回归系数。如果我们将损失函数算作均值-方差,并根据统计学习理论进行经验风险最小化,恰好得到与传统线性回归分析相同的结果。这种巧合是因为两种情况是一样的,在同样的数据上用同样的方法求解***概率自然会得到同样的结果。优化概率有不同的方法来实现相同的目标,但没有人会争辩说优化概率和线性回归是一回事。这个最简单的例子显然无法区分这些方法。这里要指出的第二点是传统统计方法中没有训练集和测试集的概念,但是我们会使用不同的指标来帮助验证模型。验证过程不同,但两种方法都能够为我们提供统计上可靠的结果。还有一点要指出的是,传统的统计方法给我们的是一个封闭形式的最优解,它并没有测试其他可能的函数是否收敛到一个结果。相反,机器学习方法尝试一批不同的模型,最后结合回归算法的结果,收敛到一个最终的假设。如果我们使用不同的损失函数,结果可能不会收敛。例如,如果我们使用了hingeloss(当使用标准梯度下降时它的判别力不是很好,因此我们需要使用其他方法,如近梯度下降),那么结果将不一样。***可以区分模型偏差。您可以使用机器学习算法来测试线性模型以及多项式模型、指数模型等,看看这些假设是否比我们之前的损失函数更适合数据集。在传统的统计概念中,我们选择一个模型并评估其准确性,但没有办法从100个不同的模型中自动挑选出最好的一个。显然,由于一开始选择的算法不同,发现的模型总会存在一些偏差。选择算法非常必要,因为为数据集找到最佳方程是一个NP-hard问题。那么哪种方法更好呢?这个问题其实很愚蠢。没有统计学,机器学习根本不存在,但由于人类在当代信息爆炸中所接触到的海量数据,机器学习非常有用。比较机器学习和统计模型就更难了,你需要根据你的目标来选择哪一个。如果你只是想创建一个预测房价的高精度算法,或者从数据中找出哪些类型的人更容易患某种疾病,机器学习可能是更好的选择。如果您想找到变量之间的关系或从数据中得出推论,统计模型会更好。图中文字:这是你的机器学习系统吗?是的,你从一端将所有数据倒入这一大堆或线性代数中,然后从另一端取答案。如果答案错了怎么办?然后搅拌直到看起来合适。如果你没有很强的统计学背景,你仍然可以学习机器学习并使用它——机器学习库中的抽象概念让你作为一个业余爱好者很容易使用它们,但你仍然需要对统计概念,以避免过度拟合模型或得出一些似是而非的推论。相关报道:https://towardsdatascience.com/the-actual-difference-between-statistics-and-machine-learning-64b49f07ea3?gi=412e8f93e22eDataDigest(id:BigDataDigest)》】戳这里阅读更多好文章作者