diff --git a/01_introduction.ipynb b/01_introduction.ipynb index ad2a7048941d57cd3dba651177b2cd6459726cda..4646eba1f4eb4c38ee55e94d6e06420e9a715d96 100644 --- a/01_introduction.ipynb +++ b/01_introduction.ipynb @@ -615,7 +615,7 @@ "\n", "Examples of supervised learning:\n", "\n", - "- Classification: predict the class `is_yummy` based on the attributes `alcohol_content`,\t`bitterness`, \t`darkness` and `fruitiness` (a standard two class problem).\n", + "- Classification: predict the class `is_yummy` based on the attributes `alcohol_content`,\t`bitterness`, \t`darkness` and `fruitiness` (a standard two-class problem).\n", "\n", "- Classification: predict the digit-shown based on a 8 x 8 pixel image (a multi-class problem).\n", "\n", @@ -696,7 +696,7 @@ "metadata": {}, "source": [ "<div class=\"alert alert-block alert-danger\">\n", - "<strong>TODO:</strong> transform to a set of small exercises (instead of a tutorial/example as it is now).\n", + "<strong>TODO:</strong> hands-on or exercise? If latter, then transform to a set of small exercises and mark solutions cells w/ <code>#SOLUTION</code> first line.\n", "</div>\n", "\n" ] @@ -1290,15 +1290,6 @@ "# Exercise section 1" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "<div class=\"alert alert-block alert-danger\">\n", - "<strong>TODO:</strong> I propose to start separate excercise session 2 w/ SVC here (so if someone is stuck on previous, he/she can skip).\n", - "</div>" - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -1318,6 +1309,17 @@ "</div>" ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.svm import SVC\n", + "classifier = SVC()\n", + "# ..." + ] + }, { "cell_type": "code", "execution_count": 19, @@ -1333,9 +1335,7 @@ } ], "source": [ - "from sklearn.svm import SVC\n", - "# ...\n", - "# REMOVE or HIDE the following lines in the target script\n", + "#SOLUTION\n", "classifier = SVC()\n", "classifier.fit(input_features, labels)\n", "\n", @@ -1985,7 +1985,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.6" + "version": "3.7.2" } }, "nbformat": 4, diff --git a/02_classification.ipynb b/02_classification.ipynb index 1683c6d645dd5b641efff73e61faef6f261844ef..368e108fccf14a91fb2bff1367eb53f046647616 100644 --- a/02_classification.ipynb +++ b/02_classification.ipynb @@ -326,18 +326,6 @@ "In `scikit-learn` the weights of a trained linear classifier are availble via the `coef_` attribute. Extract the weights from the `LogisticRegression` classifier example from the last script and try them out in your weighted sum scoring function." ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Solution\n", - "<div class=\"alert alert-block alert-danger\">\n", - "<strong>TODO:</strong> keep only in \"solutions\" script variant.\n", - "\n", - "TODO: write script which removes the solution proposals and creates a new notebook.\n", - "</div>\n" - ] - }, { "cell_type": "code", "execution_count": 6, @@ -408,7 +396,7 @@ } ], "source": [ - "# TODO: move to solutions script\n", + "#SOLUTION\n", "from sklearn.linear_model import LogisticRegression\n", "classifier = LogisticRegression()\n", "input_features = beer_data.iloc[:, :-1]\n", @@ -694,7 +682,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "**TODO: maybe remove the plot, better: animated gif**" + "<div class=\"alert alert-block alert-danger\"><p>\n", + " <strong>TODO</strong>: remove the plot or, better, insert animated gif w/ bettter surface image than wireframe\n", + "</p></div>" ] }, { @@ -1278,6 +1268,15 @@ "## Exercise section 2" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<div class=\"alert alert-block alert-danger\"><p>\n", + " <strong>TODO</strong>: split into smaller steps and solutions, rm tuning of classifiers parameters if not necessary (they won't know what it does).\n", + "</p></div>" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -1829,7 +1828,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.6" + "version": "3.7.2" } }, "nbformat": 4, diff --git a/index.ipynb b/index.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..eeab403a24bb7ef60c074dbb9d7fa686b146540f --- /dev/null +++ b/index.ipynb @@ -0,0 +1,67 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<div class=\"alert alert-block alert-danger\">\n", + "Course layout w/ local notebooks links .. anything in scope of org/general comments goes also here.\n", + "</div>\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<div class=\"alert alert-block alert-danger\"><p>\n", + "<strong>TODOs</strong>\n", + "<ol>\n", + "<li>Write script which removes the solution proposals (cells starting with <code>#SOLUTION</code>) and creates a new notebook.</li>\n", + "</ol>\n", + "</p></div>\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Course scripts\n", + "\n", + "<ol>\n", + " <li><a href=\"01_introduction.ipynb\">Introduction</a></li>\n", + " <li><a href=\"02_classification.ipynb\">Classification</a></li>\n", + " <li>...</li>\n", + " \n", + "</ol>" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "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.2" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}