Random walk kernel
Description
Methods to compute the random walk kernel (Smola and Kondor, 2003)
Usage
1 2 3 4 5 6 7 8  ## S4 method for signature 'matrix'
rw.kernel(W, a = 2)
## S4 method for signature 'graph'
rw.kernel(W, a = 2)
## S4 method for signature 'graph'
p.step.rw.kernel(RW, p = 2)
## S4 method for signature 'matrix'
p.step.rw.kernel(RW, p = 2)

Arguments
W 
a square symmetric matrix with positive values or an object of the class graphAM or graphNEL of the package graph 
RW 
matrix. It must be a random walk kernel matrix 
a 
numeric. It is correlated to the probability of remaining at the same vertex. Larger a, larger the probability (def. 2) 
p 
integer. Number of steps (def: p=2) 
Details
rw.kernel
methods computes the one step random walk kernel RW, i.e.:
RW = (a1)I + D^{\frac{1}{2}} * W * D^{\frac{1}{2}}
where I is the identity matrix, W is the weighted adjacency matrix of an undirected graph, and D is a diagonal matrix with D_{ii} = ∑_j W_{ij}
p.step.rw.kernel
methods compute the pstep random walk kernel pRW, i.e.:
pRW = RW^p
Value
rw.kernel
: A numeric square matrix representing a onestep random walk kernel matrix
p.step.rw.kernel
: A numeric square matrix representing a pstep random walk kernel matrix
Methods
signature(W = "graph")

rw.kernel
computes the random walk kernel starting from a graph of class graph (hence including objects of class graphAM and graphNEL from the package graph) signature(W = "matrix")

rw.kernel
computes the random walk kernel starting from a weighted adjacency matrix representing the graph signature(RW = "graph")

p.step.rw.kernel
computes the a pstep random walk kernel starting from a graph of class graph (hence including objects of class graphAM and graphNEL from the package graph) signature(RW = "matrix")

p.step.rw.kernel
computes the pstep random walk kernel starting from a onestep random walk kernel matrix
Examples
1 2 3 4 5 6 7  # Random walk kernel computation using Functional Interaction network data
library(bionetdata);
data(FIN.data);
W < as.matrix(FIN.data);
K < rw.kernel(W);
# this a 2step random walk kernel
K2 < p.step.rw.kernel(K, p=2);
