FIML

Options     Examples     References

FIML invokes the Full Information Maximum Likelihood procedure. This procedure obtains maximum likelihood estimates of a nonlinear simultaneous equations model. The model should have N equations (some of which may be identities) in N endogenous variables and may be written in implicit form (equations without left-hand-side variables).

FIML is an asymptotically efficient estimator for simultaneous models with normally distributed errors. It is the only known efficient estimator for models that are nonlinear in their parameters.

For further details on this estimator and the method of estimation, see the references and the TSP User's Guide. See the LIML command for details on doing nonlinear Limited Information Maximum Likelihood (single equation ML) with the FIML command.

FIML ( ENDOG=(<list of endogenous variables>), nonlinear options)

            <list of equation names> ;

Usage

FIML in its simplest form is invoked by listing the endogenous variables of the model in the options and following the options by the equation names:

FIML (ENDOG=(Y1,Y2,...,YN)) EQ1,EQ2,.....EQN ;

The equations must be previously defined by FRML and IDENT statements. Those which are IDENTs are assumed to hold exactly in the data and will not contribute to the covariance matrix of the disturbances. If the IDENTs can be substituted into the FRMLs, a FIML estimation of the resulting FRMLs will yield the same results as FIML on the original FRMLs and IDENTs.

IDENTs cannot be used to impose nonlinear (or linear) constraints on the parameters -- any constraints must be substituted directly into the structural equations. An attempt to use IDENTs in this way would fail because of an unequal number of endogenous variables and equations, and a singular Jacobian (the gradient of the equations with respect to endogenous variables).

The parameters to be estimated must be defined previously and starting values assigned by a PARAM statement or statements (or by being estimated in a previous nonlinear estimation).

If the equations are nonlinear in the endogenous variables, the Jacobian will not be constant over time, and it will be evaluated at each observation. If the Jacobian is singular at the initial iteration, estimation halts. Usually this is caused by coefficients with zero starting values -- use 0.1 for these initial values instead. If the Jacobian is singular during the iterations, the parameter stepsize is automatically squeezed (this is treated as a numerical error).

Output

Normal FIML output begins with a listing of the options (if the PRINT option is specified) and the equations. The model is checked for linearity in the parameters (which simplifies the computations) and for linearity in the variables (which greatly simplifies the derivatives). A message is printed if either form of linearity is found. The amount of working space used by FIML is also printed - this number can be compared with the amount printed at the end of the run to see how much extra room you have if you wish to expand the model.

Next FIML prints the starting conditions for the constants and parameters, and then iteration-by-iteration output. If the print option is off, this output consists of only one line, showing the beginning value of the (minus) log likelihood, the ending value, the number of squeezes in the stepsize search (ISQZ), the final stepsize, and a criterion which should go to zero rapidly if the iterations are well-behaved. This criterion is the norm of the gradient in the metric of the Hessian approximation. It will be close to zero at convergence.

When the print option is on, FIML also prints the value of the parameters at the beginning of the iteration and their direction vector. These are shown in a convenient table so that you can easily spot parameters with which you are having difficulty.

Finally FIML prints the results of the estimation (whether or not it converged); these results are printed when the print option PRINT, NOPRINT, or TERSE, but not when SILENT is specified. The names of the equations and endogenous variables are printed, the value of the log likelihood at the maximum, and the corresponding estimate of the covariance of the structural disturbances.

Following this is a table of parameter estimates and asymptotic standard errors, as well as their estimated variance-covariance matrix (if it has been unsuppressed).

For the default HCOV=B option, this is computed by summing the outer product of the gradient vector for all structural parameters and error covariance parameters over all observations, inverting this matrix (the BHHH matrix), and taking the submatrix corresponding to the structural parameters. This is a consistent estimate of the information matrix, with good small sample properties. Note that the BHHH matrix is not block diagonal between the structural and error covariance parameters at the maximum even though the second derivative matrix is block diagonal at the maximum, so this procedure is necessary. See Calzolari and Panattoni (1988) for details.

For each equation, FIML prints a few goodness-of-fit statistics: the sum of squared residuals, standard error, and the Durbin-Watson statistic. The computation of these statistics is described in the regression output section of the User's Manual.

FIML also stores its results in data storage. The estimated values of the parameters are stored under the parameter names. In addition, the following results are stored:

variable

type

length

description

@RNMS

list

#params

Parameter names.

@LOGL

scalar

1

