DIGITS-CNN/cars/architecture-investigations/architecture.ipynb

662 lines
991 KiB
Plaintext
Raw Normal View History

2021-04-10 12:20:26 +01:00
{
"cells": [
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 187,
2021-04-12 16:06:52 +01:00
"id": "682fef9a",
2021-04-10 12:20:26 +01:00
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib as mpl\n",
"from matplotlib import pyplot as plt\n",
"import seaborn as sns\n",
"\n",
"fig_dpi = 200\n",
"lw = 3"
2021-04-10 12:20:26 +01:00
]
},
{
"cell_type": "markdown",
2021-04-12 16:06:52 +01:00
"id": "75cc3c1d",
2021-04-10 12:20:26 +01:00
"metadata": {},
"source": [
"# Dense Layers\n",
"\n",
"Exponential LR Decay: 0.98\n",
"\n",
"100 Epochs\n",
"\n",
"## Index\n",
"0. fc layers\n",
"1. nodes per layer\n",
"2. top-1 accuracy\n",
"3. top-5 accuracy\n",
"4. last val loss\n",
"5. last val accuracy"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 188,
2021-04-12 16:06:52 +01:00
"id": "85cb4e35",
2021-04-10 12:20:26 +01:00
"metadata": {},
"outputs": [],
"source": [
"fc_results = np.array([\n",
" [1, 256, 52.44, 79.86, 2.49, 57.66],\n",
2021-04-10 12:20:26 +01:00
" [1, 512, 49.29, 73.93, 2.95, 53.25],\n",
" [1, 1024, 40.7, 68.38, 3.66, 45.22],\n",
" [1, 2048, 32.12, 58.93, 4.66, 35.72],\n",
" [1, 4096, 24.03, 46.76, 5.61, 27.94],\n",
" [1, 8192, 19.70, 41.01, 6.42, 23.96],\n",
" \n",
" [2, 256, 54.48, 81.22, 1.86, 57.11],\n",
2021-04-10 12:20:26 +01:00
" [2, 512, 56.64, 82.46, 1.94, 60.23],\n",
" [2, 1024, 56.39, 81.53, 2.08, 60.91],\n",
" [2, 2048, 51.39, 79.00, 2.38, 56.74],\n",
" [2, 4096, 44.41, 71.83, 3.04, 47.61], # DEFAULT ALEXNET\n",
" [2, 8192, 37.74, 64.36, 3.60, 42.40],\n",
" \n",
" [3, 256, 0.80, 2.10, 5.29, 0.55],\n",
2021-04-10 12:20:26 +01:00
" [3, 512, 30.7, 65.16, 2.57, 30.82],\n",
" [3, 1024, 48.36, 76.65, 2.30, 49.88],\n",
" [3, 2048, 54.11, 80.48, 2.38, 58.21],\n",
" [3, 4096, 54.48, 82.09, 2.39, 57.17],\n",
" [3, 8192, 50.71, 78.57, 2.55, 55.88],\n",
" \n",
" [4, 256, 0.80, 2.29, 5.29, 0.55],\n",
" [4, 512, 0.80, 2.10, 5.29, 0.55],\n",
" [4, 1024, 0.80, 2.10, 5.29, 0.55],\n",
2021-04-10 12:20:26 +01:00
" [4, 2048, 25.45, 60.9, 2.84, 28.55],\n",
" [4, 4096, 41.14, 73.81, 2.81, 46.32],\n",
" [4, 8192, 49.85, 77.58, 2.97, 53.92]\n",
"])\n",
"\n",
"fc_0_results = [0, 196, 28.91, 54.05, 6.52, 33.21]\n",
"\n",
"layers = [1, 2, 3, 4]\n",
"nodes = [256, 512, 1024, 2048, 4096, 8192]\n",
2021-04-10 12:20:26 +01:00
"\n",
"fc_matrix = np.zeros((len(layers), len(nodes)))\n",
2021-04-10 12:20:26 +01:00
"for i in fc_results:\n",
" fc_matrix[layers.index(i[0]), nodes.index(i[1])] = i[2]"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 189,
2021-04-12 16:06:52 +01:00
"id": "0fd9f416",
2021-04-10 12:20:26 +01:00
"metadata": {},
"outputs": [
{
"output_type": "display_data",
2021-04-10 12:20:26 +01:00
"data": {
"text/plain": "<Figure size 1200x800 with 2 Axes>",
2021-04-30 19:47:47 +01:00
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg height=\"275.704424pt\" version=\"1.1\" viewBox=\"0 0 322.010503 275.704424\" width=\"322.010503pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <metadata>\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n <cc:Work>\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n <dc:date>2021-04-29T22:25:24.132437</dc:date>\n <dc:format>image/svg+xml</dc:format>\n <dc:creator>\n <cc:Agent>\n <dc:title>Matplotlib v3.4.1, https://matplotlib.org/</dc:title>\n </cc:Agent>\n </dc:creator>\n </cc:Work>\n </rdf:RDF>\n </metadata>\n <defs>\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 275.704424 \nL 322.010503 275.704424 \nL 322.010503 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"patch_2\">\n <path d=\"M 70.5522 239.758125 \nL 287.9922 239.758125 \nL 287.9922 22.318125 \nL 70.5522 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"pane3d_1\">\n <g id=\"patch_3\">\n <path d=\"M 92.669404 195.075752 \nL 143.748167 112.054079 \nL 141.604511 33.091819 \nL 87.225925 113.992856 \n\" style=\"fill:#f2f2f2;opacity:0.5;stroke:#f2f2f2;stroke-linejoin:miter;\"/>\n </g>\n </g>\n <g id=\"pane3d_2\">\n <g id=\"patch_4\">\n <path d=\"M 143.748167 112.054079 \nL 267.12988 140.711755 \nL 272.010591 60.930132 \nL 141.604511 33.091819 \n\" style=\"fill:#e6e6e6;opacity:0.5;stroke:#e6e6e6;stroke-linejoin:miter;\"/>\n </g>\n </g>\n <g id=\"pane3d_3\">\n <g id=\"patch_5\">\n <path d=\"M 92.669404 195.075752 \nL 225.306574 228.933476 \nL 267.12988 140.711755 \nL 143.748167 112.054079 \n\" style=\"fill:#ececec;opacity:0.5;stroke:#ececec;stroke-linejoin:miter;\"/>\n </g>\n </g>\n <g id=\"axis3d_1\">\n <g id=\"line2d_1\">\n <path d=\"M 92.669404 195.075752 \nL 225.306574 228.933476 \n\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"text_1\">\n <!-- Fully Connected Layers -->\n <g transform=\"translate(89.967902 237.72124)rotate(-345.680153)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 628 4666 \nL 3309 4666 \nL 3309 4134 \nL 1259 4134 \nL 1259 2759 \nL 3109 2759 \nL 3109 2228 \nL 1259 2228 \nL 1259 0 \nL 628 0 \nL 628 4666 \nz\n\" id=\"DejaVuSans-46\" transform=\"scale(0.015625)\"/>\n <path d=\"M 544 1381 \nL 544 3500 \nL 1119 3500 \nL 1119 1403 \nQ 1119 906 1312 657 \nQ 1506 409 1894 409 \nQ 2359 409 2629 706 \nQ 2900 1003 2900 1516 \nL 2900 3500 \nL 3475 3500 \nL 3475 0 \nL 2900 0 \nL 2900 538 \nQ 2691 219 2414 64 \nQ 2138 -91 1772 -91 \nQ 1169 -91 856 284 \nQ 544 659 544 1381 \nz\nM 1991 3584 \nL 1991 3584 \nz\n\" id=\"DejaVuSans-75\" transform=\"scale(0.015625)\"/>\n <path d=\"M 603 4863 \nL 1178 4863 \nL 1178 0 \nL 603 0 \nL 603 4863 \nz\n\" id=\"DejaVuSans-6c\" transform=\"scale(0.015625)\"/>\n <path d=\"M 2059 -325 \nQ 1816 -950 1584 -1140 \nQ 1353 -1331 966 -1331 \nL 506 -1331 \nL 506 -850 \nL 844 -850 \nQ 1081 -850 1212 -737 \nQ 1344 -625 1503 -206 \nL 1606 56 \nL 191 3500 \nL 800 3500 \nL 1894 763 \nL 2988 3500 \nL 3597 3500 \nL 2059 -325 \nz\n\" id=\"DejaVuSans-79\" transform=\"scale(0.015625)\"/>\n <path id=\"DejaVuSans-20\" transform=\"scale(0.015625)\"/>\n <path d=\"M 4122 4306 \nL 4122 3641 \nQ 3803 3938 3442 4084 \nQ 3081 4231 2675 4231 \nQ 1875 4231 1450 3742 \nQ 1025 3253 1025 2328 \nQ 1025 1406 1450 917 \nQ 1875 428 2675 428 \nQ 3081 428 3442 575 \nQ 3803 722 4122 1019 \nL 4122 359 \nQ 3791 134 3420 21 \nQ 3050 -91 2638 -91 \nQ 1578 -91 968 557 \nQ 359 1206 359 2328 \nQ 359 3453 968 4101 \nQ 1578 4750 2638 4750 \nQ 3056 4750 3426 4639 \nQ 3797 4528 4122 4306 \nz\n\" id=\"DejaVuSans-43\" transform=\"s
"image/png": "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
2021-04-10 12:20:26 +01:00
},
"metadata": {
"needs_background": "light"
}
2021-04-10 12:20:26 +01:00
}
],
"source": [
"X, Y = np.meshgrid(layers, nodes)\n",
"\n",
"fig = plt.figure(figsize=(6, 4))\n",
"# fig = plt.figure()\n",
"fig.set_dpi(fig_dpi)\n",
"\n",
2021-04-10 12:20:26 +01:00
"ax = plt.axes(projection='3d')\n",
"\n",
"surf = ax.plot_surface(X, Y, fc_matrix.T, cmap='viridis')\n",
"\n",
"ax.set_title('Accuracy For Different MLP Configurations')\n",
2021-04-10 12:20:26 +01:00
"ax.set_xlabel('Fully Connected Layers')\n",
"ax.set_ylabel('Nodes Per Layer')\n",
"ax.set_zlabel('Top-1 % Test Accuracy')\n",
"ax.set_xticks([1, 2, 3, 4])\n",
2021-04-10 12:20:26 +01:00
"\n",
"ax.view_init(40, -70)\n",
"fig.colorbar(surf, location=\"left\", shrink=0.7, aspect=15)\n",
"\n",
"# plt.tight_layout()\n",
"plt.savefig('fc-accuracy-surf.png')\n",
2021-04-10 12:20:26 +01:00
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 190,
2021-04-10 12:20:26 +01:00
"metadata": {},
"outputs": [
{
"output_type": "display_data",
2021-04-10 12:20:26 +01:00
"data": {
"text/plain": "<Figure size 432x288 with 2 Axes>",
2021-04-30 19:47:47 +01:00
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg height=\"277.314375pt\" version=\"1.1\" viewBox=\"0 0 359.93325 277.314375\" width=\"359.93325pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <metadata>\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n <cc:Work>\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n <dc:date>2021-04-29T22:25:24.593905</dc:date>\n <dc:format>image/svg+xml</dc:format>\n <dc:creator>\n <cc:Agent>\n <dc:title>Matplotlib v3.4.1, https://matplotlib.org/</dc:title>\n </cc:Agent>\n </dc:creator>\n </cc:Work>\n </rdf:RDF>\n </metadata>\n <defs>\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 277.314375 \nL 359.93325 277.314375 \nL 359.93325 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 37.55625 239.758125 \nL 305.39625 239.758125 \nL 305.39625 22.318125 \nL 37.55625 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"QuadMesh_1\">\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 37.55625 22.318125 \nL 104.51625 22.318125 \nL 104.51625 58.558125 \nL 37.55625 58.558125 \nL 37.55625 22.318125 \n\" style=\"fill:#f3e35a;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 104.51625 22.318125 \nL 171.47625 22.318125 \nL 171.47625 58.558125 \nL 104.51625 58.558125 \nL 104.51625 22.318125 \n\" style=\"fill:#f2f482;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 171.47625 22.318125 \nL 238.43625 22.318125 \nL 238.43625 58.558125 \nL 171.47625 58.558125 \nL 171.47625 22.318125 \n\" style=\"fill:#000004;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 238.43625 22.318125 \nL 305.39625 22.318125 \nL 305.39625 58.558125 \nL 238.43625 58.558125 \nL 238.43625 22.318125 \n\" style=\"fill:#000004;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 37.55625 58.558125 \nL 104.51625 58.558125 \nL 104.51625 94.798125 \nL 37.55625 94.798125 \nL 37.55625 58.558125 \n\" style=\"fill:#f9c72f;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 104.51625 58.558125 \nL 171.47625 58.558125 \nL 171.47625 94.798125 \nL 104.51625 94.798125 \nL 104.51625 58.558125 \n\" style=\"fill:#fcffa4;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 171.47625 58.558125 \nL 238.43625 58.558125 \nL 238.43625 94.798125 \nL 171.47625 94.798125 \nL 171.47625 58.558125 \n\" style=\"fill:#c83f4b;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 238.43625 58.558125 \nL 305.39625 58.558125 \nL 305.39625 94.798125 \nL 238.43625 94.798125 \nL 238.43625 58.558125 \n\" style=\"fill:#000004;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 37.55625 94.798125 \nL 104.51625 94.798125 \nL 104.51625 131.038125 \nL 37.55625 131.038125 \nL 37.55625 94.798125 \n\" style=\"fill:#f57d15;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 104.51625 94.798125 \nL 171.47625 94.798125 \nL 171.47625 131.038125 \nL 104.51625 131.038125 \nL 104.51625 94.798125 \n\" style=\"fill:#fafda1;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 171.47625 94.798125 \nL 238.43625 94.798125 \nL 238.43625 131.038125 \nL 171.47625 131.038125 \nL 171.47625 94.798125 \n\" style=\"fill:#fac026;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 238.43625 94.798125 \nL 305.39625 94.798125 \nL 305.39625 131.038125 \nL 238.43625 131.038125 \nL 238.43625 94.798125 \n\" style=\"fill:#000004;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 37.55625 131.038125 \nL 104.51625 131.038125 \nL 104.51625 167.278125 \nL 37.55625 167.278125 \nL 37.55625 131.038125 \n\" style=\"fill:#d04545;\"/>\n <path clip-path=\"url(#p33bcc0e205)\" d=\"M 104.51625 131.038125 \nL 171.47625 131.038125 \nL 171.47625 167.278125 \nL 104.51625 167.27812
"image/png": "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
2021-04-10 12:20:26 +01:00
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"fig = plt.figure()\n",
"# fig.set_dpi(fig_dpi)\n",
"\n",
"sns.heatmap(fc_matrix.T, xticklabels=layers, yticklabels=nodes, cmap='inferno')\n",
"\n",
"plt.title(\"Accuracy For Different MLP Configurations\")\n",
"plt.xlabel(\"Fully-Connected Layer\")\n",
"plt.ylabel(\"Nodes Per Layer\")\n",
"\n",
"# plt.tight_layout()\n",
"# plt.savefig('fc-accuracy-surf.png')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 191,
"id": "dc9d04b1",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 1000x800 with 1 Axes>",
2021-04-30 19:47:47 +01:00
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg height=\"279.754375pt\" version=\"1.1\" viewBox=\"0 0 352.343125 279.754375\" width=\"352.343125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <metadata>\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n <cc:Work>\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n <dc:date>2021-04-29T22:25:25.079568</dc:date>\n <dc:format>image/svg+xml</dc:format>\n <dc:creator>\n <cc:Agent>\n <dc:title>Matplotlib v3.4.1, https://matplotlib.org/</dc:title>\n </cc:Agent>\n </dc:creator>\n </cc:Work>\n </rdf:RDF>\n </metadata>\n <defs>\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 279.754375 \nL 352.343125 279.754375 \nL 352.343125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 40.603125 242.198125 \nL 345.143125 242.198125 \nL 345.143125 22.318125 \nL 40.603125 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"matplotlib.axis_1\">\n <g id=\"xtick_1\">\n <g id=\"line2d_1\">\n <path clip-path=\"url(#p63e55c71ff)\" d=\"M 45.51506 242.198125 \nL 45.51506 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_2\">\n <defs>\n <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"m7a7b4cf541\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n </defs>\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"45.51506\" xlink:href=\"#m7a7b4cf541\" y=\"242.198125\"/>\n </g>\n </g>\n <g id=\"text_1\">\n <!-- 0 -->\n <g transform=\"translate(42.33381 256.796563)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 2034 4250 \nQ 1547 4250 1301 3770 \nQ 1056 3291 1056 2328 \nQ 1056 1369 1301 889 \nQ 1547 409 2034 409 \nQ 2525 409 2770 889 \nQ 3016 1369 3016 2328 \nQ 3016 3291 2770 3770 \nQ 2525 4250 2034 4250 \nz\nM 2034 4750 \nQ 2819 4750 3233 4129 \nQ 3647 3509 3647 2328 \nQ 3647 1150 3233 529 \nQ 2819 -91 2034 -91 \nQ 1250 -91 836 529 \nQ 422 1150 422 2328 \nQ 422 3509 836 4129 \nQ 1250 4750 2034 4750 \nz\n\" id=\"DejaVuSans-30\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-30\"/>\n </g>\n </g>\n </g>\n <g id=\"xtick_2\">\n <g id=\"line2d_3\">\n <path clip-path=\"url(#p63e55c71ff)\" d=\"M 80.400966 242.198125 \nL 80.400966 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_4\">\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"80.400966\" xlink:href=\"#m7a7b4cf541\" y=\"242.198125\"/>\n </g>\n </g>\n <g id=\"text_2\">\n <!-- 1000 -->\n <g transform=\"translate(67.675966 256.796563)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 794 531 \nL 1825 531 \nL 1825 4091 \nL 703 3866 \nL 703 4441 \nL 1819 4666 \nL 2450 4666 \nL 2450 531 \nL 3481 531 \nL 3481 0 \nL 794 0 \nL 794 531 \nz\n\" id=\"DejaVuSans-31\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-31\"/>\n <use x=\"63.623047\" xlink:href=\"#DejaVuSans-30\"/>\n <use x=\"127.246094\" xlink:href=\"#DejaVuSans-30\"/>\n <use x=\"190.869141\" xlink:href=\"#DejaVuSans-30\"/>\n </g>\n </g>\n </g>\n <g id=\"xtick_3\">\n <g id=\"line2d_5\">\n <path clip-path=\"url(#p63e55c71ff)\" d=\"M 115.286871 242.198125 \nL 115.286871 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_6\">\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"115.286871\" xlink:href=\"#m7a7b4
2021-04-29 00:53:46 +01:00
"image/png": "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
2021-04-10 12:20:26 +01:00
},
"metadata": {
"needs_background": "light"
}
2021-04-10 12:20:26 +01:00
}
],
"source": [
"fig = plt.figure(figsize=(5, 4))\n",
"fig.set_dpi(fig_dpi)\n",
"\n",
2021-04-10 12:20:26 +01:00
"# plt.plot([196], fc_0_results[2], 'x-', label=f'0 Layers')\n",
"\n",
"for i in layers:\n",
" plt.plot(nodes, fc_matrix[i-1, :], '-', label=f'{i} Layers', ms=8, lw=lw)\n",
"\n",
2021-04-29 00:53:46 +01:00
"plt.plot([4096], [fc_matrix[1, 4]], \"x\", label=\"AlexNet\", ms=\"8\", c=(0, 0, 0))\n",
"\n",
"# plt.annotate('Standard\\nAlexNet', \n",
"# (4096, fc_matrix[layers.index(2), nodes.index(4096)]),\n",
"# textcoords=\"offset points\",\n",
"# xytext=(40, 10),\n",
"# ha='center',\n",
"# arrowprops={'arrowstyle': 'simple'}\n",
"# )\n",
2021-04-10 12:20:26 +01:00
" \n",
"plt.title('Accuracy for Varied Dense Layer Shapes')\n",
2021-04-10 12:20:26 +01:00
"plt.xlabel('Nodes Per Layer')\n",
"plt.ylabel('Top-1 % Test Accuracy')\n",
"\n",
2021-04-29 00:53:46 +01:00
"plt.ylim(0, 60)\n",
"\n",
2021-04-10 12:20:26 +01:00
"plt.grid()\n",
"plt.legend()\n",
"\n",
"plt.tight_layout()\n",
"plt.savefig('fc-accuracy.png')\n",
"\n",
2021-04-10 12:20:26 +01:00
"plt.show()"
]
2021-04-12 16:06:52 +01:00
},
{
"cell_type": "markdown",
"id": "340c4eb8",
"metadata": {},
"source": [
"# Convolutional Non-Linearity\n",
"\n",
"Exponential LR Decay: 0.98\n",
"\n",
"100 Epochs\n",
"\n",
"Taking conovlutional layers and distributing the standard number of filters into separate conv layers with ReLu nonlinearity\n",
"\n",
"## Index\n",
"0. convolutional layer\n",
"1. number of divisions\n",
"2. top-1 accuracy\n",
"3. top-5 accuracy\n",
"4. last val loss\n",
"5. last val accuracy"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 192,
2021-04-12 16:06:52 +01:00
"id": "3426107c",
"metadata": {},
"outputs": [],
"source": [
"conv_nonlin_results = np.array([\n",
"# [1, 1, 44.41, 71.83, 3.04, 47.61], # STANDARD ALEXNET\n",
"# [1, 2],\n",
"# [1, 4],\n",
" \n",
" [4, 1, 44.41, 71.83, 3.04, 47.61], # STANDARD ALEXNET\n",
" [4, 2, 42.31, 71.96, 3.07, 49.75],\n",
" [4, 4, 0.8, 2.47, 5.29, 0.55],\n",
" \n",
" [5, 1, 44.41, 71.83, 3.04, 47.61], # STANDARD ALEXNET\n",
" [5, 2, 46.08, 73.87, 3.00, 49.20],\n",
" [5, 4, 0.8, 2.47, 5.29, 0.55]\n",
"])\n",
"\n",
"nonlin_layers = [4, 5]\n",
"nonlin_div = [1, 2, 4]\n",
"\n",
"conv_nonlin_matrix = np.zeros((len(nonlin_layers), len(nonlin_div)))\n",
"for i in conv_nonlin_results:\n",
" conv_nonlin_matrix[nonlin_layers.index(i[0]), nonlin_div.index(i[1])] = i[2]"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 193,
2021-04-12 16:06:52 +01:00
"id": "d7457e0e",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
2021-04-12 16:06:52 +01:00
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
2021-04-30 19:47:47 +01:00
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg height=\"277.314375pt\" version=\"1.1\" viewBox=\"0 0 382.603125 277.314375\" width=\"382.603125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <metadata>\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n <cc:Work>\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n <dc:date>2021-04-29T22:25:25.496025</dc:date>\n <dc:format>image/svg+xml</dc:format>\n <dc:creator>\n <cc:Agent>\n <dc:title>Matplotlib v3.4.1, https://matplotlib.org/</dc:title>\n </cc:Agent>\n </dc:creator>\n </cc:Work>\n </rdf:RDF>\n </metadata>\n <defs>\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 277.314375 \nL 382.603125 277.314375 \nL 382.603125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 40.603125 239.758125 \nL 375.403125 239.758125 \nL 375.403125 22.318125 \nL 40.603125 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"matplotlib.axis_1\">\n <g id=\"xtick_1\">\n <g id=\"line2d_1\">\n <path clip-path=\"url(#pe7ce874bdc)\" d=\"M 55.821307 239.758125 \nL 55.821307 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_2\">\n <defs>\n <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"md61ba66ece\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n </defs>\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"55.821307\" xlink:href=\"#md61ba66ece\" y=\"239.758125\"/>\n </g>\n </g>\n <g id=\"text_1\">\n <!-- 1.0 -->\n <g transform=\"translate(47.869744 254.356562)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 794 531 \nL 1825 531 \nL 1825 4091 \nL 703 3866 \nL 703 4441 \nL 1819 4666 \nL 2450 4666 \nL 2450 531 \nL 3481 531 \nL 3481 0 \nL 794 0 \nL 794 531 \nz\n\" id=\"DejaVuSans-31\" transform=\"scale(0.015625)\"/>\n <path d=\"M 684 794 \nL 1344 794 \nL 1344 0 \nL 684 0 \nL 684 794 \nz\n\" id=\"DejaVuSans-2e\" transform=\"scale(0.015625)\"/>\n <path d=\"M 2034 4250 \nQ 1547 4250 1301 3770 \nQ 1056 3291 1056 2328 \nQ 1056 1369 1301 889 \nQ 1547 409 2034 409 \nQ 2525 409 2770 889 \nQ 3016 1369 3016 2328 \nQ 3016 3291 2770 3770 \nQ 2525 4250 2034 4250 \nz\nM 2034 4750 \nQ 2819 4750 3233 4129 \nQ 3647 3509 3647 2328 \nQ 3647 1150 3233 529 \nQ 2819 -91 2034 -91 \nQ 1250 -91 836 529 \nQ 422 1150 422 2328 \nQ 422 3509 836 4129 \nQ 1250 4750 2034 4750 \nz\n\" id=\"DejaVuSans-30\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-31\"/>\n <use x=\"63.623047\" xlink:href=\"#DejaVuSans-2e\"/>\n <use x=\"95.410156\" xlink:href=\"#DejaVuSans-30\"/>\n </g>\n </g>\n </g>\n <g id=\"xtick_2\">\n <g id=\"line2d_3\">\n <path clip-path=\"url(#pe7ce874bdc)\" d=\"M 106.54858 239.758125 \nL 106.54858 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_4\">\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"106.54858\" xlink:href=\"#md61ba66ece\" y=\"239.758125\"/>\n </g>\n </g>\n <g id=\"text_2\">\n <!-- 1.5 -->\n <g transform=\"translate(98.597017 254.356562)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 691 4666 \nL 3169 4666 \nL 3169 4134 \nL 1269 4134 \nL 1269 2991 \nQ 1406 3038 1543 3061 \nQ 1681 3084 1819 3084 \nQ 2600 3084 3056 2656 \nQ 3513 2228 3513 1497 \nQ 3513 744 3044 326 \nQ 2575 -91 1722 -91 \nQ 1428 -91 1123 -41 \nQ 819 9 494 109 \nL 494 744 \nQ 775 591 1075 516 \nQ 1375 441 1709 441 \nQ 2250 441 2565 725 \nQ 2881 1009 2881 1497 \nQ 2881 1984 2565 2
"image/png": "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
2021-04-12 16:06:52 +01:00
},
"metadata": {
"needs_background": "light"
}
2021-04-12 16:06:52 +01:00
}
],
"source": [
"for idx, i in enumerate(nonlin_layers):\n",
" plt.plot(nonlin_div, conv_nonlin_matrix[idx, :], 'x-', label=f'Layer {i}')\n",
"\n",
"plt.title('Accuracy for Varied Convolutional Non-Linearity')\n",
"plt.xlabel('Layer Divisor')\n",
"plt.ylabel('Top-1 % Test Accuracy')\n",
"\n",
"plt.grid()\n",
"plt.legend()\n",
"plt.show()"
]
2021-04-25 19:56:49 +01:00
},
{
"source": [
"# Convolutional Kernel Size\n",
"\n",
"Exponential LR Decay: 0.98\n",
"\n",
"100 Epochs\n",
"\n",
"## Index\n",
"0. convolutional layer\n",
"1. kernel size\n",
"2. top-1 accuracy\n",
"3. top-5 accuracy\n",
"4. last val loss\n",
"5. last val accuracy"
],
"cell_type": "markdown",
"metadata": {}
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 194,
2021-04-25 19:56:49 +01:00
"metadata": {},
"outputs": [],
"source": [
"kernel_results = np.array([\n",
" [1, 3, 37.06, 64.73, 3.38, 44.36],\n",
" [1, 5, 43.73, 70.35, 3.19, 48.22],\n",
2021-04-25 19:56:49 +01:00
" [1, 7, 44.72, 71.16, 3.00, 48.96],\n",
" [1, 11, 44.41, 71.83, 3.04, 47.61], # DEFAULT ALEXNET\n",
" [1, 15, 43.17, 71.59, 3.09, 47.55],\n",
"\n",
" [2, 3, 41.63, 67.63, 3.24, 45.53],\n",
" [2, 5, 44.41, 71.83, 3.04, 47.61], # DEFAULT ALEXNET\n",
" [2, 7, 45.15, 72.21, 2.97, 50.49],\n",
" [2, 9, 43.61, 71.34, 3.10, 47.37],\n",
" [2, 11, 39.35, 65.6, 3.36, 44.98],\n",
"\n",
" [3, 3, 44.41, 71.83, 3.04, 47.61], # DEFAULT ALEXNET\n",
" [3, 5, 50.59, 75.91, 2.74, 53.80],\n",
" [3, 7, 47.13, 75.48, 3.19, 52.21],\n",
" [3, 9, 40.83, 69.73, 3.90, 47.00],\n",
" [3, 11, 33.29, 61.70, 5.27, 38.05],\n",
"\n",
" [4, 3, 44.41, 71.83, 3.04, 47.61], # DEFAULT ALEXNET\n",
" [4, 5, 48.67, 74.74, 2.92, 51.84],\n",
" [4, 7, 49.54, 76.34, 2.98, 52.63],\n",
" [4, 9, 47.19, 74.24, 3.40, 50.37],\n",
" [4, 11, 43.55, 70.29, 3.98, 47.24],\n",
"\n",
" [5, 3, 44.41, 71.83, 3.04, 47.61], # DEFAULT ALEXNET\n",
" [5, 5, 46.94, 74.31, 2.88, 51.53],\n",
" [5, 7, 48.24, 75.42, 2.87, 51.84],\n",
" [5, 9, 47.56, 74.68, 2.94, 53.43],\n",
" [5, 11, 44.1, 72.45, 3.60, 48.28],\n",
"])\n",
"\n",
"default_kernel_sizes = [11, 5, 3, 3, 3]\n",
"kernel_layers = {i[0] for i in kernel_results}"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 195,
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 1000x700 with 1 Axes>",
2021-04-30 19:47:47 +01:00
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg height=\"243.754375pt\" version=\"1.1\" viewBox=\"0 0 352.343125 243.754375\" width=\"352.343125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <metadata>\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n <cc:Work>\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n <dc:date>2021-04-29T22:25:25.999815</dc:date>\n <dc:format>image/svg+xml</dc:format>\n <dc:creator>\n <cc:Agent>\n <dc:title>Matplotlib v3.4.1, https://matplotlib.org/</dc:title>\n </cc:Agent>\n </dc:creator>\n </cc:Work>\n </rdf:RDF>\n </metadata>\n <defs>\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 243.754375 \nL 352.343125 243.754375 \nL 352.343125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 40.603125 206.198125 \nL 345.143125 206.198125 \nL 345.143125 22.318125 \nL 40.603125 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"matplotlib.axis_1\">\n <g id=\"xtick_1\">\n <g id=\"line2d_1\">\n <path clip-path=\"url(#pe37d0e30cf)\" d=\"M 54.445852 206.198125 \nL 54.445852 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_2\">\n <defs>\n <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"mbf769a455d\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n </defs>\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"54.445852\" xlink:href=\"#mbf769a455d\" y=\"206.198125\"/>\n </g>\n </g>\n <g id=\"text_1\">\n <!-- 3 -->\n <g transform=\"translate(51.264602 220.796562)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 2597 2516 \nQ 3050 2419 3304 2112 \nQ 3559 1806 3559 1356 \nQ 3559 666 3084 287 \nQ 2609 -91 1734 -91 \nQ 1441 -91 1130 -33 \nQ 819 25 488 141 \nL 488 750 \nQ 750 597 1062 519 \nQ 1375 441 1716 441 \nQ 2309 441 2620 675 \nQ 2931 909 2931 1356 \nQ 2931 1769 2642 2001 \nQ 2353 2234 1838 2234 \nL 1294 2234 \nL 1294 2753 \nL 1863 2753 \nQ 2328 2753 2575 2939 \nQ 2822 3125 2822 3475 \nQ 2822 3834 2567 4026 \nQ 2313 4219 1838 4219 \nQ 1578 4219 1281 4162 \nQ 984 4106 628 3988 \nL 628 4550 \nQ 988 4650 1302 4700 \nQ 1616 4750 1894 4750 \nQ 2613 4750 3031 4423 \nQ 3450 4097 3450 3541 \nQ 3450 3153 3228 2886 \nQ 3006 2619 2597 2516 \nz\n\" id=\"DejaVuSans-33\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-33\"/>\n </g>\n </g>\n </g>\n <g id=\"xtick_2\">\n <g id=\"line2d_3\">\n <path clip-path=\"url(#pe37d0e30cf)\" d=\"M 100.588277 206.198125 \nL 100.588277 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_4\">\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"100.588277\" xlink:href=\"#mbf769a455d\" y=\"206.198125\"/>\n </g>\n </g>\n <g id=\"text_2\">\n <!-- 5 -->\n <g transform=\"translate(97.407027 220.796562)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 691 4666 \nL 3169 4666 \nL 3169 4134 \nL 1269 4134 \nL 1269 2991 \nQ 1406 3038 1543 3061 \nQ 1681 3084 1819 3084 \nQ 2600 3084 3056 2656 \nQ 3513 2228 3513 1497 \nQ 3513 744 3044 326 \nQ 2575 -91 1722 -91 \nQ 1428 -91 1123 -41 \nQ 819 9 494 109 \nL 494 744 \nQ 775 591 1075 516 \nQ 1375 441 1709 441 \nQ 2250 441 2565 725 \nQ 2881 1009 2881 1497 \nQ 2881 1984 2565 2268 \nQ 2250 2553 1709 2553 \nQ 1456 2553 1204 2497 \nQ 953 2441 691 2322 \nL 691 4666 \nz\n\" id=\"DejaVuSans-35\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-35\"/>\n </g>\n </g>\n </g>\n <g id=\
2021-04-29 00:53:46 +01:00
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA9QAAAKoCAYAAACWQ7eKAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Z1A+gAAAACXBIWXMAAB7CAAAewgFu0HU+AAEAAElEQVR4nOzdd3hb5dn48e8tyba8Z+xMMp1AGNmssmdSVqGMsmlLafvreAstBVootHRA93rbF0oLbdlllDDCCAHCSAIkgUAC2c5OHO89JD2/P86xfaxI1rAsK/H9uS5dko6e85xH0tHRuc+zxBiDUkoppZRSSimlYuMa7AIopZRSSimllFL7Iw2olVJKKaWUUkqpOGhArZRSSimllFJKxUEDaqWUUkoppZRSKg4aUCullFJKKaWUUnHQgFoppZRSSimllIqDBtRKKaWUUkoppVQcNKBWSimllFJKKaXioAG1UkoppZRSSikVBw2olVJKKaWUUkqpOGhArZRSSimllFJKxUEDaqWUUkoppZRSKg4aUCullFJKKaWUUnHQgFoppZRSSimllIqDBtRKKaWUUkoppVQcNKBWSimllFJKKaXioAG1UkoppZRSSikVBw2olVJKKaWUUkqpOGhArZRSSimllFJKxUEDaqWUCiIixSJyu4gsE5FaEfGLiLFv1wx2+dS+RKTC8R2NG+zyhOMooxnssqiBJyLjHN95xWCXJxIRed1R3pMGuzypRETucHw2dwx2eVT89pffpf5f7D80oFYpS0QedB5MROSmwS6TOvCJyATgQ+AO4EiggP34WCkiHhHZ7fgd/aQfeX3DkU+TiOQksqwqMURkiohcLyLPi8inIlItIh32/aci8qiIfFtERgx2WZUaqoIC9NejXKdARJY41vOLyFcGuKgqBiKSKyLXicgTIrJBROpFxCcijfaF39dE5I8icoUegw8cnsEugFKhiEgucH7Q4quBuwehOGpouQcYZT9uBRYCOwC/veyTwShUvIwxPhF5CLjBXnSFiNxujInnivfVjsdPGGOa+l9ClSgicghwJ3ABICGSFNm3KcAlwG9FZD7wA2PMp0krqEoKO0g70X56sjHm9cErjeovESkGXgZm2ov8wBeNMf8evFIpJxH5EvAbrAvxwXLs21jgJMc6Nxpjfp2M8qmBowG1SlUXAVlByw4RkTnGmPcGo0DqwGdf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
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"fig = plt.figure(figsize=(5, 3.5))\n",
"fig.set_dpi(fig_dpi)\n",
"\n",
"kernel_parsed_results = [(list(), list()) for _ in kernel_layers]\n",
"for row in kernel_results:\n",
" kernel_parsed_results[int(row[0]) - 1][0].append(row[2]) # top-1 accuracy\n",
" kernel_parsed_results[int(row[0]) - 1][1].append(row[1]) # kernel size (x value)\n",
"\n",
"for idx, l in enumerate(kernel_parsed_results):\n",
" plt.plot(l[1], l[0], '-', label=f'Layer {idx+1}', lw=lw)\n",
"\n",
"for idx, l in enumerate(kernel_parsed_results):\n",
" # print(l)\n",
" # print(l[0][l[1].index(default_kernel_sizes[idx])])\n",
"\n",
" if idx == len(kernel_parsed_results) - 1:\n",
" label = 'AlexNet'\n",
" else:\n",
" label = None\n",
2021-04-29 00:53:46 +01:00
" plt.plot([default_kernel_sizes[idx]], [l[0][l[1].index(default_kernel_sizes[idx])]], \"x\", label=label, ms=6, c=(0, 0, 0))\n",
"\n",
"plt.title('Accuracy for Varied Convolutional Kernel Size')\n",
"plt.xlabel(\"Kernel Size\")\n",
"plt.ylabel('Top-1 % Test Accuracy')\n",
"\n",
"plt.grid()\n",
"plt.legend()\n",
"\n",
2021-04-29 00:53:46 +01:00
"plt.ylim(20, 60)\n",
"plt.xlim()\n",
"plt.xticks([3, 5, 7, 9, 11, 13, 15])\n",
"\n",
"plt.tight_layout()\n",
"plt.savefig('kernel-accuracy.png')\n",
"\n",
"plt.show()"
2021-04-25 19:56:49 +01:00
]
},
2021-04-29 00:53:46 +01:00
{
"source": [
"# Convolutional New Layers\n",
"\n",
"Exponential LR Decay: 0.98\n",
"\n",
"100 Epochs\n",
"\n",
"L1.5, Stride = 1\n",
"\n",
"## Index\n",
"0. convolutional layer\n",
"1. kernel size\n",
"2. filters\n",
"3. top-1 accuracy\n",
"4. top-5 accuracy\n",
"5. last val loss\n",
"6. last val accuracy"
],
"cell_type": "markdown",
"metadata": {}
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 196,
2021-04-29 00:53:46 +01:00
"metadata": {},
"outputs": [],
"source": [
"std_results = [44.41, 71.83, 3.04, 47.61]\n",
"\n",
"layer1_kernel = np.array([\n",
" [1.5, 3, 176, 54.23, 80.73, 2.84, 55.76],\n",
" [1.5, 5, 176, 48.49, 78.38, 3.04, 52.76],\n",
2021-04-30 19:47:47 +01:00
" [1.5, 7, 176, 46.14, 74.68, 3.24, 50.25],\n",
2021-04-29 00:53:46 +01:00
" [1.5, 9, 176, 40.83, 68.75, 3.59, 43.26],\n",
" [1.5, 11, 176, 34.28, 66.15, 3.65, 39.22]\n",
"])\n",
"\n",
"layer1_filter = np.array([\n",
" [1.5, 7, 96, 45.27, 74.80, 3.04, 49.75],\n",
" [1.5, 7, 176, 45.46, 75.17, 3.18, 49.75],\n",
" [1.5, 7, 256, 43.17, 72.82, 3.42, 50.06]\n",
"])\n",
"\n",
"layer3_kernel = np.array([\n",
" [3.5, 3, 384, 45.58, 72.27, 2.92, 48.28],\n",
" [3.5, 5, 384, 52.56, 78.88, 2.74, 57.05],\n",
2021-04-30 19:47:47 +01:00
" [3.5, 7, 384, 50.09, 77.46, 3.29, 52.57],\n",
" [3.5, 9, 384, 44.78, 71.53, 4.07, 48.35],\n",
" [3.5, 11, 384, 37.31, 64.42, 4.80, 41.18]\n",
2021-04-29 00:53:46 +01:00
"])\n",
"\n",
"layer3_filter = np.array([\n",
" [3.5, 3, 192, 46.20, 74.00, 2.81, 51.41],\n",
" [3.5, 3, 384, 45.58, 72.27, 2.92, 48.28], # repeated from above\n",
" [3.5, 3, 576, 44.84, 71.77, 2.98, 50.25]\n",
"])\n",
"\n",
"layer1 = np.append(layer1_kernel, layer1_filter, axis=0)\n",
"layer3 = np.append(layer3_kernel, layer3_filter, axis=0)"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 197,
2021-04-29 00:53:46 +01:00
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 1000x600 with 1 Axes>",
2021-04-30 19:47:47 +01:00
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg height=\"207.754375pt\" version=\"1.1\" viewBox=\"0 0 352.343125 207.754375\" width=\"352.343125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <metadata>\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n <cc:Work>\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n <dc:date>2021-04-29T22:25:26.531975</dc:date>\n <dc:format>image/svg+xml</dc:format>\n <dc:creator>\n <cc:Agent>\n <dc:title>Matplotlib v3.4.1, https://matplotlib.org/</dc:title>\n </cc:Agent>\n </dc:creator>\n </cc:Work>\n </rdf:RDF>\n </metadata>\n <defs>\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 207.754375 \nL 352.343125 207.754375 \nL 352.343125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 40.603125 170.198125 \nL 345.143125 170.198125 \nL 345.143125 22.318125 \nL 40.603125 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"matplotlib.axis_1\">\n <g id=\"xtick_1\">\n <g id=\"line2d_1\">\n <path clip-path=\"url(#p304da42082)\" d=\"M 54.445852 170.198125 \nL 54.445852 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_2\">\n <defs>\n <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"m6d7f7b2ec9\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n </defs>\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"54.445852\" xlink:href=\"#m6d7f7b2ec9\" y=\"170.198125\"/>\n </g>\n </g>\n <g id=\"text_1\">\n <!-- 3 -->\n <g transform=\"translate(51.264602 184.796562)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 2597 2516 \nQ 3050 2419 3304 2112 \nQ 3559 1806 3559 1356 \nQ 3559 666 3084 287 \nQ 2609 -91 1734 -91 \nQ 1441 -91 1130 -33 \nQ 819 25 488 141 \nL 488 750 \nQ 750 597 1062 519 \nQ 1375 441 1716 441 \nQ 2309 441 2620 675 \nQ 2931 909 2931 1356 \nQ 2931 1769 2642 2001 \nQ 2353 2234 1838 2234 \nL 1294 2234 \nL 1294 2753 \nL 1863 2753 \nQ 2328 2753 2575 2939 \nQ 2822 3125 2822 3475 \nQ 2822 3834 2567 4026 \nQ 2313 4219 1838 4219 \nQ 1578 4219 1281 4162 \nQ 984 4106 628 3988 \nL 628 4550 \nQ 988 4650 1302 4700 \nQ 1616 4750 1894 4750 \nQ 2613 4750 3031 4423 \nQ 3450 4097 3450 3541 \nQ 3450 3153 3228 2886 \nQ 3006 2619 2597 2516 \nz\n\" id=\"DejaVuSans-33\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-33\"/>\n </g>\n </g>\n </g>\n <g id=\"xtick_2\">\n <g id=\"line2d_3\">\n <path clip-path=\"url(#p304da42082)\" d=\"M 123.659489 170.198125 \nL 123.659489 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_4\">\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"123.659489\" xlink:href=\"#m6d7f7b2ec9\" y=\"170.198125\"/>\n </g>\n </g>\n <g id=\"text_2\">\n <!-- 5 -->\n <g transform=\"translate(120.478239 184.796562)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 691 4666 \nL 3169 4666 \nL 3169 4134 \nL 1269 4134 \nL 1269 2991 \nQ 1406 3038 1543 3061 \nQ 1681 3084 1819 3084 \nQ 2600 3084 3056 2656 \nQ 3513 2228 3513 1497 \nQ 3513 744 3044 326 \nQ 2575 -91 1722 -91 \nQ 1428 -91 1123 -41 \nQ 819 9 494 109 \nL 494 744 \nQ 775 591 1075 516 \nQ 1375 441 1709 441 \nQ 2250 441 2565 725 \nQ 2881 1009 2881 1497 \nQ 2881 1984 2565 2268 \nQ 2250 2553 1709 2553 \nQ 1456 2553 1204 2497 \nQ 953 2441 691 2322 \nL 691 4666 \nz\n\" id=\"DejaVuSans-35\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-35\"/>\n </g>\n </g>\n </g>\n <g id=
"image/png": "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
2021-04-29 00:53:46 +01:00
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"fig = plt.figure(figsize=(5, 3))\n",
"fig.set_dpi(fig_dpi)\n",
"\n",
"plt.plot(layer1_kernel[:, 1], layer1_kernel[:, 3], 'x-', label=\"Layer 1.5\\n176 Filters\", lw=lw)\n",
"plt.plot(layer3_kernel[:, 1], layer3_kernel[:, 3], 'x-', label=\"Layer 3.5\\n384 Filters\", lw=lw)\n",
"\n",
"plt.title(\"Accuracy for Additional Convolutional Layers\")\n",
"plt.xlabel(\"Kernel Size\")\n",
"plt.ylabel('Top-1 % Test Accuracy')\n",
"\n",
"plt.xticks([3, 5, 7, 9, 11])\n",
"plt.ylim(30, 60)\n",
"\n",
"plt.grid()\n",
"plt.legend()\n",
"\n",
"plt.tight_layout()\n",
"plt.savefig('new-layer-kernel-accuracy.png')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 198,
2021-04-29 00:53:46 +01:00
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 1000x600 with 1 Axes>",
2021-04-30 19:47:47 +01:00
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg height=\"207.754375pt\" version=\"1.1\" viewBox=\"0 0 352.324375 207.754375\" width=\"352.324375pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <metadata>\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n <cc:Work>\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n <dc:date>2021-04-29T22:25:27.806885</dc:date>\n <dc:format>image/svg+xml</dc:format>\n <dc:creator>\n <cc:Agent>\n <dc:title>Matplotlib v3.4.1, https://matplotlib.org/</dc:title>\n </cc:Agent>\n </dc:creator>\n </cc:Work>\n </rdf:RDF>\n </metadata>\n <defs>\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 207.754375 \nL 352.324375 207.754375 \nL 352.324375 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 40.603125 170.198125 \nL 335.580625 170.198125 \nL 335.580625 22.318125 \nL 40.603125 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"matplotlib.axis_1\">\n <g id=\"xtick_1\">\n <g id=\"line2d_1\">\n <path clip-path=\"url(#p77726aa692)\" d=\"M 40.603125 170.198125 \nL 40.603125 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_2\">\n <defs>\n <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"m210ee8a533\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n </defs>\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"40.603125\" xlink:href=\"#m210ee8a533\" y=\"170.198125\"/>\n </g>\n </g>\n <g id=\"text_1\">\n <!-- 0 -->\n <g transform=\"translate(37.421875 184.796562)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 2034 4250 \nQ 1547 4250 1301 3770 \nQ 1056 3291 1056 2328 \nQ 1056 1369 1301 889 \nQ 1547 409 2034 409 \nQ 2525 409 2770 889 \nQ 3016 1369 3016 2328 \nQ 3016 3291 2770 3770 \nQ 2525 4250 2034 4250 \nz\nM 2034 4750 \nQ 2819 4750 3233 4129 \nQ 3647 3509 3647 2328 \nQ 3647 1150 3233 529 \nQ 2819 -91 2034 -91 \nQ 1250 -91 836 529 \nQ 422 1150 422 2328 \nQ 422 3509 836 4129 \nQ 1250 4750 2034 4750 \nz\n\" id=\"DejaVuSans-30\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-30\"/>\n </g>\n </g>\n </g>\n <g id=\"xtick_2\">\n <g id=\"line2d_3\">\n <path clip-path=\"url(#p77726aa692)\" d=\"M 89.766042 170.198125 \nL 89.766042 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_4\">\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"89.766042\" xlink:href=\"#m210ee8a533\" y=\"170.198125\"/>\n </g>\n </g>\n <g id=\"text_2\">\n <!-- 100 -->\n <g transform=\"translate(80.222292 184.796562)scale(0.1 -0.1)\">\n <defs>\n <path d=\"M 794 531 \nL 1825 531 \nL 1825 4091 \nL 703 3866 \nL 703 4441 \nL 1819 4666 \nL 2450 4666 \nL 2450 531 \nL 3481 531 \nL 3481 0 \nL 794 0 \nL 794 531 \nz\n\" id=\"DejaVuSans-31\" transform=\"scale(0.015625)\"/>\n </defs>\n <use xlink:href=\"#DejaVuSans-31\"/>\n <use x=\"63.623047\" xlink:href=\"#DejaVuSans-30\"/>\n <use x=\"127.246094\" xlink:href=\"#DejaVuSans-30\"/>\n </g>\n </g>\n </g>\n <g id=\"xtick_3\">\n <g id=\"line2d_5\">\n <path clip-path=\"url(#p77726aa692)\" d=\"M 138.928958 170.198125 \nL 138.928958 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_6\">\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"138.928958\" xlink:href=\"#m210ee8a533\" y=\"170.198125\"/>\n </g>\n </g>\n <g
2021-04-29 00:53:46 +01:00
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"fig = plt.figure(figsize=(5, 3))\n",
"fig.set_dpi(fig_dpi)\n",
"\n",
"plt.plot(layer1_filter[:, 2], layer1_filter[:, 3], 'x-', label=\"Layer 1.5\\n7x7 Kernel\", lw=lw)\n",
"plt.plot(layer3_filter[:, 2], layer3_filter[:, 3], 'x-', label=\"Layer 3.5\\n3x3 Kernel\", lw=lw)\n",
"\n",
"plt.title(\"Accuracy for Additional Convolutional Layers\")\n",
"plt.xlabel(\"Layer Filters\")\n",
"plt.ylabel('Top-1 % Test Accuracy')\n",
"\n",
"# plt.xticks([3, 5, 7, 9, 11])\n",
"plt.xlim(0)\n",
"plt.ylim(30, 60)\n",
"\n",
"plt.grid()\n",
"plt.legend()\n",
"\n",
"plt.tight_layout()\n",
"plt.savefig('new-layer-filter-accuracy.png')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 199,
2021-04-29 00:53:46 +01:00
"metadata": {},
"outputs": [],
"source": [
"best_results = [43.11, 71.22, 3.80, 47.06]\n",
"\n",
"standard_res = [44.41, 71.83, 3.04, 47.61]"
]
},
{
"cell_type": "code",
2021-04-30 19:47:47 +01:00
"execution_count": 200,
2021-04-29 00:53:46 +01:00
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 1200x800 with 1 Axes>",
2021-04-30 19:47:47 +01:00
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg height=\"279.754375pt\" version=\"1.1\" viewBox=\"0 0 424.427187 279.754375\" width=\"424.427187pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <metadata>\n <rdf:RDF xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\">\n <cc:Work>\n <dc:type rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\"/>\n <dc:date>2021-04-29T22:25:28.432451</dc:date>\n <dc:format>image/svg+xml</dc:format>\n <dc:creator>\n <cc:Agent>\n <dc:title>Matplotlib v3.4.1, https://matplotlib.org/</dc:title>\n </cc:Agent>\n </dc:creator>\n </cc:Work>\n </rdf:RDF>\n </metadata>\n <defs>\n <style type=\"text/css\">*{stroke-linecap:butt;stroke-linejoin:round;}</style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M -0 279.754375 \nL 424.427187 279.754375 \nL 424.427187 0 \nL -0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 108.610938 242.198125 \nL 407.683437 242.198125 \nL 407.683437 22.318125 \nL 108.610938 22.318125 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"patch_3\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 108.610938 232.20358 \nL 265.803443 232.20358 \nL 265.803443 198.888428 \nL 108.610938 198.888428 \nz\n\" style=\"fill:#1f77b4;\"/>\n </g>\n <g id=\"patch_4\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 108.610938 190.55964 \nL 270.797954 190.55964 \nL 270.797954 157.244489 \nL 108.610938 157.244489 \nz\n\" style=\"fill:#1f77b4;\"/>\n </g>\n <g id=\"patch_5\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 108.610938 148.915701 \nL 259.911715 148.915701 \nL 259.911715 115.600549 \nL 108.610938 115.600549 \nz\n\" style=\"fill:#1f77b4;\"/>\n </g>\n <g id=\"patch_6\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 108.610938 107.271761 \nL 278.005601 107.271761 \nL 278.005601 73.95661 \nL 108.610938 73.95661 \nz\n\" style=\"fill:#1f77b4;\"/>\n </g>\n <g id=\"patch_7\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 108.610938 65.627822 \nL 241.429035 65.627822 \nL 241.429035 32.31267 \nL 108.610938 32.31267 \nz\n\" style=\"fill:#1f77b4;\"/>\n </g>\n <g id=\"patch_8\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 265.803443 232.20358 \nL 344.519325 232.20358 \nL 344.519325 198.888428 \nL 265.803443 198.888428 \nz\n\" style=\"fill:#ff7f0e;\"/>\n </g>\n <g id=\"patch_9\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 270.797954 190.55964 \nL 350.052167 190.55964 \nL 350.052167 157.244489 \nL 270.797954 157.244489 \nz\n\" style=\"fill:#ff7f0e;\"/>\n </g>\n <g id=\"patch_10\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 259.911715 148.915701 \nL 335.636872 148.915701 \nL 335.636872 115.600549 \nL 259.911715 115.600549 \nz\n\" style=\"fill:#ff7f0e;\"/>\n </g>\n <g id=\"patch_11\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 278.005601 107.271761 \nL 355.226121 107.271761 \nL 355.226121 73.95661 \nL 278.005601 73.95661 \nz\n\" style=\"fill:#ff7f0e;\"/>\n </g>\n <g id=\"patch_12\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 241.429035 65.627822 \nL 323.434714 65.627822 \nL 323.434714 32.31267 \nL 241.429035 32.31267 \nz\n\" style=\"fill:#ff7f0e;\"/>\n </g>\n <g id=\"matplotlib.axis_1\">\n <g id=\"xtick_1\">\n <g id=\"line2d_1\">\n <path clip-path=\"url(#pd3836c786f)\" d=\"M 108.610938 242.198125 \nL 108.610938 22.318125 \n\" style=\"fill:none;stroke:#b0b0b0;stroke-linecap:square;stroke-width:0.8;\"/>\n </g>\n <g id=\"line2d_2\">\n <defs>\n <path d=\"M 0 0 \nL 0 3.5 \n\" id=\"m93e8ba56ee\" style=\"stroke:#000000;stroke-width:0.8;\"/>\n </defs>\n <g>\n <use style=\"stroke:#000000;stroke-width:0.8;\" x=\"108.610938\" xlink:href=\"#m93e8ba56ee\" y=\"242.198125\"/>\n </g>\n
"image/png": "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
2021-04-29 00:53:46 +01:00
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"best_results = [standard_res]\n",
"best_labels = ['Standard']\n",
"\n",
"# Dense\n",
"b_dense = fc_results[np.argmax(fc_results[:, 2])]\n",
"best_results.append(b_dense[2:])\n",
"best_labels.append(f'Dense: {int(b_dense[0])} Layers\\nNodes: {int(b_dense[1])}')\n",
"\n",
"# Convolutional Kernel\n",
"b_kernel = kernel_results[np.argmax(kernel_results[:, 2])]\n",
"best_results.append(b_kernel[2:])\n",
"best_labels.append(f'Kernel: Layer {int(b_kernel[0])}\\nSize: {int(b_kernel[1])}')\n",
"\n",
"# Layer 1.5 + 3.5\n",
"for layer in [layer1, layer3]:\n",
" b_layer35 = layer[np.argmax(layer[:, 3])]\n",
" best_results.append(b_layer35[3:])\n",
" best_labels.append(f'Layer {b_layer35[0]}\\nK: {int(b_layer35[1])}, F: {int(b_layer35[2])}')\n",
"\n",
"best_results = best_results[::-1]\n",
"best_labels = best_labels[::-1]\n",
"\n",
"fig = plt.figure(figsize=(6, 4))\n",
"fig.set_dpi(fig_dpi)\n",
"\n",
"plt.barh(range(len(best_labels)), [i[0] for i in best_results], tick_label=best_labels, label='Top-1')\n",
"plt.barh(range(len(best_labels)), [i[1] - i[0] for i in best_results], tick_label=best_labels, label='Top-5', left=[i[0] for i in best_results])\n",
"\n",
"plt.legend()\n",
"plt.grid(axis='x')\n",
"plt.title('Best Accuracies for Architectures')\n",
"plt.xlabel('% Test Accuracy')\n",
"plt.ylabel('Architecture Accuracies')\n",
"\n",
"plt.xlim(0, 100)\n",
"plt.xticks(np.linspace(0, 100, 11))\n",
"\n",
"plt.tight_layout()\n",
"plt.savefig('best-barh.png')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
2021-04-10 12:20:26 +01:00
}
],
"metadata": {
"kernelspec": {
"name": "pythonjvsc74a57bd0333605e348ea7c6bf4ca805dbc845da062650cb5bf1d8f33f5f4a9d3bca7d68b",
"display_name": "Python 3.9.3 ('.venv': venv)"
2021-04-10 12:20:26 +01:00
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.3"
},
"metadata": {
"interpreter": {
"hash": "333605e348ea7c6bf4ca805dbc845da062650cb5bf1d8f33f5f4a9d3bca7d68b"
}
2021-04-10 12:20:26 +01:00
}
},
"nbformat": 4,
"nbformat_minor": 5
2021-04-21 23:43:46 +01:00
}