The IWLS algorithm used to fit conditional logit models¶
The package “mclogit” fits conditional logit models using a maximum likelihood
estimator. It does this by maximizing the log-likelihood function using an
iterative weighted least-squares (IWLS) algorithm, which follows the
algorithm used by the glm.fit() function from the “stats” package of R.
If is the probability that individual
chooses alternative
from his/her choice set
, where
and if is the dummy variable with equals 1 if individual
chooses
alternative
and equals 0 otherwise, the log-likelihood function (given that
the choices are identically independent distributed given
) can be
written as
If the data are aggregated in the terms of counts such that is the
number of individuals with the same choice set and the same choice probabilities
that have chosen alternative
, the log-likelihood is (given that
the choices are identically independent distributed given
)
where .
If
then the gradient of the log-likelihood with respect to the coefficient vector
is
and the Hessian is
Here is
, while
is a diagonal matrix with
diagonal elements
.
Newton-Raphson iterations then take the form
where and
are evaluated at
.
Multiplying by gives
where is a generalized inverse of
and
is a “working response vector” with elements
The IWLS algorithm thus involves the following steps:
Create some suitable starting values for
,
, and
Construct the “working dependent variable”
-
Solve the equation
for
.
Compute updated
,
,
, and bm{y}^*.
-
Compute the updated value for the log-likelihood or the deviance
If the decrease of the deviance (or the increase of the log-likelihood) is smaller than a given tolerance criterian (typically
) stop the algorighm and declare it as converged. Otherwise go back to step 2 with the updated value of
.
The starting values for the algorithm used by the mclogit package are constructe as follows:
-
Set
(where
is the size of the choice set
)
Compute the starting values of the choice probalities
according to the equation at the beginning of the page
-
Compute intial values of the working dependent variable according to