机器学习和神经网络 - 页 41

 

图宾根大学 2022/23 冬季学期的机器学习数值。第 1 讲 - 简介 - Philipp Hennig



ML 1 的数值 -- 介绍 -- Philipp Hennig

在此视频中,Philipp Hennig 讨论了理解数值算法在机器学习中的重要性,并介绍了该术语的课程内容。第一个涵盖的数值算法是线性代数,在高斯过程回归中的应用。 Hennig 还讨论了模拟、微分方程、集成和优化在机器学习中的作用。他介绍了数值算法的新发展,例如算法脊柱、可观测值和概率数值算法。在整个视频中,Hennig 强调了更新机器学习中使用的经典算法以解决复杂问题的重要性,并强调了编写代码在这门计算机科学课程中的作用。

Philipp Hennig 正在介绍他的机器学习数值课程,旨在探索机器学习算法如何在盒子内发挥作用,以及如何调整或改变它们以改进学习机器。数值算法和机器学习算法方面的高技术知识受到研究人员和行业专业人士的高度追捧。该课程将包括理论和编码工作,作业按二进制系统评分。 Hennig 强调了数值算法在机器学习中的重要性,并邀请学生与九位不同的教师一起参加这个独特的教学实验。

  • 00:00:00 在本节中,Philipp Hennig 介绍了理解数值算法在机器学习中的重要性。虽然机器学习算法将数据作为输入并生成预测世界或在世界中行动的模型,但实际的学习过程涉及数值计算。与经典 AI 算法不同,现代机器学习算法使用线性代数、模拟、集成和优化方法等数值算法作为这些计算的原语。 Philipp 将数值算法定义为估计数学量的方法,该数学量没有封闭形式的解决方案,并且可能会出错,这与始终有效的原子操作不同。由于数值算法是机器学习的核心,因此了解它们以确保它们正确工作非常重要。

  • 00:05:00 在本节中,演讲者讨论了常规函数和数值算法之间的区别,并指出后者往往有自己的库和几个可供选择的子例程。然后,他提供了一个 1993 年用 Forth 语言编写的原型数值算法示例,实现了 1975 年两位数学家发明的算法。这突出了一个事实,即数值算法陈旧且具有精确的接口,因此难以修改。机器学习工程师经常遇到数值任务,并且能够利用这些由其他领域开发的旧算法,但如果手头的任务与方法的能力不完全匹配,这可能会出现问题。演讲者建议,当试图解决现有数值方法不足以解决的问题时,这可能会成为机器学习中的一个问题。

  • 00:10:00 在本节中,Philipp Hennig 介绍了数值算法主题和该学期的课程内容。线性代数是机器学习的基础层,是它们涵盖的第一个数值算法。它的一个应用示例是在高斯过程回归中,其中两个函数用于推理:后验均值和后验协方差函数。这些函数是使用内核方法定义的,它们的实现涉及 Cholesky 分解方法,而不是计算矩阵的逆。 Hennig 还介绍了一个 Python 代码片段,并解释了为什么应该使用 Cholesky 分解而不是计算矩阵的逆。

  • 00:15:00 在视频的这一部分,演讲者 Philipp Hennig 讨论了内核机器的问题,特别是关于它们无法很好地扩展到大量数据的问题。他解释说,内核机器所需的昂贵计算使得它们难以在当代机器学习中使用。然而,Hennig 还建议,还有其他线性代数算法可用于通过利用数据集结构和近似值来加速计算,最终导致具有可扩展到大型数据集的高斯过程回归的解决方案。

  • 00:20:00 在本节中,Philipp Hennig 介绍了模拟算法及其在机器学习中的作用。模拟方法通过时间模拟动态系统的轨迹,并且可以估计 X。在构建自动驾驶汽车等代理或创建利用科学等物理洞察力的机器学习算法时,它们出现在机器学习中机器学习。微分方程,例如薛定谔方程,通常用于对自然知识进行编码。此外,Hennig 提供了一个简单的德国 COVID-19 病例预测问题超过一年半的例子来解释为什么深度神经网络和高斯过程在解决这个问题时不起作用。

  • 00:25:00 在本节中,Philipp Hennig 讨论了微分方程在建模系统中的使用,特别是模拟中常用的 SIR 模型,以及将现实世界的动态(例如锁定)纳入这些模型的挑战。他建议使用神经网络使系数 beta 与时间相关,但指出由于代码中缺少导数,这样做很困难。不过,他强调了最近在 Jax 中开发的一种算法可以解决这个问题。

  • 00:30:00 在本节中,Philipp Hennig 讨论了一种称为基于模拟的推理的算法,这是解决复杂问题的当前方法。该算法涉及一个嵌套的 for 循环,它多次计算函数 f 并返回梯度并执行梯度下降步骤。 Hennig 解释说,要创建比这种原始代码更灵活、更快速的算法,我们可以构建自己的方法,以程序化的方式在光子代码中构建数字列表并对其进行调整。此方法涉及马尔可夫链的主干,可以将运算符挂在其上,例如概率分布和信息运算符,以告知算法有关未知因素的信息。通过这样做,我们可以解决这些问题,而不用在外层循环中一遍又一遍地调用 for 循环,那样会很耗时。

  • 00:35:00 在本节中,Philipp Hennig 讨论了更新机器学习中使用的经典算法的重要性,这些算法已有 100 多年的历史。他介绍了可以对不同的信息运算符进行操作并可以创建新功能的算法脊椎的想法。 Hennig 然后继续讨论集成在机器学习中的作用,这是耐心推理的基本操作。概率机器学习的基本操作是通过采用联合分布并将其除以边际来计算后验分布,这涉及积分。最后,Hennig 讨论了优化的重要性,这是机器学习中的基础操作,涉及计算最小化损失函数的值。这些算法构成了可微程序的基础,可以自动计算函数的梯度。

  • 00:40:00 在本节中,Philipp Hennig 讨论了优化算法及其在机器学习中的重要性。虽然 BFGS 和最小化等经典方法存储在 scipy.optimize 中,但 SGD 和 Adam 等新方法现在已成为机器学习的标准。然而,这些方法通常需要一定的学习率和大量的监督,这与旧方法不同,后者可以收敛到最小值并处理任何可微分的问题。为了解决这些新方法在具有数百万个数据点的大型数据集上的局限性,使用批量梯度下降来计算更小的总和,这是我们感兴趣的事物的无偏估计量。尽管这些新方法是更高效和有效,它们仍然基于与旧算法相同的原理,这可能会导致某些应用程序出现问题。

  • 00:45:00 在视频的这一部分,演讲者讨论了在深度学习算法中计算除梯度之外的方差的可能性。他认为,从优化过程中省略方差计算是因为优化仍然被视为梯度计算问题,而不是使用随机变量找到泛化良好的点的问题。然而,他强调了在计算中包含随机性引起的不确定性的重要性,并指出为深度神经网络构建更好的训练设置至关重要。他最后提到即将进行的讲座,这些讲座将更深入地探讨这个主题。

  • 00:50:00 在本节中,Philipp Hennig 讨论了使用可观察量为深度神经网络添加新功能,例如不确定性或在不使用昂贵的马尔可夫链蒙特卡洛算法的情况下将它们变成贝叶斯深度神经网络。他还解释了用于训练机器学习算法的数值算法实际上是机器学习算法本身,因为它们在观察易于处理的可观察数据的同时估计未知量或潜在变量。这类似于推理过程,其中根据观察到的计算结果估计潜在数量。

  • 00:55:00 在本节中,Philipp Hennig 介绍了数值算法作为学习机的概念,并讨论了从头开始构建数值算法作为概率数值算法背后的想法。这些算法采用描述其任务的概率分布,并使用 CPU 或 GPU 作为数据源来改进他们对数字任务的解决方案的估计。 Hennig 强调,该课程不是典型的数值分析课程,因为重点是将机器内部理解为学习机器,并以机器学习语言构建新算法。学生可以期望在这门计算机科学课程中编写大量代码。

  • 01:00:00 在本节中,Philipp Hennig 介绍了他的机器学习数值课程,他声称这是世界上同类课程中的第一门。该课程旨在深入研究机器学习算法的工作原理,特别是它们如何在盒子内运行以及如何更改或调整它们以改进学习机器。数值算法和机器学习算法的高度技术性意味着该领域的知识受到研究人员和行业专业人士的高度追捧。这些讲座将由他的经验丰富的博士生团队授课,他们花了多年时间研究和思考这些算法的内部运作,因此比教授更有能力讨论更精细的技术细节。

  • 01:05:00 在本节中,Philipp Hennig 讨论了课程结构和课程要求。该课程将包括理论和编码工作,因为学生需要使用 Python 或 Julia 代码解决数值问题。练习将以 PDF 格式提交,解决方案将按二进制评分——好的解决方案将打勾,不满意的将打叉。学生将获得每个刻度线的奖励积分,这将计入期末考试成绩。考试将于明年 2 月 13 日或 3 月 31 日举行,鼓励通过第一次考试,因为可能无法重新设置。最后,鼓励有兴趣在机器学习或以数据为中心的计算中取得更高学位的学生参加本课程,因为它为各个领域的应用研究提供了充足的机会。

  • 01:10:00 在本节中,Philipp Hennig 强调了数值算法在机器学习中的重要性,指出它们是驱动学习机器的引擎。他描述了理解这些算法及其贝叶斯推理语言如何能够带来更快、更可靠且更易于使用的机器学习解决方案。 Hennig 强调,虽然经典的数值算法很重要,但应该从机器学习的角度来看待它们,以学习机器的视角作为一种手段,以更全面的方式整合模拟和深度学习。他邀请学生加入这个令人兴奋的机器学习教学实验,由九位不同的讲师组成独特的设置。
Numerics of ML 1 -- Introduction -- Philipp Hennig
Numerics of ML 1 -- Introduction -- Philipp Hennig
  • 2023.01.16
  • www.youtube.com
The first lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both ...
 

第 2 讲 -- 数值线性代数 -- Marvin Pförtner



ML 2 的数值 -- 数值线性代数 -- Marvin Pförtner

数值线性代数是机器学习、高斯过程和其他非参数回归方法的基础。讲座涵盖了数值线性代数的各个方面,包括理解矩阵结构对于更有效乘法的重要性、通过解决超参数选择问题和计算核矩阵优化机器学习算法,以及使用LU 分解等。该讲座还强调了正确实现算法的重要性,因为用于数学运算的算法对性能、稳定性和内存消耗有重大影响。

