{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Exploring Quantum Classification Library"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This notebook offers a high-level walk-through of solving classification problems using the [quantum machine learning library](https://docs.microsoft.com/azure/quantum/user-guide/libraries/machine-learning/intro) that is part of the Microsoft Quantum Development Kit. \n",
"It does not require any familiarity with the basic of quantum computing to follow.\n",
"\n",
"* The companion Q# notebook [Inside Quantum Classifiers](./InsideQuantumClassifiers.ipynb) offers a deep dive in the internals of a simple quantum classifier and several exercises on implementing it from scratch.\n",
"* The Python + Q# notebook [Quantum Classification With Feature Engineering](./QuantumClassificationWithFeatureEngineering.ipynb) continues the high-level exploration of the quantum classification library, focusing on using feature engineering.\n",
"\n",
"> This notebook contains some heavy computations, and might take some time to execute. \n",
" Precomputed cell outputs are included - you might want to study these before you opt to re-run the cells."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Setup\n",
"\n",
"To start with, execute this cell using Ctrl+Enter (or ⌘+Enter on a Mac). This is necessary to prepare the environment, import the Q# libraries and operations we'll use later in the tutorial, and configure the plotting routines. If any Python packages are reported as missing, install them."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"scrolled": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Preparing Q# environment...\n",
"\n",
"Setup complete!\n"
]
}
],
"source": [
"import math\n",
"import random\n",
"from typing import List\n",
"\n",
"import numpy as np\n",
"from matplotlib import pyplot\n",
"pyplot.style.use('ggplot')\n",
"\n",
"import warnings\n",
"warnings.simplefilter('ignore')\n",
"\n",
"%matplotlib inline\n",
"\n",
"# Plotting configuration\n",
"cases = [(0, 0), (0, 1), (1, 1), (1, 0)]\n",
"markers = [\n",
" '.' if actual == classified else 'X'\n",
" for (actual, classified) in cases\n",
"]\n",
"colors = ['blue', 'blue', 'red', 'red']\n",
"\n",
"# Q# configuration and necessary imports\n",
"import qsharp\n",
"import Microsoft.Quantum.Kata.QuantumClassification as QuantumClassification\n",
"\n",
"print()\n",
"print(\"Setup complete!\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## The Data"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The first step of solving a classification problem is preparing the training and validation datasets.\n",
"\n",
"> In the first part of the tutorial we will use artificially generated data, in which the two classes can be separated using two lines that go through the (0, 0) point. \n",
"This mirrors the data used in the [deep dive tutorial](./InsideQuantumClassifiers.ipynb). \n",
"A real classification problem will load real data instead, but this choice of artificial data allows to construct a simple quantum classifier by hand, which will be helpful for a deep dive in the classifier structure."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Training and validation data generated\n"
]
}
],
"source": [
"def generate_data (samples_number : int, separation_angles : List[float]):\n",
" \"\"\"Generates data with 2 features and 2 classes separable by a line that goes through the origin\"\"\"\n",
" features = []\n",
" labels = []\n",
" for i in range(samples_number):\n",
" sample = [random.random(), random.random()]\n",
" angle = math.atan2(sample[1], sample[0])\n",
" features.append(sample)\n",
" labels.append(0 if angle < separation_angles[0] or angle > separation_angles[1] else 1)\n",
" \n",
" data = { 'Features' : features, 'Labels' : labels }\n",
" return data\n",
"\n",
"# generate training and validation data using the same pair of separation angles\n",
"separation_angles = [math.pi / 6, math.pi / 3]\n",
"training_data = generate_data(150, separation_angles)\n",
"validation_data = generate_data(50, separation_angles)\n",
"print(\"Training and validation data generated\")"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"