grakel.LovaszTheta#

class grakel.LovaszTheta(n_jobs=None, normalize=False, verbose=False, random_state=None, n_samples=50, subsets_size_range=(2, 8), max_dim=None, base_kernel=None)[source][source]#

Lovasz theta kernel as proposed in [JJDB14].

Parameters:
X,Yvalid-graph-format

The pair of graphs on which the kernel is applied.

n_samplesint, default=50

The number of samples.

subsets_size_rangetuple, len=2, default=(2,8)

(min, max) size of the vertex set of sampled subgraphs.

random_stateRandomState or int, default=None

A random number generator instance or an int to initialize a RandomState as a seed.

base_kernelfunction (np.1darray, np.1darray -> number), default=None

The applied metric between the lovasz_theta numbers of subgraphs. If None \(f(x,y) = x*y\)

max_dimint, default=None

The maximum graph size that can appear both in fit or transform. When None, max_dim is calculated based on the size of the biggest graph on fit. This can lead to a crash in case a graph appears in transform with size bigger than in fit.

Attributes:
d_int,

The maximum matrix dimension of fit plus 1. Signifies the number of features assigned for lovasz labelling.

random_state_RandomState

A RandomState object handling all randomness of the class.

Methods

diagonal()

Calculate the kernel matrix diagonal of the fit/transformed data.

fit(X[, y])

Fit a dataset, for a transformer.

fit_transform(X[, y])

Fit and transform, on the same dataset.

get_metadata_routing()

Get metadata routing of this object.

get_params([deep])

Get parameters for this estimator.

initialize()

Initialize all transformer arguments, needing initialization.

pairwise_operation(x, y)

Lovasz theta kernel as proposed in [JJDB14].

parse_input(X)

Parse and create features for lovasz_theta kernel.

set_output(*[, transform])

Set output container.

set_params(**params)

Call the parent method.

transform(X)

Calculate the kernel matrix, between given and fitted dataset.

Initialise a lovasz_theta kernel.

Attributes:
X

Methods

diagonal()

Calculate the kernel matrix diagonal of the fit/transformed data.

fit(X[, y])

Fit a dataset, for a transformer.

fit_transform(X[, y])

Fit and transform, on the same dataset.

get_metadata_routing()

Get metadata routing of this object.

get_params([deep])

Get parameters for this estimator.

initialize()

Initialize all transformer arguments, needing initialization.

pairwise_operation(x, y)

Lovasz theta kernel as proposed in [JJDB14].

parse_input(X)

Parse and create features for lovasz_theta kernel.

set_output(*[, transform])

Set output container.

set_params(**params)

Call the parent method.

transform(X)

Calculate the kernel matrix, between given and fitted dataset.

__init__(n_jobs=None, normalize=False, verbose=False, random_state=None, n_samples=50, subsets_size_range=(2, 8), max_dim=None, base_kernel=None)[source][source]#

Initialise a lovasz_theta kernel.

Bibliography#

[JJDB14] (1,2,3,4,5)

Fredrik Johansson, Vinay Jethava, Devdatt Dubhashi, and Chiranjib Bhattacharyya. Global graph kernels using geometric embeddings. In Proceedings of the 31st International Conference on Machine Learning, 694–702. 2014.