lsirm1pl_normal_ss {lsirm12pl}R Documentation

1PL LSIRM with normal likelihood and model selection approach.

Description

lsirm1pl_normal_ss is used to fit LSIRM with model selection approach based on spike-and-slab priors for continuous variable with 1pl. LSIRM factorizes continuous item response matrix into column-wise item effect, row-wise respondent effect and further embeds interaction effect in a latent space. The resulting latent space provides an interaction map that represents interactions between respondents and items.

Usage

lsirm1pl_normal_ss(
  data,
  ndim = 2,
  niter = 15000,
  nburn = 2500,
  nthin = 5,
  nprint = 500,
  jump_beta = 0.4,
  jump_theta = 1,
  jump_gamma = 1,
  jump_z = 0.5,
  jump_w = 0.5,
  pr_mean_beta = 0,
  pr_sd_beta = 1,
  pr_mean_theta = 0,
  pr_spike_mean = -3,
  pr_spike_sd = 1,
  pr_slab_mean = 0.5,
  pr_slab_sd = 1,
  pr_a_theta = 0.001,
  pr_b_theta = 0.001,
  pr_a_eps = 0.001,
  pr_b_eps = 0.001,
  pr_xi_a = 0.001,
  pr_xi_b = 0.001,
  verbose = FALSE
)

Arguments

data

Matrix; a binary or continuous item response matrix for analysis. Each row represents a respondent, and each column contains responses to the corresponding item.

ndim

Integer; the dimension of the latent space. Default is 2.

niter

Integer; the total number of MCMC iterations to run. Default is 15000.

nburn

Integer; the number of initial MCMC iterations to discard as burn-in. Default is 2500.

nthin

Integer; the number of MCMC iterations to thin. Default is 5.

nprint

Integer; the interval at which MCMC samples are displayed during execution. Default is 500.

jump_beta

Numeric; the jumping rule for the beta proposal density. Default is 0.4.

jump_theta

Numeric; the jumping rule for the theta proposal density. Default is 1.0.

jump_gamma

Numeric; the jumping rule for the theta proposal density. Default is 1.0.

jump_z

Numeric; the jumping rule for the z proposal density. Default is 0.5.

jump_w

Numeric; the jumping rule for the w proposal density. Default is 0.5.

pr_mean_beta

Numeric; the mean of the normal prior for beta. Default is 0.

pr_sd_beta

Numeric; the standard deviation of the normal prior for beta. Default is 1.0.

pr_mean_theta

Numeric; the mean of the normal prior for theta. Default is 0.

pr_spike_mean

Numeric; mean of spike prior for log gamma default value is -3.

pr_spike_sd

Numeric; standard deviation of spike prior for log gamma default value is 1.

pr_slab_mean

Numeric; mean of spike prior for log gamma default value is 0.5.

pr_slab_sd

Numeric; standard deviation of spike prior for log gamma default value is 1.

pr_a_theta

Numeric; the shape parameter of the inverse gamma prior for the variance of theta. Default is 0.001.

pr_b_theta

Numeric; the scale parameter of the inverse gamma prior for the variance of theta. Default is 0.001.

pr_a_eps

Numeric; shape parameter of inverse gamma prior for variance of data likelihood. Default is 0.001.

pr_b_eps

Numeric; scale parameter of inverse gamma prior for variance of data likelihood. Default is 0.001.

pr_xi_a

Numeric; first shape parameter of beta prior for latent variable xi. Default is 1.

pr_xi_b

Numeric; second shape parameter of beta prior for latent variable xi. Default is 1.

verbose

Logical; If TRUE, MCMC samples are printed for each nprint. Default is FALSE.

Details

lsirm1pl_normal_ss models the continuous value of response by respondent j to item i with item effect \beta_i, respondent effect \theta_j and the distance between latent position w_i of item i and latent position z_j of respondent j in the shared metric space, with \gamma represents the weight of the distance term:

Y_{j,i} = \theta_j+\beta_i-\gamma||z_j-w_i|| + e_{j,i}

where the error e_{j,i} \sim N(0,\sigma^2). lsrm1pl_noraml_ss model include model selection approach based on spike-and-slab priors for log gamma. For detail of spike-and-slab priors, see References.

Value

lsirm1pl_normal_ss returns an object of list containing the following components:

data

Data frame or matrix containing the variables in the model.

bic

Numeric value with the corresponding BIC.

mcmc_inf

number of mcmc iteration, burn-in periods, and thinning intervals.

map_inf

value of log maximum a posterior and iteration number which have log maximum a posterior.

beta_estimate

posterior estimation of beta.

theta_estimate

posterior estimation of theta.

sigma_theta_estimate

posterior estimation of standard deviation of theta.

sigma_estimate

posterior estimation of standard deviation.

gamma_estimate

posterior estimation of gamma.

z_estimate

posterior estimation of z.

w_estimate

posterior estimation of w.

pi_estimate

posterior estimation of phi. inclusion probability of gamma. if estimation of phi is less than 0.5, choose Rasch model with gamma = 0, otherwise latent space model with gamma > 0.

beta

posterior samples of beta.

theta

posterior samples of theta.

theta_sd

posterior samples of standard deviation of theta.

sigma

posterior samples of standard deviation.

gamma

posterior samples of gamma.

z

posterior samples of z. The output is 3-dimensional matrix with last axis represent the dimension of latent space.

w

posterior samples of w. The output is 3-dimensional matrix with last axis represent the dimension of latent space.

pi

posterior samples of phi which is indicator of spike and slab prior. If phi is 1, log gamma follows the slab prior, otherwise follows the spike prior.

accept_beta

accept ratio of beta.

accept_theta

accept ratio of theta.

accept_w

accept ratio of w.

accept_z

accept ratio of z.

accept_gamma

accept ratio of gamma.

References

Ishwaran, H., & Rao, J. S. (2005). Spike and slab variable selection: Frequentist and Bayesian strategies (Vol. 33). The Annals of Statistics

Examples

# generate example (continuous) item response matrix
data     <- matrix(rnorm(500, mean = 0, sd = 1),ncol=10,nrow=50)

lsirm_result <- lsirm1pl_normal_ss(data)

# The code following can achieve the same result.
lsirm_result <- lsirm(data ~ lsirm1pl(spikenslab = TRUE, fixed_gamma = FALSE))


[Package lsirm12pl version 1.3.2 Index]