From 95c68e95a389c3d42f704cfdaf681282ab261a02 Mon Sep 17 00:00:00 2001 From: Arnu Date: Thu, 31 Aug 2017 10:25:26 +0200 Subject: [PATCH] Changed hyperparameter printing. --- practical2.ipynb | 484 +++++++++++++++++++++++++++++------------------ 1 file changed, 299 insertions(+), 185 deletions(-) diff --git a/practical2.ipynb b/practical2.ipynb index 4df8b56..e60f7a4 100644 --- a/practical2.ipynb +++ b/practical2.ipynb @@ -167,9 +167,9 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABZgAAADBCAYAAABCFNVcAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmYVNW57/HfqwEDqCfGAUdEjwhOBxWCxCFiHDGSaBxJ\nHKIYrsY4HXNucATEgaho9DwOIVFBjRoVB7wah6OA5igGIRoBBzAximJAQTGCMeq6f+zdUmvtTQ2r\nq7qqur+f5+kH3l17WNX1o7pYbN5lzjkBAAAAAAAAAFCp1eo9AAAAAAAAAABAc2KCGQAAAAAAAAAQ\nhQlmAAAAAAAAAEAUJpgBAAAAAAAAAFGYYAYAAAAAAAAARGGCGQAAAAAAAAAQhQlmAAAAFGVmU83M\nmdnUNrrelmb2qJl9mF73hba4brWY2YR03G/UeyytYWb7pM/DmdnuFR57UXrcZ7UaHwAAABoDE8wA\nAKChmFknMxthZnPN7GMzW2Zmr5vZA2Y2oN7jK8XMehZMymW+6j2+JnGlpP0kdZX0vKQ/13c4+Qpe\n11FteM1BxfJV8NWzCpf7UNJz6deyCo99Kz1uehXGUTYz62xmZwfvH/PN7H4z61fhub5S8P08r1Zj\nBgAAaHZfqfcAAAAAApdJOiP9/XxJKyRtLum7ku6T9Mc6jSvG25IW1HsQTWi79Ne7nXM/KLajmXV2\nzn3aBmNqFMuUTNy22ElSZ0kfSZpbsP2feQebWSdJnznnSv5jh3NuhqSBMYN0zv1K0q9ijm2lcZJ+\nmv5+nqRPlLx/fE/SPZJm1mFMAAAA7Rp3MAMAgEYzNP11jHOul3PuPyR9TdI3FUwum9nxZjbTzFak\ndytON7PDCx4vvJv4Z2Z2r5ktN7PZZra7me1kZn9Mj/2DmfUOzr+fmT2Z3gX5iZk9Z2ZDKnguv3HO\nDSz8Ss/bz8w+Tcd1Yrpt63Rszsz+K912TDq+98zsX2a2NG0d8eWd3MEdrSeY2ZT0+/GcmW1jZvum\nz/cjM3vYzDYsOPbL1hdmdqqZvZke+7CZbVrsiaV3ip5vZq+a2T/N7H0zu73wODPrbma3mtk76T6L\nzOxpMzt6Fefsmd7lvVW6aWg6vgnBa/l/0ztSlyv5BwmZWQ8zu8XM3k2/V2+b2Xgz26Dg/F+2rjCz\no9NfPzKz68zsq2Z2iZktScd7QZHnPsj8u9FHtpw3Z9/vFtxN+1RrM+acmxXkaWH60KwgawvN7LZ0\nXPPNbJiZ/VXJxHM3M/uRmc0oyNYSM/u9mfUvGFumRYYVtL4ws73N7E9pbmea2TcKjs20yLDkz5gz\ns/8xs9PM7G/p93+ymXUv2G8NM7vWzD5Ix/VLM/tFeL5VaHn/GOmc27rg/WNXJXfDF37vf2jJn6/l\n6evzhJl9s+W5S/pXwe5jWr6XJa4PAADQ4TDBDAAAGk3L55N9zWyImW3oEtOdc1/eoWnJf1m/SdLO\nkhYr+e/8u0i6y8z+T855L5K0o6QvlNwhO0nSY5L+TVInSbul52s5/2GSHpG0V3rutyQNkPRA+lg0\n59xMSS0TmFeYWQ9JEyR1kfSkpCvSx3aRtIOk9yXNSR/fT9L/FE4UF7hO0sZKvocDJP0/SfdLWl1S\nN0mDldzhGRoo6ReS/iFpjXS/SSWexiRJFyqZDH5VkimZ3PtfM1unYDxHS1pb0mxJy5VM9A1axTn/\nqeTu3JY7kt9L69eD/cYoeV1el/RZOon8rKRjlEwmviZpfUk/lvQHM1szOH4jSTdI+kzSmpJOVnJn\n6ynp92AjSaPNbN9VjDO8i/jttP5TznXuUvK96SJpD7VRxgKbSfq1ku/v4nTbQEnba2W2ukk6QNIT\nZrZ+GedcXdJDkr6q5M/PzpLuNLPVyzj2W5LGpuNZU9IQpf9QkLpU0k+U/Nn8UEmGTinjvNLK94/9\nzOwgM+uevn8865x7pWUnM/u5pNskfUPJ67dE0rclTbXkH3Ba2oO0WKD81xgAAKDDY4IZAAA0muvS\nXwdKmixpoSV3yV5oZl0lycy6STon3W+ypJ5K/hv80+m2MWYWfs6ZJunftbL9xgaS7nfO9VYyuSpJ\nu5pZl/T3lymZGLxdUg/nXC9Jv0m3XVLmc2m5s7Xl6/6Cxy6T9JSSSbQ/KrlDe4mkYwvaF1wjaV3n\nXG/n3I5KJgQlaS1J38m53q3p87k8rbeUdIlzbhtJv0237Z1z3OqSdnbObSvpP9NtA8xsr7wnZWbf\nknRQWg5O7xLdUsmEcA8lk4OStHX668nOuX7OuZ6Sukv677zzOucWBnflPpTejTsm2PUvkjZ3zu0g\n6edKJh83luQk7eGc205JSxVJ6iXp+OD4zpL2T8f3VsF+fSVtq6StgpT/vfryLuKCTS13qh+Sc53D\n0+//L9Nt1c5YOTpL+rFzro+SSe+PJV0l6esF2eqb7ru2pAPLPO+Z6XP7eVpvKWmLMo5bTdIA59zW\nkh5Mt+0tSWa2llbm5970nFtK+nuZY2p5/9gtPfe7ZvaKmY0qeP9YU9LIdL8x6fd9cyX/uNNZ0ui0\nPUjhwoa/Sl/jwwUAAAAPE8wAAKChOOdGSfq+pAe0cmGxrSWdL+mWtN5OyR2hkvQ759wXzrl/Kemx\nKiV3r24enPqhdOL2jYJtLZNbfynYtkF6B2fLRNkPJH2RtkQ4Md3Wy8zWLePptNzZ2vL1asHz/ELJ\nHbfLlEy6StJJzrm3C47/mpK7WZeY2RdKesq22Djnei3P542cbS3Psbuy/lxwd+fvCrZvn7OvlNxZ\n3eLR9HuzVNJ66baWydeWa0+wZKHGhyX9H0nvrOK85ZronPtAkpxznyu5C1WS5qcTg3LOPZKOSZL6\nB8cvdc79b/oavJlum+2ce8M59w9Ji9Jted+rSnzonGv5HhT2R65mxsrxD6V3Tqd/VpykdSQ9aEnb\nlS8kvVywf1628tya/lr43Mr5nr3gnJsdHNtyXC8ld9FLyZ9t55xbpuRu6ZKcc+dJOkxJ9lreP3or\nmVBuuXt8B618/zg//b5/ruQOZimy7zQAAEBHxSJ/AACg4Tjn7pN0n5mZkv96Pz79dUjOncnlapls\n+ixnW2E/XQuO+6tWTjgW6lTGNX+TTpivygZaOdElrew93HKX5aNKJpk/UfJf8/+llZO7ea0Iyn2O\n1fTHnHO3TNqeK+l/ldwtvL2SO0IHSzpcSbuSWOXezboqywp+/1nOtpbnE2ahUh/kXCfvvK3JWDkW\nFS7qZ2ZrK2nN8W9KFtEsJ1uhz9PJeKn4c8uT933JOy4qs865SZImpe8VOytpD7KjpO+m7ymFXpb/\n2heOCQAAAGXgDmYAANBQ0sXBdpSk9O7FmZJa7q79KL3rdI6SiTFJOtLMVjOzTkruXJSSPrN/ix2D\nc26xVt4FPFtJ24WWRdWOkHSpc+7d2PNLUvrf9X+rZBKxpa/raDPbOf19byWTy5J0gnOun1a296i2\n/yhYfK6wBcDsvJ0lzSj4/ZUF35tvSvq/kn6VPrabpGnOudOcc9+WNDzd3reVd+eGE48t49mqZaE5\nMztAyV26UrC4WxW1ZLBbpQe2RcYKLxfU2yiZXJak49Js/axK12qt15T0ZpakQ6UvJ8TzWsJkWLJQ\nY1/py7u1n9fK/znwUTrR/pJWtkF5XNI3C773x0salT72uVb2A/deYzM7LG298UrhAoUAAAAdERPM\nAACg0Zwo6U9mttjMZprZ35S0EJCkOyTJOfexVvao/a6Sibo3lCyiJknnpxPRrTEi/XWIkj7QfzKz\nd9LrnFnmOU40s+nB10bpY1cpaf3xN0l7Kmnv0UnSb9MevX9R0itXkm40sz8rWbCvFv4paZaZzdHK\nXsHPO+em5O3snJsq6fdpeaeZvWZmLylZGG2akrtGpWQht/fNbL6ZzdTKFgULlPSbrpZrlfRtNklP\nm9lsJb25JWm+pJureK1CLf/wcZqZzTCzSvsmVyNjMeYrWXBRStqX/Fkr28vUVXpXdEsf5SPN7C9K\n/izkLWqZZ7ikF8xsUfr+8aakI9PHbi+4Rktf79MkvZ1+7xcpadlxVLqf08rJ6TPN7I9m1nLc15T8\nI1BvVe9OcwAAgKbEBDMAAGg05ynpv/yRpD5KJpbmKZlQ/vIuS+fcRZJOkDRLSc/ldZT0OT7SOfcr\ntZJz7ndK2jm0LPy1jZK7Hu+WdEWZp9lESduBwq81zOy7SibCnKRhzrmPJJ2spPVDH0lXOOeWKrmb\neK6Sz2yfKpmIrIXnlUxorple5xElfbCLOURJX9tXlPS73lTJROA4SVPTfX6npIXGWkr63n6k5LUd\nXNiyobWcc4uU9M29VUn7hd5K7mL/jaTdClo5VNtpSu6GlZI+z1sX2TejShmrmHPufSV3Sb+spB3G\nJ5K+V6vrRThbySTzh0r+XN8haWL62IpVHZQ6R8k/LvxDyZ+l7kruir5IKxcjlHPuEknHKnnP+Dcl\nr91SSRO08h9CJOlUJXeYr6ak13ev6GcFAADQTlkVP9sDAACgiZjZVCV3T09zzg2q72iAhJltKGl5\nurhfSzuZmUomjP/gnNuj2PEAAABoWyzyBwAAAKCR7C7pZjN7Xsld7wOU3In8maQL6jkwAAAAZNEi\nAwAAAEAjeV3Jwpf/IelAJX9neUDS7qvqCw4AAID6oUUGAAAAAAAAACAKdzADAAAAAAAAAKIwwQwA\nAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAA\nAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAA\nAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAoTDADAAAA\nAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAA\nAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAA\nAAAgSqsmmM3sADN71czmm9mIag0K7Ru5QQxygxjkBjHIDWKQG1SKzCAGuUEMcoMY5AaVMOdc3IFm\nq0t6TdK+khZImiFpqHNubvWGh/aG3CAGuUEMcoMY5AYxyA0qRWYQg9wgBrlBDHKDSn2lFccOkDTf\nOfcXSTKzOyV9T9Iqw2ZmcbPZaHjOOStzV3KDL5EbxKhVbshMu/aec279MvclN2hBblAxPtsgBrlB\nDHKDGOQGMcrJTWtaZGwi6a2CekG6DSiG3CAGuUEMcoMWf6tgX3KDFuQGtURmEIPcIAa5QQxyg4q0\n5g7mspjZcEnDa30dtC/kBjHIDSpFZhCD3CAGuUEMcoMY5AYxyA1ikBu0aM0E89uSNiuoN023eZxz\n4yWNl7hdHpLIDeKQG8QomRsygxzkBjHIDSrFZxvEIDeIQW4Qg9ygIq1pkTFDUi8z28LMOks6StLk\n6gwL7Ri5QQxygxjkBjHIDWKQG1SKzCAGuUEMcoMY5AYVib6D2Tn3mZn9VNKjklaXdJNzbk7VRoZ2\nidwgBrlBDHKDGOQGMcgNKkVmEIPcIAa5QQxyg0qZc213Bzu3y7dfFaxEWjFy036RG8SoVW7ITLs2\n0znXvxYnJjftGrlBxfhsgxjkBjHIDWKQG8QoJzetaZEBAAAAAAAAAOjAmGAGAAAAAAAAAERhghkA\nAAAAAAAAEIUJZgAAAAAAAABAFCaYAQAAAAAAAABRvlLvAQAA6u/yyy/PbDvrrLO8+sILL/TqUaNG\n1XJIAAAAAACgCXAHMwAAAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKLQg7kNHX744V595513\nevWRRx7p1ffcc0/Nx4Tm07dvX69+7rnnvPrBBx/MHBNmD+jRo4dXh+8/kuSc8+qlS5fWdEwAAAAA\nALRHr732mlfPmTMns8/w4cO9evHixTUdUzVxBzMAAAAAAAAAIAoTzAAAAAAAAACAKEwwAwAAAAAA\nAACi0IO5DZ1//vleHfY3Bcqx4447enWnTp28evvtt88c07VrV69evnx59QeGhtalSxevnjRpkldv\nsskmmWMee+wxr77pppuqPzCUNGjQIK+eMmVKxecYPXp0yX323HPPoo/vtddeFV8XzWXcuHFefcYZ\nZ3j1aqtl70v44osviu5T6nEpu04Aa1A0t549e3r1kiVLMvvMmzfPq5966imvnj17tlevscYamXOE\nP5Pmz59fyTDRYLp16+bVffr0yezzrW99y6t79+5d9JyHHHJIZtv666/v1eHfxy644AKvvvjii4te\nA+1P3vvNrrvu6tVhTsLPauHPvjwnnniiV998881ljhCVCl/T008/3asHDx6cOabUaxp+Vgk/M0nS\nwoULKxkmOoDwZ85BBx2U2WfnnXf26kcffbSmY6om7mAGAAAAAAAAAERhghkAAAAAAAAAEIUJZgAA\nAAAAAABAFHow18jQoUMz27baaqs6jATtTdh/LrT11ltntm200UZe/frrr1d1TGh81113nVf369fP\nq/N6ZA4fPtyrP/roo+oPDCWNHDmyIc4R9gzL68k8derUVl8HtfG73/0usy18TcNeyOX0kCy1Tznn\nCHsh0oO5cay11lqZbZdccolX77PPPl4d9rj9xz/+kTlH2A/z0EMPLVrn+eSTT7z6sssuK/o4GkvY\nH/miiy7y6rz+ymbm1eF7WKnH87aF9YgRI7w6XLNCkl555ZXMNrSNcE2R8O89xxxzTOaY8D1p2bJl\nXn3qqad69aWXXpo5x2mnnVZ0XOHPurz1bsaOHevV999/f9FzIl6Yk2uuucarjz/+eK+eOHFi5hw3\n3nhj0WuEf5cKrylJffv29eoXX3yx6DnR/oTrsG222WZefcstt2SOefrpp2s6plriDmYAAAAAAAAA\nQBQmmAEAAAAAAAAAUZhgBgAAAAAAAABEYYIZAAAAAAAAABCFRf5qJG9his6dO9dhJOho3nrrrcy2\n999/vw4jQT2NGzfOq4877jivDhf122+//TLnyMsSam/UqFFePWjQoLqMo5QpU6ZktoUL/7HoX9sJ\nFw258847vXrXXXfNHBMuShQukLXaaqsVfVySpk+f7tXvvPOOVw8cOLDoOPPGFi5IeOSRR2aOQduY\nPXt2Zlvea1hozpw5Xj1//vzMPuUsxlZo8ODBmW3he2WY1/Bx1Fe4WN7BBx/s1eVkYtasWV597733\nenXM592zzz7bq3v27OnVXbt2rficqJ5wQdBSi7WV41//+pdX9+rVy6t33nnnis8ZLth3+eWXZ/YJ\nf16iOvIWuP+v//ovrw5zcvLJJ3t13iJ/4XvSYYcd5tXbbLONV993332Zc2y33XZePXnyZK8+5ZRT\nvHrhwoWZc6C5hD9Dwr8bderUyas//PDDzDnyFgltFtzBDAAAAAAAAACIwgQzAAAAAAAAACAKE8wA\nAAAAAAAAgCj0YK6R888/P7OtVH85NJew39MOO+yQ2SfsNxdj7bXX9uohQ4YU3f/dd9/NbPvggw9a\nPQ40rquuuiqz7Sc/+YlXh+8/J510kleHfQ1RP2Hf4pEjR9ZnIBHCsdKDuXbOPPNMrw57Aw4YMMCr\nw37LedvCHrbh43n9I4cOHerVCxYs8OqwF/Smm25achx8Xqqffffd16vz+i0/8MADXh2+xmGPyRUr\nVlR9XJL06KOPevXee+/t1fRgrp9zzz03sy3suRz+OR8/frxXv/LKK5lzXH311VUYne/HP/6xV/fo\n0aPq10C8008/3atjei6HwnWR9tlnn4rPMXfuXK8+9NBDWzUmxDvxxBMz28Kc3HjjjV592223eXXY\nh1vK9nE++uiji47jL3/5S2ZbeJ1jjjnGq19++WWvznvvRHO56667vHqnnXaq00jqgzuYAQAAAAAA\nAABRmGAGAAAAAAAAAERhghkAAAAAAAAAEIUezDUS9jGU8vsfonndfvvtXr3ddttl9tliiy28+oor\nrqj4OnvttZdXr7vuukX3D3uCof0ZPHiwV4f9lqXse9CwYcO8+p577qn+wFAVYd/i8D1gypQpJc8x\nevRor95zzz29etCgQVFjK6VW5+3o8vrghj2Xd911V68u1V9Zkp555hmvvvfee706r797pZ577jmv\nPuKIIzL7hGMzs1ZfF+XZfPPNvfruu+/26ry1JI499livrkaP5VDYcznsOZ5n3rx5VR8HytOtWzev\n/sEPfpDZZ/ny5V4d5ui+++6r+rj69OmT2XbxxRd79c477+zV4TjDGm1rvfXWq2j/iRMnZrb17NnT\nq2M+q4R/v4rp24zaOPnkkzPbwtfr1FNP9epPP/3Uq/PWz/rOd77j1ePGjfPq8OdjXt/4ZcuWeXXY\ngzl8H/z1r3+dOccbb7yR2YbG9Y1vfMOrw8/j4WeV//zP/6z5mNoSdzADAAAAAAAAAKIwwQwAAAAA\nAAAAiMIEMwAAAAAAAAAgSskezGZ2k6SDJC1yzm2fbvu6pN9J6inpDUlHOOeW1m6YzSev37Jzzqvf\nf/99r16wYEFNx9SW2mNuNtxwQ6/u0aOHV3fu3DlzTPfu3Vt93S5dulS0f9g/sZm0x9xUw/Dhw736\nhhtu8OrwvUWSxowZ49UTJkyo+rgaRXvPTamezHn7lJKXmWqodBz11Ey5GThwYGbbgAEDvDr83BHW\nYb9lSRo6dKhXt8XnkLzshWOtVT6roZlyU47wM8baa6/t1bXqh73VVlt5ddhjOa+nZijsfzl27NjW\nD6xG2ltuQmGv4969e2f2+dOf/uTVtei5PGPGjKLjkqSuXbt6ddir9fDDD/fqvL6qbaG9Z6Zc4XtQ\nWL/22mtePWrUqMw5ws/NYd//8GdQ2J9Xyq6js2jRovwB11lHyM2DDz7o1Xl/V37ooYe8Ou81LTRt\n2rTMtqOOOipidMVdeeWVXh323+3bt2/mmLbowdwRclMLeZ9VSn0eD9+P2pty7mCeIOmAYNsISU84\n53pJeiKtgUITRG5QuQkiN6jcBJEbVG6CyA0qN0HkBpWbIHKDykwQmUHlJojcoHITRG5QBSUnmJ1z\nT0laEmz+nqSWJVonSjq4yuNCkyM3iEFuEIPcIAa5QQxygxjkBpUiM4hBbhCD3KBaSrbIWIXuzrmF\n6e/flbTKPgBmNlzS8FU9jg6F3CAGuUGMsnJDZhAgN4hBbhCD3KBSfCZGDHKDGOQGFYudYP6Sc86Z\n2Sqb5TnnxksaL0nF9kPHQm4Qg9wgRrHckBmsCrlBDHKDGOQGleIzMWKQG8QgNyhX7ATz381sI+fc\nQjPbSFJjdrlvQ6effnrFx4SLEkyfPr1aw2lUTZ2bTTfd1KvXXXfdkseUWlAgtMYaa2S2hc3/Qy++\n+KJXP/nkkxVdswk0dW5i7Ljjjl4dLgYQLnASLhghSVdffXX1B9Zc2m1uYhbSmzJlSvUHkmP06NFt\ncp0aasjc5C20Fi5SFNah1VdfvapjKle4QGE5z+WII47w6nvuuado3QAaMjflWLLE/x+xc+bM8erv\nfOc7mWPOPvtsr77mmmu8+sMPP/TqHXbYIXOO8LNKuLjgvHnzvPrcc8/NnCNcxGnFihWZfRpc0+Ym\n9OMf/9ir8/6cd+vWzavDxfaWL19e8jr9+vXz6ocfftir119/fa9evHhx5hzHHnusV9discEaajeZ\nKVe46GtYv/fee16d9/l3//339+pw0a0we6eddlrmHLfcckvpwTaups7N7rvv7tWDBg3y6vDnlpT9\nOVXK9ddfX/G4YoTvWeECt4ceemjmmAceeKCmYyqiqXPTFg488MCKjwkXqWxvylnkL89kScelvz9O\nUt1Sj6ZCbhCD3CAGuUEMcoMY5AYxyA0qRWYQg9wgBrlBxUpOMJvZHZKeldTbzBaY2TBJYyXta2bz\nJO2T1sCXyA1ikBvEIDeIQW4Qg9wgBrlBpcgMYpAbxCA3qJaSLTKcc0NX8dDeVR4L2hFygxjkBjHI\nDWKQG8QgN4hBblApMoMY5AYxyA2qpdWL/HVUYf/dk046qeJz3HrrrdUaDtrAXnvtVfExYZ+lLl26\nFN3/rLPOymzr37+/V4e9xyZPnuzV//znPysZIups4403zmwLeyqHr/lzzz3n1SNHjsyc4+OPP67C\n6NAswn50YSbCx6sh7z0xpj80SnvmmWdKbtt11129Ouwxucsuu2TOcccdd3j1HnvsETvEVSrVP1PK\njjXsyZx3DKpj0SK/pWLYL/k3v/lN5pjzzjuvaP2HP/zBq3v06JE5R9hzOeynPGbMGK/+4x//mDkH\nGkfYx/jEE0/M7NO7d2+vDnuknn/++SWvE36uDv8+9tRTT3l13joms2bNKnkdNI9vfvObFR8TrpET\n9le++eabWzUmVNfPfvYzrw7/Pt1McyqDBw8u+ngzPZeOqG/fvl7ds2fPksdMmzbNq8N1Ktqb2B7M\nAAAAAAAAAIAOjglmAAAAAAAAAEAUJpgBAAAAAAAAAFHowRzpqKOO8upevXqVPOaFF17w6gcffLCq\nY0J1hb2Pv/Wtb1V8jrAXXC3cc889Nb8Gamf//ffPbNtzzz29evny5V594IEHenU5/ZbXWWcdr/7k\nk0+8esWKFSXPgcY1ZcqUml/DzGp+DeRbsGBBZtu9997r1bvttptXh32M816/Un2bx40b59V5fXCf\nffZZrz7zzDO9+vDDDy85jnCsYb/FSZMmZY5B27j00ksz24YMGeLV66+/vlfvvvvuXv3BBx9kznH8\n8cd79W233ebVn3/+eUXjRH09+uijXp23NsTpp5/u1eecc45XH3rooV4d9myWsp+HwveXsBc0kGfp\n0qVefcopp9RpJMgzcOBAr9577+LrzE2cOLGWw6mqcL2lV1991aunT5/elsNBCZtssolXh59V+vTp\nU/Ic4c+l9957r/UDa2DcwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAo9GCOFPbjDXsK\n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\nNMmrp0+fXvI69dLsuenf358z2G+//bx6+fLlXn377beXPOe5557r1WPGjPHqvN7se+65p1e/+eab\nJa/TzJo9N+FrmPeaFrryyisz28K1kc4555yi5+zXr18lQ2yXmik3ixZlhzFjxgyv3mqrrbz62GOP\n9erLL7+81ePYYIMNMtt+9KMfefU222zj1U8++aRXh+9pzaaZclMN48ePr/cQ2qWSdzBb8jeBGyW9\n7JwrfNefLKnl0+Bxkh6o/vDQrMgNYpAbxCA3qBSZQQxygxjkBjHIDWKQG8QgN6iWcu5g3k3SMZJe\nMrMX0m3nSBor6S4zGybpb5KOqM0Q0aTIDWKQG8QgN6gUmUEMcoMY5AYxyA1ikBvEIDeoipITzM65\nP0jK/n/GxN7VHQ7aC3KDGOQGMcgNKkVmEIPcIAa5QQxygxjkBjHIDaqlrB7MAOIccsghFe3/+eef\n12gkaBTvvPOOV+f1t/zggw/aajhoY/XolVwtYc/l0aNH12cgqJkzzjjDq8PeuWE/5XL2iTkHGsd/\n//d/Z7Ydc8wxXj127Fiv3mmnnbz6zjvvzJzj/fff9+qw5+YLL7zg1QMGDMicY9iwYV7dyD2Ym12p\nXrphz+ywlqRbb73Vqw8++GCvXrx4sVdfcsklmXPknRftx+OPP57ZFvbtL9XHOezNjuYTvlcMHTrU\nqy+99FKvfuONNzLnuPvuu4teI1xz4tprr83ss+OOO3p12HP5qKOO8uqlS5cWvSYay8Ybb5zZxufR\n1ivZgxkAAAAAAAAAgDxMMAMAAAAAAAAAojDBDAAAAAAAAACIwgQzAAAAAAAAACAKi/xFmjhxolc/\n9dRTdRoJGlm4WMVFF13k1e+9955X33PPPTUfE+pr9uzZXt2tW7c6jQT1EC6UJ0mDBg1q83HkKbWI\nX97Y0b6EiymFC/KFj5ezT7jwWrjQqSRdddVVFY0TbSdvUbVDDz3Uq2+88UavPvLII4vWkvTZZ595\n9bJly7z661//esmxPf/88yX3QXWEf67Dun///l6dt2h1eEy4qN8111zj1VdffXXF40Rjefnll2t+\njYULF3p1uEAoms+zzz7r1UcffbRX//rXv/bqX/7yl5lznHPOOUWvsdVWW3l1ly5dMvs8/fTTXn3E\nEUd4NYv6tX/NvDh7vXAHMwAAAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKKYc67tLmbWdhdD\n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\nAAAAAFH+P3L+PO7Dej7xAAAAAElFTkSuQmCC\n", + "image/png": "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\nSWa2spbm5570nD0lfVTkmJpeP/qn5/7QzF4zs5E5rx+dJI1I9zsv/b53V/KPOx0kjUrbg+QubHhV\n+hwfKAAAAHiYYAYAAHXFOTdS0v6S7tPShcU2lHSOpBvTelMld4RK0t+cc0ucc98o6bEqJXevdg9O\n/UA6cft2zramya23crZ1Te/gbJoo+7GkJWlLhGPSbb3MrEsRD6fpztamj2k5j3OJkjtuZyuZdJWk\n451z7+Ucv5qSu1k/M7MlSnrKNlknz/WaHs/bebY1PcZuypqcc3fn33K2b5ZnXym5s7rJI+n35nNJ\na6TbmiZfm6492pKFGh+UdJyk95dx3mLd4Jz7QpKcc4uV3IUqSdPTiUE55x5OxyRJWwfHf+6cezp9\nDt5Jt73inHvbOTdX0qx0W77vVSm+dM41fQ9y+yOXM2PFmKv0zun074qT1FnS/Za0XVki6dWc/fNl\nK5+b0j9zH1sx37OXnHOvBMc2HddLyV30UvJ32znnZiu5W7og59zZkg5Qkr2m14+NlEwoN909vrmW\nvn6ck37fFyu5g1mK7DsNAADQVrHIHwAAqDvOuTGSxpiZKfmv91enf+6d587kYjVNNi3Ksy23n64F\nx/1HSyccc7Uv4prXpBPmy9JVSye6pKW9h5vusnxEySTzfCX/Nf8bLZ3czdeKoNjHWE4T85y7adL2\nLElPK7lbeDMld4TuIelAJe1KYhV7N+uyzM75fFGebU2PJ8xCqb7Ic518521JxooxK3dRPzNbRUlr\njlWVLKJZTLZCi9PJeKn5x5ZPvu9LvuOiMuucu1vS3elrRT8l7UH6SNonfU3J9ar85z53TAAAACgC\ndzADAIC6ki4O1keS0rsXn5fUdHftnPSu0ylKJsYk6WAzW87M2iu5c1FK+szOiB2Dc+5jLb0L+BUl\nbReaFlU7SNIfnHMfxp5fktL/rn+LkknEpr6uo8ysX/r5RkomlyXpKOfcVlra3qPctshZfC63BcAr\n+XaW9FzO5xflfG+2k/QbSVelX+sv6Qnn3EnOuZ0lHZtu37KFd+eGE49N4/le00JzZjZYyV26UrC4\nWxk1ZbBjqQdWI2O5lwvq3komlyXpiDRbvy7TtVrqdSW9mSVpqPTthHi+ljAZlizUuKX07d3ak7T0\nfw7MSSfaX9bSNiiPStou53t/pKSR6dcWa2k/cO85NrMD0tYbr+UuUAgAANAWMcEMAADqzTGSXjSz\nj83seTOboaSFgCTdJknOuXla2qN2HyUTdW8rWURNks5JJ6JbYnj6595K+kC/aGbvp9c5tchzHGNm\nzwQfa6dfu1hJ648ZknZS0t6jvaRb0h69bynplStJ15rZZCUL9lXCAkkvmNkULe0VPMk5Ny7fzs65\n8ZIeSsvbzex1M3tZycJoTyi5a1RKFnL71Mymm9nzWtqi4F0l/abL5XIlfZtN0pNm9oqS3tySNF3S\n9WW8Vq6mf/g4ycyeM7NS+yaXI2MxpitZcFFK2pdM1tL2MjWV3hXd1Ef5YDN7S8nfhXyLWuZzrKSX\nzGxW+vrxjqSD06/dmnONpr7eJ0l6L/3ez1LSsuOQdD+npZPTp5rZRDNrOm41Jf8ItJHKd6c5AABA\nQ2KCGQAA1JuzlfRfniNpYyUTS28omVD+9i5L59zvJR0l6QUlPZc7K+lzfLBz7iq1kHPub0raOTQt\n/NVbyV2Pd0q6sMjTrKuk7UDuxwpmto+SiTAn6Wjn3BxJv1DS+mFjSRc65z5XcjfxVCXv2RYqmYis\nhElKJjQ7pdd5WEkf7Obsp6Sv7WtK+l2vp2Qi8M+Sxqf7/E1JC42VlfS9naPkud0jt2VDSznnZinp\nm3uTkvYLGym5i/0aSf1zWjmU20lK7oaVkj7PGzazb0aZMlYy59ynSu6SflVJO4z5kvat1PUinKFk\nkvlLJX+vb5N0Q/q1r5d1UOpMJf+4MFfJ36VuSu6K/r2WLkYo59x/S/qpkteMVZU8d59LGq2l/xAi\nSb9Ucof5ckp6ffeKflQAAACtlJXxvT0AAAAaiJmNV3L39BPOuQG1HQ2QMLO1JH2VLu7X1E7meSUT\nxk8553Zs7ngAAABUF4v8AQAAAKgnO0i63swmKbnrfRsldyIvkvS7Wg4MAAAAWbTIAAAAAFBP3lSy\n8OUWkoYo+Z3lPkk7LKsvOAAAAGqHFhkAAAAAAAAAgCjcwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPM\nAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAoTDAD\nAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwA\nAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAA\nAAAAAAAgChPMAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAA\nAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAAAAAgChPMAAAAAAAAAIAoLZpgNrPB\nZjbNzKab2fByDQqtG7lBDHKDGOQGMcgNYpAblIrMIAa5QQxygxjkBqUw51zcgWbtJL0uaZCkdyU9\nJ+lQ59zU8g0PrQ25QQxygxjkBjHIDWKQG5SKzCAGuUEMcoMY5AalWr4Fx24jabpz7i1JMrPbJe0r\naZlhM7O42WzUPeecFbkrucG3yA1iVCo3ZKZV+8Q5t2aR+5IbNCE3KBnvbRCD3CAGuUEMcoMYxeSm\nJS0y1pU0M6d+N90GNIfcIAa5QQxygyYzStiX3KAJuUElkRnEIDeIQW4Qg9ygJC25g7koZnaspGMr\nfR20LuQGMcgNSkVmEIPcIAa5QQxygxjkBjHIDWKQGzRpyQTze5K+m1Ovl27zOOeulnS1xO3ykERu\nEIfcIEbB3JAZ5EFuEIPcoFS8t0EMcoMY5AYxyA1K0pIWGc9J6mVmG5hZB0mHSBpbnmGhFSM3iEFu\nEIPcIAa5QQxyg1KRGcQgN4hBbhCD3KAk0XcwO+cWmdkwSY9IaifpOufclLKNDK0SuUEMcoMY5AYx\nyA1ikBuUiswgBrlBDHKDGOQGpTLnqncHO7fLt14lrERaMnLTepEbxKhUbshMq/a8c27rSpyY3LRq\n5AYl470NYpAbxCA3iEFuEKOY3LSkRQYAAAAAAAAAoA1jghkAAAAAAAAAEIUJZgAAAAAAAABAFCaY\nAQAAAAAAAABRmGAGAAAAAAAAAERZvtYDAAAAAACg0vr06ePVf//73736sMMO8+pHH3204mMCAKA1\n4A5mAAAAAAAAAEAUJpgBAAAAAAAAAFGYYAYAAAAAAAAARKEHMwA0mDXXXNOrP/roo8w+W2+9tVe/\n8MILFR0TamvgwIFefeaZZ3r1/PnzvXrvvfeu+JgAAKim8L3PBRdckNmnX79+zZ6Dnsv1Zbnl/Pvh\nxowZ49Xh8zlgwIDMOd58882yjwsAkMUdzAAAAAAAAACAKEwwAwAAAAAAAACiMMEMAAAAAAAAAIjS\nJnowt2vXzqu7d+/u1QcffLBXd+vWreJjKkafPn0y26677jqvvvHGG6s1HAB1Yr/99vNq51zBfejB\n3HqE/ZYl6f/+7/+8esGCBV59zjnnVHRMAABU25/+9Cev3meffbx6ww03zBzzxBNPePXxxx9f/oGh\nbDbeeGOvHjJkiFd/+OGH1RwOWqmwf7sknXzyyV594IEHenWHDh28evLkyZlzhGuezJw5M3aIqAPh\nOkj5cjN16lSvnjFjRkXHVG+4gxkAAAAAAAAAEIUJZgAAAAAAAABAFCaYAQAAAAAAAABRLF/vzopd\nzKziF1t33XUz26688kqvDns3VYKZZbaV43t9++23e/Vhhx3W4nOWg3Mu+4DLpBK52X777b16hx12\nyOwT9s958sknvfrLL78s97DanEbLTb0I+9GFWZWkV1991as33XTTio6pmiqVm3rNTJcuXbz6jTfe\nyOzTuXPnZs8R/vxZuHBhZp877rjDq4cNG+bVs2fPbvYade5551y2UVoZ1GtuihFma6+99vLqU089\n1at79OiROceYMWO8+tZbb/XqRx99tAUjrDlyg5Lx3ia/9u3be/UZZ5zh1VtuuaVX77vvvgXPGa6z\n8+6773r1sccemznmkUce8eolS5YUvE41kJvi3HPPPV79ox/9yKt32223zDGPPfZYRcdUS+SmOOuv\nv75Xh+ta7bTTTpljlluu5fdi/u///q9X10vPd3KTX9hjOezrH/5M2WqrrTLnCH8HD/tun3vuuV79\n8ssvZ84xb968woOtgWJywx3MAAAAAAAAAIAoTDADAAAAAAAAAKIwwQwAAAAAAAAAiMIEMwAAAAAA\nAAAgyvK1HkC5bbDBBplt+Rb+y/XWW2959bhx41o8ju222y6zbZNNNinpHB9//HFm28UXXxw9Jiz1\n8MMPe3XHjh0LHvPhhx96dbjg1dy5czPHPP74482eM1yM5MUXX8zsM2fOHK9eaaWVvHr69Ole/emn\nnzZ7TTS+1157zavzLSC60UYbVWs4qLBXXnnFq/Mt6BcuOhouKhJmJp+hQ4d69dixY706XOiiwRf9\na3MGDx6c2Xb55Zd7dfge6pZbbvHqcHEsSdpiiy28+oEHHvDqyy67zKtPO+20woNF1QwYMKDZOp+R\nI0eWfRyFzplvAaZCYx04cKBXjx8/vsRRoZzWWmstrx41alSz++d7P/vNN9949XPPPefVw4cP9+p8\niyCjdevUqVOth4A6EC4qev7553t1+PPBLLt2Wb7fr0q18847t/gcqIxwQT8p+z43XHy2mEz07t3b\nq8M5wHAh0nDBSUk67rjjSr5uveAOZgAAAAAAAABAFCaYAQAAAAAAAABRmGAGAAAAAAAAAESxavbz\nMLOaNA/p0KGDVy+/vN96evHixV69YMGCkq/Rv39/r87Xx7ldu3bNnmPJkiVe/eMf/zizz5133lny\n2KrBOZdtXFQmlcjNSSed5NUxva3DXk0xf5eKOceiRYu8OszRvHnzvHrKlCmZc5xwwgle/dJLL5U0\nzkpptNzUq/C1Q8r2cO/WrVu1hlNxlcpNvWRm44039uqwx2S+/oJhj7eYtQRWW201rw57yPfq1cur\nDz300Mw5wv67deR559zWlThxveQmFL4veeihhzL7hGtQHH/88V4dZi98v5TPkUce6dV//vOfvTrs\neyhJ//73vwuet0ZafW4aqa9fS+XrsVkJvLfJL+z5Hr43/e1vf+vVV155ZeYcrbn3P7nJL/w9Plwf\nIuxnOmHChMw5iukt36jITX4HHnigV99+++3N7h++H5KkN99806sHDRpU8jguuugirz799NNLPkcl\ntMXc9OjRw6vvv//+zD5h/+RqzfeE7r77bq8++OCDS75uJRSTG+5gBgAAAAAAAABEYYIZAAAAAAAA\nABCFCWYAAAAAAAAAQJTlC+/S+BYuXNhsHaNz585efd5553l12OdZKtxv5U9/+pNX12u/5dbgkksu\n8eoHH3wws8+mm27q1WuttZZXhz3BzjzzzMw5wr63n332mVeHmciXkfbt23v1qquu6tWrrLKKV2+7\n7baZc1x66aVeveOOO2b2QePKl5t77rmnBiNBOYT92cKey3/9618zx0ycOLHF1/3iiy+8eo899vDq\nsIfvjTfemDnHNtts49Vh/zpUTvgzadSoUV4dPr+StN1223n1119/3eJxXH/99V59wQUXeHW+PnJ1\n3IO51QtzMmLEiBqNpPzCx4bq2XrrbOvyX/ziF1792GOPefVf/vIXry7H72tofBtuuKFXhz2XgfC9\npySNHj262WO+/PJLr+7bt29mn3CNm1//+tdeHb6mde3aNXOOcryvQnmE/ZXDuhjhGkf51jc5//zz\nvfree+8t+bpDhw716muuucarw/XEvvrqq4LnrBbuYAYAAAAAAAAARGGCGQAAAAAAAAAQhQlmAAAA\nAAAAAECUgj2Yzew6SXtJmuWc2yzdtrqkv0nqIeltSQc55z6v3DCrK1//5LDHzoknnujVvXr1Kvk6\n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\nAABR/j+ryQpNkv8HtwAAAABJRU5ErkJggg==\n", "text/plain": [ - "" + "" ] }, "metadata": {}, @@ -371,6 +371,7 @@ } }, "colab_type": "code", + "collapsed": true, "id": "jLVw-NWEKBI9" }, "outputs": [], @@ -436,6 +437,7 @@ } }, "colab_type": "code", + "collapsed": true, "id": "QVCIXYUrHXai" }, "outputs": [], @@ -588,8 +590,8 @@ "Shape: (100, 10)\n", "\n", "Sanity check manual avg cross entropy: 2.30259\n", - "Model loss (no reg): 42.5389\n", - "Sanity check loss (with regularization, should be higher): 3981.01\n" + "Model loss (no reg): 41.1234\n", + "Sanity check loss (with regularization, should be higher): 3890.07\n" ] } ], @@ -955,16 +957,16 @@ "name": "stdout", "output_type": "stream", "text": [ - "Epoch: 0001 Training cost= 13.016955358 Validation acc= 0.099600002\n", - "Epoch: 0002 Training cost= 12.322079424\n", - "Epoch: 0003 Training cost= 11.748905875 Validation acc= 0.110799998\n", - "Epoch: 0004 Training cost= 11.271424025\n", - "Epoch: 0005 Training cost= 10.868620630 Validation acc= 0.125799999\n", - "Epoch: 0006 Training cost= 10.524659014\n", - "Epoch: 0007 Training cost= 10.227089735 Validation acc= 0.138400003\n", - "Epoch: 0008 Training cost= 9.966020190\n", - "Epoch: 0009 Training cost= 9.733831596 Validation acc= 0.149200007\n", - "Epoch: 0010 Training cost= 9.524593275\n", + "Epoch: 0001 Training cost= 16.209273876 Validation acc= 0.068200000\n", + "Epoch: 0002 Training cost= 15.507861892\n", + "Epoch: 0003 Training cost= 14.870336862 Validation acc= 0.074199997\n", + "Epoch: 0004 Training cost= 14.284690458\n", + "Epoch: 0005 Training cost= 13.741959659 Validation acc= 0.080799997\n", + "Epoch: 0006 Training cost= 13.236202647\n", + "Epoch: 0007 Training cost= 12.763876768 Validation acc= 0.086000003\n", + "Epoch: 0008 Training cost= 12.322818453\n", + "Epoch: 0009 Training cost= 11.911516675 Validation acc= 0.091399997\n", + "Epoch: 0010 Training cost= 11.528637201\n", "Optimization Finished!\n" ] } @@ -1015,7 +1017,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 14, "metadata": { "colab": { "autoexec": { @@ -1050,108 +1052,129 @@ "name": "stdout", "output_type": "stream", "text": [ - "Epoch: 0001 Training cost= 95.568433519 Validation acc= 0.423000008\n", - "Epoch: 0002 Training cost= 34.388768508\n", - "Epoch: 0003 Training cost= 20.967311712 Validation acc= 0.685400009\n", - "Epoch: 0004 Training cost= 14.751626596\n", - "Epoch: 0005 Training cost= 11.249675534 Validation acc= 0.754599988\n", - "Epoch: 0006 Training cost= 8.779440206\n", - "Epoch: 0007 Training cost= 6.983736926 Validation acc= 0.777999997\n", - "Epoch: 0008 Training cost= 5.732245023\n", - "Epoch: 0009 Training cost= 4.571487952 Validation acc= 0.791400015\n", - "Epoch: 0010 Training cost= 3.679469796\n", - "Epoch: 0011 Training cost= 3.017298945 Validation acc= 0.796199977\n", - "Epoch: 0012 Training cost= 2.418966184\n", - "Epoch: 0013 Training cost= 1.929761430 Validation acc= 0.799799979\n", - "Epoch: 0014 Training cost= 1.655859186\n", - "Epoch: 0015 Training cost= 1.275558772 Validation acc= 0.810800016\n", - "Epoch: 0016 Training cost= 0.995165780\n", - "Epoch: 0017 Training cost= 0.774795656 Validation acc= 0.810999990\n", - "Epoch: 0018 Training cost= 0.529382914\n", - "Epoch: 0019 Training cost= 0.479213289 Validation acc= 0.812600017\n", - "Epoch: 0020 Training cost= 0.364098819\n", - "Epoch: 0021 Training cost= 0.278089920 Validation acc= 0.816600025\n", - "Epoch: 0022 Training cost= 0.208204006\n", - "Epoch: 0023 Training cost= 0.188327365 Validation acc= 0.821200013\n", - "Epoch: 0024 Training cost= 0.095048184\n", - "Epoch: 0025 Training cost= 0.047551171 Validation acc= 0.822600007\n", - "Epoch: 0026 Training cost= 0.017068356\n", - "Epoch: 0027 Training cost= 0.004734606 Validation acc= 0.822000027\n", - "Epoch: 0028 Training cost= 0.006967914\n", - "Epoch: 0029 Training cost= 0.000536940 Validation acc= 0.822000027\n", - "Epoch: 0030 Training cost= 0.000044846\n", - "Epoch: 0031 Training cost= 0.000023364 Validation acc= 0.822000027\n", - "Epoch: 0032 Training cost= 0.000020457\n", - "Epoch: 0033 Training cost= 0.000018450 Validation acc= 0.822600007\n", - "Epoch: 0034 Training cost= 0.000016935\n", - "Epoch: 0035 Training cost= 0.000015734 Validation acc= 0.822600007\n", - "Epoch: 0036 Training cost= 0.000014745\n", - "Epoch: 0037 Training cost= 0.000013911 Validation acc= 0.822600007\n", - "Epoch: 0038 Training cost= 0.000013192\n", - "Epoch: 0039 Training cost= 0.000012562 Validation acc= 0.822799981\n", - "Epoch: 0040 Training cost= 0.000012003\n", - "Epoch: 0041 Training cost= 0.000011503 Validation acc= 0.822799981\n", - "Epoch: 0042 Training cost= 0.000011049\n", - "Epoch: 0043 Training cost= 0.000010635 Validation acc= 0.823000014\n", - "Epoch: 0044 Training cost= 0.000010255\n", - "Epoch: 0045 Training cost= 0.000009903 Validation acc= 0.822799981\n", - "Epoch: 0046 Training cost= 0.000009577\n", - "Epoch: 0047 Training cost= 0.000009272 Validation acc= 0.823000014\n", - "Epoch: 0048 Training cost= 0.000008986\n", - "Epoch: 0049 Training cost= 0.000008718 Validation acc= 0.823199987\n", - "Epoch: 0050 Training cost= 0.000008464\n", - "Epoch: 0051 Training cost= 0.000008224 Validation acc= 0.823199987\n", - "Epoch: 0052 Training cost= 0.000007996\n", - "Epoch: 0053 Training cost= 0.000007779 Validation acc= 0.823000014\n", - "Epoch: 0054 Training cost= 0.000007573\n", - "Epoch: 0055 Training cost= 0.000007375 Validation acc= 0.823199987\n", - "Epoch: 0056 Training cost= 0.000007186\n", - "Epoch: 0057 Training cost= 0.000007005 Validation acc= 0.823199987\n", - "Epoch: 0058 Training cost= 0.000006832\n", - "Epoch: 0059 Training cost= 0.000006665 Validation acc= 0.823199987\n", - "Epoch: 0060 Training cost= 0.000006504\n", - "Epoch: 0061 Training cost= 0.000006350 Validation acc= 0.823199987\n", - "Epoch: 0062 Training cost= 0.000006200\n", - "Epoch: 0063 Training cost= 0.000006056 Validation acc= 0.823000014\n", - "Epoch: 0064 Training cost= 0.000005916\n", - "Epoch: 0065 Training cost= 0.000005781 Validation acc= 0.823199987\n", - "Epoch: 0066 Training cost= 0.000005651\n", - "Epoch: 0067 Training cost= 0.000005525 Validation acc= 0.823199987\n", - "Epoch: 0068 Training cost= 0.000005402\n", - "Epoch: 0069 Training cost= 0.000005283 Validation acc= 0.823199987\n", - "Epoch: 0070 Training cost= 0.000005167\n", - "Epoch: 0071 Training cost= 0.000005055 Validation acc= 0.823199987\n", - "Epoch: 0072 Training cost= 0.000004945\n", - "Epoch: 0073 Training cost= 0.000004839 Validation acc= 0.823000014\n", - "Epoch: 0074 Training cost= 0.000004735\n", - "Epoch: 0075 Training cost= 0.000004634 Validation acc= 0.823199987\n", - "Epoch: 0076 Training cost= 0.000004536\n", - "Epoch: 0077 Training cost= 0.000004440 Validation acc= 0.823199987\n", - "Epoch: 0078 Training cost= 0.000004347\n", - "Epoch: 0079 Training cost= 0.000004256 Validation acc= 0.823199987\n", - "Epoch: 0080 Training cost= 0.000004167\n", - "Epoch: 0081 Training cost= 0.000004080 Validation acc= 0.823199987\n", - "Epoch: 0082 Training cost= 0.000003996\n", - "Epoch: 0083 Training cost= 0.000003913 Validation acc= 0.823199987\n" + "Epoch: 0001 Training cost= 105.470415427 Validation acc= 0.413800001\n", + "Epoch: 0002 Training cost= 37.029117862\n", + "Epoch: 0003 Training cost= 22.479081345 Validation acc= 0.684400022\n", + "Epoch: 0004 Training cost= 16.355804123\n", + "Epoch: 0005 Training cost= 12.439348017 Validation acc= 0.751399994\n", + "Epoch: 0006 Training cost= 9.807188580\n", + "Epoch: 0007 Training cost= 7.855120082 Validation acc= 0.774200022\n", + "Epoch: 0008 Training cost= 6.362875579\n", + "Epoch: 0009 Training cost= 5.182396655 Validation acc= 0.788600028\n", + "Epoch: 0010 Training cost= 4.244338637\n", + "Epoch: 0011 Training cost= 3.467612814 Validation acc= 0.796999991\n", + "Epoch: 0012 Training cost= 2.889062907\n", + "Epoch: 0013 Training cost= 2.303399865 Validation acc= 0.804199994\n", + "Epoch: 0014 Training cost= 1.889887831\n", + "Epoch: 0015 Training cost= 1.503672092 Validation acc= 0.806400001\n", + "Epoch: 0016 Training cost= 1.193359314\n", + "Epoch: 0017 Training cost= 0.876851855 Validation acc= 0.809599996\n", + "Epoch: 0018 Training cost= 0.662022063\n", + "Epoch: 0019 Training cost= 0.497880016 Validation acc= 0.810199976\n", + "Epoch: 0020 Training cost= 0.393715177\n", + "Epoch: 0021 Training cost= 0.349419142 Validation acc= 0.814199984\n", + "Epoch: 0022 Training cost= 0.232127926\n", + "Epoch: 0023 Training cost= 0.190329430 Validation acc= 0.808799982\n", + "Epoch: 0024 Training cost= 0.153042695\n", + "Epoch: 0025 Training cost= 0.136364700 Validation acc= 0.812399983\n", + "Epoch: 0026 Training cost= 0.107809806\n", + "Epoch: 0027 Training cost= 0.068200236 Validation acc= 0.814999998\n", + "Epoch: 0028 Training cost= 0.067782582\n", + "Epoch: 0029 Training cost= 0.035214644 Validation acc= 0.819800019\n", + "Epoch: 0030 Training cost= 0.025902511\n", + "Epoch: 0031 Training cost= 0.022221239 Validation acc= 0.819400012\n", + "Epoch: 0032 Training cost= 0.019528200\n", + "Epoch: 0033 Training cost= 0.010446161 Validation acc= 0.820400000\n", + "Epoch: 0034 Training cost= 0.007696723\n", + "Epoch: 0035 Training cost= 0.005108686 Validation acc= 0.819199979\n", + "Epoch: 0036 Training cost= 0.000352110\n", + "Epoch: 0037 Training cost= 0.000078297 Validation acc= 0.820200026\n", + "Epoch: 0038 Training cost= 0.000057465\n", + "Epoch: 0039 Training cost= 0.000049975 Validation acc= 0.819999993\n", + "Epoch: 0040 Training cost= 0.000045021\n", + "Epoch: 0041 Training cost= 0.000041330 Validation acc= 0.820200026\n", + "Epoch: 0042 Training cost= 0.000038402\n", + "Epoch: 0043 Training cost= 0.000035980 Validation acc= 0.820200026\n", + "Epoch: 0044 Training cost= 0.000033920\n", + "Epoch: 0045 Training cost= 0.000032129 Validation acc= 0.820599973\n", + "Epoch: 0046 Training cost= 0.000030548\n", + "Epoch: 0047 Training cost= 0.000029133 Validation acc= 0.820400000\n", + "Epoch: 0048 Training cost= 0.000027853\n", + "Epoch: 0049 Training cost= 0.000026685 Validation acc= 0.820400000\n", + "Epoch: 0050 Training cost= 0.000025612\n", + "Epoch: 0051 Training cost= 0.000024620 Validation acc= 0.820400000\n", + "Epoch: 0052 Training cost= 0.000023698\n", + "Epoch: 0053 Training cost= 0.000022837 Validation acc= 0.820200026\n", + "Epoch: 0054 Training cost= 0.000022031\n", + "Epoch: 0055 Training cost= 0.000021272 Validation acc= 0.820200026\n", + "Epoch: 0056 Training cost= 0.000020556\n", + "Epoch: 0057 Training cost= 0.000019879 Validation acc= 0.820200026\n", + "Epoch: 0058 Training cost= 0.000019237\n", + "Epoch: 0059 Training cost= 0.000018627 Validation acc= 0.820200026\n", + "Epoch: 0060 Training cost= 0.000018046\n", + "Epoch: 0061 Training cost= 0.000017492 Validation acc= 0.820400000\n", + "Epoch: 0062 Training cost= 0.000016963\n", + "Epoch: 0063 Training cost= 0.000016457 Validation acc= 0.820200026\n", + "Epoch: 0064 Training cost= 0.000015973\n", + "Epoch: 0065 Training cost= 0.000015510 Validation acc= 0.820200026\n", + "Epoch: 0066 Training cost= 0.000015064\n", + "Epoch: 0067 Training cost= 0.000014636 Validation acc= 0.820200026\n", + "Epoch: 0068 Training cost= 0.000014225\n", + "Epoch: 0069 Training cost= 0.000013829 Validation acc= 0.820200026\n", + "Epoch: 0070 Training cost= 0.000013447\n", + "Epoch: 0071 Training cost= 0.000013080 Validation acc= 0.820200026\n", + "Epoch: 0072 Training cost= 0.000012725\n", + "Epoch: 0073 Training cost= 0.000012383 Validation acc= 0.820200026\n", + "Epoch: 0074 Training cost= 0.000012053\n", + "Epoch: 0075 Training cost= 0.000011734 Validation acc= 0.820200026\n", + "Epoch: 0076 Training cost= 0.000011425\n", + "Epoch: 0077 Training cost= 0.000011127 Validation acc= 0.820200026\n", + "Epoch: 0078 Training cost= 0.000010839\n", + "Epoch: 0079 Training cost= 0.000010559 Validation acc= 0.819999993\n", + "Epoch: 0080 Training cost= 0.000010289\n", + "Epoch: 0081 Training cost= 0.000010027 Validation acc= 0.819999993\n", + "Epoch: 0082 Training cost= 0.000009773\n", + "Epoch: 0083 Training cost= 0.000009527 Validation acc= 0.820200026\n", + "Epoch: 0084 Training cost= 0.000009288\n", + "Epoch: 0085 Training cost= 0.000009057 Validation acc= 0.820200026\n", + "Epoch: 0086 Training cost= 0.000008832\n", + "Epoch: 0087 Training cost= 0.000008614 Validation acc= 0.820200026\n", + "Epoch: 0088 Training cost= 0.000008402\n", + "Epoch: 0089 Training cost= 0.000008196 Validation acc= 0.820200026\n", + "Epoch: 0090 Training cost= 0.000007996\n", + "Epoch: 0091 Training cost= 0.000007801 Validation acc= 0.820200026\n", + "Epoch: 0092 Training cost= 0.000007612\n", + "Epoch: 0093 Training cost= 0.000007428 Validation acc= 0.820400000\n", + "Epoch: 0094 Training cost= 0.000007249\n", + "Epoch: 0095 Training cost= 0.000007075 Validation acc= 0.820400000\n", + "Epoch: 0096 Training cost= 0.000006905\n", + "Epoch: 0097 Training cost= 0.000006740 Validation acc= 0.820400000\n", + "Epoch: 0098 Training cost= 0.000006580\n", + "Epoch: 0099 Training cost= 0.000006423 Validation acc= 0.820400000\n", + "Epoch: 0100 Training cost= 0.000006270\n", + "Optimization Finished!\n", + "Accuracy on test set: 0.8161\n" ] }, { - "ename": "KeyboardInterrupt", - "evalue": "", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 65\u001b[0m \u001b[0mmodel_params\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 66\u001b[0m \u001b[0mtraining_params\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 67\u001b[0;31m \u001b[0mverbose\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mTrue\u001b[0m \u001b[0;31m# Modify as desired.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 68\u001b[0m )\n\u001b[1;32m 69\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m\u001b[0m in \u001b[0;36mbuild_train_eval_and_plot\u001b[0;34m(build_params, train_params, verbose)\u001b[0m\n\u001b[1;32m 18\u001b[0m \u001b[0msess\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 19\u001b[0m \u001b[0mverbose\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mverbose\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 20\u001b[0;31m **train_params) \n\u001b[0m\u001b[1;32m 21\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 22\u001b[0m \u001b[0;31m# Now evaluate it on the test set:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m\u001b[0m in \u001b[0;36mtrain_tf_model\u001b[0;34m(tf_model, session, num_epochs, batch_size, keep_prob, train_only_on_fraction, optimizer_fn, report_every, eval_every, stop_early, verbose)\u001b[0m\n\u001b[1;32m 59\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 60\u001b[0m _, c, a = session.run(\n\u001b[0;32m---> 61\u001b[0;31m [optimizer_step, loss, accuracy], feed_dict=feed_dict)\n\u001b[0m\u001b[1;32m 62\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 63\u001b[0m \u001b[0;31m# Compute average loss/accuracy\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/Users/arnupretorius/anaconda/envs/ipykernel_py2/lib/python2.7/site-packages/tensorflow/python/client/session.pyc\u001b[0m in \u001b[0;36mrun\u001b[0;34m(self, fetches, feed_dict, options, run_metadata)\u001b[0m\n\u001b[1;32m 787\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 788\u001b[0m result = self._run(None, fetches, feed_dict, options_ptr,\n\u001b[0;32m--> 789\u001b[0;31m run_metadata_ptr)\n\u001b[0m\u001b[1;32m 790\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mrun_metadata\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 791\u001b[0m \u001b[0mproto_data\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtf_session\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mTF_GetBuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mrun_metadata_ptr\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/Users/arnupretorius/anaconda/envs/ipykernel_py2/lib/python2.7/site-packages/tensorflow/python/client/session.pyc\u001b[0m in \u001b[0;36m_run\u001b[0;34m(self, handle, fetches, feed_dict, options, run_metadata)\u001b[0m\n\u001b[1;32m 995\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mfinal_fetches\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mfinal_targets\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 996\u001b[0m results = self._do_run(handle, final_targets, final_fetches,\n\u001b[0;32m--> 997\u001b[0;31m feed_dict_string, options, run_metadata)\n\u001b[0m\u001b[1;32m 998\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 999\u001b[0m \u001b[0mresults\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/Users/arnupretorius/anaconda/envs/ipykernel_py2/lib/python2.7/site-packages/tensorflow/python/client/session.pyc\u001b[0m in \u001b[0;36m_do_run\u001b[0;34m(self, handle, target_list, fetch_list, feed_dict, options, run_metadata)\u001b[0m\n\u001b[1;32m 1130\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mhandle\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1131\u001b[0m return self._do_call(_run_fn, self._session, feed_dict, fetch_list,\n\u001b[0;32m-> 1132\u001b[0;31m target_list, options, run_metadata)\n\u001b[0m\u001b[1;32m 1133\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1134\u001b[0m return self._do_call(_prun_fn, self._session, handle, feed_dict,\n", - "\u001b[0;32m/Users/arnupretorius/anaconda/envs/ipykernel_py2/lib/python2.7/site-packages/tensorflow/python/client/session.pyc\u001b[0m in \u001b[0;36m_do_call\u001b[0;34m(self, fn, *args)\u001b[0m\n\u001b[1;32m 1137\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_do_call\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfn\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1138\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1139\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mfn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1140\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0merrors\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mOpError\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0me\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1141\u001b[0m \u001b[0mmessage\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcompat\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mas_text\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0me\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmessage\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/Users/arnupretorius/anaconda/envs/ipykernel_py2/lib/python2.7/site-packages/tensorflow/python/client/session.pyc\u001b[0m in \u001b[0;36m_run_fn\u001b[0;34m(session, feed_dict, fetch_list, target_list, options, run_metadata)\u001b[0m\n\u001b[1;32m 1119\u001b[0m return tf_session.TF_Run(session, options,\n\u001b[1;32m 1120\u001b[0m \u001b[0mfeed_dict\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfetch_list\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtarget_list\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1121\u001b[0;31m status, run_metadata)\n\u001b[0m\u001b[1;32m 1122\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1123\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_prun_fn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msession\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mhandle\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfeed_dict\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfetch_list\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mKeyboardInterrupt\u001b[0m: " - ] + "data": { + "image/png": "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\naHYt2rAr54QAAAAASUVORK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" } ], "source": [ @@ -1280,6 +1303,7 @@ ] }, "colab_type": "code", + "collapsed": true, "executionInfo": { "elapsed": 24080, "status": "ok", @@ -1986,7 +2010,7 @@ }, { "cell_type": "code", - "execution_count": 0, + "execution_count": 12, "metadata": { "colab": { "autoexec": { @@ -2018,8 +2042,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "{'hidden_sizes': [256, 128], 'l2_lambda': 0.0054235896697678509}\n", - "{'eval_every': 1, 'report_every': 1, 'optimizer_fn': , 'num_epochs': 20, 'stop_early': True}\n" + "{'l2_lambda': 0.0054235896697678509, 'hidden_sizes': [256, 128]}\n", + "{'optimizer_fn': , 'eval_every': 1, 'report_every': 1, 'stop_early': True, 'num_epochs': 20}\n" ] } ], @@ -2085,7 +2109,7 @@ }, { "cell_type": "code", - "execution_count": 0, + "execution_count": 17, "metadata": { "colab": { "autoexec": { @@ -2117,74 +2141,115 @@ "name": "stdout", "output_type": "stream", "text": [ - "RUN: 0 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [256], 'l2_lambda': 0.017639122106750327}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", - "Validation loss stopped improving, stopping training early after 3 epochs!\n", - "Optimization Finished!\n", "RUN: 1 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [256], 'l2_lambda': 0.00071915651503389648}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", + "Sampled Architecture:\n", + " - hidden_sizes: [256, 128]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.000690269\n", + " - momentum coefficient: 0.648978700\n", + " - L2 regularization: 0.018746645\n", "Optimization Finished!\n", + " - test accuracy: 0.914600015\n", + "\n", "RUN: 2 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [256], 'l2_lambda': 0.034917746813186976}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", - "Validation loss stopped improving, stopping training early after 5 epochs!\n", + "Sampled Architecture:\n", + " - hidden_sizes: [256, 256]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.000002392\n", + " - momentum coefficient: 0.625334785\n", + " - L2 regularization: 0.030403039\n", "Optimization Finished!\n", + " - test accuracy: 0.690500021\n", + "\n", "RUN: 3 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [128, 128], 'l2_lambda': 0.0011477153620692811}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", + "Sampled Architecture:\n", + " - hidden_sizes: [128, 128]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.846186265\n", + " - momentum coefficient: 0.514267889\n", + " - L2 regularization: 0.164638912\n", "Optimization Finished!\n", + " - test accuracy: 0.097999997\n", + "\n", "RUN: 4 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [128, 128], 'l2_lambda': 0.0066110195159220803}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", + "Sampled Architecture:\n", + " - hidden_sizes: [128, 128]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.000230592\n", + " - momentum coefficient: 0.697521348\n", + " - L2 regularization: 0.464058208\n", "Optimization Finished!\n", + " - test accuracy: 0.113499999\n", + "\n", "RUN: 5 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [256], 'l2_lambda': 0.00064575036694946794}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", + "Sampled Architecture:\n", + " - hidden_sizes: [128]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.042293806\n", + " - momentum coefficient: 0.731444531\n", + " - L2 regularization: 0.107269665\n", + "Validation loss stopped improving, stopping training early after 2 epochs!\n", "Optimization Finished!\n", + " - test accuracy: 0.827400029\n", + "\n", "RUN: 6 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [128, 128], 'l2_lambda': 0.013143246333050255}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", + "Sampled Architecture:\n", + " - hidden_sizes: [128]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.000010013\n", + " - momentum coefficient: 0.717539694\n", + " - L2 regularization: 0.000209384\n", "Optimization Finished!\n", + " - test accuracy: 0.436899990\n", + "\n", "RUN: 7 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [128, 128], 'l2_lambda': 0.00017646189551092479}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", + "Sampled Architecture:\n", + " - hidden_sizes: [256]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.003114277\n", + " - momentum coefficient: 0.599796714\n", + " - L2 regularization: 0.001161486\n", "Optimization Finished!\n", + " - test accuracy: 0.919900000\n", + "\n", "RUN: 8 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [256], 'l2_lambda': 0.00012706891665017044}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", - "Validation loss stopped improving, stopping training early after 9 epochs!\n", + "Sampled Architecture:\n", + " - hidden_sizes: [256, 256]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.001050811\n", + " - momentum coefficient: 0.699271767\n", + " - L2 regularization: 0.070461187\n", "Optimization Finished!\n", + " - test accuracy: 0.861800015\n", + "\n", "RUN: 9 out of 10:\n", - "Sampled Architecture: \n", - "{'hidden_sizes': [256], 'l2_lambda': 0.0029062557341502037}\n", - "Hyper-parameters:\n", - "{'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': }\n", - "Optimization Finished!\n" + "Sampled Architecture:\n", + " - hidden_sizes: [256, 128]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.164553372\n", + " - momentum coefficient: 0.729909968\n", + " - L2 regularization: 0.109098766\n", + "Validation loss stopped improving, stopping training early after 2 epochs!\n", + "Optimization Finished!\n", + " - test accuracy: 0.102799997\n", + "\n", + "RUN: 10 out of 10:\n", + "Sampled Architecture:\n", + " - hidden_sizes: [128, 128]\n", + "Sampled Hyperparameters:\n", + " - learning rate: 0.000003595\n", + " - momentum coefficient: 0.823051715\n", + " - L2 regularization: 0.079526895\n", + "Optimization Finished!\n", + " - test accuracy: 0.709200025\n", + "\n" ] } ], "source": [ - "results = []\n", + "hyperparameters = {'learning_rate': [], 'momentum_coef': [], 'l2_lambda': []}\n", + "architecture = []\n", + "accuracy = []\n", "\n", "# Perform a random search over hyper-parameter space this many times.\n", "NUM_EXPERIMENTS = 10\n", @@ -2194,24 +2259,31 @@ " # Sample the model and hyperparams we are using.\n", " model_params, training_params = sample_model_architecture_and_hyperparams()\n", " \n", - " print \"RUN: %d out of %d:\" % (i, NUM_EXPERIMENTS)\n", - " print \"Sampled Architecture: \\n\", model_params\n", - " print \"Hyper-parameters:\\n\", training_params\n", + " print \"RUN: %d out of %d:\" % (i+1, NUM_EXPERIMENTS)\n", + " print \"Sampled Architecture:\"\n", + " print \" - hidden_sizes: {}\".format(model_params['hidden_sizes'])\n", + " print \"Sampled Hyperparameters:\"\n", + " print \" - learning rate: %.9f\" % training_params['optimizer_fn']._learning_rate\n", + " print \" - momentum coefficient: %.9f\" % training_params['optimizer_fn']._momentum\n", + " print \" - L2 regularization: %.9f\" % model_params['l2_lambda'] \n", " \n", " # Build, train, evaluate\n", " model, performance = build_train_eval_and_plot(\n", " model_params, training_params, verbose=False)\n", + " print \" - test accuracy: %.9f\" % performance['test_acc']\n", + " print \"\"\n", " \n", " # Save results\n", - " results.append((performance['test_acc'], model_params, training_params))\n", - " \n", - "# Display (best?) results/variance/etc:\n", - "results.sort(key=lambda x : x[0], reverse=True)" + " accuracy.append(performance['test_acc'])\n", + " architecture.append(str(model_params['hidden_sizes']))\n", + " hyperparameters['learning_rate'].append(training_params['optimizer_fn']._learning_rate)\n", + " hyperparameters['momentum_coef'].append(training_params['optimizer_fn']._momentum)\n", + " hyperparameters['l2_lambda'].append(model_params['l2_lambda'])" ] }, { "cell_type": "code", - "execution_count": 0, + "execution_count": 23, "metadata": { "colab": { "autoexec": { @@ -2243,22 +2315,64 @@ "name": "stdout", "output_type": "stream", "text": [ - "(0.95090008, {'hidden_sizes': [128, 128], 'l2_lambda': 0.0066110195159220803}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.94180018, {'hidden_sizes': [256], 'l2_lambda': 0.00064575036694946794}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.92350012, {'hidden_sizes': [128, 128], 'l2_lambda': 0.013143246333050255}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.8925001, {'hidden_sizes': [256], 'l2_lambda': 0.034917746813186976}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.86520004, {'hidden_sizes': [128, 128], 'l2_lambda': 0.0011477153620692811}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.71679997, {'hidden_sizes': [256], 'l2_lambda': 0.0029062557341502037}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.69389999, {'hidden_sizes': [256], 'l2_lambda': 0.017639122106750327}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.28809997, {'hidden_sizes': [256], 'l2_lambda': 0.00071915651503389648}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.20929998, {'hidden_sizes': [256], 'l2_lambda': 0.00012706891665017044}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n", - "(0.1135, {'hidden_sizes': [128, 128], 'l2_lambda': 0.00017646189551092479}, {'stop_early': True, 'report_every': 1, 'eval_every': 1, 'num_epochs': 20, 'optimizer_fn': })\n" + "Best model hyperparamters:\n", + " - architecture: [256]\n", + " - learning rate: 0.003114277\n", + " - momentum coefficient: 0.599796714\n", + " - L2 regularization: 0.001161486\n", + "Test accuracy: 0.919900000\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Variance of test accuracies: 0.1094\n" ] } ], "source": [ - "for r in results:\n", - " print r # Tuples of (test_accuracy, model_hyperparameters, training_hyperparameters)" + "# find best model\n", + "index_best = np.argmax(accuracy)\n", + "\n", + "# print best model parameters\n", + "print \"Best model hyperparamters:\"\n", + "print \" - architecture: {}\".format(architecture[index_best])\n", + "print \" - learning rate: %.9f\" % hyperparameters['learning_rate'][index_best]\n", + "print \" - momentum coefficient: %.9f\" % hyperparameters['momentum_coef'][index_best]\n", + "print \" - L2 regularization: %.9f\" % hyperparameters['l2_lambda'][index_best]\n", + "print \"Test accuracy: %.9f\" % accuracy[index_best]\n", + "\n", + "# plot accuracy for every architecture\n", + "f, ax = plt.subplots(4, sharex=True)\n", + "ax[3].set_xticks(np.arange(0, len(architecture), 1))\n", + "ax[3].set_xticklabels(architecture)\n", + "ax[3].set_xlabel('Architecture')\n", + "ax[3].plot(accuracy)\n", + "ax[3].axvline(x=index_best, ls='--', c='orange', label='Best model')\n", + "ax[3].set_ylabel('Test accuracy')\n", + "\n", + "# plot hyperparameter values\n", + "for i, (key, value) in enumerate(hyperparameters.iteritems(), 0):\n", + " ax[i].plot(value)\n", + " ax[i].axvline(x=index_best, ls='--', c='orange', label='Best model')\n", + " ax[i].set_ylabel(key)\n", + "plt.legend()\n", + "plt.show()\n", + "\n", + "\n", + "# print variance of test accuracies\n", + "print \"Variance of test accuracies: %.4f\" % np.var(accuracy)" ] }, {