• 论文名称:context-aware learning of hierarchies of low-fidelity models for multi-fidelity uncertainty quantification
  • 链接:https://www.sciencedirect.com/science/article/pii/S0045782523000312
  • 国际计算力学领域的顶级期刊《Computer Methods in Applied Mechanics and Engineering》(中科院一区 TOP,IF:6.756)

0 abstract

  • 背景:

    • multi-fidelity Monte Carlo 方法利用 low-fidelity and surrogate models 来减少方差(variance),使不确定性量化变得可行,尽管物理系统的 high-fidelity 数值模拟计算成本很高。
  • 工作简述:

    • 我们提出了一种 context-aware 的 multi-fidelity Monte Carlo 方法,实现了训练 low-fidelity 模型的成本和 Monte Carlo 采样的成本之间的最佳平衡。

    • 当训练 low-fidelity 模型时,我们考虑到了所学的 low-fidelity 模型将被使用的背景,即在 Monte Carlo 估计中减少方差,这使得它能够在训练和抽样之间找到最佳的权衡,以最小化给定计算预算(computational budget)下估计器的均方误差(mean-squared error)上限。

  • 继承了之前的工作:

    • 它将以前开发的 context-aware bi-fidelity Monte Carlo 方法,推广到多个模型的层次结构 和 更普遍的 low-fidelity 模型类型,如 sparse-grid(比如说 PDE 仿真的网格粒度粗一点)和 deep-network。
  • 文献树上的位置:

    • 我们与传统的 surrogate modeling 和 model reduction 技术不一样,后者构建 low-fidelity 模型的主要目的是为了很好地接近 high-fidelity 模型的输出,通常忽略了所学模型在 upstream tasks 中的 context。
  • 实验结果:

    • 用陀螺动力学模拟代码 Gene 进行的数值实验表明,在做一个不确定性量化时,与 single-fidelity Monte Carlo 和 standard multi-fidelity estimators 相比,速度提高了两个数量级:相当于在德州高级计算中心 Lonestar6 超级计算机的一个节点上,运行时间从 72 天减少到 4 小时。

1 intro & related method

  • literature:[1] 是一个 Multi-Fidelity 的 survey。其他 literature 懒得整理了。
  • motivation:如果没有现成的 low-fidelity model,那么就需要首先训练得到它们,这可能会产生额外的计算成本,并且需要对 high-fidelity model 进行额外的评估,以产生训练数据。
  • main idea:该方法将 ① 训练多个 low-fidelity 模型的层次的成本 ② 蒙特卡洛采样以获得多保真估计器的成本进行 trade-off,在给定的 computational budget 下,使均方误差(mean-squared error)的上限最小(context-aware:最大限度地减少蒙特卡罗估计的方差),而不是尽可能接近 high-fidelity model。
  • structure:
    • 2:preliminaries,介绍符号定义,传统的 multi-fidelity Monte Carlo 算法,他们之前做的一个 bi-fidelity context-aware 算法。
    • 3:method。
    • 4:两个 experiment,1 具有九个不确定参数的二维空间域上的热传导问题,2 具有不确定输入的现实等离子体微扰动情况。数值结果的代码:https://github.com/ionutfarcas/context-aware-mfmc

2 背景 & 前情提要

2.1 背景:static multi-fidelity Monte Carlo estimation

  • \(f^{(0)}:X→Y\) 是一个输入-输出响应(input-output response),expensive to evaluate。输入为 d 维,输出为 1 维。

    • 对一个随机变量 Θ=[Θ1,Θ2,...,Θd]^T,我们想估计 f^(0)(Θ) 的期望值 μ0。
  • MFMC(multi-fidelity Monte Carlo)estimator 包含 k+1 个模型,f^(0) high-fidelity,f^(1) ... f^(k) low-fidelity。
    • low-fidelity model 的精度 ρ:用 f^(j) 对 f^(0) 的 Pearson correlation coefficient 来定义:\(\rho_j = Cov[f^{(0)}, f^{(j)}]/σ_0σ_j\),其中 σ 是方差(variance)。设定 ρ_k+1 = 0。
    • models 的评估成本:w1, w2, ..., wk>0。归一化 high-fidelity f^(0) 的评估成本 w0 = 1。
    • 假设模型们满足排序:精度:1 = |ρ0|>|ρ1|>…>|ρk|;评估成本:\(w_{j-1}/w_{j}\gt[ρ^2_{j-1}-ρ^2_j]/[ρ^2_{j}-ρ^2_{j+1}]\)。
  • 设 m_j 为 model f^(j) 的评估次数,0 ≤ m0 ≤ m1 ≤ … ≤ m_k。每一次评估都从独立同分布(iid)的分布 \(\pi\) 里抽样。
  • 于是 MFMC estimator 形式:\(\hat E^{MFMC} = \hat E_{m_0}^{(0)}+\sum_{j=1}^k\alpha_j(\hat E_{m_j}^{(j)}-\hat E_{m_{j-1}}^{(j)})\),其中 $\hat E_{m_j}^{(j)}=\frac 1 {m_0}f^{(0)}(\boldsymbol\theta_i) $ 即 f(θ) 的均值。
  • 总 computational cost: \(p=\sum_{j=0}^km_jw_j\)。
  • 我们把 p 固定(budget),去找最优的 \(m_0^*, \cdots, m_k^*\) 以及 \(\alpha_0^*, \cdots, \alpha_k^*\),来让 \(\hat E^{MFMC}\) 的方差最小。
    • \(\hat E^{MFMC}\) 的 MSE = \(\frac {\sigma_0^2}p\bigg(\sum_{j=0}^k\sqrt{w_j(\rho_j^2-\rho_{j+1}^2)}\bigg)^2\)。
    • 其实是有闭式解的,见 [14]。

