logisticScore
Description
Cette action permet d'évaluer (scorerAction d'appliquer un modèle statistique à de nouvelles données pour calculer une probabilité ou une valeur prédite. C’est l’étape de déploiement transformant les entrées en prédictions actionnables.) des observations en utilisant un modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). de régression logistiqueModèle statistique prédisant la probabilité d'un événement binaire (0/1) via une fonction logistique. Il lie des variables explicatives à une variable cible catégorielle. préalablement ajusté et sauvegardé. Imaginez que vous venez d'apprendre à votre modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). à distinguer les bons acheteurs des simples lèche-vitrines... eh bien, voici l'heure de l'examen final pour vos nouvelles données ! L'action prend en entrée un magasin d'analyse (ou astoreFichier binaire compact contenant la logique d'un modèle entraîné (analytique de score). Il permet de déployer et d'exécuter des modèles complexes de manière portable et ultra-rapide dans SAS Viya.) contenant le modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting)., spécifié par le paramètre , et les données à évaluer via le paramètre .
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| table | Spécifie la table de données d'entrée contenant les nouvelles observations à scorer. C'est l'aliment principal de notre moulinette de probabilités. |
| restore | Spécifie le modèle de régression restauré à partir d'un objet binaire (BLOB ou astore). C'est le cerveau de l'opération. |
| casOut | Définit les paramètres de la table de sortie où les scores et probabilités seront gentiment déposés sur le serveur CAS. |
| pred | Nom de la variable pour la valeur prédite (la probabilité de l'événement). Si non spécifié, elle s'appellera généralement _PRED_. Simple et efficace. |
| into | Nom de la variable qui contiendra le niveau de réponse prédit (la classe gagnante, par exemple 1 ou 0). |
| copyVars | Liste des variables de la table d'entrée à recopier telles quelles dans la table de sortie. Indispensable pour garder trace d'un identifiant client ou d'une clé primaire ! |
| predprobs | Si défini à True, affiche les probabilités prédites multinomiales dans des colonnes séparées. Un vrai festival de probabilités détaillées. |
Préparation des données
Préparation des données et du modèle
Pour utiliser l'action logisticScore, nous devons d'abord créer des données d'entraînement et de test, puis ajuster un modèle logistique avec l'action regression.logistic et le sauvegarder en mémoire.
| 1 | PROC CAS; SESSION casauto; LOADACTIONSET 'regression'; DATA mycas.train_data; call streaminit(12345); DO id=1 to 1000; x1=rand('normal'); x2=rand('uniform'); IF (x1+x2)>0.5 THEN y=1; ELSE y=0; OUTPUT; END; RUN; DATA mycas.score_data; call streaminit(67890); DO id=1001 to 1010; x1=rand('normal'); x2=rand('uniform'); OUTPUT; END; RUN; regression.logistic / TABLE={name='train_data'}, target='y', inputs={'x1', 'x2'}, store={name='my_logistic_model', replace=true}; RUN; QUIT; |
Exemples d'utilisation
Scoring simple d'un modèle logistique
Application du modèle sauvegardé sur de nouvelles données pour obtenir les classes prédites et la probabilité associée de l'événement.
| 1 | PROC CAS; regression.logisticScore / TABLE={name='score_data'}, restore={name='my_logistic_model'}, casOut={name='scored_results', replace=true}, pred='Probability', into='Predicted_Class', copyVars={'id'}; RUN; QUIT; |
Résultat Attendu :
Scoring exhaustif avec probabilités détaillées et limites de confiance
Dans ce scénario avancé, on demande le grand jeu : les probabilités pour chaque classe via le paramètre %%predprobs%%, les limites de confiance de la moyenne (%%lclm%% et %%uclm%%) avec un niveau de confiance ajusté par %%alpha%%, et on recopie toutes les variables d'origine pour une analyse post-scoring digne d'un expert SAS.
| 1 | PROC CAS; regression.logisticScore / TABLE={name='score_data'}, restore={name='my_logistic_model'}, casOut={name='detailed_scored_results', replace=true}, predprobs=true, lclm='Lower_CI', uclm='Upper_CI', copyVars='ALL', alpha=0.05; RUN; QUIT; |