twodlearn.bayesnet.bayesnet module¶
Definition of several bayesian neural-networks
-
class
twodlearn.bayesnet.bayesnet.
AffineBernoulliLayer
(units, *args, **kargs)[source]¶ Bases:
twodlearn.feedforward.AffineLayer
Implements the layer y=dropout(x) W + b
-
class
twodlearn.bayesnet.bayesnet.
BayesianMlp
(n_inputs, n_outputs, n_hidden, afunction=<function selu01>, options=None, name='BayesianMlp')[source]¶ Bases:
twodlearn.feedforward.StackedModel
Mlp composed of layers whose weights are sampled from a variational posterior distribution
-
class
twodlearn.bayesnet.bayesnet.
BernoulliBayesianMlp
(n_inputs, n_outputs, n_hidden, keep_prob=0.8, options=None, afunction=<function relu>, name='BernoulliBayesianMlp')[source]¶
-
class
twodlearn.bayesnet.bayesnet.
BoundedBayesianMlp
(n_inputs, n_outputs, n_hidden, lower=1e-07, upper=None, afunction=<function selu01>, options=None, name='BayesianMlp')[source]¶ Bases:
twodlearn.bayesnet.bayesnet.BayesianMlp
Multi-layer bayesian neural network, with bounded output
-
class
twodlearn.bayesnet.bayesnet.
BoundedBernoulliBayesianMlp
(n_inputs, n_outputs, n_hidden, keep_prob, lower=1e-07, upper=None, afunction=<function selu01>, options=None, name='BayesianMlp')[source]¶ Bases:
twodlearn.bayesnet.bayesnet.BernoulliBayesianMlp
Multi-layer bayesian neural network, with bounded output
-
class
twodlearn.bayesnet.bayesnet.
ConditionalNormal
(loc=None, scale=None, shape=None, name='ConditionalNormal')[source]¶
-
class
twodlearn.bayesnet.bayesnet.
DenseBernoulliLayer
(activation=<function relu>, name=None, **kargs)[source]¶
-
class
twodlearn.bayesnet.bayesnet.
DenseNormalLayer
(activation=<function relu>, name=None, **kargs)[source]¶
-
class
twodlearn.bayesnet.bayesnet.
GaussianKL
(p, q, name='GaussianKL')[source]¶ Bases:
twodlearn.losses.Loss
Evaluate KL(p||q) for p and q Normal
-
class
twodlearn.bayesnet.bayesnet.
GaussianNegLogLikelihood
(y, labels=None, name='NegLogLikelihood')[source]¶
-
class
twodlearn.bayesnet.bayesnet.
HeteroscedasticNormalMlp
(loc_args, scale_args, LocClass=<class 'twodlearn.bayesnet.bayesnet.BayesianMlp'>, ScaleClass=<class 'twodlearn.bayesnet.bayesnet.BoundedBayesianMlp'>, options=None, name='HeteroscedasticGaussianMlp')[source]¶ Bases:
twodlearn.bayesnet.bayesnet.NormalMlp
Defines a conditional gaussian N(loc=BayesianMlp(x), scale=BoundedOutputBayesianMlp(x))
-
class
twodlearn.bayesnet.bayesnet.
LinearNormalLayer
(units, *args, **kargs)[source]¶ Bases:
twodlearn.feedforward.LinearLayer
Tdl autoinitialization with arguments:
-
kernel
[source]¶ (
ParameterInit
) Autoinit with arguments [‘initializer’, ‘trainable’, ‘max_scale’]
-
regularizer
[source]¶ (
Regularizer
) Decorator used to specify a regularizer for a model. The decorator works similar to @property, but the specified method correponds to the initialization of the regularizer.
-
units
[source]¶ (
InputArgument
) Number of output units (int).
-
call
(inputs, *args, **kargs)[source]¶ This is where the layer’s logic lives.
- Parameters
inputs – Input tensor, or list/tuple of input tensors.
**kwargs – Additional keyword arguments.
- Returns
A tensor or list/tuple of tensors.
-
kernel
[source] Autoinit with arguments [‘initializer’, ‘trainable’, ‘max_scale’]
-
regularizer
[source] Decorator used to specify a regularizer for a model. The decorator works similar to @property, but the specified method correponds to the initialization of the regularizer.
-
tolerance
[source]
-
-
class
twodlearn.bayesnet.bayesnet.
McNormal
(loc, scale, samples=None, name='McNormal', **kargs)[source]¶
-
class
twodlearn.bayesnet.bayesnet.
McNormalEstimate
(trainable=True, name=None, *args, **kwargs)[source]¶ Bases:
twodlearn.core.layers.Layer
-
class
twodlearn.bayesnet.bayesnet.
Normal
(loc=None, scale=None, shape=None, name='Normal', **kargs)[source]¶
-
class
twodlearn.bayesnet.bayesnet.
NormalMlp
(loc_args, scale_args={}, LocClass=<class 'twodlearn.bayesnet.bayesnet.BayesianMlp'>, ScaleClass=None, options=None, name='GaussianMlp')[source]¶ Bases:
twodlearn.bayesnet.bayesnet.ConditionalNormal
-
class
McNormalOutput
(model, n_particles, inputs, name=None)[source]¶ Bases:
twodlearn.bayesnet.bayesnet.NormalOutput
-
class
-
class
twodlearn.bayesnet.bayesnet.
NormalModel
(trainable=True, name=None, *args, **kwargs)[source]¶ Bases:
twodlearn.core.layers.Layer
Tdl autoinitialization with arguments:
-
scale
[source]¶ (
SubmodelInit
) Autoinit with arguments [‘initializer’, ‘trainable’, ‘tolerance’]
-
input_shape
[source]¶ (
InputArgument
) Input tensor shape.
-
loc
[source]¶ (
SubmodelInit
) Autoinit with arguments [‘initializer’, ‘trainable’]
-
batch_shape
[source]
-
build
(input_shape=None)[source]¶ Creates the variables of the layer (optional, for subclass implementers).
This is a method that implementers of subclasses of Layer or Model can override if they need a state-creation step in-between layer instantiation and layer call.
This is typically used to create the weights of Layer subclasses.
- Parameters
input_shape – Instance of TensorShape, or list of instances of TensorShape if the layer expects a list of inputs (one instance per input).
-
call
(inputs, *args, **kargs)[source]¶ This is where the layer’s logic lives.
- Parameters
inputs – Input tensor, or list/tuple of input tensors.
**kwargs – Additional keyword arguments.
- Returns
A tensor or list/tuple of tensors.
-
input_shape
[source] Input tensor shape.
-
loc
[source] Autoinit with arguments [‘initializer’, ‘trainable’]
-
scale
[source] Autoinit with arguments [‘initializer’, ‘trainable’, ‘tolerance’]
-
-
class
twodlearn.bayesnet.bayesnet.
Particles
(n_particles, base=None, shape=None, name='Particles', **kargs)[source]¶
-
class
twodlearn.bayesnet.bayesnet.
ParticlesLayer
(trainable=True, name=None, *args, **kwargs)[source]¶ Bases:
twodlearn.core.layers.Layer
Tdl autoinitialization with arguments:
-
particles
[source]¶ (
InputArgument
) Number of particles.
-
input_shape
[source]¶ (
InputArgument
) Input tensor shape.
-
call
(inputs)[source]¶ This is where the layer’s logic lives.
- Parameters
inputs – Input tensor, or list/tuple of input tensors.
**kwargs – Additional keyword arguments.
- Returns
A tensor or list/tuple of tensors.
-
compute_output_shape
(input_shape=None)[source]¶ Computes the output shape of the layer.
Assumes that the layer will be built to match that input shape provided.
- Parameters
input_shape – Shape tuple (tuple of integers) or list of shape tuples (one per output tensor of the layer). Shape tuples can include None for free dimensions, instead of an integer.
- Returns
An input shape tuple.
-
input_shape
[source] Input tensor shape.
-
particles
[source] Number of particles.
-
-
class
twodlearn.bayesnet.bayesnet.
SampleLayer
(trainable=True, name=None, *args, **kwargs)[source]¶ Bases:
twodlearn.core.layers.Layer
Tdl autoinitialization with arguments:
-
call
(inputs, *args, **kargs)[source]¶ This is where the layer’s logic lives.
- Parameters
inputs – Input tensor, or list/tuple of input tensors.
**kwargs – Additional keyword arguments.
- Returns
A tensor or list/tuple of tensors.
-
distribution
[source]
-
input_shape
[source]
-
sample_shape
[source]
-