python进行敏感性分析(SALib库)

Python232

什么是敏感性分析

敏感性分析(sensitivity analysis)是指从定量分析的角度研究有关因素发生某种变化对某一个或一组关键指标影响程度的一种不确定分析技术。每个输入的灵敏度用某个数值表示即敏感性指数(sensitivity index)
敏感性指数包括以下几种:

  • 一阶指数:度量单个模型输入对输出方差的贡献
  • 二阶指数:度量两个模型输入的相互作用对输出方差的贡献
  • 总阶指数:度量模型输入对输出方差的贡献,包括一阶及更高阶

什么是SALib

SALib是一个基于python进行敏感性分析的开源库,SALib提供一个解耦的工作流,意味着它不直接与数学或计算模型交互,SALib 负责使用其中一个采样函数(sample functions)生成模型输入,并使用其中一个分析函数(analyze functions)计算模型输出的灵敏度指数。使用 SALib 进行敏感性分析遵循四个步骤:

  • 确定模型输入(参数)及采样范围
  • 运行采样函数生成模型输入
  • 使用生成的输入评估模型,保存模型输出
  • 基于模型输出运行分析函数计算敏感性指数
    SALib提供了几种灵敏度分析函数,如Sobol,Morris和FAST。有许多因素决定了哪种方法适用于特定应用。但是无论选择哪种方法,都只需要用到两种函数:sample,analyze

案例1

输入验证码查看隐藏内容

扫描二维码关注本站微信公众号 Johngo学长
或者在微信里搜索 Johngo学长
回复 svip 获取验证码
wechat Johngo学长