diff --git a/doc/pub/week39/ipynb/week39.ipynb b/doc/pub/week39/ipynb/week39.ipynb index ab8fd9e22..f3b8506b5 100644 --- a/doc/pub/week39/ipynb/week39.ipynb +++ b/doc/pub/week39/ipynb/week39.ipynb @@ -782,9 +782,7 @@ { "cell_type": "code", "execution_count": 1, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", @@ -821,9 +819,7 @@ { "cell_type": "code", "execution_count": 2, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "pt.axis(\"equal\")\n", @@ -841,9 +837,7 @@ { "cell_type": "code", "execution_count": 3, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "x = guesses[-1]\n", @@ -860,9 +854,7 @@ { "cell_type": "code", "execution_count": 4, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "def f1d(alpha):\n", @@ -884,9 +876,7 @@ { "cell_type": "code", "execution_count": 5, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "pt.axis(\"equal\")\n", @@ -1262,9 +1252,7 @@ { "cell_type": "code", "execution_count": 6, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "x = 2*np.random.rand(m,1)\n", @@ -1430,11 +1418,33 @@ }, { "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [], + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[0.32017409 4.33901633]\n", + "[[4.35923237]\n", + " [2.73841882]]\n", + "[[4.35923237]\n", + " [2.73841882]]\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "\n", "# Importing various packages\n", @@ -1494,9 +1504,7 @@ { "cell_type": "code", "execution_count": 8, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "# Importing various packages\n", @@ -1579,11 +1587,32 @@ }, { "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [], + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[4.16247703]\n", + " [2.89165934]]\n", + "[[4.15521623]\n", + " [2.89490741]]\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "from random import random, seed\n", "import numpy as np\n", @@ -1601,6 +1630,7 @@ "X = np.c_[np.ones((n,1)), x]\n", "XT_X = X.T @ X\n", "\n", + "\n", "#Ridge parameter lambda\n", "lmbda = 0.001\n", "Id = lmbda* np.eye(XT_X.shape[0])\n", @@ -1610,8 +1640,10 @@ "# Start plain gradient descent\n", "beta = np.random.randn(2,1)\n", "\n", + "\n", + "\n", "eta = 0.1\n", - "Niterations = 100\n", + "Niterations = 1000\n", "\n", "for iter in range(Niterations):\n", " gradients = 2.0/n*X.T @ (X @ (beta)-y)+2*lmbda*beta\n", @@ -1763,9 +1795,7 @@ { "cell_type": "code", "execution_count": 10, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import numpy as np \n", @@ -1827,9 +1857,7 @@ { "cell_type": "code", "execution_count": 11, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import numpy as np \n", @@ -1868,9 +1896,7 @@ { "cell_type": "code", "execution_count": 12, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "# Importing various packages\n", @@ -2423,9 +2449,7 @@ { "cell_type": "code", "execution_count": 13, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2481,9 +2505,7 @@ { "cell_type": "code", "execution_count": 14, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2519,9 +2541,7 @@ { "cell_type": "code", "execution_count": 15, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2572,9 +2592,7 @@ { "cell_type": "code", "execution_count": 16, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2614,9 +2632,7 @@ { "cell_type": "code", "execution_count": 17, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2648,9 +2664,7 @@ { "cell_type": "code", "execution_count": 18, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2710,9 +2724,7 @@ { "cell_type": "code", "execution_count": 19, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2736,9 +2748,7 @@ { "cell_type": "code", "execution_count": 20, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2785,9 +2795,7 @@ { "cell_type": "code", "execution_count": 21, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2815,9 +2823,7 @@ { "cell_type": "code", "execution_count": 22, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2845,9 +2851,7 @@ { "cell_type": "code", "execution_count": 23, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "import autograd.numpy as np\n", @@ -2877,9 +2881,7 @@ { "cell_type": "code", "execution_count": 24, - "metadata": { - "collapsed": false - }, + "metadata": {}, "outputs": [], "source": [ "a += b\n", @@ -2889,7 +2891,25 @@ ] } ], - "metadata": {}, + "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.6.8" + } + }, "nbformat": 4, "nbformat_minor": 4 }