在视频的第二部分,Marvin Pförtner 讨论了数值线性代数在机器学习算法中的重要性。他涵盖了各种主题,包括 LU 分解、Cholesky 分解、矩阵求逆引理和高斯过程回归。 Pförtner 强调了利用结构来提高算法效率的重要性,并强调了数值稳定性在求解高斯过程回归中的大型方程组时的重要性。他还讨论了处理大型数据集的主动学习和低秩近似等技术,以及内核矩阵的潜在内存限制。总体而言,该视频展示了数值线性代数在机器学习的许多方面发挥的关键作用。

  • 00:00:00 在本节中,一名博士生讨论了数值线性代数在机器学习和高斯过程中的重要性。数值线性代数是机器学习的基础,它是实现算法所需的一组工具。该讲座涵盖了对机器学习很重要的数值线性代数的基本任务,探索使数值线性代数算法快速可靠的结构,以及正确实施高斯过程回归。讲座还引用了数值线性代数的应用示例,如基本概率论、一般线性模型、主成分分析和进行降维的矩阵向量乘积。

  • 00:05:00 在本节中,演讲者讨论了机器学习背景下的数值线性代数。他解释了高斯过程(机器学习中的一种非参数回归方法)如何依赖于先验概率度量,即生成对称正定核 Gram 矩阵的高斯过程。该矩阵中的生成信息允许高效且可靠的算法。演讲者还提到了相似的方程式如何应用于更大类别的模型,包括核方法和岭回归。他还简要讨论了数值线性代数如何用于求解线性偏微分方程以及如何用于损失函数局部优化的优化方法。

  • 00:10:00 在本节中,演讲者讨论了线性代数在机器学习中的重要性,并提供了示例来说明这种重要性。矩阵向量乘法、线性系统解和矩阵分解等线性代数运算是许多机器学习模型的基础。此外,他还指出,许多机器学习模型实际上是有噪声的,因为它们使用了旨在解决线性系统问题的矩阵的带噪声估计。最后,他强调对数行列式在高斯密度情况和 GP 回归中必不可少,以获得最大后验估计。

  • 00:15:00 在本节中,演讲者强调了高效矩阵向量乘法在数值线性代数和机器学习中的重要性。他们给出了一个例子,说明如果数学表达式没有正确地转换为算法,即使是简单的任务也会变得在计算上不可行。演讲者还强调了识别矩阵中的结构以提高乘法效率的重要性。他们总结说,实现数学运算的算法对性能、稳定性和内存消耗有重大影响。

  • 00:20:00 在本节中,演讲者强调了理解矩阵结构对于优化机器学习算法的重要性。他解释说,如果您知道矩阵中存在低阶结构,那么您应该使用专门用于低阶矩阵的方法对其进行因式分解,而不是乘以整个矩阵。他解释说,降低只是一种结构,还有各种矩阵结构,例如稀疏矩阵和核矩阵,它们也取决于回归器的非零项和输入维度。演讲者还谈到了如何存储内核矩阵以节省内存。

  • 00:25:00 在本节中,演讲者讨论了如何有效地存储和评估高斯过程的核矩阵。如果数据点超过一定限度,由于内存问题,存储它们的简单方法不再可行。有可用的库可以编写非常高效的 CUDA 内核,并使用 GPU 在笔记本电脑上使用数十万个数据点计算高斯过程。演讲者还谈到了具有一般函数形式的矩阵,例如自动差异图,它们需要相同的时间和空间要求。最后,演讲者深入探讨了将贝叶斯回归应用于高斯过程的具体算法,其中高斯测度的核是未知函数的协方差。演讲者展示了函数的后验测量图以及观察到的数据,以及不确定性量化如何运作良好。然而,当计算逆时问题出现了,它的规模非常大,使得从 n 个数据点计算核语法矩阵的天真方法对于大 n 不可行。

  • 00:30:00 在本节中,演讲者讨论了高斯过程中计算核矩阵的数值复杂性,这可能会变得非常昂贵。此外,还有一些超参数需要针对内核进行调整,例如输出尺度和长度尺度,以便优化先验来解释观察到的数据集。演讲者描述了通过计算对数边际似然和最小化损失函数来解决此模型选择问题的贝叶斯方法,该损失函数由模型拟合和高斯分布的归一化因子表示的复杂性之间的权衡组成。演讲者展示了严重欠拟合和过度拟合的示例,并解释了如何找到这两项之间的权衡以实现最佳模型性能。

  • 00:35:00 在本节中,Marvin Pförtner 讨论了线性系统的解决方案。该解决方案需要 M 加一求解,其中 M 是我们要评估回归量的数据点数。在大多数情况下,该系统是对称且正定的,但由于系统通常很大,因此可能需要利用其他结构,而我们通常无法针对非常大的数据集解决此问题。一种非常重要的矩阵分解是 Lu 分解。用于求解下三角系统的算法是前向代换,它将矩阵分解为四个部分:右下角的标量,其上方的列为零,左侧的行向量和另一个称为 L minus li 的三角形部分减去它上面的一个,它也是下三角。

  • 00:40:00 在本节中,Marvin Pförtner 讨论了如何求解系统矩阵为下三角矩阵且维数 n 减一的系统。通过拆分最后一行,可以使用简单的算法求解系统。然后使用递归方法解决任何给定维度的系统。 Pförtner 还解释了如何使用他所谓的 Lu 分解将矩阵拆分为下三角和上三角部分,这是一种使用分而治之技术的递归定义。此技术可用于求逆矩阵并降低线性系统的求解成本,其过程为 O(N^2) 而不是 O(N^3)。

  • 00:45:00 本节讲解求解线性方程组的Lu分解法。此方法将矩阵分解为下三角矩阵和上三角矩阵,从而可以更快地计算线性系统的解。该过程涉及将下三角矩阵左侧部分的对角线元素设置为 1,并使用部分旋转来确保稳定性和鲁棒性。尽管该方法效率很高,但必须考虑 O(n^3) 的计算成本。

  • 00:50:00 在本节中,Marvin Pförtner 讨论了 UD 分解的计算时间并演示了如何实施它。他解释说,每个递归步骤的最大部分是外积和减法的计算,这导致对两倍 (n-1) 平方的求和。该算法使用一种称为高斯消去法的策略,可以高效地计算上三角矩阵。 Pförtner 展示了如何使用小矩阵执行示例计算,证明 L 的非平凡部分包含在对角线下方的三个条目中,上三角部分将包含 U 的非零部分。通过保留所有内容在内存中,Pförtner 提出了一种巧妙地将 L 和 U 存储在同一矩阵中的实现。

  • 00:55:00 在本节中,演讲者解释了数值线性代数中 LU 分解的过程。他展示了如何逐步计算算法以及如何使用它来求解线性系统。一旦我们有了矩阵的 LU 分解,我们就可以应用它来有效地求解具有多个右侧的多个线性系统,一次前向和后向代换仅花费 2N 平方。置换矩阵的逆就是它的转置,计算成本低,使得在高斯过程回归中用相同的系统矩阵执行 K 求解成为可能。

  • 01:00:00 在本节中,演讲者讨论了如何使用计算效率高的 LU 分解有效地求解具有相同矩阵的多个线性系统。此外,还提出了一种使用 LU 分解计算对数行列式的方法,该方法可以有效表示线性系统并使用它执行各种线性代数任务。演讲者强调了利用结构提高算法效率的重要性,并指出 Cholesky 分解是 LU 分解的一个特殊版本,它利用了核 gram 矩阵的对称和正定性质。

  • 01:05:00 在本节中,演讲者讨论了高斯过程中后验均值和协方差的计算。要获得后验均值,需要通过前向代入求解一个系统,通过后向代入求解另一个系统。演讲者指出,利用协方差矩阵的 cholesky 因子结构,可以很好地降低矩阵的近似值。此外,他还谈到了可能无法将大核矩阵放入内存的问题,并提出了两种解决该问题的方法;在所采用的内核中使用结构或使用稀疏近似。

  • 01:10:00 在本节中,演讲者讨论了如何在机器学习算法中有效地求逆矩阵。他以从正弦函数生成的数据集为例,表明通过了解数据集的生成结构,人们可以选择反映该知识且计算效率高的内核。矩阵求逆引理是一种工具,可用于通过用少量子空间扰动矩阵来有效地求逆矩阵。通过使用这个引理,可以非常有效地计算表达式,甚至不需要在内存中形成整个矩阵。演讲者强调,在机器学习算法中使用结构有许多不同的方法。

  • 01:15:00 在本节中,讲师讨论了机器学习中用于高斯推理和超参数优化的数值线性代数方法。将 GP(高斯过程)回归扩展到大型数据集的一种方法是近似反演,它涉及对内核矩阵中表示的系统矩阵的低秩近似的迭代构造。讲师使用 Cholesky 算法作为示例演示了此方法,并展示了如何在不计算整个 Cholesky 分解的情况下即时获得矩阵的低阶逼近器。近似的质量取决于核矩阵和数据点的处理顺序。总的来说,本节强调了数值线性代数在机器学习各个方面的重要性。

  • 01:20:00 在本节中,Marvin Pförtner 讨论了如何选择 Cholesky 处理数据点的顺序以逼近核矩阵。他解释说,将 gram 矩阵与置换矩阵预乘,也称为全主元化或主元 Cholesky 分解,可以导致较低的近似值和较少的迭代。这个想法是在 Todeschini 的一次迭代之后观察数据点的预测变量,然后使用收集到的信息来选择要在下一次迭代中观察的数据点。这种技术被认为是一个主动学习问题,可以产生一种同时处理行和列的巧妙方法,从而以在线方式探索矩阵的生成结构。

  • 01:25:00 在本节中,演讲者讨论了奇异值分解 (SVD) 以及它如何解决优化问题以获得矩阵近似的最佳因子。然而,截断 SVD 可能是任意糟糕的,因此使用启发式方法来近似 SVD 并计算特征分解。还需要矩阵平方根,这可以通过 Cholesky 分解来实现。在实践中实现数值线性代数算法时考虑结构很重要,因为这可以显着加快过程。

  • 01:30:00 在本节中,Marvin Pförtner 讨论了数值线性代数的结构如何影响高斯过程回归。高斯过程回归是计算密集型的,需要求解大型方程组,这可以使用数值线性代数技术来完成。演讲者强调了求解这些方程组时数值稳定性的重要性,以避免最终结果失去准确性。
Numerics of ML 2 -- Numerical Linear Algebra -- Marvin Pförtner
Numerics of ML 2 -- Numerical Linear Algebra -- Marvin Pförtner
  • 2023.01.16
  • www.youtube.com
The second lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both...
 

第 3 讲 -- 缩放高斯过程 -- Jonathan Wenger



ML 3 的数值——缩放高斯过程——Jonathan Wenger

Jonathan Wenger 在“Numerics of ML 3”视频中讨论了为大型数据集缩放高斯过程的技术。他探索求解线性系统和学习逆矩阵的迭代方法,主要目标是实现泛化、简单/可解释性、不确定性估计和速度。 Wenger 向内核矩阵引入了低秩近似,例如迭代 Cholesky 分解、部分 Cholesky 和共轭梯度法。他还讨论了在处理大型数据集时加速收敛和提高稳定性的预处理。最后,他建议使用正交矩阵 Z 重写矩阵的迹,这可能会导致缩放高斯过程的二次时间。

在讲座的第二部分,Jonathan Wenger 讨论了此视频中大型数据集的缩放高斯过程 (GP)。他提出了各种策略来提高 GP 回归的蒙特卡罗估计的收敛速度,包括使用线性系统求解的现有预条件子来估计核矩阵及其逆矩阵。他还通过变分逼近介绍了线性时间 GP 的概念,并使用归纳点法解决了不确定性量化问题。通过使用这些策略,GPU 可以扩展到具有多达一百万个数据点的数据集,从而更容易快速优化超参数。

  • 00:00:00 在视频的这一部分中,Jonathan Wenger 讨论了如何使用迭代方法对大型数据集缩放高斯过程来求解线性系统。他解释说,这些方法可以看作是逆矩阵的学习算法,逆矩阵是计算 GP 后验所需的主要对象。 Wenger 还概述了回归的主要目标,包括泛化、简单性/可解释性、不确定性估计和速度。他指出,GP 是可以实现所有这些目标的模型的主要例子,但它们的训练和推理成本很高。然而,通过开发现代方法来求解具有核矩阵的线性系统,GPS 的二次时间推断可以比立方时间更快地完成。 Wenger 还暗示有一种方法可以在线性时间内更快地做到这一点,但他承认可能存在一些缺点,他将在下一课中进一步讨论。

  • 00:05:00 在本节中,演讲者讨论了处理大型数据集时高斯过程的 Scholesky 分解的局限性,因为它在时间和空间复杂性方面变得令人望而却步。他提出了迭代方法来降低数据点数量平方的复杂性,展示了迭代 Cholesky 如何用于核矩阵的低秩近似。然而,问题不是逼近核矩阵本身,因为 GP 回归需要核矩阵或精度矩阵的逆矩阵的近似,所以问题是 Cholesky 的迭代公式是否可以解释为精度矩阵的近似线性求解矩阵。

  • 00:10:00 在本节中,演讲者探讨了 Cholesky 分解的迭代形式,它可用于内核矩阵的低秩近似。通过跟踪附加量,可以获得矩阵的逆近似,它也是低秩的,类似于 Cholesky。演讲者演示了如何根据 Cholesky 因子和残差递归地计算逆向近似。这种迭代方法可以用作正定矩阵(例如核矩阵)的近似矩阵求逆算法,并且是缩放高斯过程的有用工具。

  • 00:15:00 在本节中,演讲者讨论了使用部分 Cholesky 方法缩放高斯过程。该方法涉及用一个因子修改 Cholesky 分解并将其与一个向量相乘。这导致了一个迭代过程,该过程通过添加向量的外积来产生逆向近似。复杂性分析表明,它与逼近矩阵本身一样昂贵。演讲者还将部分 Cholesky 方法与 GP 回归进行了比较,并强调了选择正确的数据点或单位向量以改进学习过程的重要性。

  • 00:20:00 在本节中,Jonathan Wenger 讨论了在近似高斯过程 (GP) 的核矩阵时选择正确数据点的重要性。他说明了随机选择数据点作为条件是如何导致学习过程变慢的。他介绍了“共轭梯度法”,最初是为解决 GP 回归中的线性系统而设计的。该方法将 ax=B 的问题改写为二次优化问题,其中 a 是核矩阵,B 是大小为 n 的向量,相当于求解线性系统 ax=B。通过取二次函数的梯度并将其设置为零,到ax的列等于B,可以定义一个残差为B减去ax,可以用来寻找更好更高效的数据点选择方式来加速上学习过程。

  • 00:25:00 在本节中,Jonathan Wenger 讨论了在高斯过程中使用共轭方向进行优化。他解释说,通过修改我们行走的方向,在使用共轭方向时,我们最多可以收敛 n 步。首先,他使用负梯度作为最陡下降方向的第一步,并修改这些步骤以满足共轭条件。他介绍了该算法并解释了其高级部分,包括基于梯度范数的停止标准。

  • 00:30:00 在本节中,Jonathan Wenger 讨论了共轭梯度法,这是一种在求解多个线性系统的后验协方差时近似逆的方法。共轭梯度法构造了逆的近似值,它与部分施华洛世奇一样是低秩的。解估计的更新涉及共轭方向 di,矩阵 CI 近似于所有先前搜索方向堆叠成列的形式的逆。该方法允许快速求解场景系统,其低秩结构使其成为缩放高斯过程的有效方法。

  • 00:35:00 在本节中,演讲者将部分 Scholastic 方法与高斯过程推理的共轭梯度法进行了比较。共轭梯度法收敛得更快,演讲者解释说,共轭梯度法中使用的“动作”以不同的方式探测矩阵,从而实现更好的收敛。然而,演讲者指出,分析方法收敛的速度很重要,这需要理解数值,特别是机器精度和条件数。条件数是最大特征值除以最小特征值的绝对值,用于衡量实施反演算法时不可避免的误差放大。

  • 00:40:00 在本节中,Jonathan Wenger 讨论了使用核矩阵求解线性系统的方法的稳定性和收敛行为,例如共轭梯度法或 Cholesky 分解。稳定性由矩阵的条件数决定,条件数取决于矩阵的特征值,条件数越大,方法越不稳定。收敛行为由矩阵的条件数和最大的条件数除以最小的特征值决定。条件数越接近1,收敛越慢。尽管具有一千个数据点的核矩阵的条件数相当大,但 Wenger 表明,相对于问题规模,共轭梯度法在几百次迭代中仍然可以快速收敛。

  • 00:45:00 在本节中,Jonathan Wenger 讨论了缩放高斯过程和观察噪声对收敛的影响。随着观察噪声的降低,CG 的收敛速度因核矩阵条件数的膨胀而减慢。条件数是最大特征值除以最小特征值,随着数据点彼此越来越近,条件数会爆炸。为了解决这个问题,可以使用预处理来近似内核矩阵,假设矩阵的存储相对于存储实际矩阵来说是相当便宜的。通过有效地评估近似的逆,预处理器可以用更容易解决的问题代替原始问题,从而加快 CG 的收敛速度。

  • 00:50:00 在本节中,乔纳森·温格 (Jonathan Wenger) 讨论了缩放高斯过程中的预处理概念,以实现更高效的线性系统求解。他用概率学习方法的例子来解释问题的先验知识如何使其更容易解决,同样,预处理将问题转换为更接近单位矩阵,因此更容易解决。通过使用预调节器,系统的条件数得到降低,从而加速 CG 并使其更加稳定。 Wenger 通过使用低秩加对角线预处理器和部分 SVD 在七分钟内解决具有 100,000 个数据点的大型线性系统来展示预调节的效率。

  • 00:55:00 在本节中,演讲者讨论了在 Cholesky 的超参数优化期间使用预条件共轭梯度 (CG) 求解线性系统。为了评估损失并计算其梯度,我们需要求解线性系统并计算迹线。然而,计算轨迹涉及 n 个矩阵向量乘法,这对于大型数据集来说太昂贵了。为了解决这个问题,演讲者建议使用正交矩阵 Z 使得 cx Z(transpose) = identity matrix,允许我们将 a 的迹重写为 Z(transpose) xax Z 的迹。这种近似方法可能会导致二次方缩放高斯过程的时间。

  • 01:00:00 在本节中,演示者讨论了扩大内核矩阵迹计算的挑战,其中涉及执行多个矩阵-向量乘法。一种可能的解决方案是通过绘制随机向量来随机化计算,用维度的平方根缩放,然后计算身份协方差。通过近似随机向量的协方差,可以计算出迹,这与解决没有随机向量的原始问题是一样的。然而,在这种方法中使用蒙特卡洛估计器对于大型数据集是不够的,因为它需要数万个随机向量,使得超参数优化速度很慢。

  • 01:05:00 在本节中,Jonathan Wenger 讨论了针对大型数据集缩放高斯过程 (GP)。他解释说,线性系统求解的现有预条件子可用于估计内核矩阵,及其逆矩阵可用于处理数据缩放问题。使用具有部分 Cholesky 的预处理器或随机轨迹估计有助于估计回溯。使用相同的信息,也可以估计对数行列式的梯度。通过使用这些策略,GPU 可以扩展到具有多达一百万个数据点的数据集。 Wenger 指出,预训练涉及使用小型数据集作为跳板来优化混合参数。

  • 01:10:00 在本节中,演讲者讨论了提高高斯过程回归的蒙特卡罗估计收敛速度的不同策略。通过继承预处理收敛速率,可以按指数或多项式更快地收敛到真值。选择通过矩阵向量乘法观察核矩阵的动作也会影响收敛速度。因此,为了开发高斯过程的快速数值算法,需要领域专业知识,这可以通过先决条件或动作的选择来提供,以快速收敛。此外,引入了通过变分逼近的线性时间 GP 的思想,这涉及将高维数据压缩到较小的训练数据集中,以更有效的方式对其进行总结。

  • 01:15:00 在本节中,Wenger 讨论了高斯过程的使用以及如何有效地缩放它们。这个想法是总结训练数据以提供对后验的直接近似,它只需要 I 平方 n,其中 I 是诱导输入的数量,n 是训练数据的大小。然而,迭代方法需要超参数优化,这也需要考虑。在这种情况下可以使用诸如批量优化或 sdd 之类的随机方法,可以使用首选优化器对其进行快速优化。所有基本操作都是 I 的立方或 I 的平方乘以 n,除了评估内核矩阵,这是成本最高的操作。

  • 01:20:00 在本节中,演讲者讨论了使用诱导点法缩放高斯过程的不确定性量化问题,这需要先验地为数据集设置诱导点的数量。随着优化器搜索更好的汇总数据点,由此产生的不确定性量化与真正的高斯过程明显不同。迭代方法可以控制近似的精度直到时间耗尽,而诱导点方法需要在优化前控制近似的保真度。演讲者提出了一个问题,即是否可以设计一种方法,在这种方法中,无论计算时间如何,在近似的任何点都可以信任不确定性量化。
