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 máquina virtual de ciência de dados do Ubuntu (DSVM).

Bibliotecas de aprendizado profundo

PyTorch

PyTorch é uma estrutura de computação científica popular, com amplo suporte para algoritmos de aprendizado de máquina. Se a sua máquina tiver uma GPU integrada, ela poderá usar essa GPU para acelerar o aprendizado profundo. 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 notebooks de exemplo.

TensorFlow

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 a 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 (Data Science Virtual Machine) tem vários ambientes Python pré-instalados, com Python versão 3.8 ou 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 de código. O Jupyter é instalado na DSVM nestes sabores:

  • 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 https://< nome DNS da VM ou 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 do 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 construir 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 construir seu programa Spark.

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

IDEs e editores

Você tem a opção de vários editores de código, incluindo 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 de complementos ESS facilita o trabalho com o R no editor do Emacs. Para mais informações, visite o site da ESS.

Bancos de dados

Cliente gráfico do SQL

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 do 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 que são válidos para suas colunas.

Para obter mais informações, visite Conectando-se com 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. Consulte 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 dplyr RODBC 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 a partir de um prompt do shell se entrar no 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: Python oferece as bibliotecas relacionadas ao Azure Azure, azureml, pydocumentdb e pyodbc 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 (junto com o driver ODBC da Microsoft para SQL Server), permite o acesso ao SQL Server, Banco de Dados SQL do Azure e Azure Synapse Analytics do Python por meio de uma interface ODBC. Entre na lista de pips 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 do Azure Machine Learning totalmente gerenciado permite que você crie, implante e compartilhe soluções de análise preditiva. Você pode criar seus experimentos e modelos no estúdio de Aprendizado de Máquina do Azure. Visite o Aprendizado de Máquina do Microsoft Azure 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 bloco de anotações do Jupyter hospedado no Aprendizado de Máquina do Azure. Este bloco de anotações pode funcionar perfeitamente com os experimentos no estúdio de Aprendizado de Máquina do Azure.

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 Aprendizado de Máquina do Azure na VM do Linux.

Ferramentas de Machine Learning

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

  • Vowpal Wabbit: Um algoritmo de aprendizagem on-line rápido

  • xgboost: Esta ferramenta fornece algoritmos de árvore otimizados e impulsionados

  • Rattle: Uma ferramenta gráfica baseada em R para facilitar a 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 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 demonstrações maiores. Visite esta seção do GitHub e do wiki 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 eleva os limites de computação das máquinas aos extremos necessários para o aumento preciso, portátil e escalável de árvores em grande escala.

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 de R e carregar a biblioteca.

Este exemplo simples mostra para executar 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 do GitHub.

Rattle

Rattle (the RAnalytical Tool To Learn Easily – Ferramenta Analítica do R para Aprender com Facilidade) usa exploração e modelagem de dados com base 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 graficamente o desempenho dos modelos
  • pontua novos conjuntos de dados

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

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

library(rattle)
rattle()

Uma interface gráfica, com um conjunto de abas, é 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 solicitações 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á notar um prompt na janela do console do R para instalar pacotes em sua biblioteca pessoal. Responda y se você 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 base

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. Para iniciantes em R especialmente, isso se presta a análise rápida 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 a criação de um tíquete de suporte