Qlearnkit python library
Qlearnkit is a simple python library implementing well-know supervised and unsupervised machine learning algorithms for a gated quantum computer, built with Qiskit.
Installation
We recommend installing qlearnkit with pip
pip install qlearnkitNote: pip will install the latest stable qlearnkit.
However, the main branch of qlearnkit is in active development. If you want to test the latest scripts or functions please refer to development notes.
Getting started with Qlearnkit
Now that Qlearnkit is installed, it's time to begin working with the Machine Learning module.
Let's try an experiment using the QKNN Classifier algorithm to train and test samples from a
data set to see how accurately the test set can be classified.
from qlearnkit.algorithms import QKNeighborsClassifier
from qlearnkit.encodings import AmplitudeEncoding
from qiskit import BasicAer
from qiskit.utils import QuantumInstance, algorithm_globals
from qlearnkit.datasets import load_iris
seed = 42
algorithm_globals.random_seed = seed
train_size = 32
test_size = 8
n_features = 4 # all features
# Use iris data set for training and test data
X_train, X_test, y_train, y_test = load_iris(train_size, test_size, n_features)
quantum_instance = QuantumInstance(BasicAer.get_backend('qasm_simulator'),
shots=1024,
optimization_level=1,
seed_simulator=seed,
seed_transpiler=seed)
encoding_map = AmplitudeEncoding(n_features=n_features)
qknn = QKNeighborsClassifier(
n_neighbors=3,
quantum_instance=quantum_instance,
encoding_map=encoding_map
)
qknn.fit(X_train, y_train)
print(f"Testing accuracy: "
f"{qknn.score(X_test, y_test):0.2f}")Development notes
After cloning this repository, create a virtual environment
python3 -m venv .venvand activate it
source .venv/bin/activate now you can install the requirements
pip install -r requirements-dev.txtnow run the tests
python -m pytest