tfp.experimental.stats.RunningCentralMoments

Computes running central moments.

Inherits From: AutoCompositeTensor

RunningCentralMoments will compute arbitrary central moments in streaming fashion following the formula proposed by Philippe Pebay (2008) [1]. For reference, the formula we refer to is the incremental version of arbitrary moments (equation 2.9). Since the algorithm computes moments as a function of lower ones, even if not requested, all lower moments will be computed as well. The moments that are actually returned is specified by the moment parameter at initialization. Note, while any arbitrarily high central moment is theoretically supported, RunningCentralMoments cannot guarantee numerical stability for all moments.

References

[1]: Philippe Pebay. Formulas for Robust, One-Pass Parallel Computation of Covariances and Arbitrary-Order Statistical Moments. Technical Report SAND2008-6212, 2008. https://prod-ng.sandia.gov/techlib-noauth/access-control.cgi/2008/086212.pdf

mean_state A RunningMean carrying the running mean estimate.
exponentiated_residuals A Tensor representing the sum of exponentiated residuals. This is a Tensor of shape [max_moment - 1] + mean_state.mean.shape, which contains the sum of the residuals raised to the kth power, for all 2 <= k <= max_moment.
desired_moments A Python list of integers giving the moments to return. The maximum element of this list gives the number of moments that will be computed.

Methods

from_example

View source

Initialize an empty RunningCentralMoments.

Args
example A Tensor. The RunningCentralMoments will accept samples of the same dtype and broadcast-compatible shape as the example.
moment Integer or iterable of integers that represent the desired moments to return.

Returns
state RunningCentralMoments representing a stream of no inputs. Note that by convention, the supplied example is used only for initialization, but not counted as a sample.

from_shape

View source

Returns an empty RunningCentralMoments.

Args
shape Python Tuple or TensorShape representing the shape of incoming samples.
moment Integer or iterable of integers that represent the desired moments to return.
dtype Dtype of incoming samples and the resulting statistics. By default, the dtype is tf.float32. Any integer dtypes will be cast to corresponding floats (i.e. tf.int32 will be cast to tf.float32), as intermediate calculations should be performing floating-point division.

Returns
state RunningCentralMoments representing a stream of no inputs.

moments

View source

Returns the central moments represented by this RunningCentralMoments.

Returns
all_moments A Tensor representing estimates of the requested central moments. Its leading dimension indexes the moment, in order of those requested (i.e. in order of self.desired_moments).

tree_flatten

View source

tree_unflatten

View source

update

View source

Update with a new sample.

Args
new_sample Incoming Tensor sample with shape and dtype compatible with those used to form the RunningCentralMoments.

Returns
state RunningCentralMoments updated to include the new sample.