- class QuantumKernel(feature_map=None, enforce_psd=True, batch_size=900, quantum_instance=None)¶
The general task of machine learning is to find and study patterns in data. For many algorithms, the datapoints are better understood in a higher dimensional feature space, through the use of a kernel function:\[K(x, y) = \langle f(x), f(y)\rangle.\]
Here K is the kernel function, x, y are n dimensional inputs. f is a map from n-dimension to m-dimension space. \(\langle x, y \rangle\) denotes the dot product. Usually m is much larger than n.
The quantum kernel algorithm calculates a kernel matrix, given datapoints x and y and feature map f, all of n dimension. This kernel matrix can then be used in classical machine learning algorithms such as support vector classification, spectral clustering or ridge regression.
QuantumCircuit]) -- Parameterized circuit to be used as the feature map. If None is given, the ZZFeatureMap is used with two qubits.
bool) -- Project to closest positive semidefinite matrix if x = y. Only enforced when not using the state vector simulator. Default True.
int) -- Number of circuits to batch together for computation. Default 1000.
None]) -- Quantum Instance or Backend
Returns feature map
Returns quantum instance
construct_circuit(x[, y, measurement, ...])
Construct inner product circuit for given datapoints and feature map.
Construct kernel matrix for given data and feature map