Numerics of ML 3 -- Scaling Gaussian Processes -- Jonathan Wenger
Numerics of ML 3 -- Scaling Gaussian Processes -- Jonathan Wenger
  • 2023.01.17
  • www.youtube.com
The third lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both ...
 

第 4 讲 -- 计算感知高斯过程 -- Jonathan Wenger



ML 4 的数值——计算感知高斯过程——Jonathan Wenger

在这段关于 ML 数值的视频中,Jonathan Wenger 讨论了计算感知高斯过程及其量化预测中的近似误差和不确定性的能力。他探讨了选择正确动作的重要性,以及共轭梯度如何显着降低不确定性并加快学习速度。 Wenger 还谈到使用基于诱导点的线性时间 GP 近似,但强调了此类近似产生的问题。最后,他讨论了更新关于代表性权重的信念以及使用概率学习算法来解决代表性权重中的错误。总的来说,该视频展示了计算感知高斯过程在通过考虑计算不确定性来提高预测准确性方面的有效性。

Jonathan Wenger 还在本视频中讨论了计算感知高斯过程及其复杂性。他解释说,只需要计算和存储核矩阵的上象限,算法的计算成本与这个象限的大小成正比。高斯过程可以用于任意大小的数据集,只要计算只针对特定的数据点,模糊了数据和计算之间的界限。 Wenger 认为,可以通过对预测数据进行调节来对 GP 进行建模以说明这种情况。他引入了一个新定理,允许使用近似模型对不确定性进行精确量化。最后,他预演了下周关于将 GP 模型扩展到物理定律部分支配正在学习的功能的情况的讲座。

  • 00:00:00 在本节中,乔纳森·温格 (Jonathan Wenger) 谈到了高斯过程讲座的最终高潮,他在其中演示了如何在任意时间内进行精确的不确定性量化。他解释说,这种方法允许用户始终量化他们与他们试图学习的功能的距离,无论他们投入多少计算,或者无论他们的预算是多少。通过将之前课程中的算法重新解释为学习代理,他们能够量化近似误差,并将其引入预测后验。此外,他们还讨论了通过计算机观察数据的意义以及围绕它的哲学辩论。

  • 00:05:00 在本节中,Jonathan Wenger 讨论了在处理计算感知高斯过程时选择正确操作的重要性。他表明,行动的选择可以显着减少不确定性并加快了解被预测现象的过程。此外,他还探索了共轭梯度法,以此作为求解线性系统或最小化二次函数时寻找更好动作的方法。通过考虑问题的几何形状,共轭梯度可以在少量步骤中收敛到一个解。

  • 00:10:00 在视频的这一部分,Jonathan Wenger 讨论了计算感知高斯过程以及它们与其他近似方法的区别。他谈到了部分共轭梯度和部分天空逆近似方法中最昂贵的操作是矩阵向量乘法。然后,他提出了基于归纳点作为摘要数据点的线性时间 GP 近似的想法,并讨论了由线性时间近似引起的问题。 Wenger 随后介绍了计算感知 GP 推理,它解决了精确不确定性量化的问题,并表示这是将于今年晚些时候在 NURBS 上展示的前沿研究。

  • 00:15:00 在本节中,乔纳森·温格 (Jonathan Wenger) 讨论了计算感知高斯过程,以及如何量化因使用迭代方法求解线性代表性权重系统而产生的近似误差。他解释说,GP 模型中的核函数编码了关于真实函数是什么样子的假设,迭代求解器近似这些权重以构建后验均值预测。通过概率地量化这种近似误差,可以将额外的不确定性添加到预测中,从而提高模型的准确性。 Wenger 还简要回顾了高斯分布的线性代数,以及它们如何使概率论中的计算变得更容易,尤其是在条件和观察方面。

  • 00:20:00 在本节中,乔纳森·温格 (Jonathan Wenger) 讨论了高斯分布的特性,以及如何使用它们来确定给定观察 Y 的变量 X 的后验分布。通过结合缩放和边缘化的特性,可以使用高斯过程量化代表性权重估计中的近似误差。 Wenger 解释了如何更新先验高斯分布并将其用于学习无法直接观察到的真实代表性权重。高斯钟形曲线的分布和方向可用于确定寻找真正代表性权重的方向。

  • 00:25:00 在本节中,乔纳森·温格 (Jonathan Wenger) 解释了如何使用残差和矢量变换间接观察计算感知高斯过程中的黑点。他展示了如何应用仿射高斯推理定理来计算表示和估计权重之间的距离。该过程涉及将信念折叠到正交线上并开发一维概率信念,用于找到表示的权重。 Wenger 还讨论了如何选择与先前信念一致的信息量更大的红线,以得出更准确的解决方案。
     
  • 00:30:00 在本节中,乔纳森·温格 (Jonathan Wenger) 讨论了一种算法,该算法通过对动作乘以残差的观察来更新关于计算感知高斯过程中代表性权重的信念。他解释说更新涉及仿射高斯推理,并指出更新过程中的关键要素。虽然该算法类似于 CG 和部分 Cholesky,但他指出,先验的选择仍然是一个需要解决的问题,因为它必须与真正的代表性权重所在的位置相关联才能获得良好的误差估计。 Wenger 提出 GP 先验和所做的假设与代表性权重相关,因为它们涉及核矩阵的逆,使它们在 GP 先验中很重要。

  • 00:35:00 在本节中,Jonathan Wenger 讨论了如何在使用高斯过程 (GP) 进行任何观察之前了解生成的分布数据。假设 f 上的分布,Wenger 解释说,当使用零均值高斯先验时,标签根据零均值分布,并根据核矩阵加上独立噪声而变化,这是观察模型的一部分。 Wenger 然后讨论了使用概率学习算法寻找代表,该算法通过投射到动作来更新先验。最后,Wenger 解释了如何通过计算在数据点评估的 mu star 的分布来解决需要校准先验 K hat 逆的问题,这是 V star 的线性函数。

  • 00:40:00 在本节中,Jonathan Wenger 解释了计算感知高斯过程以及如何考虑计算不确定性。他讨论了边缘化的概念,其中考虑了随机变量的多个选项,并计算了将所有可能的代表性权重估计考虑在内的后验均值预测。他解释了线性边缘化是如何工作的,以及它如何为协方差增加额外的不确定性。 Wenger 随后继续讨论将 GP 的不确定性解释为平均误差估计,以及如何将计算不确定性也视为误差估计。总的来说,本节解释了组合不确定性的计算,包括对真实函数的误差和代表性权重中的误差到一个单一的估计中。

  • 00:45:00 在本节中,演讲者讨论了计算感知高斯过程,该过程结合了由于没有足够的观测数据而导致的错误和由于没有执行足够的计算来学习预测而导致的错误。演讲者通过 Ed Cholesky 和 CG 动作演示了此过程的两个动作示例。所提出的称为 GP 的方法计算后验并将代表性信念与初始化相结合,以通过跟踪不确定性获得更准确的预测。该方法简单有效,从减少的计算不确定性和更接近绘制图中的真实后验均值中可以看出。

  • 00:50:00 在本节中,演讲者讨论了计算感知高斯过程和信念的使用,而无需反转核矩阵。他们在特定方向上选择一个动作,并观察它们与所选子空间中的两个表示权重的接近程度,这会影响它们收敛到表示权重的速度。为了更新代表性权重的估计,他们观察投影残差并计算行走方向。他们还计算低秩近似值并更新他们对代表和精度矩阵的估计。他们使用部分阿拉斯加和 CG 应用相同的数量,选择单位向量动作来恢复某些动作,并设计了一种方法,如线性时间方法,根据以诱导点为中心的核函数对数据点进行加权。

  • 00:55:00 在本节中,Jonathan Wenger 讨论了计算感知高斯过程 (GP) 并将它们与完全独立的训练条件 GP (FITC-GP) 进行了比较。他介绍了Kernel Vector Actions,它解决了FITC-GP的一些问题,但是很密集,导致N平方的复杂度,因此不划算。 Wenger 表明,通过采取仅针对部分数据点的特定操作,它们可以降低核矩阵计算所需的复杂性。最后,计算 GP 具有更好的性能,并且此类操作被证明是可扩展的高精度计算的有用方法。

  • 01:00:00 在本节中,Jonathan Wenger 讨论了计算感知高斯过程及其复杂性。他表明只需要计算和存储核矩阵的上象限,因此算法的计算成本只与该象限的大小成正比。此外,他强调该算法可以用于任意大小的数据集,只要选择在下象限中具有零的动作来仅针对某些数据点进行计算。温格认为,这模糊了数据和计算之间的区别,因为只有针对计算的观察才被视为数据。最后,他指出,可以对高斯过程进行建模,以通过对投影数据进行调节来解释这种情况。

  • 01:05:00 在本节中,乔纳森·温格 (Jonathan Wenger) 解释说,高斯过程 (GP) 可以用两种方式来思考:作为正在发生的事情的更准确模型,或作为量化通过近似引入的误差的概率数字工具,并采取它在预测中被考虑在内。然后,他继续讨论将平方误差解释为概率度量,以及如何将组合后验用作预测工具。 Wenger 还引入了一个新定理,允许使用近似模型对不确定性进行精确量化,从而使用户可以像信任高斯过程一样信任他们的不确定性量化。

  • 01:10:00 在本节中,Jonathan Wenger 解释说,高斯过程 (GP) 可以通过设计一种学习算法来近似,该算法可以概率地量化算法的误差并将误差推到用于进行预测的 GP 后验,从而允许无论使用的计算能力如何,都可以进行精确的不确定性量化。 Wenger 还指出,虽然存在该方法的不同变体,但只要动作是线性独立的,它们就可以提供精确的不确定性量化。最后,Wenger 预演了下周的讲座,乔纳森将在讲座中讨论将 GP 模型扩展到物理定律部分支配正在学习的功能的情况。
