revoscalepy (module Python dans SQL Server)revoscalepy (Python module in SQL Server)

S’APPLIQUE À : ouiSQL Server nonAzure SQL Database nonAzure Synapse Analytics (SQL DW) nonParallel Data Warehouse APPLIES TO: yesSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

revoscalepy est un module compatible Python35 de Microsoft prenant en charge le calcul distribué, les contextes de calcul distants et les algorithmes de science des données hautes performances.revoscalepy is a Python35-compatible module from Microsoft that supports distributed computing, remote compute contexts, and high-performance data science algorithms. Il est basé sur le package RevoScaleR pour R (distribué avec Microsoft R Server et SQL Server R Services) et offre des fonctionnalités similaires :It is based on the RevoScaleR package for R (distributed with Microsoft R Server and SQL Server R Services), offering similar functionality:

  • Contextes de calcul locaux et distants sur les systèmes utilisant la même version de revoscalepyLocal and remote compute contexts on systems having the same version of revoscalepy
  • Fonctions de transformation et de visualisation des donnéesData transformation and visualization functions
  • Fonctions de science des données évolutives via un traitement distribué ou parallèleData science functions, scalable through distributed or parallel processing
  • Performances améliorées avec utilisation des bibliothèques mathématiques Intel incluseImproved performance, including use of the Intel math libraries

Les sources de données et les contextes de calcul que vous créez dans revoscalepy peuvent également être utilisés dans des algorithmes de Machine Learning.Data sources and compute contexts that you create in revoscalepy can also be used in machine learning algorithms. Pour suivre une présentation de ces algorithmes, consultez microsoftml Python module in SQL Server (Module Python microsoftml dans SQL Server).For an introduction to these algorithms, see microsoftml Python module in SQL Server.

Documentation de référence complèteFull reference documentation

La bibliothèque revoscalepy est distribuée dans plusieurs produits Microsoft, mais l’utilisation est la même que vous obteniez la bibliothèque dans SQL Server ou un autre produit.The revoscalepy library is distributed in multiple Microsoft products, but usage is the same whether you get the library in SQL Server or another product. Étant donné que les fonctions sont les mêmes, la documentation de chaque fonction revoscalepy est publiée au même endroit sous la référence Python pour Microsoft Machine Learning Server.Because the functions are the same, documentation for individual revoscalepy functions is published to just one location under the Python reference for Microsoft Machine Learning Server. Si des comportements spécifiques à un produit existent, les différences seront signalées dans la page d’aide de la fonction.Should any product-specific behaviors exist, discrepancies will be noted in the function help page.

Versions et plateformesVersions and platforms

Le module revoscalepy est basé sur Python 3.5 et n’est disponible que lorsque vous installez l’un des produits ou téléchargements Microsoft suivants :The revoscalepy module is based on Python 3.5 and available only when you install one of the following Microsoft products or downloads:

Notes

Les versions complètes du produit sont uniquement disponibles sous Windows dans SQL Server 2017.Full product release versions are Windows-only in SQL Server 2017. Windows et Linux sont pris en charge pour revoscalepy dans SQL Server 2019.Both Windows and Linux are supported for revoscalepy in SQL Server 2019.

Fonctions par catégorieFunctions by category

Cette section répertorie les fonctions par catégorie pour vous donner une idée de la façon dont chacune d’elles est utilisée.This section lists the functions by category to give you an idea of how each one is used. Vous pouvez également utiliser la table des matières pour rechercher des fonctions dans l’ordre alphabétique.You can also use the table of contents to find functions in alphabetical order.

1-Source de données et calcul1-Data source and compute

revoscalepy comprend des fonctions permettant de créer des sources de données et de définir l’emplacement, ou contexte de calcul, où les calculs sont effectués.revoscalepy includes functions for creating data sources and setting the location, or compute context, of where computations are performed. Les fonctions relatives aux scénarios SQL Server sont répertoriées dans le tableau ci-dessous.Functions relevant to SQL Server scenarios are listed in the table below.

