This distribution is parameterized by probs, a (batch of) probabilities for drawing a 1 and total_count, the number of trials per draw from the Binomial.

tfd_binomial(total_count, logits = NULL, probs = NULL,
  validate_args = FALSE, allow_nan_stats = TRUE, name = "Beta")



Non-negative floating point tensor with shape broadcastable to [N1,..., Nm] with m >= 0 and the same dtype as probs or logits. Defines this as a batch of N1 x ... x Nm different Binomial distributions. Its components should be equal to integer values.


Floating point tensor representing the log-odds of a positive event with shape broadcastable to [N1,..., Nm] m >= 0, and the same dtype as total_count. Each entry represents logits for the probability of success for independent Binomial distributions. Only one of logits or probs should be passed in.


Positive floating point tensor with shape broadcastable to [N1,..., Nm] m >= 0, probs in [0, 1]. Each entry represents the probability of success for independent Binomial distributions. Only one of logits or probs should be passed in.


Logical, default FALSE. When TRUE distribution parameters are checked for validity despite possibly degrading runtime performance. When FALSE invalid inputs may silently render incorrect outputs. Default value: FALSE.


Logical, default TRUE. When TRUE, statistics (e.g., mean, mode, variance) use the value NaN to indicate the result is undefined. When FALSE, an exception is raised if one or more of the statistic's batch members are undefined.


name prefixed to Ops created by this class.


a distribution instance.


Mathematical Details

The Binomial is a distribution over the number of 1's in total_count independent trials, with each trial having the same probability of 1, i.e., probs.

The probability mass function (pmf) is,

pmf(k; n, p) = p**k (1 - p)**(n - k) / Z
Z = k! (n - k)! / n!


  • total_count = n,

  • probs = p,

  • Z is the normalizing constant, and,

  • n! is the factorial of n.

See also

For usage examples see e.g. tfd_sample(), tfd_log_prob(), tfd_mean().

Other distributions: tfd_autoregressive, tfd_batch_reshape, tfd_bernoulli, tfd_beta, tfd_categorical, tfd_cauchy, tfd_chi2, tfd_chi, tfd_cholesky_lkj, tfd_deterministic, tfd_dirichlet_multinomial, tfd_dirichlet, tfd_empirical, tfd_exponential, tfd_gamma_gamma, tfd_gamma, tfd_gaussian_process_regression_model, tfd_gaussian_process, tfd_geometric, tfd_gumbel, tfd_half_cauchy, tfd_half_normal, tfd_hidden_markov_model, tfd_horseshoe, tfd_independent, tfd_inverse_gamma, tfd_inverse_gaussian, tfd_joint_distribution_named, tfd_joint_distribution_sequential, tfd_kumaraswamy, tfd_laplace, tfd_linear_gaussian_state_space_model, tfd_lkj, tfd_log_normal, tfd_logistic, tfd_mixture_same_family, tfd_mixture, tfd_multinomial, tfd_multivariate_normal_diag_plus_low_rank, tfd_multivariate_normal_diag, tfd_multivariate_normal_full_covariance, tfd_multivariate_normal_linear_operator, tfd_multivariate_normal_tri_l, tfd_multivariate_student_t_linear_operator, tfd_negative_binomial, tfd_normal, tfd_one_hot_categorical, tfd_pareto, tfd_pixel_cnn, tfd_poisson_log_normal_quadrature_compound, tfd_poisson, tfd_probit_bernoulli, tfd_quantized, tfd_relaxed_bernoulli, tfd_relaxed_one_hot_categorical, tfd_sample_distribution, tfd_sinh_arcsinh, tfd_student_t_process, tfd_student_t, tfd_transformed_distribution, tfd_triangular, tfd_truncated_normal, tfd_uniform, tfd_variational_gaussian_process, tfd_vector_diffeomixture, tfd_vector_exponential_diag, tfd_vector_exponential_linear_operator, tfd_vector_laplace_diag, tfd_vector_laplace_linear_operator, tfd_vector_sinh_arcsinh_diag, tfd_von_mises_fisher, tfd_von_mises, tfd_wishart_linear_operator, tfd_wishart_tri_l, tfd_wishart, tfd_zipf