Skip to content

Traits

Implementations of ItemResponseModel define four traits that represent certain characteristics of the item response model.

Dimensionality

The dimensionality of an ItemResponseModel is defined as the number of dimensions of item and person parameters.

Item dimensionality

The item dimensionality defines whether a model has one- or multidimensional item parameters. The dimensionality of item parameters is given by an integer.

AbstractItemResponseModels.item_dimensionality Function
julia
item_dimensionality(model::ItemResponseModel)

Return the number of dimensions for the item parameters of an ItemResponseModel as an integer.

source

Person dimensionality

The person dimensionality defines whether a model has one- or multidimensional person parameters. The dimensionality of person parameters is given by an integer.

AbstractItemResponseModels.person_dimensionality Function
julia
person_dimensionality(model::ItemResponseModel)

Return the number of dimensions for the person parameters of an ItemResponseModel as an integer.

source

Estimation type

The estimation type of a model reflects how the model was estimated.

AbstractItemResponseModels.EstimationType Type
julia
EstimationType

The EstimationType of an ItemResponseModel describes the type of parameter estimation for the model.

source

If an optimization procedure was carried out, resulting in a point estimate of the parameters, then the model has estimation type PointEstimate

AbstractItemResponseModels.PointEstimate Type
julia
PointEstimate <: EstimationType

Defines that the parameters of an ItemResponseModel are estimated by a single point estimate. Thus, parameters for a model with estimation_type(model) == PointEstimate are single real-valued numbers.

source

For sampling based estimation procedures (e.g. Markov Chain Monte Carlo methods), models carry the SamplingEstimate trait.

AbstractItemResponseModels.SamplingEstimate Type
julia
SamplingEstimate <: EstimationType

Defines that the parameters of an ItemResponseModel are estimated by a sampling procedure. Thus, parameters for a model with estimation_type(model) == SamplingEstimate are vectors of real-valued numbers where the length of the parameter vector is equal to the number of samples drawn.

source

Certain methods, such as variational inference, return probability distributions. Such models require the DistributionEstimate trait.

AbstractItemResponseModels.DistributionEstimate Type
julia
DistributionEstimate <: EstimationType

Defines that the parameters of an ItemResponseModel are estimated by a distribution. Thus, parameters for a model with estimation_type(model) == DistributionEstimate are probability distributions that implement common interface functions for distributions, e.g. rand, mean, or quantile.

source

Response type

The response type of a model defines the allowed responses to items.

AbstractItemResponseModels.ResponseType Type
julia
ResponseType

The ResponseType defines the scale level of item responses for a given ItemResponseModel.

source

AbstractItemResponseModels.jl differentiates between dichotomous, nominal, ordinal, and continuous responses.

Dichotomous response allow the values 0 and 1, representing an incorrect and correct response respectively.

AbstractItemResponseModels.Dichotomous Type
julia
Dichotomous <: ResponseType

Defines that an ItemResponseModel has a binary response variable.

source

The Nominal response type represents an unordered categorical response. Allowed values are the natural numbers (excluding zero), e.g. 1, 2, or 10.

AbstractItemResponseModels.Nominal Type
julia
Nominal <: ResponseType

Defines that an ItemResponseModel has an unordered categorical response variable.

source

The Ordinal response type is an ordered categorical response type. Much like the Nominal models, Ordinal models allow response values in the natural numbers (excluding zero) with an order relation, e.g. 1, 2, 3 such that 1 < 2 < 3.

AbstractItemResponseModels.Ordinal Type
julia
Ordinal <: ResponseType

Defines that an ItemResponseModel has an ordered categorical response variable.

source

Finally, the Continuous response type allows real-valued responses such as 0.5, 1/3, or -2.33.

AbstractItemResponseModels.Continuous Type
julia
Continous <: ResponseType

Defines that an ItemResponseModel has a continous response variable.

source