VBSA的假設其實非常像統計的ANOVA:
令$X = \{x_i\}|_{i=1}^{n}$為模型中的$n$個參數,另設參數皆位於$[0,1]$區間內(非位於此區間內可以用變數變換的方式達成)。那麼輸出 $y = f(x_1, x_2, \ldots, x_n)$可以表示成多個函數的和:
$$ f(X) = f_0 + \sum_{i=1}^{n} f_i(x_i) + \sum_{i<j}^n f_{i,j}(x_i,x_j) + \ldots $$
並且假設以上函數對它自己的變數積分起來為零:
$$ \int_0^1 f_{i_1,i_2,\ldots , i_s} (x_{i_1}, x_{i_2}, \ldots , x_{i_s}) dx_{i_k} = 0 \mbox{ for } k = 1 \mbox{ to } s $$
(其中$\{i_a\}|_{a=1}^s$是個數列,例如$s=2, i_1=2, i_2=5$那麼上式可以表示為:
$\int_0^1 f_{2,5} (x_{2}, x_{5}) dx_{2} = 0 \mbox{ and} \int_0^1 f_{2,5} (x_{2}, x_{5}) dx_{5} = 0 $)
如此一來這些函數就會正交(orthogonal,意味著兩個具有相同變數的函數乘積的積分為零),所以要計算期望值等的就簡單了,因為除了要看的變數之外,積分統統會零掉:
$$ \begin{cases}
E(y) = f_0
\\
E(y|x_i) = f_0 + f_i
\\
E(y|x_i,x_j) = f_0 + f_i + f_j + f_{i,j} \mbox{ and so on}
\end{cases}$$
接下來就可以計算變異數:
$$ Var(y) = E(y^2) - (E(y))^2 = \int_{K^n} f^2 dX - f_0^2 = D $$
為了方便,將以下積分表示簡寫:
$$ D_{i_1, i_2 \ldots , i_s} = \int_0^1\int_0^1\ldots\int_0^1 f_{i_1, i_2 \ldots , i_s}^2 dx_{i_1} \ldots dx_{i_s} $$
那麼輸出的變異數$D$就會是:(因為兩兩相乘的積分為零,只剩這些項)
$$ D = \sum_{i=1}^n D_i + \sum_{i=1}^n\sum_{j=i+1}^n D_{i,j} + \ldots + D_{1,\ldots , n} $$
所以Sensitivity的重點就在於「$D_i$能解釋多少的$D$」:
$$ S_i = \dfrac{D_i}{D} $$
這就是VBSA的中心概念,而estimators以及我上傳檔案的計算方式會放在part II
Bibliography
- Andrea Saltelli, Paola Annoni, Ivano Azzini, Francesca Campolongo, Marco Ratto, and Stefano Tarantola. Variance based sensitivity analysis of model output. Design and estimator for the total sensitivity index. Computer Physics Communications, 181(2):259{270, 2010
- Karen Chan, Andrea Saltelli, Stefano Tarantola. SENSITIVITY ANALYSIS OF MODEL OUTPUT: VARIANCE-BASED METHODS MAKE THE DIFFERENCE. Proceedings of the 1997 Winter Simulation Conference (http://www.informs-sim.org/wsc97papers/0261.PDF)