Numerics of ML 4 -- Computation-Aware Gaussian Processes -- Jonathan Wenger
Numerics of ML 4 -- Computation-Aware Gaussian Processes -- Jonathan Wenger
  • 2023.01.17
  • www.youtube.com
The fourth lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both...
 

第 5 讲 -- 状态空间模型 -- Jonathan Schmidt



ML 5 的数值 -- 状态空间模型 -- Jonathan Schmidt

在本节中,Jonathan Schmidt 介绍了状态空间模型及其在机器学习中的应用。他解释说,状态空间模型用于模拟复杂的动力系统,这些系统只能部分观察到并且涉及高度非线性的相互作用。本讲座涵盖状态空间模型的图形表示以及马尔可夫属性和条件独立测量的重要性质。 Schmidt 提出了用于计算各种分布(例如预测、过滤和平滑分布)的不同算法,这些分布用于使用在不同时间点获得的测量值来估计系统状态。本讲座还涵盖了卡尔曼滤波算法在 Julia 中的实现以及线性高斯状态空间模型中平滑估计的计算。最后,施密特讨论了扩展卡尔曼滤波器,它允许在状态空间模型中估计非线性动力学和测量。

Jonathan Schmidt 还讨论了状态空间模型及其使用代码的实现,特别关注非线性动力学和扩展卡尔曼滤波器。他还演示了平滑算法和替代贝叶斯过滤方法,强调了它们的优缺点。讲座最后提出了进一步学习的建议,并期待下一节课,Nathaniel 将在下一节课中介绍用于模拟动力系统的概率数值。

  • 00:00:00 在本节中,Jonathan Schmidt 介绍了状态空间模型和动力系统,作为机器学习数字课程的新焦点。他解释说,动力系统会随着时间的推移而演变,并且只能部分观察到,这使得它们难以建模。 Schmidt 提供了 COVID-19 病例数和智能手机方向估计等示例来说明动态系统的时间结构和隐藏组件。最终目标是使用概率方法来模拟这些系统,但首先,必须建立语言和算法框架以从可观察数据中发现潜在组件。

  • 00:05:00 在本节中,演讲者讨论了状态空间模型,其中涉及在线估计任务,其目标是在新数据进入时快速更新复杂动力系统的估计。这些模型通常只能部分观察并涉及高度非线性的函数和相互作用。为此,需要一个算法框架来相应地更新信念。演讲者讨论了状态空间模型中使用的建模语言的图形表示,其中白色节点序列表示对系统状态建模的随机变量,红色框表示观察到的数据。动态系统的状态是一组决定系统演化的物理量,它们相互跟踪并相互作用。观察到的数据 y 取决于当前状态,并且通常仅适用于轨迹中的某些状态,而不适用于其他状态。

  • 00:10:00 在本节中,Jonathan Schmidt 介绍了状态空间模型作为动态系统建模的概率框架。他强调了状态空间模型的两个重要属性:马尔可夫属性和条件独立测量。使用这些属性,他将状态空间模型定义为贝叶斯模型,其中包括第一个状态的初始分布、后续状态的动力学模型和观察的测量模型。 Schmidt 指出,这些提炼出来的成分将构成本系列讲座其余部分的基础。

  • 00:15:00 在本节中,演讲者解释了如何使用状态空间模型分析系统并计算四种不同的条件概率分布。这些包括预测分布、过滤分布、数据似然和平滑分布,它们是为正在进行的序列中的每个步骤计算的。推导涉及引入正在计算的数量并根据已知信息构建联合分布。 Chapman Kolmogorov 方程用于根据过去的测量值预测未来,使用贝叶斯定理的校正步骤用于将新数据整合到估计值中。

  • 00:20:00 在本节中,演讲者解释了状态空间模型的概念以及其中使用的预测和更新方案。通过 Chapman-Homograph 方程计算预测分布,模型通过贝叶斯定理更新预测。然后演讲者展示了该算法的伪代码,该算法在线性时间循环中运行而不会倒退。演讲者强调了在给定所有先前测量的情况下为当前状态生成一系列分布的重要性。最后,演讲者介绍了线性高斯状态空间模型及其产生分布的方式。

  • 00:25:00 在本节中,演讲者介绍了具有过程噪声协方差矩阵 Q 的线性高斯系统的状态空间模型以及具有测量矩阵 H 和测量协方差矩阵 R 的测量模型。讲座解释了如何预测模型的滤波矩可以使用高斯推理来计算,后验分布是一组复杂的项。演讲者随后介绍了以匈牙利科学家鲁道夫·卡尔曼 (Rudolph Kalman) 的名字命名的卡尔曼滤波器,该滤波器允许计算封闭形式的预测和滤波矩。给出了卡尔曼滤波器的预测和校正方程,其中卡尔曼增益是将测量空间中获得的信息转换到状态空间以更新滤波均值的重要量。

  • 00:30:00 在视频的这一部分,Jonathan Schmidt 介绍了状态空间模型并解释了如何使用它们根据噪声测量过滤轨迹。他提供了一个使用 GPS 测量在二维平面中跟踪汽车的示例,并在 Julia 中编写了代码。施密特解释说,动力学模型是线性高斯模型,过程噪声协方差涉及时间步长的多项式项。他还强调,过滤轨迹仅使用以前和现在的数据点,并不受未来信息的影响。

  • 00:35:00 在本节中,演讲者解释了使用 Julia 代码实现状态空间模型的卡尔曼滤波器。他解释了如何设置转换和测量模型、预测均值和协方差以及使用测量模型校正估计值。然后,演讲者演示了如何运行卡尔曼滤波器,并提供了结果估计和相应不确定性的可视化。

  • 00:40:00 在本节中,Jonathan Schmidt 解释了如何使用状态空间模型来描述动力系统,以及如何使用允许使用线性代数计算有趣数量的线性高斯模型来构建它们。他还介绍了平滑后验的概念,它在给定所有可用数据点的情况下提供轨迹的最佳估计,并依靠过滤分布在反向递归算法中计算它们。虽然平滑方程的推导涉及概率论和马尔可夫特性,但由此产生的高斯随机变量集合使得计算每个时间步长的平滑分布变得容易。

  • 00:45:00 在本节中,演讲者解释了在线性高斯状态空间模型中计算平滑估计的过程。这涉及利用矩阵向量乘积运算并在下一个时间步边缘化,同时边缘化以从过滤后验计算后验。用于平滑估计的算法是通过 for 循环计算的,因为它仅在需要考虑数据集或固定部分时间步长时才有效。该过程涉及从时间序列的末尾开始,通过计算平滑增益并使用它来计算平滑矩,向后计算直到开始。演讲者还提到,过滤估计与时间序列末尾的平滑估计一致。平滑算法最终提供高斯过程后验作为平滑后验。

  • 00:50:00 在本节中,演讲者解释了如何通过假设包括线性过渡、线性测量、动力学和测量的加性高斯噪声以及马尔可夫特性来计算线性时间的高斯过程后验。然而,并不是所有的高斯过程后验都可以使用高斯滤波和平滑来计算。演讲者还讨论了放弃高斯假设的可能性,但这需要一类全新的算法。下一步涉及首先使用泰勒近似来查看非线性模型以线性化函数,然后使用公共过滤。

  • 00:55:00 在本节中,乔纳森·施密特 (Jonathan Schmidt) 讨论了状态空间模型和扩展卡尔曼滤波器,它是卡尔曼滤波器的扩展,用于非线性动力学和测量。非线性动力学和测量模型的线性化是通过使用雅可比矩阵实现的,允许使用经过一些修改的标准卡尔曼滤波器方程。预测均值在先前的过滤均值处进行评估,从而可以轻松计算预测协方差矩阵。对测量模型进行类似的线性化处理,推导出扩展的卡尔曼滤波方程。 Schmidt 指出,当不可能或不希望区分非线性函数时,扩展卡尔曼滤波器很有用。

  • 01:00:00 在本节中,Jonathan Schmidt 讨论了如果我们无法区分我们的功能会发生什么以及如何解决它。一种可能的解决方案是在方案中使用有限差分,我们在其中构建类似于标准有限差分的差分,然后执行相同的操作。 Schmidt 还构建了扩展根平滑器,方法是查看平滑后的方程并插入作为转置转移矩阵的非线性函数的雅可比矩阵,该矩阵在滤波均值处进行评估。 Schmidt 提供了一个使用钟摆的非线性状态空间模型的代码示例,其中状态维数为 2,测量值是标量。他使用非线性变换建立了动力学模型,并讨论了过程噪声协方差。

  • 01:05:00 在本节中,Jonathan Schmidt 讨论了状态空间模型以及如何使用代码实现它们。他解释了系统的非线性动力学和用于测量的简单线性测量模型。他还演示了如何实施扩展卡尔曼滤波器来估计钟摆的轨迹。该滤波器使用自动微分来计算非线性动态函数的雅可比矩阵和测量函数的梯度。生成的动画显示了预测的轨迹和嘈杂的测量结果。

  • 01:10:00 在本节中,Jonathan Schmidt 讨论了状态空间模型中的滤波估计和扩展平滑。滤波估计在阴影区域显示不确定性估计,而平滑算法使用自动微分整理滤波估计,计算平滑增益、平滑均值和平滑协方差。平滑器返回一个高斯过程后边缘,它很好地覆盖了地面真实轨迹的不确定性。 Schmidt 还提到了贝叶斯过滤的替代方法,例如用于近似分布的无迹卡尔曼滤波器,以及近似实际真实后验的粒子滤波器。虽然这些方法各有利弊,并且可能更难实施,但它们对于非线性或非高斯模型可能是有效的。 Schmidt 向有兴趣了解这些方法的人推荐 Simo Särkkä 所著的《贝叶斯滤波和平滑》一书。

  • 01:15:00 在本节中,演讲者总结了关于状态空间模型、线性高斯模型以及用于处理非线性动力学和测量的卡尔曼和扩展卡尔曼滤波器的知识。推荐下一个讲座,Nathaniel 将介绍一种强大的语言来捕捉自然规律,并将其与一周后的讲座结合起来,学习如何通过贝叶斯过滤和平滑使用概率数值来模拟这些动力系统。演讲者最后征求反馈并感谢听众抽出宝贵时间。
Numerics of ML 5 -- State-Space Models -- Jonathan Schmidt
Numerics of ML 5 -- State-Space Models -- Jonathan Schmidt
  • 2023.01.24
  • www.youtube.com
The fifth lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both ...
 

第 6 讲 -- 求解常微分方程 -- Nathanael Bosch



ML 6 的数值 -- 求解常微分方程 -- Nathanael Bosch

Nathanael Bosch 介绍了机器学习中 ODE 的概念,它描述了函数在给定输入和随时间演变的模型系统的情况下的导数。他讨论了求解 ODE 的挑战并介绍了数值方法,例如前向欧拉和后向欧拉,以及它们的稳定性。 Bosch 探索了不同的数值方法及其在准确性和复杂性方面的权衡,例如显式中点方法和经典的四阶方法。他强调了局部误差、顺序和理解稳定性的重要性,以避免在使用库求解 ODE 时出现问题。