2.2 前情提要:context-aware bi-fidelity Monte Carlo estimator

  • 他们之前做的 context-aware bi-fidelity MC estimator 的工作是 [2]。

    • 改了一下 notation: low-fidelity model \(f_n^{(1)}\) 表示训 f^(1) 需要用 high-fidelity f^(0) 的 n 个样本。
    • 假设所有 low-fidelity model 都是用相同的 NN 来训,唯一不同的是训练样本数量,那么 Pearson 系数 ρ1 和评估成本 w1 都取决于 n。
    • 【这是假设 assumption】Pearson 系数的 bound:\(1-\rho_1^2(n)\le c_1n^{-\alpha}\);评估成本的 bound:\(w_1(n)\le c_2n^\beta\);其中 c1 c2 α>0 β>0 都是常数。
  • 我们的 budget 是 p。如果用 n 个样本训练 f^(1),那么还有 p-n 的预算用于 f^(1) 的评估。

  • context-aware bi-fidelity MC estimator: \(\hat E_n^{CA-MFMC}=\hat E_{m_0^*}^{(0)}+\alpha_1^*(E_{m_1^*}^{(1)}-E_{m_0^*}^{(1)})\) ,决策变量为 \(m_0^*, m_1^*, α_1^*\) ,目标函数为最小化 \(\hat E_n^{CA-MFMC}\) 的 MSE。

    • \(\hat E_n^{\rm CA-MFMC}\) 的 MSE = \(\frac{\sigma_0^2}{p-n}\bigg(\sqrt{1-\rho_1^2(n)}+\sqrt{w_1(n)\rho_1^2(n)}\bigg)^2\) (公式 2.6)。
  • 如果预算 p 是固定的,n 可以通过最小化 MSE 的上界来选择。

    • 上界: \(\rm {MSE}(\hat E_n^{CA-MFMC})\le\frac{2\sigma_0^2}{p-n}(c_1n^{-\alpha}+c_2n^\beta)\) 。
    • 工作 [2] 表明,在某些假设下,给定一个 p,存在一个唯一的 n∗,最小化(2.6);然而,n∗ 没有闭式解,只能数值寻找。
    • 最佳的 n∗ 是独立于预算 p 的。

3 method

3.1 一些关于 multi-fidelity models 的假设

  • 假设 1:存在 \(c_{a,j}\ge0\),函数 \(r_{a,j}(n_j)\) 值为正数、对 n_j 单调递减、二次可微。限制精度(Pearson 系数): \(1-ρ_j^2(n_j)\le c_{a,j}r_{a,j}(n_j)\)。
  • 假设 2:存在 \(c_{c,j}\ge0\),函数 \(r_{c,j}(n_j)\) 值为正数、对 n_j 单调递增、二次可微。限制评估成本: \(w_j(n_j)\le c_{c,j}r_{c,j}(n_j)\)。
  • 貌似,假设两个 r 函数为: \(r_{a,j}=n^{-\alpha},r_{c,j}=n^\alpha,\alpha\gt0\) 。
  • 一个备注:事实上,如果一组数据拿去训 f^(i),那么也有可能可以拿去训 f^(j);不过,更有可能的一种情况是,两个模型结构不一样,需要的训练数据结构也不一样,所以不能重用,所以,下文都不考虑样本的重用。

