{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Quantum pipeline using JAX backend\n", "\n", "This performs an exact classical simulation." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import warnings\n", "warnings.filterwarnings(\"ignore\")\n", "\n", "import os\n", "os.environ[\"TOKENIZERS_PARALLELISM\"] = \"false\"" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "\n", "BATCH_SIZE = 30\n", "LEARNING_RATE = 3e-2\n", "EPOCHS = 120\n", "SEED = 0" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Read in the data and create diagrams" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def read_data(filename):\n", " labels, sentences = [], []\n", " with open(filename) as f:\n", " for line in f:\n", " t = int(line[0])\n", " labels.append([t, 1-t])\n", " sentences.append(line[1:].strip())\n", " return np.array(labels), sentences\n", "\n", "\n", "train_labels, train_data = read_data('datasets/mc_train_data.txt')\n", "dev_labels, dev_data = read_data('datasets/mc_dev_data.txt')\n", "test_labels, test_data = read_data('datasets/mc_test_data.txt')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "nbsphinx": "hidden" }, "outputs": [], "source": [ "TESTING = int(os.environ.get('TEST_NOTEBOOKS', '0'))\n", "\n", "if TESTING:\n", " train_labels, train_data = train_labels[:2], train_data[:2]\n", " dev_labels, dev_data = dev_labels[:2], dev_data[:2]\n", " test_labels, test_data = test_labels[:2], test_data[:2]\n", " EPOCHS = 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create diagrams" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Tagging sentences.\n", "Parsing tagged sentences.\n", "Turning parse trees to diagrams.\n", "Tagging sentences.\n", "Parsing tagged sentences.\n", "Turning parse trees to diagrams.\n", "Tagging sentences.\n", "Parsing tagged sentences.\n", "Turning parse trees to diagrams.\n" ] } ], "source": [ "from lambeq import BobcatParser\n", "\n", "parser = BobcatParser(verbose='text')\n", "\n", "raw_train_diagrams = parser.sentences2diagrams(train_data)\n", "raw_dev_diagrams = parser.sentences2diagrams(dev_data)\n", "raw_test_diagrams = parser.sentences2diagrams(test_data)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Remove the cups" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from lambeq import RemoveCupsRewriter\n", "\n", "remove_cups = RemoveCupsRewriter()\n", "\n", "train_diagrams = [remove_cups(diagram) for diagram in raw_train_diagrams]\n", "dev_diagrams = [remove_cups(diagram) for diagram in raw_dev_diagrams]\n", "test_diagrams = [remove_cups(diagram) for diagram in raw_test_diagrams]\n", "\n", "train_diagrams[0].draw()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Create circuits" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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y5a1u6xbdvfdd2vr1q0KCQlRq1at9OGHH9pdkssidP6N1NRUvfDCC3ryySf11FNPacWKFSpWrFiOLsPPz0/u7u46depUuumnTp2Sv79/jizD29tbn332mV5++WWNGDFC/fv3V1JSUo6MDdzOYmNj1bhxY0VFRWn58uUaPHhwjuwduSY3+leSgoODtX37dt15550KDw/X4sWLc2xs4Hb2xRdf6L777lNAQIC2bdummjVr5uj4udHDDodDzz33nJYtW6b169ercePG+vXXX3NkbOB2lpSUpH79+mnkyJF65ZVX9Nlnn8nb2zvHxs+tdXCxYsW0YsUKDRw4UAMHDtSQIUM4aiELCJ03cfHiRT3yyCN699139d577+ndd9+Vh4dHji/Hy8tLdevWTbfLPi0tTevWrVNoaGiOLcfNzU3//ve/NXfuXM2fP18tWrTQ6dOnc2x84Hazbds2hYSE6Pz589qyZYseeuihHF9GbvWvJPn7+ysqKkrt2rVTx44d9dZbb3HUAvIsY4zefPNNderUSY888ojWr1+foxuR1+RmD7du3VqbN2/W+fPnFRISou3bt+fo+MDt5PTp02rRooU+/fRTzZs3T2+88Ybc3HI2duRm/3p4eDjzwH/+8x898sgjunTpUo4uI8+z9zpGt6dffvnF3HvvvaZo0aLmm2++sXx5CxcuNAUKFDARERFm37595oknnjC+vr7m5MmTlixv06ZNxs/Pz9x9991m//79liwDsNPChQtNwYIFTVhYWJYvm56ZZeVm/6alpZkxY8YYSaZXr17mypUrliwHsMuVK1fMY489ZiSZsWPHWn6vvNzu4VOnTpnQ0FBTsGBB89lnn1myDMBO+/btMxUrVjSlSpUymzZtsnRZud2/xhjz9ddfm6JFi5oaNWqYY8eOWbacvIbQ+RdbtmwxpUuXNnfddZfZu3dvri333XffNQEBAcbLy8uEhISY77//3tLlHT161FSrVs0UK1bMrFmzxtJlAbklLS3NvPbaa0aS6dGjh7l8+XKuLDe3+9cYYz799FNToEAB07hxY/P7779bvjwgN/z++++mUaNGpkCBAmbBggW5ttzc7uHLly+b7t27G0nm9ddf5yb0yDNWr15tihUrZqpXr25++eWXXFmmHevgPXv2mMDAQFO6dGmzdetWy5eXFxA6rzN//nxToEAB06hRo3yxEXf+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3n33XY0YMUKSlJCQoCFDhqhmzZqKj4/X6NGj1aFDB8XExKTbUzJq1ChNmjRJlStX1qhRo9StWzf9/PPP8vDI3n9PYmKiJk2apHnz5snNzU09e/bUsGHDNH/+/GyNe72QkBCNGzfO5T+NBm7F9u3bs/X8OXPm6MyZMzlUDfKyuLg4xcfHa926dZKkX375RVFRUSpdurTWrVunevXqadGiRc75161bpzlz5iglJUXr1q3Tp59+qsDAQOfzpf+7tc/TTz+tZ555RsWLF9cnn3yiFi1aKCIiQh4eHtq3b58SEhL08ssv68knn1TRokW1d+9ePf3004qNjdXw4cNVsmRJbdq0SQ8++KA++ugj3Xnnnfrll18kSZ988onmzp0rLy8vPf300+ratas2b94s6c/DQFu3bq1x48apQIECmjt3rtq2bauDBw8qICDAWeekSZM0evRo517dI0eOqFWrVvr3v/+tTz75RH/88YcGDRqkQYMGafbs2frhhx80ePBgzZs3T2FhYTp79qw2btyYI/8Pc+bM0ZAhQ7Rt2zZt3bpVffr0UaNGjdSiRYubPmfdunUqWrSo8wMCSRo5cqT69u2rAQMG6LffftOTTz6p7du3q3bt2mrcuLFOnDihDz74QFFRUYqMjFTfvn31xRdfaMqUKVq4cKGqV6+ukydPateuXRmO+fXXX0uSmjdvrvr16990zGtee+01TZgwQRMnTtS7776rHj166Pjx4ypRokS23q/o6GglJyerefPmzmlVq1ZVQECAtm7d6vwQxMvLS7Vq1dLGjRv1wAMPZGuZAFyEySOio6ONJPPwww8bd3d3U7hwYVOgQAEjybi5uZnPP//8huds3brVFCxY0Hz22WfOaY888ojp169fuvnWr19vJJm1a9c6p7311ltGkjly5Ihz2sCBA03Lli1vWuMff/xhJJmffvrJGGPML7/8YiSZjz/+2DnP3r17jSSzf//+zL8J15k9e7aRZH7++WfntOnTp5syZcpkeqwKFSqYKVOmZPjYrl27jCSzfPlyI8lER0dntWTgtjdp0iTj7u5uJPHFF18ZfEVERDj7Zf/+/UaS2bZt2017qnr16ubdd991/lyhQgXTvn37dPP079/fPPHEE+mmbdy40bi5uZnLly+bL774whQtWtRcvHgxhzr9T/fff79p3Lhxumn169c3I0aMuOlzevfu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wDKETgAAAACAZQidAAAAAADLEDoBAAAAAJYhdAIAAAAALEPoBAAAAABYhtAJAAAAALAMoRMAAAAAYBlCJwAAAADAMoROAAAAAIBlCJ0AACDfiomJUVRUlCTpo48+UkxMjK31AEBeROgEAAD5SmpqqiIjIxUSEqLatWtrzpw5kqSnn35atWvXVkhIiCIjI5WammpzpQCQNxA6M3Dw4EH5+/vr0qVLdpdy20pKSlJgYKB++OEHu0sBAOCWXb58WR07dtRjjz2m6OjoDOeJjo7WY489pk6dOuny5cu5XCEgnTlzRqVLl9axY8fsLgUuLjAwUFOnTs2RsU6fPq3SpUvrt99+y/Rz81zorFu3rhwOhzw9PXXXXXfpxRdf1JUrVzI1xksvvaRnn31WRYoUsajK299bb72l+vXrq0iRIipdurTat2+vgwcPOh/38vLSsGHDNGLECBurBOzVp08ftW/f/obpUVFRcjgcOn/+fK7XBODmUlNT1a1bNy1btkySlJaWluF816YvXbpU3bt3Z48nMqVPnz5yOBzZ2h4dN26cHnnkEQUGBlpXKDIlPj5ekydPVuPGjeXv76877rhDzZo108yZM5WSkpKtMfv16ydJatWqVbbHzI4PP/xQTZo0UdGiRTPcjvHz81OvXr00ZsyYTI+d50JnWFiY4uLidPToUU2ZMkUzZ87M1BsTGxur5cuXq0+fPtYV6QI2bNigZ555Rt9//73WrFmj5ORkPfjgg0pISHDO06NHD23atEl79+61sVIAAG7NggUL9NVXX900bP5VWlqalixZogULFlhcGfKaVq1aZXl7NDExUbNmzVL//v2zVUNqauot/65bISkpybZl54Tr64+Ojla1atW0ZMkSDRgwQEuXLtXy5cvVu3dvRUREqH79+vr9998zNf71Y3bo0EGSNHXq1GyNmV2JiYlq1aqVXn755ZvO07dvX82fP19nz57N1Nh5LnR6enrK399f5cuXV/v27dW8eXOtWbNGkjR37lz5+Pjo8OHDzvmffvppVa1aVYmJiZKkRYsWKTg4WHfccYdznoiICPn6+mr58uWqUqWKvL291alTJyUmJmrOnDkKDAxU8eLFNXjw4HSfhs6bN0/16tVTkSJF5O/vr+7du6f75bm2N2TdunWqV6+evL29FRYWlm6PYlaNHTtWtWrV0rx58xQYGKhixYqpa9eut3zI8DfffKM+ffqoevXqCg4OVkREhGJjY9MdilS8eHE1atRICxcuzHa9AABYbdq0aXJzy9ymj5ubm6ZNm2ZRRcirChQocNPt0bFjxzr3hF7/FRERIUlauXKlChQooIYNGzrHu7bNuGLFCtWsWVMFCxZUw4YNtWfPHuc817ZXly5dqmrVqqlAgQKKjY3V1atXNWzYMN1xxx0qXLiwGjRo4Lx41rXn3X///ZKk9u3bq2DBgmrZsqV+/fVX5zxHjhzRI488ojJlysjHx0f169fX2rVr073mwMBAvfHGG+rVq5eKFi2qJ554QpK0adMmhYeHq1ChQipfvrwGDx6cbifG+++/r8qVK6tgwYIqU6aMOnXqlO33v0mTJho8eLBefPFFlShRQv7+/ho7duzfPufa0Uvjxo1TuXLlVKVKFUnS8ePH1bp1a7366qvauHGjevfu7TwfvHfv3tqyZYvatm2rhx56SMnJyZIkY4zGjh2rgIAAFShQQOXKldPgwYOdy/rrmG3btpUkVa1a9aZjSpLD4dDHH3+sDh06yNvbW5UrV9bSpUuz/X5d8/zzz2vkyJHpfvf+qnr16ipXrpy+/PLLTI3tkd3ibmd79uzRli1bVKFCBUlSr169tHz5cvXo0UNbtmzRqlWr9PHHH2vr1q3y9vaWJG3cuFH16tW7YazExERNmzZNCxcu1KVLl/Too4+qQ4cO8vX11cqVK3X06FF17NhRjRo1UpcuXSRJycnJeuONN1SlShX9/vvvGjJkiPr06aOVK1emG3vUqFGaPHmySpUqpSeffFL9+vXT5s2bs/36jxw5oiVLlmj58uU6d+6cOnfurPHjx2vcuHGZHuvChQuSpBIlSqSbHhISoo0bNzo/oQEA4HYUExOjHTt2ZPp5aWlp2rFjhxYtWqSqVataUBnymnPnzunSpUvavXu3JOnw4cP67rvvVLZsWe3evVutWrXSfffd55x/xYoVev/991WkSBHt3r1bX375pe655x7n86U/t+kkOYOUn5+fpk2bppYtW2rp0qXy9PTUr7/+qoSEBI0ZM0YjR46Ur6+vTp06paFDh+ro0aMaN26cSpUqpW+//VYtW7bU559/rgoVKujXX391Hvr7+uuvq0aNGnr66afVtWtX5/ZofHy8WrdurXHjxqlAgQKaO3eu2rZtq4MHDyogIMBZ56RJkzR69GjnXt0jR46oVatW+ve//61PPvlEf/zxhwYNGqRBgwZp9uzZ+uGHHzR48GDNmzdPYWFhOnv2rDZu3Jgj/w9z5szRkCFDtG3bNm3dulV9+vRRo0aN1KJFi5s+Z926dSpatKjzAwJJGjlypPr27asBAwbot99+05NPPqnt27erdu3aaty4sU6cOKEPPvhAUVFRioyMVN++ffXFF19oypQpWrhwoapXr66TJ09q165dNx3zueeekyQ988wzat26dYZjXvPaa69pwoQJmjhxot5991316NFDx48fv2Eb3UrXtv8ztTfe5BHR0dFGknF3dzeFCxc2BQoUMJKMm5ub+fzzz53znT171tx5553mqaeeMmXKlDHjxo1LN05wcLB5/fXX002bPXu2kWR+/vln57SBAwcab29vc+nSJee0li1bmoEDB960xh07dhhJzuesX7/eSDJr1651zrNixQojyVy+fDlrb8T/N2bMGOPt7W0uXrzonDZ8+HDToEGDTI+Vmppq2rRpYxo1anTDY//5z39MYGCg8/2Pjo7OVt3Iv1zxd6h3797OvznXfxUsWNBIMufOnbO7xFvmiu8/kBkzZ840kvjii6+/+bq2Dti/f7+RZLZt23bTnqpevbp59913nT9XqFDBtG/fPt08/fv3N0888US6aRs3bjRubm7m8uXL5osvvjBFixZNt72aE+6//37TuHHjdNPq169vRowYcdPn9O7d25QpU8ZcvXrVOe3SpUumSJEi5vTp08YYY5o1a2batWtnoqOjTWRkpPHx8TG9e/c2xhjz8ccfmy5duhhjjJk8ebK55557TFJS0g3LyWjM+++/30gyb7zxxk3HNMYYSeaVV15x/hwfH28kma+//vqmr6tChQpmypQpN308I9cyys22Y1544QXTpEmTTI2Z5/Z01qtXT5GRkUpISNCUKVPk4eGhjh07Oh8vXry4Zs2apZYtWyosLEwjR45M9/zLly+rYMGCN4zr7e2tu+++2/lzmTJlFBgYKB8fn3TTrj98Njo6WmPHjtWuXbt07tw553H1sbGxqlatmnO+mjVrOr8vW7asJOn3339P98lRVgQGBqa7GFLZsmWzdGz4M888oz179mjTpk03PFaoUCHnoclAftS0aVPNmDEj3bRt27apZ8+eNlUEICOXLl2Su7t7li4K5ObmpkGDBtHXuCWvvfaa/vjjD40YMUKX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atVS/fr1s3T12vr163M+JwDgtnD9tvilS5f06quvSpIaNWqk+fPn67PPPtPnn3/unL9ly5baunXr395z+vLlyxo0aJCioqJ0/Phxbd68WTt27HBuj1euXFlr1qzRli1btH//fg0cONC5R++aZs2aad68edq4caN++ukn9e7dO90pcffff7/uu+8+dezYUWvWrNEvv/yir7/+Wt98840kacSIEdqyZYsGDRqkmJgYHT58WF999dUNIfp28uCDD+quu+6SJB06dEirVq3SK6+8omeeeUYFChRwzrdx40ZVrFgx3WlwrsSW0Onh4aFBgwZpwoQJWrlypeLj4xUWFqayZcs6v64dwlajRg3VqVNHixYt+tsxr+3a7tSpk1q1aqV77rlH77//fobzTpkyRZ07d1azZs1u+klJZrVs2VKvvvqqXnzxRdWvX1+XLl1Sr169cmTszKpUqZL+9a9/qVu3bkpMTNSrr76qixcv6n//+5+WLl2qlStX6vz5885bpGTGhQsXdPDgwRyvuVixYs5LRtetW1dDhw7V6NGj9cQTT6Sbb+HChRowYECOLx+4VYMHD87S1WszOtQHAAA7XL8tPnjw4HQf5teoUUNvvvmmBg4cqBMnTkiSHnroIXl4eDjv4JARd3d3nTlzRr169dI999yjzp0766GHHtJrr70mSXrllVdUp04dtWzZUk2aNJG/v/8Ntxt86aWXdP/99+vhhx9WmzZt1L59+xtC1hdffKH69eurW7duqlatml588UVnGK5Zs6Y2bNigQ4cOKTw8XLVr19bo0aNv6aKkdnF3d9d//vMfSX9eqKhnz57q1avXDaccLliwwLW3gY0LWL58uQkKCjKpqak3nSc6OtpIMtHR0blYWfatX7/eWPHfcPXqVdOuXTsTFBRkFixYYM6fP2+MMebcuXNm1qxZpnr16ubXX3/NseXlxvu/cuVKExQUZJKTky1bBvBPUlJSTPv27Y2bm5uR9I9fbm5upkOHDiYlJcXu0gHcxOzZs40k1i/It25lO+69994zDz74YC5WZR2rtr+z6p/e/z179pjSpUs7t+ddkS17OjOrTZs2euKJJ5yftuQlYWFhN5wLmhO8vLy0ZMkSvfjii3r77bfl6+urAgUKqFSpUoqMjNS0adN055135vhyrZSQkKDZs2fLwyNXrn8FZMjd3V2ffvqp2rVrJ0k3PdT22vR27dpp/vz/196dh2VR7/8ff91sAqIogqFHCFNTyl2/IJg75lKoiUuaR0Ezl/QcU0xTS600y72jxzxqYWlupblvmZgbUC6ZR0xzicsO2nEXNAWc3x/95ERqIjAMcD8f18V1cc/M/fm859YPc7/umfsziwv9jNkAAPvWr18/NW7cuEjMxG7W+2+zJCcn6+OPP5anp6fVpeRYoQidkjRkyBD5+flZXUaec3FxyTIz1eLFizPvXfrHn4edPMdmsykyMlIHDhzQtWvXdPz4cV29elVfffWVmjdvnte7Ium3iYvuVbvNZrvvfk2cODFbbXfq1EnBwcGm1A08DDc3N3322Wf65JNPstzH7PcTodWrV0+LFi3SZ599xneQAQCFnpOTk0aPHl0kZmLP6/ff/fv3v+/zH7QuO8LCwtSqVasc729BwCmjAqZdu3b3DVZ/nKb5Ydz5z222JUuW3HNwurm5ZU4O9Ud/vCEuUBg4OjqqR48e6tGjh7799lv93//9X+Z3xYOCgpg0CACAQiK377/ffPNNRUdH33NdyZIl/3SdvSB0FjAlSpQo1J8g+fn5Zd4HCrAXdwJm69atFRkZaWktAADg4eT2/XfZsmWz3DbmXuvtXaG5vBYAAAAAUPgQOgEAAAAApiF0AgAAAABMQ+gEAAAAAJiG0AkAAAAAMA2hEwAAAABgGkInAAAAAMA0hE4AAAAAgGkInQAAAAAA0zhZXUBeS0xMtLoEu8TrDntmGIZKlCghm81mdSkAAOQY7+esYQ+ve5EJnd7e3nJ3d1ePHj2sLsVuubu7y9vb2+oygHxns9l07do1GYZhdSkAADw03kdbr6i/jy4yodPf31+JiYk6f/681aXkyMiRI3XlyhXNmTPH6lJyzNvbW/7+/laXAQAAgIdQ2N9HDxgwQJ6enpo0aZLVpeRYUX8fXWRCp/TbgCms/1heXl4yDEN169a1uhQAAADYmcL8PrpkyZLy8vLifXQBxkRCAAAAAADTEDoBAAAAAKYhdAIAAAAATEPoBAAAAACYhtAJAAAAADANoRMAAAAAYBpCp506ffq0bDabDh48eN9tYmNjZbPZdPny5XyrC0D2MIYBALAGx+CHR+jEfYWGhio5OVmenp6SpJiYGJUqVcraogBkG2MYAABrcAzOysnqAlBwubi4yNfX1+oyAOQQYxgAAGtwDM6KM52FVGpqqnr27CkPDw+VK1dOU6dOVdOmTTVkyBBJks1m0xdffJHlOaVKlVJMTEyWZUePHlVoaKhcXV1VvXp17dixI3Pd7y8LiI2NVVRUlK5cuSKbzSabzaZx48aZu5NAEcYYBgDAGhyD8x+hs5AaPny4duzYodWrV2vLli2KjY3V/v37c9TOsGHDdODAAYWEhCg8PFwXLly4a7vQ0FDNmDFDJUuWVHJyspKTkxUdHZ0XuwLYJcYwAADW4Bic/widhVBKSooWLFigKVOmqEWLFqpRo4YWLlyo9PT0h25r0KBBioiIUGBgoObMmSNPT08tWLDgru1cXFzk6ekpm80mX19f+fr6ysPDIy92B7A7jGEAAKzBMdgahM5C6MSJE7p165aCg4Mzl3l5ealq1aoP3VZISEjm705OTqpfv74SExPzpE4A98YYBgDAGhyDrUHoLKJsNpsMw8iyLC0tzaJqADwsxjAAANbgGJz3CJ2FUKVKleTs7Kz4+PjMZZcuXdKxY8cyH/v4+Cg5OTnz8fHjx3X9+vW72oqLi8v8PT09Xfv27VNgYOA9+3VxcVFGRkZe7AJg1xjDAABYg2OwNbhlSiHk4eGhPn36aPjw4SpTpozKli2r0aNHy8Hhf58hNG/eXLNmzVJISIgyMjI0YsQIOTs739XW7NmzVaVKFQUGBmr69Om6dOmSevfufc9+AwIClJKSom3btqlWrVpyd3eXu7u7afsJFFWMYQAArMEx2Bqc6SykJk+erEaNGik8PFxhYWF66qmnVK9evcz1U6dOlZ+fnxo1aqTu3bsrOjr6nv+xJ02apEmTJqlWrVratWuX1qxZI29v73v2GRoaqv79+6tr167y8fHRe++9Z9r+AUUdYxgAAGtwDM5/NuOPFyzDEs8//7wuXLigrVu35riNpk2bqnbt2poxY0beFQbggdLT0+Xs7KyPPvpIkZGROW6HMQxYIyYmRlFRUUpLS5OTExeBAYVNy5YtVaZMGS1dujTHbXAMNhdnOgEAAAAApiF0AgAAAABMwzUkRUhsbKzVJQDIBcYwAADW4BhsLs50AgAAAABMQ+gEAAAAAJiG0AkAAAAAMA2hEwAAAABgGkInAAAAAMA0hE4AAAAAgGkInQAAAAAA0xA6AQAAAACmIXQCAAAAAExD6AQAAAAAmIbQCQAAAAAwDaETAAAAAGAaQicAAAAAwDSETgAAAACAaQidAAAAAADTOFldQF5KSkrS+fPnrS4jRy5evKirV69q//79VpeSY97e3vL397e6DBRihXUMp6enS5JOnz7NGAYAFEqF9RgsSVevXpXNZuMYXIDZDMMwrC4iLyQlJSkwMFDXr1+3uhS75e7ursTExCI9YGAexrD1GMOwVzExMYqKilJaWpqcnIrU5/FAtnAMtl5RPwYXmb+s58+f1/Xr17Vo0SIFBgZaXY7dSUxMVI8ePXT+/PkiO1hgLsawtRjDAGC/OAZbyx6OwUUmdN4RGBiounXrWl0GgBxiDAMAYA2OwTALEwkBAAAAAExD6AQAAAAAmIbQCQAAAAAwDaETAAAAAGAaQicAAAAAwDSETgAAAACAaQidAAAAAADTEDoBAAAAAKYhdAIAAAAATEPoBAAAAACYhtAJAAAAADANoRMAAAAAYBpCJwAAAID7unDhgsqWLavTp09bXYrdOXLkiCpUqKDU1FSrS8kVQqeFIiMj1aFDh7uWx8bGymaz6fLly/leE4DsYwwDAAq6yMhI2Ww22Ww2OTs7q2LFinr11Vf166+/ZruNCRMmqH379goICDCv0Hxy+vRp2Wy2AhOgJ0yYoKioKElSkyZN7lr/xBNPqEGDBpo2bVp+l5anCJ0AAABAEda6dWslJyfr5MmTmj59uubOnauxY8dm67nXr1/XggUL1KdPH5OrtE+3bt1SWFjYn24TFRWlOXPmKD09PZ+qynuETgAAAKAIK1asmHx9feXn56cOHTooLCxMW7dulSSNGzdO9erVkyTVq1cv86xoTEyMJGnDhg0qVqyYGjRo8Kd9/PTTTwoPD1fp0qVVvHhxPfnkk9qwYYMkKSMjQ3369FHFihXl5uamqlWraubMmVme37RpUw0ZMiTLsg4dOigyMjLz8c2bNzVixAj5+fmpWLFiqly5shYsWJC5/vDhw2rTpo08PDz0yCOP6K9//avOnz8v6X9nfCtWrChJqlixomw2m8aNG/fA1y8gIEATJ05U7969VaJECfn7++tf//rXA5+XHePHj9cLL7zwp9u0bNlSFy9e1I4dO/KkTysQOgEAAAA7cfjwYe3Zs0cuLi6SpOjoaG3evFmStHnzZk2ZMkXu7u6qX7++JGnnzp2ZofTPvPzyy7p586a+/vprff/993r33Xfl4eEhSbp9+7YqVKigFStW6MiRI3rjjTc0atQoLV++/KFq79mzp5YsWaL3339fiYmJmjt3bmYfly9fVvPmzVWnTh19++232rRpk86dO6cuXbpIkmbOnKnk5GQlJCRIkhISEpScnKzo6Ohs9T116lTVr19fBw4c0MCBAzVgwAD98MMPD1V/Trm4uKh27drauXNnvvRnBierC7B369atyxwsd2RkZFhUDYCHxRgGABR0d45V6enpunnzphwcHDRr1ixJkoeHh7y9vSVJycnJGjNmjBYuXKjq1atL+u0MZvny5R/YR1JSkiIiIlSjRg1J0mOPPZa5ztnZWePHj898XLFiRe3du1fLly/PDIUPcuzYMS1fvlxbt27NvBz1933MmjVLderU0cSJEzOXffjhh/Lz89OxY8f0+OOPy9PTM/O7rD4+PvL19c1W35LUtm1bDRw4UJI0YsQITZ8+Xdu3b1fVqlWz3UZulC9fXj/99FO+9GUGQqfFmjVrpjlz5mRZFh8frx49elhUEYCHwRgGABR0d45Vqampmj59upycnBQREXHXdsOGDVN0dHSWIHjjxg25urpm2e7JJ5/MDECNGjXSxo0b9be//U0DBgzQli1bFBYWpoiICNWsWTPzObNnz9aHH36opKQk3bhxQ7du3VLt2rWzvQ8HDx6Uo6PjPSfbkaTvvvtO27dvv+uDYEk6ceKEHn/88Wz3dS+/3xebzSZfX1/98ssvuWrzYbi5uen69ev51l9eI3RarHjx4qpcuXKWZWfOnLGoGgAPizEMACjofn+s+vDDD1WrVq0skwPduHFDklSjRg29+eabWZ7r7e2tS5cuZVm2YcMGpaWlSfotDEnSiy++qFatWmn9+vXasmWL3nnnHU2dOlWDBw/W0qVLFR0dralTpyokJEQlSpTQ5MmTFR8fn9mmg4ODDMPI0s+dPn7fz/2kpKQoPDxc77777l3rypUr96fPzQ5nZ+csj202m27fvp3rdrPr4sWLqlSpUr71l9f4TicAAABgJxwcHDRq1CiNGTNGN27ckGEYGjNmjCTprbfeks1my7J9nTp1dOTIkSzLHn30UVWuXFmVK1fWX/7yl8zlfn5+6t+/v1auXKlhw4Zp3rx5kqTdu3crNDRUAwcOVJ06dVS5cmWdOHEiS5s+Pj5KTk7OfJyRkaHDhw9nPq5Ro4Zu375938l06tatq3//+98KCAjIrO3OT/HixXPwShUshw8fVp06dawuI8cInQAAAIAd6dy5sxwdHTV79myNGzcuc3Kd69ev6+zZszp79mzm2c9WrVrp3//+911nO/9oyJAh2rx5s06dOqX9+/dr+/btCgwMlCRVqVJF3377rTZv3qxjx47p9ddf1zfffJPl+c2bN9f69eu1fv16HT16VAMGDMhyv+uAgAD16tVLvXv31hdffKFTp04pNjY2czKil19+WRcvXlS3bt30zTff6MSJE9q8ebOioqIK9FwLSUlJmRMS3b59WwcPHtTBgweVkpKSuc3p06f1888/P/DWKgUZoRMAAACwI05OTho0aJDee+89bdiwIfO7gq1atVK5cuVUrlw5LVu2TNJvZxjr1q37wJlmMzIy9PLLLyswMFCtW7fW448/rn/+85+SpH79+qljx47q2rWrgoODdeHChcxJee7o3bu3evXqpZ49e6pJkyZ67LHH1KxZsyzbzJkzR506ddLAgQNVrVo19e3bV6mpqZJ+m2hn9+7dysjI0NNPP60aNWpoyJAhKlWqlBwcCm7keeONN9S9e3dJv4X+OnXqZM7Ae8eSJUv09NNP69FHH7WqzFyzGX+8eLqQ2r9/v+rVq6d9+/apbt26Vpdjd3j9kVv8H7IWrz/sWUxMjKKiopSWliYnJ6a7gP150DFg/fr1Gj58uA4fPlygA1x2nD59WhUrVtSpU6cUEBBgdTmS/vz1v3XrlqpUqaJPP/1UDRs2tKjC3OMvKwAAAID7euaZZ3T8+HH9/PPP8vPzs7qcXPHz81NycrJ8fHysLiVbkpKSNGrUqEIdOCVCJwAAAIAHGDJkiNUl5AlHR8cs9+fcuXOn2rRpc9/tf//dynuZOHFilnuD/l5qaup9JzG6c6uZB7kzGVJhR+gEAAAAYJfq16+vgwcP5vj5/fv3z3Jf099zc3PLnJDpXuvsCaETAAAAgF1yc3PL1ZlELy8veXl55WFFRVPh/iYwAAAAAKBAI3QCAAAAAExD6AQAAAAAmIbQCQAAAAAwDaETAAAAAGAaQicAAAAAwDSETgAAAACAaQidAAAAAADTEDoBAAAAAKZxsrqAvJaYmGh1CXaJ1x15hf9L1uB1BwBwLLCGPbzuRSZ0ent7y93dXT169LC6FLvl7u4ub29vq8tAIcUYth5jGADsE8dg6xX1Y3CRCZ3+/v5KTEzU+fPnrS4lR0aOHKkrV65ozpw5VpeSY97e3vL397e6DBRShXkMp6enKzg4WGPHjlW7du2sLifHGMMAYJ8K8zFYkgYMGCBPT09NmjTJ6lJyrKgfg4tM6JR+GzCF9R/Ly8tLhmGobt26VpcCWKawjuH09HRJUkBAAGMYAFAoFdZjsCSVLFlSXl5eHIMLMCYSAgAAAACYhtAJAAAAADANoRMAAAAAYBpCJwAAAADANIROAAAAAIBpCJ0AAAAAANMQOu3U6dOnZbPZdPDgwftuExsbK5vNpsuXL+dbXQCyhzEMAIA1OAY/PEIn7is0NFTJycny9PSUJMXExKhUqVLWFgUg2xjDAABYg2NwVk5WF4CCy8XFRb6+vlaXASCHGMMAAFiDY3BWnOkspFJTU9WzZ095eHioXLlymjp1qpo2baohQ4ZIkmw2m7744osszylVqpRiYmKyLDt69KhCQ0Pl6uqq6tWra8eOHZnrfn9ZQGxsrKKionTlyhXZbDbZbDaNGzfO3J0EijDGMAAA1uAYnP8InYXU8OHDtWPHDq1evVpbtmxRbGys9u/fn6N2hg0bpgMHDigkJETh4eG6cOHCXduFhoZqxowZKlmypJKTk5WcnKzo6Oi82BXALjGGAQCwBsfg/EfoLIRSUlK0YMECTZkyRS1atFCNGjW0cOFCpaenP3RbgwYNUkREhAIDAzVnzhx5enpqwYIFd23n4uIiT09P2Ww2+fr6ytfXVx4eHnmxO4DdYQwDAGANjsHWIHQWQidOnNCtW7cUHBycuczLy0tVq1Z96LZCQkIyf3dyclL9+vWVmJiYJ3UCuDfGMAAA1uAYbA1CZxFls9lkGEaWZWlpaRZVA+BhMYYBALAGx+C8R+gshCpVqiRnZ2fFx8dnLrt06ZKOHTuW+djHx0fJycmZj48fP67r16/f1VZcXFzm7+np6dq3b58CAwPv2a+Li4syMjLyYhcAu8YYBgDAGhyDrcEtUwohDw8P9enTR8OHD1eZMmVUtmxZjR49Wg4O//sMoXnz5po1a5ZCQkKUkZGhESNGyNnZ+a62Zs+erSpVqigwMFDTp0/XpUuX1Lt373v2GxAQoJSUFG3btk21atWSu7u73N3dTdtPoKhiDAMAYA2OwdbgTGchNXnyZDVq1Ejh4eEKCwvTU089pXr16mWunzp1qvz8/NSoUSN1795d0dHR9/yPPWnSJE2aNEm1atXSrl27tGbNGnl7e9+zz9DQUPXv319du3aVj4+P3nvvPdP2DyjqGMMAAFiDY3D+sxl/vGAZlnj++ed14cIFbd26NcdtNG3aVLVr19aMGTPyrjAAD5Seni5nZ2d99NFHioyMzHE7jGHAGjExMYqKilJaWpqcnLgIDChsWrZsqTJlymjp0qU5boNjsLk40wkAAAAAMA2hEwAAAABgGq4hKUJiY2OtLgFALjCGAQCwBsdgc3GmEwAAAABgGkInAAAAAMA0hE4AAAAAgGkInQAAAAAA0xA6AQAAAACmIXQCAAAAAExD6AQAAAAAmIbQCQAAAAAwDaETAAAAAGAaQicAAAAAwDSETgAAAACAaQidAAAAAADTEDoBAAAAAKYhdAIAAAAATEPoBAAAAACYxsnqAvJKenq6zpw5Y3UZOZaamqobN27o9OnTVpeSY+XLl5eLi4vVZaCQunz5si5fvmx1GTmSnp4uSTp//nyhHcPOzs76y1/+YnUZAACgCLIZhmFYXUReWLlypSIiIqwuw67NmzdPL774otVloJDq2LGjVq1aZXUZdsvFxUVnz55V6dKlrS4FyHcxMTGKiopSWlqanJyKzOfxwENJSkrS+fPnrS4jR5YvXy5XV1e1a9fO6lJyzNvbW/7+/laXYZoi85e1SpUq8vPz088//6yJEyeqfv36VpdkF44cOaLo6GiVKlVK1atXt7ocFGLNmjXT6tWr5efnp5kzZ8rDw8PqkuzCvHnztGzZMjVr1ow32wBgp5KSkhQYGKjr169bXUqujB8/3uoScszd3V2JiYlFNngWmTOdknT27Fm1b99e33//vT755BPOfJps8+bN6tKli/z9/bV27VoFBARYXRIKuQ0bNuj555/XY489prVr18rPz8/qkoqsjIwMRUdHa8aMGRo8eLCmTZtG6ITd4kwn7N3+/ftVr149LVq0SIGBgVaXY3cSExPVo0cP7du3T3Xr1rW6HFMUqb+svr6+io2NVVRUlDp16qQJEybotddek81ms7q0Imf27Nn6+9//rlatWmnJkiUqWbKk1SWhCGjbtq12796t8PBwBQUFafXq1QoKCrK6rCLn6tWr6t69uzZt2qTZs2dr4MCBVpcEACgAAgMDi2zogbWK3Oy1bm5uWrJkicaOHavRo0erV69eunnzptVlFRnp6ekaPHiwBg0apMGDB2vNmjUETuSpGjVqKCEhQRUrVlSTJk20fPlyq0sqUk6fPq2GDRtq586dWr9+PYETAACYrsiFTkmy2WwaN26cPv30Uy1fvlwtWrTQf//7X6vLKvSuXLmiZ599VnPmzNGcOXM0ffp0OTo6Wl0WiqCyZcvqq6++UseOHdW1a1e99dZbKkLfBLDM3r17FRwcrNTUVO3du1etWrWyuiQAAGAHimTovKNbt27avn27jh8/ruDgYB05csTqkgqtU6dOKTQ0VHFxcdq0aZP69+9vdUko4lxdXbVo0SK9+eabeuONN9SjRw/9+uuvVpdVaH366adq1qyZHn/8ccXHx+uJJ56wuiQAAGAninTolKSQkBAlJCSoePHiCgkJ0ebNm60uqdDZtWuXgoKCdPPmTcXFxSksLMzqkmAnbDabXn/9dS1btkwrV65U8+bN9csvv1hdVqFiGIbGjh2rF154QV27dtWXX34pHx8fq8sCAAB2pMiHTkl69NFHtWfPHjVq1Eht27bVrFmzrC6p0Pjkk0/UokULPfHEE4qPj1e1atWsLgl2qEuXLtqxY4dOnjypoKAgHT582OqSCoUbN26oW7duevPNN/XOO+8oJiZGxYoVs7osAABgZ+widEpSiRIltHr1av3973/PnAgnPT3d6rIKrNu3b2v06NHq2bOnevTooa1bt6pMmTJWlwU7FhQUpISEBJUqVUqhoaHasGGD1SUVaGfPnlXTpk21Zs0aff755xo5ciQzeQMAAEvYTeiUJEdHR02bNk1z587V3Llz9cwzz+jKlStWl1XgXL9+XV26dNE777yj9957T/Pnz5eLi4vVZQHy9/fXrl271KxZM4WHh2vmzJlMMHQP3333nYKCgnTmzBnt3LlTHTt2tLokAABgx+wqdN7x0ksvadOmTUpISFBISIhOnjxpdUkFxn/+8x81btxYGzdu1KpVqzR8+HDOjqBA8fDw0MqVKzV06FANGTJEAwcOVFpamtVlFRhr165Vw4YN5ePjo4SEBNWrV8/qkgAAgJ2zy9ApSS1atFBcXJzS0tIUFBSknTt3Wl2S5fbv36+goCCdO3dOu3btUvv27a0uCbgnR0dHTZ48WfPnz9f8+fPVpk0bXbp0yeqyLGUYhqZOnar27durVatW+vrrr/WXv/zF6rIAAADsN3RKUtWqVRUXF6caNWqoRYsWWrhwodUlWWbVqlVq1KiRypcvr4SEBNWpU8fqkoAH6tOnj7Zu3aoDBw4oJCREP/74o9UlWeLWrVvq27evoqOjNXLkSK1YsULFixe3uiwAAABJdh46JalMmTLavHmzevbsqcjISL322mu6ffu21WXlG8Mw9O6776pjx45q27atYmNjVa5cOavLArKtadOmiouLk2EYCg4O1o4dO6wuKV9dvHhRrVq10scff6yFCxdq4sSJcnCw+z/tAACgAOGdiSQXFxfNmzdPU6ZM0bvvvqvOnTsrNTXV6rJMd+vWLfXu3VsjR47UmDFjtGzZMrm7u1tdFvDQqlSpori4ONWuXVstW7bUhx9+aHVJ+eLYsWNq0KCBvv/+e23btk09e/a0uiQAQBH1ww8/yNfXV9euXbO6FLvzwQcfKDw83OoycoXQ+f/ZbDYNGzZMX3zxhTZv3qzGjRvr559/zrf+Z8+erYCAALm6uio4OFgJCQmm9nf+/Hm1bNlSn376qT755BO99dZbnB1BoVa6dGlt2rRJUVFR6tOnj1599VVlZGTkS9/5PX4ladu2bQoODpaTk5Pi4+PVqFEj0/sEABQ+kZGRstlsstlscnZ2VsWKFfXqq6/q119/fah2XnvtNQ0ePFglSpQwqdL8ExsbW2Amyvzuu+80atQoSVJoaKgCAwM1c+bMLNv07t1b+/fvL9Rz0JAy/qBdu3bavXu3/vvf/yooKEj79u0zvc9ly5Zp6NChGjt2rPbv369atWqpVatW+uWXX0zpLzExUcHBwUpMTNRXX32lHj16mNIPkN+cnZ31wQcfaPr06Zo6daoiIiKUkpJiap/5PX4l6V//+pdat26toKAg7d27V5UqVTKtLwBA4de6dWslJyfr5MmTmj59uubOnauxY8dm+/lJSUlat26dIiMjzSvSTu3bt0+lS5eWJC1fvlyjR4/Wa6+9plmzZmVu4+Liou7du+v999+3qszcM3BP//nPf4z/+7//M9zc3IzPP//c1L6CgoKMl19+OfNxRkaGUb58eeOdd97J8762bNlieHp6Gk8++aRx6tSpPG8fKCjWrVtneHh4GLVq1TKSkpJM6yc/x296errxyiuvGJKMl19+2UhLS8vzPgB79NFHHxmSGFMoknr16mW0b98+y7KOHTsaderUMQzDMBYuXGi4ubkZkox9+/YZhmEYAwYMMKpWrWqkpqYahmEYkydPNurXr//Avg4ePGg0bdrU8PDwMEqUKGHUrVvX+OabbwzDMIzz588bzz//vFG+fHnDzc3NqF69uvHpp59mef6jjz5qTJ8+PcuyWrVqGWPHjs18fOnSJeOll14yypYtaxQrVsx48sknjbVr12au37lzp/HUU08Zrq6uRoUKFYzBgwcbKSkphmEYRpMmTQxJd/189NFHD9w3Sca8efOMDh06GG5ubkblypWN1atXP/B52bFv374sr//AgQONZs2aZdlmx44dhouLi3H9+vU86TO/cabzPsqVK6cdO3YoPDxcEREReuedd0y5Cf2tW7e0b98+hYWFZS5zcHBQWFiY9u7dm6d9zZkzR23atFFoaKj27NmjgICAPG0fKEieeeYZ7d69W5cuXVJQUJC++eabPO8jP8fvtWvX1L59e82cOVP/+Mc/NGvWLDk5OeVpHwCAou/w4cPas2ePXFxcJEk9e/ZUw4YNJUnp6elav3695s+fr8WLF2fO9bFz507Vr1//gW2/8MILqlChgr755hvt27dPI0eOlLOzsyTp119/Vb169bR+/XodPnxYL730kv76178+1FdSbt++rTZt2mj37t1atGiRjhw5okmTJsnR0VGSdOLECbVu3VoRERE6dOiQli1bpl27dmnQoEGSpJUrVyo5OVmff/65JCk5OVnJycnq2rVrtvofP368unTpokOHDqlt27Z64YUXdPHixWzXn11XrlyRl5dXlmX169dXenq64uPj87y/fGF16i3oMjIyjDfeeMOQZPTs2dP49ddf87T9n3/+2ZBk7NmzJ8vy4cOHG0FBQXnSR1pamjF48GBDkvG3v/2NT3JhV86ePWs0aNDAcHV1NZYvX56nbefH+DUMwzh9+rRRo0YNo2TJksbGjRvzrF0Av+FMJ4qyXr16GY6Ojkbx4sWNYsWKGZIMBwcH47PPPsvcZvv27YYko1OnTsYjjzxiTJgwIUsbtWrVMt58880H9lWiRAkjJiYm27U988wzxrBhwzIfP+hM5+bNmw0HBwfjhx9+uGd7ffr0MV566aUsy3bu3Gk4ODgYN27cyFx2Z38fhiRjzJgxmY9TUlIMSXlyXP79mc7du3cbTk5OxubNm+/arnTp0g/1+hYknOl8AAcHB40fP16LFi3SsmXLFBYWpvPnz1tdVrZduXJF4eHh+uc//6l//vOfmjlzJmdHYFceeeQRbd++Xc8995y6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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from lambeq import AtomicType, IQPAnsatz\n", "\n", "ansatz = IQPAnsatz({AtomicType.NOUN: 1, AtomicType.SENTENCE: 1},\n", " n_layers=1, n_single_qubit_params=3)\n", "\n", "train_circuits = [ansatz(diagram) for diagram in train_diagrams]\n", "dev_circuits = [ansatz(diagram) for diagram in dev_diagrams]\n", "test_circuits = [ansatz(diagram) for diagram in test_diagrams]\n", "\n", "train_circuits[0].draw(figsize=(9, 9))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Parameterise" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "from lambeq import NumpyModel\n", "\n", "all_circuits = train_circuits + dev_circuits + test_circuits\n", "\n", "model = NumpyModel.from_diagrams(all_circuits, use_jit=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Define evaluation metric" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "from lambeq import BinaryCrossEntropyLoss\n", "\n", "# Using the builtin binary cross-entropy error from lambeq\n", "bce = BinaryCrossEntropyLoss(use_jax=True)\n", "\n", "acc = lambda y_hat, y: np.sum(np.round(y_hat) == y) / len(y) / 2 # half due to double-counting" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Initialize trainer" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "from lambeq import QuantumTrainer, SPSAOptimizer\n", "\n", "trainer = QuantumTrainer(\n", " model,\n", " loss_function=bce,\n", " epochs=EPOCHS,\n", " optimizer=SPSAOptimizer,\n", " optim_hyperparams={'a': 0.2, 'c': 0.06, 'A':0.01*EPOCHS},\n", " evaluate_functions={'acc': acc},\n", " evaluate_on_train=True,\n", " verbose='text',\n", " seed=0\n", ")" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "from lambeq import Dataset\n", "\n", "train_dataset = Dataset(\n", " train_circuits,\n", " train_labels,\n", " batch_size=BATCH_SIZE)\n", "\n", "val_dataset = Dataset(dev_circuits, dev_labels, shuffle=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Train" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Epoch 12: train/loss: 0.6881 valid/loss: 0.6194 train/time: 7.73s valid/time: 3.04s train/acc: 0.6429 valid/acc: 0.7000\n", "Epoch 24: train/loss: 0.5321 valid/loss: 0.5429 train/time: 0.23s valid/time: 0.05s train/acc: 0.7143 valid/acc: 0.7333\n", "Epoch 36: train/loss: 0.4615 valid/loss: 0.4834 train/time: 0.23s valid/time: 0.05s train/acc: 0.7714 valid/acc: 0.8000\n", "Epoch 48: train/loss: 0.2858 valid/loss: 0.4100 train/time: 0.24s valid/time: 0.05s train/acc: 0.8429 valid/acc: 0.7667\n", "Epoch 60: train/loss: 0.1604 valid/loss: 0.3585 train/time: 0.23s valid/time: 0.05s train/acc: 0.9143 valid/acc: 0.8333\n", "Epoch 72: train/loss: 0.2836 valid/loss: 0.3231 train/time: 0.23s valid/time: 0.05s train/acc: 0.9429 valid/acc: 0.8333\n", "Epoch 84: train/loss: 0.3280 valid/loss: 0.3091 train/time: 0.23s valid/time: 0.05s train/acc: 0.9143 valid/acc: 0.8333\n", "Epoch 96: train/loss: 0.2500 valid/loss: 0.2911 train/time: 0.23s valid/time: 0.05s train/acc: 0.9429 valid/acc: 0.8333\n", "Epoch 108: train/loss: 0.1780 valid/loss: 0.3062 train/time: 0.24s valid/time: 0.05s train/acc: 0.9286 valid/acc: 0.8333\n", "Epoch 120: train/loss: 0.0662 valid/loss: 0.2910 train/time: 0.25s valid/time: 0.05s train/acc: 0.9429 valid/acc: 0.8333\n", "\n", "Training completed!\n", "train/time: 9.83s train/time_per_epoch: 0.08s train/time_per_step: 0.03s valid/time: 3.49s valid/time_per_eval: 0.03s\n" ] } ], "source": [ "trainer.fit(train_dataset, val_dataset, log_interval=12)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Show results" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Test accuracy: 0.96666664\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1cAAAIjCAYAAADvBuGTAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAADL0ElEQVR4nOzdd3xUVfrH8c/MpEx6rxBaQHqTJmBBAREVu6KuoujaVtx12V1/4irYcV112VVc7FjWFXetawGpNhCQooD0lkB6Qnqfub8/LjPJkARIT8j3/XrNKzP3nnvn3EFz88xzznMshmEYiIiIiIiISKNYW7sDIiIiIiIipwIFVyIiIiIiIk1AwZWIiIiIiEgTUHAlIiIiIiLSBBRciYiIiIiINAEFVyIiIiIiIk1AwZWIiIiIiEgTUHAlIiIiIiLSBBRciYiIiIiINAEFVyKt6Oabb6Zbt24NOvbhhx/GYrE0bYdERKRDOXDgABaLhYULF7Z2V0ROCQquRGphsVhO6rFq1arW7mq79+677zJv3rzW7oaISJNZuHChx73CbrcTHx/PpEmT+Mc//kFBQUFrd1GAJ598ko8//rjF3zclJYWHH36YzZs3t/h7S/OzGIZhtHYnRNqad955x+P1W2+9xdKlS3n77bc9tk+cOJGYmJgGv09FRQVOpxNfX996H1tZWUllZSV2u73B798WXHzxxWzdupUDBw60dldERJrEwoULmT59Oo8++ijdu3enoqKCtLQ0Vq1axdKlS+nSpQuffvopgwYNau2ucuDAAbp3784bb7zBzTff3NrdaVGBgYFcddVVLZ61+/HHHxkxYkSH/Mw7Aq/W7oBIW3TDDTd4vP7hhx9YunRpje3HKi4uxt/f/6Tfx9vbu0H9A/Dy8sLLS/8Li4i0VZMnT2b48OHu17NmzWLFihVcfPHFXHLJJWzfvh0/P79W7KGINDUNCxRpoHHjxjFgwAA2bNjA2Wefjb+/Pw888AAAn3zyCRdddBHx8fH4+vqSmJjIY489hsPh8DjHsXOuXGPfn3nmGV5++WUSExPx9fVlxIgRrF+/3uPY2uZcWSwWZsyYwccff8yAAQPw9fWlf//+LF68uEb/V61axfDhw7Hb7SQmJvLSSy+d9Dyu3bt3c+WVVxIbG4vdbqdz585ce+215OXlebR75513GDZsGH5+foSHh3PttdeSnJzs8Rl+/vnnHDx40D18pqFz0ERE2oPzzjuPhx56iIMHD9YYJbFjxw6uuuoqwsPDsdvtDB8+nE8//dS9/8cff8RisfDmm2/WOO+SJUuwWCx89tln7m2HDx/mlltuISYmxn0/eP3110+qnytWrOCss84iICCA0NBQLr30UrZv3+7RxnXP2LFjB9dccw3BwcFERETwu9/9jtLSUo+2rvvTf/7zH/r164efnx+jR49my5YtALz00kv07NkTu93OuHHjah3NsHbtWi644AJCQkLw9/fnnHPO4fvvv6+1T3v27OHmm28mNDSUkJAQpk+fTnFxsUd/ioqKePPNN933nxNlkZ5//nn69++Pv78/YWFhDB8+nHfffdejzYk+81WrVjFixAgApk+f7n5vzXk7dehrb5FGyM7OZvLkyVx77bXccMMN7iGCCxcuJDAwkJkzZxIYGMiKFSuYPXs2+fn5/PWvfz3hed99910KCgq44447sFgsPP3001xxxRXs27fvhNmu7777jg8//JDf/OY3BAUF8Y9//IMrr7ySpKQkIiIiANi0aRMXXHABcXFxPPLIIzgcDh599FGioqJO2Lfy8nImTZpEWVkZ99xzD7GxsRw+fJjPPvuM3NxcQkJCAHjiiSd46KGHuOaaa/j1r39NZmYmzz//PGeffTabNm0iNDSUP//5z+Tl5XHo0CH+9re/AeYwDRGRU9mNN97IAw88wFdffcVtt90GwLZt2xg7diydOnXi/vvvJyAggPfff5/LLruMDz74gMsvv5zhw4fTo0cP3n//fW666SaPcy5atIiwsDAmTZoEQHp6OmeccYY7qImKiuLLL7/k1ltvJT8/n3vvvbfO/i1btozJkyfTo0cPHn74YUpKSnj++ecZO3YsGzdurPEl2DXXXEO3bt2YO3cuP/zwA//4xz84cuQIb731lke7b7/9lk8//ZS7774bgLlz53LxxRdz33338eKLL/Kb3/yGI0eO8PTTT3PLLbewYsUK97ErVqxg8uTJDBs2jDlz5mC1WnnjjTc477zz+Pbbbxk5cmSNPnXv3p25c+eyceNGXn31VaKjo/nLX/4CwNtvv82vf/1rRo4cye233w5AYmJinZ/JK6+8wm9/+1uuuuoqd/D4888/s3btWq6//vqT/sz79u3Lo48+yuzZs7n99ts566yzABgzZkyd7y3tjCEiJ3T33Xcbx/7vcs455xiAsWDBghrti4uLa2y74447DH9/f6O0tNS97aabbjK6du3qfr1//34DMCIiIoycnBz39k8++cQAjP/973/ubXPmzKnRJ8Dw8fEx9uzZ4972008/GYDx/PPPu7dNmTLF8Pf3Nw4fPuzetnv3bsPLy6vGOY+1adMmAzD+85//1NnmwIEDhs1mM5544gmP7Vu2bDG8vLw8tl900UUen4GISHv3xhtvGICxfv36OtuEhIQYQ4cOdb8eP368MXDgQI97hNPpNMaMGWP06tXLvW3WrFmGt7e3xz2irKzMCA0NNW655Rb3tltvvdWIi4szsrKyPN732muvNUJCQtz3Kdd954033nC3GTJkiBEdHW1kZ2e7t/3000+G1Wo1pk2b5t7mug9dcsklHu/xm9/8xgCMn376yb0NMHx9fY39+/e7t7300ksGYMTGxhr5+fke1wi42zqdTqNXr17GpEmTDKfT6W5XXFxsdO/e3Zg4cWKNPlX/LAzDMC6//HIjIiLCY1tAQIBx0003GSfj0ksvNfr373/cNif7ma9fv77GZy6nDg0LFGkEX19fpk+fXmN79TH0BQUFZGVlcdZZZ1FcXMyOHTtOeN6pU6cSFhbmfu36Zmvfvn0nPHbChAke374NGjSI4OBg97EOh4Nly5Zx2WWXER8f727Xs2dPJk+efMLzuzJTS5Ys8RhiUd2HH36I0+nkmmuuISsry/2IjY2lV69erFy58oTvIyJyKgsMDHRXDczJyWHFihVcc8017ntGVlYW2dnZTJo0id27d3P48GHAvD9UVFTw4Ycfus/11VdfkZuby9SpUwEwDIMPPviAKVOmYBiGx+/hSZMmkZeXx8aNG2vtV2pqKps3b+bmm28mPDzcvX3QoEFMnDiRL774osYxrkyUyz333ANQo+348eM9sl6jRo0C4MorryQoKKjGdtd9a/PmzezevZvrr7+e7Oxs97UUFRUxfvx4vvnmG5xOp8d73XnnnR6vzzrrLLKzs8nPz6/1uk8kNDSUQ4cO1Rii79KYz1xOLRoWKNIInTp1wsfHp8b2bdu28eCDD7JixYoav8iPnZdUmy5duni8dgVaR44cqfexruNdx2ZkZFBSUkLPnj1rtKtt27G6d+/OzJkzee655/jXv/7FWWedxSWXXMINN9zgDrx2796NYRj06tWr1nM0ppCHiMipoLCwkOjoaAD27NmDYRg89NBDPPTQQ7W2z8jIoFOnTgwePJg+ffqwaNEibr31VsAcEhgZGcl5550HQGZmJrm5ubz88su8/PLLdZ6vNgcPHgSgd+/eNfb17duXJUuWUFRUREBAgHv7sb/rExMTsVqtNeZNHXt/ct0zEhISat3uum/t3r0boMZQyOry8vI8vpQ83n00ODi4zvPU5f/+7/9YtmwZI0eOpGfPnpx//vlcf/31jB07FmjcZy6nFgVXIo1QW5Wn3NxczjnnHIKDg3n00UdJTEzEbrezceNG/u///q/Gt2u1sdlstW43TmLlhMYce7KeffZZbr75Zj755BO++uorfvvb37rH2nfu3Bmn04nFYuHLL7+stT+aVyUiHdmhQ4fIy8tzf6Hlui/88Y9/dM+ZOlb1L7+mTp3KE088QVZWFkFBQXz66adcd9117gqyrvPdcMMNdQYkzVkGvq7CSHXdn05033Jdz1//+leGDBlSa9tj7ytNfS/s27cvO3fu5LPPPmPx4sV88MEHvPjii8yePZtHHnmk1T9zaTsUXIk0sVWrVpGdnc2HH37I2Wef7d6+f//+VuxVlejoaOx2O3v27Kmxr7ZtdRk4cCADBw7kwQcfZPXq1YwdO5YFCxbw+OOPk5iYiGEYdO/endNOO+245zmZ6oQiIqcS15qJrkCqR48egJnVnzBhwgmPnzp1Ko888ggffPABMTEx5Ofnc+2117r3R0VFERQUhMPhOKnzVde1a1cAdu7cWWPfjh07iIyM9MhagZlZ6t69u/v1nj17cDqdTVb91TXUPTg4uN7Xczz1vf8EBAQwdepUpk6dSnl5OVdccQVPPPEEs2bNqtdnrvveqU1zrkSamOvbsurfjpWXl/Piiy+2Vpc82Gw2JkyYwMcff0xKSop7+549e/jyyy9PeHx+fj6VlZUe2wYOHIjVaqWsrAyAK664ApvNxiOPPFLjW0LDMMjOzna/DggIOKmhkiIip4IVK1bw2GOP0b17d371q18B5pde48aN46WXXiI1NbXGMZmZmR6v+/bty8CBA1m0aBGLFi0iLi7O48s8m83GlVdeyQcffMDWrVtPeL7q4uLiGDJkCG+++Sa5ubnu7Vu3buWrr77iwgsvrHHM/PnzPV4///zzACc1j/dkDBs2jMTERJ555hkKCwtr7D/e9RxPQECAxzUeT/X7FoCPjw/9+vXDMAwqKirq9Zm7gtOTfW9pX5S5EmliY8aMISwsjJtuuonf/va3WCwW3n777SYdltdYDz/8MF999RVjx47lrrvuwuFw8MILLzBgwAA2b9583GNXrFjBjBkzuPrqqznttNOorKzk7bffdt9YwPyW8fHHH2fWrFkcOHCAyy67jKCgIPbv389HH33E7bffzh//+EfAvGkuWrSImTNnMmLECAIDA5kyZUpzfwQiIs3uyy+/ZMeOHVRWVpKens6KFStYunQpXbt25dNPP8Vut7vbzp8/nzPPPJOBAwdy22230aNHD9LT01mzZg2HDh3ip59+8jj31KlTmT17Nna7nVtvvRWr1fP78qeeeoqVK1cyatQobrvtNvr160dOTg4bN25k2bJl5OTk1Nnvv/71r0yePJnRo0dz6623ukuxh4SE8PDDD9dov3//fi655BIuuOAC1qxZwzvvvMP111/P4MGDG/cBHmW1Wnn11VeZPHky/fv3Z/r06XTq1InDhw+zcuVKgoOD+d///lfv8w4bNoxly5bx3HPPER8fT/fu3d3FNI51/vnnExsby9ixY4mJiWH79u288MILXHTRRe5iHCf7mScmJhIaGsqCBQsICgoiICCAUaNGeWT/pB1r+QKFIu1PXaXY6yrL+v333xtnnHGG4efnZ8THxxv33XefsWTJEgMwVq5c6W5XVyn2v/71rzXOCRhz5sxxv66rFPvdd99d49iuXbvWKDe7fPlyY+jQoYaPj4+RmJhovPrqq8Yf/vAHw2631/EpmPbt22fccsstRmJiomG3243w8HDj3HPPNZYtW1aj7QcffGCceeaZRkBAgBEQEGD06dPHuPvuu42dO3e62xQWFhrXX3+9ERoaagAqyy4i7Z6rFLvr4ePjY8TGxhoTJ040/v73v3uUHa9u7969xrRp04zY2FjD29vb6NSpk3HxxRcb//3vf2u03b17t/v83333Xa3nS09PN+6++24jISHB8Pb2NmJjY43x48cbL7/8srtNbaXYDcMwli1bZowdO9bw8/MzgoODjSlTphi//PKLRxvXfeiXX34xrrrqKiMoKMgICwszZsyYYZSUlHi0re3+VNc9b+XKlbUu+bFp0ybjiiuuMCIiIgxfX1+ja9euxjXXXGMsX768Rp8yMzM9jnX9m1QvBb9jxw7j7LPPNvz8/AzguGXZX3rpJePss892v3diYqLxpz/9ycjLy/NodzKfuWGYS6z069fPvQSKyrKfOiyG0Ya+TheRVnXZZZexbds2d2UmERGRujz88MM88sgjZGZmEhkZ2drdEWkTNOdKpIMqKSnxeL17926++OILxo0b1zodEhEREWnnNOdKpIPq0aMHN998Mz169ODgwYP885//xMfHh/vuu6+1uyYiIiLSLim4EumgLrjgAv7973+TlpaGr68vo0eP5sknn6xz4V8REREROT7NuRIREREREWkCmnMlIiIiIiLSBBRciYiIiIiINAHNuaqF0+kkJSWFoKAgLBZLa3dHRKTDMAyDgoIC4uPjayyK2tHp3iQi0jrqc29ScFWLlJQUEhISWrsbIiIdVnJyMp07d27tbrQpujeJiLSuk7k3KbiqRVBQEGB+gMHBwa3cGxGRjiM/P5+EhAT372GponuTiEjrqM+9ScFVLVzDLYKDg3UDExFpBRr2VpPuTSIiretk7k0a0C4iIiIiItIEFFyJiIiIiIg0AQVXIiIiIiIiTUDBlYiIiIiISBNQcCUiIiIiItIEFFyJiIh0cA6ng9nfz+aDXR+0dldERNo1BVciIiId3I6cHXy05yNe+vml1u6KiEi7puBKRESkgyusKASgzFHWyj0REWnfWjW4+uabb5gyZQrx8fFYLBY+/vjj47ZftWoVFoulxiMtLc2j3fz58+nWrRt2u51Ro0axbt26ZrwKERGR9q2ksgSAckd5K/dERKR9a9XgqqioiMGDBzN//vx6Hbdz505SU1Pdj+joaPe+RYsWMXPmTObMmcPGjRsZPHgwkyZNIiMjo6m7LyIickpwBVcVzopW7omISPvm1ZpvPnnyZCZPnlzv46KjowkNDa1133PPPcdtt93G9OnTAViwYAGff/45r7/+Ovfff39juisiInJKqp65MgwDi8XSyj0SEWmf2uWcqyFDhhAXF8fEiRP5/vvv3dvLy8vZsGEDEyZMcG+zWq1MmDCBNWvW1Hm+srIy8vPzPR4iIiKtqSXvTa7gysCg0qhstvcRETnVtavgKi4ujgULFvDBBx/wwQcfkJCQwLhx49i4cSMAWVlZOBwOYmJiPI6LiYmpMS+rurlz5xISEuJ+JCQkNOt1iIiInEhT3psO5h/kxc0v8t6O92rd7wquACocGhooItJQ7Sq46t27N3fccQfDhg1jzJgxvP7664wZM4a//e1vjTrvrFmzyMvLcz+Sk5ObqMciIiIN05T3pkMFh/jnT//kg921r2NVXFHsfq55VyIiDdeqc66awsiRI/nuu+8AiIyMxGazkZ6e7tEmPT2d2NjYOs/h6+uLr69vs/ZTRESkPpry3uRrM89TWlla636PzJWCKxGRBmtXmavabN68mbi4OAB8fHwYNmwYy5cvd+93Op0sX76c0aNHt1YXRUREWpWflx8ApY4TB1cqxy4i0nCtmrkqLCxkz5497tf79+9n8+bNhIeH06VLF2bNmsXhw4d56623AJg3bx7du3enf//+lJaW8uqrr7JixQq++uor9zlmzpzJTTfdxPDhwxk5ciTz5s2jqKjIXT1QRESko3Flrsoqa18kWMGViEjTaNXg6scff+Tcc891v545cyYAN910EwsXLiQ1NZWkpCT3/vLycv7whz9w+PBh/P39GTRoEMuWLfM4x9SpU8nMzGT27NmkpaUxZMgQFi9eXKPIhYiISEdh97IDJ5e50rBAEZGGa9Xgaty4cRiGUef+hQsXery+7777uO+++0543hkzZjBjxozGdk9EROSU4A6uKktrXcfKI3PlVOZKRKSh2v2cKxERETk+u80MrgyMWoMnlWIXEWkaCq5EREROcb5eVVUHa6sYqGGBIiJNQ8GViIjIKc7b6o2XxZwJcKLgSgUtREQaTsGViIhIB3C8ohbKXImINA0FVyIiIh3A8RYSVuZKRKRpKLgSERHpAOrKXBmGocyViEgTUXAlIiLSAbgqBh67kHC5sxyn4ax6rcyViEiDKbgSERHpAOrKXJVUlHi8VuZKRKThFFyJiIh0AHXNuao+JBAUXImINIaCKxERkQ7Az8sPqCVzdUxwpWGBIiINp+BKRESkA1DmSkSk+Sm4EhER6QDcc66OCa6KK4s9XitzJSLScAquREREOoCTHhboVHAlItJQCq5EREQ6gJMeFujQsEARkYZScCUiItIB1FmKXXOuRESajIIrERGRDqCuRYRVLVBEpOkouBIREekAlLkSEWl+Cq5EREQ6gJOdc6XMlYhIwym4EhER6QDqrBZYYQZXQd5BgDJXIiKNoeBKRESkA3BlruqacxXsGwyoFLuISGMouBIREekAXHOuShyewwDdwZWPGVypFLuISMMpuBIREekA3AUt6phzFeIbAmhYoIhIYyi4EhER6QDcpdgddQwLPJq5UkELEZGGa9Xg6ptvvmHKlCnEx8djsVj4+OOPj9v+ww8/ZOLEiURFRREcHMzo0aNZsmSJR5uHH34Yi8Xi8ejTp08zXoWIiEjb5x4WWFn7sEBlrkREGq9Vg6uioiIGDx7M/PnzT6r9N998w8SJE/niiy/YsGED5557LlOmTGHTpk0e7fr3709qaqr78d133zVH90VERNoNZa5ERJqfV2u++eTJk5k8efJJt583b57H6yeffJJPPvmE//3vfwwdOtS93cvLi9jY2KbqpoiISLunOVciIs2vVYOrxnI6nRQUFBAeHu6xfffu3cTHx2O32xk9ejRz586lS5cudZ6nrKyMsrKqb/Ly8/Obrc8iIiIno6nvTe5S7I4ynIYTq8UcvFIjuFK1QBGRBmvXBS2eeeYZCgsLueaaa9zbRo0axcKFC1m8eDH//Oc/2b9/P2eddRYFBQV1nmfu3LmEhIS4HwkJCS3RfRERkTo19b3JtYgweA4NrDEsUOtciYg0WLsNrt59910eeeQR3n//faKjo93bJ0+ezNVXX82gQYOYNGkSX3zxBbm5ubz//vt1nmvWrFnk5eW5H8nJyS1xCSIiInVq6nuTK3MFngsJa1igiEjTaZfDAt977z1+/etf85///IcJEyYct21oaCinnXYae/bsqbONr68vvr6+de4XERFpaU19b7JZbXhbvalwVlDqMOddVTor3cGUClqIiDReu8tc/fvf/2b69On8+9//5qKLLjph+8LCQvbu3UtcXFwL9E5ERKTtOrYce/Wy7NUzV4ZhtHznREROAa0aXBUWFrJ582Y2b94MwP79+9m8eTNJSUmAOSRi2rRp7vbvvvsu06ZN49lnn2XUqFGkpaWRlpZGXl6eu80f//hHvv76aw4cOMDq1au5/PLLsdlsXHfddS16bSIiIm3NseXYXcGVzWLD39vf3a7SWdnynRMROQW0anD1448/MnToUHcZ9ZkzZzJ06FBmz54NQGpqqjvQAnj55ZeprKzk7rvvJi4uzv343e9+525z6NAhrrvuOnr37s0111xDREQEP/zwA1FRUS17cSIiIm3MseXYXcGVn5cfPlYfdzsVtRARaZhWnXM1bty44w49WLhwocfrVatWnfCc7733XiN7JSIicmpyFbVwzbmqHlx5W73d7SocFeBd83gRETm+djfnSkRERBrGVY69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ZePrZcPXy0pqXgk70wrYnVFIbnEFxeUOwIHFYs4viwr0xdtmxdtmpXqNjogAn+a4dBERkTZNwZWIyCnAYrEQH+pHfKjfCdvZjlOocFzvaMbVMeeqpNxBWn4ppRUOukcGYPeuuyqiiIhIR6TgSkREToqfj43ukQGt3Q0REZE2q2MsnCIiIiIiItLMFFyJiIiIiIg0AQVXIiIiIiIiTUDBlYiIiIiISBNQcCUiIiIiItIEFFyJiIiIiIg0AZVir4VhGIC5GrOIiLQc1+9d1+9hqaJ7k4hI66jPvUnBVS0KCgoASEhIaOWeiIh0TAUFBYSEhLR2N9oU3ZtERFrXydybLIa+HqzB6XSSkpJCUFAQFovlpI7Jz88nISGB5ORkgoODm7mHLUfX1b7outqPU/GaoPHXZRgGBQUFxMfHY7Vq5Hp1ujdV0XW1L6fidZ2K1wS6rrrU596kzFUtrFYrnTt3btCxwcHBp9R/jC66rvZF19V+nIrXBI27LmWsaqd7U026rvblVLyuU/GaQNdVm5O9N+lrQRERERERkSag4EpERERERKQJKLhqIr6+vsyZMwdfX9/W7kqT0nW1L7qu9uNUvCY4da+rvTpV/z10Xe3LqXhdp+I1ga6rKaighYiIiIiISBNQ5kpERERERKQJKLgSERERERFpAgquREREREREmoCCKxERERERkSag4EpERERERKQJKLgSERERERFpAgquREREREREmoCCKxERERERkSag4EpERERERKQJKLgSERERERFpAgquREREREREmoCCKxERERERkSag4EpERERERKQJKLgSERERERFpAgquREREREREmoCCKxERERERkSag4EpERERERKQJKLgSERERERFpAgquREREREREmoCCKxERERERkSag4EpERERERKQJKLgSERERERFpAgquREREREREmoCCKxERERERkSag4EpERERERKQJKLgSERERERFpAgquREREREREmoCCKxERERERkSag4EpERERERKQJKLgSERERERFpAgquREREREREmoCCKxERERERkSag4EpERERERKQJKLgSERERERFpAl6t3YG2yOl0kpKSQlBQEBaLpbW7IyLSYRiGQUFBAfHx8Vit+v6vOt2bRERaR33uTQquapGSkkJCQkJrd0NEpMNKTk6mc+fOrd2NNkX3JhGR1nUy9yYF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z1VdXS3u27dP3LdvnwhAXL58ubhv3z6lOpE/z/Czn/1MHDlypLhz505x+/bt4oABAzq9ZHlzz2WxWMQbb7xR7NWrl7h//363vyONjY3KNYLxucIZ+6bQwb4peP6GN8W+KXj7pmDtlxhcBcjLL78s9u7dWzSZTOK4cePEb775prOb5DcAXl+vvfaackx9fb344IMPiomJiWJUVJR48803i0VFRZ3X6DZq2oGF6nP9+9//FocNGyaazWZx8ODB4t///ne3/Q6HQ3ziiSfElJQU0Ww2i5MnTxaPHTvWSa31T1VVlThv3jyxd+/eYkREhNivXz/x8ccfd/sjGArPtXnzZq//f5o5c6Yoiv49w4ULF8Tp06eLMTExYlxcnDhr1iyxurq6E57GpbnnOnnypM+/I5s3b1auEYzPFe7YN4UG9k3Bi32TS7D9DQ/WfkkQRdUS00RERERERNQmnHNFREREREQUAAyuiIiIiIiIAoDBFRERERERUQAwuCIiIiIiIgoABldEREREREQBwOCKiIiIiIgoABhcERERERERBQCDKyIiIiIiogBgcEXURWRmZmLFihWd3QwiIiIF+yYKNwyuiDRw9913Y+rUqQCAq666CvPnz++we69duxYJCQke23fv3o377ruvw9pBRETBhX0TkfYMnd0AIvKPxWKByWRq8/k9evQIYGuIiIjYNxE1xZErIg3dfffd2Lp1K1588UUIggBBEHDq1CkAwKFDh3DttdciJiYGKSkpuOuuu1BWVqace9VVV2Hu3LmYP38+kpKSMGXKFADA8uXLkZ2djejoaGRkZODBBx9ETU0NAGDLli2YNWsWKisrlfs99dRTADxTLwoLC3HTTTchJiYGcXFxuO2221BSUqLsf+qppzBixAi8/vrryMzMRHx8PG6//XZUV1crx7z77rvIzs5GZGQkunfvjtzcXNTW1mr0T5OIiAKBfRORdhhcEWnoxRdfRE5ODmbPno2ioiIUFRUhIyMDFRUVuOaaazBy5Ejs2bMHn332GUpKSnDbbbe5nb9u3TqYTCZ89dVXWLVqFQBAp9PhpZdewuHDh7Fu3Tps2rQJv//97wEAEydOxIoVKxAXF6fc7+GHH/Zol8PhwE033YTy8nJs3boVGzduREFBAaZNm+Z23A8//IAPPvgAH3/8MT7++GNs3boVy5YtAwAUFRVh+vTpuOeee3D06FFs2bIFt9xyC0RR1OIfJRERBQj7JiLtMC2QSEPx8fEwmUyIiopCamqqsv2VV17ByJEjsWTJEmXbmjVrkJGRgePHj2PgwIEAgAEDBuC5555zu6Y6Rz4zMxPPPPMM7r//fvzlL3+ByWRCfHw8BEFwu19TeXl5OHjwIE6ePImMjAwAwD//+U8MHToUu3fvxtixYwFIHd3atWsRGxsLALjrrruQl5eHZ599FkVFRbDZbLjlllvQp08fAEB2dnY7/mkREVFHYN9EpB2OXBF1ggMHDmDz5s2IiYlRXoMHDwYg/SInGz16tMe5X3zxBSZPnoyePXsiNjYWd911Fy5cuIC6ujq/73/06FFkZGQonRcAZGVlISEhAUePHlW2ZWZmKp0XAKSlpaG0tBQAMHz4cEyePBnZ2dm49dZbsXr1aly8eNH/fwhERBRU2DcRtR+DK6JOUFNTgxtuuAH79+93e504cQJXXHGFclx0dLTbeadOncLPf/5zXHrppfjXv/6FvXv3YuXKlQCkScWBZjQa3b4LggCHwwEA0Ov12LhxI/7zn/8gKysLL7/8MgYNGoSTJ08GvB1ERKQ99k1E7cfgikhjJpMJdrvdbduoUaNw+PBhZGZmon///m6vpp2W2t69e+FwOPD8889jwoQJGDhwIM6dO9fi/ZoaMmQIzpw5gzNnzijbjhw5goqKCmRlZfn9bIIgYNKkSfjjH/+Iffv2wWQy4f333/f7fCIi6hzsm4i0weCKSGOZmZnYuXMnTp06hbKyMjgcDsyZMwfl5eWYPn06du/ejR9++AGff/45Zs2a1Wzn079/f1itVrz88ssoKCjA66+/rkwmVt+vpqYGeXl5KCsr85qSkZubi+zsbNxxxx3Iz8/Hrl27MGPGDFx55ZUYM2aMX8+1c+dOLFmyBHv27EFhYSHee+89nD9/HkOGDGndPyAiIupw7JuItMHgikhjDz/8MPR6PbKystCjRw8UFhYiPT0dX331Fex2O376058iOzsb8+fPR0JCAnQ63/+3HD58OJYvX44//elPGDZsGN58800sXbrU7ZiJEyfi/vvvx7Rp09CjRw+PSceA9Kvehx9+iMTERFxxxRXIzc1Fv379sGHDBr+fKy4uDtu2bcN1112HgQMH4g9/+AOef/55XHvttf7/wyEiok7BvolIG4LI2pRERERERETtxpErIiIiIiKiAGBwRUREREREFAAMroiIiIiIiAKAwRUREREREVEAMLgiIiIiIiIKAAZXREREREREAcDgioiIiIiIKAAYXBEREREREQUAgysiIiIiIqIAYHBFREREREQUAAyuiIiIiIiIAuD/A7OLCjZXvRQhAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "fig, ((ax_tl, ax_tr), (ax_bl, ax_br)) = plt.subplots(2, 2, sharex=True, sharey='row', figsize=(10, 6))\n", "ax_tl.set_title('Training set')\n", "ax_tr.set_title('Development set')\n", "ax_bl.set_xlabel('Iterations')\n", "ax_br.set_xlabel('Iterations')\n", "ax_bl.set_ylabel('Accuracy')\n", "ax_tl.set_ylabel('Loss')\n", "\n", "colours = iter(plt.rcParams['axes.prop_cycle'].by_key()['color'])\n", "range_ = np.arange(1, trainer.epochs + 1)\n", "ax_tl.plot(range_, trainer.train_epoch_costs, color=next(colours))\n", "ax_bl.plot(range_, trainer.train_eval_results['acc'], color=next(colours))\n", "ax_tr.plot(range_, trainer.val_costs, color=next(colours))\n", "ax_br.plot(range_, trainer.val_eval_results['acc'], color=next(colours))\n", "\n", "test_acc = acc(model(test_circuits), np.array(test_labels))\n", "print('Test accuracy:', test_acc)" ] } ], "metadata": { "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 4 }