Hi, I am estimating a model in which I restrict one parameter to be positive. I am using the 'hack' to exponentially transform a variable, which works fine for the point estimate. However, the standard error accompanying the estimate resulting from eViews 7.2 seems unrealistic.
I use bootstrapping to calculate the standard error of the transformed parameter, but this runs out of bounds due to the size of the standard error. I use the mean and covariance matrix resulting from the estimation as input for the bootstrap (which I have programmed in R). It perfectly recovers the mean and standard deviation of the untransformed parameters, but, not for the exponentially transformed parameter, as it quickly runs out of bounds.
I attached a worksheet illustrating the estimation and results. Running the Equation (using BHHH) gives a estimate for c(2) of -16.736 (87476.42). Taking the exponent of this gives a mean of zero, which is expected in this case. My question is:
- Is the standard error for the exponentially transformed parameter - c(2) - resulting from the estimation in eViews correct?
- What would be the correct standard error?
If anyone suspects a mistake in the bootstrapping code, I am happy to provide that.
Thank you!
Standard errors of transformed variables?
Moderators: EViews Gareth, EViews Moderator
Standard errors of transformed variables?
- Attachments
-
- ExpTrans.WF1
- (14.9 KiB) Downloaded 178 times
-
EViews Glenn
- EViews Developer
- Posts: 2682
- Joined: Wed Oct 15, 2008 9:17 am
Re: Standard errors of transformed variables?
Without looking at the bootstrap I want to point out that your equation really isn't well behaved. The huge standard errors are a tipoff. What's probably going on is that you are trying to compute the exp of the very large numbers and getting overflows.
Note that you are trying to run the regression
dv = c(1)+exp(c(2))*var1 + c(3)*var2
using maximum likelihood. You get "convergence" at the coefficients that you have, but if you look at the gradients view you'll see that you have non-zero values and a huge Newton direction for the C(2) coefficient.
Clicking on Estimate and changing to Marquardt, you'll see that you get a singular covariance which is additional evidence that the estimates are not very good.
Lastly, since this is really a least squares problem, running the regression above using least squares is another way of estimating the same thing. You'll note that this too yields a singularity.
Note that you are trying to run the regression
dv = c(1)+exp(c(2))*var1 + c(3)*var2
using maximum likelihood. You get "convergence" at the coefficients that you have, but if you look at the gradients view you'll see that you have non-zero values and a huge Newton direction for the C(2) coefficient.
Clicking on Estimate and changing to Marquardt, you'll see that you get a singular covariance which is additional evidence that the estimates are not very good.
Lastly, since this is really a least squares problem, running the regression above using least squares is another way of estimating the same thing. You'll note that this too yields a singularity.
Re: Standard errors of transformed variables?
Hi Glenn, thanks much for your response!
Let me first point out that I simplified the my problem a bit and that I understand that attached model can be estimated using ols (but the more advanced problem I am interested in has to be estimated with ML).
Basically what I did is that I simulated data with a c(2) coefficient of -.13. This is also what you get if you run an unrestricted estimation. I now want to restrict c(2) > 0 in the estimation and that is why I use the exponential transformation. You would expect c(2) to go to zero, which is also what happens. However, I have the idea that as the optimization algorithm goes towards the (zero) boundary it runs into some problems calculating the standard error.
Indeed, I had already tried Marquardt and only for particular starting values it converges (and gives an even bigger standard deviations).
My questions:
- Does it make sense what I say above?
- Is the exponential transformation the only way to restrict parameters to be greater than zero?
- Is there maybe a possibiliy to arrive at realistic standard errors by using different stopping criteria for the optimization algorithm?
Your help is much appreciated!
Let me first point out that I simplified the my problem a bit and that I understand that attached model can be estimated using ols (but the more advanced problem I am interested in has to be estimated with ML).
Basically what I did is that I simulated data with a c(2) coefficient of -.13. This is also what you get if you run an unrestricted estimation. I now want to restrict c(2) > 0 in the estimation and that is why I use the exponential transformation. You would expect c(2) to go to zero, which is also what happens. However, I have the idea that as the optimization algorithm goes towards the (zero) boundary it runs into some problems calculating the standard error.
Indeed, I had already tried Marquardt and only for particular starting values it converges (and gives an even bigger standard deviations).
My questions:
- Does it make sense what I say above?
- Is the exponential transformation the only way to restrict parameters to be greater than zero?
- Is there maybe a possibiliy to arrive at realistic standard errors by using different stopping criteria for the optimization algorithm?
Your help is much appreciated!
-
EViews Glenn
- EViews Developer
- Posts: 2682
- Joined: Wed Oct 15, 2008 9:17 am
Re: Standard errors of transformed variables?
It's not clear that one would expect exp(C(2)) to go to zero. And if it does, I should note that that corner solution isn't going to be estimable since you'll get an unbounded negative C(2).
There are other ways to enforce positivity, but the exp is the simplest.
There are other ways to enforce positivity, but the exp is the simplest.
Re: Standard errors of transformed variables?
True, c(2) does not necessarily have to go to zero, but it often does in my case. I am estimating a model with multiple carryover effects that realistically should be between zero and one. As the amount of data is limited, the empirical identfication is not optimal. Some of these carryover effects become negative and to get more reliable results, I restrict them to be positive (by an exp transformation).
In all cases, the exp transformed coefficient goes to zero and indeed c(2) is unbounded (thank you). So the optimization stops based on the convergence criteria set and the resulting standard errors are 'incorrect'.
Is there a way to circumvent this and to obtain standard errors for the exp transformed components using eViews? May one of the other 'tricks' to ensure positivity help here?
Many thanks for your help!
In all cases, the exp transformed coefficient goes to zero and indeed c(2) is unbounded (thank you). So the optimization stops based on the convergence criteria set and the resulting standard errors are 'incorrect'.
Is there a way to circumvent this and to obtain standard errors for the exp transformed components using eViews? May one of the other 'tricks' to ensure positivity help here?
Many thanks for your help!
-
EViews Glenn
- EViews Developer
- Posts: 2682
- Joined: Wed Oct 15, 2008 9:17 am
Re: Standard errors of transformed variables?
The problem is that the standard tricks to ensure positivity have unbounded coefficients as you approach the limit (that's the basic idea -- translating into an unbounded parameter space). If you truly are approaching zero, there's not much you can do apart from imposing the zero condition. Estimation with constraints is an alternative approach but that's a bit harder and we don't support it natively.
Who is online
Users browsing this forum: No registered users and 2 guests
