HSICEstimatorTargetSensitivity

class HSICEstimatorTargetSensitivity(*args)

Implement a HSIC estimator for target analysis.

Parameters
covarianceModelCollectionlist of CovarianceModel

List of all covariance kernels. The d first kernels are linked to the input and the last one is for the output.

X2-d sequence of float

The input sample used for the HSIC analysis of dimension d.

Y2-d sequence of float

The output sample used for the HSIC analysis of dimension 1.

estimatorTypeHSICStat

An estimator for internal computations.

filterFunctionFunction

A filter function used for the output.

Examples

>>> import openturns as ot
>>> from math import pi

Generate input and output samples.

>>> # 3d input distribution with an independent copula
>>> distX = ot.ComposedDistribution([ot.Uniform(-pi, pi)] * 3)
>>> X = distX.getSample(100) # get a sample
>>>
>>> # Apply the Ishigami model.
>>> inputs = ['X1', 'X2', 'X3']
>>> formula = ['sin(X1) + 5.0 * (sin(X2))^2 + 0.1 * X3^4 * sin(X1)']
>>> modelIshigami = ot.SymbolicFunction(inputs, formula)
>>> Y = modelIshigami(X) # Y = modelIshigami(X)

Define covariance kernels for the model inputs. Put them in a list.

>>> covarianceModelCollection = []
>>> for i in range(3):
...     Xi = X.getMarginal(i)
...     Cov = ot.SquaredExponential(1)
...     Cov.setScale(Xi.computeStandardDeviation())
...     covarianceModelCollection.append(Cov)

Append the list with the covariance kernel for the model output.

>>> covarianceModelCollection.append(ot.SquaredExponential(Y.computeStandardDeviation()))

Choose the statistic that will be used to estimate the HSIC indices.

>>> estimatorType = ot.HSICUStat() # could be HSICVStat instead

Define a filter function to apply to the model output.

>>> filter = ot.IndicatorFunction(ot.Interval(5, float('inf')))

Build and use the HSIC estimator for target sensitivity analysis.

>>> hsic = ot.HSICEstimatorTargetSensitivity(covarianceModelCollection, X, Y, estimatorType, filter)
>>> print(hsic.getR2HSICIndices())
[0.184124,-0.00585434,0.0339537]

Methods

drawHSICIndices()

Draw the HSIC indices.

drawPValuesAsymptotic()

Draw the p-values obtained with an asymptotic formula.

drawPValuesPermutation()

Draw the p-values obtained by permutation.

drawR2HSICIndices()

Draw the R2-HSIC indices.

getClassName()

Accessor to the object's name.

getCovarianceModelCollection()

Get the list of all covariance models used.

getDimension()

Get the dimension of the input sample.

getEstimator()

Get the estimator used for computations.

getFilterFunction()

Get the filter function used.

getHSICIndices()

Get the HSIC indices.

getId()

Accessor to the object's id.

getInputSample()

Get the input sample.

getName()

Accessor to the object's name.

getOutputSample()

Get the output sample.

getPValuesAsymptotic()

Get the p-values estimated with an asymptotic formula.

getPValuesPermutation()

Get the p-value estimated through permutations.

getPermutationSize()

Get the number of permutations.

getR2HSICIndices()

Get the R2-HSIC indices.

getShadowedId()

Accessor to the object's shadowed id.

getSize()

Get the size of the input sample.

getVisibility()

Accessor to the object's visibility state.

hasName()

Test if the object is named.

hasVisibleName()

Test if the object has a distinguishable name.

run()

Compute all values at once.

setCovarianceModelCollection(coll)

Set the covariance models.

setFilterFunction(filterFunction)

Set the filter function.

setInputSample(inputSample)

Set the input sample.

setName(name)

Accessor to the object's name.

setOutputSample(outputSample)

Set the output sample.

setPermutationSize(B)

Set the number of permutations to be used for p-value estimate.

setShadowedId(id)

Accessor to the object's shadowed id.

setVisibility(visible)

Accessor to the object's visibility state.

__init__(*args)
drawHSICIndices()

Draw the HSIC indices.

Returns
graphGraph

The graph of all HSIC indices according to components.

drawPValuesAsymptotic()

Draw the p-values obtained with an asymptotic formula.

Returns
graphGraph

The graph of all p-values obtained with an asymptotic formula.

drawPValuesPermutation()

Draw the p-values obtained by permutation.

Returns
graphGraph

The graph of all p-values by permutation according to components.

drawR2HSICIndices()

Draw the R2-HSIC indices.

Returns
graphGraph

The graph of all R2-HSIC indices according to components.

getClassName()

Accessor to the object’s name.

Returns
class_namestr

The object class name (object.__class__.__name__).

getCovarianceModelCollection()

Get the list of all covariance models used.

Returns
collCovarianceModelCollection

The list of all covariance models used. The last one is the output covariance model.

getDimension()

Get the dimension of the input sample.

Returns
dimint

The dimension of the input sample.

getEstimator()

Get the estimator used for computations.

Returns
estimatorHSICStat

The estimator used for internal computations.

getFilterFunction()

Get the filter function used.

Returns
filterFunctionFunction

The filter function used for the target estimator.

getHSICIndices()

Get the HSIC indices.

Returns
hsicIndicesPoint

The HSIC indices of all components.

getId()

Accessor to the object’s id.

Returns
idint

Internal unique identifier.

getInputSample()

Get the input sample.

Returns
inSampleSample

The input sample used for analysis.

getName()

Accessor to the object’s name.

Returns
namestr

The name of the object.

getOutputSample()

Get the output sample.

Returns
outSampleSample

The output sample used for analysis.

getPValuesAsymptotic()

Get the p-values estimated with an asymptotic formula.

Returns
pvalPoint

The p-values obtained with an asymptotic formula.

getPValuesPermutation()

Get the p-value estimated through permutations.

Returns
pvalPoint

The p-values of all components estimated with permutations of the data.

getPermutationSize()

Get the number of permutations.

Returns
permutationSizeint

The number of permutations.

getR2HSICIndices()

Get the R2-HSIC indices.

Returns
r2hsicIndicesPoint

The R2-HSIC indices of all components.

getShadowedId()

Accessor to the object’s shadowed id.

Returns
idint

Internal unique identifier.

getSize()

Get the size of the input sample.

Returns
sizeint

The size of the input sample.

getVisibility()

Accessor to the object’s visibility state.

Returns
visiblebool

Visibility flag.

hasName()

Test if the object is named.

Returns
hasNamebool

True if the name is not empty.

hasVisibleName()

Test if the object has a distinguishable name.

Returns
hasVisibleNamebool

True if the name is not empty and not the default one.

run()

Compute all values at once.

setCovarianceModelCollection(coll)

Set the covariance models.

Parameters
collCovarianceModelCollection

The list of all covariance models.

setFilterFunction(filterFunction)

Set the filter function.

Parameters
filterFunctionFunction

The filter function used for the target estimator.

setInputSample(inputSample)

Set the input sample.

Parameters
inputSample2-d sequence of float

The input sample to be used.

setName(name)

Accessor to the object’s name.

Parameters
namestr

The name of the object.

setOutputSample(outputSample)

Set the output sample.

Parameters
outputSample2-d sequence of float

The output sample to be used.

setPermutationSize(B)

Set the number of permutations to be used for p-value estimate.

Parameters
Bint

The number of permutation used for p-value estimates.

setShadowedId(id)

Accessor to the object’s shadowed id.

Parameters
idint

Internal unique identifier.

setVisibility(visible)

Accessor to the object’s visibility state.

Parameters
visiblebool

Visibility flag.