Dessine moi une série temporelle

Qu'est-ce que c'est ?

Ce site permet de dessiner à l'aide de la souris ou du doigt (sur smartphone) une série temporelle, ou, plus simplement une fonction continue.

Un algorithme va ensuite essayer de prévoir les valeurs futures de cette fonction. Lorsque les calculs sont terminés, les points prévus apparaissent en verts. Le bouton "charger fonction d'exemple" permet de dessiner automatiquement une fonction cosinus.

Le graphique, en bas de la page, permet de se rendre compte de l'apprentissage du modèle : plus la valeur est faible, plus le modèle sera précis ! Normalement, un réseau de neurones s'entraîne sur plusieurs heures sur des tâches complexes, mais ici quelques secondes suffisent.

Et techniquement ?

Le site utilise Tensorflow JS pour la création du modèle. Il s'agit d'un réseau de neurones convolutif multi-couches qui suit l'architecture suivante : conv1d -> max pooling -> conv1d -> average pooling avec un optimiseur Adam et une fonction de perte d'erreur quadratique moyenne.

Un algorithme dédié à l'interpolation des points et à la préparation du jeu de données a été spécifiquement écrit pour les besoins de cette démonstration. p5js permet de gérer la zone de dessin et la bibliothèque chart.js génère le graphique de l'évolution de la perte du modèle.

Pour plus d'informations sur cette implémentation, consultez le fichier Javascript de cette page : script.js.