Dans certains cas, SQL Server et Python utilisent des types de données différents.SQL Server and Python use different data types in some cases. Pour obtenir la liste des mappages entre les types de données SQL et Python, consultez Types de données Python vers SQL.For a list of mappings between SQL and Python data types, see Python-to-SQL data types.

FonctionFunction DescriptionDescription
RxInSqlServerRxInSqlServer Créez un objet de contexte de calcul SQL Server pour envoyer des calculs à une instance distante.Create a SQL Server compute context object to push computations to a remote instance. Plusieurs fonctions revoscalepy prennent le contexte de calcul comme argument.Several revoscalepy functions take compute context as an argument. Pour obtenir un exemple de changement de contexte, consultez Créer un modèle à l’aide de revoscalepy.For a context-switch example, see Create a model using revoscalepy.
RxSqlServerDataRxSqlServerData Créez un objet de données basé sur une requête ou une table SQL Server.Create a data object based on a SQL Server query or table.
RxOdbcDataRxOdbcData Créez une source de données basée sur une connexion ODBC.Create a data source based on an ODBC connection.
RxXdfDataRxXdfData Créez une source de données basée sur un fichier XDF local.Create a data source based on a local XDF file. Les fichiers XDF sont souvent utilisés pour décharger les données en mémoire sur le disque.XDF files are often used to offload in-memory data to disk. Un fichier XDF peut être utile quand la quantité des données utilisées est trop importante pour être transférée en un seul lot à partir de la base de données ou pour tenir dans la mémoire.An XDF file can be useful when working with more data than can be transferred from the database in one batch, or more data than can fit in memory. Par exemple, si vous déplacez régulièrement de grandes quantités de données d’une base de données vers une station de travail locale, plutôt que d’interroger de façon répétée la base de données à chaque opération R, vous pouvez vous servir du fichier XDF comme cache pour enregistrer les données localement et les exploiter ensuite dans votre espace de travail R.For example, if you regularly move large amounts of data from a database to a local workstation, rather than query the database repeatedly for each R operation, you can use the XDF file as a kind of cache to save the data locally and then work with it in your R workspace.

Conseil

Si vous débutez avec les sources de données ou les contextes de calcul, nous vous recommandons de commencer par vous renseigner sur le calcul distribué dans la documentation de Microsoft Machine Learning Server.If you are new to the idea of data sources or compute contexts, we recommend that you start with distributed computing in the Microsoft Machine Learning Server documentation.

2-Manipulation de données (ETL)2-Data manipulation (ETL)

FonctionFunction DescriptionDescription
rx_importrx_import Importer des données dans un fichier ou une trame de données au format .xdf.Import data into an .xdf file or data frame.
rx_data_steprx_data_step Transformer les données d’un jeu de données d’entrée en jeu de données de sortie.Transform data from an input data set to an output data set.

3-Formation et résumé3-Training and summarization

FonctionFunction DescriptionDescription
rx_btreesrx_btrees Ajuster des arbres de décision améliorés par des gradients stochastiquesFit stochastic gradient boosted decision trees
rx_dforestrx_dforest Ajuster des forêts de décision de régression et de classificationFit classification and regression decision forests
rx_dtreerx_dtree Ajuster des arbres de régression et de classificationFit classification and regression trees
rx_lin_modrx_lin_mod Créer un modèle de régression linéaireCreate a linear regression model
rx_logitrx_logit Créer un modèle de régression logistiqueCreate a logistic regression model
rx_summaryrx_summary Produire des résumés d’objets à variable unique dans revoscalepy.Produce univariate summaries of objects in revoscalepy.

Vous devez également examiner les fonctions dans microsoftml pour obtenir des approches supplémentaires.You should also review the functions in microsoftml for additional approaches.

4-Fonctions de scoring4-Scoring functions

