当前位置: 首页 > news >正文

统计学和机器学习之间的联系和区别

一、说明

        老实说,我厌倦了几乎每天都在社交媒体和我的大学里听到这场辩论。通常,这伴随着一些模糊的陈述来解释这个问题。双方都为此感到内疚。我希望在本文结束时,您将对这些有些模糊的术语有更明智的立场。

二、论点

        与普遍的看法相反,机器学习已经存在了几十年。它最初因其巨大的计算需求和当时存在的计算能力的限制而被回避。然而,由于信息爆炸产生的数据占主导地位,机器学习近年来出现了复兴。

        那么,如果机器学习和统计学是同义词,为什么我们没有看到每所大学的统计系都关闭或过渡到“机器学习”系呢?因为它们不一样!

        关于这个话题,我经常听到几个模糊的说法,最常见的是这样的:

        “机器学习和统计学之间的主要区别在于它们的目的。机器学习模型旨在实现最准确的预测。统计模型是为推断变量之间的关系而设计的。

        虽然这在技术上是正确的,但它并没有给出特别明确或令人满意的答案。机器学习和统计学之间的主要区别确实是它们的目的。然而,说机器学习是关于准确的预测,而统计模型是为推理而设计的,这几乎是一个毫无意义的陈述,除非你精通这些概念。

        首先,我们必须了解统计和统计模型是不一样的。统计学是对数据的数学研究。除非你有数据,否则无法进行统计。统计模型是数据的模型,用于推断数据中的某些关系或创建能够预测未来值的模型。通常,这两者是齐头并进的。

        因此,我们实际上需要讨论两件事:首先,统计与机器学习有何不同,其次,统计模型与机器学习有何不同。

        为了使这一点更加明确,有许多统计模型可以进行预测,但预测准确性不是它们的强项。

        同样,机器学习模型提供了不同程度的可解释性,从高度可解释的套索回归到难以理解的神经网络,但它们通常会为了预测能力而牺牲可解释性。

        从高层次的角度来看,这是一个很好的答案。对于大多数人来说已经足够了。然而,在某些情况下,这种解释会让我们对机器学习和统计建模之间的差异产生误解。让我们看一下线性回归的例子。

三、统计模型与机器学习 — 线性回归示例

        在我看来,统计建模和机器学习中使用的方法的相似性使人们认为它们是同一件事。这是可以理解的,但根本不是真的。

        最明显的例子是线性回归的情况,这可能是造成这种误解的主要原因。线性回归是一种统计方法,我们可以训练线性回归器并获得与统计回归模型相同的结果,旨在最小化数据点之间的平方误差。

        我们看到,在一种情况下,我们执行了称为“训练”模型的操作,这涉及使用数据子集,并且我们不知道模型的性能如何,直到我们在训练期间不存在的其他数据(称为测试集)上“测试”这些数据。在这种情况下,机器学习的目的是在测试集上获得最佳性能。

        对于统计模型,我们找到一条线,该线最小化所有数据的均方误差,假设数据是添加了一些随机噪声的线性回归量,这通常是高斯的。无需培训,也无需测试集。在许多情况下,特别是在研究中(例如下面的传感器示例),我们模型的重点是表征数据和结果变量之间的关系,而不是对未来数据进行预测。我们称此过程为统计推断,而不是预测。但是,我们仍然可以使用此模型进行预测,这可能是您的主要目的,但评估模型的方式将不涉及测试集,而是涉及评估模型参数的重要性和鲁棒性。

        (监督)机器学习的目的是获得一个可以做出可重复预测的模型。我们通常不在乎模型是否可解释,尽管我个人建议始终进行测试以确保模型预测确实有意义。机器学习是关于结果的,它可能在一家公司工作,你的价值完全取决于你的表现。然而,统计建模更多的是关于发现变量之间的关系以及这些关系的重要性,同时也迎合预测。

        为了具体举例说明这两个程序之间的区别,我将举一个个人的例子。白天,我是一名环境科学家,主要处理传感器数据。如果我试图证明传感器能够响应某种刺激(例如气体浓度),那么我会使用统计模型来确定信号响应是否具有统计意义。我会尝试理解这种关系并测试其可重复性,以便我可以准确地表征传感器响应并根据这些数据进行推断。我可能会测试一些事情是响应是否实际上是线性的,响应是否可以归因于气体浓度而不是传感器中的随机噪声等。

        相比之下,我还可以得到一个由20个不同传感器组成的阵列,我可以用它来尝试预测我新表征的传感器的响应。如果您对传感器了解不多,这可能看起来有点奇怪,但这目前是环境科学的一个重要领域。一个有20个不同变量的模型来预测我的传感器的结果,显然是关于预测的,我并不期望它特别可解释。由于化学动力学以及物理变量与气体浓度之间的关系产生的非线性,该模型可能会像神经网络一样更深奥。我希望这个模型有意义,但只要我能做出准确的预测,我就会很高兴。

        如果我试图证明我的数据变量之间的关系具有一定程度的统计意义,以便我可以将其发表在科学论文中,我会使用统计模型而不是机器学习。这是因为我更关心变量之间的关系,而不是做出预测。做出预测可能仍然很重要,但大多数机器学习算法缺乏可解释性,因此很难证明数据中的关系(这实际上是现在学术研究中的一个大问题,研究人员使用他们不理解的算法并获得似是而非的推论)。

