## Documentation ¶

### Overview ¶

Package dist provides differentiatable distribution models. The package is automatically differentiated by deriv during build.

### Constants ¶

This section is empty.

### Variables ¶

View Source
`var Beta beta`

Beta distribution, singleton instance

View Source
`var Cauchy cauchy`

Cauchy distribution, singleton instance

View Source
`var D d`

D is a singletone variable of type d. General log-likelihood handling functions are dispatched on d.

View Source
`var Expon expon`

Exponential distribution, singleton instance

View Source
`var Gamma gamma`

Gamma distribution, singleton instance

View Source
`var Normal normal`

Normal distribution, singleton instance

### Functions ¶

This section is empty.

### Types ¶

#### type Categorical ¶

```type Categorical struct {
N int // number of categories
}```

Categorical distribution

`var Cat Categorical`

Categorical distribution, singleton instance; Observe cannot be called on this instance, but Logp and Logps can.

#### func (Categorical) Logp ¶

```func (dist Categorical) Logp(
alpha []float64, y float64,
) float64```

Logp computes logpdf of a single observation.

#### func (Categorical) Logps ¶

```func (dist Categorical) Logps(
alpha []float64, y ...float64,
) float64```

Logps computes logpdf of a vector of observations.

#### func (Categorical) Observe ¶

`func (dist Categorical) Observe(x []float64) float64`

Observe implements the Model interface

#### type Dirichlet ¶

```type Dirichlet struct {
N int // number of dimensions
}```

Dirichlet distribution

`var Dir Dirichlet`

Dirichlet distribution, singleton instance; Observe cannot be called on this instance, but Logp and Logps can.

#### func (Dirichlet) Logp ¶

`func (dist Dirichlet) Logp(alpha []float64, y []float64) float64`

Logp computes logpdf of a single observation.

#### func (Dirichlet) Logps ¶

`func (dist Dirichlet) Logps(alpha []float64, y ...[]float64) float64`

Logps computes logpdf of a vector of observations.

#### func (Dirichlet) Observe ¶

`func (dist Dirichlet) Observe(x []float64) float64`

Observe implements the Model interface. The parameters are alpha and observations, flattened.

## Directories ¶

Path Synopsis