楼主: nandehutu2022
1955 64

[量化金融] 求解非线性高维偏微分方程 [推广有奖]

31
何人来此 在职认证  发表于 2022-6-11 04:29:48
神经网络有许多不同的变体,其结构不同(神经元如何连接);见图4.2。这些形式中最简单的是前馈神经网络,也称为多层感知器(MLP)。MLP可以用一个有向无环图来表示,因此可以看作是向前传递信息。通常,这类网络是以层的形式描述的,这些层链接在一起以创建输出函数,其中层是神经元的集合,可以将其视为计算单元。在最简单的情况下,有一个输入层和一个输出层。在这种情况下,输出j(由输出层中的第j个神经元表示)通过有偏加权和和激活函数φj连接到输入向量x:yj=φjbj+dXi=1wi,jxi!还可以在输入层和输出层之间合并其他隐藏层。例如,对于一个隐藏层,输出将变为:yk=φb(2)k+mXi=1w(2)j,k·ψb(1)j+mXi=1w(1)i,jxj!|{z}输入层到隐藏层| {z}隐藏层到输出层,其中φ,ψ:R→ R是各层的非线性激活函数,括号内的上标表示所讨论的层。我们可以将这一过程的扩展可视化为链式规则的简单应用,例如f(x)=ψd(····ψ(ψ(x))。在这里,网络的每一层由一个函数ψi表示,将先前输入和激活的加权和合并到连接的输出。图中的层数称为神经网络的深度和图4.2:神经网络架构。

32
可人4 在职认证  发表于 2022-6-11 04:29:52
资料来源:保罗·范德莱肯:“神经网络101”(https://paulvanderlaken.com/2017/10/16/neural-networks-101)输入1输入2输入3输入4输出授权层输入层输出层输出层输出层图4.3:带一个隐藏层的前馈神经网络。一层中神经元的数量代表该特定层的宽度;见图4.3。“深度”神经网络和深度学习是指在ML问题中使用具有许多隐藏层的神经网络。添加隐藏层的优点之一是,深度可以在某些应用程序中以指数方式减少计算成本,并以指数方式减少学习某些函数所需的训练数据量。这是因为与宽浅网络相比,一些功能可以由较小的深网络表示。模型尺寸的减小提高了统计效率。很容易想象,通过改变神经网络的结构可以实现巨大的灵活性和复杂性。人们可以改变网络的深度宽度,或者对每一层甚至每一个神经元都有不同的激活功能。这种灵活性可以用来实现非常强大的结果,但会导致不透明,使我们无法理解为什么会实现任何强大的结果。接下来,我们转向如何估计神经网络参数的问题。为此,我们必须首先确定一个损失函数L(θ;x,y),该函数将确定神经网络给定参数集θ的性能,该神经网络由每层中的权重和偏差项组成。目标是找到使损失函数最小化的参数集。挑战在于神经网络的高度非线性会导致损失函数的非凸性。

33
何人来此 在职认证  发表于 2022-6-11 04:29:55
非凸优化问题是非常重要的,通常我们不能保证候选解决方案是全局优化器。4.2随机梯度下降估计神经网络参数最常用的方法是基于梯度下降,这是一种优化函数的简单方法。给定函数f:Rd→ R、 我们希望确定达到f最小值的x的值。为此,我们从初始猜测x开始,并计算f在这一点上的梯度。这给出了函数中最大增长的方向。为了最小化函数,我们朝相反的方向移动,即按照:xn=xn进行迭代-1.- η · xf(xn-1) 其中η是称为学习率的步长,可以是常数,也可以是衰减的n。当梯度等于零时,算法收敛到临界点,但应注意,这不一定是全局最小值。在神经网络的背景下,我们将计算损失函数相对于参数集θ的导数(下一节将对此进行详细介绍),并遵循上述步骤。使用梯度下降法训练神经网络的一个困难是,当训练集很大时,与该过程相关的计算成本。这就需要使用这种算法的扩展,称为随机梯度下降(SGD)。当我们要最小化的损失函数是加法函数时,它可以写成:L(θ;x,y)=mmXi=1θLiθ; x(i),y(i)其中m是训练集的大小,li是每个示例的损失函数。SGD中的方法是将梯度视为期望值,并使用称为小批量的训练集的

34
nandehutu2022 在职认证  发表于 2022-6-11 04:29:58
也就是说,对于尺寸为Mt的固定小批量,梯度估计为:θL(θ;x,y)≈m级θmXi=1Liθ; x(i),y(i)然后朝相反方向采取通常的步骤(最陡下降)。4.3反向传播前一节中描述的随机梯度下降优化方法需要重复计算高度非线性函数的梯度。反向传播提供了一种计算效率高的方法,可以实现这一点。它基于递归应用链规则和定义计算图来理解哪些计算可以并行运行。如前几节所述,前馈神经网络可被视为通过评估由简单函数组成序列定义的函数来接收输入x并计算输出y。这些简单的函数可以看作是神经网络图中节点之间的操作。考虑到这一点,如果节点之间的操作有足够的信息,可以通过链式规则的应用程序分析计算y相对于x的导数。反向传播算法遍历该图,重复计算链规则,直到输出y相对于通过第二计算图象征性表示的xis的导数;见图4.4。WXYZFFWXYZFFDXDWDYDXDZDYFFFDZDW×dzdx×图4.4:通过计算图可视化反向传播算法。左面板显示连接输入和输出的函数的组成;右面板显示了如何使用链式规则计算导数。

35
mingdashike22 在职认证  发表于 2022-6-11 04:30:01
资料来源:Goodfello等人(2016年)计算计算图中导数的两种主要方法输入一个数值,然后计算该值的导数,返回PyTorch(PyTorch.org)中的数字,或计算asymbolic变量的导数,然后将派生操作存储到添加到图中的新节点中,以便以后在TensorFlow(TensorFlow.org)中使用。后一种方法的优点是,通过再次运行反向传播,可以从该扩展图计算高阶导数。反向传播算法最多需要0n具有n个节点的图的操作,最多存储On新节点。实际上,大多数前馈神经网络都是以链式方式设计的,这反过来又将操作和新存储的数量减少到O(n),从而使导数计算成为一种相对的堆操作。4.4总结概括而言,训练神经网络大致由三部分组成:1。定义神经网络的结构和损失函数,也知道模型的超参数;2、利用随机梯度下降法寻找损失最小值;3、使用反向传播计算损失函数的导数。这在图4.5.1中有更详细的数学描述。通过设置神经网络的深度(层数)、宽度(每层神经元的数量)和激活功能2,确定神经网络的架构。确定损失函数L(θ;x,y)、最小批量和学习率η3。

36
nandehutu2022 在职认证  发表于 2022-6-11 04:30:04
最小化损失函数以确定最佳θ:(a)初始化参数集,θ(b)随机抽样一小批mtraining示例x(i),y(i)(c) 计算采样小批次的损失函数θi;x(i),y(i)(d) 计算梯度θLθi;x(i),y(i)使用反向传播(e)使用估计的梯度更新基于SGD的θi:θi+1=θi- η · θL(θi;x(i),y(i))(f)重复步骤(b)-(e),直到kθi+1- θik很小。图4.5:神经网络的参数估计程序。4.5普适近似定理一个重要的理论结果是普适近似定理,它揭示了神经网络为何表现良好,参见Cybenko(1989)和Hornik(1991)。简单地说,这个结果表明,定义在RN的紧致子集上的任何连续函数都可以通过一个具有单个隐层的前馈网络很好地逼近。在数学上,定理的表述如下:设φ为一个非常数、有界、单调递增的连续函数,并设im表示多维单位超立方体。那么,如果 > 0和任何定义为m的函数,存在N、vi、bi、w,使得近似函数:f(x)=NXi=1viφ(w·x+bi)满足| f(x)- f(x)|< 对于所有x∈ 感应电动机。这个结果的一个显著方面是,激活函数独立于我们希望近似的函数!然而,应该注意的是,该定理没有说明隐藏层中需要多少神经元才能达到所需的近似误差,也没有说明该网络参数的估计是否可行。4.6其他主题4.6.1自适应动量回想一下,随机梯度下降算法由学习率η参数化,学习率η确定梯度向量给定的最陡下降方向上的步长。

37
kedemingshi 在职认证  发表于 2022-6-11 04:30:07
在实践中,该值应随着SGD算法的后续迭代而减小,以便对网络进行适当的训练。为了正确优化网络的参数集,需要选择一个适当的学习率计划,因为它可以确保在每次操作中减少多余的错误。此外,这种学习速度计划可能取决于手头问题的性质。出于上一段讨论的原因,开发了许多不同的算法,以找到一些能够指导选择有效学习率参数序列的启发式算法。受物理学启发,许多算法将梯度解释为速度向量,即参数在参数空间中移动的方向和速度。例如,动量算法将下一个速度计算为上一次迭代和新计算的梯度的加权和。这有助于最小化损失函数对参数空间某些方向的高灵敏度所导致的不稳定性,代价是引入两个新参数,即衰减因子和初始化参数η。假设这些敏感性取决于轴,我们可以对每个方向应用不同的学习速率计划,并在整个培训课程中进行调整。Kingma和Ba(2014)的工作将本节讨论的思想结合在一个称为适应性动量(Adam)的框架中。主要思想是根据特定方向偏导数的过去大小来增加/减少学习率。

38
mingdashike22 在职认证  发表于 2022-6-11 04:30:10
Adam被认为对其超参数值具有鲁棒性。4.6.2消失梯度问题在我们对神经网络的分析中,我们已经确定,向网络架构中添加层可能会导致其性能的大幅提高:增加层的数量可以使网络以更有效的方式更好地近似越来越复杂的函数。在某种意义上,当前ML应用程序中深度学习的成功可以归因于这个概念。然而,这种功率的提高可以通过消失梯度问题来抵消:由于反向传播计算梯度的方式,网络越深,其损失函数对早期层中权重的导数就越小。根据激活函数的不同,在极限情况下,梯度可能会以导致权重无法正确更新的方式向下流动。直观地说,假设我们有一个由nlayers组成的深度前馈神经网络。在每次迭代中,网络的每个权重都会收到一个与误差函数相对于当前权重的梯度成比例的更新。由于这些梯度是通过反向传播使用链规则计算的,因此层越靠后,其乘以已经很小的梯度的次数就越多。4.6.3长-短期记忆和递归神经网络具有时间或位置依赖性的应用,如语音识别和自然语言处理,其中网络的每一层处理一个时间/位置步骤,特别容易出现消失梯度问题。特别是,消失梯度可能会掩盖在时间/空间上相距遥远的观测点之间的长期依赖关系。通俗地说,我们可以说,神经网络无法准确地记住过去层中的重要信息。

39
可人4 在职认证  发表于 2022-6-11 04:30:13
克服这一困难的一种方法是将网络记忆的概念结合起来,训练它学习过去各层的输入应该流经当前层并传递到下一层,即应该“记住”或“忘记”多少信息这是Hochreiter和Schmidhuber(1997)提出的长-短期记忆(LSTM)网络背后的直觉。LSTM网络是一类递归神经网络(RNN),由称为LSTM单元的层组成。每一层由一个存储单元、一个输入门、一个输出门和一个遗忘门组成,该门控制信息从一层流向另一层,并允许网络学习最佳的记忆/遗忘机制。从数学上讲,过去层的部分梯度能够通过当前层直接到达下一层。通过该层的梯度大小不变(相对于变换的部分)以及丢弃的部分,也由网络学习。这将记忆方面嵌入到LSTM的体系结构中,允许它绕过消失梯度问题并学习长期依赖关系;有关单个LSTM装置的视觉表示,请参考图4.6。LSTMinput网关忘记网关输出网关XTYT-1+σ×yt×Mct-1CT图4.6:LSTM单元的架构:一个新的输入XT和最后一个单元yt的输出-1与过去的记忆信息ct结合-1生成新输出并存储新内存信息ct。资料来源:Peter Veliˇckovi\'c的《长短不一的回忆之旅》(https://www.cl.cam.ac.uk/pv273/幻灯片/幻灯片。pdf)受LSTM网络有效性的启发,并考虑到深度架构在现代ML中日益重要,Srivastava et al.(2015)设计了一个网络,允许从过去层到当前层的梯度流动。

40
可人4 在职认证  发表于 2022-6-11 04:30:16
公路网使用LSTM体系结构来解决数据不连续的问题。通过添加一条“信息高速公路”,允许从早期层到中间层的梯度毫发无损地流动到网络的末端,作者能够训练非常深的网络,深度高达100层,而不会消除梯度问题。第5章深层伽辽金方法5.1简介我们现在将注意力转向神经网络在寻找偏微分方程解方面的应用。如第3章所述,当问题的维数变得太大时,基于RIDS的数值方法可能会失败。事实上,网格中的点数量在维数上呈指数增长,这可能导致计算困难。此外,即使我们假设计算成本是可管理的,确保网格的设置以确保有限差分法的稳定性也是很麻烦的。基于这一动机,Sirignano和Spiliopoulos(2018)提出了一种使用神经网络求解偏微分方程的无网格方法。深伽辽金法(DGM)使用深神经网络近似解所需的偏微分方程。通过这种参数化,建立了一个损失函数,以惩罚拟合函数偏离所需微分算子和边界条件的情况。该方法利用计算图和前一章讨论的反向传播算法有效地计算微分算子,而边界条件很容易计算。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2026-1-7 06:07