lundi 24 décembre 2018

Packages Python pour le Deep Learning

Ce document fait suite au support de cours consacré aux "Perceptrons simples et multicouches" et au tutoriel sur les "Packages R pour le Deep Learning - Perceptrons". L'objectif est de montrer un processus complet d'analyse prédictive à l'aide de successions de commandes simples sous Python : importer les données, les préparer ; construire et configurer le réseau ; estimer ses coefficients (poids synaptiques) à partir d'un ensemble de données étiquetées ; prédire sur un second échantillon, soit aux fins de déploiement, soit aux fins d'évaluation des performances.

La tâche est en théorie relativement aisée. Le véritable enjeu pour nous est d'identifier sans ambiguïtés, d'une part les bonnes commandes, d'autre part les paramètres idoines pour construire précisément le réseau que nous souhaitons appliquer sur les données. En pratique, ce n'est pas si évident que cela parce qu'identifier de la documentation pertinente sur le web n'est pas toujours facile. On retrouve souvent le même tutoriel avec la sempiternelle base MNIST, qui est littéralement accommodée à toutes les sauces. Pouvoir généraliser la démarche à d'autres bases devient une vraie gageure. J'espère y arriver en schématisant au mieux les étapes, et surtout en donnant au lecteur la possibilité de faire le parallèle avec la même mission réalisée sous R.

Nous étudierons les packages "scikit-learn", "keras / tensorflow" et "h2o". Nous dirons un mot également des librairies "MXNET", "PyTorch" et "caffe".

Mots-clés : packages python, deep learnin, perceptron simple, perceptron multicouche, scikit-learn, keras, tensorflow, h2o, mxnet, pytorch, caffe, réseaux de neurones
Didacticiel : Perceptrons - Packages Python
Données et programme Python : spam dataset python
Références :
Tutoriel Tanagra, "Deep Learning : perceptrons simples et multicouches", novembre 2018.