Skip to content
This repository has been archived by the owner on Jan 10, 2025. It is now read-only.

Latest commit

 

History

History
72 lines (53 loc) · 1.8 KB

File metadata and controls

72 lines (53 loc) · 1.8 KB

Hybrid quantum-classical unsupervised data clustering based on the Self-Organizing Feature Map

Ilia D. Lazarev, Marek Narozniak, Tim Byrnes, Alexey N. Pyrkov

Unsupervised machine learning is one of the main techniques employed in artificial intelligence. Quantum computers offer opportunities to speed up such machine learning techniques. Here, we introduce an algorithm for quantum assisted unsupervised data clustering using the self-organizing feature map, a type of artificial neural network. We make a proof-of-concept realization of one of the central components on the IBM Q Experience and show that it allows us to reduce the number of calculations in a number of clusters. We compare the results with the classical algorithm on a toy example of unsupervised text clustering.

Make PDF

make -C manuscript

Run notebooks

Setup environment

python3.8 -m venv <path/to/venv>
source <path/to/venv>/bin/activate

Install dependencies

pip install -r requirements.txt

Download necessary data for NLTK

python -m nltk.downloader punkt 
python -m nltk.downloader wordnet

Create IPython Kernel

pip install ipykernel
python -m ipykernel install --name qasofm-py3.8 --user

NB! Later you can remove the kernel with the command

jupyter kernelspec remove qasofm-py3.8

Set proxy configuration for Qiskit if necessary

$ cat ~/.qiskit/qiskit-ibm.json
{
    "default-ibm-quantum": {
        "channel": "ibm_quantum",
        "private_endpoint": false,
        "proxies": {
            "urls": {
                "https": "https://<username>:<password>@<endpoint>"
            }
        },
        "token": "<token>",
        "url": "https://auth.quantum-computing.ibm.com/api"
    }
}