来源: 分析维迪亚

        应该明确的是,这两种方法的目标不同,尽管使用类似的手段来实现目标。机器学习算法的评估使用测试集来验证其准确性。然而,对于统计模型,通过置信区间、显著性检验和其他检验对回归参数的分析可用于评估模型的合法性。由于这些方法产生相同的结果,因此很容易理解为什么人们会假设它们是相同的。

四、统计与机器学习 — 线性回归示例

        我认为这种误解很好地概括在这个表面上诙谐的10年挑战中,比较统计学和机器学习。

        然而,仅仅基于这两个术语都利用了相同的基本概率概念这一事实而将这两个术语混为一谈是不合理的。例如,如果我们声明机器学习只是基于这一事实的美化统计数据,我们也可以做出以下声明。

        物理学只是美化的数学。

        动物学只是美化的邮票收藏。

        建筑只是美化的沙堡建筑。

        这些陈述(尤其是最后一个)非常荒谬,并且都基于将建立在类似想法上的术语混为一谈的想法(用于体系结构示例的双关语)。

        实际上,物理学是建立在数学之上的,它是应用数学来理解现实中存在的物理现象。物理学还包括统计学的各个方面,现代形式的统计学通常是从由Zermelo-Frankel集合论与测度论相结合以产生概率空间的框架构建的。它们都有很多共同点,因为它们来自相似的起源,并应用相似的想法来得出合乎逻辑的结论。同样,建筑和沙堡建筑可能有很多共同点——虽然我不是建筑师,所以我不能给出一个明智的解释——但它们显然是不一样的。

        为了让你了解这场辩论的范围,实际上有一篇发表在《自然方法》上的论文概述了统计学和机器学习之间的区别。这个想法可能看起来很可笑,但这种程度的讨论是必要的,这有点可悲。

        在我们继续之前,我将快速澄清与机器学习和统计学相关的另外两个常见误解。这些是人工智能不同于机器学习,数据科学不同于统计学。这些都是相当无可争议的问题,所以它会很快。

        数据科学本质上是应用于数据的计算和统计方法,这些可以是小型或大型数据集。这还可以包括探索性数据分析之类的东西,其中数据被检查和可视化,以帮助科学家更好地理解数据并从中做出推断。数据科学还包括数据整理和预处理等内容,因此涉及一定程度的计算机科学,因为它涉及编码,在数据库,Web服务器等之间建立连接和管道。

        你不一定需要使用计算机来做统计,但如果没有计算机,你就无法真正做数据科学。你可以再次看到,虽然数据科学使用统计学,但它们显然是不一样的。

        同样,机器学习与人工智能也不相同。事实上,机器学习是人工智能的一个子集。这是非常明显的,因为我们正在教(“训练”)一台机器,以根据以前的数据对某种类型的数据进行可概括的推断。

