Rappels sur scikit-learn et le machine learning

Links: notebook, html, PDF, python, slides, GitHub

Quelques exercices simples sur scikit-learn. Le notebook est long pour ceux qui débutent en machine learning et sans doute sans suspens pour ceux qui en ont déjà fait.

from jyquickhelper import add_notebook_menu
add_notebook_menu()
%matplotlib inline

Des données synthétiques

On simule un jeu de données aléatoires.

from numpy import random
n = 1000
X = random.rand(n, 2)
X[:5]
array([[0.25324685, 0.97811479],
       [0.32928095, 0.40816327],
       [0.44178633, 0.51600754],
       [0.76893618, 0.34170807],
       [0.00282938, 0.49371721]])
y = X[:, 0] * 3 - 2 * X[:, 1] ** 2 + random.rand(n)
y[:5]
array([-0.18666718,  1.29326419,  1.64748543,  2.39341326,  0.06048883])

Exercice 2 : caler une régression linéaire

Et calculer le coefficient R^2.

Exercice 5 : un peu de math

Comparer les deux modèles sur les données suivantes ? Que remarquez-vous ? Expliquez pourquoi ?

X_test2 = random.rand(n, 2) + 0.5
y_test2 = X_test2[:, 0] * 3 - 2 * X_test2[:, 1] ** 2 + random.rand(n)

Exercice 6 : faire un graphe avec…

Le nuage de points du premier et second jeu, les prédictions des deux modèles, une légende, un titre… avec pandas ou directement avec matplotlib au choix.

Exercice 8 : augmenter le nombre de features et régulariser une régression logistique

L’objectif est de regarder l’impact de la régularisation des coefficients d’une régression logistique lorsque le nombre de features augmentent.