From 3f92ffbd07b74ae0a8f3cf2778257040e59e1989 Mon Sep 17 00:00:00 2001 From: Morten Hjorth-Jensen Date: Tue, 14 Oct 2025 06:53:23 +0200 Subject: [PATCH] udpate project 2 --- doc/LectureNotes/week42.ipynb | 652 +++++++++--------- .../2025/Project2/html/._Project2-bs000.html | 55 +- .../2025/Project2/html/Project2-bs.html | 55 +- doc/Projects/2025/Project2/html/Project2.html | 52 +- .../2025/Project2/ipynb/Project2.ipynb | 137 +++- .../Project2/ipynb/ipynb-Project2-src.tar.gz | Bin 193 -> 194 bytes doc/Projects/2025/Project2/pdf/Project2.p.tex | 74 +- doc/Projects/2025/Project2/pdf/Project2.tex | 74 +- .../Projects/2025/Project2/Project2.do.txt | 35 +- 9 files changed, 775 insertions(+), 359 deletions(-) diff --git a/doc/LectureNotes/week42.ipynb b/doc/LectureNotes/week42.ipynb index af01abbf4..45a126e79 100644 --- a/doc/LectureNotes/week42.ipynb +++ b/doc/LectureNotes/week42.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "7dcf8613", + "id": "d231eeee", "metadata": { "editable": true }, @@ -14,7 +14,7 @@ }, { "cell_type": "markdown", - "id": "98019924", + "id": "5e782cb1", "metadata": { "editable": true }, @@ -27,7 +27,7 @@ }, { "cell_type": "markdown", - "id": "ab0e660a", + "id": "53309290", "metadata": { "editable": true }, @@ -40,32 +40,34 @@ }, { "cell_type": "markdown", - "id": "bcea021f", + "id": "71367514", "metadata": { "editable": true }, "source": [ "## Readings and videos\n", "1. These lecture notes\n", - "\n", - "\n", "\n", - "2. For a more in depth discussion on neural networks we recommend Goodfellow et al chapters 6 and 7. For the optimization part, see chapter 8. \n", + "2. Video of lecture at \n", "\n", - "3. Neural Networks demystified at \n", + "3. Whiteboard notes at \n", "\n", - "4. Building Neural Networks from scratch at \n", + "4. For a more in depth discussion on neural networks we recommend Goodfellow et al chapters 6 and 7. For the optimization part, see chapter 8. \n", "\n", - "5. Video on Neural Networks at \n", + "5. Neural Networks demystified at \n", "\n", - "6. Video on the back propagation algorithm at \n", + "6. Building Neural Networks from scratch at \n", + "\n", + "7. Video on Neural Networks at \n", + "\n", + "8. Video on the back propagation algorithm at \n", "\n", "I also recommend Michael Nielsen's intuitive approach to the neural networks and the universal approximation theorem, see the slides at ." ] }, { "cell_type": "markdown", - "id": "fd77cd6b", + "id": "c7be87be", "metadata": { "editable": true }, @@ -78,7 +80,7 @@ }, { "cell_type": "markdown", - "id": "7d93059a", + "id": "8e0567a2", "metadata": { "editable": true }, @@ -97,7 +99,7 @@ }, { "cell_type": "markdown", - "id": "5156bf60", + "id": "549dcc05", "metadata": { "editable": true }, @@ -113,7 +115,7 @@ }, { "cell_type": "markdown", - "id": "4f5d5b27", + "id": "21203bae", "metadata": { "editable": true }, @@ -124,7 +126,7 @@ }, { "cell_type": "markdown", - "id": "0a490014", + "id": "1c102a30", "metadata": { "editable": true }, @@ -138,7 +140,7 @@ }, { "cell_type": "markdown", - "id": "9fa74383", + "id": "53f11afe", "metadata": { "editable": true }, @@ -153,7 +155,7 @@ }, { "cell_type": "markdown", - "id": "417ce076", + "id": "afa8c42a", "metadata": { "editable": true }, @@ -165,7 +167,7 @@ }, { "cell_type": "markdown", - "id": "07ed6afb", + "id": "cb5c959f", "metadata": { "editable": true }, @@ -179,7 +181,7 @@ }, { "cell_type": "markdown", - "id": "3b926536", + "id": "0083ae15", "metadata": { "editable": true }, @@ -191,7 +193,7 @@ }, { "cell_type": "markdown", - "id": "0e1bd556", + "id": "f4931203", "metadata": { "editable": true }, @@ -207,7 +209,7 @@ }, { "cell_type": "markdown", - "id": "edebc935", + "id": "d3a3754d", "metadata": { "editable": true }, @@ -223,7 +225,7 @@ }, { "cell_type": "markdown", - "id": "3e2794ac", + "id": "bcd5dbab", "metadata": { "editable": true }, @@ -235,7 +237,7 @@ }, { "cell_type": "markdown", - "id": "54f91430", + "id": "2cbc30f1", "metadata": { "editable": true }, @@ -245,7 +247,7 @@ }, { "cell_type": "markdown", - "id": "f1e0a166", + "id": "1a1d803d", "metadata": { "editable": true }, @@ -257,7 +259,7 @@ }, { "cell_type": "markdown", - "id": "ad62ed90", + "id": "776735c7", "metadata": { "editable": true }, @@ -267,7 +269,7 @@ }, { "cell_type": "markdown", - "id": "57dac362", + "id": "c1a2e5af", "metadata": { "editable": true }, @@ -279,7 +281,7 @@ }, { "cell_type": "markdown", - "id": "a4dc4050", + "id": "9e603df9", "metadata": { "editable": true }, @@ -289,7 +291,7 @@ }, { "cell_type": "markdown", - "id": "b223c83d", + "id": "533212cd", "metadata": { "editable": true }, @@ -301,7 +303,7 @@ }, { "cell_type": "markdown", - "id": "a1c9b5e7", + "id": "09d91067", "metadata": { "editable": true }, @@ -317,7 +319,7 @@ }, { "cell_type": "markdown", - "id": "9c3b03c0", + "id": "f767afe7", "metadata": { "editable": true }, @@ -329,7 +331,7 @@ }, { "cell_type": "markdown", - "id": "186485f2", + "id": "f38ded54", "metadata": { "editable": true }, @@ -341,7 +343,7 @@ }, { "cell_type": "markdown", - "id": "c2f1b30b", + "id": "f3f03bc3", "metadata": { "editable": true }, @@ -351,7 +353,7 @@ }, { "cell_type": "markdown", - "id": "13142fad", + "id": "9062730e", "metadata": { "editable": true }, @@ -363,7 +365,7 @@ }, { "cell_type": "markdown", - "id": "b441f95a", + "id": "75bbc32c", "metadata": { "editable": true }, @@ -373,7 +375,7 @@ }, { "cell_type": "markdown", - "id": "46e57fd2", + "id": "fcf02dbf", "metadata": { "editable": true }, @@ -389,7 +391,7 @@ }, { "cell_type": "markdown", - "id": "50158555", + "id": "aa97678f", "metadata": { "editable": true }, @@ -401,7 +403,7 @@ }, { "cell_type": "markdown", - "id": "4174ea9e", + "id": "98f68e27", "metadata": { "editable": true }, @@ -413,7 +415,7 @@ }, { "cell_type": "markdown", - "id": "f7a29d74", + "id": "c4528178", "metadata": { "editable": true }, @@ -425,7 +427,7 @@ }, { "cell_type": "markdown", - "id": "cb1a387b", + "id": "d6304298", "metadata": { "editable": true }, @@ -437,7 +439,7 @@ }, { "cell_type": "markdown", - "id": "125bcb29", + "id": "dfc47ba6", "metadata": { "editable": true }, @@ -449,7 +451,7 @@ }, { "cell_type": "markdown", - "id": "76272ae9", + "id": "8834c3dc", "metadata": { "editable": true }, @@ -459,7 +461,7 @@ }, { "cell_type": "markdown", - "id": "7e0d1157", + "id": "40956770", "metadata": { "editable": true }, @@ -475,7 +477,7 @@ }, { "cell_type": "markdown", - "id": "53dfc3bd", + "id": "69e7fdcf", "metadata": { "editable": true }, @@ -487,7 +489,7 @@ }, { "cell_type": "markdown", - "id": "126420bb", + "id": "726d4c90", "metadata": { "editable": true }, @@ -499,7 +501,7 @@ }, { "cell_type": "markdown", - "id": "2114b4ba", + "id": "0ee83d1c", "metadata": { "editable": true }, @@ -509,7 +511,7 @@ }, { "cell_type": "markdown", - "id": "7d3549bb", + "id": "f5b3b5a5", "metadata": { "editable": true }, @@ -521,7 +523,7 @@ }, { "cell_type": "markdown", - "id": "80265b39", + "id": "b2746792", "metadata": { "editable": true }, @@ -535,7 +537,7 @@ }, { "cell_type": "markdown", - "id": "df2f78ac", + "id": "76e2e41a", "metadata": { "editable": true }, @@ -553,7 +555,7 @@ { "cell_type": "code", "execution_count": 1, - "id": "0ec652bf", + "id": "1c4719c1", "metadata": { "collapsed": false, "editable": true @@ -626,7 +628,7 @@ }, { "cell_type": "markdown", - "id": "c382e2f2", + "id": "debaaadc", "metadata": { "editable": true }, @@ -636,7 +638,7 @@ }, { "cell_type": "markdown", - "id": "1bec2330", + "id": "7d576f19", "metadata": { "editable": true }, @@ -653,7 +655,7 @@ }, { "cell_type": "markdown", - "id": "165fb3f3", + "id": "582b3b43", "metadata": { "editable": true }, @@ -665,7 +667,7 @@ }, { "cell_type": "markdown", - "id": "7ae8de36", + "id": "c8eace47", "metadata": { "editable": true }, @@ -675,7 +677,7 @@ }, { "cell_type": "markdown", - "id": "9a2729ab", + "id": "81ec9945", "metadata": { "editable": true }, @@ -687,7 +689,7 @@ }, { "cell_type": "markdown", - "id": "372f0fac", + "id": "c35e1f69", "metadata": { "editable": true }, @@ -703,7 +705,7 @@ }, { "cell_type": "markdown", - "id": "d4f432cc", + "id": "05b8eea9", "metadata": { "editable": true }, @@ -715,7 +717,7 @@ }, { "cell_type": "markdown", - "id": "064af49b", + "id": "7ef9cb55", "metadata": { "editable": true }, @@ -727,7 +729,7 @@ }, { "cell_type": "markdown", - "id": "91115cc6", + "id": "1eb5c5ac", "metadata": { "editable": true }, @@ -738,7 +740,7 @@ }, { "cell_type": "markdown", - "id": "c38d1990", + "id": "00492358", "metadata": { "editable": true }, @@ -750,7 +752,7 @@ }, { "cell_type": "markdown", - "id": "43de152e", + "id": "45cca5aa", "metadata": { "editable": true }, @@ -763,7 +765,7 @@ }, { "cell_type": "markdown", - "id": "f935912b", + "id": "22cfb40b", "metadata": { "editable": true }, @@ -775,7 +777,7 @@ }, { "cell_type": "markdown", - "id": "15b380de", + "id": "45b30d06", "metadata": { "editable": true }, @@ -785,7 +787,7 @@ }, { "cell_type": "markdown", - "id": "302da250", + "id": "ebd6a7a5", "metadata": { "editable": true }, @@ -797,7 +799,7 @@ }, { "cell_type": "markdown", - "id": "3faf23cf", + "id": "659dd686", "metadata": { "editable": true }, @@ -809,7 +811,7 @@ }, { "cell_type": "markdown", - "id": "4fe83376", + "id": "34a1d4ca", "metadata": { "editable": true }, @@ -821,7 +823,7 @@ }, { "cell_type": "markdown", - "id": "9bee26b1", + "id": "34471712", "metadata": { "editable": true }, @@ -831,7 +833,7 @@ }, { "cell_type": "markdown", - "id": "9affa08f", + "id": "0b3a74fd", "metadata": { "editable": true }, @@ -843,7 +845,7 @@ }, { "cell_type": "markdown", - "id": "1866378d", + "id": "1a5bdab3", "metadata": { "editable": true }, @@ -859,7 +861,7 @@ }, { "cell_type": "markdown", - "id": "e6d27f9d", + "id": "37f19e78", "metadata": { "editable": true }, @@ -871,7 +873,7 @@ }, { "cell_type": "markdown", - "id": "b33dac74", + "id": "5505aab8", "metadata": { "editable": true }, @@ -881,7 +883,7 @@ }, { "cell_type": "markdown", - "id": "27c367b4", + "id": "d55d045c", "metadata": { "editable": true }, @@ -893,7 +895,7 @@ }, { "cell_type": "markdown", - "id": "18898e14", + "id": "04f101e7", "metadata": { "editable": true }, @@ -903,7 +905,7 @@ }, { "cell_type": "markdown", - "id": "31fcc7f9", + "id": "bfab2e91", "metadata": { "editable": true }, @@ -915,7 +917,7 @@ }, { "cell_type": "markdown", - "id": "76219fdd", + "id": "77f35b7e", "metadata": { "editable": true }, @@ -927,7 +929,7 @@ }, { "cell_type": "markdown", - "id": "2cbccf94", + "id": "8cf4a606", "metadata": { "editable": true }, @@ -940,7 +942,7 @@ }, { "cell_type": "markdown", - "id": "ccdb071b", + "id": "86951351", "metadata": { "editable": true }, @@ -950,7 +952,7 @@ }, { "cell_type": "markdown", - "id": "55e4bed1", + "id": "73414e65", "metadata": { "editable": true }, @@ -962,7 +964,7 @@ }, { "cell_type": "markdown", - "id": "c00fd151", + "id": "8f0aaa15", "metadata": { "editable": true }, @@ -972,7 +974,7 @@ }, { "cell_type": "markdown", - "id": "d49ae60d", + "id": "730c5415", "metadata": { "editable": true }, @@ -984,7 +986,7 @@ }, { "cell_type": "markdown", - "id": "920db2dd", + "id": "1afcb5a1", "metadata": { "editable": true }, @@ -995,7 +997,7 @@ }, { "cell_type": "markdown", - "id": "62806f12", + "id": "7f30cb44", "metadata": { "editable": true }, @@ -1007,7 +1009,7 @@ }, { "cell_type": "markdown", - "id": "f1d3e7b6", + "id": "14c045ce", "metadata": { "editable": true }, @@ -1017,7 +1019,7 @@ }, { "cell_type": "markdown", - "id": "51fd0b81", + "id": "0c1a2c68", "metadata": { "editable": true }, @@ -1029,7 +1031,7 @@ }, { "cell_type": "markdown", - "id": "ba9dd4ad", + "id": "a3385222", "metadata": { "editable": true }, @@ -1039,7 +1041,7 @@ }, { "cell_type": "markdown", - "id": "91137440", + "id": "18ee3804", "metadata": { "editable": true }, @@ -1051,7 +1053,7 @@ }, { "cell_type": "markdown", - "id": "8e2ecb8c", + "id": "ad741d56", "metadata": { "editable": true }, @@ -1063,7 +1065,7 @@ }, { "cell_type": "markdown", - "id": "8d91daf9", + "id": "65870a70", "metadata": { "editable": true }, @@ -1075,7 +1077,7 @@ }, { "cell_type": "markdown", - "id": "8450f964", + "id": "f7807fdc", "metadata": { "editable": true }, @@ -1085,7 +1087,7 @@ }, { "cell_type": "markdown", - "id": "1e662a52", + "id": "9af4a759", "metadata": { "editable": true }, @@ -1097,7 +1099,7 @@ }, { "cell_type": "markdown", - "id": "e90d34b5", + "id": "dc548cb7", "metadata": { "editable": true }, @@ -1107,7 +1109,7 @@ }, { "cell_type": "markdown", - "id": "2d4b194d", + "id": "83b75e94", "metadata": { "editable": true }, @@ -1119,7 +1121,7 @@ }, { "cell_type": "markdown", - "id": "8990fe0b", + "id": "1c2be559", "metadata": { "editable": true }, @@ -1131,7 +1133,7 @@ }, { "cell_type": "markdown", - "id": "37e9e142", + "id": "18b85f86", "metadata": { "editable": true }, @@ -1143,7 +1145,7 @@ }, { "cell_type": "markdown", - "id": "5f66c64a", + "id": "63e39eb4", "metadata": { "editable": true }, @@ -1153,7 +1155,7 @@ }, { "cell_type": "markdown", - "id": "03e836ad", + "id": "a55371c1", "metadata": { "editable": true }, @@ -1165,7 +1167,7 @@ }, { "cell_type": "markdown", - "id": "1ea8a6ff", + "id": "fa31a9b3", "metadata": { "editable": true }, @@ -1175,7 +1177,7 @@ }, { "cell_type": "markdown", - "id": "84537cc9", + "id": "580df891", "metadata": { "editable": true }, @@ -1188,7 +1190,7 @@ }, { "cell_type": "markdown", - "id": "2bad6141", + "id": "c10bf2ce", "metadata": { "editable": true }, @@ -1200,7 +1202,7 @@ }, { "cell_type": "markdown", - "id": "5150b413", + "id": "0bae11f8", "metadata": { "editable": true }, @@ -1210,7 +1212,7 @@ }, { "cell_type": "markdown", - "id": "4166af55", + "id": "ed4a8b93", "metadata": { "editable": true }, @@ -1222,7 +1224,7 @@ }, { "cell_type": "markdown", - "id": "e5101f70", + "id": "2d582987", "metadata": { "editable": true }, @@ -1232,7 +1234,7 @@ }, { "cell_type": "markdown", - "id": "0c662571", + "id": "5fa760a1", "metadata": { "editable": true }, @@ -1244,7 +1246,7 @@ }, { "cell_type": "markdown", - "id": "a7e1af99", + "id": "bc9de8bf", "metadata": { "editable": true }, @@ -1254,7 +1256,7 @@ }, { "cell_type": "markdown", - "id": "5a73623e", + "id": "f00e3ace", "metadata": { "editable": true }, @@ -1266,7 +1268,7 @@ }, { "cell_type": "markdown", - "id": "b1d5327b", + "id": "7ac96362", "metadata": { "editable": true }, @@ -1276,7 +1278,7 @@ }, { "cell_type": "markdown", - "id": "5cc5921c", + "id": "9c46f966", "metadata": { "editable": true }, @@ -1293,7 +1295,7 @@ }, { "cell_type": "markdown", - "id": "21633b14", + "id": "ea509b11", "metadata": { "editable": true }, @@ -1305,7 +1307,7 @@ }, { "cell_type": "markdown", - "id": "171782c4", + "id": "e08ff771", "metadata": { "editable": true }, @@ -1317,7 +1319,7 @@ }, { "cell_type": "markdown", - "id": "830e0cc3", + "id": "6f476983", "metadata": { "editable": true }, @@ -1333,7 +1335,7 @@ }, { "cell_type": "markdown", - "id": "3de97402", + "id": "0535d087", "metadata": { "editable": true }, @@ -1350,7 +1352,7 @@ }, { "cell_type": "markdown", - "id": "f4a20e55", + "id": "5e024ec1", "metadata": { "editable": true }, @@ -1362,7 +1364,7 @@ }, { "cell_type": "markdown", - "id": "e373e6cc", + "id": "239fb4c6", "metadata": { "editable": true }, @@ -1375,7 +1377,7 @@ }, { "cell_type": "markdown", - "id": "a9fa6a69", + "id": "7e4fa6c5", "metadata": { "editable": true }, @@ -1387,7 +1389,7 @@ }, { "cell_type": "markdown", - "id": "f1730e5a", + "id": "c47cc3c6", "metadata": { "editable": true }, @@ -1403,7 +1405,7 @@ }, { "cell_type": "markdown", - "id": "59d7d98a", + "id": "4eb89f11", "metadata": { "editable": true }, @@ -1415,7 +1417,7 @@ }, { "cell_type": "markdown", - "id": "5a3d0931", + "id": "92744a90", "metadata": { "editable": true }, @@ -1431,7 +1433,7 @@ }, { "cell_type": "markdown", - "id": "c56d749e", + "id": "35424d45", "metadata": { "editable": true }, @@ -1443,7 +1445,7 @@ }, { "cell_type": "markdown", - "id": "f3dd37e7", + "id": "b8502930", "metadata": { "editable": true }, @@ -1455,7 +1457,7 @@ }, { "cell_type": "markdown", - "id": "7654c47c", + "id": "81ad45a5", "metadata": { "editable": true }, @@ -1465,7 +1467,7 @@ }, { "cell_type": "markdown", - "id": "cb1aa2a9", + "id": "11bb8afb", "metadata": { "editable": true }, @@ -1477,7 +1479,7 @@ }, { "cell_type": "markdown", - "id": "11607454", + "id": "b53ec752", "metadata": { "editable": true }, @@ -1487,7 +1489,7 @@ }, { "cell_type": "markdown", - "id": "29a881cd", + "id": "b7519a84", "metadata": { "editable": true }, @@ -1499,7 +1501,7 @@ }, { "cell_type": "markdown", - "id": "1244c442", + "id": "c57689db", "metadata": { "editable": true }, @@ -1513,7 +1515,7 @@ }, { "cell_type": "markdown", - "id": "7d43f636", + "id": "a9f83b15", "metadata": { "editable": true }, @@ -1525,7 +1527,7 @@ }, { "cell_type": "markdown", - "id": "c23708ab", + "id": "067c2583", "metadata": { "editable": true }, @@ -1535,7 +1537,7 @@ }, { "cell_type": "markdown", - "id": "3a3d49b9", + "id": "43545710", "metadata": { "editable": true }, @@ -1547,7 +1549,7 @@ }, { "cell_type": "markdown", - "id": "31b8b489", + "id": "1eb33717", "metadata": { "editable": true }, @@ -1557,7 +1559,7 @@ }, { "cell_type": "markdown", - "id": "2cb11e87", + "id": "e09a8734", "metadata": { "editable": true }, @@ -1569,7 +1571,7 @@ }, { "cell_type": "markdown", - "id": "85b6783b", + "id": "3dc0f5a3", "metadata": { "editable": true }, @@ -1581,7 +1583,7 @@ }, { "cell_type": "markdown", - "id": "1d9102e8", + "id": "bb58784b", "metadata": { "editable": true }, @@ -1593,7 +1595,7 @@ }, { "cell_type": "markdown", - "id": "92547c80", + "id": "10aea094", "metadata": { "editable": true }, @@ -1603,7 +1605,7 @@ }, { "cell_type": "markdown", - "id": "e06d7f47", + "id": "b7cc2db8", "metadata": { "editable": true }, @@ -1615,7 +1617,7 @@ }, { "cell_type": "markdown", - "id": "a15b2c15", + "id": "6cce9a62", "metadata": { "editable": true }, @@ -1625,7 +1627,7 @@ }, { "cell_type": "markdown", - "id": "69a96bb6", + "id": "43e5a84b", "metadata": { "editable": true }, @@ -1637,7 +1639,7 @@ }, { "cell_type": "markdown", - "id": "6954d50b", + "id": "d5c607a7", "metadata": { "editable": true }, @@ -1655,7 +1657,7 @@ }, { "cell_type": "markdown", - "id": "a8d2b720", + "id": "a51b3b58", "metadata": { "editable": true }, @@ -1673,7 +1675,7 @@ }, { "cell_type": "markdown", - "id": "b40feaea", + "id": "4cd9d058", "metadata": { "editable": true }, @@ -1685,7 +1687,7 @@ }, { "cell_type": "markdown", - "id": "04d0916c", + "id": "c80b630d", "metadata": { "editable": true }, @@ -1695,7 +1697,7 @@ }, { "cell_type": "markdown", - "id": "4067515f", + "id": "dc0c1a06", "metadata": { "editable": true }, @@ -1707,7 +1709,7 @@ }, { "cell_type": "markdown", - "id": "572f5043", + "id": "8f2065b7", "metadata": { "editable": true }, @@ -1719,7 +1721,7 @@ }, { "cell_type": "markdown", - "id": "4272e56c", + "id": "7f89b9d8", "metadata": { "editable": true }, @@ -1731,7 +1733,7 @@ }, { "cell_type": "markdown", - "id": "3ffcc3a4", + "id": "49c2cd3f", "metadata": { "editable": true }, @@ -1741,7 +1743,7 @@ }, { "cell_type": "markdown", - "id": "87dc5557", + "id": "517b1a37", "metadata": { "editable": true }, @@ -1753,7 +1755,7 @@ }, { "cell_type": "markdown", - "id": "36f9508b", + "id": "65c8107f", "metadata": { "editable": true }, @@ -1763,7 +1765,7 @@ }, { "cell_type": "markdown", - "id": "5e7f7ab6", + "id": "2a10f902", "metadata": { "editable": true }, @@ -1775,7 +1777,7 @@ }, { "cell_type": "markdown", - "id": "b5caac62", + "id": "b2ebf9c2", "metadata": { "editable": true }, @@ -1793,7 +1795,7 @@ }, { "cell_type": "markdown", - "id": "beffe853", + "id": "90336322", "metadata": { "editable": true }, @@ -1803,7 +1805,7 @@ }, { "cell_type": "markdown", - "id": "9ff991bb", + "id": "f25ff166", "metadata": { "editable": true }, @@ -1821,7 +1823,7 @@ }, { "cell_type": "markdown", - "id": "5c75d805", + "id": "4cf11d5e", "metadata": { "editable": true }, @@ -1831,7 +1833,7 @@ }, { "cell_type": "markdown", - "id": "df242f2d", + "id": "2670748d", "metadata": { "editable": true }, @@ -1849,7 +1851,7 @@ }, { "cell_type": "markdown", - "id": "18a65420", + "id": "18c29f71", "metadata": { "editable": true }, @@ -1861,7 +1863,7 @@ }, { "cell_type": "markdown", - "id": "04cb64d1", + "id": "c593470c", "metadata": { "editable": true }, @@ -1873,7 +1875,7 @@ }, { "cell_type": "markdown", - "id": "c5320606", + "id": "28e8caef", "metadata": { "editable": true }, @@ -1883,7 +1885,7 @@ }, { "cell_type": "markdown", - "id": "58b67295", + "id": "516de9d7", "metadata": { "editable": true }, @@ -1895,7 +1897,7 @@ }, { "cell_type": "markdown", - "id": "3b7c74a4", + "id": "004c0bf4", "metadata": { "editable": true }, @@ -1907,7 +1909,7 @@ }, { "cell_type": "markdown", - "id": "76ff59e0", + "id": "d62a3b1f", "metadata": { "editable": true }, @@ -1917,7 +1919,7 @@ }, { "cell_type": "markdown", - "id": "60a7be03", + "id": "e9af770e", "metadata": { "editable": true }, @@ -1929,7 +1931,7 @@ }, { "cell_type": "markdown", - "id": "27739d6d", + "id": "eca56f17", "metadata": { "editable": true }, @@ -1939,7 +1941,7 @@ }, { "cell_type": "markdown", - "id": "1efdb6f5", + "id": "bb0e4414", "metadata": { "editable": true }, @@ -1951,7 +1953,7 @@ }, { "cell_type": "markdown", - "id": "b0b04f61", + "id": "a4b190fc", "metadata": { "editable": true }, @@ -1963,7 +1965,7 @@ }, { "cell_type": "markdown", - "id": "e6c4318c", + "id": "ec0f87c0", "metadata": { "editable": true }, @@ -1989,7 +1991,7 @@ }, { "cell_type": "markdown", - "id": "4e58634a", + "id": "2fb45155", "metadata": { "editable": true }, @@ -2012,7 +2014,7 @@ }, { "cell_type": "markdown", - "id": "690eb424", + "id": "3d5c2a0e", "metadata": { "editable": true }, @@ -2024,7 +2026,7 @@ }, { "cell_type": "markdown", - "id": "5f475d02", + "id": "9183bbd0", "metadata": { "editable": true }, @@ -2036,7 +2038,7 @@ }, { "cell_type": "markdown", - "id": "016ce549", + "id": "32ece956", "metadata": { "editable": true }, @@ -2046,7 +2048,7 @@ }, { "cell_type": "markdown", - "id": "51f9ed82", + "id": "466d6bda", "metadata": { "editable": true }, @@ -2058,7 +2060,7 @@ }, { "cell_type": "markdown", - "id": "a8996176", + "id": "9f31b228", "metadata": { "editable": true }, @@ -2072,7 +2074,7 @@ }, { "cell_type": "markdown", - "id": "aaf186a8", + "id": "fbeac005", "metadata": { "editable": true }, @@ -2084,7 +2086,7 @@ }, { "cell_type": "markdown", - "id": "3b8a0a79", + "id": "bc6ae984", "metadata": { "editable": true }, @@ -2096,7 +2098,7 @@ }, { "cell_type": "markdown", - "id": "299cc7bb", + "id": "65f3133d", "metadata": { "editable": true }, @@ -2106,7 +2108,7 @@ }, { "cell_type": "markdown", - "id": "3b10a1a0", + "id": "5d27bbe1", "metadata": { "editable": true }, @@ -2118,7 +2120,7 @@ }, { "cell_type": "markdown", - "id": "0f8769f8", + "id": "5e5d0aa0", "metadata": { "editable": true }, @@ -2130,7 +2132,7 @@ }, { "cell_type": "markdown", - "id": "03860e2f", + "id": "ea32e5bb", "metadata": { "editable": true }, @@ -2140,7 +2142,7 @@ }, { "cell_type": "markdown", - "id": "00cea1da", + "id": "3a9bb5a6", "metadata": { "editable": true }, @@ -2152,7 +2154,7 @@ }, { "cell_type": "markdown", - "id": "fe5bbd2a", + "id": "9008dcf8", "metadata": { "editable": true }, @@ -2164,7 +2166,7 @@ }, { "cell_type": "markdown", - "id": "e791fb56", + "id": "89aba7d6", "metadata": { "editable": true }, @@ -2187,7 +2189,7 @@ }, { "cell_type": "markdown", - "id": "14ed4124", + "id": "ea0cdce2", "metadata": { "editable": true }, @@ -2206,7 +2208,7 @@ }, { "cell_type": "markdown", - "id": "d6b31eb8", + "id": "91342c80", "metadata": { "editable": true }, @@ -2218,7 +2220,7 @@ }, { "cell_type": "markdown", - "id": "2be10af5", + "id": "bd6eb22a", "metadata": { "editable": true }, @@ -2228,7 +2230,7 @@ }, { "cell_type": "markdown", - "id": "f45b9a99", + "id": "4e75b2ab", "metadata": { "editable": true }, @@ -2240,7 +2242,7 @@ }, { "cell_type": "markdown", - "id": "865d802b", + "id": "1626d9b7", "metadata": { "editable": true }, @@ -2257,7 +2259,7 @@ { "cell_type": "code", "execution_count": 2, - "id": "37773874", + "id": "4ac7c23c", "metadata": { "collapsed": false, "editable": true @@ -2341,7 +2343,7 @@ }, { "cell_type": "markdown", - "id": "9cccb9ca", + "id": "6aeb0ee4", "metadata": { "editable": true }, @@ -2363,7 +2365,7 @@ }, { "cell_type": "markdown", - "id": "a42f7226", + "id": "ea47d1d6", "metadata": { "editable": true }, @@ -2381,7 +2383,7 @@ }, { "cell_type": "markdown", - "id": "0f57d23f", + "id": "1947aa95", "metadata": { "editable": true }, @@ -2404,7 +2406,7 @@ }, { "cell_type": "markdown", - "id": "ad459faf", + "id": "d024119f", "metadata": { "editable": true }, @@ -2423,7 +2425,7 @@ }, { "cell_type": "markdown", - "id": "1e307870", + "id": "c9178132", "metadata": { "editable": true }, @@ -2451,7 +2453,7 @@ }, { "cell_type": "markdown", - "id": "06fe5be6", + "id": "756185f5", "metadata": { "editable": true }, @@ -2471,7 +2473,7 @@ }, { "cell_type": "markdown", - "id": "736441f3", + "id": "3d92cad4", "metadata": { "editable": true }, @@ -2492,7 +2494,7 @@ }, { "cell_type": "markdown", - "id": "9ac6f21d", + "id": "cbc6f721", "metadata": { "editable": true }, @@ -2506,7 +2508,7 @@ }, { "cell_type": "markdown", - "id": "80ebd77c", + "id": "9249dc7b", "metadata": { "editable": true }, @@ -2518,7 +2520,7 @@ }, { "cell_type": "markdown", - "id": "2566a903", + "id": "e59de3af", "metadata": { "editable": true }, @@ -2540,7 +2542,7 @@ }, { "cell_type": "markdown", - "id": "382f5fe1", + "id": "e2da998c", "metadata": { "editable": true }, @@ -2562,7 +2564,7 @@ }, { "cell_type": "markdown", - "id": "fed07226", + "id": "e1abf01e", "metadata": { "editable": true }, @@ -2591,7 +2593,7 @@ }, { "cell_type": "markdown", - "id": "9ddc2586", + "id": "a8ded7cd", "metadata": { "editable": true }, @@ -2617,7 +2619,7 @@ }, { "cell_type": "markdown", - "id": "d327b303", + "id": "96da4f48", "metadata": { "editable": true }, @@ -2643,7 +2645,7 @@ }, { "cell_type": "markdown", - "id": "a3f4a57d", + "id": "395346a7", "metadata": { "editable": true }, @@ -2663,7 +2665,7 @@ }, { "cell_type": "markdown", - "id": "da0c8dbe", + "id": "9c712bbb", "metadata": { "editable": true }, @@ -2683,7 +2685,7 @@ }, { "cell_type": "markdown", - "id": "60e3da23", + "id": "2b66ea72", "metadata": { "editable": true }, @@ -2709,7 +2711,7 @@ }, { "cell_type": "markdown", - "id": "17f8f5ed", + "id": "5acbc082", "metadata": { "editable": true }, @@ -2738,7 +2740,7 @@ }, { "cell_type": "markdown", - "id": "06ba3896", + "id": "31825b65", "metadata": { "editable": true }, @@ -2756,7 +2758,7 @@ }, { "cell_type": "markdown", - "id": "72bc99e6", + "id": "c76d9af9", "metadata": { "editable": true }, @@ -2772,7 +2774,7 @@ }, { "cell_type": "markdown", - "id": "d5f452a2", + "id": "bdc93363", "metadata": { "editable": true }, @@ -2784,7 +2786,7 @@ }, { "cell_type": "markdown", - "id": "63889ee1", + "id": "a1d6ff64", "metadata": { "editable": true }, @@ -2798,7 +2800,7 @@ }, { "cell_type": "markdown", - "id": "5f47ef0f", + "id": "0c2e5742", "metadata": { "editable": true }, @@ -2826,7 +2828,7 @@ }, { "cell_type": "markdown", - "id": "b08a7b7e", + "id": "d4da3f02", "metadata": { "editable": true }, @@ -2838,7 +2840,7 @@ }, { "cell_type": "markdown", - "id": "10220190", + "id": "01ea2e0b", "metadata": { "editable": true }, @@ -2848,7 +2850,7 @@ }, { "cell_type": "markdown", - "id": "0fb4d5ad", + "id": "9c1c7bec", "metadata": { "editable": true }, @@ -2860,7 +2862,7 @@ }, { "cell_type": "markdown", - "id": "f8aa1bae", + "id": "9238ff2d", "metadata": { "editable": true }, @@ -2871,7 +2873,7 @@ }, { "cell_type": "markdown", - "id": "17de8e22", + "id": "3be74bd1", "metadata": { "editable": true }, @@ -2883,7 +2885,7 @@ }, { "cell_type": "markdown", - "id": "ca8f4f94", + "id": "2e2fd39c", "metadata": { "editable": true }, @@ -2896,7 +2898,7 @@ }, { "cell_type": "markdown", - "id": "ca998f7f", + "id": "42b1d26b", "metadata": { "editable": true }, @@ -2921,7 +2923,7 @@ }, { "cell_type": "markdown", - "id": "525b0573", + "id": "f740a484", "metadata": { "editable": true }, @@ -2934,7 +2936,7 @@ }, { "cell_type": "markdown", - "id": "a9279995", + "id": "19189bfc", "metadata": { "editable": true }, @@ -2946,7 +2948,7 @@ }, { "cell_type": "markdown", - "id": "e6cef751", + "id": "aeb3ef60", "metadata": { "editable": true }, @@ -2958,7 +2960,7 @@ }, { "cell_type": "markdown", - "id": "0ec11e1d", + "id": "dbf419a1", "metadata": { "editable": true }, @@ -2968,7 +2970,7 @@ }, { "cell_type": "markdown", - "id": "e5d6a067", + "id": "9e345753", "metadata": { "editable": true }, @@ -2980,7 +2982,7 @@ }, { "cell_type": "markdown", - "id": "add6e597", + "id": "3b13095e", "metadata": { "editable": true }, @@ -2992,7 +2994,7 @@ }, { "cell_type": "markdown", - "id": "dc7ca42d", + "id": "96501a91", "metadata": { "editable": true }, @@ -3004,7 +3006,7 @@ }, { "cell_type": "markdown", - "id": "80b56aa5", + "id": "48cf79fe", "metadata": { "editable": true }, @@ -3016,7 +3018,7 @@ }, { "cell_type": "markdown", - "id": "72a87573", + "id": "3243c0b1", "metadata": { "editable": true }, @@ -3026,7 +3028,7 @@ }, { "cell_type": "markdown", - "id": "ff8418ea", + "id": "bb312a09", "metadata": { "editable": true }, @@ -3038,7 +3040,7 @@ }, { "cell_type": "markdown", - "id": "dd978909", + "id": "484cf2b4", "metadata": { "editable": true }, @@ -3048,7 +3050,7 @@ }, { "cell_type": "markdown", - "id": "ce5a0650", + "id": "2b9c5483", "metadata": { "editable": true }, @@ -3060,7 +3062,7 @@ }, { "cell_type": "markdown", - "id": "dce8478b", + "id": "5ca21f09", "metadata": { "editable": true }, @@ -3073,7 +3075,7 @@ }, { "cell_type": "markdown", - "id": "92f7282e", + "id": "4852e4d2", "metadata": { "editable": true }, @@ -3085,7 +3087,7 @@ }, { "cell_type": "markdown", - "id": "e83bc7a2", + "id": "e3b7cbef", "metadata": { "editable": true }, @@ -3095,7 +3097,7 @@ }, { "cell_type": "markdown", - "id": "04f9d7f2", + "id": "0c1e69a1", "metadata": { "editable": true }, @@ -3107,7 +3109,7 @@ }, { "cell_type": "markdown", - "id": "c70ab677", + "id": "e71df7f4", "metadata": { "editable": true }, @@ -3118,7 +3120,7 @@ }, { "cell_type": "markdown", - "id": "801a6bd2", + "id": "50d6fecc", "metadata": { "editable": true }, @@ -3130,7 +3132,7 @@ }, { "cell_type": "markdown", - "id": "38eeee4b", + "id": "e145e461", "metadata": { "editable": true }, @@ -3140,7 +3142,7 @@ }, { "cell_type": "markdown", - "id": "d70ddf11", + "id": "97f13260", "metadata": { "editable": true }, @@ -3152,7 +3154,7 @@ }, { "cell_type": "markdown", - "id": "324ee5e0", + "id": "4361ce3b", "metadata": { "editable": true }, @@ -3162,7 +3164,7 @@ }, { "cell_type": "markdown", - "id": "3366df27", + "id": "52a16654", "metadata": { "editable": true }, @@ -3173,7 +3175,7 @@ }, { "cell_type": "markdown", - "id": "c9a2bd62", + "id": "3bfb321e", "metadata": { "editable": true }, @@ -3186,7 +3188,7 @@ }, { "cell_type": "markdown", - "id": "401183f6", + "id": "eccac6c9", "metadata": { "editable": true }, @@ -3196,7 +3198,7 @@ }, { "cell_type": "markdown", - "id": "d4e6a79e", + "id": "23634198", "metadata": { "editable": true }, @@ -3208,7 +3210,7 @@ }, { "cell_type": "markdown", - "id": "61cfab52", + "id": "7a2e75ba", "metadata": { "editable": true }, @@ -3218,7 +3220,7 @@ }, { "cell_type": "markdown", - "id": "fc5cf891", + "id": "2dad2d14", "metadata": { "editable": true }, @@ -3230,7 +3232,7 @@ }, { "cell_type": "markdown", - "id": "2e7f3950", + "id": "46415917", "metadata": { "editable": true }, @@ -3240,7 +3242,7 @@ }, { "cell_type": "markdown", - "id": "144969f6", + "id": "6adc7c1e", "metadata": { "editable": true }, @@ -3264,7 +3266,7 @@ }, { "cell_type": "markdown", - "id": "b6e503bd", + "id": "4110d83e", "metadata": { "editable": true }, @@ -3314,7 +3316,7 @@ { "cell_type": "code", "execution_count": 3, - "id": "54230ef9", + "id": "070c610d", "metadata": { "collapsed": false, "editable": true @@ -3367,7 +3369,7 @@ }, { "cell_type": "markdown", - "id": "6738e7b4", + "id": "28bb6085", "metadata": { "editable": true }, @@ -3388,7 +3390,7 @@ { "cell_type": "code", "execution_count": 4, - "id": "f369aa9d", + "id": "5a6ae0b0", "metadata": { "collapsed": false, "editable": true @@ -3426,7 +3428,7 @@ }, { "cell_type": "markdown", - "id": "f8bf8d16", + "id": "c26d604d", "metadata": { "editable": true }, @@ -3470,7 +3472,7 @@ }, { "cell_type": "markdown", - "id": "112b8cc3", + "id": "2775283b", "metadata": { "editable": true }, @@ -3510,7 +3512,7 @@ }, { "cell_type": "markdown", - "id": "e4166103", + "id": "f7455c00", "metadata": { "editable": true }, @@ -3531,7 +3533,7 @@ { "cell_type": "code", "execution_count": 5, - "id": "36399cb5", + "id": "20b3c8c0", "metadata": { "collapsed": false, "editable": true @@ -3557,7 +3559,7 @@ }, { "cell_type": "markdown", - "id": "5eaf095b", + "id": "a41d9acd", "metadata": { "editable": true }, @@ -3585,7 +3587,7 @@ }, { "cell_type": "markdown", - "id": "91eec6b8", + "id": "b2f64238", "metadata": { "editable": true }, @@ -3622,7 +3624,7 @@ { "cell_type": "code", "execution_count": 6, - "id": "ef497434", + "id": "1f5589af", "metadata": { "collapsed": false, "editable": true @@ -3668,7 +3670,7 @@ }, { "cell_type": "markdown", - "id": "ab88238a", + "id": "4518e911", "metadata": { "editable": true }, @@ -3699,7 +3701,7 @@ }, { "cell_type": "markdown", - "id": "506145ff", + "id": "d519516b", "metadata": { "editable": true }, @@ -3737,7 +3739,7 @@ }, { "cell_type": "markdown", - "id": "e8138025", + "id": "46b71202", "metadata": { "editable": true }, @@ -3771,7 +3773,7 @@ }, { "cell_type": "markdown", - "id": "25becf76", + "id": "129c39d3", "metadata": { "editable": true }, @@ -3812,7 +3814,7 @@ { "cell_type": "code", "execution_count": 7, - "id": "657c604c", + "id": "8abafb44", "metadata": { "collapsed": false, "editable": true @@ -3891,7 +3893,7 @@ }, { "cell_type": "markdown", - "id": "3c595805", + "id": "e95c7166", "metadata": { "editable": true }, @@ -3912,7 +3914,7 @@ }, { "cell_type": "markdown", - "id": "17d5f534", + "id": "b4365471", "metadata": { "editable": true }, @@ -3926,7 +3928,7 @@ { "cell_type": "code", "execution_count": 8, - "id": "5aeaa0cd", + "id": "5a0357b2", "metadata": { "collapsed": false, "editable": true @@ -4036,7 +4038,7 @@ }, { "cell_type": "markdown", - "id": "77f30e1e", + "id": "a417307d", "metadata": { "editable": true }, @@ -4055,7 +4057,7 @@ { "cell_type": "code", "execution_count": 9, - "id": "c1ab41e1", + "id": "8ee4b306", "metadata": { "collapsed": false, "editable": true @@ -4082,7 +4084,7 @@ }, { "cell_type": "markdown", - "id": "1b2b35c3", + "id": "efcbd954", "metadata": { "editable": true }, @@ -4096,7 +4098,7 @@ { "cell_type": "code", "execution_count": 10, - "id": "ac2ab4a6", + "id": "bb527e6e", "metadata": { "collapsed": false, "editable": true @@ -4127,7 +4129,7 @@ }, { "cell_type": "markdown", - "id": "f3e5dfec", + "id": "d282951d", "metadata": { "editable": true }, @@ -4138,7 +4140,7 @@ { "cell_type": "code", "execution_count": 11, - "id": "6d875555", + "id": "69d3d9c8", "metadata": { "collapsed": false, "editable": true @@ -4182,7 +4184,7 @@ }, { "cell_type": "markdown", - "id": "81c742e3", + "id": "99f5058c", "metadata": { "editable": true }, @@ -4205,7 +4207,7 @@ { "cell_type": "code", "execution_count": 12, - "id": "d21828bb", + "id": "7898d99f", "metadata": { "collapsed": false, "editable": true @@ -4232,7 +4234,7 @@ }, { "cell_type": "markdown", - "id": "4b40579d", + "id": "7ceec918", "metadata": { "editable": true }, @@ -4243,7 +4245,7 @@ { "cell_type": "code", "execution_count": 13, - "id": "bfc97198", + "id": "98abf229", "metadata": { "collapsed": false, "editable": true @@ -4288,7 +4290,7 @@ }, { "cell_type": "markdown", - "id": "550680d5", + "id": "ba07c374", "metadata": { "editable": true }, @@ -4306,7 +4308,7 @@ }, { "cell_type": "markdown", - "id": "bbade60e", + "id": "1cf09819", "metadata": { "editable": true }, @@ -4341,7 +4343,7 @@ { "cell_type": "code", "execution_count": 14, - "id": "e5505ed3", + "id": "2c2c3ec5", "metadata": { "collapsed": false, "editable": true @@ -4353,7 +4355,7 @@ }, { "cell_type": "markdown", - "id": "98d4797a", + "id": "39d013b1", "metadata": { "editable": true }, @@ -4365,7 +4367,7 @@ { "cell_type": "code", "execution_count": 15, - "id": "95b05730", + "id": "fbf36c26", "metadata": { "collapsed": false, "editable": true @@ -4378,7 +4380,7 @@ }, { "cell_type": "markdown", - "id": "94170f18", + "id": "94e66380", "metadata": { "editable": true }, @@ -4389,7 +4391,7 @@ { "cell_type": "code", "execution_count": 16, - "id": "65ae6e69", + "id": "5e72b1d2", "metadata": { "collapsed": false, "editable": true @@ -4402,7 +4404,7 @@ }, { "cell_type": "markdown", - "id": "df39c5c6", + "id": "40470dbd", "metadata": { "editable": true }, @@ -4417,7 +4419,7 @@ { "cell_type": "code", "execution_count": 17, - "id": "d0d627f6", + "id": "f2cd4f41", "metadata": { "collapsed": false, "editable": true @@ -4429,7 +4431,7 @@ }, { "cell_type": "markdown", - "id": "4124b5af", + "id": "636940c6", "metadata": { "editable": true }, @@ -4441,7 +4443,7 @@ }, { "cell_type": "markdown", - "id": "22dc977c", + "id": "d9f47b57", "metadata": { "editable": true }, @@ -4454,7 +4456,7 @@ { "cell_type": "code", "execution_count": 18, - "id": "7df2e4d4", + "id": "1489b5d5", "metadata": { "collapsed": false, "editable": true @@ -4509,7 +4511,7 @@ { "cell_type": "code", "execution_count": 19, - "id": "4f5bff6f", + "id": "672dc5a2", "metadata": { "collapsed": false, "editable": true @@ -4538,7 +4540,7 @@ { "cell_type": "code", "execution_count": 20, - "id": "3ae517ea", + "id": "0513084f", "metadata": { "collapsed": false, "editable": true @@ -4568,7 +4570,7 @@ { "cell_type": "code", "execution_count": 21, - "id": "c880b209", + "id": "02a34777", "metadata": { "collapsed": false, "editable": true @@ -4595,7 +4597,7 @@ { "cell_type": "code", "execution_count": 22, - "id": "cf8cea73", + "id": "52c1d6e2", "metadata": { "collapsed": false, "editable": true @@ -4637,7 +4639,7 @@ }, { "cell_type": "markdown", - "id": "3024761c", + "id": "53f9be79", "metadata": { "editable": true }, @@ -4656,7 +4658,7 @@ }, { "cell_type": "markdown", - "id": "53987675", + "id": "39bd1718", "metadata": { "editable": true }, @@ -4678,7 +4680,7 @@ { "cell_type": "code", "execution_count": 23, - "id": "5ed03631", + "id": "4c1f42f1", "metadata": { "collapsed": false, "editable": true @@ -4819,7 +4821,7 @@ }, { "cell_type": "markdown", - "id": "8b98c385", + "id": "532aecc2", "metadata": { "editable": true }, @@ -4835,7 +4837,7 @@ { "cell_type": "code", "execution_count": 24, - "id": "54298abd", + "id": "b24b4414", "metadata": { "collapsed": false, "editable": true @@ -4848,7 +4850,7 @@ }, { "cell_type": "markdown", - "id": "c03dc1b1", + "id": "32a25c0b", "metadata": { "editable": true }, @@ -4860,7 +4862,7 @@ { "cell_type": "code", "execution_count": 25, - "id": "5a2f7871", + "id": "7a7d273f", "metadata": { "collapsed": false, "editable": true @@ -4882,7 +4884,7 @@ }, { "cell_type": "markdown", - "id": "07fa559a", + "id": "d34cd45c", "metadata": { "editable": true }, @@ -4898,7 +4900,7 @@ { "cell_type": "code", "execution_count": 26, - "id": "718450a2", + "id": "9ad6425d", "metadata": { "collapsed": false, "editable": true @@ -4936,7 +4938,7 @@ }, { "cell_type": "markdown", - "id": "0db28b52", + "id": "baaaff79", "metadata": { "editable": true }, @@ -4949,7 +4951,7 @@ { "cell_type": "code", "execution_count": 27, - "id": "1479de5a", + "id": "78f11b83", "metadata": { "collapsed": false, "editable": true @@ -4970,7 +4972,7 @@ }, { "cell_type": "markdown", - "id": "d42e1ccf", + "id": "05285af5", "metadata": { "editable": true }, @@ -4986,7 +4988,7 @@ { "cell_type": "code", "execution_count": 28, - "id": "2c2a8d32", + "id": "7ac52c84", "metadata": { "collapsed": false, "editable": true @@ -5044,7 +5046,7 @@ }, { "cell_type": "markdown", - "id": "65e7caab", + "id": "873e7caa", "metadata": { "editable": true }, @@ -5059,7 +5061,7 @@ { "cell_type": "code", "execution_count": 29, - "id": "75e9399d", + "id": "bd43ac18", "metadata": { "collapsed": false, "editable": true @@ -5080,7 +5082,7 @@ }, { "cell_type": "markdown", - "id": "0b0b82e8", + "id": "3dc2175e", "metadata": { "editable": true }, @@ -5104,7 +5106,7 @@ { "cell_type": "code", "execution_count": 30, - "id": "5351bfd6", + "id": "5b4b161c", "metadata": { "collapsed": false, "editable": true @@ -5576,7 +5578,7 @@ }, { "cell_type": "markdown", - "id": "2d63ec5b", + "id": "9596ae53", "metadata": { "editable": true }, @@ -5588,7 +5590,7 @@ { "cell_type": "code", "execution_count": 31, - "id": "85a6b185", + "id": "a11f680f", "metadata": { "collapsed": false, "editable": true @@ -5632,7 +5634,7 @@ }, { "cell_type": "markdown", - "id": "f8842209", + "id": "0fc39e40", "metadata": { "editable": true }, @@ -5648,7 +5650,7 @@ { "cell_type": "code", "execution_count": 32, - "id": "b7b14d8f", + "id": "a67ab3a0", "metadata": { "collapsed": false, "editable": true @@ -5663,7 +5665,7 @@ }, { "cell_type": "markdown", - "id": "3e35cc67", + "id": "3add8665", "metadata": { "editable": true }, @@ -5674,7 +5676,7 @@ { "cell_type": "code", "execution_count": 33, - "id": "c2b3e7a3", + "id": "4a4fbc7a", "metadata": { "collapsed": false, "editable": true @@ -5689,7 +5691,7 @@ }, { "cell_type": "markdown", - "id": "9d0eb8b2", + "id": "4dff1871", "metadata": { "editable": true }, @@ -5705,7 +5707,7 @@ { "cell_type": "code", "execution_count": 34, - "id": "19fd68fe", + "id": "ad40e38c", "metadata": { "collapsed": false, "editable": true @@ -5719,7 +5721,7 @@ }, { "cell_type": "markdown", - "id": "ecbc4c88", + "id": "43cd1e22", "metadata": { "editable": true }, @@ -5734,7 +5736,7 @@ { "cell_type": "code", "execution_count": 35, - "id": "c62f0877", + "id": "cde36b38", "metadata": { "collapsed": false, "editable": true @@ -5760,7 +5762,7 @@ { "cell_type": "code", "execution_count": 36, - "id": "5b955b7a", + "id": "2bc572a4", "metadata": { "collapsed": false, "editable": true @@ -5775,7 +5777,7 @@ }, { "cell_type": "markdown", - "id": "e4c3e9cc", + "id": "e3e6fa31", "metadata": { "editable": true }, @@ -5786,7 +5788,7 @@ { "cell_type": "code", "execution_count": 37, - "id": "4e994594", + "id": "575ceb29", "metadata": { "collapsed": false, "editable": true @@ -5801,7 +5803,7 @@ }, { "cell_type": "markdown", - "id": "690debd0", + "id": "622015f0", "metadata": { "editable": true }, @@ -5812,7 +5814,7 @@ { "cell_type": "code", "execution_count": 38, - "id": "ea04ae66", + "id": "9c075b36", "metadata": { "collapsed": false, "editable": true @@ -5832,7 +5834,7 @@ { "cell_type": "code", "execution_count": 39, - "id": "cd892db0", + "id": "44ded771", "metadata": { "collapsed": false, "editable": true @@ -5847,7 +5849,7 @@ }, { "cell_type": "markdown", - "id": "c85e6aa4", + "id": "317e6e5c", "metadata": { "editable": true }, @@ -5862,7 +5864,7 @@ { "cell_type": "code", "execution_count": 40, - "id": "1dc44b4d", + "id": "8911de9d", "metadata": { "collapsed": false, "editable": true @@ -5899,7 +5901,7 @@ }, { "cell_type": "markdown", - "id": "785a6539", + "id": "82d61377", "metadata": { "editable": true }, @@ -5912,7 +5914,7 @@ { "cell_type": "code", "execution_count": 41, - "id": "f2137088", + "id": "2a72a374", "metadata": { "collapsed": false, "editable": true @@ -5935,7 +5937,7 @@ }, { "cell_type": "markdown", - "id": "6caa78c7", + "id": "2d892009", "metadata": { "editable": true }, diff --git a/doc/Projects/2025/Project2/html/._Project2-bs000.html b/doc/Projects/2025/Project2/html/._Project2-bs000.html index eb694ab7a..bec0bed5e 100644 --- a/doc/Projects/2025/Project2/html/._Project2-bs000.html +++ b/doc/Projects/2025/Project2/html/._Project2-bs000.html @@ -80,6 +80,16 @@ doconce format html Project2.do.txt --html_style=bootstrap --pygments_html_style 3, None, 'part-g-critical-evaluation-of-the-various-algorithms'), + ('Summary of methods to implement and analyze', + 2, + None, + 'summary-of-methods-to-implement-and-analyze'), + ('Required Analysis:', 3, None, 'required-analysis'), + ('Optional (Note that you should include at least two of these ' + 'in the report):', + 3, + None, + 'optional-note-that-you-should-include-at-least-two-of-these-in-the-report'), ('Background literature', 2, None, 'background-literature'), ('Introduction to numerical projects', 2, @@ -134,6 +144,9 @@ MathJax.Hub.Config({
  •    Part e): Testing different norms
  •    Part f): Classification analysis using neural networks
  •    Part g) Critical evaluation of the various algorithms
  • +
  • Summary of methods to implement and analyze
  • +
  •    Required Analysis:
  • +
  •    Optional (Note that you should include at least two of these in the report):
  • Background literature
  • Introduction to numerical projects
  • Format for electronic delivery of report and programs
  • @@ -245,7 +258,7 @@ feed-forward neural network (FFNN) code. The exercises from week 41 and 42 (see
    • Regression (fitting a continuous function). In this part you will need to bring back your results from project 1 and compare these with what you get from your Neural Network code to be developed here. The data sets could be
      • -
      • The simple one-dimensional function Runge function from project 1, that is \( f(x) = \frac{1}{1+25x^2} \). We recommend using a simpler function when developing your neural network code for regression problems. Feel however free to discuss and study other functions, such as the the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
      • +
      • The simple one-dimensional function Runge function from project 1, that is \( f(x) = \frac{1}{1+25x^2} \). We recommend using a simpler function when developing your neural network code for regression problems. Feel however free to discuss and study other functions, such as the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
    • Classification.
      • @@ -526,6 +539,46 @@ and cons. Which algorithm works best for the regression case and which is best for the classification case. These codes can also be part of your final project 3, but now applied to other data sets.

        +

        Summary of methods to implement and analyze

        + +Required Implementation: +
          +
        1. Reuse the regression code and results from project 1, these will act as a benchmark for seeing how suited a neural network is for this regression task.
        2. +
        3. Implement a neural network with
        4. +
            +
          • A flexible number of layers
          • +
          • A flexible number of nodes in each layer
          • +
          • A changeable activation function in each layer (Sigmoid, ReLU, LeakyReLU, as well as Linear and Softmax)
          • +
          • A changeable cost function, which will be set to MSE for regression and cross-entropy for multiple-classification
          • +
          • An optional L1 or L2 norm of the weights and biases in the cost function (only used for computing gradients, not interpretable metrics)
          • +
          +
        5. Implement the back-propagation algorithm to compute the gradient of your neural network
        6. +
        7. Reuse the implementation of Plain and Stochastic Gradient Descent from Project 1 (and adapt the code to work with the your neural network)
        8. +
            +
          • With no optimization algorithm
          • +
          • With RMS Prop
          • +
          • With ADAM
          • +
          +
        9. Implement scaling and train-test splitting of your data, preferably using sklearn
        10. +
        11. Implement and compute metrics like the MSE and Accuracy
        12. +
        +

        Required Analysis:

        +
          +
        1. Briefly show and argue for the advantages and disadvantages of the methods from Project 1.
        2. +
        3. Explore and show the impact of changing the number of layers, nodes per layer, choice of activation function, and inclusion of L1 and L2 norms. Present only the most interesting results from this exploration. 2D Heatmaps will be good for this: Start with finding a well performing set of hyper-parameters, then change two at a time in a range that shows good and bad performance.
        4. +
        5. Show and argue for the advantages and disadvantages of using a neural network for regression on your data
        6. +
        7. Show and argue for the advantages and disadvantages of using a neural network for classification on your data
        8. +
        9. Show and argue for the advantages and disadvantages of the different gradient methods and learning rates when training the neural network
        10. +
        +

        Optional (Note that you should include at least two of these in the report):

        +
          +
        1. Implement Logistic Regression as simple classification model case (equivalent to a Neural Network with one layer)
        2. +
        3. Compute the gradient of the neural network with autograd, to show that it gives the same result as your hand-written backpropagation.
        4. +
        5. Compare your results with results from using a machine-learning library like pytorch (https://docs.pytorch.org/tutorials/beginner/basics/buildmodel_tutorial.html)
        6. +
        7. Use a more complex classification dataset instead, like the fashion MNIST (see https://www.kaggle.com/datasets/zalando-research/fashionmnist)
        8. +
        9. Use a more complex regression dataset instead, like the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
        10. +
        11. Compute and interpret a confusion matrix of your best classification model (see https://www.researchgate.net/figure/Confusion-matrix-of-MNIST-and-F-MNIST-embeddings_fig5_349758607)
        12. +

        Background literature

          diff --git a/doc/Projects/2025/Project2/html/Project2-bs.html b/doc/Projects/2025/Project2/html/Project2-bs.html index eb694ab7a..bec0bed5e 100644 --- a/doc/Projects/2025/Project2/html/Project2-bs.html +++ b/doc/Projects/2025/Project2/html/Project2-bs.html @@ -80,6 +80,16 @@ doconce format html Project2.do.txt --html_style=bootstrap --pygments_html_style 3, None, 'part-g-critical-evaluation-of-the-various-algorithms'), + ('Summary of methods to implement and analyze', + 2, + None, + 'summary-of-methods-to-implement-and-analyze'), + ('Required Analysis:', 3, None, 'required-analysis'), + ('Optional (Note that you should include at least two of these ' + 'in the report):', + 3, + None, + 'optional-note-that-you-should-include-at-least-two-of-these-in-the-report'), ('Background literature', 2, None, 'background-literature'), ('Introduction to numerical projects', 2, @@ -134,6 +144,9 @@ MathJax.Hub.Config({
        1.    Part e): Testing different norms
        2.    Part f): Classification analysis using neural networks
        3.    Part g) Critical evaluation of the various algorithms
        4. +
        5. Summary of methods to implement and analyze
        6. +
        7.    Required Analysis:
        8. +
        9.    Optional (Note that you should include at least two of these in the report):
        10. Background literature
        11. Introduction to numerical projects
        12. Format for electronic delivery of report and programs
        13. @@ -245,7 +258,7 @@ feed-forward neural network (FFNN) code. The exercises from week 41 and 42 (see
          • Regression (fitting a continuous function). In this part you will need to bring back your results from project 1 and compare these with what you get from your Neural Network code to be developed here. The data sets could be
            • -
            • The simple one-dimensional function Runge function from project 1, that is \( f(x) = \frac{1}{1+25x^2} \). We recommend using a simpler function when developing your neural network code for regression problems. Feel however free to discuss and study other functions, such as the the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
            • +
            • The simple one-dimensional function Runge function from project 1, that is \( f(x) = \frac{1}{1+25x^2} \). We recommend using a simpler function when developing your neural network code for regression problems. Feel however free to discuss and study other functions, such as the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
          • Classification.
            • @@ -526,6 +539,46 @@ and cons. Which algorithm works best for the regression case and which is best for the classification case. These codes can also be part of your final project 3, but now applied to other data sets.

              +

              Summary of methods to implement and analyze

              + +Required Implementation: +
                +
              1. Reuse the regression code and results from project 1, these will act as a benchmark for seeing how suited a neural network is for this regression task.
              2. +
              3. Implement a neural network with
              4. +
                  +
                • A flexible number of layers
                • +
                • A flexible number of nodes in each layer
                • +
                • A changeable activation function in each layer (Sigmoid, ReLU, LeakyReLU, as well as Linear and Softmax)
                • +
                • A changeable cost function, which will be set to MSE for regression and cross-entropy for multiple-classification
                • +
                • An optional L1 or L2 norm of the weights and biases in the cost function (only used for computing gradients, not interpretable metrics)
                • +
                +
              5. Implement the back-propagation algorithm to compute the gradient of your neural network
              6. +
              7. Reuse the implementation of Plain and Stochastic Gradient Descent from Project 1 (and adapt the code to work with the your neural network)
              8. +
                  +
                • With no optimization algorithm
                • +
                • With RMS Prop
                • +
                • With ADAM
                • +
                +
              9. Implement scaling and train-test splitting of your data, preferably using sklearn
              10. +
              11. Implement and compute metrics like the MSE and Accuracy
              12. +
              +

              Required Analysis:

              +
                +
              1. Briefly show and argue for the advantages and disadvantages of the methods from Project 1.
              2. +
              3. Explore and show the impact of changing the number of layers, nodes per layer, choice of activation function, and inclusion of L1 and L2 norms. Present only the most interesting results from this exploration. 2D Heatmaps will be good for this: Start with finding a well performing set of hyper-parameters, then change two at a time in a range that shows good and bad performance.
              4. +
              5. Show and argue for the advantages and disadvantages of using a neural network for regression on your data
              6. +
              7. Show and argue for the advantages and disadvantages of using a neural network for classification on your data
              8. +
              9. Show and argue for the advantages and disadvantages of the different gradient methods and learning rates when training the neural network
              10. +
              +

              Optional (Note that you should include at least two of these in the report):

              +
                +
              1. Implement Logistic Regression as simple classification model case (equivalent to a Neural Network with one layer)
              2. +
              3. Compute the gradient of the neural network with autograd, to show that it gives the same result as your hand-written backpropagation.
              4. +
              5. Compare your results with results from using a machine-learning library like pytorch (https://docs.pytorch.org/tutorials/beginner/basics/buildmodel_tutorial.html)
              6. +
              7. Use a more complex classification dataset instead, like the fashion MNIST (see https://www.kaggle.com/datasets/zalando-research/fashionmnist)
              8. +
              9. Use a more complex regression dataset instead, like the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
              10. +
              11. Compute and interpret a confusion matrix of your best classification model (see https://www.researchgate.net/figure/Confusion-matrix-of-MNIST-and-F-MNIST-embeddings_fig5_349758607)
              12. +

              Background literature

                diff --git a/doc/Projects/2025/Project2/html/Project2.html b/doc/Projects/2025/Project2/html/Project2.html index 774e6e630..9a9db3187 100644 --- a/doc/Projects/2025/Project2/html/Project2.html +++ b/doc/Projects/2025/Project2/html/Project2.html @@ -158,6 +158,16 @@ div.toc p,a { 3, None, 'part-g-critical-evaluation-of-the-various-algorithms'), + ('Summary of methods to implement and analyze', + 2, + None, + 'summary-of-methods-to-implement-and-analyze'), + ('Required Analysis:', 3, None, 'required-analysis'), + ('Optional (Note that you should include at least two of these ' + 'in the report):', + 3, + None, + 'optional-note-that-you-should-include-at-least-two-of-these-in-the-report'), ('Background literature', 2, None, 'background-literature'), ('Introduction to numerical projects', 2, @@ -280,7 +290,7 @@ feed-forward neural network (FFNN) code. The exercises from week 41 and 42 (see
                • Regression (fitting a continuous function). In this part you will need to bring back your results from project 1 and compare these with what you get from your Neural Network code to be developed here. The data sets could be
                  • -
                  • The simple one-dimensional function Runge function from project 1, that is \( f(x) = \frac{1}{1+25x^2} \). We recommend using a simpler function when developing your neural network code for regression problems. Feel however free to discuss and study other functions, such as the the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
                  • +
                  • The simple one-dimensional function Runge function from project 1, that is \( f(x) = \frac{1}{1+25x^2} \). We recommend using a simpler function when developing your neural network code for regression problems. Feel however free to discuss and study other functions, such as the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
                • Classification.
                  • @@ -561,6 +571,46 @@ and cons. Which algorithm works best for the regression case and which is best for the classification case. These codes can also be part of your final project 3, but now applied to other data sets.

                    +

                    Summary of methods to implement and analyze

                    + +Required Implementation: +
                      +
                    1. Reuse the regression code and results from project 1, these will act as a benchmark for seeing how suited a neural network is for this regression task.
                    2. +
                    3. Implement a neural network with
                    4. +
                        +
                      • A flexible number of layers
                      • +
                      • A flexible number of nodes in each layer
                      • +
                      • A changeable activation function in each layer (Sigmoid, ReLU, LeakyReLU, as well as Linear and Softmax)
                      • +
                      • A changeable cost function, which will be set to MSE for regression and cross-entropy for multiple-classification
                      • +
                      • An optional L1 or L2 norm of the weights and biases in the cost function (only used for computing gradients, not interpretable metrics)
                      • +
                      +
                    5. Implement the back-propagation algorithm to compute the gradient of your neural network
                    6. +
                    7. Reuse the implementation of Plain and Stochastic Gradient Descent from Project 1 (and adapt the code to work with the your neural network)
                    8. +
                        +
                      • With no optimization algorithm
                      • +
                      • With RMS Prop
                      • +
                      • With ADAM
                      • +
                      +
                    9. Implement scaling and train-test splitting of your data, preferably using sklearn
                    10. +
                    11. Implement and compute metrics like the MSE and Accuracy
                    12. +
                    +

                    Required Analysis:

                    +
                      +
                    1. Briefly show and argue for the advantages and disadvantages of the methods from Project 1.
                    2. +
                    3. Explore and show the impact of changing the number of layers, nodes per layer, choice of activation function, and inclusion of L1 and L2 norms. Present only the most interesting results from this exploration. 2D Heatmaps will be good for this: Start with finding a well performing set of hyper-parameters, then change two at a time in a range that shows good and bad performance.
                    4. +
                    5. Show and argue for the advantages and disadvantages of using a neural network for regression on your data
                    6. +
                    7. Show and argue for the advantages and disadvantages of using a neural network for classification on your data
                    8. +
                    9. Show and argue for the advantages and disadvantages of the different gradient methods and learning rates when training the neural network
                    10. +
                    +

                    Optional (Note that you should include at least two of these in the report):

                    +
                      +
                    1. Implement Logistic Regression as simple classification model case (equivalent to a Neural Network with one layer)
                    2. +
                    3. Compute the gradient of the neural network with autograd, to show that it gives the same result as your hand-written backpropagation.
                    4. +
                    5. Compare your results with results from using a machine-learning library like pytorch (https://docs.pytorch.org/tutorials/beginner/basics/buildmodel_tutorial.html)
                    6. +
                    7. Use a more complex classification dataset instead, like the fashion MNIST (see https://www.kaggle.com/datasets/zalando-research/fashionmnist)
                    8. +
                    9. Use a more complex regression dataset instead, like the two-dimensional Runge function \( f(x,y)=\left[(10x - 5)^2 + (10y - 5)^2 + 1 \right]^{-1} \), or even more complicated two-dimensional functions (see the supplementary material of https://www.nature.com/articles/s41467-025-61362-4 for an extensive list of two-dimensional functions).
                    10. +
                    11. Compute and interpret a confusion matrix of your best classification model (see https://www.researchgate.net/figure/Confusion-matrix-of-MNIST-and-F-MNIST-embeddings_fig5_349758607)
                    12. +

                    Background literature

                      diff --git a/doc/Projects/2025/Project2/ipynb/Project2.ipynb b/doc/Projects/2025/Project2/ipynb/Project2.ipynb index b22fbdd58..90ca0ae29 100644 --- a/doc/Projects/2025/Project2/ipynb/Project2.ipynb +++ b/doc/Projects/2025/Project2/ipynb/Project2.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "061af572", + "id": "d724df6f", "metadata": { "editable": true }, @@ -14,7 +14,7 @@ }, { "cell_type": "markdown", - "id": "22578683", + "id": "8c1bfdba", "metadata": { "editable": true }, @@ -27,7 +27,7 @@ }, { "cell_type": "markdown", - "id": "61fb162f", + "id": "42f6cef9", "metadata": { "editable": true }, @@ -58,7 +58,7 @@ }, { "cell_type": "markdown", - "id": "104c69e1", + "id": "6b088eeb", "metadata": { "editable": true }, @@ -104,7 +104,7 @@ }, { "cell_type": "markdown", - "id": "0d2c42e3", + "id": "1f51c6be", "metadata": { "editable": true }, @@ -121,7 +121,7 @@ "\n", "* Regression (fitting a continuous function). In this part you will need to bring back your results from project 1 and compare these with what you get from your Neural Network code to be developed here. The data sets could be\n", "\n", - " * The simple one-dimensional function Runge function from project 1, that is $f(x) = \\frac{1}{1+25x^2}$. We recommend using a simpler function when developing your neural network code for regression problems. Feel however free to discuss and study other functions, such as the the two-dimensional Runge function $f(x,y)=\\left[(10x - 5)^2 + (10y - 5)^2 + 1 \\right]^{-1}$, or even more complicated two-dimensional functions (see the supplementary material of for an extensive list of two-dimensional functions). \n", + " * The simple one-dimensional function Runge function from project 1, that is $f(x) = \\frac{1}{1+25x^2}$. We recommend using a simpler function when developing your neural network code for regression problems. Feel however free to discuss and study other functions, such as the two-dimensional Runge function $f(x,y)=\\left[(10x - 5)^2 + (10y - 5)^2 + 1 \\right]^{-1}$, or even more complicated two-dimensional functions (see the supplementary material of for an extensive list of two-dimensional functions). \n", "\n", "* Classification.\n", "\n", @@ -132,7 +132,7 @@ }, { "cell_type": "markdown", - "id": "d8baab67", + "id": "5428a6da", "metadata": { "editable": true }, @@ -162,7 +162,7 @@ }, { "cell_type": "markdown", - "id": "87e7ed71", + "id": "d56ea8d6", "metadata": { "editable": true }, @@ -189,7 +189,7 @@ }, { "cell_type": "markdown", - "id": "5a26b6ad", + "id": "87464bce", "metadata": { "editable": true }, @@ -205,7 +205,7 @@ }, { "cell_type": "markdown", - "id": "096fe6c4", + "id": "fc102ae5", "metadata": { "editable": true }, @@ -217,7 +217,7 @@ }, { "cell_type": "markdown", - "id": "fd986596", + "id": "cec503de", "metadata": { "editable": true }, @@ -252,7 +252,7 @@ }, { "cell_type": "markdown", - "id": "e853d4b6", + "id": "bbf4879f", "metadata": { "editable": true }, @@ -270,7 +270,7 @@ }, { "cell_type": "markdown", - "id": "fc2d413b", + "id": "307035d6", "metadata": { "editable": true }, @@ -285,7 +285,7 @@ }, { "cell_type": "markdown", - "id": "e6821051", + "id": "a6d69596", "metadata": { "editable": true }, @@ -302,7 +302,7 @@ }, { "cell_type": "markdown", - "id": "cba72d68", + "id": "b4073806", "metadata": { "editable": true }, @@ -328,7 +328,7 @@ { "cell_type": "code", "execution_count": 1, - "id": "e16fb528", + "id": "97f27c66", "metadata": { "collapsed": false, "editable": true @@ -347,7 +347,7 @@ }, { "cell_type": "markdown", - "id": "73599f42", + "id": "9525e347", "metadata": { "editable": true }, @@ -358,7 +358,7 @@ { "cell_type": "code", "execution_count": 2, - "id": "f1a639ef", + "id": "a9919b5f", "metadata": { "collapsed": false, "editable": true @@ -370,7 +370,7 @@ }, { "cell_type": "markdown", - "id": "90fb7b41", + "id": "c794dffb", "metadata": { "editable": true }, @@ -381,7 +381,7 @@ { "cell_type": "code", "execution_count": 3, - "id": "424af629", + "id": "ea0aa772", "metadata": { "collapsed": false, "editable": true @@ -394,7 +394,7 @@ }, { "cell_type": "markdown", - "id": "3c006080", + "id": "b960fb33", "metadata": { "editable": true }, @@ -407,7 +407,7 @@ }, { "cell_type": "markdown", - "id": "a18ddd54", + "id": "47b8fa51", "metadata": { "editable": true }, @@ -419,7 +419,7 @@ }, { "cell_type": "markdown", - "id": "1a1afaf9", + "id": "5e5a1100", "metadata": { "editable": true }, @@ -442,7 +442,7 @@ { "cell_type": "code", "execution_count": 4, - "id": "3c37cbaf", + "id": "94699ffc", "metadata": { "collapsed": false, "editable": true @@ -464,7 +464,7 @@ }, { "cell_type": "markdown", - "id": "106b9303", + "id": "5a842d68", "metadata": { "editable": true }, @@ -480,7 +480,88 @@ }, { "cell_type": "markdown", - "id": "55da0d7f", + "id": "b57aadc2", + "metadata": { + "editable": true + }, + "source": [ + "## Summary of methods to implement and analyze\n", + "\n", + "**Required Implementation:**\n", + "1. Reuse the regression code and results from project 1, these will act as a benchmark for seeing how suited a neural network is for this regression task.\n", + "\n", + "2. Implement a neural network with\n", + "\n", + " * A flexible number of layers\n", + "\n", + " * A flexible number of nodes in each layer\n", + "\n", + " * A changeable activation function in each layer (Sigmoid, ReLU, LeakyReLU, as well as Linear and Softmax)\n", + "\n", + " * A changeable cost function, which will be set to MSE for regression and cross-entropy for multiple-classification\n", + "\n", + " * An optional L1 or L2 norm of the weights and biases in the cost function (only used for computing gradients, not interpretable metrics)\n", + "\n", + "3. Implement the back-propagation algorithm to compute the gradient of your neural network\n", + "\n", + "4. Reuse the implementation of Plain and Stochastic Gradient Descent from Project 1 (and adapt the code to work with the your neural network)\n", + "\n", + " * With no optimization algorithm\n", + "\n", + " * With RMS Prop\n", + "\n", + " * With ADAM\n", + "\n", + "5. Implement scaling and train-test splitting of your data, preferably using sklearn\n", + "\n", + "6. Implement and compute metrics like the MSE and Accuracy" + ] + }, + { + "cell_type": "markdown", + "id": "ae2d8c77", + "metadata": { + "editable": true + }, + "source": [ + "### Required Analysis:\n", + "\n", + "1. Briefly show and argue for the advantages and disadvantages of the methods from Project 1.\n", + "\n", + "2. Explore and show the impact of changing the number of layers, nodes per layer, choice of activation function, and inclusion of L1 and L2 norms. Present only the most interesting results from this exploration. 2D Heatmaps will be good for this: Start with finding a well performing set of hyper-parameters, then change two at a time in a range that shows good and bad performance.\n", + "\n", + "3. Show and argue for the advantages and disadvantages of using a neural network for regression on your data\n", + "\n", + "4. Show and argue for the advantages and disadvantages of using a neural network for classification on your data\n", + "\n", + "5. Show and argue for the advantages and disadvantages of the different gradient methods and learning rates when training the neural network" + ] + }, + { + "cell_type": "markdown", + "id": "97736190", + "metadata": { + "editable": true + }, + "source": [ + "### Optional (Note that you should include at least two of these in the report):\n", + "\n", + "1. Implement Logistic Regression as simple classification model case (equivalent to a Neural Network with one layer)\n", + "\n", + "2. Compute the gradient of the neural network with autograd, to show that it gives the same result as your hand-written backpropagation.\n", + "\n", + "3. Compare your results with results from using a machine-learning library like pytorch (https://docs.pytorch.org/tutorials/beginner/basics/buildmodel_tutorial.html)\n", + "\n", + "4. Use a more complex classification dataset instead, like the fashion MNIST (see )\n", + "\n", + "5. Use a more complex regression dataset instead, like the two-dimensional Runge function $f(x,y)=\\left[(10x - 5)^2 + (10y - 5)^2 + 1 \\right]^{-1}$, or even more complicated two-dimensional functions (see the supplementary material of for an extensive list of two-dimensional functions). \n", + "\n", + "6. Compute and interpret a confusion matrix of your best classification model (see )" + ] + }, + { + "cell_type": "markdown", + "id": "8f4d4afc", "metadata": { "editable": true }, @@ -496,7 +577,7 @@ }, { "cell_type": "markdown", - "id": "d3731e2c", + "id": "404319bc", "metadata": { "editable": true }, @@ -527,7 +608,7 @@ }, { "cell_type": "markdown", - "id": "6c7c5340", + "id": "a23505fa", "metadata": { "editable": true }, diff --git a/doc/Projects/2025/Project2/ipynb/ipynb-Project2-src.tar.gz b/doc/Projects/2025/Project2/ipynb/ipynb-Project2-src.tar.gz index 84cf6770e2fc79a5615c6c7e3e3ca4b953ea6862..f9f9fa34b7ef6569f88aaf9a6b24f828e88d1f96 100644 GIT binary patch literal 194 zcmV;z06qU7iwFQO*X?Kk1MSaC3c@fD2H>uHia9|^nxdWrcb-H;z@+hds+H@XSAPtfhrrKDb&dP}+$?>kH&YH{#^tNOprN wpwz-nO)%otOCx}*0eD$TC$-|&urvB>cx$8Z*Y9|q=Xqax0C74MzW@jT01YNoW&i*H literal 193 zcmV;y06za8iwFR~p6qA<1MSaC3c@fD2H>uHia9}