Skip to main content
2 of 5
added 44 characters in body
Vitaliy Kaurov
  • 73.4k
  • 9
  • 206
  • 365

Automating exhaustive search of analytic statistical models fitting data

Friends, especially those with math and stats background, perhaps you could enlighten. We face the following general problem quite often. Perhaps as a community we should find solution working especially well inside Wolfram ecosystem. Moreover - I think some of you might have such strategies - would be nice to share with community.

FindDistribution is an excellent automation for search of analytic statistical models fitting data. But it is machine learning based and we cannot control the algorithm there. I wonder if we can build a simple but exhaustive algorithm taking in account all available in Wolfram Language statistical distributions (see related).

For the data consider any that is listed in the APPLICATIONS section of docs on FindDistribution. Or any data you like. I suggest the following idea for a start:

  • Take all set of analytical distributions in Wolfram Language (suitable to your data - e.g. all continuous or all discrete) -- also related

  • Use EstimatedDistribution or FindDistributionParameters to fit all of them

  • Run some tests - like PearsonChiSquareTest or DistributionFitTest or anything similar and find top models according to some criteria

  • If even top models are still far from a good fit use things like MixtureDistribution and TransformedDistribution etc. to derive better models

  • We could think of a criteria that chooses models of smaller complexity - in terms of fitted parameters number e.g.

This is very blueprint-ish :-) I lack the deeper vision that takes in combination both: stats knowledge and Wolfram ecosystem structure. I hope some of you got the insight.

Feel free to demonstrate any strategy on any simple data I described above. Thsi might give some scope:

http://reference.wolfram.com/language/guide/ProbabilityAndStatistics.html

Vitaliy Kaurov
  • 73.4k
  • 9
  • 206
  • 365