calcHessian {TestDesign} | R Documentation |
Calculate second derivative of log-likelihood
Description
calcHessian
is a function for calculating the second derivative of the log-likelihood function.
Usage
calcHessian(object, theta, resp)
## S4 method for signature 'item_1PL,numeric,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_2PL,numeric,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_3PL,numeric,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_PC,numeric,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_GPC,numeric,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_GR,numeric,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_1PL,matrix,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_2PL,matrix,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_3PL,matrix,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_PC,matrix,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_GPC,matrix,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_GR,matrix,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_pool,numeric,numeric'
calcHessian(object, theta, resp)
## S4 method for signature 'item_pool_cluster,numeric,list'
calcHessian(object, theta, resp)
Arguments
object |
|
theta |
theta values to use. |
resp |
the response data to use. This must be a single value for an |
Details
- notations
-
nq denotes the number of theta values.
ni denotes the number of items in the
item_pool
object.
Value
item
object:calcHessian
returns a length nq vector containing the second derivative of the log-likelihood function, of observing the response at each theta.item_pool
object:calcHessian
returns a (nq, ni) matrix containing the second derivative of the log-likelihood function, of observing the response at each theta.
References
Rasch, G. (1960). Probabilistic models for some intelligence and attainment tests. Copenhagen: Danish Institute for Educational Research.
Lord, F. M. (1952). A theory of test scores (Psychometric Monograph No. 7). Richmond, VA: Psychometric Corporation.
Birnbaum, A. (1957). Efficient design and use of tests of mental ability for various decision-making problems (Series Report No. 58-16. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.
Birnbaum, A. (1958). On the estimation of mental ability (Series Report No. 15. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.
Birnbaum, A. (1958). Further considerations of efficiency in tests of a mental ability (Series Report No. 17. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.
Birnbaum, A. (1968). Some latent trait models and their use in inferring an examinee's ability. In Lord, F. M., Novick, M. R. (eds.), Statistical Theories of Mental Test Scores, 397-479. Reading, MA: Addison-Wesley.
Masters, G. N. (1982). A Rasch model for partial credit scoring. Psychometrika, 47(2), 149-174.
Andrich, D. (1978). A rating formulation for ordered response categories. Psychometrika, 43(4), 561-573.
Muraki, E. (1992). A generalized partial credit model: Application of an EM algorithm. Applied Psychological Measurement, 16(2), 159-176.
Samejima, F. (1969). Estimation of latent ability using a response pattern of graded scores. Psychometrika Monograph, 17.
Examples
item_1 <- new("item_1PL", difficulty = 0.5)
item_2 <- new("item_2PL", slope = 1.0, difficulty = 0.5)
item_3 <- new("item_3PL", slope = 1.0, difficulty = 0.5, guessing = 0.2)
item_4 <- new("item_PC", threshold = c(-1, 0, 1), ncat = 4)
item_5 <- new("item_GPC", slope = 1.2, threshold = c(-0.8, -1.0, 0.5), ncat = 4)
item_6 <- new("item_GR", slope = 0.9, category = c(-1, 0, 1), ncat = 4)
h_item_1 <- calcHessian(item_1, seq(-3, 3, 1), 0)
h_item_2 <- calcHessian(item_2, seq(-3, 3, 1), 0)
h_item_3 <- calcHessian(item_3, seq(-3, 3, 1), 0)
h_item_4 <- calcHessian(item_4, seq(-3, 3, 1), 0)
h_item_5 <- calcHessian(item_5, seq(-3, 3, 1), 0)
h_item_6 <- calcHessian(item_6, seq(-3, 3, 1), 0)
h_pool <- calcHessian(
itempool_science, seq(-3, 3, 1),
rep(0, itempool_science@ni)
)