Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

魔王参与

神经正切核,深度学习理论研究的最新热点?

想理解神经网络的训练动态过程,不妨从「神经正切核」入手。那么什么是神经正切核,核机制如何运行?就读于印度理工学院马德拉斯分校电气工程系的 Rajat Vadiraj Dwaraknath 撰文介绍了这一概念。

  • 博客地址:https://rajatvd.github.io/NTK/
  • 文章动图地址:https://github.com/rajatvd/NTK
  • 神经正切核相关论文地址:https://arxiv.org/abs/1806.07572

这张动图展示了神经网络的训练动态过程。阅读本文,你将了解其背后原理。

近期大量理论深度学习论文从无限宽度极限(infinite-width limit)入手分析神经网络。首先,无限宽度极限可能看起来不切实际,甚至没有研究意义。但是,无限宽度极限下的神经网络可以简化为具备神经正切核(neural tangent kernel,NTK)的线性模型。这样我们就可以很容易地研究梯度下降了。起初它看起来很有前景,但是实验结果证明,无限宽度极限下的神经网络效果不如实际的参数网络。不过,这仍然为神经网络训练的某些方面提供了理论视角,值得我们继续探索。

此外,神经正切核可在更宽泛的标准下出现(这取决于模型的规模),且无需无限宽度极限条件。本文简单直观地介绍了该理论,它可作为梯度下降收敛性证明。为方便可视化,本文使用简单的一维示例,帮助读者更轻松地理解该理论。

设置

我们首先来看以下一个非常简单的例子,理解该示例之后再将其泛化。我们看到一个一维输入和一维输出网络。这个简单的 relu 网络有两个隐藏层,宽度为 m。

我们将使用这个简单的一维模型进行初始试验。

我们将该网络函数寻求随机初始化的过程画出来:

100 个经过随机初始化的 relu 网络,该网络有两个隐藏层,宽度为 100。

我们会发现这些函数等价于无限宽度极限下的高斯过程

我们先来了解一些符号:

神经网络函数为 f(x,w),其中 x 为输入,w 为权重组合向量(大小为 p)。

在这个一维示例中,数据集为点 (x,y) 的集合。假设我们有 N 个数据点,则数据集为:

为了学习该网络,我们再使用一个简单的方法:基于最小二乘损失执行* *full-batch 梯度下降损失函数为:

我们可以用一些向量符号简化该公式。

首先,将所有输出数据集的值 y¯_i 堆叠为一个大小为 N 的向量 y¯;

类似地,将模型对每个输入的输出 f(x¯_i,w) 堆叠为一个预测向量 y(w)∈R^N,于是就有了 y(w)_i=f(x¯_i,w)。这相当于将神经网络函数 f(⋅,w) 看作函数空间中的一个向量。

因此,上述损失函数可简化为:

现在,我们不用改变数据集的大小 N,它在损失函数公式中是一个不必要的常量。因此,我们可以在不影响任何结果的前提下删除它,这样上述公式会看起来更加简洁(为方便求导,公式保留了 1/2)。

该图可以帮助读者厘清向量符号表示。我们对整个数据集高效执行向量化,在这个简单示例中数据集的大小为 2(即图中的两个蓝色点)。

现在,训练网络即利用梯度下降最小化损失函数

基于平方损失利用梯度下降训练 100 个 ReLU 网络。

将训练过程中两个隐藏层之间的权重(m×m 矩阵)做成动图,我们将看到一些有趣的事:

训练过程中权重矩阵的动图。你可能发现了,有些变化只发生在宽度小于 10 的情况,而宽度大于 10 时权重看起来是完全静止的。

上面三幅图都是动图,但宽度较大时,权重竟然没有变化!看起来这些模型太「懒惰」了!我们来定量地看一下,权重向量与初始化权重之间的相对变化:

权重值翻倍时,该相对变化与隐藏层大小的关系也远了一倍。现在,我们再来绘制训练得到的网络:

损失曲线以及训练过程中权重的变化幅度。权重范数(weight norm)是将模型所有参数堆叠为一个向量而计算得到的。此外,所有其他参数(如学习率)均保持不变。

当隐藏层宽度较大时,权重的变化幅度并不大。

泰勒展开

对网络函数及其初始化周围的权重执行泰勒展开:

我们将这个非线性网络函数转化成了简单的权重线性函数。使用更准确的向量符号表示,我们可以将其重写为:

矩阵大小也很清晰:

该图清晰地展示了所有向量和矩阵的大小。