3.2 只用一个 low-fidelity 模型:[2] 基础上的改进

  • 首先,放缩 \(\rm MSE(\hat E_n^{CA-MFMC})\le\frac{2\sigma_0^2}{p-n}(c_{a,1}r_{a,1}(n_1)+c_{c,1}r_{c,1}(n_1))\),将它记为 u1。接下来,我们关心这个 upper bound 何时存在唯一的全局最小值。

    • PS:证明直接看原文吧,本科高数难度。
  • 命题 1 :u1 何时存在唯一的全局最小值:
    • 假设满足 \(c_{a,1}r''_{a,1}(n_1)+c_{c,1}r''_{c,1}(n_1)\gt0\)【公式 (3.6)】。那么,u1 具有唯一的全局最小值 \(n_1^*\in[1,p-1]\)。
  • 命题 2 :假设对于所有 \(n_1\in(0,\infty)\) 满足 公式 (3.6),
    • 并且存在一个 \(\bar n_1\in(0,\infty)\) 使得 \(c_{a,1}r_{a,1}(\bar n_1)+c_{c,1}r'_{c,1}(\bar n_1)=0\)。那么 \(\bar n_1\) 是唯一的,并且 \(n_1^*\le\max\{1,\bar n_1\}\)。

3.3 context-aware multi-fidelity MC sampling

一种 sequential 训练方法,来为 CA-MFMC estimator 拟合 hierarchies of low-fidelity models,其中每一步都实现了 training 和 sampling 之间的 optimal trade-off。

我主要关心 context-aware 是什么东西。

  • 引理 1:在假设 1 假设 2 下,CA-MFMC estimator 的 MSE 的 upper bound:

    • \(\rm MSE(\hat E_{n_1,\cdots,n_k}^{CA-MFMC}) \le \frac{(k+1)\sigma_0^2}{p_{k-1}-n_k}(\kappa_{k-1}+\hat c_{a,k}r_{a,k}(n_k)+c_{c,k}r_{c,k}(n_k))\) 。
    • 其中 \(p_{k-1}=p-\sum_{j=1}^{k-1}n_j,~~p_0=p\) ,
    • \(\kappa_{k-1}=c_{a,1}r_{a,1}(n_1)+\sum_{j=1}^{k-2}c_{c,j}r_{c,j}(n_j)c_{a,j+1}r_{a,j+1}(n_{j+1}),~~\kappa_0=0\) ,
    • \(\hat c_{a,k} = c_{c,k-1}r_{c,k-1}(n_{k-1})c_{a,k},~~\hat c_{a,1} =c_{a,1}\) 。
    • (重申:n 是训 low-fidelity model 的样本数量)
    • 证明:直接用一个 平方和不等式 展开。
  • 看这个 upper bound 括号内加和的部分,\(\hat c_{a,k}\) 和 \(κ_{k-1}\) 都仅依赖于 \(n_1, \cdots,n_{k-1}\),而 \(r_{a,k}(n_k),~r_{ck}(n_k)\) 仅依赖于 n_k。这启发了一种 sequentially 向 CA-MFMC estimator 添加 low-fidelity model 的做法。
    • 给定 \(n_1, \cdots,n_{k-1}\),寻找 \(n_k\),使得 \(u_j(n_j;n_1, \cdots,n_{k-1}):[1,p_{j-1}-1]\rightarrow(0,\infty)\),\(u_j(n_j;n_1, \cdots,n_{k-1})=\frac1{p_{j-1}-n_j}(\kappa_{j-1}+\hat c_{a,j}r_{a,j}(n_j)+c_{c,k}r_{c,k}(n_j))\)。
  • 命题 3:使用命题 1,即 \(n_1^*\) 是 u1 的全局最小值。现在去考虑 j = 2,3,...,k。
    • 若 \(\hat{c}_{a, j} r_{a, j}^{\prime \prime}\left(n_j\right)+c_{c, j} r_{c, j}^{\prime \prime}\left(n_j\right)>0\),则存在 u_j 的全局最小值 \(n_j^* \in\left[1, p_{j-1}-1\right]\)。
    • 证明好像跟命题 1 同理。
  • 命题 4:使用命题 1,即 \(n_j^*\) 是 u_j 的全局最小值。
    • 若存在 \(\bar{n}_j \in(0, \infty)\) 使得 \(\hat{c}_{a, j} r_{a, j}^{\prime}\left(\bar{n}_j\right)+c_{c, j} r_{c, j}^{\prime}\left(\bar{n}_j\right)=0\),则有 \(n_j^* \leq \bar{n}_j\),即 \(n_j^*\) 的一个 upper bound。
    • 继续跟命题 2 同理,归纳法。
  • 一个备注:models 的 hierarchy 必须满足评估次数 m 递减(2.1)。

啊…… 这就结束了?感觉看了一肚子数学…

4 experiment

图挺好看的。

要赶着看 MFRL 了,不细看了。

在有限 computational budget 下,借助 low-fidelity 模型提高精度的更多相关文章

  1. AliIAC 智能音频编解码器:在有限带宽条件下带来更高质量的音频通话体验

    随着信息技术的发展,人们对实时通信的需求不断增加,并逐渐成为工作生活中不可或缺的一部分.每年海量的音视频通话分钟数对互联网基础设施提出了巨大的挑战.尽管目前全球的互联网用户绝大多数均处于良好的网络状况 ...

  2. windows 下借助7zip实现命令行解压缩

    windows 下借助7zip实现命令行解压缩 64位电脑下载 https://www.7-zip.org/a/7z1805-x64.exe 安装 安装目录下所有文件如下: 在命令行下只需要用到 7z ...

  3. ubuntu下借助qt creator创建属于自己的共享库

    简介: 在 Windows 上,共享库由 .dll 表示:在 Linux 上,由 .so 表示. Shared Library的优势 共享库,又称动态库或so文件,顾名思义,它可以在可执行文件启动时加 ...

  4. 基于SourceTree 下的 Git Flow 模型

    基于SourceTree 下的 Git Flow 模型 1. sourceTree  是一个开源的git 图形管理工具,可下载mac版本,windows版本 2. Git Flow 是一套使用Git进 ...

  5. .NET平台下几种SOCKET模型的简要性能供参考

    转载自:http://www.cnblogs.com/asilas/archive/2006/01/05/311309.html .NET平台下几种SOCKET模型的简要性能供参考 这个内容在cnbl ...

  6. 借助Visual Studio Code提高基于ActionScript的LayaAir HTML5游戏的调试效率

    借助Visual Studio Code提高基于ActionScript的LayaAir HTML5游戏的调试效率 使用Visual Studio Code(VS Code)调试的优势 借助VS Co ...

  7. java线程基础巩固---多线程下的生产者消费者模型,以及详细介绍notifyAll方法

    在上一次[http://www.cnblogs.com/webor2006/p/8419565.html]中演示了多Product多Consumer假死的情况,这次解决假死的情况来实现一个真正的多线程 ...

  8. u-boot下的DM驱动模型 阶梯状 (转)

    U-boot 下DM驱动模型的相关笔记要注意的关键两点: DM驱动模型的一般流程bind->ofdata_to_platdata(可选)->probe    启动,bind操作时单独完成的 ...

  9. MySQL DROP DB或TABLE场景下借助SQL Thread快速应用binlog恢复方案

    [问题] 假设有这种场景,误操作DROP DB或TABLE,常规的恢复操作是还原全备份,并用mysqlbinlog追加到drop操作前的位置. 如果需要恢复的binlog的日志量比较大而我们只希望恢复 ...

  10. Ubuntu下借助URLOS实现快速安装DzzOffice企业办公套件

    如今,越来越多的个人.团队甚至企业都在使用GSuite或者Office365等网络办公套件,为什么人们越来越喜爱使用网络办公套件?一方面是考虑数字资产的安全性以及管理效率,另一方面则是日益增大的协同办 ...

随机推荐

  1. Windows server 防火墙开放oracle监听端口

    Windows server 防火墙开放oracle监听端口 Windows server 2008 开放1521端口 Windows server 2003 开放监听程序例外先开防火墙,再开监听例外 ...

  2. SQL Server 2014 启动时提示:无效的许可证数据,需要重新安装

    路径:C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE 双击运行DDConfigCA.exe后,Sql Server 20 ...

  3. python 猜数字

    方法一 import randomif __name__ == '__main__':    yourname = input("你好! 你的名字是什么?\n");    prin ...

  4. unity 普通项目转URP项目

    1.导入UniversalRP (PackageManager 导入)2.创建Pipeline Asset     creat-->Rendering-->UniversalRender ...

  5. virsh虚拟机使用网桥来实现上网

    使用virsh-install安装虚拟机后,虚拟机不可以上网 第一步:主机上配置网桥 cp ifcfg-eno16777736    /tmp/ cp ifcfg-eno16777736  ifcfg ...

  6. pom文件信息的解析

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  7. pytorch CrossEntropyLoss() 默认转换one-hot编码

    import torchpredict = torch.randn((4,3))predict = torch.nn.functional.softmax(predict,dim = 1)target ...

  8. SSRF Server-Side Request Forgery(服务器端请求伪造)

    什么是SSRF? 犹如其名,SSRF(Server-Side Request Forgery)服务端请求伪造,攻击者可以控制服务器返回的页面,借用服务器的权限访问无权限的页面. 这是一个允许恶意用户导 ...

  9. archlinux基本安装、以及图形化界面

    磁盘刻录 在windows下载磁盘刻录工具 rufus,官网:https://rufus.ie/zh/ 中文界面,实在不是可以搜索一下磁盘刻录教程 在linux下使用balena-etcher,官网: ...

  10. 密码破解-john的使用

    john类似于hashcat一样,也是一款密码破解方式,john跟专注于系统密码的破解,并且和hashcat一样在kali中自带 hash请见hash的简单使用 重要的参数 --wordlist=字典 ...