pyriemann_qiskit.classification.ContinuousQIOCEClassifier

class pyriemann_qiskit.classification.ContinuousQIOCEClassifier(n_reps=3, optimizer=None, create_mixer=None, max_features=10, quantum_instance=None, random_state=None)[source]

QAOA classifier with batch training using angle encoding.

This classifier inherits from QAOACVAngleOptimizer and trains a single QAOA circuit on all training vectors simultaneously. Each component of the input vector is encoded as a qubit, and the circuit learns to map input patterns to class labels.

Unlike QAOACVAngleOptimizer which optimizes each component independently, this classifier trains on the entire training set at once, learning discriminative patterns for classification.

Parameters:
  • n_reps (int, default=3) – Number of QAOA repetitions (layers).

  • optimizer (Optimizer, default=L_BFGS_B()) – Classical optimizer for circuit parameters. L-BFGS-B is recommended for its efficiency with gradient-based optimization.

  • create_mixer (callable, default=create_mixer_rotational_X_gates(0)) – Function to create mixer operator.

  • max_features (int, default=10) – Maximum number of features (qubits) to use. If input has more features, dimensionality reduction should be applied.

  • quantum_instance (QuantumInstance, default=None) – Quantum backend instance. If None, uses statevector simulation.

  • random_state (int, RandomState or None, default=None) – Seed for reproducible parameter initialisation (sklearn convention).

classes_

Unique class labels.

Type:

ndarray

n_features_

Number of features in training data.

Type:

int

optim_params_

Optimised γ (cost/mixer) circuit parameters.

Type:

ndarray

training_loss_history_

Loss values during training.

Type:

list

X_min_

Minimum values for feature normalisation.

Type:

ndarray

X_max_

Maximum values for feature normalisation.

Type:

ndarray

X_train_

Normalised training data.

Type:

ndarray

y_train_

Training labels (binary: 0 or 1).

Type:

ndarray

state_vector_

State vector at optimal parameters for the first training sample. Stored for interface compatibility with the parent class; not used in prediction.

Type:

Statevector

Notes

Added in version 0.5.0.

Changed in version 0.6.0: Moved to algorithms sub-package

Examples

>>> from pyriemann_qiskit.classification import ContinuousQIOCEClassifier
>>> clf = ContinuousQIOCEClassifier(n_reps=2, max_features=5)
>>> clf.fit(X_train, y_train)
>>> y_pred = clf.predict(X_test)
__init__(n_reps=3, optimizer=None, create_mixer=None, max_features=10, quantum_instance=None, random_state=None)[source]

Examples using pyriemann_qiskit.classification.ContinuousQIOCEClassifier

QAOA circuit depth ablation study — n_reps vs AUC and training time

QAOA circuit depth ablation study — n_reps vs AUC and training time

Optimizer ablation study for ContinuousQIOCEClassifier

Optimizer ablation study for ContinuousQIOCEClassifier