视频的第二部分讨论了使用机器学习技术估计常微分方程 (ODE) 的矢量场和初始值的问题。演讲者解释了写下 ODE 状态的生成模型和观察模型以解决推理问题的重要性。通过最小化产生参数估计的负对数似然来最大化似然函数。演讲者使用 SIR-D 模型演示了这种方法,并讨论了使用神经网络来改进接触率的估计。还强调了 ODE 在机器学习研究中的重要性及其在解决现实问题中的作用。

  • 00:00:00 在讲座的这一部分,Nathanael Bosch 介绍了常微分方程 (ODE) 的概念及其在机器学习中的应用。他将 ODE 定义为一种描述给定输入的函数的导数的方法,并解释说在机器学习中,ODE 通常用于对随时间演变的系统建模。他举例说明了 ODE 在机器学习中出现的位置,包括扩散模型和优化问题。 Bosch 还讨论了求解 ODE 的挑战,由于完美求解它们不切实际,因此需要复杂的数值求解器。

  • 00:05:00 在本节中,演讲者讨论了如何使用 ODE 将噪声转换为数据以对复杂分布进行建模,这是通过归一化流完成的。他还解释了神经 ODE 的概念,这引发了大量研究,并将残差神经网络重新解释为更连续事物的离散化。此外,演讲者将 ODE 与优化联系起来,特别是梯度流,这比离散梯度下降更容易编写定理。最后,演讲者讨论了参数推理如何作为使用 ODE 学习未知事物的示例,并且在下一讲中,将把数值 ODE 解解释为机器学习算法。演讲者得出结论,虽然我们可以写下 ODE 的解,但由于积分问题和未知变量,它没有帮助。

  • 00:10:00 在本节中,解说员介绍了常微分方程 (ODE) 和初始值问题,这对于理解机器学习中的许多算法至关重要。 ODE 表示系统随时间的变化率,求解问题需要初始值。 ODE 的解由依赖于初始值的函数给出,而 ODE 的数值解需要逐步外推。叙述者提出了人口增长的逻辑 ODE 问题,并给出了解决方案。解说员强调解决初值问题的目标是在给定 ODE 向量场的情况下找到特定起点的解。求解 ODE 的困难在于求解积分和处理微分项。解说员建议 ODE 数值解的小步长,以准确逼近真实解。
     
  • 00:15:00 在本节中,Nathanael Bosch 解释了求解常微分方程的不同数值方法。他提出的第一种方法是零阶泰勒级数逼近,其中仅考虑当前时间步的函数值进行逼近。这就引出了前向欧拉法,它是一个用于计算下一个时间点的简单、明确的公式。 Bosch 指出,虽然这种方法是一种糟糕的近似方法,但它仍然广泛用于软件和动态模拟。

  • 00:20:00 在本节中,视频讨论了求解常微分方程 (ODE) 的两种方法:前向欧拉法和后向欧拉法。前向欧拉法使用当前点的斜率来近似下一个点的值,而后向欧拉法使用泰勒级数近似 Tau 等于 t 加 h。该视频提供了使用 logistic ODE 的两种方法的代码示例,它们产生了合理的解决方案。但是,该视频警告说,在选择数值求解器时,可能需要额外考虑更复杂的微分方程。此外,该视频还谈到了数值方法的复杂性以及在使用数值包时了解底层算法的重要性。

  • 00:25:00 在本节中,演讲者讨论了显式和隐式方法在求解常微分方程 (ODE) 时的区别,以及稳定性在选择合适算法时的重要性。演讲者比较了简单标量 ODE 的前向欧拉法和后向欧拉法,x' = λx,其中 λ 小于零。前向欧拉法仅对 1 + hλ 小于 1 的步长稳定,而后向欧拉法对所有步长稳定。演讲者演示了选择不合适的步长会导致发散行为,强调稳定性在选择合适的 ODE 求解方法时的重要性。

  • 00:30:00 在本节中,Nathanael Bosch 讨论了求解常微分方程 (ODE) 的前向欧拉法和后向欧拉法之间的差异。虽然这两种方法使用相似的数学,但后向欧拉对收敛的要求很小,并且可以处理前向欧拉无法处理的常微分方程中的僵硬区域。数值求积是必要的,而且有很多方法可以做到。此外,构造 X hat,函数在给定时间的近似值,是另一个问题,不同的方法会产生不同的答案。总体而言,方法的选择取决于计算时间和 ODE 的预期陡度等因素。

  • 00:35:00 在本节中,Nathanael Bosch 解释了求解常微分方程 (ODE) 的数值方法的一般公式,其中涉及三个变量:bi、Qi 和 X 帽子。他还介绍了 butcher tableaus,以此来使对不同方法的讨论更加紧凑和可读,并指出计算 bi 和 Qi 的不同方法,以及如何构建 X 帽,是使每种方法独一无二的原因. Bosch 给出了不同数值方法的示例,包括最简单的正向欧拉方法,它满足一般方程并具有包含零的屠夫画面,但仍然是一种足够有用的方法。他还介绍了后向欧拉作为一种隐式方法,它没有零,并且计算方式与前向欧拉略有不同。

  • 00:40:00 在本节中,视频探讨了可用于求解常微分方程 (ODE) 的不同策略。听众的一个建议是将积分分成不同的项,并在每个项之间采取步骤,但演示者解释说,这将导致具有不同属性的不同算法。视频继续演示显式中点规则,这接近于执行两个欧拉步骤,但并不完全相同。演示者解释说,中点规则从点外推,并减少了前向欧拉为获得更好的外推所做的事情。此外,该视频探讨了经典的四阶方法,之所以这样称呼是因为它是 Byron 和 Kota 开发的原始方法。最后,该视频指出,虽然选择求解 ODE 的系数有一定的自由度,但维基百科上已经有数百种已知方法。

  • 00:45:00 导致两种解决方案。在 Dobre-Fermi 方法中,末尾有两行,因为它在每一步给出了两个解。这种方法很复杂,因为它满足多个属性,并且当 Tableau 变大时会变得更加复杂。目标不应该是了解梯度的工作原理,而是关注系数需要满足的属性。该方法的动机是求积法则,虽然可能无法直接映射到 ODE,但它们仍然非常受求积法则的驱使。

  • 00:50:00 在本节中,视频讨论了由于旨在通过同时提供两种具有不同准确度的方法来提高效率的方法,求解微分方程可能会变得复杂。一个比另一个更准确,使用更准确的一个可以帮助估计不太准确的一个的误差,这有助于在满足某些局部误差的情况下求解 ODE 时调整步长。视频中还提到,有不同类型的方法具有不同的属性,稳定性也是选择解决问题的方法时要考虑的因素。最后,视频简要介绍了顺序在求解微分方程中的重要性。

  • 00:55:00 在本节中,Nathanael Bosch 讨论了求解常微分方程 (ODE) 的不同方法以及精度和复杂性之间的权衡。他强调了局部误差的重要性,它衡量了估计的单个步骤中的误差,以及如何通过减小步长来减少误差。然后讨论了不同的方法,例如 Hard Euler 和 Explicit Midpoint 方法,每种方法都有自己的阶数和误差收敛速度。 Bosch 还谈到了使用库解决 ODE 的各种花里胡哨的东西,例如步长选择和自动服务器选择,但他警告说,了解稳定性和顺序以避免出现问题时的潜在问题仍然很重要。

  • 01:00:00 在视频的这一部分,演讲者讨论了使用机器学习技术从数据中估计常微分方程 (ODE) 的矢量场和初始值的问题。他举了一个流行病学模型的例子,该模型的目标是估计参数 beta、gamma 和 lambda,使 ODE 与观察到的数据相匹配。演讲者解释说,写下 ODE 状态的生成模型和观察模型对于解决推理问题至关重要。他指出,估计参数可以更好地理解生成数据的过程,并将推断的参数与文献进行交叉检查可以提供额外的见解。

  • 01:05:00 在本节中,演讲者讨论了参数推断问题以及如何计算求解常微分方程 (ODE) 的最大似然估计。似然函数是高斯函数的乘积,由于假设无法获得真实的 X,因此无法对其进行评估,因此需要进行近似。通过假设求解器足够好,演讲者演示了插入真实解的估计解会产生可评估项。然后通过最小化负对数似然来最大化似然函数,并且由此产生的损失函数产生参数估计。演讲者以一个使用 SIR-D 模型的示例作为结尾,其中一开始感染个体的数量是未知的,需要进行估计。

  • 01:10:00 在本节中,演讲者讨论了如何对常微分方程 (ODE) 模型进行参数推断。 ODE 模型仿真是通过从中提取噪声样本来完成的,并且使用两个参数来形成损失函数,该损失函数是通过将散点图中的线与实际数据进行比较来计算的。优化器用于迭代初始猜测和参数,L-BFGS 优化器用于生成输出数据。所得数据可用于解释模型及其参数,可与文献进行比较。然后通过使接触率随时间变化来改进模型,这使其稍微复杂一些,并重新进行参数推断的整个过程。

  • 01:15:00 在本节中,Nathanael Bosch 讨论了估计 t 的 beta 的挑战,它描述了 ODE 中接触率的时变估计,并强调需要更好的工具来解决估计问题。为了解决这个问题,他建议使用神经网络对 t 的 beta 进行建模,并在参数推断中最小化 L2 损失函数。虽然神经网络方法的可解释性较差并且不提供良好的不确定性估计,但它确实提供了接触率的点估计。此外,结果表明神经网络方法仍需要显着改进以匹配 GP 模型的拟合,并且应考虑结果中的不确定性。

  • 01:20:00 在本节中,演讲者讨论了使用神经网络求解 ODE 的方法,并提到虽然不确定性量化不容易使用这种方法,但它仍然是一种有效的概念方法。讨论了最大似然估计,并提到了添加先验和抽样以提供不确定性量化的可能性。演讲者还讨论了即将到来的概率数值 ODE 求解器主题,并强调了 ODE 在机器学习研究中的重要性及其在解决现实世界问题中的作用。神经 ODE 也被简要提及为一种更通用和无结构的方法,但在损失函数和训练过程中具有相似之处。
Numerics of ML 6 -- Solving Ordinary Differential Equations -- Nathanael Bosch
Numerics of ML 6 -- Solving Ordinary Differential Equations -- Nathanael Bosch
  • 2023.01.24
  • www.youtube.com
The sixth lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both ...
 

第 7 讲——概率数值 ODE 求解器——Nathanael Bosch



ML 7 的数值 -- 概率数值 ODE 求解器 -- Nathanael Bosch

在本视频中,Nathanael Bosch 介绍了概率数值 ODE 求解器的概念,它结合了状态估计和数值 ODE 求解器以提供状态分布或 ODE 解。博世解释了如何使用 Q 次积分维纳过程来模拟真正的解决方案,以及该过程如何允许量化和传播系统中的不确定性。然后,他演示了如何使用扩展卡尔曼滤波器来求解 ODE,以及步长如何影响误差估计。视频最后讨论了不确定性校准和使用扩展卡尔曼滤波器估计非线性状态空间模型中的参数。

