lda_binomialVB: LDA with binomial entry and Stick-Breaking prior and...

Description Usage Arguments Details Value Note Author(s) References See Also Examples

Description

This method implements the Latent Dirichlet Allocation with Stick-Breaking prior for binomial data with Variational Inference. rlda.binomialVB works with frequency data.frame.

Usage

1
2
  rlda.binomialVB(data, loc.id, n_community, alpha0, alpha1,
  gamma, maxit=1000, thresh=0.0001)

Arguments

data

A abundance data.frame where each row is a sampling unit (i.e. Plots, Locations, Time, etc.) and each column is a categorical type of element (i.e. Species, Firms, Issues, etc.).

loc.id

ID variable in data.frame.

n_community

Total number of communities to return. It must be less than the total number of columns inside the data.

alpha0

Hyperparameter associated with the Beta prior Beta(alpha0, alpha1).

alpha1

Hyperparameter associated with the Beta prior Beta(alpha0, alpha1).

gamma

Hyperparameter associated with the Stick-Breaking prior.

maxit

Maximum number of iterations.

thresh

Threshold for ELBO convergence.

Details

rlda.binomialVB uses a modified Latent Dirichlet Allocation method to construct Mixed-Membership Clusters using Bayesian Variational Inference. The data must be a non-empty data.frame with the frequencies for each variable (column) in each observation (row).

Value

A R List with three elements:

Theta

The individual probability for each observation (ex: location) belong in each cluster (ex: community). It is a matrix with dimension equal n_gibbs by nrow(data) * n_community

Phi

The individual probability for each variable (ex: Specie) belong in each cluster (ex: community). It is a matrix with dimension equal n_gibbs by ncol(data) * n_community

ELBO

The vector ofELBO compute for each iteration.

Note

The Theta and Phi matrix can be obtained for the i-th gibbs sampling using matrix(Theta[i,], nrow = nrow(data), ncol = n_community) and matrix(Phi[i,], nrow = n_community, ncol = ncol(data)), respectively.

Author(s)

References

See Also

rlda.multinomial, rlda.bernoulli

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
	## Not run: 
		library(Rlda)
		# Set seed
		set.seed(5874)
		# Hyperparameters for each prior distribution
		gamma  <- 0.01
		alpha0 <- 0.01
		alpha1 <- 0.01
		# Execute the LDA for the Binomial entry
		res<- rlda.binomialVB(data=tmp, loc.id='loc.id', n_community=10,
		alpha0=0.01, alpha1=0.99, gamma=0.1, maxit=100, thresh=0.0001)
	
## End(Not run)

Rlda documentation built on May 1, 2019, 7:26 p.m.

Related to lda_binomialVB in Rlda...