Compartilhar via


Referência: Máquina Virtual de Ciência de Dados do Ubuntu Linux (Linux)

Este documento apresenta uma lista de ferramentas disponíveis em sua DSVM (Máquina Virtual de Ciência de Dados) do Ubuntu.

Bibliotecas de aprendizado profundo

PyTorch

O PyTorch é uma estrutura de computação científica popular, com amplo suporte para algoritmos de aprendizado de máquina. Se sua máquina tiver uma GPU integrada, ela poderá usar essa GPU para acelerar o aprendizado profundo. O PyTorch está disponível no py38_pytorch ambiente.

H2O

H2O é uma plataforma de análise preditiva e aprendizado de máquina rápido, na memória e distribuído. Um pacote do Python é instalado nos ambientes raiz e py35 do Anaconda. Um pacote R também é instalado.

Para abrir o H2O na linha de comando, execute java -jar /dsvm/tools/h2o/current/h2o.jar. Você pode configurar várias opções de linha de comando disponíveis. Navegue até a interface do usuário da web do Flow para http://localhost:54321 começar. O JupyterHub oferece blocos de anotações de exemplo.

TensorFlow

O TensorFlow é a biblioteca de aprendizado profundo do Google. É uma biblioteca de software open-source para computação numérica usando grafos de fluxo de dados. Se sua máquina tiver uma GPU integrada, ela poderá usar essa GPU para acelerar o aprendizado profundo. O TensorFlow está disponível no ambiente conda py38_tensorflow.

Python

A DSVM (Máquina Virtual de Ciência de Dados) tem vários ambientes Python pré-instalados, com o Python versão 3.8 ou o Python versão 3.6. Execute conda env list em uma janela de terminal para ver a lista completa de ambientes instalados.

Jupyter

A DSVM também vem com o Jupyter, um ambiente de compartilhamento e análise de código. O Jupyter é instalado na DSVM nestes tipos:

  • Jupyter Lab
  • Jupyter Notebook
  • Jupyter Hub

Para iniciar o Jupyter Lab, abra o Jupyter no menu do aplicativo ou selecione o ícone da área de trabalho. Você também pode executar jupyter lab a partir de uma linha de comando para abrir o Jupyter Lab.

Para abrir o Jupyter Notebook, abra uma linha de comando e execute jupyter notebook.

Para abrir o Jupyter Hub, abra o nome DNS da https://< VM ou o endereço> IP:8000/ em um navegador. Você deve fornecer seu nome de usuário e senha locais do Linux.

Observação

Você pode ignorar quaisquer avisos de certificado.

Observação

Para as imagens do Ubuntu, a porta 8000 do firewall é aberta por padrão quando a VM é provisionada.

Apache Spark autônomo

Uma instância autônoma do Apache Spark é pré-instalada na DSVM do Linux para ajudá-lo a desenvolver aplicativos Spark localmente antes de testar e implantar esses aplicativos em clusters grandes.

Execute programas PySpark através do kernel de Jupyter. Quando o Jupyter for iniciado, selecione o botão Novo . Uma lista de kernels disponíveis deve se tornar visível. Você pode criar aplicativos Spark com a linguagem Python se escolher o kernel Spark - Python . Você também pode usar um IDE Python - por exemplo, VS. Code ou PyCharm - para criar seu programa Spark.

Nessa instância autônoma, a pilha do Spark é executada dentro do programa cliente de chamada. Esse recurso torna mais rápido e fácil solucionar problemas, em comparação com o desenvolvimento em um cluster do Spark.

IDEs e editores

Você pode escolher entre vários editores de código, incluindo o VS. Code, PyCharm, IntelliJ, vi/Vim ou Emacs.

VS.Code, PyCharm e IntelliJ são editores gráficos. Para usá-los, você precisa estar conectado a uma área de trabalho gráfica. Você os abre usando os atalhos de menu de área de trabalho e de aplicativo.

