next up previous contents
Next: Statistical Inference Process Up: Why Is This Statistical Previous: Why Use Any Statistical   Contents

Why Write New Software for the Statistical Inference?

Having made the case for using a statistical process to obtain information, there remains a need to explain why the results were analysed using a new program, written by the author of this thesis, implementing a Markov chain Monte Carlo method, rather than using computer codes already in the public domain. Computer codes for statistical inference already in the public domain (or at least, those known to the author,) such as Gnuplot [87] and Origin [88], typically perform both model comparison and parameter estimation based on the $\chi^2$ statistic for the badness of fit of a model to the data,

\begin{displaymath}
\chi^2 = \sum_i\left(\frac{(x_i-y_i)^2}{\sigma_i^2}\right)\textrm{,}
\end{displaymath} (5.17)

where $i$ indexes the experimental conditions where some measurements have been made, $x_i$ is the measured value obtained in conditions $i$, $y_i$ is the value predicted by the model in conditions $i$, and $\sigma_i$ is the quoted random error on measurement $x_i$. $y_i$, and sometimes $\sigma_i$, depend on the values chosen for the model's adjustable parameters, and on which of the distinct, discrete models available is being considered; hence, the badness of fit $\chi^2$ also depends on these influences. The measure of goodness of fit used in Bayesian statistics (and in some non-Bayesian methods) is [89] the likelihood function $P(D\vert M,\mathbf{P})$, which is the conditional probability density distribution over the space of values of the set $D$ of measurements, given a model $M$ and a set of model parameter values $\mathbf{P}$; the likelihood, like $\chi^2$, depends on the models that are chosen. On the common [90] assumption that this probability distribution, as a function of any single measured value, is Gaussian in shape, $\chi^2$ has a clear meaning in Bayesian statistics:
\begin{displaymath}
P(D\vert M,\mathbf{P}) =
\frac{1}{\sqrt{2^N\pi^N\prod_i(\sigma_i^2)}}\exp{}\left(-\frac{\chi^2}{2}\right)\textrm{,}
\end{displaymath} (5.18)

i.e. $\chi^2$ is proportional to the logarithm of the likelihood.

The output given by the typical parameter estimation and model comparison software already in the public domain consists of:

The first reason for deciding against using codes of this form is that output of a best-fit goodness of fit for model comparison leaves the user with a problem of how to implement Occam's razor; Gnuplot's adjusted $\chi^{2*}$ attempts to implement Occam's razor by penalizing models for having many adjustable parameters. However, if, like the author, one believes that the purpose of Occam's razor is to prevent a model from using information from experimental results to fine-tune its parameters, then recycling the same information to act as evidence for itself against other models, then using an Occam's razor based on the number of adjustable parameters raises the possibility of unfairly penalizing a model that, although it has many adjustable parameters, does not fine-tune them very much on the basis of the experimental data, i.e. that is a good fit to the experimental results over a wide range of parameter values. As it will transpire, this is precisely the situation encountered with the experiments and models central to this thesis. Bayesian methods implement [85,52] Occam's razor automatically, by comparing models' average likelihoods over all values of their parameters (known as marginal likelihoods,) weighted according to the pre-experiment plausibility function encoded in the prior probability distribution, instead of comparing their maximum likelihoods; this directly penalises [85,52] models for fine-tuning their parameters, not for merely having parameters to fine-tune.

The author is not claiming that it would be impossible to implement a fair Occam's razor using, for example, Gnuplot. Indeed, since completing the analysis of the data presented in this thesis, the author has, in the course of a separate experimental project, devised a formula for obtaining a marginal likelihood from the outputs of Gnuplot. However, some programming is required to implement this.

The second reason for deciding against using the established, publicly available codes is that parameter estimation by a least-squares method has a number of features, some of which tend to render it unsuitable for use in the present project:

To summarize, there are certain obstacles to the use of computer codes already in the public domain to undertake a valid analysis of the experimental data presented in this project. Although methods of working around these obstacles could be devised, these methods entail some mathematical and computational complication, and therefore compromise the advantage of simplicity that would be the motivation for choosing existing computer codes. Therefore, the author has, for the purposes of this project, chosen instead to use a fundamentally Bayesian Markov chain Monte Carlo method for parameter estimation and model comparison, and to code this method anew, in the high-level programming language Perl; the choice of such a high-level language may recover some of the simplicity lost by choosing to write new code.

Having explained why the inference method has been chosen, it is time to undertake parameter estimation and model comparison according to that method.


next up previous contents
Next: Statistical Inference Process Up: Why Is This Statistical Previous: Why Use Any Statistical   Contents
Daniel Christopher Hatton 2004-11-30