Skip to content

A python library for quantum machine learning, built with qiskit

License

Notifications You must be signed in to change notification settings

akatief/qlearnkit

 
 

Repository files navigation

Qlearnkit python library

Python Versions License Build Upload Python Package PypI Versions

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 qlearnkit

Note: 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 .venv

and activate it

source .venv/bin/activate 

now you can install the requirements

pip install -r requirements-dev.txt

now run the tests

python -m pytest

About

A python library for quantum machine learning, built with qiskit

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%