在讲座的第二部分,Nathanael Bosch 谈到了使用概率方法求解 ODE 的好处,包括获得有意义的不确定性估计以及包括初始值等其他模型特征的灵活性。他通过谐振子和微分代数方程等示例演示了这种方法。 Bosch 还展示了如何包含额外信息和使用概率技术可以产生更有意义的结果,使用未能使用传统标量方法准确表示数据的流行病模型示例。他使用扩展卡尔曼滤波器和平滑器通过状态估计来求解 ODE,将估计视为概率问题,并强调了贝叶斯在决策中的重要性。

  • 00:00:00 在本节中,Nathanael Bosch 介绍了概率数值 ODE 求解器的概念。他首先总结了之前的课程,包括状态空间模型和用于状态估计的常用滤波器/平滑器,以及数值 ODE 求解器。他解释说,挑战在于在给定微分方程的情况下估计 ODE 解的状态,而数值 ODE 求解器仅提供近似值。然后,Bosch 提出了一种将 ODE 解释为状态估计问题并将其求解为数据估计问题的方法来结合这两个概念。生成的算法提供状态或 ODE 解决方案的分布,创建概率数值服务器,提供比经典服务器更丰富的输出。

  • 00:05:00 在本节中,讨论了概率数值 ODE 求解器的概念。这些求解器通过向量场的评估提供单个估计 X hat 来估计真实解,以将估计更新或扩展到未来时间点,误差取决于步长。然后讨论继续使用特殊状态估计作为解决数值 ODE 估计问题的工具。然后解释滤波分布、平滑后验和在给定当前信息的情况下估计未来状态的预测步骤,并提到扩展卡尔曼滤波器和扩展卡尔曼平滑器等算法作为计算这些量的简单方法。本节的结论是,数值 ODE 解可以表述为推理问题,而不是尝试计算实际的真实解,目标是找到满足初始条件和 ODE 的离散 t 的 x 的后验点集。

  • 00:10:00 在本节中,我们将深入探讨概率数值 ODE 求解器的状态空间模型的构建。我们考虑的状态是 Q 次积分维纳过程。这种状态是一个随机过程,它描述了动力系统并跟踪导数直到 Q。通过跟踪有限数量的导数,我们可以获得一个概率状态模型,使我们能够量化和传播系统中的不确定性。主要目标是定义一个先验、一个可能性和一个数据模型,一旦解决,就会给我们一个输出的估计。这是进行高斯滤波和平滑所必需的,这是一种快速推理算法。

  • 00:15:00 在本节中,Nathanael Bosch 解释了模拟 Q 时间集成 Winner 过程的真实解的随机过程。该过程具有高斯模型形式的转换,该模型使用 H 的矩阵 a 和 H 的协方差矩阵 Q,它们具有封闭形式的公式。访问过程中的条目是线性操作,可以方便地访问一阶和二阶导数。该过程是马尔可夫过程并且满足高斯过程的属性。博世还展示了该过程的不同样本图,这说明了为什么将其称为二次积分线性过程。

  • 00:20:00 在本节中,演讲者讨论了 Q times Integrated Ornstein-Uhlenbeck prior 及其便利性,因为他们可以写下高斯滤波和平滑后所需的过渡密度。可能性和数据组合部分也很重要,因为它通知先验在顶部做所需的事情。演讲者展示了如何使用 ODE 的语言,并定义了一个测量函数或信息运算符,在有无限计算的完美世界中应该为零。他们还介绍了一个观察模型,并解释了为什么它有助于满足推理所需的事物。最后,无噪声似然模型是一种直接似然模型,这很方便,因为它考虑了卡尔曼滤波器更新。

  • 00:25:00 在本节中,Nathanael Bosch 讨论了 Z 的生成模型,这是逻辑 ODE 的具体示例,以及它与推理过程的关系。生成模型允许模拟解、计算导数和生成后验,后者在 Z 周围坍塌。除了编码微分方程的似然模型之外,该生成模型还可以求解状态空间模型,提供与解决方案相关的 X 的估计值。推理允许在先验结果和期望的最终结果之间建立关系,并允许求解状态空间模型。

  • 00:30:00 在本节中,Nathanael Bosch 讨论了在通过概率数值方法求解常微分方程时包含初始值的重要性。他解释说,将另一个仅取决于初始值的测量值添加到观察模型是包含初始值的更通用的方法。然后,他为实现该算法所需的扩展卡尔曼滤波器和 ODE 滤波器构建块提供了伪代码,并描述了预测和更新步骤中涉及的标准滤波循环。扩展算法首先满足初始值,并使用转移模型A和Q计算步长。

  • 00:35:00 在本节中,Nathanael Bosch 演示了在 Julia 中使用概率数值方法求解常微分方程 (ODE) 所需的代码。他指出,虽然公式可能看起来很复杂,但正确设置模型所需的 10 行代码却很简单。 Bosch 展示了如何仅用两行代码实现扩展卡尔曼滤波器,以及如何将用于与逆相乘的标准符号替换为求解线性系统的数值稳定解。他为逻辑常微分方程定义了向量场、初始时间跨度和真实解,并演示了如何使用二次积分维纳过程定义先验。 Bosch 对扩展卡尔曼滤波器算法的实现与幻灯片中的伪代码非常匹配,他使用的初始分布任意设置为零均值和标准协方差。

  • 00:40:00 在本节中,Nathanael Bosch 演示了如何使用扩展卡尔曼滤波器求解 ODE 并绘制滤波器估计值。然后,他尝试研究步长,展示更小的步长如何减少不确定性以及更大的步长如何增加不确定性。他解释说,不确定性不仅会随着时间的推移而增加,而且误差估计是正在发生的误差的模型。最后,他证明平滑通常会改善轨迹的结果,这与前两节课的动机相符。然而,错误估计可以做得更好,但他要求听众就如何做到这一点发表意见。

  • 00:45:00 在本节中,我们了解到概率数值 ODE 求解器的误差估计太大,需要通过不确定性校准来修复。超参数 sigma squared 直接影响不确定性,需要正确设置才能获得有意义的实际不确定性估计。设置超参数的动机类似于高斯过程中的动机,其中通过在给定参数的情况下最大化数据的可能性来估计超参数。可以分解数据的概率,方便表达和优化。

  • 00:50:00 在本节中,Nathanael Bosch 讨论了使用扩展卡尔曼滤波器来估计非线性状态空间模型中的参数。给定 Z1 直到 K 减 1 的 z K 的 P 使用高斯估计进行估计,并且 Sigma 帽子计算为准最大似然估计的 argmax。在 ODE 滤波器中,可以使用重新校准参数估计的重新缩放方式计算封闭形式的最大似然估计。这种方法产生更好的估计并且对应于最大似然估计 Sigma。博世解释了如何使用带有校准后缀的更新功能来实现这一点。

  • 00:55:00 在本节中,Nathanael Bosch 讨论了用于概率数值常微分方程 (ODE) 求解器的扩展卡尔曼滤波器 (EKF)。他提到它已被修改以增加 sigma hatch,这导致总和以运行方式计算,并除以 n,这是他们想要计算的数量。 EKF 之前试图将某些可能不是高斯分布的东西近似为高斯分布,目的是获得尽可能提供信息的不确定性估计。通过这样做,他们得到了一种算法,该算法提供有用的误差估计,有意义地描述 ODE 求解器的数值误差。所获得的算法速度很快,并提供了不完美但仍然有用的不确定性估计。

  • 01:00:00 在本节中,Nathanael Bosch 解释了使用概率方法求解 ODE 的动机。除了简单地量化不确定性和获得有意义的不确定性估计和绘图之外,博世认为以概率方式制定 ODE 求解器是灵活方便的,可以包含初始值等其他模型特征。通过定义状态空间模型并运行扩展卡尔曼滤波器,不仅可以求解具有初始值的数值问题,还可以求解具有附加信息的高阶 ODE。

  • 01:05:00 在本节中,Nathanael Bosch 解释了 ODE 求解器初始值的不同方法。他定义了一个新量以确保 X1 等于给定的初始导数,这可用于运行具有一些预测和更新步骤的扩展命令过滤器。他展示了谐波振荡器的示例,以及如何只需要更改之前的两条线即可包含对一阶导数的更新。再次应用校准以获得有意义的结果,并且在这种情况下误差不会趋向于零,因为没有吸引子趋向,而是根据问题设置进行调整。 Bosch 还讨论了微分代数方程,这是由于奇异矩阵而无法从左向右移动的微分方程。

  • 01:10:00 在本节中,演讲者讨论了微分代数方程 (DAE) 的概念,这些方程不描述导数并且在某个点具有常数值。演讲者建议对 ODE 似然算法进行修改,以创建可以以概率方式求解 DAE 的 DAE 似然算法。然后,演讲者给出了一个问题示例,其中 ODE 具有额外信息,并建议修改状态空间模型以引入额外的观察模型,以便该算法可以应用两个观察模型来满足离散网格上的 g。演讲者提供了一个视频示例,说明守恒量在使用 ODE 和其他信息解决问题时的重要性。

  • 01:15:00 在视频的这一部分,Nathanael Bosch 讨论了概率数值 ODE 求解器的使用以及包含附加信息以改进 ODE 模型结果的好处。他举了一个流行病模型的例子,其中传统的标量模型无法准确地表示数据,并展示了如何使用高斯过程来改进模型。添加更多信息并使用概率技术最终可以产生更有意义的结果。

  • 01:20:00 在本节中,博世讨论了概率数值 ODE 求解器,其中涉及使用线性测量运算符来测量 ODE 解的某些维度,表示为四维对象 (sirnd)。创建状态空间模型后,求解 ODE 解,添加 beta 状态,并考虑 ODE 解、初始值和数据的似然模型。推理任务涉及使用扩展的卡尔曼滤波器来确定白点是什么,给定观察数据的黑点。还建议合并 X 和 beta 以获得更简单的重新表述。

  • 01:25:00 在本节中,演讲者解释了概率数值 ODE 求解器的工作原理,这本质上是一种通过状态估计求解 ODE 的方法,将估计视为概率问题。他定义了一种使用扩展卡尔曼滤波器和平滑器求解 ODE 的方法,这些滤波器和平滑器产生了一系列有时称为“ODE 滤波器”的求解器。演讲者强调了贝叶斯在决策中的重要性、不确定性估计的实用性,以及使用可应用于一系列问题(包括求解 ODE)的耐心算法的便利性。

  • 01:30:00 在本节中,演讲者谈到以非标准方式使用外部命令过滤器来解决数值问题,并以结合物理和一般外部观察的方式从数据中进行推理。据演讲者称,贝叶斯过滤和平滑是建模或制定动态系统的最佳方式,因为它允许灵活地添加信息和推理算法的因式分解。鼓励观众扫描二维码以获得反馈,欢迎向演讲者提问。
 

第 8 讲 -- 偏微分方程 -- Marvin Pförtner



ML 8 的数值 -- 偏微分方程 -- Marvin Pförtner

Marvin Pförtner 讨论了偏微分方程 (PDE) 及其在为各种现实世界系统建模时的重要性。他解释了 PDE 如何表示具有未知函数和线性微分算子的系统机制,但需要求解通常未知的参数。高斯过程推理可用于分析 PDE 模型并将机械知识注入统计模型。 Pförtner 通过将模型限制为二维热分布并提出对模型所做的假设来检查计算机中央处理单元中的热分布。本讲座还包括使用高斯过程来求解偏微分方程,以及为不确定性建模添加现实边界条件。总的来说,GP 方法与信息算子的概念相结合,使我们能够结合有关系统行为的先验知识,以线性 PDE 的形式注入机械知识,并处理边界条件和右侧。

在本视频的第二部分中,Marvin Pförtner 讨论了使用高斯过程通过估计函数的概率测度而不是点估计来求解偏微分方程 (PDE)。他解释了不确定性量化的好处,并指出这种方法更诚实,因为它承认 PDE 右侧函数估计中的不确定性。 Pförtner 还解释了 Matern 内核,它在实践中很有用,可以控制 GP 的可微性,并提供了计算 Matern 内核参数 P 的公式。他进一步解释了如何通过在维度上取一维 Matern 内核的乘积来为 PDE 构建 d 维内核,以及在模型构建中在数学上谨慎的重要性。

  • 00:00:00 在讲座的这一部分,Marvin Pförtner 介绍了偏微分方程 (PDE) 及其在描述现实世界中生成数据的机械模型中的重要性,包括金融市场、气候和天气等流体以及波浪力学.尽管求解起来具有挑战性,但线性 PDE 仍然是一种强大的建模语言,因为它们准确地描述了许多物理过程,例如热传导、电磁学和布朗运动中的粒子速度。本讲座特别侧重于通过实际建模示例将基于 PDE 的模型集成到概率机器学习模型中。

  • 00:05:00 在本节中,Marvin Pförtner 讨论了使用偏微分方程 (PDE) 为各种系统建模,包括物理和金融模型。他强调了解系统机制的行为并使用 PDE 模型推断其行为的重要性。然而,PDE 通常需要未知的系统参数,目标是使用贝叶斯统计估计将系统的机械知识与测量数据融合,以找到这些未知参数并获得预测的信心。 Marvin 还解释了线性 PDE 以及它们如何与具有空间范围的物理系统相关联。

  • 00:10:00 在本节中,Marvin Pförtner 讨论了偏微分方程 (PDE),它通常用于描述物理系统,例如温度分布或一组电荷产生的力。 PDE 中的未知函数表示被模拟的系统,而机械知识由线性微分算子给出。然而,PDE 的一个挑战是它们通常没有解析解并且需要引入离散化误差的数值求解器。材料参数和右侧函数是两个无法准确知道的参数,导致难以通过经典求解器传播不确定性。此外,偏微分方程通常不会唯一地标识其解决方案,需要施加额外的条件。

  • 00:15:00 在本节中,演讲者讨论了偏微分方程 (PDE) 及其与无限维对象函数的关系。微分算子是线性的,意味着线性函数在微分算子的核中,允许在泊松方程的任意解上加上一个线性项,仍然得到一个解。边界条件对于模拟模拟域外的相互作用是必要的,然后将其总结为外部如何与边界处的模拟相互作用。 PDE 是关于属于函数空间的函数的陈述,函数空间是具有类似于 Rn 的向量空间结构的函数集,允许用矩阵表示线性运算符。线性算子是具有线性特性的函数空间之间的映射,因为微分算子将函数映射到它的导数。

  • 00:20:00 在本节中,Pförtner 解释了线性 PDE 本质上是无限维向量空间中的线性系统,并强调了在向量空间上定义范数和理解收敛性的重要性。然后,他在计算机的中央处理器中引入了热分布的数学模型,并将该模型限制为穿过芯片的一条线上的二维热分布。本讲座讨论了为这个模型所做的假设,以及它如何成为这个特定案例的好模型。

  • 00:25:00 在本节中,演讲者讨论了对芯片中的热源和散热器进行建模以及如何使用偏微分方程 (PDE) 来表示。他们解释了热方程,这是一个二阶线性 PDE,以及如何应用它来模拟芯片中的温度分布。演讲者还解释了如何通过将偏微分方程解释为微分算子下对未知函数和图像的观察,将微分方程的机械知识注入统计模型。 PDE 与物理学中描述能量和质量等基本量守恒的基本定律相比较。

  • 00:30:00 在本节中,Marvin Pförtner 讨论了温度和热能之间的关系,以及它们如何通过材料参数相互成比例。他解释说,热能的每一次变化都可以用进入系统的已知热量值或通过热传导从周围环境流入特定点的热量来解释。然后他将信息算子作为一个数学概念引入,可以用来表达任何信息,包括微分方程的信息。他进一步解释了如何使用高斯先验过程对未知函数 U 建模,以及如何使用线性观察下的高斯过程闭包来计算后验函数。但是,由于求解 PDE 需要无限组观察,因此在大多数情况下,这在计算上是不可能的,除非已知有关所求解问题的分析信息。

  • 00:35:00 在本节中,演讲者讨论了使用高斯过程 (GP) 求解偏微分方程 (PDE),这类似于常微分方程 (ODE) 中使用的方法。 GP 被视为函数空间上的概率度量,线性算子将该 GP 的样本路径映射到 RN 上。发现该过程的先验预测为正态分布,均值由 GP 均值函数的图像通过线性算子给出,协方差矩阵与有限维情况下的协方差矩阵非常相似。这个事件的后验事实证明实际上具有与它相似的结构。演讲者指出其中涉及很多理论细节,由于使用 GP 求解 PDE 涉及无穷大,因此有必要谨慎行事。

  • 00:40:00 在本节中,Marvin Pförtner 解释了如何计算线性算子的特定选择以及用标准线性算子表示法表达它的困难。他还讨论了如何微分一个参数、微分另一个参数,以及构建两点之间所有成对导数的矩阵。然后他谈到如何使用相同的定理将其应用于问题并计算后验高斯过程,以及如何定义配置点集。

  • 00:45:00 在本节中,演讲者解释了高斯过程推理的广义形式如何解决边值问题。他们概述了如何使用与偏微分方程 (PDE) 右侧匹配的黑色函数来表示观察结果,以及如何将从中学到的信息传播回原始高斯过程。 PDE 中边界条件不固定的自由度会导致不确定性,但通过施加 Dirichlet 边界条件,后验变为正常的高斯过程回归问题,如果观察到两个边界值,则该问题有效。演讲者强调了注意部署中的边界值通常是未知的重要性,这有助于为边界值和热源分布增加不确定性。

  • 00:50:00 在本节中,演讲者讨论了偏微分方程的更现实的边界条件。他指出,热量在 CPU 的整个表面上均匀提取,并且可以将此信息建模为 Neumann 边界条件,其中设置边界点的一阶导数而不是边界点的值。通过这样做,我们可以为模型增加不确定性,并使用高斯分布对导数进行建模。附加信息运算符用于描述此边界条件。演讲者进一步解释了系统的绝对规模是如何通过使用 CPU 内的温度计来确定的,以及如何通过使用另一个高斯过程对先验信念建模来获得函数的不确定估计。

  • 00:55:00 在本节中,Marvin Pförtner 讨论了如何借助高斯过程和信息运算符将有关系统行为的先验知识集成到模型中。他提到,必须为可积为零的模型选择右侧函数,以避免系统不断升温。然后,Pförtner 继续讨论确保 GP 在其所有样本中都有区域 1 的挑战,以及如何通过添加额外的约束来解决这些挑战,包括边界效应,这考虑了通过边界离开的热量。最后,Pförtner 得出结论,这种 GP 方法与信息算子的概念相结合,使我们能够结合有关系统行为的先验知识,以线性 PDE 的形式注入机械知识,并处理边界条件和右侧。

  • 01:00:00 在本节中,Marvin Pförtner 讨论了使用高斯过程通过估计函数的概率度量而不是点估计来求解偏微分方程 (PDE),这可以给出满足 PDE 条件的置信区间和样本.他解释说,这种方法更诚实,因为它承认 PDE 右侧函数估计的不确定性,并且它可以应用于二维模拟,以及将时间作为另一个空间维度的模拟。 Pförtner 指出,假设没有不确定性,此方法的后验均值等同于称为对称配置的经典方法。最后,他解释说,其他求解偏微分方程的方法,例如加权残差法、有限体积法和谱法,也可以实现为高斯过程的后验均值,只是没有不确定性量化。

  • 01:05:00 在本节中,演讲者解释了如何使用高斯过程 (GP) 求解线性偏微分方程 (PDE),以及如何实现函数估计的回归。他们强调了在工作之前选择正确函数的重要性,以及不确定性量化的好处。演讲者还指出了失败案例,例如当 GP 的样本路径不可微时,以及需要验证重要条件以使一切变得严格。本节以演讲者小组即将出版的出版物的预告片作为结尾,该出版物将深入研究这些定理的正式细节。

  • 01:10:00 在本节中,演讲者讨论了如何定义高斯过程 (GP) 并将其用于对未知函数建模。 GP 是实值随机变量的集合,一个代表其域中的每个点。它们用于表示函数,但我们只知道 GP 的评估的有限组合。为了得到一个GP的采样路径,我们需要通过固定一个Omega并通过所有函数对其进行变换来不断采样一个函数。我们确保样本路径具有足够的可区分性以确保它们被定义。此外,为了计算线性算子 L 下 GP 的图像 LF,我们固定一个 Omega 并将 L 应用于相应的函数。

  • 01:15:00 在本节中,演讲者解释了如何通过线性算子映射样本路径以创建称为 GP 的无限维对象,然后将其转换为需要可测量的随机变量。他们注意到,通过选择合适的内核,GPS 的样本路径被制成一个再生核 Hilbert 空间,然而,GP 实际内核的再生核 Hibbert 空间并不是样本来自的空间,而是一个更大的空间需要选择包含这些样本的样本。演讲者接着讨论了 Matern 核,它在实践中很有用,可以控制 GP 的可微性,并提供了计算 Matern 核参数 P 的公式,这有助于推广该过程。

  • 01:20:00 在本节中,演讲者解释了如何通过在维度上取一维 Matern 内核的乘积来为偏微分方程 (PDE) 构造 d 维内核,尤其是在导数的阶数混合的情况下。这有助于适应用户试图求解的具体方程式。此外,GPS 提供了一个框架,可以使用仿射信息运算符将各种信息源组合成一个单一的回归模型。演讲者强调了在模型构建中在数学上小心谨慎的重要性,特别是在为特定方程构建先验时。