Log of likelihood function.

@SBIC

scalar

1

Schwarz-Bayes information criterion with nobs=@NOB*@NEQ

@AIC

scalar

1

Akaike information criterion

@NCOEF

scalar

1

Number of parameters in model

@NCID

scalar

1

Number of identified parameters in model (<=@NCOEF)

@IFCONV

scalar

1

Convergence status (1 = success).

@GRAD

vector

#params

Gradient of likelihood at maximum.

@COEF

vector

#params

Estimated values of parameters (also stored under their names).

@SES

vector

#params

Standard errors of estimated parameters.

@T

vector

#params

asymptotic T-statistics

%T

vector

#params

p-values for asymptotic T-statistics (based on normal distribution

@SSR

vector

#eqs

Sum of squared residuals for each equation, stored in a vector.

@S

vector

#eqs

Standard error of each equation, stored in a vector.

@DW

vector

#eqs

Durbin-Watson statistic for each equation, stored in a vector.

@RSQ

vector

#eqs

R-squared for each equation, stored in a vector (if eqs are normalized)

@ARSQ

vector

#eqs

Adjusted R-squared for each equation (if eqs are normalized)

@YMEAN

vector

#eqs

Vector of means of dependent variables (if eqs are normalized)

@SDEV

vector

#eqs

Vector of standard deviations of dependent variables (if eqs are normalized)

@VCOV

matrix

#par* #par

Estimated variance-covariance of estimated parameters.

@COVU

matrix

#eqs*#eqs

Residual covariance matrix (the # of eqs is the number of stuctural equations).

@FIT

matrix

#obs*#eqs

Matrix of fitted values (if equations are normalized)

@RES

matrix

#obs*#eqs

Matrix of residuals

 

Options

ENDOG= (list of endogenous variables). This defines the endogenous variables, including those that do not appear on the left hand side of any behavioral equation. There is no requirement that endogenous variables appear on the left side of any equation, since FIML estimates are invariant to this normalization. However, the number of endogenous variables must be equal to the number of equations.

Nonlinear options These options control the iteration methods and printing. They are explained in the NONLINEAR section of this manual. Some of the common options are MAXIT, MAXSQZ, PRINT/NOPRINT, and SILENT/NOSILENT.

The legal choices for HITER= are G (Gauss, the default), B (BHHH), and D (DFP -- numeric derivatives). HCOV=B (BHHH) is the default method for calculating standard errors, and D is legal when HITER=D is used.

Examples

To obtain full information maximum likelihood estimates of the illustrative model from the User's Manual, use the following statement:

FIML (ENDOG=(GNP,CONS,I,R,LP)) GNPID, CONSEQ, INVEQ, INTRSTEQ, PRICEQ ;

To do Box-Cox regression properly, use FIML to include the Jacobian term in the likelihood (note unnormalized equation):

FRML EQ1 (Y**LAM-1)/LAM - (A + B*X); PARAM A B; FIML(ENDOG=Y) EQ1;

Klein-I model (see Calzolari and Panattoni for correct results):

FORM (VARPREF=C_) CONS CX C P P(-1) W ;

FORM (VARPREF=I_) INV I C P P(-1) K(-1) ;

FORM (VARPREF=W_) WAGES W1 C E E(-1) TM ;

IDENT WAGE W = W1+W2 ;

IDENT BALANCE CX+I+G - (TX+W+P) ;

IDENT PPROD E = P+TX+W1 ;

FIML (ENDOG=(CX,I,W1,W,P,E)) CONS INV WAGES WAGE BALANCE PPROD ;

References

Amemiya, Takeshi, "The Maximum Likelihood and the Nonlinear Three-Stage Least Squares Estimator in the General Nonlinear Simultaneous Equation Model," Econometrica, May 1977, pp. 955-966.

Berndt, E. K., B. H. Hall, R. E. Hall, and J. A. Hausman, "Estimation and Inference in Nonlinear Structural Models," Annals of Economic and Social Measurement, October 1974, pp. 653-665.

Calzolari, Giorgio, and Panattoni, Lorenzo, "Alternate Estimators of FIML Covariance Matrix: A Monte Carlo Study," Econometrica 56, 1988, pp.701-714.

Jorgenson, Dale W. and Jean-Jacques Laffont, "Efficient Estimation of Nonlinear Simultaneous Equations with Additive Disturbances," Annals of Economic and Social Measurement, October 1974, pp. 615-640.