Vim e Emacs são editores baseados em texto. No Emacs, o pacote complementar ESS facilita o trabalho com o R no editor do Emacs. Para obter mais informações, visite o site da ESS.

Bancos de dados

Cliente gráfico do SQL

O SQuirrel SQL, um cliente SQL gráfico, pode se conectar a vários bancos de dados - por exemplo, Microsoft SQL Server ou MySQL - e executar consultas SQL. A maneira mais rápida de abrir o SQuirrel SQL é usar o menu do aplicativo de uma sessão da área de trabalho gráfica (por meio do cliente X2Go, por exemplo)

Antes do uso inicial, configure seus drivers e aliases de banco de dados. Você pode encontrar os drivers JDBC em /usr/share/java/jdbcdrivers.

Para obter mais informações, visite o recurso SQL SQuirrel.

Ferramentas de linha de comando para acessar o Microsoft SQL Server

O pacote de driver ODBC para SQL Server também inclui duas ferramentas de linha de comando:

  • bcp: a ferramenta bcp copia dados em massa entre uma instância do Microsoft SQL Server e um arquivo de dados, em um formato especificado pelo usuário. Você pode usá-la para importar grandes números de novas linhas para tabelas do SQL Server ou para exportar dados de tabelas para arquivos de dados. Para importar dados para uma tabela, você deve usar um arquivo de formato criado para essa tabela. Você deve entender a estrutura da tabela e os tipos de dados válidos para suas colunas.

Para obter mais informações, visite Conectando-se com o bcp.

  • sqlcmd: você pode inserir instruções Transact-SQL com a ferramenta sqlcmd. Você também pode inserir procedimentos do sistema e arquivos de script no prompt de comando. Essa ferramenta usa o ODBC para executar lotes do Transact-SQL.

    Para obter mais informações, visite Conectando-se com sqlcmd.

    Observação

    Existem algumas diferenças nesta ferramenta entre suas versões de plataforma Linux e Windows. Revise a documentação para obter detalhes.

Bibliotecas de acesso do banco de dados

As bibliotecas R e Python estão disponíveis para acesso ao banco de dados:

  • Em R, você pode usar os pacotes RODBC dplyr para consultar ou executar instruções SQL no servidor de banco de dados
  • Em Python, a biblioteca pyodbc fornece acesso ao banco de dados com ODBC como a camada subjacente

Ferramentas do Azure

Estas ferramentas do Azure são instaladas na VM:

  • CLI do Azure: você pode usar a interface de linha de comando no Azure para criar e gerenciar recursos do Azure por meio de comandos do shell. Para abrir as ferramentas do Azure, insira ajuda do azure. Para obter mais informações, visite a página de documentação da CLI do Azure.

  • Gerenciador de Armazenamento do Azure: o Gerenciador de Armazenamento do Azure é uma ferramenta gráfica que você pode usar para navegar pelos objetos armazenados em sua conta de armazenamento do Azure e para carregar e baixar dados de e para blobs do Azure. Você pode acessar o Gerenciador de Armazenamento do ícone de atalho da área de trabalho. Você também pode abri-lo em um prompt de shell se inserir StorageExplorer. É necessário estar conectado em um cliente X2Go ou ter a configuração de encaminhamento X11.

  • Bibliotecas do Azure: estas são algumas das bibliotecas pré-instaladas:

    • Python: o Python oferece as bibliotecas relacionadas ao Azure, azureml, pydocumentdb e pyodbc do Azure. Com as três primeiras bibliotecas, você pode acessar os serviços de armazenamento do Azure, o Azure Machine Learning e o Azure Cosmos DB (um banco de dados NoSQL no Azure). A quarta biblioteca, pyodbc (juntamente com o driver ODBC da Microsoft para SQL Server), permite o acesso ao SQL Server, ao Banco de Dados SQL do Azure e ao Azure Synapse Analytics do Python por meio de uma interface ODBC. Insira pip list para ver todas as bibliotecas listadas. Certifique-se de executar esse comando nos ambientes Python 2.7 e 3.5.
    • R: O Azure Machine Learning e o RODBC são as bibliotecas relacionadas ao Azure no R.
    • Java: o diretório /dsvm/sdk/AzureSDKJava tem a lista de bibliotecas Java do Azure que podem ser encontradas no diretório /dsvm/sdk/AzureSDKJava na VM. As bibliotecas principais são as APIs de armazenamento e gerenciamento do Azure, o Azure Cosmos DB e os drivers JDBC para SQL Server.

