Partilhar via


revoscalepy (pacote Python em SQL Server Machine Learning Services)

Aplica-se a: SQL Server 2017 (14.x) e versões posteriores

revoscalepy é um pacote Python da Microsoft que suporta computação distribuída, contextos de computação remota e algoritmos de ciência de dados de alto desempenho. O pacote está incluído nos Serviços de Aprendizagem Automática do SQL Server.

O pacote oferece a seguinte funcionalidade:

  • Contextos de computação local e remota em sistemas que têm a mesma versão da revoscalepy
  • Funções de transformação e visualização de dados
  • Funções de ciência de dados, escaláveis através de processamento distribuído ou paralelo
  • Desempenho melhorado, incluindo a utilização das bibliotecas matemáticas Intel

Fontes de dados e contextos computacionais que cria em revoscalepy também podem ser usados em algoritmos de aprendizagem automática. Para uma introdução a estes algoritmos, consulte o módulo Python microsoftml no SQL Server.

Documentação de referência completa

O pacote revoscalepy é distribuído em vários produtos Microsoft, mas o uso é o mesmo quer recebas o pacote no SQL Server ou noutro produto. Como as funções são as mesmas, a documentação para funções revoscalepy individuais é publicada num único local na referência Python. Se existirem comportamentos específicos do produto, as discrepâncias serão assinaladas na página de ajuda da função.

Versões e plataformas

O módulo revoscalepy baseia-se em Python 3.5 e está disponível apenas quando instalar um dos seguintes produtos Microsoft ou descarregar:

Observação

As versões completas do produto são apenas para Windows no SQL Server 2017. Tanto o Windows como o Linux são suportados para revoscalepy no SQL Server 2019 e posteriores.

Funções por categoria

Esta secção lista as funções por categoria para lhe dar uma ideia de como cada uma é utilizada. Também pode usar o índice para encontrar funções por ordem alfabética.

1-Fonte de dados e cálculo

A Revoscalepy inclui funções para criar fontes de dados e definir a localização, ou contexto de computação, de onde os cálculos são realizados. As funções relevantes para cenários SQL Server estão listadas na tabela abaixo.

SQL Server e Python usam tipos de dados diferentes em alguns casos. Para uma lista de mapeamentos entre tipos de dados SQL e Python, veja Tipos de dados Python-para-SQL.

Função Description
RxInSqlServer Crie um objeto de contexto de computação SQL Server para enviar os cálculos para uma instância remota. Várias funções revoscalepy utilizam o contexto de computação como argumento. Para um exemplo de troca de contexto, veja Criar um modelo usando revoscalepy.
RxSqlServerData Crie um objeto de dados baseado numa consulta ou tabela SQL Server.
RxOdbcData Crie uma fonte de dados baseada numa ligação ODBC.
RxXdfData Crie uma fonte de dados baseada num ficheiro XDF local. Os ficheiros XDF são frequentemente usados para descarregar dados em memória para o disco. Um ficheiro XDF pode ser útil quando se trabalha com mais dados do que os transferidos da base de dados num só lote, ou mais dados do que cabem na memória. Por exemplo, se mover regularmente grandes quantidades de dados de uma base de dados para uma estação de trabalho local, em vez de consultar a base de dados repetidamente para cada operação R, pode usar o ficheiro XDF como uma espécie de cache para guardar os dados localmente e depois trabalhar com eles no seu espaço de trabalho R.

Sugestão

Se é novo na ideia de fontes de dados ou contextos computacionais, recomendamos que comece pelo artigo Computação Distribuída.

2-Manipulação de dados (ETL)

Função Description
rx_import Importa dados para um ficheiro .xdf ou data frame.
rx_data_step Transforme dados de um conjunto de dados de entrada para um conjunto de dados de saída.

3-Formação e resumo

Função Description
rx_btrees Ajusta árvores de decisão potenciadas por gradiente estocástico
rx_dforest Florestas de classificação de ajuste e de regressão
rx_dtree Ajustar árvores de classificação e regressão
rx_lin_mod Criar um modelo de regressão linear
rx_logit Criar um modelo de regressão logística
rx_summary Apresente resumos univariados de objetos no revoscalepy.

Deves também rever as funções no Microsoft Ml para abordagens adicionais.

4-Funções de pontuação

Função Description
rx_predict Gera previsões a partir de um modelo treinado e pode ser usado para pontuação em tempo real.
rx_predict_default Calcular valores previstos e resíduos usando objetos rx_lin_mod e rx_logit.
rx_predict_rx_dforest Calcular valores previstos ou ajustados para um conjunto de dados a partir de um objeto rx_dforest ou rx_btrees.
rx_predict_rx_dtree Calcule valores previstos ou ajustados para um conjunto de dados a partir de um objeto rx_dtree.

Como trabalhar com revoscalepy

As funções em revoscalepy são chamáveis em código Python encapsulado em procedimentos armazenados. A maioria dos programadores constrói soluções revoscalepy localmente e depois migra código Python acabado para procedimentos armazenados como exercício de implementação.

Ao correr localmente, normalmente executa-se um script Python a partir da linha de comandos, ou de um ambiente de desenvolvimento Python, e especifica-se um contexto de computação SQL Server usando uma das funções revoscalepy . Pode usar o contexto de computação remota para todo o código, ou para funções individuais. Por exemplo, pode querer transferir o treino do modelo para o servidor para usar os dados mais recentes e evitar o movimento de dados.

Quando estiver pronto para encapsular um script Python dentro de um procedimento armazenado, sp_execute_external_script, recomendamos reescrever o código como uma única função que tenha entradas e saídas claramente definidas.

As entradas e saídas devem ser quadros de dados pandas . Quando isto estiver feito, pode chamar o procedimento armazenado a partir de qualquer cliente que suporte T-SQL, passar facilmente consultas SQL como entradas e guardar os resultados em tabelas SQL. Por exemplo, veja Aprender análise de Python in-database para programadores SQL.

Usar revoscalepy com microsoftml

As funções Python para microsoftml estão integradas com os contextos de computação e fontes de dados fornecidos em revoscalepy. Ao chamar funções do microsoftml, por exemplo, ao definir e treinar um modelo, use as funções revoscalepy para executar o código Python, seja localmente ou num contexto remoto de computação SQL Server.

O exemplo seguinte mostra a sintaxe para importar módulos no seu código Python. Depois podes consultar as funções individuais de que precisas.

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

Consulte também