FonctionFunction DescriptionDescription
rx_predictrx_predict Générer des prédictions à partir d’un modèle entraînéGenerate predictions from a trained model )) Génère des prédictions à partir d’un modèle entraîné et peut être utilisé pour le scoring en temps réel.Generates predictions from a trained model and can be used for real-time scoring.
rx_predict_defaultrx_predict_default Calculer des résiduels et des valeurs prédites à l’aide d’objets rx_lin_mod et rx_logit.Compute predicted values and residuals using rx_lin_mod and rx_logit objects.
rx_predict_rx_dforestrx_predict_rx_dforest Calculer les valeurs prédites ou ajustées d’un jeu de données à partir d’un objet rx_dforest ou rx_btrees.Calculate predicted or fitted values for a data set from an rx_dforest or rx_btrees object.
rx_predict_rx_dtreerx_predict_rx_dtree Calculer les valeurs prédites ou ajustées d’un jeu de données à partir d’un objet rx_dtree.Calculate predicted or fitted values for a data set from an rx_dtree object.

Procédure d’utilisation de revoscalepyHow to work with revoscalepy

Les fonctions de revoscalepy peuvent être appelées dans du code Python encapsulé dans des procédures stockées.Functions in revoscalepy are callable in Python code encapsulated in stored procedures. La plupart des développeurs créent des solutions revoscalepy localement, puis migrent le code Python terminé vers les procédures stockées en guise d’exercice de déploiement.Most developers build revoscalepy solutions locally, and then migrate finished Python code to stored procedures as a deployment exercise.

Lors d’une exécution locale, vous exécutez généralement un script Python à partir de la ligne de commande, ou à partir d’un environnement de développement Python, et vous spécifiez un contexte de calcul SQL Server à l’aide de l’une des fonctions revoscalepy.When running locally, you typically run a Python script from the command line, or from a Python development environment, and specify a SQL Server compute context using one of the revoscalepy functions. Vous pouvez utiliser le contexte de calcul distant pour l’intégralité du code, ou pour des fonctions individuelles.You can use the remote compute context for the entire code, or for individual functions. Par exemple, vous souhaiterez peut-être décharger l’apprentissage du modèle sur le serveur pour utiliser les données les plus récentes et éviter le déplacement des données.For example, you might want to offload model training to the server to use the latest data and avoid data movement.

Lorsque vous êtes prêt à encapsuler le script Python à l’intérieur d’une procédure stockée, sp_execute_external_script, nous vous recommandons de réécrire le code sous la forme d’une fonction unique ayant des entrées et des sorties clairement définies.When you are ready to encapsulate Python script inside a stored procedure, sp_execute_external_script, we recommend rewriting the code as a single function that has clearly defined inputs and outputs.

Les entrées et les sorties doivent correspondre à des trames de données pandas.Inputs and outputs must be pandas data frames. Une fois cette opération effectuée, vous pouvez appeler la procédure stockée à partir de n’importe quel client prenant en charge T-SQL, transmettre simplement les requêtes SQL en tant qu’entrées, puis enregistrer les résultats dans des tables SQL.When this is done, you can call the stored procedure from any client that supports T-SQL, easily pass SQL queries as inputs, and save the results to SQL tables. Pour obtenir un exemple, consultez Analyse des données Python pour les développeurs SQL.For an example, see Learn in-database Python analytics for SQL developers.

Utiliser revoscalepy avec microsoftmlUsing revoscalepy with microsoftml

Les fonctions Python pour microsoftml sont intégrées aux contextes de calcul et aux sources de données fournis dans revoscalepy.The Python functions for microsoftml are integrated with the compute contexts and data sources that are provided in revoscalepy. Lorsque vous appelez des fonctions à partir de microsoftml, par exemple lors de la définition et de l’apprentissage d’un modèle, utilisez les fonctions revoscalepy pour exécuter le code Python localement ou dans un contexte de calcul distant SQL Server.When calling functions from microsoftml, for example when defining and training a model, use the revoscalepy functions to execute the Python code either locally or in a SQl Server remote compute context.

L’exemple suivant illustre la syntaxe permettant d’importer des modules dans votre code Python.The following example shows the syntax for importing modules in your Python code. Ainsi, vous pouvez référencer les fonctions individuelles dont vous avez besoin.You can then reference the individual functions you need.

from microsoftml.modules.logistic_regression.rx_logistic_regression import rx_logistic_regression
from revoscalepy.functions.RxSummary import rx_summary
from revoscalepy.etl.RxImport import rx_import_datasource

Voir aussiSee also