shamo.core.surrogate.masked_scalar.SurrMaskedScalar¶
-
class
shamo.core.surrogate.masked_scalar.
SurrMaskedScalar
(name, parent_path, **kwargs)[source]¶ Bases:
shamo.core.surrogate.scalar.SurrScalar
Generate a Gaussian process from a set of scalar training data.
- Parameters
- name
str
The name of the generated surrogate model.
- parent_path
str
,byte
oros.PathLike
The path to the parent directory of the surrogate model.
- name
- Other Parameters
- params
list
[tuple
[str
,shamo.DistABC
]] A list of tuples containing the names of the parameters and the corresponding distributions as values.
- sol_json_path
str
The path to the parametric solution the surrogate is built of.
- is_sobol_availablebool
If
True
, Sobol indices are already available.- suffix
str
The suffix appended to the queried files.
- params
See also
shamo.core.surrogate.SurrScalar
Methods
Generate a Gaussian process from a set of training data.
Create a new dictionary with keys from iterable and values set to value.
Compute Sobol sensitivity indices.
Return the value for key if key is in the dictionary, else default.
Load the Gaussian process.
Return the relative path from the object to a file or directory.
Return the precomputed Sobol indices.
Load an object from a JSON file.
If key is not found, d is returned if given, otherwise KeyError is raised
Remove and return a (key, value) pair as a 2-tuple.
Evaluate the Gaussian process on new points.
Save the object to a JSON file.
Insert key with a value of default if key is not in the dictionary.
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]
Attributes
Return the path of the Gaussian process file.
Return whether the Sobol indices are already computed.
Return the path to the object JSON file.
Return the name of the object.
Return the parameters of the surrogate model.
Return the path to the parent directory of the object.
Return the path to the object directory.
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
- name
str
The name of the generated surrogate model.
- parent_path
str
,byte
oros.PathLike
The path to the parent directory of the surrogate model.
- sol
shamo.core.solutions.parametric.SolParamABC
The parametric solution to generate a surrogate model for.
- name
- Returns
shamo.Surrogate
The generated surrogate model.
- Other Parameters
- kernel
sklearn.gaussian_process.kernels.Kernel
The kernel used to generate the Gaussian process.
- n_restarts_optimizer
int
The number of restarts for the optimisation step.
- random_state
int
The seed for the random state.
- alpha
float
The added diagonal to account for noise on training points.
- n_proc
int
The number of jobs to run in parallel.
None
means 1 job runs at a time and-1
means all cores are used.- metric
func
The metric to compute.
- suffix
str
The suffix to append to the file query.
- kernel
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
- Returns
-
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
- path
str
,byte
oros.PathLike
The path to the file or directory to compute the relative path for.
- path
- Returns
pathlib.Path
The relative path to the file or directory.
-
get_sobol
()¶ Return the precomputed Sobol indices.
-
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_path
str
,byte
oros.PathLike
The path to the JSON file containing the object data.
- json_path
- Raises
TypeError
If argument json_path is not a str, byte or os.PathLike.
-
property
params
¶ Return the parameters of the surrogate model.
-
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
- x
numpy.ndarray
The coordinates of the evaluation points in the parameter space. Each row represents an evaluation.
- x
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 isTrue
.
- exist_okbool,
- 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¶