# Quantum Support Vector Machine Algorithms for Remote Sensing Data Classification
🗃 This repository contains Python functions and processing pipelines documented in Jupyter notebook for pixel-wise binary classification of remote sensing multispectral images with the D-Wave Advantage quantum annealer.
More information can be found in the conference paper connected to this repository
📜 Amer Delilbasic, Gabriele Cavallaro, Madita Willsch, Farid Melgani, Morris Riedel and Kristel Michielsen, “Quantum Support Vector Machine Algorithms for Remote Sensing Data Classification”, in Proceedings of the IEEE International Geoscience and Remote Sensing Symposium (IGARSS), 2020 (accepted).
Recent developments in Quantum Computing (QC) have paved the way for an enhancement of computing capabilities. Quantum Machine Learning (QML) aims at developing Machine Learning (ML) models specifically designed for quantum computers. The availability of the first quantum processors enabled further research, in particular the exploration of possible practical applications of QML algorithms. In this work, quantum formulations of the Support Vector Machine (SVM) are presented. Then, their implementation using existing quantum technologies is discussed and Remote Sensing (RS) image classification is considered for evaluation.
The work is a follow up of publications:
📃 D. Willsch, M. Willsch, H. De Raedt, and K. Michielsen, “Support Vector Machines on the D-Wave Quantum Annealer” in Computer Physics Communications, vol. 248, 2020, https://doi.org/10.1016/j.cpc.2019.107006
📜 G. Cavallaro, D. Willsch, M. Willsch, K. Michielsen, and M. Riedel, “Approaching Remote Sensing Image Classification with Ensembles of Support Vector Machines on the D-Wave Quantum Annealer,” in Proceedings of the IEEE International Geoscience and Remote Sensing Symposium (IGARSS), pp. 1973-1976, 2020, https://doi.org/10.1109/IGARSS39084.2020.9323544
----------
👌Everyone can make a free account to run on the D-Wave2000Q computer:
- Make a free account to run on the D-Wave through 👉 (https://www.dwavesys.com/take-leap
- Install Ocean Software with 'pip install dwave-ocean-sdk' 👉 https://docs.ocean.dwavesys.com/en/latest/overview/install.html
- Configuring the D-Wave System as a Solver with 'dwave config create' 👉 https://docs.ocean.dwavesys.com/en/latest/overview/dwavesys.html#dwavesys)
📐 Now you can proceed in two was:
(1) Follow the instructions of the Jupyter Notebook 👉 run_SVM.ipynb
(2) Make your processing pipeline by using the Python functions: calibrate.py, train.py and test.py.
(See in the instructions in files)
Have fun!
📬 For any problem, feel free to contact me at g.cavallaro@fz-juelich.de