五、机器学习建立在统计学之上

        在我们讨论统计学和机器学习的不同之处之前,让我们先讨论一下相似之处。我们已经在前面的部分中谈到了这一点。

        机器学习建立在统计框架之上。这应该是显而易见的,因为机器学习涉及数据,并且必须使用统计框架来描述数据。然而,统计力学扩展到大量粒子的热力学,也是建立在统计框架之上的。压力的概念其实是一个统计,温度也是一个统计。如果你认为这听起来很荒谬,很公平,但这实际上是真的。这就是为什么你不能描述分子的温度或压力,这是荒谬的。温度是分子碰撞产生的平均能量的表现形式。对于足够多的分子,我们可以描述房屋或户外的温度是有意义的。

        你会承认热力学和统计学是一样的吗?不,热力学使用统计学来帮助我们以传递现象的形式理解功和热的相互作用。

        事实上,除了统计学之外,热力学是建立在更多项目之上的。同样,机器学习借鉴了数学和计算机科学的大量其他领域,例如:

  • 数学和统计学等领域的ML理论
  • 来自优化、矩阵代数、微积分等领域的 ML 算法
  • 计算机科学与工程概念的ML实现(例如内核技巧,特征散列)

        当一个人开始在Python上编码并开发sklearn库并开始使用这些算法时,很多这些概念都被抽象出来,因此很难看到这些差异。在这种情况下,这种抽象导致了对机器学习实际涉及的内容的无知。

六、统计学习理论——机器学习的统计基础

        统计学和机器学习之间的主要区别在于统计学完全基于概率空间。你可以从集合论中推导出整个统计量,它讨论了我们如何将数字分组到称为集合的类别中,然后对该集合施加一个度量,以确保所有这些的总和值为 1。我们称之为概率空间。

        统计学除了这些集合和度量的概念之外,没有对宇宙做出其他假设。这就是为什么当我们用非常严格的数学术语指定概率空间时,我们指定了 3 件事。

        我们这样表示的概率空间(Ω,F,P)由三部分组成:

  1. 样本空间 Ω,它是所有可能结果的集合。
  2. 一组事件 F,其中每个事件都是包含零个或多个结果的集合。
  3. 事件概率的分配,P;也就是说,从事件到概率的函数。

        机器学习基于统计学习理论,该理论仍然基于概率空间的公理化概念。该理论是在1960年代发展起来的,并在传统统计学的基础上进行了扩展。

        机器学习有几类,因此我在这里只关注监督学习,因为它是最容易解释的(尽管它仍然有些深奥,因为它被埋在数学中)。

        监督学习的统计学习理论告诉我们,我们有一组数据,我们将其表示为 S = {(xi,yi)}。这基本上是说我们是一个由n个数据点组成的数据集,每个数据点都由一些我们称之为特征的其他值描述,这些值由x提供,这些特征由某个函数映射,给我们值y。

        它说我们知道我们有这些数据,我们的目标是找到将 x 值映射到 y 值的函数。我们将所有可能的函数的集合称为假设空间,这些函数可以将此映射描述为假设空间。

        为了找到这个函数,我们必须给算法一些方法来“学习”解决问题的最佳方法。这是由称为损失函数的东西提供的。因此,对于我们拥有的每个假设(提议的函数),我们需要通过查看其对所有数据的预期风险值来评估该函数的性能。

        预期风险本质上是损失函数乘以数据概率分布的总和。如果我们知道映射的联合概率分布,就很容易找到最佳函数。然而,这通常是未知的,因此我们最好的选择是猜测最佳函数,然后凭经验决定损失函数是否更好。我们称之为经验风险

        然后,我们可以比较不同的函数并寻找为我们提供最小预期风险的假设,即给出数据上所有假设的最小值(称为下确值)的假设。

        但是,该算法倾向于作弊,以便通过过度拟合数据来最小化其损失函数。这就是为什么在基于训练集数据学习函数后,该函数会在测试数据集上验证,这些数据没有出现在训练集中。

        我们刚刚定义机器学习的本质引入了过度拟合的问题,并证明了在执行机器学习时需要训练和测试集的合理性。这不是统计学的固有特征,因为我们并没有试图将经验风险降至最低。

        选择最小化经验风险的函数的学习算法称为经验风险最小化。