这里很多项(如初始输出 y(w_0) 和模型雅可比矩阵 ∇_w y(w_0))都是常量。我们主要来看 w 的依赖关系,即该近似是权重的线性模型,因此最小化最小二乘损失被简化为线性回归!不过需要注意的是,模型函数仍然是非线性的,因为寻找模型梯度绝非线性运算。事实上,这只是一个使用特征图 ϕ(x) 的线性模型,其在初始化时的梯度向量为:

该特征图自然而然地导出输入上的核,即神经正切核。之后在介绍梯度流时我们会深入探讨神经正切核,现在先从理论角度证明该线性近似的合理性。

什么时候该近似是准确的?

该线性化模型非常适合分析,但这只出现在它确实是非线性模型的准确近似的情况下。在该近似运行良好时,我们尝试推导出其定量标准。这基于 Chizat 和 Bach 的论文《On Lazy Training in Differentiable Programming》(「懒惰」模式是线性近似的别称)进行。我要做的推导非常直观,包含少量 handwaving 以及矩阵和算子范数

首先,我们利用梯度下降优化模型,使之变为线性模型:

使用足够小的学习率 η,我们知道在运行梯度下降时,损失通常会下降。因此,模型输出 y(w_n) 通常接近真值标签 y¯。基于此,我们将网络变化的边界设定为:

现在,我们可以利用一阶近似量化网络在参数空间中移动的「距离」:

雅可比矩阵范数 ‖∇_w y(w_0)‖ 是算子范数。如果你不熟悉算子范数,可以把它想像成衡量矩阵在向量上的最大伸展的指标(或者更简单些,将它作为衡量矩阵「大小」的指标)。

为了得到雅可比矩阵的变化,我们可以利用距离 d 和模型输出与权重的海森矩阵 ∇_w^2 y(w_0)。此处,海森矩阵是一个秩为 3 的张量(仍是线性算子),你可以将它看作将每个输出的海森矩阵堆叠在一起获得三维海森「立方体」。将其范数作为衡量海森矩阵大小或雅可比矩阵变化率的指标。

当我们想让模型成为线性时,我们在意的不只是雅可比矩阵的变化,还有相对变化。具体来说,我们想让雅可比矩阵的相对变化尽可能小(≪1):

我们将蓝色项叫做 κ(w_0),条件 κ(w_0)≪1 可被直观地总结为:


为得到 y 的变化 ‖(y(w_0)−y¯)‖,w 需要变化的量将导致雅可比矩阵∇_w y(w) 的细微变化。


这意味着该模型非常接近其线性近似。

现在,我们需要了解神经网络隐藏层宽度 m 对 κ(w_0) 变化的影响。我们发现随着 m 趋向无穷大,k 趋向于 0。这里我们需要谨慎一些,由于初始化权重 w_0 是随机的,κ(w_0) 也是随机变量。也就是说,当 k 趋向于 0 时,其期望值也趋向于 0。这仅适用于权重得到恰当初始化的情况。具体来说,它们必须是独立的零均值高斯随机变量,方差与输入层大小成反比(这叫做 LeCun initialization)。该结果解释了,神经网络宽度越大权重变化越小的原因。

为什么这一结果是通用的?理解这一点比较复杂,因此我将在仅具备一个隐藏层的更简单示例中,展示推导过程。

直观解释是:较大的网络宽度意味着影响输出的神经元很多。这些神经元权重发生一点细微变化都可能导致输出出现非常大的改变,因此这些神经元需要移动非常小的距离来拟合数据。如果权重移动幅度较小,则线性近似更加准确。随着网络宽度增加,神经元变化幅度降低,模型越来越接近其线性近似。如果你理解了这一直观解释,你可以跳过接下来的证明部分,直接看下一章节。

在原文中点击左侧三角图标,即可查看相关证明,此处不再赘述。

缩放输出

我们再来看一下 κ(w_0) 的公式:

我将模型输出乘以因子 α:

这就是模型重缩放。‖(y(w_0)−y¯)‖ 项很繁琐,我们可以假设模型在初始化时的输出总是为 0,即 y(w_0)=0,从而去除该项。(我们可以在初始化时减去输出的副本,使模型在初始化时的输出总是为 0。)

我们令 α→∞,使模型成为线性(即 κ(w_0)→0)。因此,《On Lazy Training in Differentiable Programming》的作者将 κ(w_0) 称为模型的逆相对缩放(inverse relative scale)。

有一件重要的事需要注意:这适用于任意非线性模型,且并不特定于神经网络(尽管需要两次微分)。因此,为了方便可视化,我制作了一个一维示例模型。该模型有一个权重 w,初始化权重为 w_0=0.4。

