do.loo.RANKS {RANKS} | R Documentation |
RANKS leave-one-out experiments with multiple classes
Description
High level function to perform RANKS leave one out (loo) experiments with mutliple classes.
Usage
do.loo.RANKS(score = eav.score, compute.kernel = TRUE, kernel = rw.kernel, a = 2,
k = 19, d = 2, p = 1, sparsify = FALSE, norm = FALSE, data, labels, output.name,
data.dir, labels.dir, output.dir)
Arguments
score |
function. It must be a kernel-based score method: - eav.score (default) - NN.score - KNN.score - WSLD.score |
compute.kernel |
logical. If TRUE (def.) a kernel matrix is computed from data according to the choice of the function kernel, otherwise the data matrix is used as it is. |
kernel |
kernel method or function (def. rw.kernel) |
a |
kernel parameter (def. 2) |
k |
number of neighbours for KNN.score. It is meaningful only for kNN (def.19) |
d |
integer. Coefficient of linear decay for the WSLD score. It is meaningful only for the WSLD score (def.2) |
p |
number of steps of the RW kernel (def. 1) |
sparsify |
boolean. If TRUE the input matrix is sparsified using Sparsify.matrix from the package NetpreProc (def: FALSE) |
norm |
logical. If TRUE for each class the score is normalized in [0,1], otherwise the raw scores are maintained (default). |
data |
name of the network data set to be loaded (without rda extension). It must be an .rda file containing the adjiacency matrix of the graph. By default it assumes that it is in the data.dir directory |
labels |
name of the target labels (without rda extension). It must be an .rda file containing the label matrix of the examples. By default it assumes that it is in the net.dir directory |
output.name |
name of the output file (without rda extension). Other informations including the learning parameters are added in the name of the file |
data.dir |
relative path to the directory where the adjiacency matrix is stored |
labels.dir |
relative path to directory where the label matrix is stored |
output.dir |
relative path to directory where the results are stored. Note that data and labels must have the same number of rows and in the same order. Moreover if any label column corresponds to any GO root term, this is eliminated to avoid prediction of GO root nodes. |
Details
High level function to perform loo experiments with multiple classes using RANKS.
It performs a loo on a given data set, and scores, AUC and Precision at a given recall results for multiple classes are generated.
Graph data are read from a matrix representing the adjiacency matrix of the graph stored as a .rda file. The labels are read from a matrix having examples as rows and classes as columns stored as a .rda file. If M
is the label matrix, then M[i,j]=1
, if example i
is annotated with class j
, otherwise M[i,j] = 0
.
Results are included in matrices representing Scores, AUC and precision at a given recall results stored as .rda files.
Value
3 rda files stored in the output.dir directory:
Scores results |
A matrix with examples on rows and classes on columns representing the computed scores for each example and for each considered class |
AUC results |
AUC results files computed through |
Precision at given recall results |
computed through |
The name of the Score file starts with Score.loo, of the AUC file with AUC.loo, and of the Precision at given recall file with PXR.loo. Other learning parameters are appended to the name of the file.
See Also
Examples
# Yeast prediction of 177 FunCat classes by leave-one-out using STRING data
# data obtained from the bionetdata package from CRAN.
# See the AUC and Precision/recall results in the Results directory
library(bionetdata);
dd=tempdir();
rr=tempdir();
data(Yeast.STRING.data);
data(Yeast.STRING.FunCat);
save(Yeast.STRING.data, file=paste(dd,"/net.rda", sep=""));
save(Yeast.STRING.FunCat, file=paste(dd,"/labels.rda", sep=""));
do.loo.RANKS(data.dir=dd, labels.dir=dd, output.dir=rr, data="/net",
labels="/labels", output.name="Yeast.loo");
# another leave-one-out prediction using KNN score and 2 steps random walk kernel
do.loo.RANKS(score = KNN.score, k=3, p=2, data.dir=dd, labels.dir=dd, output.dir=rr,
data="/net", labels="/labels", output.name="Yeast.loo");