七、例子

        以线性回归的简单情况为例。在传统意义上,我们试图最小化某些数据之间的误差,以便找到可用于描述数据的函数。在这种情况下,我们通常使用均方误差。我们将其平方,以便正误差和负误差不会相互抵消。然后,我们可以以封闭形式求解回归系数。

        碰巧的是,如果我们把损失函数作为均方误差,并按照统计学习理论的支持执行经验风险最小化,我们最终会得到与传统线性回归分析相同的结果。

        这只是因为这两种情况是等效的,就像对相同的数据执行最大似然也会给你相同的结果一样。最大似然有不同的方式来实现相同的目标,但没有人会争论并说最大似然与线性回归相同。最简单的情况显然无助于区分这些方法。

        这里要强调的另一点是,在传统的统计方法中,没有训练和测试集的概念,但我们确实使用指标来帮助我们检查模型的性能。因此,评估程序是不同的,但两种方法都能够为我们提供统计上稳健的结果。

        还有一点是,这里的传统统计方法给了我们最优解,因为解有一个封闭的形式。它没有测试任何其他假设并收敛到解决方案。然而,机器学习方法尝试了一堆不同的模型,并收敛到最终的假设,这与回归算法的结果一致。

        如果我们使用不同的损失函数,结果就不会收敛。例如,如果我们使用铰链损失(使用标准梯度下降无法区分,因此需要其他技术,如近端梯度下降),那么结果将不相同。

        最终的比较可以通过考虑模型的偏差来进行。人们可以要求机器学习算法测试线性模型,以及多项式模型、指数模型等,看看这些假设是否更适合给定我们的先验损失函数的数据。这类似于增加相关的假设空间。在传统的统计意义上,我们选择一个模型并可以评估其准确性,但不能自动使其从 100 个不同的模型中选择最佳模型。显然,模型中总是存在一些偏差,这源于算法的初始选择。这是必要的,因为找到最适合数据集的任意函数是一个 NP-hard 问题。

八、那么哪个更好呢?

        这实际上是一个愚蠢的问题。就统计与机器学习而言,没有统计数据,机器学习就不会存在,但由于自信息爆炸以来人类可以访问的大量数据,机器学习在现代非常有用。

        比较机器学习和统计模型有点困难。您使用哪个在很大程度上取决于您的目的是什么。如果你只是想创建一个算法,可以高精度地预测房价,或者使用数据来确定某人是否可能感染某些类型的疾病,机器学习可能是更好的方法。如果您试图证明变量之间的关系或从数据中进行推断,统计模型可能是更好的方法。

来源: 堆栈交换

        如果你没有很强的统计学背景,你仍然可以学习机器学习并利用它,机器学习库提供的抽象使得将它们作为非专家使用变得非常容易,但你仍然需要对底层统计思想有一些了解,以防止模型过度拟合并给出似是而非的推论。

九、在哪里可以了解更多信息?

        如果您有兴趣深入研究统计学习理论,有许多关于该主题的书籍和大学课程。以下是我推荐的一些讲座课程:

9.520/6.860, Fall 2018 (mit.edu)

ECE 543: Statistical Learning Theory (Spring 2018) (illinois.edu)

马修·斯图尔特

相关文章:

统计学和机器学习之间的联系和区别

