Use the Bing Li “ladle” diagnostic to truncate subspace


  • Alias: None

  • Arguments: None


Uses a trade-off criterion to determine where to truncate the active subspace. The criterion is a function of the eigenvalues and eigenvectors of the active subspace gradient matrix. This function compares the decrease in eigenvalue amplitude with the increase in eigenvector variability under bootstrap sampling of the gradient matrix. The active subspace size is taken to be the index of the first minimum of this quantity.

Usage Tips

If this automated diagnostic does not yield desirable results, consider using the explicit dimension truncation option or one of the other truncation methods.


Below is a brief outline of the Bing Li method of active subspace identification. The first two steps are common to all active subspace truncation methods.

  1. Compute the gradient of the quantity of interest, \(q = f(\mathbf{x})\) ,

    at several locations sampled from the input space,

\[\nabla_{\mathbf{x}} f_i = \nabla f(\mathbf{x}_i).\]
  1. Compute the eigendecomposition of the matrix \(\hat{\mathbf{C}}\) ,

\[\hat{\mathbf{C}} = \frac{1}{M}\sum_{i=1}^{M}\nabla_{\mathbf{x}} f_i\nabla_{\mathbf{x}} f_i^T = \hat{\mathbf{W}}\hat{\mathbf{\Lambda}}\hat{\mathbf{W}}^T,\]
where \(\hat{\mathbf{W}}\) has eigenvectors as columns,

\(\hat{\mathbf{\Lambda}} = \text{diag}(\hat{\lambda}_1,\:\ldots\:,\hat{\lambda}_N)\) contains eigenvalues, and \(N\) is the total number of parameters.

  1. Normalize the eigenvalues,

\[\lambda_i = \frac{\hat{\lambda}_i}{\sum_j^N \hat{\lambda}_j}.\]
  1. Use bootstrap sampling of the gradients found in step 1 to compute replicate


\[\hat{\mathbf{C}}_j^* = \hat{\mathbf{W}}_j^*\hat{\mathbf{\Lambda}}_j^*\left(\hat{\mathbf{W}}_j^*\right)^T.\]
  1. Compute variability of eigenvectors,

\[f_i^0 = \frac{1}{M_{boot}}\sum_j^{M_{boot}}\left\lbrace 1 - \left\vert\text{det}\left(\hat{\mathbf{W}}_i^T\hat{\mathbf{W}}_{j,i}^*\right)\right\vert\right\rbrace ,\]
where \(\hat{\mathbf{W}}_i\) and \(\hat{\mathbf{W}}_{j,i}^*\) both

contain only the first \(i\) eigenvectors and \(M_{boot}\) is the number of bootstrap samples. The value of the variability at the first index, \(f_1^0\) , is defined as zero.

  1. Normalize the eigenvector variability,

\[f_i = \frac{f_i^0}{\sum_j^N f_j^0}.\]
  1. The criterion, \(g_i\) , is defined as,

\[g_i = \lambda_i + f_i.\]
  1. The index of first minimum of \(g_i\) is then the estimated active

    subspace rank.

For additional information, see Luo, Wei, and Bing Li. “Combining eigenvalues and variation of eigenvectors for order determination.” SIAM, 2015.