Homework 4


due in class, Monday May 21





  1. Using the log-transformed scallop data, fit an anisotropic Bayesian convolution model. You can either rotate the data and use an independent normal kernel with two different standard deviation parameters, or you can use a bivariate normal kernel with the appropriate correlation (and unknown major and minor axes, or other two unknown parameters in your choice of parameterization) on the unrotated data. You will need to specify the grid for your background process and the priors for your parameters. You could either fit a constant mean parameter, or keep things simple by just subtracting the mean of the data and fitting a zero-mean process. Compare the resulting fit to that from earlier approaches, and compare the posterior for the ratio between the major and minor axes of the kernel to that of the kriging ellipse in the original article.

  2. Use an intrinsic Markov random field prior to model the artery image. Keep things simple and use a symmetric first-order field, so that you only need to fit the MRF, its precision, and the data precision. Well, try fitting both precisions. Because the MRF is improper, you may need a highly informative prior for the data precision. Even then, you may find that the MRF precision gets very large and the data precision very small (so that it fits a smooth field and ignores the data), or the reverse (so that it fits the data exactly and ignores any possible spatial structure). See if you can find a prior specification that gives some smoothing without going to either extreme. If not, try fixing the data precision at some reasonable value and just fitting the MRF and the MRF precision. Make side-by-side plots of the original image and the posterior mean field. Also plot two realizations of the posterior MRF. (The first pair should be rather similar to each other, the second pair should be different from each other and from the previous pair, in particular less smooth.)

    You can read the data into a vector and check the image with:

    artery=scan("artery.txt")
    image(1:64,1:64,matrix(artery,64,64),col=gray(1:129/129))