Computes the Tensor Product Pair Kernel (TPPK).
Formally, it computes
It is defined on pairs of inputs and a subkernel
. The subkernel has to be given on initialization. The pairs are specified via indizes (ab)using 2-dimensional integer features.
Its feature space
is the tensor product of the feature spaces of the subkernel
on its input.
It is often used in bioinformatics, e.g., to predict protein-protein interactions.
Definition at line 35 of file TensorProductPairKernel.h.

Public Member Functions | |
| CTensorProductPairKernel (int32_t size, CKernel *subkernel) | |
| CTensorProductPairKernel (CSimpleFeatures< int32_t > *l, CSimpleFeatures< int32_t > *r, CKernel *subkernel) | |
| virtual | ~CTensorProductPairKernel () |
| virtual bool | init (CFeatures *l, CFeatures *r) |
| virtual bool | load_init (FILE *src) |
| virtual bool | save_init (FILE *dest) |
| virtual EKernelType | get_kernel_type () |
| virtual const char * | get_name () const |
Protected Member Functions | |
| virtual float64_t | compute (int32_t idx_a, int32_t idx_b) |
Protected Attributes | |
| CKernel * | subkernel |
| CTensorProductPairKernel::CTensorProductPairKernel | ( | int32_t | size, | |
| CKernel * | subkernel | |||
| ) |
constructor
| size | cache size | |
| subkernel | the subkernel |
Definition at line 17 of file TensorProductPairKernel.cpp.
| CTensorProductPairKernel::CTensorProductPairKernel | ( | CSimpleFeatures< int32_t > * | l, | |
| CSimpleFeatures< int32_t > * | r, | |||
| CKernel * | subkernel | |||
| ) |
constructor
| l | features of left-hand side | |
| r | features of right-hand side | |
| subkernel | the subkernel |
Definition at line 23 of file TensorProductPairKernel.cpp.
| CTensorProductPairKernel::~CTensorProductPairKernel | ( | ) | [virtual] |
Definition at line 30 of file TensorProductPairKernel.cpp.
| float64_t CTensorProductPairKernel::compute | ( | int32_t | idx_a, | |
| int32_t | idx_b | |||
| ) | [protected, virtual] |
compute kernel function for features a and b idx_{a,b} denote the index of the feature vectors in the corresponding feature object
| idx_a | index a | |
| idx_b | index b |
Implements CKernel.
Definition at line 53 of file TensorProductPairKernel.cpp.
| virtual EKernelType CTensorProductPairKernel::get_kernel_type | ( | ) | [virtual] |
return what type of kernel we are
Implements CKernel.
Definition at line 81 of file TensorProductPairKernel.h.
| virtual const char* CTensorProductPairKernel::get_name | ( | ) | const [virtual] |
return the kernel's name
Implements CSGObject.
Definition at line 87 of file TensorProductPairKernel.h.
initialize kernel
| l | features of left-hand side | |
| r | features of right-hand side |
Reimplemented from CSimpleKernel< int32_t >.
Definition at line 36 of file TensorProductPairKernel.cpp.
| bool CTensorProductPairKernel::load_init | ( | FILE * | src | ) | [virtual] |
load kernel init_data
| src | file to load from |
Implements CKernel.
Definition at line 43 of file TensorProductPairKernel.cpp.
| bool CTensorProductPairKernel::save_init | ( | FILE * | dest | ) | [virtual] |
save kernel init_data
| dest | file to save to |
Implements CKernel.
Definition at line 48 of file TensorProductPairKernel.cpp.
CKernel* CTensorProductPairKernel::subkernel [protected] |
the subkernel
Definition at line 102 of file TensorProductPairKernel.h.