Numerics of ML 8 -- Partial Differential Equations -- Marvin Pförtner
Numerics of ML 8 -- Partial Differential Equations -- Marvin Pförtner
  • 2023.01.24
  • www.youtube.com
The eigth lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both ...
 

第 9 讲 -- 蒙特卡洛 -- Philipp Hennig



ML 9 的数值分析 -- 蒙特卡洛 -- Philipp Hennig

在这段关于蒙特卡罗主题的视频中,Philipp Hennig 解释了在使用贝叶斯定理进行贝叶斯推理时,集成如何成为机器学习中的一个基本问题。他介绍了蒙特卡洛算法作为进行积分的一种具体方法,并简要介绍了该方法的历史。他还讨论了蒙特卡洛算法的特性,例如无偏估计和随着样本数量的增加方差减少。此外,Hennig 还深入研究了 Metropolis-Hastings 算法、马尔可夫链蒙特卡罗和哈密顿蒙特卡罗,概述了每种算法的属性以及它们在从概率分布中抽样时的工作原理。最后,Hennig 指出理解为什么使用算法而不是盲目应用它们对于获得最佳和高效结果的重要性。

在视频的第二部分,Philipp Hennig 讨论了用于高维分布的蒙特卡罗方法,特别是 No U-turn Sampler (NUTS) 算法,它克服了 U-turn 想法打破细节平衡的问题。 Hennig 强调,虽然这些算法复杂且难以实施,但理解它们对于有效使用它们至关重要。他还质疑使用蒙特卡洛方法计算预期值的下意识方法,并建议可能有其他方法可以在没有随机性的情况下进行近似。 Hennig 讨论了随机性的概念和局限性、蒙特卡洛方法收敛速度的不足,并提出需要考虑其他机器学习方法而不是依赖确定性随机性。

  • 00:00:00 在本节中,讲师介绍了集成主题,这是机器学习中使用贝叶斯定理进行贝叶斯推理以计算条件分布后验时的基本问题。他解释说,这个过程包含一个积分,它表示计算为某些条件分布的预期值的边际。讲师强调了解如何正确执行积分的重要性,并将蒙特卡罗算法作为一种特定的积分方法进行介绍。他简要介绍了蒙特卡洛的历史,并反思了理解为什么使用算法而不是盲目应用它们很重要的原因。

  • 00:05:00 在本节中,Philipp Hennig 讨论了 1940 年代如何开发蒙特卡罗模拟以协助设计核弹的故事。问题在于优化几何以实现爆炸,而解决方案是使用蒙特卡洛模拟来近似求和的积分。费米模拟计算机就是为此目的而发明的,它由两个轮子和一支笔组成,通过使用从骰子中抽取的随机数来模拟中子的路径。虽然这个过程看起来很简单,但这种方法是为各个领域开发蒙特卡洛模拟的第一步。

  • 00:10:00 在本节中,蒙特卡洛模拟的概念被解释为一种估计预期值的方法,方法是将积分替换为对从分布中提取的点的函数评估求和。这是一个无偏估计量,其方差随着样本数量的增加而减少,导致误差下降到样本数量的平方根之上。虽然统计学家认为这是无偏估计的最佳速率,但数值数学家认为这个速率相当慢,首选多项式速率。然而,这种方法有其优点,例如不受维度影响,因为方差不依赖于基础分布的维度。

  • 00:15:00 在本节中,Philipp Hennig 解决了围绕蒙特卡罗问题维度的争论。尽管 f 在 p 下存在方差,这可能与问题的维数有关,但争论点是它不依赖于维数。然而,在某些结构化问题中,方差可以作为维数的函数以指数方式快速爆炸。然而,蒙特卡洛抽样最有趣的应用对问题的维数不敏感,允许计算高维问题。 Hennig 还讨论了使用蒙特卡洛采样计算 Pi 的经典示例,其中它以样本数的平方根倒数给定的速率收敛于真值。

  • 00:20:00 在本节中,Philipp Hennig 讨论了用于近似积分的蒙特卡罗方法。他通过从分布中抽取大量样本并计算这些模拟下的预期值来解释此方法的工作原理。当需要粗略估计时,这可能是一个很好的解决方案,但对于高度精确的答案来说并不实用。 Hennig 还谈到了从难以处理的分布中构建样本的方法,例如拒绝抽样和重要抽样,但指出这些方法在高维度上的扩展性不好。

  • 00:25:00 本节讨论基于高维分布生成随机变量的思想。用于此的标准方法称为马尔可夫链蒙特卡洛,它基于一种以有限记忆向前迭代移动的结构。这种类型的一种方法是 Metropolis Hastings 算法,该算法涉及构建马尔可夫链并使用建议分布以及所提取的分布与建议分布之间的比率前往新位置。该算法由一群核物理学家在 1950 年代发明,他们致力于优化核武器的几何形状,至今仍被广泛使用。

  • 00:30:00 在本节中,Philipp Hennig 讨论了 Metropolis-Hastings 算法,这是一种用于从概率分布中抽样的马尔可夫链蒙特卡罗算法。他演示了该算法如何通过从建议分布中提取并根据它们的概率密度接受或拒绝它们来生成点。 Hennig 还强调了使用适当调整的建议分布的重要性,以便有效地探索被抽样的分布。 Metropolis-Hastings 算法有两个重要的性质,详细的平衡性和遍历性,这确保算法长时间运行的过程产生由被采样的分布给定的平稳分布。

  • 00:35:00 在本节中,Philipp Hennig 讨论了至少具有一个平稳分布的算法的属性,该分布是一个非周期性且具有正循环的序列,这意味着回到该点的概率非零一个未来的点。该算法不得具有任何可能导致其陷入另一个平稳分布的结构。例如,Metropolis Hastings 就是一种满足这两个属性的算法。然而,与简单的蒙特卡洛相比,它的速度较差,并且可能具有局部随机工作行为。算法抽取的有效样本数与分布完全相反两端的两个样本之间的高速公路自由步长或自由时间长度有关。

  • 00:40:00 在本节中,演讲者讨论了蒙特卡罗方法以及如何评估它们。他解释说,要从分布的一端移动到另一端,必须使用与长尺度和小尺度之比的平方成正比的大量步长,从而导致收敛率仍然是平方根的 o t 但前面有一个巨大的倍数。他指出,蒙特卡洛的一个挑战是,如果您只是查看这些蓝点的统计数据,而不知道分布的形状是什么,也没有红点作为参考,那么您将如何注意到这一点并不十分明显是这样的。最后,他谈到了哈密顿蒙特卡罗,他声称这是马尔可夫链蒙特卡罗的“原子”,是用于从 x 的概率分布 P 中得出的常用算法。

  • 00:45:00 在本节中,Philipp Hennig 解释了哈密顿蒙特卡罗 (HMC) 的概念,这是一种用于从概率分布中抽取样本的方法。在 HMC 中,变量的数量增加了一倍,新变量代表现有变量的动量。然后根据定义常微分方程的函数演化动量变量,其中 H 代表能量,K 代表动能。 X 的时间导数由 H 对 P 的偏导数给出,P 的时间导数由减去 H 对 X 的偏导数给出。如果算法设法从联合分布中抽取样本X 和 P,它从 X 上的分布中略微得出。

  • 00:50:00 在本节中,Philipp Hennig 讨论了使用 Hoyn 方法为给定状态的概率导数实施常微分方程 (ODE) 求解器,该方法具有二阶收敛率。然后,他将其与使用软件库进行了比较,并展示了求解器如何模拟哈密顿系统的动力学,该系统是一个质量为 1 的粒子,在由形状的对数给出的势能中移动,最终产生了很好的样本。虽然它需要某种程度上恒定的步数来模拟,但 Hennig 指出 Metropolis-Hastings 方案总是接受并且该算法使步数不会移动到长尺度在短尺度平方上给出的距离,但没有平方根,最终使其成为更有效的算法。

  • 00:55:00 在本节中,Philipp Hennig 解释了哈密顿蒙特卡罗算法的工作原理。该算法从一条恒定电位线上的 X 和 P 的联合分布中提取。势能线由初始动量选择,并且在每一步中,动量都会改变以移动到不同的势能线。 Hennig 将该算法与优化问题进行了比较,并指出它有两个参数,称为 LeapFrog steps 和 delta T,必须正确选择这两个参数才能使算法有效运行。如果参数设置不正确,模拟可能会来回移动而不实际移动到任何地方,从而浪费计算资源。

  • 01:00:00 在本节中,Philipp Hennig 讨论了用于高维分布的蒙特卡洛方法中的 U 形转弯和无 U 形转弯采样器 (NUTS) 算法的概念。掉头思路的问题在于它打破了细节平衡,让算法走远了,再也回不来了。 NUTS 算法克服了这个问题,它通过在相反方向启动两个马尔可夫链并等待一个开始转向,然后随机选择一个。这满足详细的平衡并且是许多马尔可夫链蒙特卡罗算法的关键组成部分。 Hennig 强调,虽然这些算法复杂且难以实施,但理解它们对于有效使用它们至关重要。

  • 01:05:00 在本节中,演讲者讨论了使用蒙特卡罗方法在贝叶斯推理中计算预期值的下意识方法,并强调了低收敛率和无偏估计的必要性。然而,演讲者首先质疑无偏估计量和随机性的必要性,并建议可能有其他方法可以在没有随机性的情况下近似估计感兴趣的数量。演讲者还谈到了随机性的概念及其与在图灵机上计算的序列和有限序列的关系。

  • 01:10:00 在本节中,Philipp Hennig 通过不同的数字序列讨论随机性的概念。他争辩说,一些序列,例如由骰子产生的序列,在文化上被认为是随机的,即使它们并不是真正随机的。另一方面,像 pi 这样的无理数是非随机的,但也缺乏结构。此外,Hennig 解释了种子如何改变随机数生成器生成的序列的随机性。最后,他讨论了产生随机数的物理机器如何接受随机性测试,但最终未能通过 Die Hard 随机性测试。

  • 01:15:00 在本节中,Philipp Hennig 讨论了随机性及其与机器学习的关系,特别是蒙特卡洛方法。他解释说,随机性与缺乏信息有关,这就是为什么它适用于密码学等领域,在这些领域,有人知道某事很重要。对于当代机器学习中使用的随机数种类,谈论这种信息缺乏是错误的。在使用蒙特卡罗方法时,依赖蒙特卡罗方法的科学论文作者通常会向观众隐藏信息。他们使用它是因为它易于使用和实施,而不是因为它有偏见。

  • 01:20:00 在本节中,Philipp Hennig 解释了马尔可夫链蒙特卡洛 (MCMC) 的运行方式,以及它对于高维问题的效果相对较好,即使我们不知道它的收敛速度。 MCMC 是唯一我们有依赖于使用随机数的理论保证的算法,但公认的是,在没有其他方法可以比较的情况下,由这种方法产生的样本是有用的。 Hennig 还讨论了 MCMC 从根本上来说非常缓慢和费力,并且可能有更好的方法来近似积分。他警告说,他们下周将研究的算法通常只适用于低维问题,并建议需要考虑其他机器学习方法,而不是依赖确定性随机性。
