It is well known that the problem of separation in binary-response data results in some parameters of the model being infinite (see Albert and Anderson, 1984 and Existence of Maximum Likelihood Estimates in the Details section of the PROC LOGISTIC documentation). The maximum likelihood solution does not exist in such cases. This typically results in messages indicating that convergence was not attained, or in very large parameter standard errors if convergence does occur. PROC LOGISTIC checks for separation conditions and issues messages when found. But other procedures, such as GENMOD, PROBIT, and others do not explicitly check for separation. Note that occasionally convergence can occur or the separation check can fail in such cases simply due to the inexact nature of computer computation. See this note for more on separation problems in binary-response models.
A similar problem can occur in log-linked count-response models, such as Poisson and negative binomial models. As described by Santos Silva and Tenreyro (2010), the maximum likelihood solution does not exist when there is exact collinearity among the model predictors for observations in which the response is greater than zero.
This condition is easily illustrated. The following DATA step generates data in which X2 is identical to (and therefore collinear with) X1 when Y>0.
data s; call streaminit(57356); do i=1 to 100; y=rand("poisson",2); x1=floor(rand("uniform")*10); x2=x1+(y=0)*floor(rand("uniform")*5); x3=rand("uniform"); output; end; run;
These statements attempt to estimate a Poisson model with X1, X2, and X3 as predictors.
proc genmod; model y=x1 x2 x3 / dist=poisson itprint; run;
Convergence fails as indicated by warning messages in the log
WARNING: The negative of the Hessian is not positive definite. The convergence is
questionable.
WARNING: The procedure is continuing but the validity of the model fit is questionable.
WARNING: The specified model did not converge.
WARNING: Negative of Hessian not positive definite.
and in the iteration history, some parameters are steadily increasing or decreasing.
|
The above condition can be checked for using the collinearity diagnostic options in PROC REG. In the following statements, the COLLINOINT option provides an assessment of collinearity among the observations with Y>0. The ODS SELECT option selects only the collinearity diagnostics table for display since all other PROC REG results are meaningless.
proc reg; where y>0; model y=x1 x2 x3 / collinoint; ods select CollinDiagNoint; run; quit;
The results show one eigenvalue that is essentially zero, indicating that collinearity exists. The Proportion of Variation coefficients indicate that the X1 and X2 predictors are collinear.
|
A model can be successfully fit to the full data by selecting a set of predictors that are not collinear. In this example, a model that removes one of X1 or X2 can be fit.
proc genmod; model y=x1 x3 / dist=poisson; run;
The results indicate that convergence was attained and the parameter estimates do not appear extreme.
|
__________
Albert, A. and Anderson, J.A. (1984), "On the existence of maximum likelihood estimates in logistic models," Biometrika, 71, 1-10.
Santos Silva, J.M.C. and Tenreyro, S. (2010), "On the existence of the maximum likelihood estimates in poisson regression," Economics Letters, 107, 310-312.
Product Family | Product | System | SAS Release | |
Reported | Fixed* | |||
SAS System | SAS/STAT | z/OS | ||
z/OS 64-bit | ||||
OpenVMS VAX | ||||
Microsoft® Windows® for 64-Bit Itanium-based Systems | ||||
Microsoft Windows Server 2003 Datacenter 64-bit Edition | ||||
Microsoft Windows Server 2003 Enterprise 64-bit Edition | ||||
Microsoft Windows XP 64-bit Edition | ||||
Microsoft® Windows® for x64 | ||||
OS/2 | ||||
Microsoft Windows 8 Enterprise 32-bit | ||||
Microsoft Windows 8 Enterprise x64 | ||||
Microsoft Windows 8 Pro 32-bit | ||||
Microsoft Windows 8 Pro x64 | ||||
Microsoft Windows 8.1 Enterprise 32-bit | ||||
Microsoft Windows 8.1 Enterprise x64 | ||||
Microsoft Windows 8.1 Pro | ||||
Microsoft Windows 8.1 Pro 32-bit | ||||
Microsoft Windows 95/98 | ||||
Microsoft Windows 2000 Advanced Server | ||||
Microsoft Windows 2000 Datacenter Server | ||||
Microsoft Windows 2000 Server | ||||
Microsoft Windows 2000 Professional | ||||
Microsoft Windows NT Workstation | ||||
Microsoft Windows Server 2003 Datacenter Edition | ||||
Microsoft Windows Server 2003 Enterprise Edition | ||||
Microsoft Windows Server 2003 Standard Edition | ||||
Microsoft Windows Server 2003 for x64 | ||||
Microsoft Windows Server 2008 | ||||
Microsoft Windows Server 2008 R2 | ||||
Microsoft Windows Server 2008 for x64 | ||||
Microsoft Windows Server 2012 Datacenter | ||||
Microsoft Windows Server 2012 R2 Datacenter | ||||
Microsoft Windows Server 2012 R2 Std | ||||
Microsoft Windows Server 2012 Std | ||||
Microsoft Windows XP Professional | ||||
Windows 7 Enterprise 32 bit | ||||
Windows 7 Enterprise x64 | ||||
Windows 7 Home Premium 32 bit | ||||
Windows 7 Home Premium x64 | ||||
Windows 7 Professional 32 bit | ||||
Windows 7 Professional x64 | ||||
Windows 7 Ultimate 32 bit | ||||
Windows 7 Ultimate x64 | ||||
Windows Millennium Edition (Me) | ||||
Windows Vista | ||||
Windows Vista for x64 | ||||
64-bit Enabled AIX | ||||
64-bit Enabled HP-UX | ||||
64-bit Enabled Solaris | ||||
ABI+ for Intel Architecture | ||||
AIX | ||||
HP-UX | ||||
HP-UX IPF | ||||
IRIX | ||||
Linux | ||||
Linux for x64 | ||||
Linux on Itanium | ||||
OpenVMS Alpha | ||||
OpenVMS on HP Integrity | ||||
Solaris | ||||
Solaris for x64 | ||||
Tru64 UNIX | ||||
SAS System | SAS/ETS | z/OS | ||
z/OS 64-bit | ||||
OpenVMS VAX | ||||
Microsoft® Windows® for 64-Bit Itanium-based Systems | ||||
Microsoft Windows Server 2003 Datacenter 64-bit Edition | ||||
Microsoft Windows Server 2003 Enterprise 64-bit Edition | ||||
Microsoft Windows XP 64-bit Edition | ||||
Microsoft® Windows® for x64 | ||||
OS/2 | ||||
Microsoft Windows 8 Enterprise 32-bit | ||||
Microsoft Windows 8 Enterprise x64 | ||||
Microsoft Windows 8 Pro 32-bit | ||||
Microsoft Windows 8 Pro x64 | ||||
Microsoft Windows 8.1 Enterprise 32-bit | ||||
Microsoft Windows 8.1 Enterprise x64 | ||||
Microsoft Windows 8.1 Pro | ||||
Microsoft Windows 8.1 Pro 32-bit | ||||
Microsoft Windows 95/98 | ||||
Microsoft Windows 2000 Advanced Server | ||||
Microsoft Windows 2000 Datacenter Server | ||||
Microsoft Windows 2000 Server | ||||
Microsoft Windows 2000 Professional | ||||
Microsoft Windows NT Workstation | ||||
Microsoft Windows Server 2003 Datacenter Edition | ||||
Microsoft Windows Server 2003 Enterprise Edition | ||||
Microsoft Windows Server 2003 Standard Edition | ||||
Microsoft Windows Server 2003 for x64 | ||||
Microsoft Windows Server 2008 | ||||
Microsoft Windows Server 2008 R2 | ||||
Microsoft Windows Server 2008 for x64 | ||||
Microsoft Windows Server 2012 Datacenter | ||||
Microsoft Windows Server 2012 R2 Datacenter | ||||
Microsoft Windows Server 2012 R2 Std | ||||
Microsoft Windows Server 2012 Std | ||||
Microsoft Windows XP Professional | ||||
Windows 7 Enterprise 32 bit | ||||
Windows 7 Enterprise x64 | ||||
Windows 7 Home Premium 32 bit | ||||
Windows 7 Home Premium x64 | ||||
Windows 7 Professional 32 bit | ||||
Windows 7 Professional x64 | ||||
Windows 7 Ultimate 32 bit | ||||
Windows 7 Ultimate x64 | ||||
Windows Millennium Edition (Me) | ||||
Windows Vista | ||||
Windows Vista for x64 | ||||
64-bit Enabled AIX | ||||
64-bit Enabled HP-UX | ||||
64-bit Enabled Solaris | ||||
ABI+ for Intel Architecture | ||||
AIX | ||||
HP-UX | ||||
HP-UX IPF | ||||
IRIX | ||||
Linux | ||||
Linux for x64 | ||||
Linux on Itanium | ||||
OpenVMS Alpha | ||||
OpenVMS on HP Integrity | ||||
Solaris | ||||
Solaris for x64 | ||||
Tru64 UNIX |
Type: | Usage Note |
Priority: | |
Topic: | Analytics ==> Categorical Data Analysis Analytics ==> Regression SAS Reference ==> Procedures ==> COUNTREG SAS Reference ==> Procedures ==> GENMOD SAS Reference ==> Procedures ==> GLIMMIX SAS Reference ==> Procedures ==> HPGENSELECT SAS Reference ==> Procedures ==> HPNLMOD SAS Reference ==> Procedures ==> NLMIXED |
Date Modified: | 2020-10-08 14:07:15 |
Date Created: | 2015-11-20 15:56:30 |