import torch probs = torch.tensor([0.25, 0.25, 0.5]) dist = torch.distributions.Categorical(probs=probs) sample = dist.sample() # generates a single sample from the distribution print(sample)
import torch logits = torch.tensor([1.0, 2.0, 3.0]) dist = torch.distributions.Categorical(logits=logits) probs = dist.probs # gets the probabilities of each possible outcome print(probs)
import torch probs = torch.tensor([[0.25, 0.75], [0.5, 0.5], [0.8, 0.2]]) dist = torch.distributions.Categorical(probs=probs) samples = dist.sample((2, 3)) # generates a batch of samples from the distribution print(samples)In this example, a `Categorical` distribution is created with a 3-by-2 tensor of probabilities. This means that the distribution has two possible outcomes for each of three random variables, with probabilities specified by the tensor. The `sample()` method is then used to generate a batch of 2-by-3 samples from the distribution, which are printed. The `torch.distributions` package library contains a collection of probability distributions, such as Bernoulli, Beta, Normal, and so on.