它满足初始化处输出为 0 的要求。要想看 α 对模型线性情况的影响,我们只需查看函数在特定值 x 处的值(假设 x=1.5)。通过不断改变 α 的值,我们可以得到如下可视化图:

在特定 x 值处评估该示例模型,不断更改 α 值。随着缩放越来越大,线性(即该案例中的切线)逐渐接近真实函数。

我们还可以查看单个数据点在这两个模型上的损失表面。线性化损失是一条漂亮的抛物线,我们希望随着 α 值的增加,实际损失逐渐接近这条抛物线。

归一化损失。只需除以α^2 即可完成归一化,这样实际损失不会随着 α 发生变化。这两幅图展示的是同一件事,只不过下方的图在 w=0.4 周围进行了放大,以便我们更清楚地查看微小的差异。

从中,我们可以得到一些重要的观察结果:

线性化损失不会像我们期待的那样接近实际损失;

两个损失表面的极小值逐渐接近,更重要的是,它们逐渐靠近初始化值。这与上文中的观察「模型训练过程中权重很少发生改变」相符。

梯度流

我们解决了神经网络和更通用的非线性模型何时被其线性模型准确逼近的问题。现在,我们来看看梯度下降过程中的训练动态。

重写该公式,得到:

左侧的项看起来像是导数的有限差分近似。这个公式就变成了对微分方程进行差分方程近似。令学习率无限小,我们可以看到权重向量随着时间的变化,微分方程如下:

这就是梯度流(gradient flow)。本质上,它是标准梯度下降的连续时间变化。重点在于,梯度流在参数空间中的轨迹近似学习率足够小时该微分方程的解的轨迹。为了简化符号表示,本文用点标注时间导数

此外,由于时间变量可以从语境中推断出来,我们去掉该变量。使用梯度替代损失,得到:

现在,我们可以利用链式法则基于该梯度流推导出模型输出 y(w) 的动态过程(这基本上就是函数空间中的动态变化):

红色项 ∇y(w)^T∇y(w) 就是神经正切核(NTK),我们用符号 H(w) 表示它。

回到泰勒展开那一节,我们看到线性化模型的特征图 ϕ(x)=∇_w f(x,w_0)。该特征图对应的核矩阵是通过对所有数据点的特征图取成对内积得到的。这就是 H(w_0)!

初始化处的神经正切核包含数据点特征图之间的成对内积。注意,这也可以解释为数据点的外积(x¯_i 是数据集中的输入)。

如果模型接近其线性近似(κ(w_0)≪1),则模型输出的雅可比矩阵不会随着训练过程发生变化。也就是说:

这就是核机制(kernel regime),因为正切核在训练过程中始终为常量。现在,训练动态过程被简化为简单的线性常微分方程(ODE):

很明显,y(w)=y¯ 是该常微分方程的平衡点,它对应于训练损失为 0 的情况,这正是我们想要的。我们可以定义 u=y(w)−y¯,来改变状态变量,从而去除 y¯。则梯度流公式被简化为:

该 ODE 的解由矩阵指数运算得出:

由于模型过参数化(p>n),则 NTK ∇y(w_0)^T∇y(w_0) 总是正定的(忽略导致∇y(w_0) 不具备满列秩的任意数据集退化)。对正定 NTK 执行谱分解后,我们将梯度流的轨迹分解为独立的一维组件(特征向量),它以正比于对应特征值的速率衰减。其关键在于,它们全都衰减(因为所有特征值均为正),这意味着梯度流总是收敛至训练损失为 0 的平衡点。

通过这一系列论证,我们证明了,对于任意非线性模型,只要它接近其线性近似,其梯度下降就能收敛至 0 训练损失。这是近期证明梯度下降达到 0 训练损失的大多数论文中大部分证明的本质。

核机制

梯度流的数学原理有点难懂,现在我们回到数据集中有两个样本的示例。对于两个数据点,NTK 是 2x2 正定矩阵。我们可以将该矩阵可视化为二维平面中的椭圆,其中长轴和短轴是特征值,其长度与特征值成反比。基于此,我们可以在此二维平面中看到梯度下降(逼近梯度流)导致的 y(w(t)) 的轨迹。如下所示:

不同模型大小在训练过程中的神经正切核(从不同初始化开始)。我对不同 α 的梯度流执行了归一化,以使时间尺度和正切核规模相匹配。我们可以清晰地看到 α 越大(粉色线),NTK 的变化幅度越小,而 α 较小时(红色线),NTK 在模型训练过程中的变化很大。下侧图展示了模型函数在训练过程中的变化。

  • 我特意将椭圆的中心设置为目标数据 y¯,以使其轨迹接近中心。这样,你可以看到椭圆短轴(较大特征值)对应的组件比长轴(较小特征值)收敛得更快;

  • α 的较小值也会收敛至 0 训练损失,不过我们对此没有任何理论依据。我们的证明仅对 α 足够大能使椭圆在训练过程中保持不变时有效(核机制);

  • 最小的 α 值收敛得很快,快到动图中几乎看不出来;

  • 我在模型运行中使用的是两层网络,其宽度为 100。我还在初始化处减去了其副本,使网络输出为 0(正因如此,所有轨迹均从原点开始)。尽管我们无法看到该网络有 10000 个权重时,权重在训练过程中的变化,但是我们可以看到网络输出,如上图所示。

重点在于:对于较大的 α 值,存在核机制,而对于较小 α 值的行为则缺乏理论依据。

此外,还有一点需要注意:

这些图中的 NTK 机制仅适用于较大的 α 值。我们还可以将宽度扩展到无限大来使用该机制,而不仅是缩放输出。但是,该案例提供了一个特别的收获。注意,初始化处的 NTK 是不同的,因为初始化是随机的。但是,随着我们将隐藏层宽度扩展至无限,初始化处的 NTK 变得确定了!也就是说,对于给定深度和激活函数,存在一个固定的 NTK。实际上,该 NTK 可以得到确切计算,高效模拟无限宽度神经网络(参见论文《On Exact Computation in an Infinitely Wide Net》,此处不再赘述)。

泛化

目前,我们仅探讨了训练数据的情况。那么测试集呢?

首先,在核机制中训练模型等价于解决线性系统。过参数化(p>n)意味着该线性系统是欠定的(under-determined),因此它具备无限个解。由于我们使用梯度下降来解决该系统,那么它隐性地偏向于极小范数解。即,梯度下降选择具备极小 ‖w‖_2 的解(前提是,我们从具备低范数的初始化开始)。

我们现在考虑将 y 空间扩展为无限维度的函数空间,则 w 空间中的极小 ℓ2 范数被转换为选择一个函数,使特定函数范数最小化。决定该范数的是什么呢?描述该线性问题的核,即 NTK。这可以解读为一种正则化形式,你可以使用它谈论泛化。本文不再赘述。

结论

NTK 理论很伟大,而上述可视化图证明了神经网络不止 NTK 机制。实验证明,实际成功的神经网络并非在 NTK 机制中运行。实际上,即使最优秀的线性化神经网络在标准基准数据集(如 MNIST 和 CIFAR)上的性能也比实际成功的神经网络差了大约 7%(不过近期发展或许弥补了这一差距,参见论文《Enhanced Convolutional Neural Tangent Kernels》)。

但是,NTK 理论不是理解神经网络训练动态过程的唯一理论。还有一系列工作利用最优传输和平均场理论描述训练动态过程,这些案例中通过非线性 PDE 实现的模型缩放并不大(κ∼1),但是据我所知,这些理论都无法扩展至具备一个隐藏层的网络。

不过,这些 NTK 结果仍然非常有趣,它们提供了探索神经网络学习的新思路。尝试理解核在训练过程中的变化对于寻找更好的神经网络理论大有裨益。

入门神经正切核神经网络
2
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

范数技术

范数(norm),是具有“长度”概念的函数。在线性代数、泛函分析及相关的数学领域,是一个函数,其为向量空间内的所有向量赋予非零的正长度或大小。半范数反而可以为非零的向量赋予零长度。

激活函数技术

在 计算网络中, 一个节点的激活函数定义了该节点在给定的输入或输入的集合下的输出。标准的计算机芯片电路可以看作是根据输入得到"开"(1)或"关"(0)输出的数字网络激活函数。这与神经网络中的线性感知机的行为类似。 一种函数(例如 ReLU 或 S 型函数),用于对上一层的所有输入求加权和,然后生成一个输出值(通常为非线性值),并将其传递给下一层。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

学习率技术

在使用不同优化器(例如随机梯度下降,Adam)神经网络相关训练中,学习速率作为一个超参数控制了权重更新的幅度,以及训练的速度和精度。学习速率太大容易导致目标(代价)函数波动较大从而难以找到最优,而弱学习速率设置太小,则会导致收敛过慢耗时太长

损失函数技术

在数学优化,统计学,计量经济学,决策理论,机器学习和计算神经科学等领域,损失函数或成本函数是将一或多个变量的一个事件或值映射为可以直观地表示某种与之相关“成本”的实数的函数。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

导数技术