一、说明 老实说,我厌倦了几乎每天都在社交媒体和我的大学里听到这场辩论。通常,这伴随着一些模糊的陈述来解释这个问题。双方都为此感到内疚。我希望在本文结束时,您将对这些有些模糊的术语有更明智的立场。 二、论点 与普遍的看法相反&…...

linux中profile.d和profile的区别

profile.d在profile中加载 profile文件 PATH"/bin:/sbin:/usr/bin:/usr/sbin:/opt/bin:/opt/scripts:/soc/bin:/soc/scripts" LD_LIBRARY_PATH"/usr/local/lib:/usr/lib:/opt/lib:/soc/lib" export SSL_LDPATH/usr/local/lib/ export ZLIB_LDPATH/usr/lo…...

MobaXterm sftp 不能拖拽文件夹了?

原因是我把mobaxterm设置成Windows管理员权限运行了,结果就不能拖动文件。把管理员权限去掉就恢复正常了。 原因是我把mobaxterm设置成Windows管理员权限运行了,结果就不能拖动文件。把管理员权限去掉就恢复正常了。 原因是我把mobaxterm设置成Windows管理员权限运行了,结果就不…...

【ArcGIS Pro二次开发】(59):Editing(编辑)模块

ArcGIS Pro SDK中的"Editing"(编辑)模块提供了一系列API和工具,允许开发人员在ArcGIS Pro中实现各种地图数据编辑操作,从简单的要素绘制到复杂的数据集编辑。 下面列举一些常用编辑工具的实现方法。 1、获取所选要素的…...

WebSocket与消息推送

B/S结构的软件项目中有时客户端需要实时的获得服务器消息,但默认HTTP协议只支持请求响应模式,这样做可以简化Web服务器,减少服务器的负担,加快响应速度,因为服务器不需要与客户端长时间建立一个通信链接,但…...

5.1 web浏览安全

数据参考:CISP官方 目录 Web应用基础浏览器所面临的安全威胁养成良好的Web浏览安全意识如何安全使用浏览器 一、Web应用基础 1、Web应用的基本概念 Web ( World wide Web) 也称为万维网 脱离单机Web应用在互联网上占据了及其重要的地位Web应用的发展&#xf…...

(六)Unity开发Vision Pro——词汇表

1.PolySpatial Core (com.unity.polyspatial):基础 PolySpatial 包,初始化和所有设置从这里开始。它执行更改跟踪和处理、序列化/反序列化,并包括 ShaderGraph 到 MaterialX 转换器 2.PolySpatial XR (com.unity.polyspatial.xr)&#xff1a…...

算法随笔:图论问题之割点割边

割点 定义 割点的定义:如果一个点被删除之后会导致整个图不再是一个连通图,那么这个顶点就是这个图的割点。举例: 上图中的点2就是一个割点,如果它被删除,则整个图被分为两个连通分量,不再是一个连通图。…...

【虚幻引擎】UE5数字人的创建

安装插件 在插件里面找到MetaHuman,设置激活,然后重启引擎 找到bridge,并开启,这个需要我们制作完成的metahuman需要在这个插件里下载,unreal5自动安装 创建metahuman 首先添加一个metahuman本体,如果你的插…...

算法:深度优先遍历

文章目录 什么是深搜典型题目积累 本篇主要积累的是深度优先遍历算法 什么是深搜 深度优先搜索英文缩写为 DFS 即Depth First Search 其过程是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次 简单来说就是: 一路走到头,不撞墙…...

Stable Diffusion + Deform制作指南

1.安装sd以及deform插件,更新后记得重启 需要安装ffmpeg https://ffmpeg.org/download.html 选择对应版本然后安装 如果是windows需要解压后将ffmpeg的bin目录配置在电脑的环境变量里面。 2.准备一张初始开始图片 3.填写参数,这里面参数要注意,宽高一定是32的倍数。如果填写…...

ssm+vue网上花店设计源码和论文

