bma.predict {iterativeBMA} | R Documentation |
This function computes the predicted posterior probability that each test sample belongs to class 1. It assumes 2-class data, and requires the true class labels to be known.
bma.predict (newdataArr, postprobArr, mleArr)
newdataArr |
a vector consisting of the data from a test sample. |
postprobArr |
a vector consisting of the posterior probability of each BMA selected model. |
mleArr |
matrix with one row per model and one column per variable giving the maximum likelihood estimate of each coefficient for each BMA selected model. |
Let Y be the response variable (class labels for samples in our case). In Bayesian Model Averaging (BMA), the posterior probability of Y=1 given the training set is the weighted average of the posterior probability of Y=1 given the training set and model M multiplied by the posterior probability of model M given the training set, summing over a set of models M.
A real number between zero and one, representing the predicted posterior probability.
Raftery, A.E. (1995). Bayesian model selection in social research (with Discussion). Sociological Methodology 1995 (Peter V. Marsden, ed.), pp. 111-196, Cambridge, Mass.: Blackwells.
Yeung, K.Y., Bumgarner, R.E. and Raftery, A.E. (2005) Bayesian Model Averaging: Development of an improved multi-class, gene selection and classification tool for microarray data. Bioinformatics 21: 2394-2402.
brier.score
,
iterateBMAglm.train
library (Biobase) library (BMA) library (iterativeBMA) data(trainData) data(trainClass) ## training phase: select relevant genes ret.bic.glm <- iterateBMAglm.train (train.expr.set=trainData, trainClass, p=100) ## get the selected genes with probne0 > 0 ret.gene.names <- ret.bic.glm$namesx[ret.bic.glm$probne0 > 0] data (testData) ## get the subset of test data with the genes from the last iteration of bic.glm curr.test.dat <- t(exprs(testData)[ret.gene.names,]) ## to compute the predicted probabilities for the test samples y.pred.test <- apply (curr.test.dat, 1, bma.predict, postprobArr=ret.bic.glm$postprob, mleArr=ret.bic.glm$mle) ## compute the Brier Score if the class labels of the test samples are known data (testClass) brier.score (y.pred.test, testClass)