Azure Machine Learning

O serviço de nuvem totalmente gerenciado do Azure Machine Learning permite que você crie, implante e compartilhe soluções de análise preditiva. Você pode criar seus experimentos e modelos no Estúdio do Azure Machine Learning. Visite o Microsoft Azure Machine Learning para acessá-lo de um navegador da Web na Máquina Virtual de Ciência de Dados.

Após entrar no Estúdio do Azure Machine Learning, você pode usar uma tela de experimentação para criar um fluxo lógico para os algoritmos de aprendizado de máquina. Você também tem acesso a um notebook Jupyter hospedado no Azure Machine Learning. Esse notebook pode funcionar perfeitamente com os experimentos no Estúdio do Azure Machine Learning.

Para operacionalizar os modelos de aprendizado de máquina que você criou, envolva-os em uma interface de serviço Web. A operacionalização do modelo de aprendizado de máquina permite que os clientes escritos em qualquer linguagem invoquem previsões desses modelos. Visite a documentação do Machine Learning para obter mais informações.

Você também pode criar seus modelos em R ou Python na VM e, em seguida, implantá-los em produção no Azure Machine Learning. Instalamos bibliotecas em R (AzureML) e Python (azureml) para habilitar essa funcionalidade.

Observação

Escrevemos estas instruções para a versão do Windows da Máquina Virtual de Ciência de Dados. No entanto, as instruções abrangem implantações de modelo do Azure Machine Learning na VM do Linux.

Ferramentas de Machine Learning

A VM vem com ferramentas e algoritmos de aprendizado de máquina pré-compilados, todos pré-instalados localmente. Estão incluídos:

  • Vowpal Wabbit: Um algoritmo de aprendizado online rápido

  • xgboost: Esta ferramenta fornece algoritmos de árvore otimizados e reforçados

  • Chocalho: Uma ferramenta gráfica baseada em R para fácil exploração e modelagem de dados

  • Python: o Anaconda Python é fornecido com os algoritmos de aprendizado de máquina com bibliotecas como Scikit-learn. Você pode instalar outras bibliotecas com o pip install comando

  • LightGBM: Uma estrutura de aumento de gradiente rápida, distribuída e de alto desempenho baseada em algoritmos de árvore de decisão

  • R: Uma rica biblioteca de funções de aprendizado de máquina está disponível para R. As bibliotecas pré-instaladas incluem lm, glm, randomForest e rpart. Você pode instalar outras bibliotecas com este comando:

    install.packages(<lib name>)
    

Aqui estão mais informações sobre as três primeiras ferramentas de aprendizado de máquina na lista.

Vowpal Wabbit

Vowpal Wabbit é um sistema de aprendizado de máquina que usa

  • ativo
  • allreduce
  • hash
  • Aprendizagem interativa
  • aprendizagem2pesquisa
  • online
  • Reduções

Técnicas.

Use estes comandos para executar a ferramenta em um exemplo básico:

cp -r /dsvm/tools/VowpalWabbit/demo vwdemo
cd vwdemo
vw house_dataset

Esse diretório oferece outras demos maiores. Visite esta seção do GitHub e o wiki do Vowpal Wabbit para obter mais informações sobre o Vowpal Wabbit.

xgboost

