Fonctionnalités de SAS Visual Data Mining et Machine Learning

Programmation interactive dans un environnement de développement web

  • Une interface visuelle pour l'ensemble du cycle de vie analytique.
  • Interface interactive de type glisser-lâcher ne nécessitant aucune programmation, même si cela reste possible.
  • Création automatique de code à chaque nœud.
  • Choisissez des modèles basés sur les meilleures pratiques (basiques, intermédiaires ou avancées) pour démarrer rapidement avec des tâches d'apprentissage automatique ou profitez de notre processus de modélisation automatisé.
  • Rapports d’interprétabilité tels que, LIME, ICE et Kernel SHAP.
  • Partagez des informations de modélisation via un rapport PDF.
  • Exploration des données depuis Model Studio et lancement direct dans SAS Visual Analytics.
  • Modification des modèles importés depuis SAS Visual Analytics dans Model Studio.
  • Visualisation des données de chaque nœud dans Model Studio.
  • Exécutez le code batch SAS® Enterprise Miner 14.3 dans Model Studio.
  • Environnement collaboratif facilitant le partage des données, du code, des annotations et des bonnes pratiques entre différents profils utilisateurs.
  • Création, gestion et partage de contenus, et gestion des autorisations d'accès correspondantes via SAS Drive.
  • Outil de visualisation de l'historique SAS affichant les relations entre les décisions, les modèles et les données sous forme graphique.

Automatisation intelligente avec surveillance humaine

  • API publique pour automatiser de nombreuses étapes de modélisation manuelles et complexes afin de créer des modèles d’apprentissage automatique, du data wrangling à l’ingénierie des fonctionnalités, en passant par la sélection d’algorithmes et le déploiement.
  • Nœud d’ingénierie automatique des fonctionnalités pour le nettoyage, la transformation et la sélection automatiques des fonctionnalités des modèles.
  • Nœud de modélisation automatique pour sélectionner automatiquement le meilleur modèle à l’aide d’un ensemble de routines d’optimisation et de réglage automatique sur plusieurs techniques.
  • Ajustez de manière interactive l’élagage et le fractionnement des nœuds de l’arbre de décision.
  • Suggestions automatisées de préparation des données à partir du méta-apprentissage.
  • Génération automatisée de pipelines avec une capacité de personnalisation complète.

Génération du langage naturel

  • Affichez les résultats dans un langage simple pour faciliter la compréhension des rapports, y compris l’évaluation et l’interprétabilité des modèles.

Prise en charge intégrée des langages Python et R

  • Possibilité d'intégrer du code open source dans une analyse et d'appeler des algorithmes open source depuis Model Studio.
  • Nœud de code open source dans Model Studio indépendant des versions Python ou R.
  • Gérez les modèles Python dans un référentiel commun dans Model Studio.

Deep learning avec Python (DLPy)

  • Création de modèles de deep learning pour les séries chronologiques, l'analyse d'images, de textes et de sons à l'aide de Jupyter Notebook.
  • Disponibilités d'API de haut niveau sur GitHub pour :
    • Les réseaux de neurones profonds.
    • La classification des images et la régression.
    • La détection d'objets.
    • Les tâches RNN : classification de texte, génération de texte et étiquetage de séquence.
    • Le traitement et la modélisation de séries chronologiques RNN.
  • Prise en charge d'architectures réseau prédéfinies, telles que LeNet, VGG, ResNet, DenseNet, Darknet, Inception, ShuffleNet, MobileNet, YOLO, Tiny YOLO, Faster R-CNN et U-Net.
  • Importation et exportation de modèles de deep learning au format ONNX.
  • Utilisez les modèles ONNX pour noter de nouveaux ensembles de données dans divers environnements en tirant parti d’Analytic Store (ASTORE)

