Partager l'avantage ultime : un voyage de la modélisation à la notationAbstrait
Trouver le bon modèle pour prédire de nouveaux résultats à partir de nouvelles données est une réalisation importante. Mais il s'agit souvent d'une étape dans un parcours où l'objectif final est de partager la puissance prédictive du modèle avec un public beaucoup plus large. JMP Pro dispose de nombreux outils pour faciliter l'ajustement, la comparaison et la sélection des modèles prédictifs. JMP Pro 13 a ajouté le dépôt de formules : un moyen efficace de collecter des modèles, de les appliquer à de nouvelles tables et d'accéder aux plates-formes de comparaison de modèles et de profileur. Pour faciliter le déploiement des modèles en production, le dépôt de formules peut également les convertir en code de notation dans un certain nombre de langages de programmation différents. Dans ce didacticiel, nous utilisons une étude de cas immobilier pour illustrer le workflow de modélisation prédictive. Nous compilerons les données, préparerons les données pour la modélisation, générerons des modèles prédictifs, publierons des modèles dans Formula Depot, et explorerons et sélectionnerons le ou les meilleurs modèles. Ensuite, nous générerons un code de notation pour soutenir la création d'applications Web capables de calculer les prix des logements "sur place". Nous explorerons également différentes méthodes de notation des données et fournirons un aperçu des architectures de déploiement actuelles.
Contenu du didacticiel
Le résultat final du didacticiel est une application Web avec des capacités prédictives hébergées sur AWS. Tu peux le trouver ici . Ce qui suit est une explication du contenu associé au didacticiel, tel qu'il peut être trouvé dans les pièces jointes de cette page.
Le niveau client (voir fichier joint RedFinWeb.zip) utilise Amorcer pour l'interface utilisateur et Couches ouvertes pour les capacités de cartographie.Il est implémenté comme un site Web statique hébergé sur AWSS3 ; l'interface collecte la saisie des données utilisateur à l'aide d'un formulaire HTML personnalisé ; ceux-ci sont utilisés comme valeurs d'entrée dans l'évaluation du modèle, qui est déclenchée par un REPOS appel à la couche de calcul.
La couche de calcul (voir fichier joint RedFinServerless.zip) utilise deux services Amazon : Passerelle API est le point d'entrée pour les appels REST, qui sont mappés à un AWS Lambda service. Lambda est l'implémentation d'Amazon du Architecture sans serveur paradigme, également appelé Function-as-a-Service (FaaS). Serverless offre des performances à grande échelle avec de faibles coûts de gestion pour les applications sans état, à faible latence et à haut débit, ce qui en fait un excellent choix pour les applications de notation qui sont, par définition, parallèle embarrassant .
Le service Lambda était la destination de déploiement finale pour le code de scoring Python généré par JMP. Le déploiement d'applications sur les services AWS peut être effectué manuellement à l'aide de leur console de gestion , mais pour rationaliser le processus, nous vous recommandons d'utiliser l'un des nombreux wrappers open source disponibles. Dans cet exercice, nous avons utilisé le Cadre d'application sans serveur .
Notez comment le code Python capture à la fois les tâches d'ingénierie des caractéristiques (clustering, binning, imputation) ainsi que le modèle construit dessus. Cela permet aux mêmes sources de données brutes utilisées pour créer le modèle d'être également utilisées pour évaluer de nouvelles données en production - une considération importante lors de la création d'un pipeline d'analyse maintenable.
Vous trouverez également en pièce jointe un Cahier Jupyter (RedFinNotebook.zip) utilisé pour tester le modèle avant le déploiement ; une collection de modèles Python générés par JMP pour le scénario de logement (RedFinModels.zip) ; et la table JMP d'origine avec le nettoyage des données et les scripts pour générer les modèles. (RedFinData.zip). Ce dernier fichier .zip comprend également une feuille de calcul qui illustre comment le backend REST peut être appelé directement pour la notation par d'autres applications, dans ce cas à partir d'une formule Excel.
Les références
Accès et manipulation des donnéesModélisation prédictiveRe : Partager l'avantage ultime : un voyage de la modélisation à la notationL'idée est que la page Web est une interface utilisateur à travers laquelle vous obtenez vos données qui doivent être notées - par exemple, un dialogue où l'utilisateur tape quelques valeurs. Une fois les valeurs soumises, le gestionnaire d'événements les rassemble et appelle le code du modèle JavaScript généré par JMP. Le résultat est renvoyé à l'utilisateur. Le principal avantage est qu'il n'est pas nécessaire de renvoyer un serveur, il est donc aussi évolutif que possible. L'inconvénient est que vous êtes limité à marquer une à quelques observations à la fois - mais selon le cas d'utilisation, ce n'est pas un problème.
Pour un exemple concret, regardez ceci :
http://jmp.valentine.s3-website-us-east-1.amazonaws.com/
Ici, au lieu de l'entrée de l'utilisateur, la page Web génère des points aléatoires qui doivent être classés comme étant à l'intérieur ou à l'extérieur d'une courbe. La classification est effectuée par un modèle de réseau de neurones JMP. La visualisation se fait avec D3.js.
Un autre exemple qui montre comment utiliser une application Web pour collecter des données auprès de l'utilisateur, noter l'entrée et présenter le résultat, est disponible dans le fichier scoring_examples.zip joint au présentation 2016 .
Le dossier "WebApp" sous forme d'application web complète qui illustre le concept. Il a été conçu pour être utilisé par un botaniste de recherche sur le terrain, essayant de classer de nouveaux spécimens de fleurs d'Iris en fonction de leurs mesures (je sais, je sais, à quel point l'originalité... 
Re : Partager l'avantage ultime : un voyage de la modélisation à la notationSalut,
J'apprécie ton aide.vous avez suggéré pour la dernière fois de courir dans un navigateur derrière HTML ...
Pouvez-vous me donner plus de détails ou un lien vers quelque chose qui m'aiderait à réaliser quelque chose de tangible ?
Merci,
Jim
Re : Partager l'avantage ultime : un voyage de la modélisation à la notationSalut @jgrayson ,
Il se trouve dans votre répertoire d'installation, sous Resources/Scoring. Par exemple dans ma machine Windows, c'est sous
C:\Program Files\SAS\JMPPRO\16\Resources\Scoring\JavaScript
Re : Partager l'avantage ultime : un voyage de la modélisation à la notationSalut,
Pouvez-vous me dire où trouver le "jmp_score" pour javascript ?
Merci,
Jim Grayson