导数(Derivative)是微积分中的重要基础概念。当函数y=f(x)的自变量x在一点x_0上产生一个增量Δx时,函数输出值的增量Δy与自变量增量Δx的比值在Δx趋于0时的极限a如果存在,a即为在x0处的导数,记作f'(x_0) 或 df(x_0)/dx。

张量技术

张量是一个可用来表示在一些矢量、标量和其他张量之间的线性关系的多线性函数,这些线性关系的基本例子有内积、外积、线性映射以及笛卡儿积。其坐标在 维空间内,有 个分量的一种量,其中每个分量都是坐标的函数,而在坐标变换时,这些分量也依照某些规则作线性变换。称为该张量的秩或阶(与矩阵的秩和阶均无关系)。 在数学里,张量是一种几何实体,或者说广义上的“数量”。张量概念包括标量、矢量和线性算子。张量可以用坐标系统来表达,记作标量的数组,但它是定义为“不依赖于参照系的选择的”。张量在物理和工程学中很重要。例如在扩散张量成像中,表达器官对于水的在各个方向的微分透性的张量可以用来产生大脑的扫描图。工程上最重要的例子可能就是应力张量和应变张量了,它们都是二阶张量,对于一般线性材料他们之间的关系由一个四阶弹性张量来决定。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

高斯过程技术

线性回归技术

在现实世界中,存在着大量这样的情况:两个变量例如X和Y有一些依赖关系。由X可以部分地决定Y的值,但这种决定往往不很确切。常常用来说明这种依赖关系的最简单、直观的例子是体重与身高,用Y表示他的体重。众所周知,一般说来,当X大时,Y也倾向于大,但由X不能严格地决定Y。又如,城市生活用电量Y与气温X有很大的关系。在夏天气温很高或冬天气温很低时,由于室内空调、冰箱等家用电器的使用,可能用电就高,相反,在春秋季节气温不高也不低,用电量就可能少。但我们不能由气温X准确地决定用电量Y。类似的例子还很多,变量之间的这种关系称为“相关关系”,回归模型就是研究相关关系的一个有力工具。

梯度下降技术

梯度下降是用于查找函数最小值的一阶迭代优化算法。 要使用梯度下降找到函数的局部最小值,可以采用与当前点的函数梯度(或近似梯度)的负值成比例的步骤。 如果采取的步骤与梯度的正值成比例,则接近该函数的局部最大值,被称为梯度上升。

神经元技术

(人工)神经元是一个类比于生物神经元的数学计算模型,是神经网络的基本组成单元。 对于生物神经网络,每个神经元与其他神经元相连,当它“兴奋”时会向相连的神经元发送化学物质,从而改变这些神经元的电位;神经元的“兴奋”由其电位决定,当它的电位超过一个“阈值”(threshold)便会被激活,亦即“兴奋”。 目前最常见的神经元模型是基于1943年 Warren McCulloch 和 Walter Pitts提出的“M-P 神经元模型”。 在这个模型中,神经元通过带权重的连接接处理来自n个其他神经元的输入信号,其总输入值将与神经元的阈值进行比较,最后通过“激活函数”(activation function)产生神经元的输出。

正则化技术

当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,在学习时就要防止过拟合。进行最优模型的选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。

链式法则技术

是求复合函数导数的一个法则, 是微积分中最重要的法则之一。

雅可比矩阵技术

在向量分析中,雅可比矩阵是函数的一阶偏导数以一定方式排列成的矩阵,其行列式称为雅可比行列式。在代数几何中,代数曲线的雅可比行列式表示雅可比簇:伴随该曲线的一个代数群,曲线可以嵌入其中。

堆叠技术

堆叠泛化是一种用于最小化一个或多个泛化器的泛化误差率的方法。它通过推导泛化器相对于所提供的学习集的偏差来发挥其作用。这个推导的过程包括:在第二层中将第一层的原始泛化器对部分学习集的猜测进行泛化,以及尝试对学习集的剩余部分进行猜测,并且输出正确的结果。当与多个泛化器一起使用时,堆叠泛化可以被看作是一个交叉验证的复杂版本,利用比交叉验证更为复杂的策略来组合各个泛化器。当与单个泛化器一起使用时,堆叠泛化是一种用于估计(然后纠正)泛化器的错误的方法,该泛化器已经在特定学习集上进行了训练并被询问了特定问题。

正定矩阵技术

在线性代数里,正定矩阵是埃尔米特矩阵的一种,有时会简称为正定阵。在线性代数中,正定矩阵的性质类似复数中的正实数。与正定矩阵相对应的线性算子是对称正定双线性形式(复域中则对应埃尔米特正定双线性形式)。

推荐文章
暂无评论
暂无评论~