Quel type de variables peut-on utiliser ?
Le moteur ATLAS construisant des modèles fonctionnels, il ne peut s'accommoder que de variables quantitatives. Il faut donc prétraiter toute variable non numérique avant de faire appel au moteur. Le choix du codage doit être fait en s'attachant à donner un sens logique aux variables dans le contexte étudié.
Si l'on utilise ATLAS-Lab ou ATLAS-Kernel avec des fichiers texte, les prétraitements nécessaires devront être effectués en amont,
Si l'on utilise ATLAS-Kernel en lisant des données issues d'une base de données via une connexion ODBC, l'API ATLAS permet d'effectuer un certain nombre de codages élémentaires sur les variables.
L'utilisateur d'ATLAS-Server trouvera dans le gestionnaire de variables explicatives qui y est intégré toutes les fonctions utiles pour coder une donnée datée et effectuer un certain nombre d'opérations simples sur les variables.
Les variables doivent-elles être indépendantes ?
ATLAS est un outil de modélisation utilisant des concepts de régularisation statistique. A la différence des méthodes statistiques usuelles, la régularisation statistique permet de considérer simultanément un grand nombre de variables et un nombre restreint de données d'historique sans perte de performances malgré l'augmentation de la dimension du problème et l'existence de variables fortement corrélées. Ces variables corrélées permettent par ailleurs de détecter les données aberrantes et les données précieuses, et de gérer les données manquantes sans perte d'information. Il n'est donc pas nécessaire de s'assurer de l'indépendance des variables utilisées avant de faire appel au moteur ATLAS.
Comment déterminer les interactions à prendre en compte ?
L'utilisateur n'a pas à se poser la question de savoir quelles sont les interactions les plus significatives vis à vis du phénomène qu'il étudie. Dès qu'il travaille à un ordre supérieur à 1, ATLAS génère automatiquement tous les produits croisés entre variables jusqu'à l'ordre demandé et les prend en compte, au même titre que les variables de base, comme des entrées potentielles du modèle. Il faut cependant bien être conscient que plus on augmente l'ordre du modèle, plus on augmente le nombre de variables d'entrée et plus le temps de calcul devient critique. Par ailleurs, pour obtenir des résultats généralisables, il est bon que le nombre d'entrées utilisées reste raisonnable.
Y-a-t-il des volumes limites en nombre de variables et nombre d'enregistrements ?
Le moteur ATLAS n'a pas de limites intrinsèques : il n'est limité que par les performances de la machine sur laquelle il est exploité. Ceci étant, le paramètre dimensionnant dans l'algorithme de calcul est le nombre de variables mises en jeu. De ce fait, l'utilisateur n'est pas limité par le nombre d'événement et peut exploiter tous les enregistrements dont il dispose pour construire le modèle sans se pénaliser outre mesure. Par contre, le temps de calcul croit de manière exponentielle avec le nombre de variables prises en compte. Sur un PC standard, il ne faut pas excéder quelques milliers de variables tous ordres confondus, ce qui correspond typiquement à 80 variables de base pour des modèles d'ordre 2, ou à 15 variables de base pour des modèles d'ordre 4.
Comment sont traitées les valeurs manquantes et non renseignées ?
Le moteur ATLAS ne gère pas automatiquement les valeurs manquantes. Par défaut, les événements correspondants ne sont pas pris en compte dans l'analyse.
A quoi servent les espaces d'apprentissage et de généralisation ?
Ces deux espaces sont utilisés par ATLAS pour obtenir des modèles présentant le meilleur compromis précision / robustesse. En effet, une des difficultés des méthodes de régularisation réside dans le choix de la valeur du niveau de régularisation
. La démarche utilisée dans ATLAS repose sur une méthode de validation croisée généralisée. Schématiquement, elle consiste à :
- Séparer les données disponibles en deux échantillons A et B,
- A partir d'une approximation de l'erreur fondée sur la partie A, calculer les systèmes pour diverses valeurs de
,
- Comparer les solutions à l'aide d'une approximation de l'erreur fondée sur la partie B.
Concrètement, sur l'espace d'apprentissage, le moteur ATLAS recherche le polynôme qui permet d'obtenir la sortie réelle avec la meilleure précision pour un coefficient de régularisation
donné. ATLAS détermine ensuite le coefficient de régularisation
qui minimise l'erreur faite sur la prévision des vecteurs de l'espace de généralisation, vecteurs qui par définition n'ont pas été utilisés pour générer ce modèle. Le premier modèle est donc ajusté par l'intermédiaire du terme en
, de manière à réaliser une balance optimale entre l'erreur faite sur les données d'apprentissage et l'erreur faite lorsque des données non apprises sont traitées.
Comment créer les espaces d'apprentissage et de généralisation ?
ATLAS utilise deux jeux de données pour générer un modèle : un jeu d'apprentissage et un jeu de généralisation. L'utilisateur va donc devoir séparer en deux groupes les données dont il dispose pour générer le modèle. En règle générale, l'espace de généralisation doit être 3 à 5 fois plus petit que l'espace d'apprentissage.
Le moteur ATLAS applique sur l'espace d'apprentissage les filtrages et codages courants pour le calcul d'un modèle et durcit le modèle obtenu sur l'espace de généralisation. Il est donc important que ces deux espaces soient le plus représentatifs possible du comportement du système pour optimiser la qualité et la robustesse des modèles générés.
L'utilisateur d'ATLAS-Server a à sa disposition plusieurs méthodes pour créer les différents espaces de travail. Toute population (groupe d'événements prédéfini) peut être utilisée intégralement ou échantillonnée de manière aléatoire ou séquentielle, dans des pourcentages choisis par l'utilisateur pour construire les espaces de travail. L'utilisateur peut aussi construire son propre échantillonnage s'il le souhaite.
Peut-on modifier, ignorer , ajouter facilement des variables ?
L'API d'ATLAS Kernel permet d'effectuer ces opérations par programmation
ATLAS-Lab utilise en entrée des fichiers plats, qu'il faut reconstruire à chaque fois que l'on veut ajouter, ignorer ou modifier une variable.
ATLAS-Server offre une grande souplesse dans le choix des variables d'entrée, afin de laisser l'utilisateur se concentrer sur son problème métier.
Au niveau projet, ATLAS-Server permet à tout instant d'introduire une nouvelle variable, ou de modifier les valeurs prises par une variable que ce soit ponctuellement ou sur l'ensemble de l'historique.
Au niveau modélisation, ATLAS-Server permet en quelques clicks d'indiquer les variables utilisées, d'en ajouter ou d'en supprimer, laissant à l'analyste la possibilité d'évaluer l'impact des différents stratégies.
Peut-on utiliser ATLAS pour faire de la classification ?
La technologie ATLAS peut être utilisée pour traiter n'importe quel problème de modélisation prédictive, dont les problèmes de classification ne sont qu'un cas particulier.
Classiquement, on codera l'appartenance ou non à la classe par une variable à 2 états (typiquement 1 et 0), que l'on fera apprendre à ATLAS
Il faut aussi constituer la base de données de travail en faisant en sorte de présenter des proportions équilibrées entre les différentes classes.
Sous quelle forme sont présentés les résultats ?
L'API du moteur ATLAS permet d'avoir accès aux coefficients des différentes variables prises en compte dans le modèle, aux erreurs faites sur les différents espaces et de construire des fichiers contenant les valeurs réelles du phénomène étudiées et les valeurs prévues par le modèle construit.
Dans ATLAS-Lab, les fichiers sont automatiquement construits à la demande de l'utilisateur, et l'outil de visualisation intégré permet d'avoir un aperçu des contributions des variables ou des évolutions comparées des valeurs attendues et des valeurs prévues.
ATLAS-Server est quant à lui directement interfacé avec Microsoft Excel pour tirer pleinement parti de la puissance de représentation et des fonctions d'analyse statistique intégrées dans ce tableur.
A chaque modèle construit est associé un fichier de synthèse contenant :
- une feuille de calcul où l'on trouve les valeurs réelles et prévues avec les erreurs partielles point à point et les statistiques de bases associées. Le filtre mis en place permet d'affiner l'analyse sur les différents espaces ou sur un sous-groupe d'événements intéressant plus particulièrement l'analyste.
- une feuille graphique présentant les courbes comparatives entre les valeurs réelles et les valeurs prévues par ATLAS, en répercutant les filtrages choisis par l'utilisateur.
Est-il possible d'évaluer la justesse des résultats obtenus ?
Les valeurs des erreurs indiquent immédiatement à l'utilisateur si ATLAS a réussi à interpréter correctement le phénomène compte tenu des éléments qui lui ont été imposés. Si elles restent importantes quelle que soit la configuration des essais, il est probable que les variables choisies par l'utilisateur pour expliquer son phénomène ne sont pas assez pertinentes.
On ne peut juger de la robustesse d'un modèle que sur sa capacité à correctement prévoir les données qui n'ont pas été apprises. Par principe, la robustesse est acquise dès lors que les erreurs en prévision aveugle sont du même ordre de grandeur que les erreurs de généralisation puisque l'espace de généralisation sert justement à caler les paramètres du modèle pour le rendre apte à prévoir correctement les données non apprises. En pratique, ceci doit être tempéré par la taille et la représentativité de l'espace de test.
Est-il possible de connaître l'impact des variables dans le modèle ?
Une fois le modèle construit, ATLAS renvoie à l'utilisateur le poids de chacune des entrées utilisées, qui correspond au coefficient dont serait affectée la variable centrée normalisée.
Il est alors possible de calculer, outre le coefficient qui lui est affecté dans le polynôme, la contribution de chaque variable dans le modèle, c'est à dire la part que cette variable représente dans le polynôme généré. Le tri des variables suivant leurs contributions permet de déterminer quelles sont, pour un problème donné, les variables les plus dimensionnantes. Il faut cependant bien être conscient que la contribution est une notion locale, qui est difficile à exploiter en présence de phénomènes fortement non linéaires ou lorsque des variables fortement corrélées entre elles sont mises en jeu.
Les poids des variables d'entrée ainsi que leurs moyenne et écart type sont accessibles via l'API d'ATLAS-Kernel, ce qui permet de déterminer les indicateurs d'impact voulus.
Ces indicateurs et des indicateurs dérivés sont directement renvoyés par ATLAS-Lab et ATLAS-Server, pour analyse et interprétation.