Created using Colaboratory

This commit is contained in:
udlbook
2023-07-27 11:49:49 -04:00
parent 513fb0eba6
commit b6bc481fec

View File

@@ -4,7 +4,7 @@
"metadata": {
"colab": {
"provenance": [],
"authorship_tag": "ABX9TyNx6kL7nMnRBAp48GoXD/0c",
"authorship_tag": "ABX9TyN/trn2b+dsX0Qcg4ZzNZEf",
"include_colab_link": true
},
"kernelspec": {
@@ -457,7 +457,7 @@
{
"cell_type": "code",
"source": [
"def gradient_descent_step_fixed_learning_rate(phi, data, model, alpha):\n",
"def gradient_descent_step_fixed_learning_rate(phi, data, alpha):\n",
" # TODO -- fill in this routine so that we take a fixed size step of size alpha without using line search\n",
"\n",
" return phi"
@@ -483,7 +483,7 @@
"\n",
"for c_step in range (n_steps):\n",
" # Do gradient descent step\n",
" phi_all[:,c_step+1:c_step+2] = gradient_descent_step_fixed_learning_rate(phi_all[:,c_step:c_step+1],data, model,alpha =0.2)\n",
" phi_all[:,c_step+1:c_step+2] = gradient_descent_step_fixed_learning_rate(phi_all[:,c_step:c_step+1],data, alpha =0.2)\n",
" # Measure loss and draw model every 4th step\n",
" if c_step % 4 == 0:\n",
" loss = compute_loss(data[0,:], data[1,:], model, phi_all[:,c_step+1:c_step+2])\n",
@@ -513,7 +513,7 @@
{
"cell_type": "code",
"source": [
"def stochastic_gradient_descent_step(phi, data, model, alpha, batch_size):\n",
"def stochastic_gradient_descent_step(phi, data, alpha, batch_size):\n",
" # TODO -- fill in this routine so that we take a fixed size step of size alpha but only using a subset (batch) of the data\n",
" # at each step\n",
" # You can use the function np.random.permutation to generate a random permutation of the n_data = data.shape[1] indices\n",
@@ -546,7 +546,7 @@
"\n",
"for c_step in range (n_steps):\n",
" # Do gradient descent step\n",
" phi_all[:,c_step+1:c_step+2] = stochastic_gradient_descent_step(phi_all[:,c_step:c_step+1],data, model,alpha =0.8, batch_size=5)\n",
" phi_all[:,c_step+1:c_step+2] = stochastic_gradient_descent_step(phi_all[:,c_step:c_step+1],data, alpha =0.8, batch_size=5)\n",
" # Measure loss and draw model every 4th step\n",
" if c_step % 8 == 0:\n",
" loss = compute_loss(data[0,:], data[1,:], model, phi_all[:,c_step+1:c_step+2])\n",