Linguaggi
English
Bengali
French
Hindi
Italian
Japanese
Korean
Malayalam
Russian
Spanish
Tamil
Turkish
Vietnamese



QuantumKernelTrainer

class QuantumKernelTrainer(quantum_kernel, loss=None, optimizer=None, initial_point=None)[sorgente]

Basi: object

Quantum Kernel Trainer. This class provides utility to train QuantumKernel feature map parameters.

Example

# Create 2-qubit feature map
qc = QuantumCircuit(2)

# Vectors of input and trainable user parameters
input_params = ParameterVector("x_par", 2)
training_params = ParameterVector("θ_par", 2)

# Create an initial rotation layer of trainable parameters
for i, param in enumerate(training_params):
    qc.ry(param, qc.qubits[i])

# Create a rotation layer of input parameters
for i, param in enumerate(input_params):
    qc.rz(param, qc.qubits[i])

quant_kernel = TrainableFidelityQuantumKernel(
    feature_map=qc,
    training_parameters=training_params,
)

loss_func = ...
optimizer = ...
initial_point = ...

qk_trainer = QuantumKernelTrainer(
                                quantum_kernel=quant_kernel,
                                loss=loss_func,
                                optimizer=optimizer,
                                initial_point=initial_point,
                                )
qkt_results = qk_trainer.fit(X_train, y_train)
optimized_kernel = qkt_results.quantum_kernel
Parametri:
  • quantum_kernel (TrainableKernel) – QuantumKernel to be trained

  • loss (str or KernelLoss) – Loss functions available via string: {“svc_loss”: SVCLoss()}. If a string is passed as the loss function, then the underlying KernelLoss object will exhibit default behavior.

  • optimizer (Optional[Optimizer]) – An instance of Optimizer to be used in training. Since no analytical gradient is defined for kernel loss functions, gradient-based optimizers are not recommended for training kernels.

  • initial_point (Optional[Sequence[float]]) – Initial point from which the optimizer will begin.

Solleva:

ValueError – unknown loss function

Attributes

initial_point

Return initial point

loss

Return the loss object.

optimizer

Return an optimizer to be used in training.

quantum_kernel

Return the quantum kernel object.

Methods

fit(data, labels)

Train the QuantumKernel by minimizing loss over the kernel parameters.