Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais atualizadas, acesse a documentação em inglês.

Introdução ao GitHub Codespaces para aprendizado de máquina

Saiba mais sobre como trabalhar em projetos de aprendizado de máquina com o GitHub Codespaces e as ferramentas prontas para uso dele.

Introdução

Este guia apresenta o aprendizado de máquina com o GitHub Codespaces. Você criará um classificador de imagens simples, aprenderá sobre algumas das ferramentas que vêm pré-instaladas em GitHub Codespaces, vai configurar seu ambiente de desenvolvimento para o NVIDIA CUDA e abrirá seu codespace no JupyterLab.

Criar um classificador de imagens simples

Usaremos um Jupyter Notebook para criar um classificador de imagens simples.

Os notebooks do Jupyter são conjuntos de células que você pode executar uma após a outra. O notebook que usaremos inclui várias células que criam um classificador de imagens usando o PyTorch. Cada célula é uma fase diferente desse processo: baixe um conjunto de dados, configure uma rede neural, treine um modelo e depois teste esse modelo.

Executaremos todas as células em sequência para realizar todas as fases de criação do classificador de imagens. Quando fazemos isso, o Jupyter salva a saída de volta no notebook para que você possa examinar os resultados.

Criar um codespace

  1. Acesse o repositório de modelos github/codespaces-jupyter.

  2. Clique em Usar este modelo e, em seguida, em Abrir em um codespace.

    Captura de tela do botão 'Usar este modelo' e do menu suspenso

Por padrão, um codespace para esse modelo será aberto em uma versão baseada na Web do Visual Studio Code.

Abrir o notebook do classificador de imagens

A imagem de contêiner padrão usada por GitHub Codespaces inclui um conjunto de bibliotecas de aprendizado de máquina que são pré-instaladas em seu codespace. Por exemplo, Numpy, pandas, SciPy, Matplotlib, seaborn, scikit-learn, Keras, PyTorch, Requests e Plotly. Para obter mais informações sobre a imagem padrão, confira "Introdução aos contêineres de desenvolvimento" e ao repositório devcontainers/images.

  1. No editor VS Code, feche as guias "Introdução" exibidas.
  2. Abrir o arquivo do notebook notebooks/image-classifier.ipynb.

Compilar o classificador de imagens

O notebook do classificador de imagens contém todo o código necessário para baixar um conjunto de dados, treinar uma rede neural e avaliar seu desempenho.

  1. Clique em Executar tudo para executar todas as células do notebook.

    Captura de tela do botão Executar tudo

  2. Role para baixo para visualizar a saída de cada célula.

    Captura de tela da Etapa 3 no editor

Configurar o NVIDIA CUDA para seu codespace

Alguns softwares exigem que você instale o NVIDIA CUDA para usar a GPU do seu codespace. Quando esse for o caso, você pode criar uma configuração personalizada usando um arquivo devcontainer.json e especificar que o CUDA deve ser instalado. Para obter mais informações sobre como criar uma configuração personalizada, confira "Introdução aos contêineres de desenvolvimento".

Observação: para obter detalhes completos do script executado ao adicionar o recurso nvidia-cuda, confira o repositório de recursos/devcontainers.

  1. Em um codespace, abra o arquivo .devcontainer/devcontainer.json no editor.

  2. Adicione um objeto features de nível superior com o seguinte conteúdo:

    JSON
      "features": {
        "ghcr.io/devcontainers/features/nvidia-cuda:1": {
          "installCudnn": true
        }
      }

    Para obter mais informações sobre o objeto features, confira a especificação de contêineres de desenvolvimento.

    Se você estiver usando o arquivo devcontainer.json do repositório do classificador de imagens criado para este tutorial, seu arquivo devcontainer.json agora terá a seguinte aparência:

    {
      "customizations": {
        "vscode": {
          "extensions": [
            "ms-python.python",
            "ms-toolsai.jupyter"
          ]
        }
      },
      "features": {
        "ghcr.io/devcontainers/features/nvidia-cuda:1": {
          "installCudnn": true
        }
      }
    }
    
  3. Salve a alteração.

  4. Acesse a VS Code Command Palette (Shift+Command+P / Ctrl+Shift+P) e comece a digitar "recompilar". Clique em Codespaces: Recompilar Contêiner.

    Captura de tela do comando Rebuild Container no Command Pallette

    Dica: ocasionalmente, convém executar uma recompilação completa para limpar o cache e recompilar o contêiner com imagens novas. Para obter mais informações, confira "Executar uma recompilação completa de um contêiner".

    O contêiner de codespace será recriado. Isso levará alguns minutos. Quando a recriação for concluída, o codespace será reaberto automaticamente.
  5. Publique sua alteração a um repositório para que o CUDA seja instalado em quaisquer codespaces criados por meio desse repositório no futuro. Para saber mais, confira "Como criar um codespace com base em um modelo".

Como abrir seu codespace no JupyterLab

Você pode abrir seu codespace no JupyterLab na página "Seus codespaces" em github.com/codespaces ou usando GitHub CLI. Para saber mais, confira "Como abrir um codespace existente".

O aplicativo JupyterLab deve ser instalado no codespace que você está abrindo. A imagem de contêiner padrão inclui o JupyterLab, portanto, os codespaces criados com base na imagem padrão sempre terão o JupyterLab instalado. Para obter mais informações sobre a imagem padrão, confira "Introdução aos contêineres de desenvolvimento" e ao repositório devcontainers/images. Se você não estiver usando a imagem padrão na configuração do contêiner de desenvolvimento, instale o JupyterLab adicionando o recurso ghcr.io/devcontainers/features/python ao arquivo devcontainer.json. Você deve incluir a opção "installJupyterlab": true. Para obter mais informações, confira o LEIAME do python recurso, no repositório devcontainers/features.