tfb_sinh_arcsinh: Computes'Y = g(X) = Sinh( (Arcsinh(X) + skewness) *...

View source: R/bijectors.R

tfb_sinh_arcsinhR Documentation

ComputesY = g(X) = Sinh( (Arcsinh(X) + skewness) * tailweight )

Description

For skewness in (-inf, inf) and tailweight in (0, inf), this transformation is a diffeomorphism of the real line (-inf, inf). The inverse transform is X = g^{-1}(Y) = Sinh( ArcSinh(Y) / tailweight - skewness ). The SinhArcsinh transformation of the Normal is described in Sinh-arcsinh distributions

Usage

tfb_sinh_arcsinh(
  skewness = NULL,
  tailweight = NULL,
  validate_args = FALSE,
  name = "SinhArcsinh"
)

Arguments

skewness

Skewness parameter. Float-type Tensor. Default is 0 of type float32.

tailweight

Tailweight parameter. Positive Tensor of same dtype as skewness and broadcastable shape. Default is 1 of type float32.

validate_args

Logical, default FALSE. Whether to validate input with asserts. If validate_args is FALSE, and the inputs are invalid, correct behavior is not guaranteed.

name

name prefixed to Ops created by this class.

Details

This Bijector allows a similar transformation of any distribution supported on (-inf, inf).

Value

a bijector instance.

Meaning of the parameters

  • If skewness = 0 and tailweight = 1, this transform is the identity.

  • Positive (negative) skewness leads to positive (negative) skew.

  • positive skew means, for unimodal X centered at zero, the mode of Y is "tilted" to the right.

  • positive skew means positive values of Y become more likely, and negative values become less likely.

  • Larger (smaller) tailweight leads to fatter (thinner) tails.

  • Fatter tails mean larger values of |Y| become more likely.

  • If X is a unit Normal, tailweight < 1 leads to a distribution that is "flat" around Y = 0, and a very steep drop-off in the tails.

  • If X is a unit Normal, tailweight > 1 leads to a distribution more peaked at the mode with heavier tails. To see the argument about the tails, note that for |X| >> 1 and |X| >> (|skewness| * tailweight)tailweight, we have Y approx 0.5 Xtailweight e**(sign(X) skewness * tailweight).

See Also

For usage examples see tfb_forward(), tfb_inverse(), tfb_inverse_log_det_jacobian().

Other bijectors: tfb_absolute_value(), tfb_affine_linear_operator(), tfb_affine_scalar(), tfb_affine(), tfb_ascending(), tfb_batch_normalization(), tfb_blockwise(), tfb_chain(), tfb_cholesky_outer_product(), tfb_cholesky_to_inv_cholesky(), tfb_correlation_cholesky(), tfb_cumsum(), tfb_discrete_cosine_transform(), tfb_expm1(), tfb_exp(), tfb_ffjord(), tfb_fill_scale_tri_l(), tfb_fill_triangular(), tfb_glow(), tfb_gompertz_cdf(), tfb_gumbel_cdf(), tfb_gumbel(), tfb_identity(), tfb_inline(), tfb_invert(), tfb_iterated_sigmoid_centered(), tfb_kumaraswamy_cdf(), tfb_kumaraswamy(), tfb_lambert_w_tail(), tfb_masked_autoregressive_default_template(), tfb_masked_autoregressive_flow(), tfb_masked_dense(), tfb_matrix_inverse_tri_l(), tfb_matvec_lu(), tfb_normal_cdf(), tfb_ordered(), tfb_pad(), tfb_permute(), tfb_power_transform(), tfb_rational_quadratic_spline(), tfb_rayleigh_cdf(), tfb_real_nvp_default_template(), tfb_real_nvp(), tfb_reciprocal(), tfb_reshape(), tfb_scale_matvec_diag(), tfb_scale_matvec_linear_operator(), tfb_scale_matvec_lu(), tfb_scale_matvec_tri_l(), tfb_scale_tri_l(), tfb_scale(), tfb_shifted_gompertz_cdf(), tfb_shift(), tfb_sigmoid(), tfb_sinh(), tfb_softmax_centered(), tfb_softplus(), tfb_softsign(), tfb_split(), tfb_square(), tfb_tanh(), tfb_transform_diagonal(), tfb_transpose(), tfb_weibull_cdf(), tfb_weibull()


rstudio/tfprobability documentation built on Sept. 11, 2022, 4:32 a.m.