Commit 2ebd7449 authored by Florent Chatelain's avatar Florent Chatelain
Browse files

up lab+hw

parent e35b50d5
......@@ -81,11 +81,11 @@ videoconference to the class every monday from 15:45 to 17:45.
- upload your lab 1 *short report* in the [chamilo assigment task](https://chamilo.grenoble-inp.fr/main/work/work_list.php?cidReq=PHELMA5PMSAST6&id_session=0&gidReq=0&gradebook=0&origin=&id=117582) (pdf file from your editor, or scanned pdf file of a handwritten paper;
code, figures or graphics are not required)
##### Homework before the first lab on **Monday, September 20**
- read and run the [introduction notebooks](https://gricad-gitlab.univ-grenoble-alpes.fr/chatelaf/ml-sicom3a/-/tree/master/notebooks/1_introduction/) `N1_Linear_Classification.ipynb` and `N2_Polynomial_Classification_Model_Complexity.ipynb`
- answer the questions of the notebook exercises and upload it (pdf file from your editor, or scanned pdf file of a handwritten sheet) under chamilo in the [assignment tool](https://chamilo.grenoble-inp.fr/main/work/work_list.php?cidReq=PHELMA5PMSAST6&id_session=0&gidReq=0&gradebook=0&origin=&id=117272) (those and only those who do not yet have an agalan account can send it to me by email):
- only text explanations are required, no need to copy/paste figure or graphics!
- must not exceed half a length of A4 paper
##### ~~Homework before the first lab on **Monday, September 20**~~
- ~~read and run the [introduction notebooks](https://gricad-gitlab.univ-grenoble-alpes.fr/chatelaf/ml-sicom3a/-/tree/master/notebooks/1_introduction/) `N1_Linear_Classification.ipynb` and `N2_Polynomial_Classification_Model_Complexity.ipynb`~~
- ~~answer the questions of the notebook exercises and upload it (pdf file from your editor, or scanned pdf file of a handwritten sheet) under chamilo in the [assignment tool](https://chamilo.grenoble-inp.fr/main/work/work_list.php?cidReq=PHELMA5PMSAST6&id_session=0&gidReq=0&gradebook=0&origin=&id=117272) (those and only those who do not yet have an agalan account can send it to me by email):~~
- ~~only text explanations are required, no need to copy/paste figure or graphics!~~
- ~~must not exceed half a length of A4 paper~~
##### ~~First course session will take place Monday afternoon, September 13 at Minatec M256 (face-to-face).~~
......
......@@ -277,7 +277,14 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.4"
"version": "3.7.9"
},
"widgets": {
"application/vnd.jupyter.widget-state+json": {
"state": {},
"version_major": 2,
"version_minor": 0
}
}
},
"nbformat": 4,
......
......@@ -162,10 +162,11 @@
%% Cell type:markdown id: tags:
### Exercice
- Recall what are the benefits of cross-validation w.r.t the simple validation approach
- Is the CV accuracy estimate consitent with the accuracy estimate obtained on the test set?
- Apply the same CV procedure to the iris data set (see and adapt notebook
[`2_knn/N2_iris_knn.ipynb`](https://gricad-gitlab.univ-grenoble-alpes.fr/chatelaf/ml-sicom3a/-/blob/master/notebooks/2_knn/N2_iris_knn.ipynb)). Compare your results with the simple validation approach (fixed training and test set) used in [`2_knn/N2_iris_knn.ipynb`](https://gricad-gitlab.univ-grenoble-alpes.fr/chatelaf/ml-sicom3a/-/blob/master/notebooks/2_knn/N2_iris_knn.ipynb)
%% Cell type:code id: tags:
......
......@@ -139,19 +139,22 @@
![](data:image/png;base64,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0qVLtVOnTh0xvnbo0KGAMWPGVPznn38K+vn5cc2aNe999NFHcY0bNw45c+bM4dKlS2eoYZ9++umqERERicOGDbthS7reUu7Ro0cHPPfccyW15U5OTvYZMGDAo8ePHy/EzFSsWLH033777VTx4sUN9pZNRyc/oS8F8DAFChTgzZs3l4yPj3dLx6JEiRLp06dPL+dsPCtXrgy6cOGCSyaL7t69S88880y1ESNGXLtw4ULs2bNnj0RGRl5LSkryefLJJ5O+/vrrEmrYhIQE3+jo6MBnn302yZ40vKHcMTExvsblnjFjRtmyZcumnTx58uipU6eOLF269FyBAgWcciuk+vHU0fFmdOHmYXx9fXngwIHXZsyYke1DfPLkyQJNmzatXr169ZCmTZtWP3XqVAEA6NWrV/DgwYMr1q9fv2aFChXqLFu2rKS5+Pv165ewcePGUlevXvXVng8KCrq2cOHCUnXq1KlVs2bNkP79+z+anp6O9PR09OrVK7hatWq1q1evHvL222+XXbZsWcnY2NjCAwcOrFKzZs2Q27dv065duwo3atSoRu3atWuFh4dXO3/+vD8A7Nq1q3CNGjVCwsLCas6ZM6esqTx99tlnpRo0aHC7f//+mR/uZ555JrlRo0YpERERievWrSulnl+1alWJFi1a3CpatKjVkUlQUFCmtYO5cgNAXin3k08+ece43PHx8f7ly5fPlEb16tVLLVSoEAPA/PnzS1evXj2kRo0aId27d68MWG5Dw4YNq9CkSZPqL730UoVbt2759OnTJzg0NLRWrVq1QlauXFkC7uEz60HyFN5WHsA7y6QLt5xgwoQJ/3733XelEhISsnyIR44cWal///4JJ0+ePPrss88mREZGVlSvXb161T8qKur4hg0bTv3nP/8pby7uwMDAjH79+l2fOXNmFuF5+fLl2+vXry8VFRV1/Pjx40d9fHz4008/Lb13797C8fHx/qdOnTpy8uTJo6NGjUp44YUXboSGht796quvzh4/fvyov78/xo4dW2nDhg1njhw5cmzQoEHXx48fXx4Ahg4dGjxnzpwLMTExx83lKTY2tlCDBg3umrrWq1evW7GxsYWvXLniCwDr1q0r1a9fv0Rb6vGhhx7KnD81V+4DBw4UzCvlHjBgQLxxuOHDh1+fN2/eQ2FhYTXHjh37yOHDhwMAICoqquCsWbMe3rFj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)
%% Cell type:markdown id: tags:
## Exercice:
- Explain why the prediction performances estimated by non-nested CV
1. Explain why the prediction performances estimated by non-nested CV
is optimistic with respect to the nested CV ones?
- Which estimator do you think most reliable for the test error?
2. Which estimator do you think most reliable for the test error?
A current alternative in machine learning is to split the original dataset in **three**: a *training* set to fit the algorithm, a *validation* set to optimize the hyperparameters (note that training and validation sets can be split repeatdly in a cross-validation framework), and a *test* set used only to evaluate the test error.
- Why use a test set in addition to the validation set?
- What are the benefits or disavantages of nested cross-validation w.r.t. the training/validation/test split approach?
- Implement the test/validation/test approach on this example and compare with the nested cross-validation (*hint:* you may use `train_test_split()`, `GridSearchCV()`, `cross_val_score()` sklearn functions). Compare and interpret your results.
A current alternative in machine learning is to split the original dataset to get a **separate test set**.
A standard (i.e. non nested) cross-validation procedure can then be applied on the remaining data set. The samples in the test set are now only used to evaluate the test error.
<!--In practice, this often requires to split the original dataset in three: a training set to fit the algorithm, a validation set to optimize the hyperparameters (note that training and validation sets can be split repeatdly in a cross-validation framework), and a test set used only to evaluate the test error.-->
This is different to nested cross-validation where the test samples used in the outer-loop are also used in the inner-loop to train or validate the model.
3. Why use a separate test set in addition to the validation set?
4. What are the benefits (or disavantages) of nested cross-validation w.r.t. the ?
5. **Optional:** Implement the *separate test set* approach on this example and compare with the nested cross-validation (*hint:* you may use `train_test_split()`, `GridSearchCV()`, `cross_val_score()` sklearn functions). Compare and interpret your results.
%% Cell type:code id: tags:
``` python
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment