This repository has been archived by the owner on Jan 10, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
fbc704d
commit d9903d1
Showing
1 changed file
with
68 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
# Hybrid quantum-classical unsupervised data clustering based on the Self-Organizing Feature Map | ||
|
||
Quantum assisted Self-Organizing Feature Map | ||
|
||
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 | ||
|
||
```shell | ||
python3.8 -m venv <path/to/venv> | ||
source <path/to/venv>/bin/activate | ||
``` | ||
|
||
|
||
### Install dependencies | ||
|
||
```shell | ||
pip install -r requirements.txt | ||
``` | ||
|
||
|
||
### Download necessary data for [NLTK](https://www.nltk.org/install.html) | ||
|
||
```shell | ||
python -m nltk.downloader punkt | ||
python -m nltk.downloader wordnet | ||
``` | ||
|
||
|
||
### Create IPython Kernel | ||
|
||
```shell | ||
pip install ipykernel | ||
python -m ipykernel install --name qasofm-py3.8 --user | ||
``` | ||
|
||
|
||
### Set proxy configuration for Qiskit if necessary | ||
|
||
```shell | ||
$ 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" | ||
} | ||
} | ||
``` |