gaussianizationfactory

gaussianizationfactory

Construct a Gaussianization distribution structure

Syntax

D = gaussianization(LayerD, num)
D = gaussianization(LayerD)

Description

D = gaussianization(LayerD, num) returns a structure representing a gaussianization distribution. LayerD is a distribution structure defining gaussianization layer distribution type, and num is the number gaussianization layers

D = gaussianization(LayerD) where LayerD is a cell array of distribution structures defined on the same data space, constructs a heterogeneous gaussianization distribution D where each layer may be of a different distribution type.

Distribution Parameters

  • D (num-by-1 cell array of distribution parameter structures) : Contains the parameters for each layer.

Probability Density Function

The distribution is defined to be whitened Gaussian distribution in the transformed domain. The transformation is given by :

$$ y= G^{-1}(F_{num}(...G^{-1}(F_2(G^{-1}(F_1(x))))))) $$

where $num$ is the number oflayers, $F_k$ represents the CDF of kth layer $G^{-1}$ is the inverse CDF of Gaussian. Note that $G^{-1}(F_k(.))$ is computer together as Gaussianization for each layer

Example

% Construct a Gaussianization distribution of two layers
D =
% Build a parameter structure for it:
theta{1} =
theta{2} =
% Plot the PDF:
x = 0:0.1:10;
y = 0:0.1:10;
surf

For more detailes look at the following paper: Chen, S. S., & Gopinath, R. A. (2000). Gaussianization.

name

See distribution structure common members.

M

See distribution structure common members.

num

Number of layers

Syntax

num = D.num()

Description

num = D.num() returns the number of layers in the Gaussianization distribution D.

Note: You need to include the parentheses () for this to work.

layer

layer distributions

Syntax

D_k = D.layer(idx)

Description

D_k = D.layer(idx) where idx is the index of a layer, gives the layer distribution structure at idx.

D_k = D.layer(idx) where idx is an index vector with more than one element, returns a cell array of the distribution structures indexed in idx.

addlayer

Add a Gaussianization layer (to the variable layers)

Syntax

newD = D.addlayer(CmptD)
[newD, newtheta] = D.addlayer(CmptD, theta, CmptTheta)

Description

newD = D.addlayer(CmptD) returns newD, a Gaussianization distribution with the same layers as D plus the new variable layer distribution CmptD.

[newD, newtheta] = D.addlayer(CmptD, theta, CmptTheta) also returns newtheta, the parameters for newD, given theta, the parameters for D, and CmptTheta, the parameters for CmptD.

removelayer

Remove a layer

Syntax

newD = D.removelayer(idx)
[newD, newtheta] = D.removelayer(idx, theta)

Description

newD = D.removelayer(idx) returns newD, a Gaussianization distribution the same as D where the layer at index idx is removed from its layers.

[newD, newtheta] = D.removelayer(idx, theta) also returns newtheta, the parameters for newD, given theta, the parameters for D.

dim

See distribution structure common members.

datadim

See distribution structure common members.

ll

See distribution structure common members.

llvec

See distribution structure common members.

llgrad

See distribution structure common members.

llgraddata

See distribution structure common members.

cdf

See distribution structure common members.

pdf

See distribution structure common members.

sample

See distribution structure common members.

randparam

See distribution structure common members.

init

See distribution structure common members.

estimatedefault

Default estimation function for Gaussianization distribution. This function implements the expectation maximization (EM) method.

Syntax

theta = D.estimatedefault(data)
theta = D.estimatedefault(data, options)
[theta, D] = D.estimatedefault(...)
[theta, D, info] = D.estimatedefault(...)
[theta, D, info, options] = D.estimatedefault(...)

Description

theta = D.estimatedefault(data) returns estimated parameters for the distribution D, using data.

theta = D.estimatedefault(data, options) utilizes applicable options from the options structure in the estimation procedure.

[theta, D] = D.estimatedefault(...) also returns D, the distribution structure for which theta is applicable. (This is the same as the distribution structure D from which you called estimate, and so it should not normally be used. The purpose of including it in the output is to maintain compatibility with other estimation functions).

[theta, D, info] = D.estimatedefault(...) also returns info, a structure array containing information about successive iterations performed by iterative estimation functions.

[theta, D, info, options] = D.estimatedefault(...) also returns the effective options used, so you can see what default values the function used on top of the options you possibly specified.

For information about the output theta, see Distribution Parameters Structure. The input argument data is described in Data Input Argument to Functions. You may also want to read about options or info arguments.

Available Options

This function supports the following options from the options described in estimation options.

  • theta0
  • verbosity
  • plotCost
  • crossVal
  • minIter
  • maxIter
  • maxTime
  • tolCost
  • tolCostDiff
  • statsfun
  • stopfun

Returned info fields

This function puts the following fields in the returned info structure array. You can read more about them in our documentation on estimation statistics structure.

  • iter
  • cost
  • time
  • cvCost

penalizerparam

See distribution structure common members.

Penalizer Info

The default penalizer for the Gaussianization distribution is the sum of the default penalizers of its layers.

penalizercost

See distribution structure common members.

penalizergrad

See distribution structure common members.

sumparam

See distribution structure common members.

scaleparam

See distribution structure common members.

sumgrad

See distribution structure common members.

scalegrad

See distribution structure common members.

entropy

See distribution structure common members.

kl

See distribution structure common members.

AICc

See distribution structure common members.

BIC

See distribution structure common members.

display

See distribution structure common members.

visualize