大规模确定性和贝叶斯反问题的可扩展软件框架
hippylib的Python项目详细描述
Inverse Problem PYthon library
__ ______ _______ _______ __ __ __ __ __
/ | / |/ \ / \ / \ / |/ |/ |/ |
$$ |____ $$$$$$/ $$$$$$$ |$$$$$$$ |$$ \ /$$/ $$ |$$/ $$ |____
$$ \ $$ | $$ |__$$ |$$ |__$$ | $$ \/$$/ $$ |/ |$$ \
$$$$$$$ | $$ | $$ $$/ $$ $$/ $$ $$/ $$ |$$ |$$$$$$$ |
$$ | $$ | $$ | $$$$$$$/ $$$$$$$/ $$$$/ $$ |$$ |$$ | $$ |
$$ | $$ | _$$ |_ $$ | $$ | $$ | $$ |$$ |$$ |__$$ |
$$ | $$ |/ $$ |$$ | $$ | $$ | $$ |$$ |$$ $$/
$$/ $$/ $$$$$$/ $$/ $$/ $$/ $$/ $$/ $$$$$$$/
https://hippylib.github.io
hIPPYlib
为
由偏微分方程(pde)控制的确定性和贝叶斯反问题。
它建立在FEniCS之上
用于pde离散化的并行有限元库
关于PETSc的可伸缩和有效线性
代数运算和求解器。
有关生成说明,请参见文件INSTALL.md
。版权信息
许可限制可以在文件COPYRIGHT
中找到。
对hIPPYlib
感兴趣的新用户的最佳起点
功能是tutorial folder
中的交互式教程。
从概念上讲,hIPPYlib
可以看作是一个工具箱,它提供
用于试验新思想和开发可扩展的
偏微分方程约束确定性和贝叶斯反问题的算法。
在hIPPYlib
中,用户可以在
弱形式,使用友好、紧凑、近似数学的表示法
FEniCS
,它将自动为
离散化。线性和非线性,平稳和
hIPPYlib
中支持与时间相关的pde。
对于平稳问题,梯度和hessian信息可以是
由hIPPYlib
使用FEniCS
符号微分自动生成
相关的弱形式。对于依赖时间的问题,相反,是符号的
微分只能用于空间项,而贡献
需要提供由时间动力学产生的梯度和黑森人
由用户提供。
噪声和先验协方差算子被建模为 椭圆型微分算子允许我们快速建立现有的快速微分算子 无显式椭圆算子的多重网格解算器 构造稠密协方差算子。
作为hIPPYlib
基础的算法的关键特性是该解决方案
计算了确定性和贝叶斯反问题
在一个成本上,用向前的pde解来衡量,这是独立于
参数维度。
hIPPYlib
提供了不精确性的健壮实现
计算最大后验概率的牛顿共轭梯度算法
(地图)点。梯度和海森作用是
通过它们在FEniCS
中的弱形式规范计算
约束状态和伴随变量以满足正向
以及伴随问题。牛顿系统是由早期的
通过eisenstat walker终止cg迭代(以防止
和steihaug(避免负曲率)
标准。用户可以使用两种全球化技术:
armijo回溯线搜索与信任域。
hIPPYlib
构造后验协方差
通过调用一个低秩近似的Hessian的
对数可能性。hIPPYlib
还提供了用于生成示例的可伸缩方法。
从先验数据中提取大尺度空间相关高斯随机场
分布,hIPPYlib
实现了一个新方法,该方法强烈依赖于
定义为微分算子逆的协方差算子的结构:
利用有限元矩阵的组装过程,构造了精度算子的稀疏类cholesky矩形分解。
从局部高斯近似到后验(如在地图点)采样
hIPPYlib
利用
从先验分布中校正样本的对数似然性。
最后,探索邮政rior分布,hIPPYlib
实现
基于hessian信息的维数无关mcmc采样方法。
最后,随机和探测算法可用于计算 先验/后验分布的点态方差与迹 协方差算子的。