ddl.base.BaseDensityDestructor

class ddl.base.BaseDensityDestructor[source]

Bases: sklearn.base.BaseEstimator, ddl.base.DestructorMixin

Abstract destructor derived from an explicit underlying density.

This should be used if the destructor is based on an explicit underlying density such as a TreeDestructor or IndepedentDestructor.

The only methods that need to be implemented in this case are get_density_estimator, transform and inverse_transform.

Attributes:
density_ : estimator

Fitted underlying density.

Methods

fit(self, X[, y, density_fit_params]) [Placeholder].
fit_from_density(self, density) [Placeholder].
fit_transform(self, X[, y]) Fit to data, then transform it.
get_domain(self) Get the domain of this destructor.
get_params(self[, deep]) Get parameters for this estimator.
inverse_transform(self, X[, y]) [Placeholder].
sample(self[, n_samples, random_state]) Generate random samples from this density/destructor.
score(self, X[, y]) Return the mean log likelihood (or log(det(Jacobian))).
score_samples(self, X[, y]) Compute log-likelihood (or log(det(Jacobian))) for each sample.
set_params(self, \*\*params) Set the parameters of this estimator.
transform(self, X[, y]) [Placeholder].
__init__(self, /, *args, **kwargs)

Initialize self. See help(type(self)) for accurate signature.

fit(self, X, y=None, density_fit_params=None)[source]

[Placeholder].

Parameters:
X :
y :
density_fit_params :
Returns:
obj : object
fit_from_density(self, density)[source]

[Placeholder].

Parameters:
density :
Returns:
obj : object
fit_transform(self, X, y=None, **fit_params)

Fit to data, then transform it.

Fits transformer to X and y with optional parameters fit_params and returns a transformed version of X.

Parameters:
X : numpy array of shape [n_samples, n_features]

Training set.

y : numpy array of shape [n_samples]

Target values.

Returns:
X_new : numpy array of shape [n_samples, n_features_new]

Transformed array.

get_domain(self)[source]

Get the domain of this destructor.

Returns:
domain : array-like, shape (2,) or shape (n_features, 2)

If shape is (2, ), then domain[0] is the minimum and domain[1] is the maximum for all features. If shape is (n_features, 2), then each feature’s domain (which could be different for each feature) is given similar to the first case.

get_params(self, deep=True)

Get parameters for this estimator.

Parameters:
deep : boolean, optional

If True, will return the parameters for this estimator and contained subobjects that are estimators.

Returns:
params : mapping of string to any

Parameter names mapped to their values.

inverse_transform(self, X, y=None)[source]

[Placeholder].

Parameters:
X :
y :
sample(self, n_samples=1, random_state=None)

Generate random samples from this density/destructor.

Parameters:
n_samples : int, default=1

Number of samples to generate. Defaults to 1.

random_state : int, RandomState instance or None, optional (default=None)

If int, random_state is the seed used by the random number generator; If RandomState instance, random_state is the random number generator; If None, the random number generator is the RandomState instance used by numpy.random.

Returns:
X : array, shape (n_samples, n_features)

Randomly generated sample.

score(self, X, y=None)

Return the mean log likelihood (or log(det(Jacobian))).

Parameters:
X : array-like, shape (n_samples, n_features)

New data, where n_samples is the number of samples and n_features is the number of features.

y : None, default=None

Not used but kept for compatibility.

Returns:
log_likelihood : float

Mean log likelihood data points in X.

score_samples(self, X, y=None)[source]

Compute log-likelihood (or log(det(Jacobian))) for each sample.

Parameters:
X : array-like, shape (n_samples, n_features)

New data, where n_samples is the number of samples and n_features is the number of features.

y : None, default=None

Not used but kept for compatibility.

Returns:
log_likelihood : array, shape (n_samples,)

Log likelihood of each data point in X.

set_params(self, **params)

Set the parameters of this estimator.

The method works on simple estimators as well as on nested objects (such as pipelines). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.

Returns:
self
transform(self, X, y=None)[source]

[Placeholder].

Parameters:
X :
y :