Procédures SAS (PROC) & actions CAS

  • Interface de programmation (SAS Studio) permettant au service informatique ou aux développeurs d'accéder à un serveur CAS, de charger ou d'enregistrer des données directement depuis un serveur CAS, et de prendre en charge le traitement local et distant sur un serveur CAS.
  • Possibilité pour les programmeurs Python, Java, R, Lua, Scala, et l'IT d'accéder aux données et de les manipuler à partir d'un serveur CAS ou d'exécuter des actions CAS à l'aide de PROC CAS.
  • Prise en charge des actions CAS pour l'interprétabilité, le feature engineering et la modélisation.
  • Intégration de SAS à d'autres applications via des API REST.

Traitement analytique « in-memory » distribué

  • Le traitement distribué « in-memory » de calculs analytiques complexes sur des tables volumineuses fournit des réponses dans un temps optimisé
  • Les tâches analytiques sont enchaînées ensemble comme une seule tâche « in-memory » sans avoir à recharger les données ou stocker des résultats intermédiaires sur disques.
  • L'accès simultané aux mêmes données « in-memory » par de nombreux utilisateurs améliore l'efficacité.
  • Les données et les résultats intermédiaires sont conservés en mémoire aussi longtemps que nécessaire, ce qui permet de réduire la latence.
  • La gestion intégrée de la charge assure une utilisation optimisée des ressources de calcul.
  • La gestion intégrée du failover garantit que les tâches soumises sont toujours terminées.
  • Propagation automatisée des E/S disque pour une meilleure gestion de la mémoire.

