In this study we proposed an Hybrid Quantum Convolutional Neural Network to address the LULC (Land Use and Land Cover classification) challenge. We trained and test our model on the EuroSAT dataset based on Sentinel-2 satellite images covering 13 spectral bands and consisting out of 10 classes with in total 27,000 labeled and geo-referenced images.
Sample of EuroSAT dataset [Source https://github.com/phelber/EuroSAT]
To create an hybrid QNN, a parametrized quantum circuit is typically used as a hidden layer for the neural network. A parametrized quantum circuit is a quantum circuit where the rotation angles for each gate are specified by the components of a classical input vector. The outputs from our neural network's previous layer will be collected and used as the inputs for our parametrized circuit. The measurement statistics of our quantum circuit can then be collected and used as inputs for the following hidden layer.
In this study we created an Hybird Convolutional Neural Network, by adding a Quantum Circuit in a modified version of the Lenet-5
Class | Precision | Recall | F1 Score |
---|---|---|---|
Annual Crop | 0.98 | 0.93 | 0.95 |
Permanent Crop | 0.98 | 0.98 | 0.98 |
Pasture | 0.93 | 0.94 | 0.94 |
Forest | 0.95 | 0.95 | 0.95 |
Herbaceous vegetation | 0.93 | 0.94 | 0.94 |
Highway | 0.99 | 0.99 | 0.99 |
Residential | 0.99 | 0.99 | 0.99 |
Industrial | 0.99 | 0.99 | 0.99 |
River | 0.99 | 0.99 | 0.99 |
Sea Lak | 0.99 | 0.99 | 0.99 |
Accuracy | 0.97 | ||
Macro Average | 0.97 | 0.97 | 0.97 |
We proposed a study on quantum circuits for image classification and several multiclass hybrid quantum classifiers. The experiments are collected in
- QCNN-RyCircuitQiskittextbook.ipynb
- QCNN-RealAmplitudesCircuit.ipynb
- eurosat_classification/QCNN-BellCircuit.ipynb
We also proposed an hierarchical quantum classifier, composed of coarse classifier for clustering the EuroSAT classes into three groups (Vegetation, Urban and Water Bodies) and of three fine grain classifiers. In this case the experiments are collected in
- Jupyeter Notebook QCNN-RealAmplitudesCircuit-CoarseClassifier.ipynb
- Jupyeter Notebook QCNN-RealAmplitudesCircuit-Group1.ipynb
- Jupyeter Notebook QCNN-RealAmplitudesCircuit-Group2.ipynb
- Jupyeter Notebook QCNN-RealAmplitudesCircuit-Group3.ipynb
We proposed several binary hybrid quantum classifiers for the EuroSAT dataset. The experiments are collected in the Jupyeter Notebook EuroSAT_Classification.ipynb
This module has been implemented in Python 3.6.8.
After the installation of Python and pip, you can clone this repository in your working directory.
Then you can create a virtual environment:
- open your favorite terminal and navigate into your working directory
- install the virtualenv command:
pip install virtualenv
- create a virtualenv:
virtualenv qnn4eo -p python3.6
- activate the virtualenv:
- Linux or MacOS:
source qnn4eo\bin\activate
- Windows:
qnn4eo/Scripts/activate
- Linux or MacOS:
- install requirements:
pip install -r requirements.txt
- launch Jupyter Lab:
jupyter lab
To run experiments on real Quantum Computers you have to create an IBM Quantum Experience Account.
@inproceedings{zaidenberg2021advantages,
title={Advantages and Bottlenecks of Quantum Machine Learning for Remote Sensing},
author={D. A. Zaidenberg, A. Sebastianelli, D. Spiller, B. Le Saux, S.L. Ullo},
booktitle={IGARSS 2021-2021 IEEE International Geoscience and Remote Sensing Symposium},
year={2021},
organization={IEEE}
}
@inproceedings{zaidenberg2021advantages,
title={On Circuit-based Hybrid Quantum Neural Networks for Remote Sensing Imagery Classification},
author={A. Sebastianelli, D. A. Zaidenberg, D. Spiller, B. Le Saux, S.L. Ullo},
booktitle={JSTARS},
year={2021},
organization={IEEE}
}