Objectif
Les objets connectés produisent des masses considérables de données.
Mais, que peut-on en faire ?
La science des données apporte les outils de valorisation permettant de transformer des données en prises de décision et d'introduire de l'IA dans l'objet connecté. Dans notre exemple, il s'agit de l'identification d'une activité humaine.
Dans ce cours, vous allez comprendre les possibilités offertes par la science des données lorsqu'elle est mise en œuvre sur des signaux issus de capteurs physiques.
Cet objectif est atteint au cours d'une progression en trois étapes.
Contenu du cours
Partie 2
Cette partie aborde la visualisation des données afin d'en comprendre les structures et donc les propriétés ou caractéristiques permettant d'atteindre l'objectif d'identification des classes. Cette étape montre les bonnes propriétés des données transformées selon des méthodes et approches classiques en traitement du signal (feature engineering), alors que les signaux bruts apparaissent très confus.
Partie 3
En conséquence, dans la partie suivante, des algorithmes rudimentaires, à savoir linéaires, sont présentés. Ils conduisent à une très bonne identification des activités à partir des données transformées. La solution obtenue est satisfaisante en termes de décision mais pas en termes de consommation d'énergie. Calculer en permanence et en temps réel les transformations des signaux est bien trop énergivore pour la batterie d'un objet autonome.
Partie 4
C'est pourquoi la dernière partie se focalise sur les signaux bruts. Dans ce cas, seul un algorithme d'apprentissage profond ou deep learning intégrant des couches dites convolutionnelles permet d'attendre des qualités de résultats comparables. C'est la motivation d'une introduction élémentaire au deep learning.
Activités préalables
Avant de vous lancer dans cette aventure où vous allez pratiquer ces algorithmes, il est nécessaire d'installer l'environnement informatique nécessaire. Il est simple de charger la distribution Anaconda de Python 3 sous Linux, Mac OS ou Windows, puis d'installer pour le deep learning avec la commande .
Si vous voulez pleinement profiter des apprentissages de ce cours afin de pouvoir en réinvestir les compétences sur d'autres données, dans d'autres situations, certaines compétences préalables sont nécessaires en programmation Python et en statistique. Celles-ci sont regroupées dans 3 tutoriels :
une introduction à Python, ou plutôt une sélection des commandes Python utiles au statisticien ou data scientist, est disponible dans le tutoriel
ML4IoT-Intro-Python.ipynb
;de même, les commandes indispensables à la préparation des données ou data munging et utilisant la librairie sont l'objet du 2 tutoriel
ML4ioT-Intro-Pandas.ipynb
;enfin, comme la science des données débute par des éléments de statistique, quelques rappels de statistique descriptive élémentaire sont accessibles dans le début du 3 tutoriel
ML4IoT-Tutorial-Ozone.ipynb
qui servira également de fil rouge pour introduire les autres méthodes utilisées.
Tous les tutoriels de ce cours sont des notebooks Jupyter ou calepins très facilement exécutables une fois chargés et Python installé. Ils ont tous été développés sous Ubuntu 16.04 Xenial, mais sont compatibles avec Windows ou Mac OS.
Finalement, les compétences en informatique ne sont pas complètement indispensables, vous pouvez aussi suivre ce cours en vous focalisant sur les résultats, leur interprétation, sans détailler la mise en œuvre informatique et sans maîtriser les subtilités du langage Python.
Bon courage pour cette aventure !
Références
Anguita D., Ghio A., Oneto L., Parra X., Reyes-Ortiz J.L. (2013). A Public Domain Dataset for Human Activity Recognition Using Smartphones, ESANN 2013 proceedings, European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning, 437-442.