Bibliographie
Lire ces deux chapitres d’un cours de machine learning de l’université de Stanford (orienté pour la classification d’images mais beaucoup d’idées restent les mêmes pour d’autres types de données) :
http://cs231n.github.io/classification/
http://cs231n.github.io/linear-classify/
Il faut surtout comprendre et arriver à bien distinguer les notions suivantes : « features » (caractéristiques), « labels » (classes), « feature extraction », familles de classifieurs (k-nn, arbre décisionnel, modèles linéaires, etc), « loss function » (fonction de coût), « hyperparameters » (hyperparamètres), « cross validation » (validation croisée). N’hésitez pas à compléter avec des recherches personnelles (cours/tuto en ligne, wikipedia, etc).
TP sur le Perceptron
Le TP/tuto sur le perceptron est disponible à cette adresse :
http://nbviewer.jupyter.org/github/kgourgou/Linear-Perceptron/blob/master/Perceptron-Algorithm.ipynb
(format notebook avec plusieurs cellules de code)
Vous devez comprendre chaque étape du tuto et reproduire les figures vous-même. Il n’y a pas de questions ni de rapport à rendre.
Conseils/Debug
– Pour ceux n’ayant pas d’installation de python, je recommande d’installer la distribution Anaconda Python 2.7 (dispo ici : https://www.continuum.io/downloads )
– installer le package python « seaborn »
– copier/coller chaque cellule de code les unes à la suite des autres dans un script python (.py)
– dans la 1ere cellule, effacer la ligne « %matplotlib inline » (qui n’est utile que si vous utilisez un notebook au lieu d’un script .py)
– pour visualiser la figure produite par une cellule de code, ajouter la ligne « pl.show() » à la fin de la cellule
– pour les utilisateurs de python 3 qui ont une erreur avec « xrange », utiliser « range » à la place
Mastane ACHAB (mastane.achab_at_telecom-paristech.fr)