API: Turing.RandomMeasures
Turing.RandomMeasures.ChineseRestaurantProcess — TypeChineseRestaurantProcess(rpm, m)The Chinese Restaurant Process for random probability measures rpm with counts m.
Turing.RandomMeasures.DirichletProcess — TypeDirichletProcess(α)The Dirichlet Process with concentration parameter α. Samples from the Dirichlet process can be constructed via the following representations.
Size-Biased Sampling Process
\[j_k \sim Beta(1, \alpha) * surplus\]
Stick-Breaking Process
\[v_k \sim Beta(1, \alpha)\]
Chinese Restaurant Process
\[p(z_n = k | z_{1:n-1}) \propto \begin{cases} \frac{m_k}{n-1+\alpha}, \text{if} m_k > 0\\ \frac{\alpha}{n-1+\alpha} \end{cases}\]
For more details see: https://www.stats.ox.ac.uk/~teh/research/npbayes/Teh2010a.pdf
Turing.RandomMeasures.PitmanYorProcess — TypePitmanYorProcess(d, θ, t)The Pitman-Yor Process with discount d, concentration θ and t already drawn atoms. Samples from the Pitman-Yor Process can be constructed via the following representations.
Size-Biased Sampling Process
\[j_k \sim Beta(1-d, \theta + t*d) * surplus\]
Stick-Breaking Process
\[v_k \sim Beta(1-d, \theta + t*d)\]
Chinese Restaurant Process
\[p(z_n = k | z_{1:n-1}) \propto \begin{cases} \frac{m_k - d}{n+\theta}, \text{if} m_k > 0\\ \frac{\theta + d*t}{n+\theta} \end{cases}\]
For more details see: https://en.wikipedia.org/wiki/Pitman–Yor_process
Turing.RandomMeasures.SizeBiasedSamplingProcess — TypeSizeBiasedSamplingProcess(rpm, surplus)The Size-Biased Sampling Process for random probability measures rpm with a surplus mass of surplus.
Turing.RandomMeasures.StickBreakingProcess — TypeStickBreakingProcess(rpm)The Stick-Breaking Process for random probability measures rpm.
Turing.RandomMeasures._logpdf_table — Function_logpdf_table(d::AbstractRandomProbabilityMeasure, m::AbstractVector{Int})Parameters:
d: Random probability measure, e.g. DirichletProcessm: Cluster counts
Turing.RandomMeasures.stickbreak — MethodStick-breaking function.
This function accepts a vector (`v`) of length $K - 1$ where each element
is assumed to be in the unit interval, and returns a simplex of length
$K$. If the supplied vector `v` is a vector of independent draws from
a Beta distribution (i.e., vⱼ | a ~ Beta(1, a), for j=1,...,K), then
returned simplex is generated via a stick-breaking process where
the first element of the stick is w₁ = v₁, the last element w_K =
∏ⱼ (1 - vⱼ), and the other elements are wₖ = vₖ ∏ⱼ₌₁ᵏ⁻¹(1 - vⱼ).
As $K$ goes to infinity, w is a draw from the Chinese Restaurant process
with mass parameter a.Arguments
v: A vector of length $K - 1$, where $K > 1$.
Return
- A simplex (w) of dimension $K$. Where ∑ₖ wₖ = 1, and each wₖ ≥ 0.