Machine learning for NLP: the Fundamentals
Code APOGÉE : SL5BE021 | 6 ECTS | Validation : CC + examen
Horaires hebdomadaires : 1,5h CM | Mutualisé avec : M1 LI (Linguistique)
(Cours en anglais)
Ce cours fournit les concepts fondamentaux de la classification supervisée via les méthodes d’apprentissage profond, avec des exemples typiques en traitement automatique des langues naturelles.
Programme
- Concepts généraux pour la classification supervisée
- Méthodologie
- Métriques d’évaluation
- Un premier classificateur : k-NN
- Modèles linéaires et log-linéaires
- Séparabilité linéaire
- Prédiction avec un classificateur (log-)linéaire
- Algorithme d’apprentissage du perceptron
- Méthodes à noyaux
- Régression logistique
- Extension aux perceptrons multicouches
- Non-linéarité
- Réseau de neurones entièrement connecté à propagation avant
- Théorème d’approximation universelle
- L’apprentissage comme minimisation de perte
- Fonctions de perte usuelles
- Descente de gradient stochastique
- Algorithme de rétropropagation
- Représentations vectorielles
- Plongements de mots comme caractéristiques denses
- Apprentissage de plongements de mots
Travaux pratiques
Les séances de travaux pratiques illustreront le cours, en introduisant en particulier :
- La manipulation de tenseurs en numpy/pytorch
- Les bibliothèques sklearn et pytorch
Bibliographie
- Daumé III, H. An introduction to Machine Learning. Disponible en ligne : http://ciml.info/
- Goldberg, Y. (2016). Neural Network Methods in Natural Language Processing. Morgan & Claypool Publishers. Version préliminaire disponible : A primer on neural network models for natural language processing (http://u.cs.biu.ac.il/~yogo/nnlp.pdf)
- Goodfellow, I., Bengio, Y. & Courville, A. (2016). Deep Learning. Cambridge : MIT Press. Disponible en ligne : http://www.deeplearningbook.org/