shamo.hd_tdcs.simulation.parametric.surrogate.SurrMaskedScalarNiiMagJ

class shamo.hd_tdcs.simulation.parametric.surrogate.SurrMaskedScalarNiiMagJ(name, parent_path, **kwargs)[source]

Bases: shamo.core.surrogate.masked_scalar.SurrMaskedScalarNii

Methods

clear

copy

fit

Generate a Gaussian process from a set of training data.

fromkeys

Create a new dictionary with keys from iterable and values set to value.

gen_sobol

Compute Sobol sensitivity indices.

get

Return the value for key if key is in the dictionary, else default.

get_gp

Load the Gaussian process.

get_relative_path

Return the relative path from the object to a file or directory.

get_sobol

Return the precomputed Sobol indices.

items

keys

load

Load an object from a JSON file.

pop

If key is not found, d is returned if given, otherwise KeyError is raised

popitem

Remove and return a (key, value) pair as a 2-tuple.

predict

Evaluate the Gaussian process on new points.

save

Save the object to a JSON file.

setdefault

Insert key with a value of default if key is not in the dictionary.

update

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values

Attributes

gp_path

Return the path of the Gaussian process file.

is_sobol_available

Return whether the Sobol indices are already computed.

json_path

Return the path to the object JSON file.

name

Return the name of the object.

params

Return the parameters of the surrogate model.

parent_path

Return the path to the parent directory of the object.

path

Return the path to the object directory.

sobol_path

Return the path to the file storing the Sobol indices.

sol_json_path

clear() → None. Remove all items from D.
copy() → a shallow copy of D
classmethod fit(name, parent_path, sol, **kwargs)[source]

Generate a Gaussian process from a set of training data.

Parameters
namestr

The name of the generated surrogate model.

parent_pathstr, byte or os.PathLike

The path to the parent directory of the surrogate model.

solshamo.core.solutions.parametric.SolParamABC

The parametric solution to generate a surrogate model for.

Returns
shamo.Surrogate

The generated surrogate model.

Other Parameters
kernelsklearn.gaussian_process.kernels.Kernel

The kernel used to generate the Gaussian process.

n_restarts_optimizerint

The number of restarts for the optimisation step.

random_stateint

The seed for the random state.

alphafloat

The added diagonal to account for noise on training points.

n_procint

The number of jobs to run in parallel. None means 1 job runs at a time and -1 means all cores are used.

metricfunc

The metric to compute.

suffixstr

The suffix to append to the file query.

masknibabel.Nifti1Image

A NIFTI image to use as a mask.

See also

sklearn.gaussian_process.GaussianProcessRegressor
fromkeys(iterable, value=None, /)

Create a new dictionary with keys from iterable and values set to value.

gen_sobol(n=1000, n_resamples=100, conf_level=0.95)

Compute Sobol sensitivity indices.

Parameters
nint, optional

The number of sample to predict with the Gaussian process. The default is 1000.

n_resamplesint, optional

The number of resamples. The default is 100.

conf_levelfloat, optional

The confidence interval level. The default is 0.95.

Returns
dict [str, list [str]|dict [str, float]]

A dictionary containing the names of the parameters, the values of the first, second and total order Sobol indices and the corresponding confidence with respect to the conf_level.

get(key, default=None, /)

Return the value for key if key is in the dictionary, else default.

get_gp()

Load the Gaussian process.

Returns
sklearn.gaussian_process.GaussianProcessRegressor

The Gaussian process.

get_relative_path(path)

Return the relative path from the object to a file or directory.

Parameters
pathstr, byte or os.PathLike

The path to the file or directory to compute the relative path for.

Returns
pathlib.Path

The relative path to the file or directory.

get_sobol()

Return the precomputed Sobol indices.

Returns
dict [str, list [str]|dict [str, float]]|None

A dictionary containing the names of the parameters, the values of the first, second and total order Sobol indices and the corresponding confidence with respect to the conf_level. If the file does not exist, returns None.

property gp_path

Return the path of the Gaussian process file.

Returns
pathlib.Path

The path of the Gaussian process file.

property is_sobol_available

Return whether the Sobol indices are already computed.

Returns
bool

Return True if the indices are already computed, False otherwise.

items() → a set-like object providing a view on D’s items
property json_path

Return the path to the object JSON file.

Returns
pathlib.Path

The path to the object JSON file.

keys() → a set-like object providing a view on D’s keys
classmethod load(json_path)

Load an object from a JSON file.

Parameters
json_pathstr, byte or os.PathLike

The path to the JSON file containing the object data.

Raises
TypeError

If argument json_path is not a str, byte or os.PathLike.

property name

Return the name of the object.

Returns
str

The name of the object.

property params

Return the parameters of the surrogate model.

Returns
list [tuple [str, shamo.DistABC]]

A list of tuples containing the names of the parameters and the corresponding distributions as values.

property parent_path

Return the path to the parent directory of the object.

Returns
pathlib.Path

The path to the parent directory of the object.

property path

Return the path to the object directory.

Returns
pathlib.Path

The path to the object directory.

pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

popitem(/)

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

predict(x, **kwargs)

Evaluate the Gaussian process on new points.

Parameters
xnumpy.ndarray

The coordinates of the evaluation points in the parameter space. Each row represents an evaluation.

Notes

To change the behaviour of this method, one should subclass Surrogate and change the _post_pro method.

save(exist_ok=True)

Save the object to a JSON file.

Parameters
exist_okbool, optional

If set to True, any already existing object is overriden. Otherwise, if the object already exists, a FileExistsError. The default is True.

Raises
FileExistsError

If exist_ok is set to False and the object already exists.

TypeError

If any of the keys/values to be stored is not a str, int, float, bool or None.

setdefault(key, default=None, /)

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

property sobol_path

Return the path to the file storing the Sobol indices.

Returns
pathlib.Path

The path to the file storing the Sobol indices.

update([E, ]**F) → None. Update D from dict/iterable E and F.

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() → an object providing a view on D’s values