大规模确定性和贝叶斯反问题的可扩展软件框架

hippylib的Python项目详细描述


Build StatusDoc StatusstatusDOI

              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回溯线搜索与信任域。

<{> {CD1>},后协方差近似于 负对数后验的hessian逆 地图点。这个高斯近似是精确的。 可观测图的参数是线性的;否则,它的对数是一致的。 两个在映射点处具有对数后验的导数,因此 可以作为基于hessian的马尔可夫链蒙特卡罗(mcmc)的一个建议。 方法。hIPPYlib构造后验协方差 通过调用一个低秩近似的Hessian的 对数可能性。

hIPPYlib还提供了用于生成示例的可伸缩方法。 从先验数据中提取大尺度空间相关高斯随机场 分布,hIPPYlib实现了一个新方法,该方法强烈依赖于 定义为微分算子逆的协方差算子的结构: 利用有限元矩阵的组装过程,构造了精度算子的稀疏类cholesky矩形分解。 从局部高斯近似到后验(如在地图点)采样 hIPPYlib利用 从先验分布中校正样本的对数似然性。 最后,探索邮政rior分布,hIPPYlib实现 基于hessian信息的维数无关mcmc采样方法。

最后,随机和探测算法可用于计算 先验/后验分布的点态方差与迹 协方差算子的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
通过signingReport运行安卓应用程序时发生java错误   java我需要实现hashCode()和equals()方法吗?   javascript Selenium Java从Pinterest下载图像   java Tomcat(嵌入式),无需重新启动即可进行更改   java检查每个if是否有匹配的endif   的java接口。我也是。罐子   mysql java。sql。SQLException:列索引超出范围,0<1。使用准备好的语句   如何在java中修改json字符串?   javascript智能手机的独特功能   web服务java。lang.NoSuchMethodError:javax。ws。rs.core。响应$Status$Family   sockets通过浏览器/URL与ServerSocket建立Java连接   JavaSpring数据自定义存储库和接口隔离原则   swing从不同的java类访问jdialog的一个实例   java如何根据发出的事件有条件地缓冲分组的可观察/流量?   用java将电子邮件正文导出为html文件   JavaSpring获取ServletContext并将其作为Bean提供   setter不做java中应该做的事情