Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, is already up and running.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: "brute force" procedure for ml init

From   Stas Kolenikov <>
Subject   Re: st: "brute force" procedure for ml init
Date   Mon, 8 Mar 2010 13:13:13 -0600

On Mon, Mar 8, 2010 at 12:20 PM, Ian Breunig <> wrote:

> I need to conduct a "brute force" procedure to search for initial
> parameter values for a MLE with a relatively large amount of
> parameters.  I'd like to to be able to use some sort of loop with a
> program to do this.  For example, I believe that I would like to start
> by randomly drawing (kx1) starting values using a random number
> generator for a uniform distribution on the unit interval (can I do
> this using the "ml init" command?), then maximize.  Then repeat this
> process several times.

How about this:

local q = # of random starts
local p = dimension of the parameter vector
forvalues i=1/`q' {
   matrix from = J(1,`p',0)
   forvalues j = 1/`p' {
      matrix from[1,`j'] = uniform()
   ml <definition with the name of the evaluator, etc.>
   ml trace on
   ml init from, copy
   ml search
   * if you like
   ml maximize

If you believe your surface looks weird with many narrow peaks, then the
asymptotic theory that yields normality of the estimates is hardly
applicable. You'd still be able to get some sort of estimates, but (i) you
don't really know which of the local maxima gives rise to consistent
estimates, and (ii) you won't be able to conduct inference with asymptotic
standard errors and chi-square tests.

Stas Kolenikov, also found at
Small print: I use this email account for mailing lists only.

*   For searches and help try:

© Copyright 1996–2016 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index