Wow that is really interesting,

Sorry I was asleep when you emailed these.

And yes, of course, I had been trying to implement model 18, not 18s,
that was a typo, sorry.

I will have a look at the code you posted.

Thanks,

Alex

On 10 May 2011 02:18, peter dalgaard <pda...@gmail.com> wrote:
> Hmm, I tried replacing the x's in the model with their principal component 
> scores, and suddenly everything converges as a greased lightning:
>
>> Z <- princomp(cbind(x1,x2,x3))$scores
>> Z <- as.data.frame(princomp(cbind(x1,x2,x3))$scores)
>> names(Z)<- letters[1:3]
>> optimx(rep(0,8),lnl, hessian=TRUE, y1=y1, y2=y2,
> + x1=Z$a, x2=Z$b, x3=Z$c, method="BFGS")
>                                                                               
>                  par
> 1 0.59107682, 0.01043568, -0.20639153, 0.25902746, 0.24675162, -0.01426477, 
> 0.18045177, -0.23657327
>    fvalues method fns grs itns conv KKT1 KKT2 xtimes
> 1 -76.73878   BFGS 157  37 NULL    0 TRUE TRUE  0.055
> Warning messages:
> 1: In max(logpar) : no non-missing arguments to max; returning -Inf
> 2: In min(logpar) : no non-missing arguments to min; returning Inf
>
> The likelihood appears to be spot on, but, obviously, the parameter estimates 
> need to be back-transformed to the original x1,x2,x3 system. I'll leave that 
> as the proverbial "exercise for the reader"...
>
> However, the whole thing leads me to a suspicion that maybe our numerical 
> gradients are misbehaving in cases with high local collinearity?
>
> -pd
>
> On May 9, 2011, at 13:40 , Alex Olssen wrote:
>
>> Hi Mike,
>>
>> Mike said
>> "is this it, page 1559?"
>>
>> That is the front page yes, page 15*6*9 has the table, of which the
>> model labelled 18s is the one I replicated.
>>
>> "did you actually cut/paste code anywhere and is your first
>> coefficient -.19 or -.019?
>> Presumably typos would be one possible problem."
>>
>> -0.19 is not a typo, it is pi10 in the paper, and a1 in my Stata
>> estimation - as far as I can tell cutting and pasting is not the
>> problem.
>>
>> "generally it helps if we could at least see the equations to check your
>> code against typos ( note page number ?) in lnl that may fix part of the
>> mystery.  Is full text available
>> on author's site, doesn't come up on citeseer AFAICT,"
>>
>> Unfortunately I do not know of any place to get the full version of
>> this paper that doesn't require access to a database such as JSTOR.
>> The fact that this likelihood function reproduces the published
>> results in Stata makes me confident that it is correct - I also have
>> read a lot on systems estimation and it is a pretty standard
>> likelihood function.
>>
>> "I guess one question would be " what is beta" in lnl supposed to be -
>> it isn't used anywhere but I will also mentioned I'm not that familiar
>> with the R code ( I'm trying to work through this to learn R and the
>> optimizers).
>>
>> maybe some words would help, is sigma supposed to be 2x2 or 8x8 and what are
>> e1 and e2 supposed to be?"
>>
>> The code above is certainly not as elegant as it could be - in this
>> case the beta is rather superfluous.  It is just a vector to hold
>> parameters - but since I called all the parameters theta anyway there
>> is no need for it.  e1 and e2 are the residuals from the first and
>> second equations of the system.  Sigma is a 2x2 matrix which is the
>> outer product of the two vectors of residuals.
>>
>> Kind regards,
>>
>> Alex
>>
>>
>>
>> On 9 May 2011 23:12, Mike Marchywka <marchy...@hotmail.com> wrote:
>>>
>>>
>>>
>>>
>>>
>>>
>>> ----------------------------------------
>>>> Date: Mon, 9 May 2011 22:06:38 +1200
>>>> From: alex.ols...@gmail.com
>>>> To: pda...@gmail.com
>>>> CC: r-help@r-project.org; da...@otter-rsch.com
>>>> Subject: Re: [R] maximum likelihood convergence reproducing Anderson 
>>>> Blundell 1982 Econometrica R vs Stata
>>>>
>>>> Peter said
>>>>
>>>> "Ahem! You might get us interested in your problem, but not to the
>>>> level that we are going to install Stata and Tsp and actually dig out
>>>> and study the scientific paper you are talking about. Please cite the
>>>> results and explain the differences."
>>>>
>>>> Apologies Peter, will do,
>>>>
>>>> The results which I can emulate in Stata but not (yet) in R are reported 
>>>> below.
>>>
>>> did you actually cut/paste code anywhere and is your first coefficient -.19 
>>> or -.019?
>>> Presumably typos would be one possible problem.
>>>
>>>> They come from Econometrica Vol. 50, No. 6 (Nov., 1982), pp. 1569
>>>
>>>
>>> is this it, page 1559?
>>>
>>> http://www.jstor.org/pss/1913396
>>>
>>> generally it helps if we could at least see the equations to check your
>>> code against typos ( note page number ?) in lnl that may fix part of the
>>> mystery.  Is full text available
>>> on author's site, doesn't come up on citeseer AFAICT,
>>>
>>>
>>> http://citeseerx.ist.psu.edu/search?q=blundell+1982&sort=ascdate
>>>
>>> I guess one question would be " what is beta" in lnl supposed to be -
>>> it isn't used anywhere but I will also mentioned I'm not that familiar
>>> with the R code ( I'm trying to work through this to learn R and the 
>>> optimizers).
>>>
>>> maybe some words would help, is sigma supposed to be 2x2 or 8x8 and what are
>>> e1 and e2 supposed to be?
>>>
>>>
>>>
>>>
>>>>
>>>> TABLE II - model 18s
>>>>
>>>> coef std err
>>>> p10 -0.19 0.078
>>>> p11 0.220 0.019
>>>> p12 -0.148 0.021
>>>> p13 -0.072
>>>> p20 0.893 0.072
>>>> p21 -0.148
>>>> p22 0.050 0.035
>>>> p23 0.098
>>>>
>>>> The results which I produced in Stata are reported below.
>>>> I spent the last hour rewriting the code to reproduce this - since I
>>>> am now at home and not at work :(
>>>> My results are "identical" to those published. The estimates are for
>>>> a 3 equation symmetrical singular system.
>>>> I have not bothered to report symmetrical results and have backed out
>>>> an extra estimate using adding up constraints.
>>>> I have also backed out all standard errors using the delta method.
>>>>
>>>> . ereturn display
>>>> ------------------------------------------------------------------------------
>>>> | Coef. Std. Err. z P>|z| [95% Conf. Interval]
>>>> -------------+----------------------------------------------------------------
>>>> a |
>>>> a1 | -.0188115 .0767759 -0.25 0.806 -.1692895 .1316664
>>>> a2 | .8926598 .0704068 12.68 0.000 .7546651 1.030655
>>>> a3 | .1261517 .0590193 2.14 0.033 .010476 .2418275
>>>> -------------+----------------------------------------------------------------
>>>> g |
>>>> g11 | .2199442 .0184075 11.95 0.000 .183866 .2560223
>>>> g12 | -.1476856 .0211982 -6.97 0.000 -.1892334 -.1061378
>>>> g13 | -.0722586 .0145154 -4.98 0.000 -.1007082 -.0438089
>>>> g22 | .0496865 .0348052 1.43 0.153 -.0185305 .1179034
>>>> g23 | .0979991 .0174397 5.62 0.000 .0638179 .1321803
>>>> g33 | -.0257405 .0113869 -2.26 0.024 -.0480584 -.0034226
>>>> ------------------------------------------------------------------------------
>>>>
>>>> In R I cannot get results like this - I think it is probably to do
>>>> with my inability at using the optimisers well.
>>>> Any pointers would be appreciated.
>>>>
>>>> Peter said "Are we maximizing over the same parameter space? You say
>>>> that the estimates from the paper gives a log-likelihood of 54.04, but
>>>> the exact solution clocked in at 76.74, which in my book is rather
>>>> larger."
>>>>
>>>> I meant +54.04 > -76.74. It is quite common to get positive
>>>> log-likelihoods in these system estimation.
>>>>
>>>> Kind regards,
>>>>
>>>> Alex
>>>>
>>>> On 9 May 2011 19:04, peter dalgaard  wrote:
>>>>>
>>>>> On May 9, 2011, at 06:07 , Alex Olssen wrote:
>>>>>
>>>>>> Thank you all for your input.
>>>>>>
>>>>>> Unfortunately my problem is not yet resolved.  Before I respond to
>>>>>> individual comments I make a clarification:
>>>>>>
>>>>>> In Stata, using the same likelihood function as above, I can reproduce
>>>>>> EXACTLY (to 3 decimal places or more, which is exactly considering I
>>>>>> am using different software) the results from model 8 of the paper.
>>>>>>
>>>>>> I take this as an indication that I am using the same likelihood
>>>>>> function as the authors, and that it does indeed work.
>>>>>> The reason I am trying to estimate the model in R is because while
>>>>>> Stata reproduces model 8 perfectly it has convergence
>>>>>> difficulties for some of the other models.
>>>>>>
>>>>>> Peter Dalgaard,
>>>>>>
>>>>>> "Better starting values would help. In this case, almost too good
>>>>>> values are available:
>>>>>>
>>>>>> start <- c(coef(lm(y1~x1+x2+x3)), coef(lm(y2~x1+x2+x3)))
>>>>>>
>>>>>> which appears to be the _exact_ solution."
>>>>>>
>>>>>> Thanks for the suggestion.  Using these starting values produces the
>>>>>> exact estimate that Dave Fournier emailed me.
>>>>>> If these are the exact solution then why did the author publish
>>>>>> different answers which are completely reproducible in
>>>>>> Stata and Tsp?
>>>>>
>>>>>
>>>>> Ahem! You might get us interested in your problem, but not to the level 
>>>>> that we are going to install Stata and Tsp and actually dig out and study 
>>>>> the scientific paper you are talking about. Please cite the results and 
>>>>> explain the differences.
>>>>>
>>>>> Are we maximizing over the same parameter space? You say that the 
>>>>> estimates from the paper gives a log-likelihood of 54.04, but the exact 
>>>>> solution clocked in at 76.74, which in my book is rather larger.
>>>>>
>>>>> Confused....
>>>>>
>>>>> -p
>>>>>
>>>>>
>>>>>>
>>>>>> Ravi,
>>>>>>
>>>>>> Thanks for introducing optimx to me, I am new to R.  I completely
>>>>>> agree that you can get higher log-likelihood values
>>>>>> than what those obtained with optim and the starting values suggested
>>>>>> by Peter.  In fact, in Stata, when I reproduce
>>>>>> the results of model 8 to more than 3 dp I get a log-likelihood of 
>>>>>> 54.039139.
>>>>>>
>>>>>> Furthermore if I estimate model 8 without symmetry imposed on the
>>>>>> system I reproduce the Likelihood Ratio reported
>>>>>> in the paper to 3 decimal places as well, suggesting that the
>>>>>> log-likelihoods I am reporting differ from those in the paper
>>>>>> only due to a constant.
>>>>>>
>>>>>> Thanks for your comments,
>>>>>>
>>>>>> I am still highly interested in knowing why the results of the
>>>>>> optimisation in R are so different to those in Stata?
>>>>>>
>>>>>> I might try making my convergence requirements more stringent.
>>>>>>
>>>>>> Kind regards,
>>>>>>
>>>>>> Alex
>>>>>
>>>>> --
>>>>> Peter Dalgaard
>>>>> Center for Statistics, Copenhagen Business School
>>>>> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
>>>>> Phone: (+45)38153501
>>>>> Email: pd....@cbs.dk  Priv: pda...@gmail.com
>>>>>
>>>>>
>>>>
>>>> ______________________________________________
>>>> R-help@r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>> PLEASE do read the posting guide 
>>>> http://www.R-project.org/posting-guide.html
>>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>
>> ______________________________________________
>> R-help@r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> --
> Peter Dalgaard
> Center for Statistics, Copenhagen Business School
> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
> Phone: (+45)38153501
> Email: pd....@cbs.dk  Priv: pda...@gmail.com
>
>

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to