No Code : des capteurs virtuels sans environnement Python

La voie habituelle vers un modèle de capteur passe par un environnement Python, un notebook et un ensemble de bibliothèques qui doivent être compatibles entre elles. Dans Data Sensors, le capteur virtuel se construit dans l'application même où les données de mesure sont analysées.

Ce dont il n'y a pas besoin ici

Pas d'installation Python ni de versions de paquets à faire concorder. Pas de notebook à maintenir. Pas de scripts d'entraînement à synchroniser entre postes de travail. Pas de chaîne de conversion d'un format d'entraînement vers un format de déploiement. Data Sensors est une application de bureau pour Windows et macOS.

Détermination automatique des hyperparamètres

La qualité du modèle dépend des hyperparamètres : nombre d'arbres, profondeur maximale, taux d'apprentissage, nombre de couches, neurones par couche. Leur détermination constitue normalement une étape de travail à part, itérative. Dans Data Sensors, elle est automatisée : les trois types de modèles optimisent eux-mêmes leurs hyperparamètres, par optimisation bayésienne, Random Search, Grid Search ou une stratégie par modèle de substitution, selon le temps de calcul disponible.

Présélectionner la famille de modèles n'est pas nécessaire non plus. La compétition de modèles entraîne en parallèle des candidats random forest, XGBoost et réseau de neurones sur les mêmes canaux et les présente côte à côte dans un classement, avec RMSE et R² de validation, temps d'entraînement et diagnostic d'ajustement.

Configuration de la compétition de modèles montrant les candidats Random Forest, XGBoost et réseau de neurones sélectionnés pour l'entraînement

Grandeurs d'entrée dérivées : une formule plutôt qu'un script

Il arrive que la grandeur d'entrée pertinente ne soit pas enregistrée elle-même mais découle de deux autres (une puissance à partir du couple et du régime, par exemple). Les signaux calculés répondent à ce besoin : vous saisissez l'expression dans un éditeur de formules, le résultat apparaît comme un signal ordinaire et devient disponible comme canal d'entrée pour l'entraînement.

Panneau des signaux calculés définissant un nouveau signal nommé power à partir de l'expression torque multiplié par motor_speed

Génération de code

L'export produit, à partir du modèle entraîné, une implémentation autonome de la fonction de prédiction en C, C++, Python ou MATLAB, sans dépendance à Data Sensors et sans bibliothèque d'exécution. Le résultat est du code source ordinaire, qui peut être versionné, relu et compilé comme n'importe quel autre.

Ce que No Code ne signifie pas

Le travail de programmation disparaît, pas le savoir d'ingénieur. Quels canaux sont plausibles en entrée, si une mesure couvre la plage de fonctionnement pertinente et si un résultat est physiquement plausible : cela reste apprécié par le service compétent. Data Sensors remplace la chaîne d'outils, pas l'évaluation technique du modèle.

Ce qui aide sur ce point, c'est que l'évaluation ne se fait pas sur les données d'entraînement mais sur une part de validation réservée, et pour des jeux de données suffisamment grands sur une part de test distincte, utilisée ni pour l'entraînement ni pour la sélection du modèle. Un résultat trop optimiste se remarque donc avant que le modèle n'arrive sur un calculateur.