A biblioteca xgboost foi projetada e otimizada para algoritmos aumentados (de árvore). A biblioteca xgboost leva os limites de computação das máquinas aos extremos necessários para um aumento de árvore em grande escala preciso, portátil e escalável.

A biblioteca xgboost é fornecida como um recurso de linha de comando e uma biblioteca R. Para usar essa biblioteca em R, você pode inserir R no shell para iniciar uma sessão interativa do R e carregar a biblioteca.

Este exemplo simples mostra como executar o xgboost em um prompt R:

library(xgboost)

data(agaricus.train, package='xgboost')
data(agaricus.test, package='xgboost')
train <- agaricus.train
test <- agaricus.test
bst <- xgboost(data = train$data, label = train$label, max.depth = 2,
                eta = 1, nthread = 2, nround = 2, objective = "binary:logistic")
pred <- predict(bst, test$data)

Para executar a linha de comando xgboost, execute estes comandos no shell:

cp -r /dsvm/tools/xgboost/demo/binary_classification/ xgboostdemo
cd xgboostdemo
xgboost mushroom.conf

Para obter mais informações sobre o xgboost, visite a página de documentação do xgboost e seu repositório GitHub.

Rattle

O Rattle (o R Analytical Tool To Learn Easily) usa exploração e modelagem de dados baseada em GUI. Ele

  • apresenta resumos estatísticos e visuais dos dados
  • transforma dados que podem ser prontamente modelados
  • cria modelos não supervisionados e supervisionados a partir dos dados
  • apresenta o desempenho dos modelos graficamente
  • pontua novos conjuntos de dados

Ele também gera código R, que replica as operações do Rattle na interface do usuário. Você pode executar esse código diretamente no R ou usá-lo como ponto de partida para uma análise mais aprofundada.

Para executar o Rattle, você precisa operar em uma sessão de entrada gráfica na área de trabalho. No terminal, insira R para abrir o ambiente R. No prompt R, insira este comando:

library(rattle)
rattle()

Uma interface gráfica, com um conjunto de guias, é aberta. Essas etapas de início rápido no Rattle usam um conjunto de dados meteorológicos de exemplo para criar um modelo. Em algumas das etapas, você recebe prompts para instalar e carregar automaticamente pacotes R específicos e necessários que ainda não estão no sistema.

Observação

Se você não tiver permissões de acesso para instalar o pacote no diretório do sistema (o padrão), poderá observar um prompt na janela do console do R para instalar pacotes em sua biblioteca pessoal. Responda y se encontrar esses prompts.

  1. Selecione Executar
  2. Uma caixa de diálogo é exibida, perguntando se você deseja usar o conjunto de dados meteorológicos de exemplo. Selecione Sim para carregar o exemplo
  3. Selecione a guia Modelo
  4. Selecione Executar para criar uma árvore de decisão
  5. Selecione Desenhar para exibir a árvore de decisão
  6. Selecione a opção Floresta e selecione Executar para criar uma floresta aleatória
  7. Selecione a guia Avaliar
  8. Selecione a opção Risco e selecione Executar para exibir dois gráficos de desempenho de Risco (Cumulativo)
  9. Selecione a guia Log para mostrar o código R gerado para as operações anteriores
    • Devido a um bug na versão atual do Rattle, você deve inserir um # caractere na frente de Exportar este log no texto do log
  10. Selecione o botão Exportar para salvar o arquivo de script R, chamado weather_script. R, para a pasta pessoal

Você pode sair do Rattle e do R. Agora, você pode modificar o script de R gerado. Você também pode usar o script como está e executá-lo a qualquer momento para repetir tudo o que foi feito na interface do usuário do Rattle. Especialmente para iniciantes em R, isso se presta a análises rápidas e aprendizado de máquina em uma interface gráfica simples, enquanto gera automaticamente código em R para modificação ou aprendizado.

Próximas etapas

Para mais perguntas, considere criar um tíquete de suporte