ssmvue网上花店设计源码和论文017 开发工具:idea 数据库mysql5.7 数据库链接工具:navcat,小海豚等 技术:ssm 摘 要 网络技术和计算机技术发展至今,已经拥有了深厚的理论基础,并在现实中进行了充分运用&#xf…...

【leetcode】第一章数组

704. 二分查找 边界值需注意left代表左边界下标值&#xff0c;right代表右边界的下标值当数组只有一个元素时&#xff0c;此时如果找到该元素应该返回下标0&#xff0c;因此条件为left<right当mid的元素值大于target时&#xff0c;此时说明我们想找的target在右边&#xff…...

01|Java中常见错误或不清楚

补充&#xff1a;length vs length() vs size() 1 java中的length属性是针对数组说的,比如说你声明了一个数组,想知道这个数组的长度则用到了length这个属性. 2 java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这个方法. 3.java中的siz…...

递归的用法和例子

b站视频&#xff1a;https://www.bilibili.com/video/BV1iS4y1e7MJ/?spm_id_from333.999.0.0&vd_source1717654b9cbbc6a773c2092070686a95 # 递归的定义&#xff1a;其实就是自己调用自己&#xff0c;一般用函数的形式来进行 """ 特点&#xff1a; 1、一定…...

极狐GitLab 企业级 CI/CD 规模化落地实践指南(一)

目录 template 引用&#xff0c;减少代码冗余&#xff0c;增强 CI/CD 构建扩展性 问题 1&#xff1a;代码冗余&#xff0c;低效实践 问题 2&#xff1a;维护性难&#xff0c;工作量大 ➤ local ➤ file ➤ remote ➤ template 收益 1&#xff1a;一处修改&#xff0c;多…...

springBoot 简单的demo

springBoot 学习开始 场景开发流程1、创建项目2、导入依赖3、创建启动springBoot 项目的主入口程序4、创建业务程序5、在MainApplication文件运行程序6、将文件打包成jar包 遇到的问题未解决 希望大哥们帮忙--本地运行jar包报错 场景 浏览器发送hello请求&#xff0c;返回“he…...

[国产MCU]-BL602开发实例-实时时钟(RTC)

RTC 文章目录 RTC1、RTC介绍2、RTC使用实例RTC(real-time clock)为操作系统中的实时时钟设备,为操作系统提供精准的实时时间和定时报警功能。当设备下电后,通过外置电池供电,RTC继续记录操作系统时间;设备上电后,RTC提供实时时钟给操作系统,确保断电后系统时间的连续性。…...

大数据Flink(六十三):SqlClient工具的使用

文章目录 SqlClient工具的使用 一、​​​​​​​入门...

哈威比例多路阀控制放大器

多路比例阀放大器控制负载敏感原理的比例多路换向阀&#xff0c;它用于与负载无关的、无级调节液压执行元件的运动速度。 多个执行元件可以同时和相互无关地进行工作。 这种类型的阀主要用于行走液压机械&#xff08;例如&#xff1a;起重控制系统&#xff09;。 通过选择执行元…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序

一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计

随着大语言模型&#xff08;LLM&#xff09;参数规模的增长&#xff0c;推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长&#xff0c;而KV缓存的内存消耗可能高达数十GB&#xff08;例如Llama2-7B处理100K token时需50GB内存&a…...

安卓基础(aar)

重新设置java21的环境&#xff0c;临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的&#xff1a; MyApp/ ├── app/ …...

华为OD机考-机房布局

import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

三分算法与DeepSeek辅助证明是单峰函数

前置 单峰函数有唯一的最大值&#xff0c;最大值左侧的数值严格单调递增&#xff0c;最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值&#xff0c;最小值左侧的数值严格单调递减&#xff0c;最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...

c++第七天 继承与派生2

这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分&#xff1a;派生类构造函数与析构函数 当创建一个派生类对象时&#xff0c;基类成员是如何初始化的&#xff1f; 1.当派生类对象创建的时候&#xff0c;基类成员的初始化顺序 …...