posteriorDiscard.HDP2: Update a "HDP2" object with sample sufficient statistics

Description Usage Arguments Value References See Also

View source: R/Dirichlet_Process.r

Description

For the model structure:

G |eta \sim DP(eta,U)

G_m|gamma,G \sim DP(gamma,G), m = 1:M

pi_{mj}|G_m,alpha \sim DP(alpha,G_m), j = 1:J_m

z|pi_{mj} \sim Categorical(pi_{mj})

k|z,G_m \sim Categorical(G_m),\textrm{ if z is a sample from the base measure }G_{mj}

u|k,G \sim Categorical(G),\textrm{ if k is a sample from the base measure G}

theta_u|psi \sim H0(psi)

x|theta_u,u \sim F(theta_u)

where DP(eta,U) is a Dirichlet Process on positive integers, eta is the "concentration parameter", U is the "base measure" of this Dirichlet process, U is an uniform distribution on all positive integers. DP(gamma,G) is a Dirichlet Process on integers with concentration parameter gamma and base measure G. DP(alpha,G_m) is a Dirichlet Process on integers with concentration parameter alpha and base measure G_m. The choice of F() and H0() can be described by an arbitrary "BasicBayesian" object such as "GaussianGaussian","GaussianInvWishart","GaussianNIW", "GaussianNIG", "CatDirichlet", and "CatDP". See ?BasicBayesian for definition of "BasicBayesian" objects, and see for example ?GaussianGaussian for specific "BasicBayesian" instances. As a summary, An "HDP2" object is simply a combination of a "CatHDP2" object (see ?CatHDP2) and an object of any "BasicBayesian" type.
In the case of HDP2, u, z and k can only be positive integers.
Contrary to posterior(), this function will update the prior knowledge by removing the information of observed samples x. The model structure and prior parameters are stored in a "CatDP" object, the prior parameters in this object will be updated after running this function.

Usage

1
2
## S3 method for class 'HDP2'
posteriorDiscard(obj, ss = NULL, ss1, ss2, ss3, m, j, w = NULL, ...)

Arguments

obj

A "HDP2" object.

ss

Sufficient statistics of x of the "BasicBayesian" object, must be a list of sufficient statistics for each of the observations. Use sufficientStatistics(...,foreach=TRUE) to generate ss.

ss1

Sufficient statistics of u. In HDP2 case the sufficient statistic of sample u is u itself(if u is a integer vector with all positive values).

ss2

Sufficient statistics of k. In HDP2 case the sufficient statistic of sample k is k itself(if k is a integer vector with all positive values).

ss3

Sufficient statistics of z. In HDP2 case the sufficient statistic of sample z is z itself(if z is a integer vector with all positive values).

m

integer, group label.

j

integer, subgroup label.

w

Sample weights, default NULL.

...

Additional arguments to be passed to other inherited types.

Value

None. the model stored in "obj" will be updated based on "ss", "ss1", "ss2"and "ss3".

References

Teh, Yee W., et al. "Sharing clusters among related groups: Hierarchical Dirichlet processes." Advances in neural information processing systems. 2005.

See Also

HDP2,posteriorDiscard.HDP2,sufficientStatistics.HDP2


bbricks documentation built on July 8, 2020, 7:29 p.m.