{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "

Neural Networks Demystified

\n", "

Part 6: Training

\n", "\n", "\n", "

@stephencwelch

" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/jpeg": "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\n", "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.display import YouTubeVideo\n", "YouTubeVideo('9KM9Td6RVgQ')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So far we’ve built a neural network in python, computed a cost function to let us know how well our network is performing, computed the gradient of our cost function so we can train our network, and last time we numerically validated our gradient computations. After all that work, it’s finally time to train our neural network. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Back in part 3, we decided to train our network using gradient descent. While gradient descent is conceptually pretty straight forward, its implementation can actually be quite complex- especially as we increase the size and number of layers in our neural network. If we just march downhill with consistent step sizes, we may get stuck in a local minimum or flat spot, we may move too slowly and never reach our minimum, or we may move to quickly and bounce out of our minimum. And remember, all this must happen in high-dimensional space, making things significantly more complex. Gradient descent is a wonderfully clever method, but provides no guarantees that we will converge to a good solution, that we will converge to a solution in a certain amount of time, or that we will converge to a solution at all. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The good and bad news here is that this problem is not unique to Neural Networks - there’s an entire field dedicated to finding the best combination of inputs to minimize the output of an objective function: the field of Mathematical Optimization. The bad news is that optimization can be a bit overwhelming; there are many different techniques we could apply to our problem. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Part of what makes the optimization challenging is the broad range of approaches covered - from very rigorous, theoretical methods to hands-on, more heuristics-driven methods. Yann Lecun’s 1998 publication Efficient BackProp presents an excellent review of various optimization techniques as applied to neural networks. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here, we’re going to use a more sophisticated variant on gradient descent, the popular Broyden-Fletcher-Goldfarb-Shanno numerical optimization algorithm. The BFGS algorithm overcomes some of the limitations of plain gradient descent by estimating the second derivative, or curvature, of the cost function surface, and using this information to make more informed movements downhill. BFGS will allow us to find solutions more often and more quickly. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We’ll use the BFGS implementation built into the scipy optimize package, specifically within the minimize function. To use BFGS, the minimize function requires us to pass in an objective function that accepts a vector of parameters, input data, and output data, and returns both the cost and gradients. Our neural network implementation doesn’t quite follow these semantics, so we’ll use a wrapper function to give it this behavior. We’ll also pass in initial parameters, set the jacobian parameter to true since we’re computing the gradient within our neural network class, set the method to BFGS, pass in our input and output data, and some options. Finally, we’ll implement a callback function that allows us to track the cost function value as we train the network. Once the network is trained, we’ll replace the original, random parameters, with the trained parameters. " ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "source": [ "%pylab inline\n", "#Import code from previous videos:\n", "from partFive import *" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "from scipy import optimize" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "class trainer(object):\n", " def __init__(self, N):\n", " #Make Local reference to network:\n", " self.N = N\n", " \n", " def callbackF(self, params):\n", " self.N.setParams(params)\n", " self.J.append(self.N.costFunction(self.X, self.y)) \n", " \n", " def costFunctionWrapper(self, params, X, y):\n", " self.N.setParams(params)\n", " cost = self.N.costFunction(X, y)\n", " grad = self.N.computeGradients(X,y)\n", " \n", " return cost, grad\n", " \n", " def train(self, X, y):\n", " #Make an internal variable for the callback function:\n", " self.X = X\n", " self.y = y\n", "\n", " #Make empty list to store costs:\n", " self.J = []\n", " \n", " params0 = self.N.getParams()\n", "\n", " options = {'maxiter': 200, 'disp' : True}\n", " _res = optimize.minimize(self.costFunctionWrapper, params0, jac=True, method='BFGS', \\\n", " args=(X, y), options=options, callback=self.callbackF)\n", "\n", " self.N.setParams(_res.x)\n", " self.optimizationResults = _res\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If we plot the cost against the number of iterations through training, we should see a nice, monotonically decreasing function. Further, we see that the number of function evaluations required to find the solution is less than 100, and far less than the 10^27 function evaluation that would have been required to find a solution by brute force, as shown in part 3. Finally, we can evaluate our gradient at our solution and see very small values – which make sense, as our minimum should be quite flat. " ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "NN = Neural_Network()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "T = trainer(NN)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Optimization terminated successfully.\n", " Current function value: 0.000000\n", " Iterations: 57\n", " Function evaluations: 63\n", " Gradient evaluations: 63\n" ] } ], "source": [ "T.train(X,y)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Cost')" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot(T.J)\n", "grid(1)\n", "xlabel('Iterations')\n", "ylabel('Cost')" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([[-1.48685803e-06, 1.32397112e-06, 2.19415666e-06],\n", " [-6.45518174e-06, 4.95338396e-06, 4.54881831e-06]]),\n", " array([[4.41359553e-06],\n", " [5.04515180e-06],\n", " [6.67805482e-06]]))" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "NN.costFunctionPrime(X,y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The more exciting thing here is that we finally have a trained network that can predict your score on a test based on how many hours you sleep and how many hours you study the night before. If we run our training data through our forward method now, we see that our predictions are excellent. We can go one step further and explore the input space for various combinations of hours sleeping and hours studying, and maybe we can find an optimal combination of the two for your next test. " ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.75004377],\n", " [0.82007985],\n", " [0.92988378]])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "NN.forward(X)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.75],\n", " [0.82],\n", " [0.93]])" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "#Test network for various combinations of sleep/study:\n", "hoursSleep = linspace(0, 10, 100)\n", "hoursStudy = linspace(0, 5, 100)\n", "\n", "#Normalize data (same way training data way normalized)\n", "hoursSleepNorm = hoursSleep/10.\n", "hoursStudyNorm = hoursStudy/5.\n", "\n", "#Create 2-d versions of input for plotting\n", "a, b = meshgrid(hoursSleepNorm, hoursStudyNorm)\n", "\n", "#Join into a single input matrix:\n", "allInputs = np.zeros((a.size, 2))\n", "allInputs[:, 0] = a.ravel()\n", "allInputs[:, 1] = b.ravel()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "allOutputs = NN.forward(allInputs)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Hours Study')" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#Contour Plot:\n", "yy = np.dot(hoursStudy.reshape(100,1), np.ones((1,100)))\n", "xx = np.dot(hoursSleep.reshape(100,1), np.ones((1,100))).T\n", "\n", "CS = contour(xx,yy,100*allOutputs.reshape(100, 100))\n", "clabel(CS, inline=1, fontsize=10)\n", "xlabel('Hours Sleep')\n", "ylabel('Hours Study')" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0, 'Test Score')" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#3D plot:\n", "\n", "##Uncomment to plot out-of-notebook (you'll be able to rotate)\n", "#%matplotlib qt\n", "\n", "from mpl_toolkits.mplot3d import Axes3D\n", "fig = plt.figure()\n", "ax = fig.gca(projection='3d')\n", "\n", "surf = ax.plot_surface(xx, yy, 100*allOutputs.reshape(100, 100), \\\n", " cmap=cm.jet)\n", "\n", "ax.set_xlabel('Hours Sleep')\n", "ax.set_ylabel('Hours Study')\n", "ax.set_zlabel('Test Score')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Our results look pretty reasonable, and we see that for our model, sleep actually has a bigger impact on your grade than studying – something I wish I had realized when I was in school. So we’re done, right? \n", "\tNope. \n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We’ve made possibly the most dangerous and tempting error in machine learning – overfitting. Although our network is performing incredibly well (maybe too well) on our training data – that doesn’t mean that our model is a good fit for the real world, and that’s what we’ll work on next time. " ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "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.7.3" } }, "nbformat": 4, "nbformat_minor": 1 }