Delta动量相关测度的SALib重采样数的选择三角洲分析?

2024-05-23 22:44:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用三角洲分析对基于拉丁超立方抽样的灵敏度分析进行了仿真,分析了输入参数对灵敏度分析的影响。你知道吗

SALib提供了一个功能:

SALib.analyze.delta.analyze(problem, X, Y, num_resamples=10, 
conf_level=0.95, print_to_console=False, seed=None) 

输出是delta和S1,我都可以用它们来确定每个参数的影响有多大。我还没有完全理解它们的区别,只是delta是分布的偏移,S1是方差的偏移。你知道吗

现在我想知道如何设置:

num_resamples

这个参数做什么?我无法理解其中的解释:

[1] Borgonovo, E. (2007). "A new uncertainty importance measure."
   Reliability Engineering & System Safety, 92(6):771-784,
   doi:10.1016/j.ress.2006.04.015.

[2] Plischke, E., E. Borgonovo, and C. L. Smith (2013). "Global
   sensitivity measures from given data." European Journal of
   Operational Research, 226(3):536-550, doi:10.1016/j.ejor.2012.11.047.

有人能给我一个更简单,更实际的解释吗?你知道吗

==================================================================================

到目前为止我发现:

采集更多的样本并没有改变\u conf值。你知道吗

\u conf值在[0,0.05]范围内

更改conf\ u级别不会更改间隔

如果我对num\u进行很小的重采样,比如1,\u conf值是NaN


Tags: 功能参数confdoilevelnumanalyzedelta
1条回答
网友
1楼 · 发布于 2024-05-23 22:44:08

在详细阅读了这些文件之后,我想我想出了一个解决办法。你知道吗

SALib的参数num\u重采样是基于偏差减少的bootstrap估计。B bootstrap复制给定输出Y的(num\u重采样)。在bootstrap中,通过从n个可用观测值中抽取n个实现的样本来获得复制,并进行替换。你知道吗

Bootstrapping:原始样本的统计可以通过从单个原始样本中取大量相同大小的较小样本(替换)的平均值来近似。每次重采样都会计算此统计信息,因此近似值会随着重采样次数的增加而提高。这是因为bootstrap数量可以表示为以样本为条件的期望值。经过大量的迭代之后,引导统计信息被编译成一个单一的引导分布。因此,获得引导值和相应的置信区间。你知道吗

但是,选择重采样次数取决于问题。关于这个问题有几项研究。 我只是按斯塔塔的建议做了:https://www.stata.com/support/faqs/statistics/bootstrapped-samples-guidelines/

  1. “选择大量但可以接受的复制。获得引导估计。你知道吗
  2. 更改随机数种子。使用相同的复制次数再次获得引导估计值。你知道吗
  3. 结果是否有意义的改变?如果是的话,你选择的第一个数字太小了。试试大一点的数字。如果结果足够相似,您可能拥有足够大的数量。当然,您可能应该再执行几次步骤2,但我很少执行。”

相关问题 更多 >