Numerics of ML 9 -- Monte Carlo -- Philipp Hennig
Numerics of ML 9 -- Monte Carlo -- Philipp Hennig
  • 2023.02.02
  • www.youtube.com
The ninth lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both ...
 

第 10 讲 -- 贝叶斯求积法 -- Philipp Hennig



ML 10 的数值 -- 贝叶斯积分 -- Philipp Hennig

在此视频中,Philipp Hennig 讨论了贝叶斯积分作为机器学习中集成计算问题的有效方法。他解释了如何可以唯一地识别实值函数,但很难直接回答问题。 Bayesian Quadrature 是一种推理方法,它通过对未知对象和可以计算的量设置先验,将求积分的问题视为推理问题,然后进行贝叶斯推理。 Hennig 还将这种方法与蒙特卡洛拒绝和重要性采样进行了比较,展示了贝叶斯求积法如何优于经典求积法则。本讲座涵盖贝叶斯积分的卡尔曼滤波算法及其与经典积分算法的联系,并讨论了在数值方法中使用不确定性估计。最后,Hennig 探讨了数值计算的社会结构如何影响算法设计,讨论了针对特定问题设计计算方法的方法,以及概率机器学习如何实时估计误差。

在视频的第二部分,Philipp Hennig 讨论了贝叶斯求积法,其中涉及将先验分布放在我们关心的数量上,例如积分和算法值,以贝叶斯方式计算某些东西。该方法在估计周围分配后验估计和不确定性估计,这可以用经典方法识别。 Hennig 解释了该算法如何适应观察到的函数,并使用主动学习程序来确定下一步要评估的位置。该算法可以在更高的维度上工作,并且具有一些非常智能的收敛速度。他还讨论了经典算法和正交规则的局限性,并提出了通过自适应推理的解决方法。

  • 00:00:00 在本节中,Philipp Hennig 讨论了机器学习中集成的计算问题,重点是贝叶斯积分作为一种有效方法。他描述了一个实值函数 f of x,它是两个函数的乘积,X 减去正弦的平方 3x,以及 X 减去 x 的平方,并且可以通过写下一组字符来唯一标识。 Hennig 解释说,虽然我们对这个函数了如指掌,但很难直接回答关于它的每一个问题,比如负三到正三的定积分在这个函数上的值,这在满是积分的书上是找不到的,或者新的 C 库。

  • 00:05:00 在本节中,Philipp Hennig 讨论了贝叶斯求积法,这是一种推理方法,通过对未知对象和可以计算的数量进行先验处理,将寻找积分的问题视为推理问题,然后执行贝叶斯推理。通过先验,我们从有限的不确定性开始,这导致计算的可能结果范围狭窄,使其成为计算的典型。该方法与效率较低的蒙特卡洛拒绝和重要性采样形成对比。估计函数可以绘制为数字的函数,这表明贝叶斯积分是求解积分的可行选择。

  • 00:10:00 在 Philipp Hennig 演讲的这一部分,他讨论了贝叶斯求积作为一种使用概率机器学习来估计函数积分的方法。他将这种方法与蒙特卡洛方法进行了比较,并解释说高斯过程用作函数的先验。通过在特定的 x 值下评估函数,我们可以估计潜在变量,即函数的积分。 Hennig 还展示了这种方法如何优于经典求积法则。

  • 00:15:00 在本节中,Philipp Hennig 解释了如何计算核上的积分,以便对我们尝试学习的任何函数进行近似积分。通过选择先验均值函数和先验协方差函数,我们可以将计算积分的问题嵌入到再生核希尔伯特空间中。通过涉及在不同点评估函数的计算,我们最终得到了核均值嵌入,它涉及计算核上的积分。因此,我们必须选择可以计算封闭形式积分的内核,Hennig 选择 Weiner 过程内核作为示例。

  • 00:20:00 在本节中,Philipp Hennig 讨论了贝叶斯积分的过程。该过程涉及先验使用 Vino 过程,这是一个不对称和非平稳的高斯过程,并以一组函数值为条件以获得正高斯过程。通过使用这个过程,可以获得比蒙特卡洛积分更好的结果。例如,要实现 10^-7 的相对误差,贝叶斯积分需要少于 200 次评估,而蒙特卡洛积分需要超过 10^11 次评估。

  • 00:25:00 在本节中,演讲者讨论了与蒙特卡洛模拟相比贝叶斯积分的速度。虽然蒙特卡洛模拟便宜且易于实施,但贝叶斯积分也相对较快并且可以作为卡尔曼滤波器实施,使其可用于机器学习模型。演讲者解释了过程的两个状态之间的线性映射以及它如何编码积分,从而可以离散化随机微分方程并计算积分更新。然后讲座继续更详细地讨论贝叶斯求积的性质。

  • 00:30:00 在本节中,演讲者介绍了用于贝叶斯求积的卡尔曼滤波算法来评估函数的积分。该算法涉及定义矩阵 A 和 Q 来表示线性时不变系统的确定性和随机性部分,以及 H 和 R 来表示观测模型。后验均值是核函数的加权和,卡尔曼滤波器更新积分的估计,积分的不确定性随着步长的立方增加而增加。该算法以线性时间运行,后验均值是对函数值进行插值的分段线性函数。积分的估计是每个块中平均值的总和。

  • 00:35:00 在本节中,Hennig 解释了贝叶斯求积的概念及其与梯形法则的联系,梯形法则是一种经典的积分算法。他指出,梯形法则可以看作是复杂高斯过程推理方案的后验均值,并且这种特殊的见解是必不可少且常见的结果。 Hennig 进一步讨论了各种经典算法,无论是用于数值计算、优化、线性代数还是求解微分方程,都与贝叶斯后验估计有何联系。此外,他强调数值计算应被视为高斯推理,因为它涉及对具有不确定性的数值量的最小二乘估计,并建议在处理数值方法时使用不确定性估计可能是有利的。

  • 00:40:00 在本节中,Philipp Hennig 讨论了数值算法的决策方面,以及它与 AI 算法的相似之处,因为它可以决定执行哪些计算。出现的一个问题是将评估点放在哪里,这个问题的答案可以在贝叶斯推理问题中找到。通过定义一个概率分布以收敛于确定性,我们可以找到一个描述确定性或不确定性的量并对其进行操作。对于积分上可能分布的方差,目标是最小化它,这可以通过将所有 Delta J 设置为等于 Delta n 减一来实现,表示积分节点的规则网格。此外,还讨论了在集成域的两端都具有集成节点的必要性。

  • 00:45:00 在本节中,演讲者解释了如何使用贝叶斯积分算法根据高斯过程先验获得评估节点放置位置的设计。该算法可以根据使用的先验提供不同的设计,并且可以根据最大信息增益的简单策略来选择评估节点。梯形规则可以被认为是贝叶斯估计,其中后验均值是由被积函数之前的特定高斯过程产生的患者估计。该算法提供了误差估计,但估计并不准确,实际误差与估计误差之间存在显着差距。不过,梯形法则已经存在了数百年,算法不一定有缺陷。梯形规则可能有一些需要质疑的性质。

  • 00:50:00 在本节中,Philipp Hennig 讨论了方差估计及其与贝叶斯积分的关系。他解释说,误差估计是标准偏差,即预期平方误差的平方根。使用恒定的步长使总和易于计算,因为总和中没有“i”。该定理指出此梯形法则的收敛率为 O 的 1 超过 N 的平方。然而,数学中有隐藏的假设。从 Wiener 过程中提取的样本路径具有极其粗糙的行为,因为它们几乎处处不可微,使得先验假设无效。

  • 00:55:00 在本节中,Philipp Hennig 讨论了使用数值算法对粗糙的不可微分函数进行积分的问题。他解释说,设计用于对超粗糙函数(例如梯形法则)进行运算的算法,如果它们集成的函数更加平滑,则可能不会像它们应有的那样高效。 Hennig 认为,数值计算的社会结构(其中算法旨在处理一大类问题)可能会导致过于笼统的方法对其中任何一个问题都不是特别有效。但是,他指出,一旦您了解了这些算法的工作原理,就可以为某个特定问题设计一种计算方法,前提是该问题足够重要。他还讨论了如何使用概率机器学习的思想在算法运行时估计错误的规模。

  • 01:00:00 在本节中,Philipp Hennig 讨论了如何在给定一些数据的情况下估计协方差矩阵中未知常数的尺度,并介绍了共轭先验的概念。他解释说,对于指数族概率分布,总有一个共轭先验,例如伽马先验,可用于估计高斯分布的方差。 Hennig 讲述了 William C Lee Gossett 的故事,他在为 Guinness 担任酿酒师时想出了这个方法,并且不得不估计啤酒桶中样品的分布。该方法涉及将先验和似然相乘并对结果进行归一化以获得与伽玛分布相同的代数形式,并使用基于观察值或函数值的新参数。

  • 01:05:00 在本节中,Philipp Hennig 解释了如何估计参数的后验浓度和学生 T 分布。该方法称为贝叶斯正交,其中规模开始时很宽,随着收集到的观测值越来越多而变得越来越集中。结果显示在图中,其中最初分布随着观察值的增加而收缩。 Hennig 指出,关于这个平滑函数的先前假设对于这个问题来说过于保守,并且有很多更智能的积分算法,例如具有用勒让德多项式扩展的特征集的高斯求积,效果很好。

  • 01:10:00 在本节中,Hennig 讨论了贝叶斯求积法,这是在有界域上进行积分的经典方法,例如我们从 -1 到 1 的域。他解释说,有相应的求积法则收敛得非常快,收敛的超多项式权重,但这仅适用于实际上平滑的函数。右图中的绿线也可以对应于某些高斯先验假设下的一些后验均值估计。虽然本文的结果主要是出于理论上的兴趣,阐明两种不同的数值积分方法之间的关系,但有一些经典算法非常适合此类问题,并且针对不同类型的问题提供了许多具有不同基础的结构整合问题。这些正交规则通过假设可以使用正交多项式和加权函数以特定形式编写积分来近似积分,并且根据 W 和积分域有特定的 Phi 选择。

  • 01:15:00 在本节中,演讲者讨论了不同类型的切比雪夫多项式及其在计算单变量函数的数值积分中的用途。演讲者还解释了为什么在为患者推理规则指定先验时考虑积分域、函数形状和先验很重要。演讲者指出,经典的积分算法和正交规则可以被认为是某种形式的高斯后验均值估计,并且这些算法做出的选择可以由信息论论证推动。演讲者最后指出,虽然经典的求积规则适用于一维积分,但更高维的问题需要更复杂的方法,例如蒙特卡罗算法。

  • 01:20:00 在本节中,演讲者讨论了上一节中所示方法在维度缩放方面的局限性。这些方法往往会出现维度呈指数衰减的性能衰减,因为必须生成评估网格,这意味着它们必须用点覆盖域。这是有问题的,因为高斯过程被用作先验,并且它们的后验不确定性不取决于所见的数字,仅取决于已进行评估的地方。因此,这些集成方法是非自适应的,限制了它们在更高维度上的可扩展性。为了克服这个问题,需要新的算法可以通过自适应推理来推断某些点比其他点提供更多信息的事实。

  • 01:25:00 在本节中,Philipp Hennig 讨论了高斯过程对非负值编码的局限性,并通过定义一个与实际函数平方的新函数提出了一种解决方法。生成的分布不是高斯分布,而是通过可以通过高斯过程来近似的随机过程来近似。由此产生的算法称为 Wasabi,它代表 warp sequential active Bayesian integration。它是一种概率公式,可以在预期较大函数值的地方自适应地增加不确定性,从而允许构建近似数值算法。蓝色的效用函数表示函数值的后验不确定性。

  • 01:30:00 在本节中,Philipp Hennig 讨论了贝叶斯积分的概念,这是一种数值积分算法。 Hennig 解释了该算法如何适应观察到的函数,并使用主动学习程序来确定下一步要评估的位置。该算法可以在更高的维度上工作,并且具有一些非常智能的收敛速度。 Hennig 还将此算法与蒙特卡洛算法进行了比较,并认为先验知识可以提高算法的性能。此外,他暗示了一种超越蒙特卡洛的更好算法的可能性,这将在圣诞节后进行讨论。

  • 01:35:00 在本节中,Philipp Hennig 讨论了贝叶斯求积法,其中涉及对我们关心的数量(例如积分和算法值)进行先验分布,以贝叶斯方式计算某些东西。该方法在估计周围分配后验估计和不确定性估计,这可以用经典方法识别。如果错误估计是错误的,这并不一定意味着计算的概率观点是错误的,而是先验假设集是错误的。通过使用更多先验知识并将数值算法视为自治代理,我们可以提取更多信息并使算法更快、更好地工作。
Numerics of ML 10 -- Bayesian Quadrature -- Philipp Hennig
Numerics of ML 10 -- Bayesian Quadrature -- Philipp Hennig
  • 2023.02.02
  • www.youtube.com
The tenth lecture of the Master class on Numerics of Machine Learning at the University of Tübingen in the Winter Term of 2022/23. This class discusses both ...