Recursos Machine Learning da Microsoft – Azure Notebooks

Olá pessoal, sejam bem-vindos ao blog do talkitbr. Este é o segundo artigo da série “Desvendando Recursos Machine Learning da Microsoft”. No primeiro artigo apresentei brevemente o Microsoft Azure Machine Learning Studio (ver link).

Vale lembrar que o intuito desta série de artigos não é explicar os conceitos teóricos de Machine Learning e suas técnicas e sim dar uma visão prática e direta de como usar recursos disponibilizados pela Microsoft para aí sim aplicar esses conceitos e técnicas.

Conhecendo o Microsoft Azure Notebooks

Um outro recurso disponibilizado pela Microsoft para trabalhar com Machine Learning são os Jupyter Notebooks, disponíveis para as linguagens R e Python. Esses Notebooks permitem escrever e executar algoritmos R e Pyhton de forma interativa. Além disso, você pode intercalar os algoritmos com conteúdo Markdown para descrever o procedimento.

Uma vantagem dos Microsoft Azure Notebooks é que eles são acessíveis direto da Web, sem precisar de qualquer configuração na sua máquina local. E a execução também ocorre remotamente através de Kernels (núcleos de execução).

  1. Acesse o site https://notebooks.azure.com/
  2. Clique no botão para fazer login
  3. Será solicitada uma conta Microsoft. Se não tiver, crie uma gratuitamente.
  4. Você será redirecionado para a tela inicial do Microsoft Azure Notebooks.Microsoft Azure Notebooks
  5. Essa plataforma agrupa os notebooks através das chamadas Libraries (bibliotecas).
  6. Vamos criar uma nova biblioteca chamada Bike Share.
    1. Library Name: Bike Share
    2. Library ID: bikeshare
    3. Public library: uncheked (não iremos disponibilizar para o público)
    4. Create a Readme.md: checked
  7. Depois de criada a biblioteca, você será redirecionado para a biblioteca.
  8. Vamos adicionar um novo notebook clicando em + New
    1. ItemName: Data Visualization – Python
    2. Item Type: Python 3.6
  9. Depois disso, você será redirecionado novamente para outra tela do Jupyter Notebook:fig2
  10. Agora já podemos iniciar os trabalhos. Mas para isso precisamos dos dados.
  11. Existem várias formas de obter os dados. Exemplos de fontes (ver link https://notebooks.azure.com/Microsoft/libraries/samples/html/Getting%20to%20your%20Data%20in%20Azure%20Notebooks.ipynb#otherways):
    1. Github com curl
    2. Database SQL
    3. Microsoft Azure Blob/Table Storage
    4. Microsoft Azure Data Factory
  12. Mas vamos fazer algo mais direto agora. Vamos adicionar direto na nossa library. Acesse a opção Data -> Upload.
  13. Vamos utilizar neste exemplo um dataset disponível na UCI, o UCI Bike Share (https://archive.ics.uci.edu/ml/datasets/bike+sharing+dataset)
  14. No momento de adicionar o Dataset, você pode especificar o local como sendo:
    1. ~/: local que mantem o arquivo enquanto a sessão estiver aberta
    2. ~/library: local que mantem o arquivo de forma persistente.
  15. Escolha a opção ~/library e confirme. O arquivo será gravado na sua biblioteca criada a pouco.fig3
  16. De volta no “Data Visualization – Python.pynb”, vamos acrescentar o seguinte código na primeira célula:
import pandas as pd

!ls ~/library
data = pd.read_csv("~/library/Bike Rental UCI dataset.csv", index_col=0)
  1. Logo em seguida, vamos adicionar o código para visualizar os primeiros dados do dataset:
data.head()

fig4

Alternativa: Usando Azure Notebooks do MLStudio

Outra opção é utilizar o Azure Notebook disponibilizado no próprio MLStudio. Uma vantagem disso é que você pode incorporar esse Notebook no seu experimento para apoiar na visualização e exploração dos dados (para introdução ao MLStudio, veja meu artigo anterior).

  1. Acesse o site https://studio.azureml.net
  2. Clique no botão para fazer login
  3. Será solicitada uma conta Microsoft. Se não tiver, crie uma gratuitamente.
  4. Você será redirecionado para a tela incial do MLStudio.
  5. Em EXPERIMENTS, clique em New -> Blank ExperimentDesvendando Recursos Machine Learning da Microsoft (1)
  6. Será exibido um Toolbox a esquerda e uma área de edição do experimento no centro da tela. Escolha a opção “Blank Experiment”.
  7. Vamos adicionar um nome para o experimento. Para isso, clique no texto “Experiment Created on …”. No meu caso irei especificar “Regression – Bike Rental”.
  8. O próximo passo é incluir o Dataset. Vamos usar um Dataset já disponível no MLStudio: o “Bike Rental UCI dataset”.
  9. Para colocá-lo no experimento, basta realizar o Drag&Drop do Dataset contido em “Saved Datasets -> Samples” para dentro da área de edição do experimento:fig5
  10. Agora clique na saída do módulo do Dataset recém incluído (circunferência na parte inferior do módulo).
  11. Ele exibirá algumas opções como “Download”, “Visualize” (já explorado no artigo anterior), “Generate Data Access Code…” e “Open in a new Notebook”.
  12. Escolha essa última opção “Open in a new Notebook” e escolha a opção Python 3 ou R.
  13. Será criado um novo Notebook já com o código para acesso ao Dataset.
  14. Inclua agora o seguinte código:
    1. No Python
frame.head()
  1. No R
head(dat)

fig6

Pronto! Agora chegamos no mesmo ponto usando tanto o Microsoft Azure Notebooks e também o Azure Notebook disponível dentro do MLStudio.

E agora você poderá usar as bibliotecas tanto do R como do Python para manipular os dados, plotar gráficos e inclusive rodar algoritmos de Machine Learning.

Acessando os dados do experimento MLStudio dentro do Notebook

Muitas vezes quando estamos criando um experimento dentro do MLStudio, estamos fazendo operações como Select, Cleaning, entre outros. Portanto, temos um Dataset que foi manipulado e modificado dentro do experimento.

Para esse caso, podemos a qualquer momento abrir esses dados modificados dentro do Azure Notebook. Mas antes precisamos converter os dados em CSV.

Para demonstrar esse recurso, vamos usar o exemplo que montamos no primeiro artigo:

  1. Usando sua conta do MLStudio (a mesma que utilizamos no artigo 1), abra o experimento Classification – Flight Delayfig7
  2. Agora vamos incluir um novo módulo no experimento. Selecione o item “Data Format Conversions -> Convert to CSV” e faça o Drag&Drop para dentro do experimento, bem ao lado do módulo Split Data
    1. Conecte a saída “1” do módulo Select Columns in Dataset a entrada “1” do módulo Convert to CSV
  3. Agora execute o experimento novamente
  4. Ao termino da execução, clique na saída do módulo Convert to CSV, abra o menu de contexto e acesse a opção “Open in a new Notebook”fig8
  5. Será carregado no Notebook o Dataset modificado pelo experimento.fig9

Considerações Finais

Este artigo teve como propósito apresentar brevemente o recurso Microsoft Azure Notebooks que pode ser acessado diretamente pelo portal e também pelo MLStudio.

Nos próximos artigos vamos explorar algumas opções visualização, análise descritiva, data munging e data prune utilizando o próprio Notebook e também módulos do próprio MLStudio.

Até a próxima.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s