Développement de modèles avec des algorithmes évolués de machine learning

  • Apprentissage par renforcement :
    • Les techniques incluent le Fitted Q-Network (FQN) et le Deep Q-Network (DQN).
    • FQN peut entraîner un modèle sur des points de données précollectés sans avoir besoin de communiquer avec l’environnement.
    • Utilise la mémoire de relecture et les techniques de réseau cible pour décorer le non-i.i.d. et stabiliser le processus de formation.
    • Possibilité de spécifier un environnement personnalisé pour les paires d’état-action et les récompenses.
  • Forêts d'arbres de décision :
    • Ensemble automatisé d'arbres de décision pour expliquer une variable unique.
    • Distribution automatisée d’apprentissages indépendants.
    • Optimisation automatique et intelligente des paramètres de modèles.
    • Génération automatisée de code SAS pour le scoring en production.
  • Gradient boosting :
    • Recherche itérative automatisée pour un partitionnement optimal des données en fonction de la variable d'étiquette sélectionnée.
    • Rééchantillonnage automatisé des données en entrée à plusieurs reprises avec des pondérations ajustées en fonction des résidus.
    • Génération automatisée d'une moyenne pondérée pour le modèle supervisé final.
    • Prise en charge des étiquettes binaires, nominales et continues.
    • Possibilité de personnaliser la formation des arbres avec une variété d’options pour le nombre d’arbres à développer, les critères de division à appliquer, la profondeur des sous-arbres et les ressources de calcul.
    • Critères d'arrêt automatisés en fonction du scoring des données de validation pour éviter tout surapprentissage.
    • Génération automatisée de code SAS pour le scoring en production.
    • Accédez à lightGBM, un progiciel de modélisation open source populaire.
  • Réseaux de neurones :
    • Ajustement automatisé et intelligent des paramètres pour identifier le modèle optimal.
    • Prise en charge de la modélisation des données d'effectif.
    • Sélection intelligente des valeurs par défaut pour la plupart des paramètres de réseaux de neurones.
    • Possibilité de personnaliser l'architecture et les pondérations des réseaux de neurones.
    • Techniques incluant les réseaux de neurones profonds (DNN), les réseaux de neurones convolutifs (CNN), les réseaux de neurones récurrents (RNN) et les auto-encodeurs.
    • Possibilité d’utiliser un nombre défini de couches masquées pour prendre en charge le deep learning.
    • Prise en charge de différents types de couches, telles que la convolution et la mise en pool.
    • Normalisation automatique des variables à expliquer et explicatives.
    • Sélection et utilisation automatiques d'un sous-ensemble de données de validation.
    • Validation « out-of-bag » automatique pour un arrêt précoce afin d’éviter tout surapprentissage.
    • Optimisation automatique et intelligente des paramètres de modèles.
    • Génération automatisée de code SAS pour le scoring en production.
  • Machines "vector support" :
    • Modélisation de variables binaires à expliquer.
    • Prise en charge des noyaux linéaires et polynominaux pour l'apprentissage du modèle.
    • Intégration de fonctions d'entrée/sortie continue et catégorielle.
    • Adaptation automatique des fonctions d'entrée.
    • Possibilité d'appliquer la méthode de point intérieur et la méthode d'ensemble actif.
    • Prise en charge du partitionnement des données pour la validation de modèle.
    • Prise en charge de la validation croisée pour la sélection de pénalité.
    • Génération automatisée de code SAS pour le scoring en production.
  • "Factorization machines": :
    • Prise en charge du développement de systèmes de recommandations en fonction de matrices éparses d'ID utilisateur et de notations d'éléments.
    • Application d'une factorisation tensorielle complète d'interactions appariées.
    • Intégration de fonctions de variable numérique et catégorielle pour des modèles plus précis.
    • Modèles optimisés avec des horodatages, des données démographiques et des informations contextuelles.
    • Prise en charge du redémarrage à chaud (mise à jour des modèles avec de nouvelles transactions sans recalibrage complet).
    • Génération automatisée de script de scoring SAS pour le scoring de production.
  • Réseaux bayésiens :
    • Apprentissage de différentes structures de réseaux bayésiens, y compris les réseaux naïfs, les réseaux naïfs augmentés par un arbre (TAN), les réseaux naïfs augmentés par un réseau bayésien (BAN), les réseaux bayésiens parent-enfant et les réseaux avec couverture de Markov.
    • Sélection efficace de variables par le biais de tests d'indépendance.
    • Sélection automatique du meilleur modèle à partir des paramètres spécifiés.
    • Génération d'un code SAS ou d'un fichier binaire pour le scoring des données.
    • Chargement des données de plusieurs nœuds et exécution de calculs en parallèle.
  • Modèles de mélange gaussien (GMM) Dirichlet :
    • Clusterisation exécutée en parallèle et hautement multithread.
    • Clusterisation souple, qui fournit non seulement le scoring de cluster prédit, mais aussi la distribution de probabilité sur les clusters pour chaque observation.
    • Apprentissage du meilleur nombre de clusters pendant le processus de clusterisation, qui est pris en charge par le processus Dirichlet.
    • Utilisation d'une méthode bayésienne variationnelle (VB) parallèle comme méthode d'inférence de modèle. Cette méthode évalue approximativement la distribution a posteriori (complexe), puis met à jour de façon itérative les paramètres du modèle jusqu'à ce qu'il atteigne la convergence.
  • Algorithme d'apprentissage semi-supervisé :
    • Hautement distribué et multithread.
    • Produit les valeurs prédites sur les données labellisées et non labellisées.
  • Algorithme t-SNE (T-distributed stochastic neighbor embedding) :
    • Hautement distribué et multithread.
    • Renvoi d'incorporations de faible dimension basées sur une implémentation parallèle de l'algorithme t-SNE.
  • Réseaux antagonistes génératifs (GAN)
    • Les techniques incluent les StyleGAN pour les données d’image et les GAN pour les données tabulaires.
    • Générez des données synthétiques pour les modèles de deep learning.

Préparation des données analytiques

  • Pipeline de bonnes pratiques feature engineering incluant les meilleures transformations.
  • Routines de gestion des données distribuées fournies via une interface visuelle.
  • Exploration et synthétisation des données à grande échelle.
  • Profilage de cardinalité :
    • Profilage à grande échelle des sources de données en entrée.
    • Recommandation intelligente pour la mesure et le rôle de la variable.
  • Échantillonnage :
    • Prise en charge de l'échantillonnage aléatoire et stratifié, du suréchantillonnage d'événements rares et des variables d'indicateurs d'enregistrements échantillonnés.

