grakel.OddSth

class grakel.OddSth(n_jobs=None, normalize=False, verbose=False, h=None)[source][source]

ODD-Sth kernel as proposed in [DSMNS12].

Parameters
hint, default=None

Maximum (single) dag height. If None there is no restriction.

Attributes
_nxint

The number of parsed inputs on fit.

_nyint

The number of parsed inputs on transform.

_phi_xnp.array, n_dim=2

A numpy array corresponding all the frequency values for each vertex, coresponding to the fitted data, in the resulting bigDAG of the fitted and transformed data.

_phi_ynp.array, n_dim=2

A numpy array corresponding all the frequency values for each vertex, corresponding to the transformed data, in the resulting bigDAG of the fitted and transformed data.

_Cnp.array, n_dim=1

A numpy array corresponding to the vertex depth of each node, in the resulting bigDAG of the fitted and transformed data.

Methods

diagonal(self)

Calculate the kernel matrix diagonal of the fitted data.

fit(self, X[, y])

Fit a dataset, for a transformer.

fit_transform(self, X[, y])

Fit and transform, on the same dataset.

get_params(self[, deep])

Get parameters for this estimator.

initialize(self)

Initialize all transformer arguments, needing initialization.

pairwise_operation(self, x, y)

Calculate a pairwise kernel between two elements.

parse_input(self, X)

Parse and create features for the propagation kernel.

set_params(self, \*\*params)

Call the parent method.

transform(self, X)

Calculate the kernel matrix, between given and fitted dataset.

Initialise an odd_sth kernel.

Attributes
X

Methods

diagonal(self)

Calculate the kernel matrix diagonal of the fitted data.

fit(self, X[, y])

Fit a dataset, for a transformer.

fit_transform(self, X[, y])

Fit and transform, on the same dataset.

get_params(self[, deep])

Get parameters for this estimator.

initialize(self)

Initialize all transformer arguments, needing initialization.

pairwise_operation(self, x, y)

Calculate a pairwise kernel between two elements.

parse_input(self, X)

Parse and create features for the propagation kernel.

set_params(self, \*\*params)

Call the parent method.

transform(self, X)

Calculate the kernel matrix, between given and fitted dataset.

__init__(self, n_jobs=None, normalize=False, verbose=False, h=None)[source][source]

Initialise an odd_sth kernel.

diagonal(self)[source][source]

Calculate the kernel matrix diagonal of the fitted data.

Parameters
None.
Returns
X_diagnp.array

The diagonal of the kernel matrix, of the fitted. This consists of each element calculated with itself.

fit(self, X, y=None)[source]

Fit a dataset, for a transformer.

Parameters
Xiterable

Each element must be an iterable with at most three features and at least one. The first that is obligatory is a valid graph structure (adjacency matrix or edge_dictionary) while the second is node_labels and the third edge_labels (that fitting the given graph format). The train samples.

yNone

There is no need of a target in a transformer, yet the pipeline API requires this parameter.

Returns
selfobject
Returns self.
fit_transform(self, X, y=None)[source][source]

Fit and transform, on the same dataset.

Parameters
Xiterable

Each element must be an iterable with at most three features and at least one. The first that is obligatory is a valid graph structure (adjacency matrix or edge_dictionary) while the second is node_labels and the third edge_labels (that fitting the given graph format). If None the kernel matrix is calculated upon fit data. The test samples.

yObject, default=None

Ignored argument, added for the pipeline.

Returns
Knumpy array, shape = [_nx, _nx]

corresponding to the kernel matrix, a calculation between all pairs of graphs between target an features

get_params(self, deep=True)[source]

Get parameters for this estimator.

Parameters
deepbool, default=True

If True, will return the parameters for this estimator and contained subobjects that are estimators.

Returns
paramsmapping of string to any

Parameter names mapped to their values.

initialize(self)[source][source]

Initialize all transformer arguments, needing initialization.

pairwise_operation(self, x, y)[source]

Calculate a pairwise kernel between two elements.

Parameters
x, yObject

Objects as occur from parse_input.

Returns
kernelnumber

The kernel value.

parse_input(self, X)[source][source]

Parse and create features for the propagation kernel.

Parameters
Xiterable

For the input to pass the test, we must have: Each element must be an iterable with at most three features and at least one. The first that is obligatory is a valid graph structure (adjacency matrix or edge_dictionary) while the second is node_labels and the third edge_labels (that correspond to the given graph format). A valid input also consists of graph type objects.

Returns
outtuple

A tuple corresponding to the calculated bigDAG.

set_params(self, **params)[source]

Call the parent method.

transform(self, X)[source][source]

Calculate the kernel matrix, between given and fitted dataset.

Parameters
Xiterable

Each element must be an iterable with at most three features and at least one. The first that is obligatory is a valid graph structure (adjacency matrix or edge_dictionary) while the second is node_labels and the third edge_labels (that fitting the given graph format). If None the kernel matrix is calculated upon fit data. The test samples.

Returns
Knumpy array, shape = [n_targets, n_input_graphs]

corresponding to the kernel matrix, a calculation between all pairs of graphs between target an features

Bibliography

DSMNS12

Giovanni Da San Martino, Nicolo Navarin, and Alessandro Sperduti. A Tree-Based Kernel for Graphs. In Proceedings of the 2012 SIAM International Conference on Data Mining. 2012.