0

My question might be rather basic, theoretical. I am running spatial and spatial-temporal bayesian models in INLA. I have areal data and a continuous response variable with spatial and temporal dependencies. I've got error messages during model runs, sometimes they point to optimisation that failed or to bad initial parameters. Anyway, I've got a comment from INLA developers that my problem is in the "singularity of the model", that they way I construct the model, it easily becomes singular.

My question is banal: what does it mean that the model is singular? I understand that matrices can be singular, and that's a problem in modelling but in this case, it means something else. Would you please give some hints or links to resources with explanations on the matter?

For particularly interested and familiar with INLA syntax, here an example of my model:

form7 <-  total_catch_ton ~ sea_area + percent_wforce +distance + popgrowth + aqua_prod_ton +
  f(ID,
    model = "bym2",
    hyper=HyperBYM2,
    graph = seafood.sel.path,
    adjust.for.con.comp = TRUE,
    scale.model = TRUE,
    constr = TRUE) +
  f(year1,
    model="rw2") +
  f(year2,
    model = "iid") +
  f(id.year, model = "iid")


M7 <-inla(formula = form7,
          family = "tweedie", scale = ,
          data=seafood,
    verbose=T,safe=T,
    control.fixed=list(prec=1,prec.intercept=1),
    control.compute = list(dic = TRUE,
                           waic = TRUE))


```
marina_esp
  • 33
  • 5

1 Answers1

1

There are many possibilities the developers might want to refer to when using the word "singular".

First, they could use "singular" in the sense of "really very out of the ordinary", as in "not yet contained in our unit tests".

Next, as you already mentioned, your design matrix could be degenerate, i.e. not of maximal rank, and that could be called "singular". Still, a program should be able to work with those situations gracefully.

Also, when you do e.g. logistic regression without regularization on perfectly separable data, your model weight vector would run towards infinity, which would be "singular".

If you fit a Gaussian mixture without proper regularization, some (or all) of the modes could become "delta functions", i.e. "singular".

In general, if you think of a model as a family of pdfs and some members of the family are singular pdfs (e.g. contain point masses in continuous variables), and your optimization converges against such a singular pdf, you would have a "singular" situation.

So there are many possibilities, but I think a program should be able to handle each one of them gracefully.

frank
  • 1,434
  • 1
  • 8
  • 13
  • Thank you for answering, @frank! I need to look into the possible explanations you suggested, still a bit confused about this singularity problem. But I see that the reasons for this problem can be many – marina_esp Feb 18 '22 at 09:41