Exploration des données, ingénierie des fonctionnalités et réduction des dimensions

  • Algorithme t-SNE (T-distributed stochastic neighbor embedding).
  • Discrétisation de variables.
  • Imputation hautes performances des valeurs manquantes des variables avec les valeurs spécifiées par l'utilisateur, la moyenne, la pseudo médiane et la valeur aléatoire des valeurs non manquantes.
  • Réduction de la dimension des variables.
  • Analyse en composantes principales (PCA) à grande échelle (fenêtres mobiles et PCA robuste, notamment).
  • Apprentissage non supervisé avec analyse de classification et clusterisation de variables mixtes.
  • Segmentation des profils pour la clusterisation.

Analyse textuelle intégrée

  • Prise en charge de 33 langues natifs :
    • Français
    • Arabe
    • Chinois
    • Croate
    • Tchèque
    • Danois
    • Néerlandais
    • Farsi
    • Finnois
    • Français
    • Allemand
    • Grec
    • Hébreu
    • Hindi
    • Hongrois
    • Indonésien
    • Italien
    • Japonais
    • Kazakh
    • Coréen
    • Norvégien
    • Polonais
    • Portugais
    • Roumain
    • Russe
    • Slovaque
    • Slovène
    • Espagnol
    • Suédois
    • Tagalog
    • Turc
    • Thaï
    • Vietnamien
  • Listes d'exclusion automatiquement incluses et appliquées pour toutes les langues.
  • Parsing, tokenisation, balisage morphosyntaxique et lemmatisation automatisés.
  • Extraction par des concepts prédéfinis d'entités communes (noms, dates, valeurs de devise, mesures, personnes, lieux, etc.).
  • Extraction automatisée de variables avec des thèmes générés par la machine (décomposition en valeurs singulières et allocation de Dirichlet latente).
  • Prise en charge du machine learning et des approches basées sur des règles au sein d'un projet unique.
  • Génération automatique de règles avec la procédure BoolRule.
  • Classification plus précise des documents avec le deep learning (réseaux de neurones récurrents).

Évaluation du modèle

  • Calcul automatique des statistiques de performance du modèle d'apprentissage supervisé.
  • Production de statistiques pour les variables continues et catégorielles à expliquer.
  • Création d'une table de lift pour les variables continues et catégorielles à expliquer.
  • Création d'une table ROC pour les variables catégorielles à expliquer.
  • Création de graphiques de classification d'événements et de classification nominale pour les modèles d'apprentissage supervisé avec une variable qualitative à expliquer.

Scoring de modèles

  • Génération automatique du code SAS pour le scoring de modèles.
  • Application d'une logique de scoring à l'apprentissage, aux données d'exclusion et aux nouvelles données.

SAS Viya in-memory engine

  • CAS (SAS Cloud Analytic Services) procède au traitement en mémoire et répartit les tâches de traitement entre les nœuds d'un cluster.
  • Les demandes des utilisateurs (exprimées dans un langage procédural) sont traduites en actions avec les paramètres nécessaires au traitement dans un environnement distribué. Le jeu de résultats et les messages sont transmis à la procédure pour que l’utilisateur puisse prendre des mesures ultérieures.
  • Données gérées en blocs et pouvant être chargées en mémoire et à la demande.
  • Mise en cache des blocs sur le disque en cas de dépassement de la capacité mémoire des tables. Les données et les résultats intermédiaires sont conservés en mémoire aussi longtemps que nécessaire, d'une tâche et d'un utilisateur à l'autre.
  • Communication de nœud à nœud extrêmement efficace. Un algorithme détermine le nombre optimal de nœuds pour une tâche donnée.
  • Communication prenant en charge la tolérance aux pannes et permettant le retrait ou l'ajout de nœuds sur un serveur en fonctionnement. Possibilité de répliquer tous les composants pour une haute disponibilité.
  • Prise en charge du code SAS hérité et interopérabilité directe avec les clients SAS 9.4M6.
  • Gestion du déploiement multi tenant, permettant à une pile logicielle partagée de prendre en charge des utilisateurs isolés de manière sécurisée.